{"version": "2.1.0", "$schema": "https://json.schemastore.org/sarif-2.1.0.json", "runs": [{"tool": {"driver": {"name": "Repobility", "informationUri": "https://repobility.com", "rules": [{"id": "scanner-d143f4bf140ec221", "name": "Possibly dead Python function: check_links", "shortDescription": {"text": "Possibly dead Python function: check_links"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-77791340e55256ee", "name": "Possibly dead Python function: describe", "shortDescription": {"text": "Possibly dead Python function: describe"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-57961b4d65f8a1bc", "name": "`truncate` class without `title=` for hover reveal \u2014 frontend/src/routes/dashboard.tsx:71", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 frontend/src/routes/dashboard.tsx:71"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-df30b6ae31f989ed", "name": "Privileged port 7 in use", "shortDescription": {"text": "Privileged port 7 in use"}, "fullDescription": {"text": "Port 7 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-39741916c20c210f", "name": "Privileged port 17 in use", "shortDescription": {"text": "Privileged port 17 in use"}, "fullDescription": {"text": "Port 17 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-36b16b658920fb30", "name": "Privileged port 4 in use", "shortDescription": {"text": "Privileged port 4 in use"}, "fullDescription": {"text": "Port 4 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4766f0bfc165a3cb", "name": "Privileged port 30 in use", "shortDescription": {"text": "Privileged port 30 in use"}, "fullDescription": {"text": "Port 30 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ed480c573cbf004b", "name": "Privileged port 9 in use", "shortDescription": {"text": "Privileged port 9 in use"}, "fullDescription": {"text": "Port 9 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-24a94e18e70a1ea1", "name": "Privileged port 8 in use", "shortDescription": {"text": "Privileged port 8 in use"}, "fullDescription": {"text": "Port 8 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a465e9587ce7575e", "name": "Privileged port 15 in use", "shortDescription": {"text": "Privileged port 15 in use"}, "fullDescription": {"text": "Port 15 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0ca2d2f7b8ad3872", "name": "Privileged port 47 in use", "shortDescription": {"text": "Privileged port 47 in use"}, "fullDescription": {"text": "Port 47 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d63da3583b14afc0", "name": "Dockerfile runs as root: Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8987d6d1c30c7202", "name": "Docker base image is tag-pinned but not digest-pinned: node:20-alpine", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: node:20-alpine"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-de3c1f217d72a063", "name": "Docker base image is tag-pinned but not digest-pinned: python:3.12-slim", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: python:3.12-slim"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9710c8d059e53154", "name": "No frontend routes/components detected", "shortDescription": {"text": "No frontend routes/components detected"}, "fullDescription": {"text": "No React/Vue/Next routes were found. This is fine for backend-only repos."}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a30926434bb892e7", "name": "Possible secret in warn_v2/scrapers/states/wi.py", "shortDescription": {"text": "Possible secret in warn_v2/scrapers/states/wi.py"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-6372cebde0220094", "name": "No auth library detected", "shortDescription": {"text": "No auth library detected"}, "fullDescription": {"text": "The scanner did not find any standard auth library (JWT, OAuth, NextAuth, Auth0, etc.). The repo has auth/admin/session surface indicators, so auth may live in custom code, in a separate service, or be missing."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7f0f9976570faa6d", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "docker/setup-buildx-action@v4 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-68a2b8f5c8cd6b53", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-72b2a6250083a784", "name": "Placeholder or mock-heavy implementation detected", "shortDescription": {"text": "Placeholder or mock-heavy implementation detected"}, "fullDescription": {"text": "Found 12 placeholder/mock markers across 5 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-749d4bc1bd66df5f", "name": "Agent instructions exist but release-hardening basics are missing", "shortDescription": {"text": "Agent instructions exist but release-hardening basics are missing"}, "fullDescription": {"text": "AI-coder instruction files were found, but the repo is missing license. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9a073dada231b5e7", "name": "Legacy-named symbol `warn_v2` in frontend/src/api/types.ts:1", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in frontend/src/api/types.ts:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-77bedc8de1c15d96", "name": "Legacy-named symbol `warn_v2` in tests/test_nj.py:9", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_nj.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-84fe7cca6577de00", "name": "Legacy-named symbol `warn_v2` in tests/test_al.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_al.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2d38bcb1397c4f92", "name": "Legacy-named symbol `warn_v2` in tests/test_az.py:9", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_az.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2756167bedf66c01", "name": "Legacy-named symbol `warn_v2` in tests/test_ne.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ne.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1a5e9174587a1ac2", "name": "Legacy-named symbol `warn_v2` in tests/test_ny.py:9", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ny.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2bd80e530e034c13", "name": "Legacy-named symbol `warn_v2` in tests/test_ms.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ms.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-417f73a67b08def7", "name": "Legacy-named symbol `warn_v2` in tests/test_cli_enrich_notices.py:16", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_cli_enrich_notices.py:16"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ab4fdf7cdd4b142a", "name": "Legacy-named symbol `warn_v2` in tests/test_enrichment_lookup.py:11", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_enrichment_lookup.py:11"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2ad036c3265b20f7", "name": "Legacy-named symbol `warn_v2` in tests/test_backfill_geo.py:9", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_backfill_geo.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a08035af2c43ff04", "name": "Legacy-named symbol `warn_v2` in tests/test_storage.py:5", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_storage.py:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6cbbce7743fa09c5", "name": "Legacy-named symbol `warn_v2` in tests/test_nc.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_nc.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8359a0d0b1ac949d", "name": "Legacy-named symbol `warn_v2` in tests/test_ingest_file.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ingest_file.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6a03acf0c762289f", "name": "Legacy-named symbol `warn_v2` in tests/test_nv.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_nv.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b51da44798d9985a", "name": "Legacy-named symbol `warn_v2` in tests/test_id.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_id.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b4502543fdf2c733", "name": "Legacy-named symbol `warn_v2` in tests/test_effective_date_fallback.py:22", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_effective_date_fallback.py:22"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d4cf5dc13823edd8", "name": "Commented-code block (5 lines) in tests/test_effective_date_fallback.py:122", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_effective_date_fallback.py:122"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3933549ad7db4e62", "name": "Legacy-named symbol `warn_v2` in tests/test_consolidate_companies.py:7", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_consolidate_companies.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-31a3e6eeddfa0d34", "name": "Legacy-named symbol `warn_v2` in tests/test_cli_reset_enrichment.py:11", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_cli_reset_enrichment.py:11"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1c0e54b785fa673b", "name": "Legacy-named symbol `warn_v2` in tests/test_or.py:9", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_or.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-21b7bd66df8100cf", "name": "Legacy-named symbol `warn_v2` in tests/test_wa.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_wa.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9c6b8471268a7c33", "name": "Legacy-named symbol `warn_v2` in tests/test_zip_centroids.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_zip_centroids.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-edd8feaa88ffe4f9", "name": "Legacy-named symbol `warn_v2` in tests/test_nm.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_nm.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-857b9ba9354da091", "name": "Legacy-named symbol `warn_v2` in tests/conftest.py:14", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/conftest.py:14"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0a201554cdb695b5", "name": "Legacy-named symbol `warn_v2` in tests/test_audit.py:6", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_audit.py:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b547640888ee8e43", "name": "Legacy-named symbol `warn_v2` in tests/test_ma.py:7", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ma.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3457f44d5e7c9b51", "name": "Legacy-named symbol `warn_v2` in tests/test_ak.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ak.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4f9c58c2fc649100", "name": "Legacy-named symbol `warn_v2` in tests/test_wv.py:7", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_wv.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f4184a7068f927db", "name": "Legacy-named symbol `warn_v2` in tests/test_backfill_historical.py:15", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_backfill_historical.py:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b280a7173b8fee84", "name": "Legacy-named symbol `warn_v2` in tests/test_in.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_in.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ba50095b3c070b57", "name": "Legacy-named symbol `warn_v2` in tests/test_geocoder.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_geocoder.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e3c1b3234102050a", "name": "Legacy-named symbol `warn_v2` in tests/test_heal_tools.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_heal_tools.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-aa9bb37ee5e21bed", "name": "Legacy-named symbol `warn_v2` in tests/test_mn.py:7", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_mn.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0e22f6aeb6440cbf", "name": "Legacy-named symbol `warn_v2` in tests/test_md.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_md.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e5091d0d5e43a911", "name": "Legacy-named symbol `warn_v2` in tests/test_tn.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_tn.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c44fecaf291741b6", "name": "Legacy-named symbol `warn_v2` in tests/test_ca.py:5", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ca.py:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-82203e3f025322bc", "name": "Legacy-named symbol `warn_v2` in tests/test_mo.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_mo.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-12e0894d20cd91c9", "name": "Legacy-named symbol `warn_v2` in tests/test_cli_scrape_all.py:14", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_cli_scrape_all.py:14"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-656c1455b2edad2b", "name": "Legacy-named symbol `warn_v2` in tests/test_helpers_as_date.py:6", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_helpers_as_date.py:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c833d417feb89cbe", "name": "Legacy-named symbol `warn_v2` in tests/test_ri.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ri.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4dd018b2ce6d84e5", "name": "Legacy-named symbol `warn_v2` in tests/test_backfill_notice_dates.py:6", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_backfill_notice_dates.py:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-51c24fff59b4e984", "name": "Legacy-named symbol `warn_v2` in tests/test_cli_users.py:3", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_cli_users.py:3"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cc1a8bf1a6139ae6", "name": "Legacy-named symbol `warn_v2` in tests/test_enrichment_agent.py:7", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_enrichment_agent.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3c3dcf47b4730cd0", "name": "Legacy-named symbol `warn_v2` in tests/test_enrich_ga.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_enrich_ga.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7850c0985f8490bb", "name": "Legacy-named symbol `warn_v2` in tests/test_dedup.py:3", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_dedup.py:3"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b17a19523c2139fe", "name": "Legacy-named symbol `warn_v2` in tests/test_api_stats.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_api_stats.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d0c4c923fdc815cd", "name": "Legacy-named symbol `warn_v2` in tests/test_va.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_va.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-aa7af698176603e9", "name": "Legacy-named symbol `warn_v2` in tests/test_validate.py:3", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_validate.py:3"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5e20b20cf84bf002", "name": "Legacy-named symbol `warn_v2` in tests/test_pa.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_pa.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b4baabc5cb913ad4", "name": "Legacy-named symbol `warn_v2` in tests/test_fl.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_fl.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bd56eff04bbf40eb", "name": "Legacy-named symbol `warn_v2` in tests/test_city_centroids.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_city_centroids.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4f947bffa14aff0e", "name": "Legacy-named symbol `warn_v2` in tests/test_enrichment_provider.py:9", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_enrichment_provider.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-55d74964c0ad259e", "name": "Legacy-named symbol `warn_v2` in tests/test_ga.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ga.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a500a0abda8cbf6d", "name": "Legacy-named symbol `warn_v2` in tests/test_heal_sandbox.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_heal_sandbox.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7766a7ec7ee7479d", "name": "Legacy-named symbol `warn_v2` in tests/test_ky.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ky.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6f1ce823dca1c8a0", "name": "Legacy-named symbol `warn_v2` in tests/test_mn_city.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_mn_city.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e5f10d359c51d779", "name": "Legacy-named symbol `warn_v2` in tests/test_api_auth.py:15", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_api_auth.py:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-328723eef2572ce3", "name": "Legacy-named symbol `warn_v2` in tests/test_mt.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_mt.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1ac66977286295e5", "name": "Legacy-named symbol `warn_v2` in tests/test_oh.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_oh.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-30cc54c3e101b775", "name": "Legacy-named symbol `warn_v2` in tests/test_county_geo.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_county_geo.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-76821018ae8c206d", "name": "Legacy-named symbol `warn_v2` in tests/test_heal_agent.py:15", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_heal_agent.py:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-12bc94f32fc01c82", "name": "Legacy-named symbol `warn_v2` in tests/test_co.py:7", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_co.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-097dc8925e7d38a2", "name": "Legacy-named symbol `warn_v2` in tests/test_dc.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_dc.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-15d2d2f058513e6f", "name": "Legacy-named symbol `warn_v2` in tests/test_api.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_api.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b99fa11613de2680", "name": "Legacy-named symbol `warn_v2` in tests/test_closure.py:6", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_closure.py:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-39f4cb3da2609695", "name": "Legacy-named symbol `warn_v2` in tests/test_naics.py:4", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_naics.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1c1328bbd6de9cba", "name": "Legacy-named symbol `warn_v2` in tests/test_tx.py:3", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_tx.py:3"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6f0b648ef13e09b7", "name": "Legacy-named symbol `warn_v2` in tests/test_la.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_la.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-eb46b85619d6a8be", "name": "Legacy-named symbol `warn_v2` in tests/test_enrich_notices_registry.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_enrich_notices_registry.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c6b9d3aca5348738", "name": "Legacy-named symbol `warn_v2` in tests/test_collector.py:14", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_collector.py:14"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1890269288bbc87a", "name": "Legacy-named symbol `warn_v2` in tests/test_hi.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_hi.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-69197b09c277bad5", "name": "Legacy-named symbol `warn_v2` in tests/test_sc.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_sc.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-56f320c575afee78", "name": "Legacy-named symbol `warn_v2` in tests/test_ia.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ia.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2c52605feec32103", "name": "Legacy-named symbol `warn_v2` in tests/test_ct.py:9", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ct.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-27238c5302486ad7", "name": "Legacy-named symbol `warn_v2` in tests/test_wi.py:9", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_wi.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ffb1c2d247f196c3", "name": "Legacy-named symbol `warn_v2` in tests/test_company_normalize.py:4", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_company_normalize.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7de987b70c5e3647", "name": "Legacy-named symbol `warn_v2` in tests/test_sd.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_sd.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8387accebf18da6e", "name": "Legacy-named symbol `warn_v2` in tests/test_mi.py:7", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_mi.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fc8568839b4051a2", "name": "Legacy-named symbol `warn_v2` in tests/test_dc_geo.py:13", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_dc_geo.py:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b52b9a592c5febc3", "name": "Legacy-named symbol `warn_v2` in tests/test_pdf_extract.py:1", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_pdf_extract.py:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2de4f77d33985e30", "name": "Legacy-named symbol `warn_v2` in tests/test_contract.py:4", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_contract.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a0e2390ddfdee6e4", "name": "Legacy-named symbol `warn_v2` in tests/test_heal_github.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_heal_github.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d235cd79dd222923", "name": "Legacy-named symbol `warn_v2` in tests/test_download_pdfs.py:1", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_download_pdfs.py:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1bd0db77b16a7836", "name": "Legacy-named symbol `warn_v2` in tests/test_il.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_il.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-aefffd89adbcadea", "name": "Legacy-named symbol `warn_v2` in tests/test_ut.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_ut.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-159dc6dffee2c90d", "name": "Legacy-named symbol `warn_v2` in tests/test_enrichment_worker.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_enrichment_worker.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4f6e250a8d6e9baa", "name": "Legacy-named symbol `warn_v2` in tests/test_mark_superseded.py:6", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_mark_superseded.py:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-710370c0252c1101", "name": "Legacy-named symbol `warn_v2` in tests/test_nd.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_nd.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-565cc6a301e24ce8", "name": "Legacy-named symbol `warn_v2` in tests/test_heal_detector.py:9", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in tests/test_heal_detector.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d042c610b4628c93", "name": "Legacy-named symbol `warn_v2` in warn_v2/pdf_extract.py:258", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/pdf_extract.py:258"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-57d59d4455e7ffd9", "name": "Legacy-named symbol `warn_v2` in warn_v2/auth.py:18", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/auth.py:18"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-58ed3a8428ce501d", "name": "Legacy-named symbol `warn_v2` in warn_v2/cli.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/cli.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cd50eb755ba2f42c", "name": "Commented-code block (5 lines) in warn_v2/cli.py:835", "shortDescription": {"text": "Commented-code block (5 lines) in warn_v2/cli.py:835"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-051ccd934c995ae6", "name": "Legacy-named symbol `warn_v2` in warn_v2/enrich_notices/__init__.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrich_notices/__init__.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5c6e4682e14a4075", "name": "Legacy-named symbol `warn_v2` in warn_v2/enrich_notices/registry.py:3", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrich_notices/registry.py:3"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f43d8e9f194404a2", "name": "Legacy-named symbol `warn_v2` in warn_v2/enrich_notices/states/ga.py:3", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrich_notices/states/ga.py:3"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-69dc2a4dd62a4170", "name": "Legacy-named symbol `warn_v2` in warn_v2/heal/tools.py:15", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/heal/tools.py:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-43048cc5f5da345f", "name": "Legacy-named symbol `warn_v2` in warn_v2/heal/detector.py:11", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/heal/detector.py:11"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-50be3a36f3059258", "name": "Legacy-named symbol `warn_v2` in warn_v2/heal/sandbox.py:139", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/heal/sandbox.py:139"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bde91e27fbe9b070", "name": "Legacy-named symbol `warn_v2` in warn_v2/heal/github.py:13", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/heal/github.py:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-79399410a626355a", "name": "Network/subprocess call without timeout or try/except \u2014 warn_v2/heal/github.py:107", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 warn_v2/heal/github.py:107"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e6dbd3183ffa2d1f", "name": "Legacy-named symbol `warn_v2` in warn_v2/heal/agent.py:17", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/heal/agent.py:17"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b152fd632df92bd0", "name": "Legacy-named symbol `warn_v2` in warn_v2/enrichment/__init__.py:1", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrichment/__init__.py:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d8155f4c98294579", "name": "Legacy-named symbol `warn_v2` in warn_v2/enrichment/worker.py:19", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrichment/worker.py:19"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cd3c1138a0dcbdc8", "name": "Legacy-named symbol `warn_v2` in warn_v2/enrichment/lookup.py:19", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrichment/lookup.py:19"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0355a9b6e8a76afa", "name": "Legacy-named symbol `warn_v2` in warn_v2/enrichment/agent.py:18", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrichment/agent.py:18"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7606733bd385893c", "name": "Commented-code block (5 lines) in warn_v2/enrichment/agent.py:214", "shortDescription": {"text": "Commented-code block (5 lines) in warn_v2/enrichment/agent.py:214"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2c347a333a4e549d", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/job_link.py:37", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/job_link.py:37"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4651c681dd7c13b4", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/__init__.py:1", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/__init__.py:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-876dac049c367fc7", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/registry.py:7", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/registry.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-188250c5401e82a5", "name": "Commented-code block (5 lines) in warn_v2/scrapers/registry.py:17", "shortDescription": {"text": "Commented-code block (5 lines) in warn_v2/scrapers/registry.py:17"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-af114f62fb62719a", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/playwright_base.py:17", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/playwright_base.py:17"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e5475a6b07837429", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/base.py:46", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/base.py:46"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f276a79e6f1cf9a1", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/mn_city.py:20", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/mn_city.py:20"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c489a570a3d57ade", "name": "Commented-code block (5 lines) in warn_v2/scrapers/_helpers.py:42", "shortDescription": {"text": "Commented-code block (5 lines) in warn_v2/scrapers/_helpers.py:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0bdde7fbe4735529", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/wa.py:18", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/wa.py:18"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b161492510d1543e", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/id.py:25", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/id.py:25"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-91e9e9eae086706b", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/vt.py:4", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/vt.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-778f59d7346a6e37", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nh.py:18", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nh.py:18"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-96bfabd4b307d6c4", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/pa.py:45", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/pa.py:45"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bfe029c9625454bd", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ut.py:15", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ut.py:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e5aab7f554186008", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/wv.py:28", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/wv.py:28"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d4d92313cd0a3341", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/or_.py:27", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/or_.py:27"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0dab2ada9b601100", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/md.py:23", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/md.py:23"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-eaa990bab8adaa60", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nc.py:19", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nc.py:19"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ebc64dd3d3025d09", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/fl.py:25", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/fl.py:25"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-87e38ba43df2a5f3", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ks.py:4", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ks.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-14164cc9bf055528", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ky.py:29", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ky.py:29"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-86c45ba34004f6fd", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/sd.py:22", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/sd.py:22"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-72dcd01d6a6de81a", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/mt.py:22", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/mt.py:22"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b589f1a05b2b74c7", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/az.py:4", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/az.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d010cf2b572f04ff", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ne.py:16", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ne.py:16"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-289464b9bbf5c023", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nj.py:32", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nj.py:32"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4e6e57e46f8bf9a8", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/va.py:21", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/va.py:21"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-91637594ea906fb9", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ga.py:15", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ga.py:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e22e3c7460d1935a", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ct.py:37", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ct.py:37"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f207543b326bf1ae", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ma.py:28", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ma.py:28"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-07d866dfd8104304", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nm.py:23", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nm.py:23"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7c96e9848b51988d", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ar.py:16", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ar.py:16"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ea4c85f5ccf9f67a", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/hi.py:25", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/hi.py:25"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7ac7ab414300fbf6", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/in_.py:20", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/in_.py:20"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5f514981a2929434", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ca.py:18", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ca.py:18"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0a7643c008f996be", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/wy.py:20", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/wy.py:20"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8c04a9c97be70dd1", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ny.py:30", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ny.py:30"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4fa05e2d04c8be42", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/la.py:22", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/la.py:22"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-585986a115f32b9e", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/me.py:4", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/me.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e298b9b0087853f8", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nd.py:25", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nd.py:25"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4dab72e9e0fccca4", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/mi.py:31", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/mi.py:31"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7739e0740d38a1ac", "name": "Commented-code block (5 lines) in warn_v2/scrapers/states/mi.py:129", "shortDescription": {"text": "Commented-code block (5 lines) in warn_v2/scrapers/states/mi.py:129"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9b2415a152eabb21", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/co.py:25", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/co.py:25"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c0035912452c5c79", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ok.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ok.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-12e768c77c444473", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ms.py:29", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ms.py:29"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-02d0a8102062f8f8", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/tx.py:24", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/tx.py:24"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-36ab14ff7df9765f", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ri.py:23", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ri.py:23"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2a839b20e0bae97e", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/sc.py:27", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/sc.py:27"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-edeb88fe07348e73", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/il.py:27", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/il.py:27"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-280ec6eb24611f09", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/de.py:4", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/de.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2bb342bb36f30971", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/mn.py:33", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/mn.py:33"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dc387dc98127b7fb", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/wi.py:33", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/wi.py:33"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ba56ed03b9264771", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/al.py:17", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/al.py:17"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e4642984e3f680bc", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ak.py:24", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ak.py:24"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c914de782670dcd8", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/dc.py:19", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/dc.py:19"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-09fb2cc65d6ce23e", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ia.py:33", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ia.py:33"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3733e3138f5c2a57", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/oh.py:19", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/oh.py:19"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-92658615f5c00595", "name": "Commented-code block (8 lines) in warn_v2/scrapers/states/oh.py:166", "shortDescription": {"text": "Commented-code block (8 lines) in warn_v2/scrapers/states/oh.py:166"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a847eb167a51f6f4", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/tn.py:24", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/tn.py:24"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bf7755817b6e345d", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/mo.py:20", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/mo.py:20"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2c48aa221e7c9447", "name": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nv.py:33", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nv.py:33"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dd702bffabef6119", "name": "Commented-code block (5 lines) in warn_v2/api/schemas.py:31", "shortDescription": {"text": "Commented-code block (5 lines) in warn_v2/api/schemas.py:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b7e94dc9cc33edca", "name": "Legacy-named symbol `warn_v2` in warn_v2/api/__init__.py:1", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/__init__.py:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-822e37baeca37f9f", "name": "Legacy-named symbol `warn_v2` in warn_v2/api/deps.py:9", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/deps.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b2a37283e18adf41", "name": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/runs.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/runs.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-580a73cff87e4ac0", "name": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/map_pins.py:28", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/map_pins.py:28"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6c35fae60a61809a", "name": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/auth.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/auth.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2e9e04c2b1bd6665", "name": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/stats.py:16", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/stats.py:16"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-23fc01ee30e86020", "name": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/companies.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/companies.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be20ed022bddaa0a", "name": "Commented-code block (5 lines) in warn_v2/api/routes/companies.py:47", "shortDescription": {"text": "Commented-code block (5 lines) in warn_v2/api/routes/companies.py:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1e02688dec8a2185", "name": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/notices.py:13", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/notices.py:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f6a3d4da14c296a5", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_sic_naics_crosswalk.py:7", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_sic_naics_crosswalk.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-72ca0fb2500e82c8", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/ingest_file.py:34", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/ingest_file.py:34"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cfdf1248c17b0e44", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/enrich_ga.py:30", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/enrich_ga.py:30"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c2706a1e27d89e6a", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/backfill_historical.py:15", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/backfill_historical.py:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9eaa810c653c4c68", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_zip_centroids.py:1", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_zip_centroids.py:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-666c10bbe06b8da1", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/backfill_geo.py:27", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/backfill_geo.py:27"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a8b4c119d7f8f17e", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/consolidate_companies.py:33", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/consolidate_companies.py:33"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5d6c7f5c4fbadf40", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/download_pdfs.py:25", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/download_pdfs.py:25"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-254f82e1c075dc57", "name": "Commented-code block (5 lines) in warn_v2/scripts/download_pdfs.py:311", "shortDescription": {"text": "Commented-code block (5 lines) in warn_v2/scripts/download_pdfs.py:311"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-88a4fcd8d759c803", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_city_centroids.py:1", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_city_centroids.py:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6bbbe383815e5a90", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/backfill_effective_dates.py:23", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/backfill_effective_dates.py:23"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4c3191fae6411ce3", "name": "Commented-code block (5 lines) in warn_v2/scripts/backfill_effective_dates.py:64", "shortDescription": {"text": "Commented-code block (5 lines) in warn_v2/scripts/backfill_effective_dates.py:64"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0be9442ff86eaeea", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_sic_descriptions.py:6", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_sic_descriptions.py:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8ad772e9b1bbf0c9", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/backfill_notice_dates.py:6", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/backfill_notice_dates.py:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5c3130d36aedfbea", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_county_centroids.py:1", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_county_centroids.py:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0b9a909ac56d2521", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/audit.py:41", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/audit.py:41"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d8025b0c2ddd22f0", "name": "Legacy-named symbol `warn_v2` in warn_v2/scripts/mark_superseded.py:42", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/mark_superseded.py:42"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2c8478850210eea0", "name": "Commented-code block (6 lines) in warn_v2/scripts/mark_superseded.py:128", "shortDescription": {"text": "Commented-code block (6 lines) in warn_v2/scripts/mark_superseded.py:128"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cdd4d915c0af3ee7", "name": "Legacy-named symbol `warn_v2` in warn_v2/observability/metrics.py:39", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/observability/metrics.py:39"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6c412d22590ddd7f", "name": "Legacy-named symbol `warn_v2` in warn_v2/observability/collector.py:7", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/observability/collector.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6412c8b9f5987230", "name": "Legacy-named symbol `warn_v2` in warn_v2/geo/county_centroids.py:7", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/geo/county_centroids.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-744691d8be55f53b", "name": "Legacy-named symbol `warn_v2` in warn_v2/geo/zip_centroids.py:7", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/geo/zip_centroids.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4c363f63fd37135c", "name": "Legacy-named symbol `warn_v2` in warn_v2/geo/city_centroids.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/geo/city_centroids.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-924c85d3c8faaffd", "name": "Legacy-named symbol `warn_v2` in warn_v2/geo/geocoder.py:22", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/geo/geocoder.py:22"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c7bb485085716356", "name": "Legacy-named symbol `warn_v2` in warn_v2/pipeline/validate.py:8", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/pipeline/validate.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0bb1fcb2f0799c0f", "name": "Legacy-named symbol `warn_v2` in warn_v2/pipeline/dedup.py:11", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/pipeline/dedup.py:11"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-382c5173efaee6b1", "name": "Legacy-named symbol `warn_v2` in warn_v2/pipeline/storage.py:13", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/pipeline/storage.py:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3301a65abd331a8b", "name": "Commented-code block (5 lines) in warn_v2/pipeline/storage.py:31", "shortDescription": {"text": "Commented-code block (5 lines) in warn_v2/pipeline/storage.py:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3105bc4eda2058a1", "name": "Legacy-named symbol `warn_v2` in warn_v2/pipeline/runner.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/pipeline/runner.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f08b989142b3a192", "name": "Legacy-named symbol `warn_v2` in warn_v2/db/models.py:77", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/db/models.py:77"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ed3999fc66cdcdf7", "name": "Legacy-named symbol `warn_v2` in warn_v2/db/migrations/env.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/db/migrations/env.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0852f9d9381b3c2a", "name": "Legacy-named symbol `warn_v2` in warn_v2/db/migrations/versions/20260604_0008_add_notice_closure_category.py:18", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/db/migrations/versions/20260604_0008_add_notice_closure_category.py:18"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c0da595f716e67b5", "name": "Legacy-named symbol `warn_v2` in warn_v2/db/migrations/versions/20260610_0010_add_company_consolidation.py:10", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/db/migrations/versions/20260610_0010_add_company_consolidation.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-247e396f65d607b7", "name": "Legacy-named symbol `warn_v2` in warn_v2/companies/naics_subsectors.py:6", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/companies/naics_subsectors.py:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-53439363edfa53ae", "name": "Legacy-named symbol `warn_v2` in warn_v2/companies/naics.py:12", "shortDescription": {"text": "Legacy-named symbol `warn_v2` in warn_v2/companies/naics.py:12"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c0b76951c27e52dd", "name": "Commented-code block (7 lines) in warn_v2/companies/normalize.py:34", "shortDescription": {"text": "Commented-code block (7 lines) in warn_v2/companies/normalize.py:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2eafc3188c36bb02", "name": "3 env vars used in code but missing from .env.example", "shortDescription": {"text": "3 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `AUTH_COOKIE_SECURE`, `ENRICHMENT_PROVIDER_MODULE`, `PDF_DIR`. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2c04133e54348533", "name": "Near-duplicate function bodies in 2 places", "shortDescription": {"text": "Near-duplicate function bodies in 2 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nwarn_v2/enrich_notices/base.py:run, warn_v2/enrich_notices/states/ga.py:run\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-49c98f7cedd9c977", "name": "Near-duplicate function bodies in 4 places", "shortDescription": {"text": "Near-duplicate function bodies in 4 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nwarn_v2/heal/agent.py:create, warn_v2/heal/agent.py:create, warn_v2/enrichment/agent.py:create, warn_v2/enrichment/agent.py:create\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0027e313ade46c8f", "name": "Near-duplicate function bodies in 7 places", "shortDescription": {"text": "Near-duplicate function bodies in 7 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nwarn_v2/scrapers/states/wa.py:fetch, warn_v2/scrapers/states/md.py:fetch, warn_v2/scrapers/states/mt.py:fetch, warn_v2/scrapers/states/va.py:fetch\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-02525d39071dd2c7", "name": "Near-duplicate function bodies in 5 places", "shortDescription": {"text": "Near-duplicate function bodies in 5 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nwarn_v2/scrapers/states/ut.py:fetch, warn_v2/scrapers/states/sd.py:fetch, warn_v2/scrapers/states/ne.py:fetch, warn_v2/scrapers/states/ak.py:fetch\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be46ea126aa5d8dc", "name": "Near-duplicate function bodies in 3 places", "shortDescription": {"text": "Near-duplicate function bodies in 3 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nwarn_v2/scrapers/states/nc.py:fetch, warn_v2/scrapers/states/la.py:fetch, warn_v2/scrapers/states/dc.py:fetch\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8f5614c18a2feac7", "name": "Unused endpoint: GET /api", "shortDescription": {"text": "Unused endpoint: GET /api"}, "fullDescription": {"text": "`warn_v2/api/routes/runs.py` declares `GET /api` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-618721b912bad1c2", "name": "Unused endpoint: POST /login", "shortDescription": {"text": "Unused endpoint: POST /login"}, "fullDescription": {"text": "`warn_v2/api/routes/auth.py` declares `POST /login` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-99fc36db98c134ce", "name": "Unused endpoint: POST /logout", "shortDescription": {"text": "Unused endpoint: POST /logout"}, "fullDescription": {"text": "`warn_v2/api/routes/auth.py` declares `POST /logout` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fd1dc91abf32142d", "name": "Unused endpoint: GET /me", "shortDescription": {"text": "Unused endpoint: GET /me"}, "fullDescription": {"text": "`warn_v2/api/routes/auth.py` declares `GET /me` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bfdc0a38ae304a34", "name": "Unused endpoint: GET /api/by-state", "shortDescription": {"text": "Unused endpoint: GET /api/by-state"}, "fullDescription": {"text": "`warn_v2/api/routes/stats.py` declares `GET /api/by-state` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e731e7fb6ef67d4d", "name": "Unused endpoint: GET /api/by-month", "shortDescription": {"text": "Unused endpoint: GET /api/by-month"}, "fullDescription": {"text": "`warn_v2/api/routes/stats.py` declares `GET /api/by-month` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-55400656691c67ef", "name": "Unused endpoint: GET /api/top-employers", "shortDescription": {"text": "Unused endpoint: GET /api/top-employers"}, "fullDescription": {"text": "`warn_v2/api/routes/stats.py` declares `GET /api/top-employers` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-502119c1e51bfc20", "name": "Unused endpoint: GET /api/industries", "shortDescription": {"text": "Unused endpoint: GET /api/industries"}, "fullDescription": {"text": "`warn_v2/api/routes/stats.py` declares `GET /api/industries` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-43396fa1429f3432", "name": "Unused endpoint: GET /api/by-parent-group", "shortDescription": {"text": "Unused endpoint: GET /api/by-parent-group"}, "fullDescription": {"text": "`warn_v2/api/routes/stats.py` declares `GET /api/by-parent-group` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ad36fba84f420ef3", "name": "Unused endpoint: GET /api/{company_id}", "shortDescription": {"text": "Unused endpoint: GET /api/{company_id}"}, "fullDescription": {"text": "`warn_v2/api/routes/companies.py` declares `GET /api/{company_id}` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e381149ec6773ea6", "name": "Unused endpoint: GET /api/{company_id}/notices", "shortDescription": {"text": "Unused endpoint: GET /api/{company_id}/notices"}, "fullDescription": {"text": "`warn_v2/api/routes/companies.py` declares `GET /api/{company_id}/notices` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-140c1508b3fd3a8d", "name": "Unused endpoint: GET /api/{company_id}/family", "shortDescription": {"text": "Unused endpoint: GET /api/{company_id}/family"}, "fullDescription": {"text": "`warn_v2/api/routes/companies.py` declares `GET /api/{company_id}/family` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-266da6c0908cf013", "name": "Unused endpoint: GET /api/{notice_id}", "shortDescription": {"text": "Unused endpoint: GET /api/{notice_id}"}, "fullDescription": {"text": "`warn_v2/api/routes/notices.py` declares `GET /api/{notice_id}` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-30508a113f66e9a7", "name": "Unused endpoint: GET /api/{notice_id}/pdf", "shortDescription": {"text": "Unused endpoint: GET /api/{notice_id}/pdf"}, "fullDescription": {"text": "`warn_v2/api/routes/notices.py` declares `GET /api/{notice_id}/pdf` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/22724"}, "properties": {"repository": "wielandtech-labs/warn_scraper_v2", "repoUrl": "https://github.com/wielandtech-labs/warn_scraper_v2", "branch": "main"}, "results": [{"ruleId": "scanner-d143f4bf140ec221", "level": "note", "message": {"text": "Possibly dead Python function: check_links"}, "properties": {"repobilityId": "ffc3ff8d24a0511a", "scanner": "scanner-primary", "fingerprint": "d143f4bf140ec221", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "warn_v2/scripts/audit.py:356"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-77791340e55256ee", "level": "note", "message": {"text": "Possibly dead Python function: describe"}, "properties": {"repobilityId": "031a29a46186597a", "scanner": "scanner-primary", "fingerprint": "77791340e55256ee", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "warn_v2/observability/collector.py:30"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-57961b4d65f8a1bc", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 frontend/src/routes/dashboard.tsx:71"}, "properties": {"repobilityId": "6c47621887a48a2c", "scanner": "scanner-primary", "fingerprint": "57961b4d65f8a1bc", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-df30b6ae31f989ed", "level": "warning", "message": {"text": "Privileged port 7 in use"}, "properties": {"repobilityId": "428a6faecc63b5d6", "scanner": "scanner-primary", "fingerprint": "df30b6ae31f989ed", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "charts/warn-v2/values.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-39741916c20c210f", "level": "warning", "message": {"text": "Privileged port 17 in use"}, "properties": {"repobilityId": "0bf38fb8f89ec589", "scanner": "scanner-primary", "fingerprint": "39741916c20c210f", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "charts/warn-v2/values.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-36b16b658920fb30", "level": "warning", "message": {"text": "Privileged port 4 in use"}, "properties": {"repobilityId": "1594bfeff919296e", "scanner": "scanner-primary", "fingerprint": "36b16b658920fb30", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "charts/warn-v2/values.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4766f0bfc165a3cb", "level": "warning", "message": {"text": "Privileged port 30 in use"}, "properties": {"repobilityId": "54f172e7d16fc662", "scanner": "scanner-primary", "fingerprint": "4766f0bfc165a3cb", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "charts/warn-v2/values.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ed480c573cbf004b", "level": "warning", "message": {"text": "Privileged port 9 in use"}, "properties": {"repobilityId": "31590a6ba3409390", "scanner": "scanner-primary", "fingerprint": "ed480c573cbf004b", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "charts/warn-v2/values.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-24a94e18e70a1ea1", "level": "warning", "message": {"text": "Privileged port 8 in use"}, "properties": {"repobilityId": "8e03f5632e703751", "scanner": "scanner-primary", "fingerprint": "24a94e18e70a1ea1", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "charts/warn-v2/values.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a465e9587ce7575e", "level": "warning", "message": {"text": "Privileged port 15 in use"}, "properties": {"repobilityId": "3340f9a170f285cd", "scanner": "scanner-primary", "fingerprint": "a465e9587ce7575e", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "charts/warn-v2/values.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0ca2d2f7b8ad3872", "level": "warning", "message": {"text": "Privileged port 47 in use"}, "properties": {"repobilityId": "986e85543d70890d", "scanner": "scanner-primary", "fingerprint": "0ca2d2f7b8ad3872", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "charts/warn-v2/values.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d63da3583b14afc0", "level": "warning", "message": {"text": "Dockerfile runs as root: Dockerfile"}, "properties": {"repobilityId": "a2ed1bd120e507db", "scanner": "scanner-primary", "fingerprint": "d63da3583b14afc0", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-8987d6d1c30c7202", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:20-alpine"}, "properties": {"repobilityId": "31ec2e51e68b48de", "scanner": "scanner-primary", "fingerprint": "8987d6d1c30c7202", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Dockerfile"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-de3c1f217d72a063", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: python:3.12-slim"}, "properties": {"repobilityId": "12e28fbf87e6777c", "scanner": "scanner-primary", "fingerprint": "de3c1f217d72a063", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Dockerfile"}, "region": {"startLine": 18}}}]}, {"ruleId": "scanner-9710c8d059e53154", "level": "none", "message": {"text": "No frontend routes/components detected"}, "properties": {"repobilityId": "44ca61485762e494", "scanner": "scanner-primary", "fingerprint": "9710c8d059e53154", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-a30926434bb892e7", "level": "error", "message": {"text": "Possible secret in warn_v2/scrapers/states/wi.py"}, "properties": {"repobilityId": "00d60a4b7f58b9ce", "scanner": "scanner-primary", "fingerprint": "a30926434bb892e7", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "warn_v2/scrapers/states/wi.py"}, "region": {"startLine": 39}}}]}, {"ruleId": "scanner-6372cebde0220094", "level": "warning", "message": {"text": "No auth library detected"}, "properties": {"repobilityId": "a5b6035a5bbf8054", "scanner": "scanner-primary", "fingerprint": "6372cebde0220094", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["coverage", "auth"]}}, {"ruleId": "scanner-7f0f9976570faa6d", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "d1fcccb3da818454", "scanner": "scanner-primary", "fingerprint": "7f0f9976570faa6d", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/docker.yml"}, "region": {"startLine": 31}}}]}, {"ruleId": "scanner-7f0f9976570faa6d", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "144f516496668fb7", "scanner": "scanner-primary", "fingerprint": "7f0f9976570faa6d", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/docker.yml"}, "region": {"startLine": 41}}}]}, {"ruleId": "scanner-7f0f9976570faa6d", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "ba2f9c341e13ca52", "scanner": "scanner-primary", "fingerprint": "7f0f9976570faa6d", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/docker.yml"}, "region": {"startLine": 59}}}]}, {"ruleId": "scanner-7f0f9976570faa6d", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "2d714eaacdb9a135", "scanner": "scanner-primary", "fingerprint": "7f0f9976570faa6d", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/docker.yml"}, "region": {"startLine": 70}}}]}, {"ruleId": "scanner-68a2b8f5c8cd6b53", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "0036b33690fe05ae", "scanner": "scanner-primary", "fingerprint": "68a2b8f5c8cd6b53", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/docker.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "70e097bfbd61f69e", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-72b2a6250083a784", "level": "warning", "message": {"text": "Placeholder or mock-heavy implementation detected"}, "properties": {"repobilityId": "5a5281c554471332", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "880817999e2102b1", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "ffa83c957ea930bb", "scanner": "scanner-primary", "fingerprint": "749d4bc1bd66df5f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "8d4e360d56fef3ad", "scanner": "scanner-primary", "fingerprint": "ea8f3013f588db25", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-8424db9c75e04ba4", "level": "none", "message": {"text": "Very short observed git history"}, "properties": {"repobilityId": "533fb87b44360553", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-9a073dada231b5e7", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in frontend/src/api/types.ts:1"}, "properties": {"repobilityId": "7458284329314b89", "scanner": "scanner-primary", "fingerprint": "9a073dada231b5e7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-77bedc8de1c15d96", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_nj.py:9"}, "properties": {"repobilityId": "0a7630810b140e18", "scanner": "scanner-primary", "fingerprint": "77bedc8de1c15d96", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-84fe7cca6577de00", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_al.py:8"}, "properties": {"repobilityId": "e599000e8ea0b0f3", "scanner": "scanner-primary", "fingerprint": "84fe7cca6577de00", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2d38bcb1397c4f92", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_az.py:9"}, "properties": {"repobilityId": "310510a8b3d9c621", "scanner": "scanner-primary", "fingerprint": "2d38bcb1397c4f92", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2756167bedf66c01", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ne.py:8"}, "properties": {"repobilityId": "2b66ec835db72774", "scanner": "scanner-primary", "fingerprint": "2756167bedf66c01", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1a5e9174587a1ac2", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ny.py:9"}, "properties": {"repobilityId": "a42c8b77a3ea6f56", "scanner": "scanner-primary", "fingerprint": "1a5e9174587a1ac2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2bd80e530e034c13", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ms.py:8"}, "properties": {"repobilityId": "8b96f67ffc77cf92", "scanner": "scanner-primary", "fingerprint": "2bd80e530e034c13", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-417f73a67b08def7", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_cli_enrich_notices.py:16"}, "properties": {"repobilityId": "30ab1fe1f95f5477", "scanner": "scanner-primary", "fingerprint": "417f73a67b08def7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ab4fdf7cdd4b142a", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_enrichment_lookup.py:11"}, "properties": {"repobilityId": "c80c8e44985a3607", "scanner": "scanner-primary", "fingerprint": "ab4fdf7cdd4b142a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2ad036c3265b20f7", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_backfill_geo.py:9"}, "properties": {"repobilityId": "5639538dfab27554", "scanner": "scanner-primary", "fingerprint": "2ad036c3265b20f7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a08035af2c43ff04", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_storage.py:5"}, "properties": {"repobilityId": "8d1f3dfc3b80440c", "scanner": "scanner-primary", "fingerprint": "a08035af2c43ff04", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6cbbce7743fa09c5", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_nc.py:8"}, "properties": {"repobilityId": "f3c856b8b39e13c3", "scanner": "scanner-primary", "fingerprint": "6cbbce7743fa09c5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8359a0d0b1ac949d", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ingest_file.py:8"}, "properties": {"repobilityId": "b146ec304ad80d70", "scanner": "scanner-primary", "fingerprint": "8359a0d0b1ac949d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6a03acf0c762289f", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_nv.py:8"}, "properties": {"repobilityId": "d64d30cc7f92f86e", "scanner": "scanner-primary", "fingerprint": "6a03acf0c762289f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b51da44798d9985a", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_id.py:8"}, "properties": {"repobilityId": "b8fb221cb7b442e3", "scanner": "scanner-primary", "fingerprint": "b51da44798d9985a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b4502543fdf2c733", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_effective_date_fallback.py:22"}, "properties": {"repobilityId": "5434134ab178a74d", "scanner": "scanner-primary", "fingerprint": "b4502543fdf2c733", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d4cf5dc13823edd8", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_effective_date_fallback.py:122"}, "properties": {"repobilityId": "dedfb69d39aa0fe0", "scanner": "scanner-primary", "fingerprint": "d4cf5dc13823edd8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3933549ad7db4e62", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_consolidate_companies.py:7"}, "properties": {"repobilityId": "ae6f7a1a5163ca94", "scanner": "scanner-primary", "fingerprint": "3933549ad7db4e62", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-31a3e6eeddfa0d34", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_cli_reset_enrichment.py:11"}, "properties": {"repobilityId": "d404d11583a56a2d", "scanner": "scanner-primary", "fingerprint": "31a3e6eeddfa0d34", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1c0e54b785fa673b", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_or.py:9"}, "properties": {"repobilityId": "2c8a80a1790b8ac0", "scanner": "scanner-primary", "fingerprint": "1c0e54b785fa673b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-21b7bd66df8100cf", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_wa.py:8"}, "properties": {"repobilityId": "2166fc23aa4cc86b", "scanner": "scanner-primary", "fingerprint": "21b7bd66df8100cf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9c6b8471268a7c33", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_zip_centroids.py:8"}, "properties": {"repobilityId": "367f1fb6d1eca3fe", "scanner": "scanner-primary", "fingerprint": "9c6b8471268a7c33", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-edd8feaa88ffe4f9", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_nm.py:8"}, "properties": {"repobilityId": "5ed398e345462592", "scanner": "scanner-primary", "fingerprint": "edd8feaa88ffe4f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-857b9ba9354da091", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/conftest.py:14"}, "properties": {"repobilityId": "0fadab9d8536fd3f", "scanner": "scanner-primary", "fingerprint": "857b9ba9354da091", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0a201554cdb695b5", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_audit.py:6"}, "properties": {"repobilityId": "ee69ebe0c287a946", "scanner": "scanner-primary", "fingerprint": "0a201554cdb695b5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b547640888ee8e43", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ma.py:7"}, "properties": {"repobilityId": "f9a28a7b41f78f83", "scanner": "scanner-primary", "fingerprint": "b547640888ee8e43", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3457f44d5e7c9b51", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ak.py:8"}, "properties": {"repobilityId": "c9172a093ab04013", "scanner": "scanner-primary", "fingerprint": "3457f44d5e7c9b51", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4f9c58c2fc649100", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_wv.py:7"}, "properties": {"repobilityId": "383ef508caeab9e7", "scanner": "scanner-primary", "fingerprint": "4f9c58c2fc649100", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f4184a7068f927db", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_backfill_historical.py:15"}, "properties": {"repobilityId": "fddcda1748b7ccea", "scanner": "scanner-primary", "fingerprint": "f4184a7068f927db", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b280a7173b8fee84", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_in.py:8"}, "properties": {"repobilityId": "58bac05c8de6a2fc", "scanner": "scanner-primary", "fingerprint": "b280a7173b8fee84", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ba50095b3c070b57", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_geocoder.py:8"}, "properties": {"repobilityId": "cf8e1224c5fa5443", "scanner": "scanner-primary", "fingerprint": "ba50095b3c070b57", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e3c1b3234102050a", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_heal_tools.py:8"}, "properties": {"repobilityId": "a821ff89a5d63821", "scanner": "scanner-primary", "fingerprint": "e3c1b3234102050a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-aa9bb37ee5e21bed", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_mn.py:7"}, "properties": {"repobilityId": "04370d794b440ff2", "scanner": "scanner-primary", "fingerprint": "aa9bb37ee5e21bed", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0e22f6aeb6440cbf", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_md.py:8"}, "properties": {"repobilityId": "04058355a3ffc70c", "scanner": "scanner-primary", "fingerprint": "0e22f6aeb6440cbf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e5091d0d5e43a911", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_tn.py:8"}, "properties": {"repobilityId": "58e059fc30fa18ef", "scanner": "scanner-primary", "fingerprint": "e5091d0d5e43a911", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c44fecaf291741b6", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ca.py:5"}, "properties": {"repobilityId": "be9c9de18b7f0417", "scanner": "scanner-primary", "fingerprint": "c44fecaf291741b6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-82203e3f025322bc", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_mo.py:8"}, "properties": {"repobilityId": "ca555b5a7e040bfa", "scanner": "scanner-primary", "fingerprint": "82203e3f025322bc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-12e0894d20cd91c9", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_cli_scrape_all.py:14"}, "properties": {"repobilityId": "4ca7b2c00b228248", "scanner": "scanner-primary", "fingerprint": "12e0894d20cd91c9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-656c1455b2edad2b", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_helpers_as_date.py:6"}, "properties": {"repobilityId": "e05fbffe2e89332c", "scanner": "scanner-primary", "fingerprint": "656c1455b2edad2b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c833d417feb89cbe", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ri.py:8"}, "properties": {"repobilityId": "58de61d799bec1cf", "scanner": "scanner-primary", "fingerprint": "c833d417feb89cbe", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4dd018b2ce6d84e5", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_backfill_notice_dates.py:6"}, "properties": {"repobilityId": "fbb1c751719d8503", "scanner": "scanner-primary", "fingerprint": "4dd018b2ce6d84e5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-51c24fff59b4e984", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_cli_users.py:3"}, "properties": {"repobilityId": "587a4b7d04e23c2c", "scanner": "scanner-primary", "fingerprint": "51c24fff59b4e984", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cc1a8bf1a6139ae6", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_enrichment_agent.py:7"}, "properties": {"repobilityId": "0216fcbecfac0ce3", "scanner": "scanner-primary", "fingerprint": "cc1a8bf1a6139ae6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3c3dcf47b4730cd0", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_enrich_ga.py:10"}, "properties": {"repobilityId": "87ad0d5255f15b97", "scanner": "scanner-primary", "fingerprint": "3c3dcf47b4730cd0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7850c0985f8490bb", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_dedup.py:3"}, "properties": {"repobilityId": "fb4a01e7e1288fc1", "scanner": "scanner-primary", "fingerprint": "7850c0985f8490bb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b17a19523c2139fe", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_api_stats.py:10"}, "properties": {"repobilityId": "01e6be228e96106c", "scanner": "scanner-primary", "fingerprint": "b17a19523c2139fe", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d0c4c923fdc815cd", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_va.py:8"}, "properties": {"repobilityId": "8808306e6498b0fe", "scanner": "scanner-primary", "fingerprint": "d0c4c923fdc815cd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-aa7af698176603e9", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_validate.py:3"}, "properties": {"repobilityId": "68b0ac9c6c1356d5", "scanner": "scanner-primary", "fingerprint": "aa7af698176603e9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5e20b20cf84bf002", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_pa.py:8"}, "properties": {"repobilityId": "24c41f7f9c1b360e", "scanner": "scanner-primary", "fingerprint": "5e20b20cf84bf002", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b4baabc5cb913ad4", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_fl.py:8"}, "properties": {"repobilityId": "21e1755a5072e0d6", "scanner": "scanner-primary", "fingerprint": "b4baabc5cb913ad4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bd56eff04bbf40eb", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_city_centroids.py:8"}, "properties": {"repobilityId": "e31beda6a220385e", "scanner": "scanner-primary", "fingerprint": "bd56eff04bbf40eb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4f947bffa14aff0e", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_enrichment_provider.py:9"}, "properties": {"repobilityId": "3c0c64b367df44ab", "scanner": "scanner-primary", "fingerprint": "4f947bffa14aff0e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-55d74964c0ad259e", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ga.py:8"}, "properties": {"repobilityId": "136610637cc82cf8", "scanner": "scanner-primary", "fingerprint": "55d74964c0ad259e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a500a0abda8cbf6d", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_heal_sandbox.py:8"}, "properties": {"repobilityId": "19fe32f85eac7154", "scanner": "scanner-primary", "fingerprint": "a500a0abda8cbf6d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7766a7ec7ee7479d", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ky.py:8"}, "properties": {"repobilityId": "ec078eb3c448570c", "scanner": "scanner-primary", "fingerprint": "7766a7ec7ee7479d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6f1ce823dca1c8a0", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_mn_city.py:8"}, "properties": {"repobilityId": "6cea50cdc4c4920c", "scanner": "scanner-primary", "fingerprint": "6f1ce823dca1c8a0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e5f10d359c51d779", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_api_auth.py:15"}, "properties": {"repobilityId": "0d3143648e80171d", "scanner": "scanner-primary", "fingerprint": "e5f10d359c51d779", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-328723eef2572ce3", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_mt.py:8"}, "properties": {"repobilityId": "508f13c9524adf5a", "scanner": "scanner-primary", "fingerprint": "328723eef2572ce3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1ac66977286295e5", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_oh.py:8"}, "properties": {"repobilityId": "0f943bc596529f3d", "scanner": "scanner-primary", "fingerprint": "1ac66977286295e5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-30cc54c3e101b775", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_county_geo.py:8"}, "properties": {"repobilityId": "ee6d02291b091549", "scanner": "scanner-primary", "fingerprint": "30cc54c3e101b775", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-76821018ae8c206d", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_heal_agent.py:15"}, "properties": {"repobilityId": "3a3c720157032c4f", "scanner": "scanner-primary", "fingerprint": "76821018ae8c206d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-12bc94f32fc01c82", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_co.py:7"}, "properties": {"repobilityId": "c48e5f78d230baea", "scanner": "scanner-primary", "fingerprint": "12bc94f32fc01c82", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-097dc8925e7d38a2", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_dc.py:8"}, "properties": {"repobilityId": "3cd44d37a90b2c4c", "scanner": "scanner-primary", "fingerprint": "097dc8925e7d38a2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-15d2d2f058513e6f", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_api.py:10"}, "properties": {"repobilityId": "3280c2a61e37d557", "scanner": "scanner-primary", "fingerprint": "15d2d2f058513e6f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b99fa11613de2680", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_closure.py:6"}, "properties": {"repobilityId": "095697800a61ce99", "scanner": "scanner-primary", "fingerprint": "b99fa11613de2680", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-39f4cb3da2609695", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_naics.py:4"}, "properties": {"repobilityId": "0000f52e27e08f95", "scanner": "scanner-primary", "fingerprint": "39f4cb3da2609695", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1c1328bbd6de9cba", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_tx.py:3"}, "properties": {"repobilityId": "f497cdae62eef7c3", "scanner": "scanner-primary", "fingerprint": "1c1328bbd6de9cba", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6f0b648ef13e09b7", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_la.py:8"}, "properties": {"repobilityId": "70f9dcc28eb63a22", "scanner": "scanner-primary", "fingerprint": "6f0b648ef13e09b7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-eb46b85619d6a8be", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_enrich_notices_registry.py:8"}, "properties": {"repobilityId": "72bbcde58064b1b5", "scanner": "scanner-primary", "fingerprint": "eb46b85619d6a8be", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c6b9d3aca5348738", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_collector.py:14"}, "properties": {"repobilityId": "4e80b9a03ef830a1", "scanner": "scanner-primary", "fingerprint": "c6b9d3aca5348738", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1890269288bbc87a", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_hi.py:8"}, "properties": {"repobilityId": "d81ed105de340cc1", "scanner": "scanner-primary", "fingerprint": "1890269288bbc87a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-69197b09c277bad5", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_sc.py:8"}, "properties": {"repobilityId": "dec61eef256da771", "scanner": "scanner-primary", "fingerprint": "69197b09c277bad5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-56f320c575afee78", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ia.py:10"}, "properties": {"repobilityId": "4a9c0d6a8a26ae08", "scanner": "scanner-primary", "fingerprint": "56f320c575afee78", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2c52605feec32103", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ct.py:9"}, "properties": {"repobilityId": "27147479e124d003", "scanner": "scanner-primary", "fingerprint": "2c52605feec32103", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-27238c5302486ad7", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_wi.py:9"}, "properties": {"repobilityId": "9c49377af0dafc38", "scanner": "scanner-primary", "fingerprint": "27238c5302486ad7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ffb1c2d247f196c3", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_company_normalize.py:4"}, "properties": {"repobilityId": "f8074ed07c451f30", "scanner": "scanner-primary", "fingerprint": "ffb1c2d247f196c3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7de987b70c5e3647", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_sd.py:8"}, "properties": {"repobilityId": "86f68cec76968c11", "scanner": "scanner-primary", "fingerprint": "7de987b70c5e3647", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8387accebf18da6e", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_mi.py:7"}, "properties": {"repobilityId": "6b06b653f8ceb813", "scanner": "scanner-primary", "fingerprint": "8387accebf18da6e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-fc8568839b4051a2", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_dc_geo.py:13"}, "properties": {"repobilityId": "b77019d195cef00b", "scanner": "scanner-primary", "fingerprint": "fc8568839b4051a2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b52b9a592c5febc3", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_pdf_extract.py:1"}, "properties": {"repobilityId": "5702814ec2319d0f", "scanner": "scanner-primary", "fingerprint": "b52b9a592c5febc3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2de4f77d33985e30", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_contract.py:4"}, "properties": {"repobilityId": "f69e9957b1465ffd", "scanner": "scanner-primary", "fingerprint": "2de4f77d33985e30", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a0e2390ddfdee6e4", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_heal_github.py:10"}, "properties": {"repobilityId": "6cb72eba8100a3ca", "scanner": "scanner-primary", "fingerprint": "a0e2390ddfdee6e4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d235cd79dd222923", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_download_pdfs.py:1"}, "properties": {"repobilityId": "f2f9ca4f0fe6fcc2", "scanner": "scanner-primary", "fingerprint": "d235cd79dd222923", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1bd0db77b16a7836", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_il.py:10"}, "properties": {"repobilityId": "6c344387dfe630dc", "scanner": "scanner-primary", "fingerprint": "1bd0db77b16a7836", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-aefffd89adbcadea", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_ut.py:8"}, "properties": {"repobilityId": "f179d5530a74e54a", "scanner": "scanner-primary", "fingerprint": "aefffd89adbcadea", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-159dc6dffee2c90d", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_enrichment_worker.py:10"}, "properties": {"repobilityId": "4f3b0e33794f00bb", "scanner": "scanner-primary", "fingerprint": "159dc6dffee2c90d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4f6e250a8d6e9baa", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_mark_superseded.py:6"}, "properties": {"repobilityId": "2e5d388d997a9133", "scanner": "scanner-primary", "fingerprint": "4f6e250a8d6e9baa", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-710370c0252c1101", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_nd.py:8"}, "properties": {"repobilityId": "889ea1216d638561", "scanner": "scanner-primary", "fingerprint": "710370c0252c1101", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-565cc6a301e24ce8", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in tests/test_heal_detector.py:9"}, "properties": {"repobilityId": "e3276eec0a436591", "scanner": "scanner-primary", "fingerprint": "565cc6a301e24ce8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d042c610b4628c93", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/pdf_extract.py:258"}, "properties": {"repobilityId": "462f04bbaab7386f", "scanner": "scanner-primary", "fingerprint": "d042c610b4628c93", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-57d59d4455e7ffd9", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/auth.py:18"}, "properties": {"repobilityId": "a534c1f607cdd84d", "scanner": "scanner-primary", "fingerprint": "57d59d4455e7ffd9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-58ed3a8428ce501d", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/cli.py:10"}, "properties": {"repobilityId": "d5ff0b11137a2db6", "scanner": "scanner-primary", "fingerprint": "58ed3a8428ce501d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cd50eb755ba2f42c", "level": "none", "message": {"text": "Commented-code block (5 lines) in warn_v2/cli.py:835"}, "properties": {"repobilityId": "61679b0f004027ba", "scanner": "scanner-primary", "fingerprint": "cd50eb755ba2f42c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-051ccd934c995ae6", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrich_notices/__init__.py:8"}, "properties": {"repobilityId": "b304eb78b65f0129", "scanner": "scanner-primary", "fingerprint": "051ccd934c995ae6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5c6e4682e14a4075", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrich_notices/registry.py:3"}, "properties": {"repobilityId": "48a27090619ac391", "scanner": "scanner-primary", "fingerprint": "5c6e4682e14a4075", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f43d8e9f194404a2", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrich_notices/states/ga.py:3"}, "properties": {"repobilityId": "05a636b3a9456e8f", "scanner": "scanner-primary", "fingerprint": "f43d8e9f194404a2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-69dc2a4dd62a4170", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/heal/tools.py:15"}, "properties": {"repobilityId": "2a3e35fd4e2ff18f", "scanner": "scanner-primary", "fingerprint": "69dc2a4dd62a4170", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-43048cc5f5da345f", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/heal/detector.py:11"}, "properties": {"repobilityId": "1d5ad7352b787cf6", "scanner": "scanner-primary", "fingerprint": "43048cc5f5da345f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-50be3a36f3059258", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/heal/sandbox.py:139"}, "properties": {"repobilityId": "e5921a70729f30b3", "scanner": "scanner-primary", "fingerprint": "50be3a36f3059258", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bde91e27fbe9b070", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/heal/github.py:13"}, "properties": {"repobilityId": "f159a832ebf643ee", "scanner": "scanner-primary", "fingerprint": "bde91e27fbe9b070", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-79399410a626355a", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 warn_v2/heal/github.py:107"}, "properties": {"repobilityId": "26df2ea105765508", "scanner": "scanner-primary", "fingerprint": "79399410a626355a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e6dbd3183ffa2d1f", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/heal/agent.py:17"}, "properties": {"repobilityId": "4b667a22bf9aba17", "scanner": "scanner-primary", "fingerprint": "e6dbd3183ffa2d1f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b152fd632df92bd0", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrichment/__init__.py:1"}, "properties": {"repobilityId": "65b1d087a30e8cab", "scanner": "scanner-primary", "fingerprint": "b152fd632df92bd0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d8155f4c98294579", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrichment/worker.py:19"}, "properties": {"repobilityId": "7a772499bbfab44c", "scanner": "scanner-primary", "fingerprint": "d8155f4c98294579", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cd3c1138a0dcbdc8", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrichment/lookup.py:19"}, "properties": {"repobilityId": "c32c6e54804253bd", "scanner": "scanner-primary", "fingerprint": "cd3c1138a0dcbdc8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0355a9b6e8a76afa", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/enrichment/agent.py:18"}, "properties": {"repobilityId": "071e49c3701b6a5d", "scanner": "scanner-primary", "fingerprint": "0355a9b6e8a76afa", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7606733bd385893c", "level": "none", "message": {"text": "Commented-code block (5 lines) in warn_v2/enrichment/agent.py:214"}, "properties": {"repobilityId": "adef05c02a66b712", "scanner": "scanner-primary", "fingerprint": "7606733bd385893c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2c347a333a4e549d", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/job_link.py:37"}, "properties": {"repobilityId": "877281ffbdad24ea", "scanner": "scanner-primary", "fingerprint": "2c347a333a4e549d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4651c681dd7c13b4", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/__init__.py:1"}, "properties": {"repobilityId": "7cbb43d0821211bf", "scanner": "scanner-primary", "fingerprint": "4651c681dd7c13b4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-876dac049c367fc7", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/registry.py:7"}, "properties": {"repobilityId": "238070ad81320a0f", "scanner": "scanner-primary", "fingerprint": "876dac049c367fc7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-188250c5401e82a5", "level": "none", "message": {"text": "Commented-code block (5 lines) in warn_v2/scrapers/registry.py:17"}, "properties": {"repobilityId": "232b92d6610a10d2", "scanner": "scanner-primary", "fingerprint": "188250c5401e82a5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-af114f62fb62719a", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/playwright_base.py:17"}, "properties": {"repobilityId": "8b9211df253e5224", "scanner": "scanner-primary", "fingerprint": "af114f62fb62719a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e5475a6b07837429", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/base.py:46"}, "properties": {"repobilityId": "bc8393a07d0382f5", "scanner": "scanner-primary", "fingerprint": "e5475a6b07837429", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f276a79e6f1cf9a1", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/mn_city.py:20"}, "properties": {"repobilityId": "48ec56eadbc4e66e", "scanner": "scanner-primary", "fingerprint": "f276a79e6f1cf9a1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c489a570a3d57ade", "level": "none", "message": {"text": "Commented-code block (5 lines) in warn_v2/scrapers/_helpers.py:42"}, "properties": {"repobilityId": "f51f9607bd5c26d0", "scanner": "scanner-primary", "fingerprint": "c489a570a3d57ade", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0bdde7fbe4735529", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/wa.py:18"}, "properties": {"repobilityId": "810e84c26afa3b04", "scanner": "scanner-primary", "fingerprint": "0bdde7fbe4735529", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b161492510d1543e", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/id.py:25"}, "properties": {"repobilityId": "85b500eddaeb2e01", "scanner": "scanner-primary", "fingerprint": "b161492510d1543e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-91e9e9eae086706b", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/vt.py:4"}, "properties": {"repobilityId": "3161a7ad9abc4672", "scanner": "scanner-primary", "fingerprint": "91e9e9eae086706b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-778f59d7346a6e37", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nh.py:18"}, "properties": {"repobilityId": "323645e1c7c312f0", "scanner": "scanner-primary", "fingerprint": "778f59d7346a6e37", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-96bfabd4b307d6c4", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/pa.py:45"}, "properties": {"repobilityId": "be7446c61ad9a3c0", "scanner": "scanner-primary", "fingerprint": "96bfabd4b307d6c4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bfe029c9625454bd", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ut.py:15"}, "properties": {"repobilityId": "b14b575a0f5a7b9b", "scanner": "scanner-primary", "fingerprint": "bfe029c9625454bd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e5aab7f554186008", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/wv.py:28"}, "properties": {"repobilityId": "8a0be6e90e0acd4a", "scanner": "scanner-primary", "fingerprint": "e5aab7f554186008", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d4d92313cd0a3341", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/or_.py:27"}, "properties": {"repobilityId": "55cd89a875a01905", "scanner": "scanner-primary", "fingerprint": "d4d92313cd0a3341", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0dab2ada9b601100", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/md.py:23"}, "properties": {"repobilityId": "22c38ea17a613638", "scanner": "scanner-primary", "fingerprint": "0dab2ada9b601100", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-eaa990bab8adaa60", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nc.py:19"}, "properties": {"repobilityId": "3efc885a34d655d2", "scanner": "scanner-primary", "fingerprint": "eaa990bab8adaa60", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ebc64dd3d3025d09", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/fl.py:25"}, "properties": {"repobilityId": "89e5e61f74d7eb3b", "scanner": "scanner-primary", "fingerprint": "ebc64dd3d3025d09", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-87e38ba43df2a5f3", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ks.py:4"}, "properties": {"repobilityId": "502f41cd92195214", "scanner": "scanner-primary", "fingerprint": "87e38ba43df2a5f3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-14164cc9bf055528", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ky.py:29"}, "properties": {"repobilityId": "0ffcabf76e21ae87", "scanner": "scanner-primary", "fingerprint": "14164cc9bf055528", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-86c45ba34004f6fd", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/sd.py:22"}, "properties": {"repobilityId": "4a14feff47965bc1", "scanner": "scanner-primary", "fingerprint": "86c45ba34004f6fd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-72dcd01d6a6de81a", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/mt.py:22"}, "properties": {"repobilityId": "40b1f4873bb8c93c", "scanner": "scanner-primary", "fingerprint": "72dcd01d6a6de81a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b589f1a05b2b74c7", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/az.py:4"}, "properties": {"repobilityId": "be8c35beb9578bc2", "scanner": "scanner-primary", "fingerprint": "b589f1a05b2b74c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d010cf2b572f04ff", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ne.py:16"}, "properties": {"repobilityId": "ab79435a8287e1b0", "scanner": "scanner-primary", "fingerprint": "d010cf2b572f04ff", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-289464b9bbf5c023", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nj.py:32"}, "properties": {"repobilityId": "f75f365505b7a04b", "scanner": "scanner-primary", "fingerprint": "289464b9bbf5c023", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4e6e57e46f8bf9a8", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/va.py:21"}, "properties": {"repobilityId": "9b24b050c57e6f6d", "scanner": "scanner-primary", "fingerprint": "4e6e57e46f8bf9a8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-91637594ea906fb9", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ga.py:15"}, "properties": {"repobilityId": "b42b2c1c93d012d5", "scanner": "scanner-primary", "fingerprint": "91637594ea906fb9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e22e3c7460d1935a", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ct.py:37"}, "properties": {"repobilityId": "500b4d02f47fd37b", "scanner": "scanner-primary", "fingerprint": "e22e3c7460d1935a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f207543b326bf1ae", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ma.py:28"}, "properties": {"repobilityId": "8c1cffd129c0f369", "scanner": "scanner-primary", "fingerprint": "f207543b326bf1ae", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-07d866dfd8104304", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nm.py:23"}, "properties": {"repobilityId": "a957a64cfff7a1a3", "scanner": "scanner-primary", "fingerprint": "07d866dfd8104304", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7c96e9848b51988d", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ar.py:16"}, "properties": {"repobilityId": "ba05fe334306441e", "scanner": "scanner-primary", "fingerprint": "7c96e9848b51988d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ea4c85f5ccf9f67a", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/hi.py:25"}, "properties": {"repobilityId": "232777abaf77e462", "scanner": "scanner-primary", "fingerprint": "ea4c85f5ccf9f67a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7ac7ab414300fbf6", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/in_.py:20"}, "properties": {"repobilityId": "86a86d3e06af9132", "scanner": "scanner-primary", "fingerprint": "7ac7ab414300fbf6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5f514981a2929434", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ca.py:18"}, "properties": {"repobilityId": "fa174107ec0b5bd4", "scanner": "scanner-primary", "fingerprint": "5f514981a2929434", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0a7643c008f996be", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/wy.py:20"}, "properties": {"repobilityId": "5e335cf054408cfc", "scanner": "scanner-primary", "fingerprint": "0a7643c008f996be", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8c04a9c97be70dd1", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ny.py:30"}, "properties": {"repobilityId": "3410b060a75b239b", "scanner": "scanner-primary", "fingerprint": "8c04a9c97be70dd1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4fa05e2d04c8be42", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/la.py:22"}, "properties": {"repobilityId": "ff20bd518c59aa46", "scanner": "scanner-primary", "fingerprint": "4fa05e2d04c8be42", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-585986a115f32b9e", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/me.py:4"}, "properties": {"repobilityId": "332ba17d6aa40d0d", "scanner": "scanner-primary", "fingerprint": "585986a115f32b9e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e298b9b0087853f8", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nd.py:25"}, "properties": {"repobilityId": "eeaa00988f2e9b4e", "scanner": "scanner-primary", "fingerprint": "e298b9b0087853f8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4dab72e9e0fccca4", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/mi.py:31"}, "properties": {"repobilityId": "20087bf3152a347a", "scanner": "scanner-primary", "fingerprint": "4dab72e9e0fccca4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7739e0740d38a1ac", "level": "none", "message": {"text": "Commented-code block (5 lines) in warn_v2/scrapers/states/mi.py:129"}, "properties": {"repobilityId": "728dbd0214b7311e", "scanner": "scanner-primary", "fingerprint": "7739e0740d38a1ac", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9b2415a152eabb21", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/co.py:25"}, "properties": {"repobilityId": "df85e47a4932204b", "scanner": "scanner-primary", "fingerprint": "9b2415a152eabb21", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c0035912452c5c79", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ok.py:10"}, "properties": {"repobilityId": "860af522ca75a9f7", "scanner": "scanner-primary", "fingerprint": "c0035912452c5c79", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-12e768c77c444473", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ms.py:29"}, "properties": {"repobilityId": "1da3bed66ab54b2c", "scanner": "scanner-primary", "fingerprint": "12e768c77c444473", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-02d0a8102062f8f8", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/tx.py:24"}, "properties": {"repobilityId": "83ba3cb94d52e380", "scanner": "scanner-primary", "fingerprint": "02d0a8102062f8f8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-36ab14ff7df9765f", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ri.py:23"}, "properties": {"repobilityId": "e01b41594a787138", "scanner": "scanner-primary", "fingerprint": "36ab14ff7df9765f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2a839b20e0bae97e", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/sc.py:27"}, "properties": {"repobilityId": "f8b1095f7768053c", "scanner": "scanner-primary", "fingerprint": "2a839b20e0bae97e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-edeb88fe07348e73", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/il.py:27"}, "properties": {"repobilityId": "44c6d48bf2892faa", "scanner": "scanner-primary", "fingerprint": "edeb88fe07348e73", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-280ec6eb24611f09", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/de.py:4"}, "properties": {"repobilityId": "ba49ee2ad070b6ed", "scanner": "scanner-primary", "fingerprint": "280ec6eb24611f09", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2bb342bb36f30971", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/mn.py:33"}, "properties": {"repobilityId": "2955f286c762a5c9", "scanner": "scanner-primary", "fingerprint": "2bb342bb36f30971", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-dc387dc98127b7fb", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/wi.py:33"}, "properties": {"repobilityId": "59fa3bb56ba587d3", "scanner": "scanner-primary", "fingerprint": "dc387dc98127b7fb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ba56ed03b9264771", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/al.py:17"}, "properties": {"repobilityId": "beafd8ee01d06806", "scanner": "scanner-primary", "fingerprint": "ba56ed03b9264771", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e4642984e3f680bc", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ak.py:24"}, "properties": {"repobilityId": "d8a4794fe5178893", "scanner": "scanner-primary", "fingerprint": "e4642984e3f680bc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c914de782670dcd8", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/dc.py:19"}, "properties": {"repobilityId": "30c36e82f6d59c57", "scanner": "scanner-primary", "fingerprint": "c914de782670dcd8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-09fb2cc65d6ce23e", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/ia.py:33"}, "properties": {"repobilityId": "f66949ce8c8031c3", "scanner": "scanner-primary", "fingerprint": "09fb2cc65d6ce23e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3733e3138f5c2a57", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/oh.py:19"}, "properties": {"repobilityId": "2d2a76ade3a9edf8", "scanner": "scanner-primary", "fingerprint": "3733e3138f5c2a57", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-92658615f5c00595", "level": "none", "message": {"text": "Commented-code block (8 lines) in warn_v2/scrapers/states/oh.py:166"}, "properties": {"repobilityId": "1b6878381d763729", "scanner": "scanner-primary", "fingerprint": "92658615f5c00595", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a847eb167a51f6f4", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/tn.py:24"}, "properties": {"repobilityId": "18a13298fc4777f9", "scanner": "scanner-primary", "fingerprint": "a847eb167a51f6f4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bf7755817b6e345d", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/mo.py:20"}, "properties": {"repobilityId": "74d44723e9a59e6e", "scanner": "scanner-primary", "fingerprint": "bf7755817b6e345d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2c48aa221e7c9447", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scrapers/states/nv.py:33"}, "properties": {"repobilityId": "a97f5de48246bef0", "scanner": "scanner-primary", "fingerprint": "2c48aa221e7c9447", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-dd702bffabef6119", "level": "none", "message": {"text": "Commented-code block (5 lines) in warn_v2/api/schemas.py:31"}, "properties": {"repobilityId": "9e91b1b6e90f4539", "scanner": "scanner-primary", "fingerprint": "dd702bffabef6119", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b7e94dc9cc33edca", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/__init__.py:1"}, "properties": {"repobilityId": "7e293f815859759b", "scanner": "scanner-primary", "fingerprint": "b7e94dc9cc33edca", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-822e37baeca37f9f", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/deps.py:9"}, "properties": {"repobilityId": "c751404f54b70e2e", "scanner": "scanner-primary", "fingerprint": "822e37baeca37f9f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b2a37283e18adf41", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/runs.py:8"}, "properties": {"repobilityId": "2f8f32fac3276ae0", "scanner": "scanner-primary", "fingerprint": "b2a37283e18adf41", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-580a73cff87e4ac0", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/map_pins.py:28"}, "properties": {"repobilityId": "536f8986ca93da9f", "scanner": "scanner-primary", "fingerprint": "580a73cff87e4ac0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6c35fae60a61809a", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/auth.py:10"}, "properties": {"repobilityId": "4fe749be2938ae29", "scanner": "scanner-primary", "fingerprint": "6c35fae60a61809a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2e9e04c2b1bd6665", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/stats.py:16"}, "properties": {"repobilityId": "9a4f24ef4c73d3a6", "scanner": "scanner-primary", "fingerprint": "2e9e04c2b1bd6665", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-23fc01ee30e86020", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/companies.py:8"}, "properties": {"repobilityId": "475121b22653d8c3", "scanner": "scanner-primary", "fingerprint": "23fc01ee30e86020", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-be20ed022bddaa0a", "level": "none", "message": {"text": "Commented-code block (5 lines) in warn_v2/api/routes/companies.py:47"}, "properties": {"repobilityId": "d85ccb3eb994d178", "scanner": "scanner-primary", "fingerprint": "be20ed022bddaa0a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1e02688dec8a2185", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/api/routes/notices.py:13"}, "properties": {"repobilityId": "7ede7bc27ecb2467", "scanner": "scanner-primary", "fingerprint": "1e02688dec8a2185", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f6a3d4da14c296a5", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_sic_naics_crosswalk.py:7"}, "properties": {"repobilityId": "353a03dee4b26653", "scanner": "scanner-primary", "fingerprint": "f6a3d4da14c296a5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-72ca0fb2500e82c8", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/ingest_file.py:34"}, "properties": {"repobilityId": "bd535942b0e8beb6", "scanner": "scanner-primary", "fingerprint": "72ca0fb2500e82c8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cfdf1248c17b0e44", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/enrich_ga.py:30"}, "properties": {"repobilityId": "695b378d7e1ee16b", "scanner": "scanner-primary", "fingerprint": "cfdf1248c17b0e44", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c2706a1e27d89e6a", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/backfill_historical.py:15"}, "properties": {"repobilityId": "d86917812ab999ab", "scanner": "scanner-primary", "fingerprint": "c2706a1e27d89e6a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9eaa810c653c4c68", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_zip_centroids.py:1"}, "properties": {"repobilityId": "2675f67d9366b324", "scanner": "scanner-primary", "fingerprint": "9eaa810c653c4c68", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-666c10bbe06b8da1", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/backfill_geo.py:27"}, "properties": {"repobilityId": "a1a8c1039b16020a", "scanner": "scanner-primary", "fingerprint": "666c10bbe06b8da1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a8b4c119d7f8f17e", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/consolidate_companies.py:33"}, "properties": {"repobilityId": "f4d7a16d17f4728b", "scanner": "scanner-primary", "fingerprint": "a8b4c119d7f8f17e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5d6c7f5c4fbadf40", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/download_pdfs.py:25"}, "properties": {"repobilityId": "60aa4ef568cab89e", "scanner": "scanner-primary", "fingerprint": "5d6c7f5c4fbadf40", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-254f82e1c075dc57", "level": "none", "message": {"text": "Commented-code block (5 lines) in warn_v2/scripts/download_pdfs.py:311"}, "properties": {"repobilityId": "e5a2cc9fac0e0c1b", "scanner": "scanner-primary", "fingerprint": "254f82e1c075dc57", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-88a4fcd8d759c803", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_city_centroids.py:1"}, "properties": {"repobilityId": "3d01a76e650bf771", "scanner": "scanner-primary", "fingerprint": "88a4fcd8d759c803", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6bbbe383815e5a90", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/backfill_effective_dates.py:23"}, "properties": {"repobilityId": "a92c4c9c4e1aa2d4", "scanner": "scanner-primary", "fingerprint": "6bbbe383815e5a90", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4c3191fae6411ce3", "level": "none", "message": {"text": "Commented-code block (5 lines) in warn_v2/scripts/backfill_effective_dates.py:64"}, "properties": {"repobilityId": "e47f10a5fb5b4a03", "scanner": "scanner-primary", "fingerprint": "4c3191fae6411ce3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0be9442ff86eaeea", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_sic_descriptions.py:6"}, "properties": {"repobilityId": "4affadfc71dc2f46", "scanner": "scanner-primary", "fingerprint": "0be9442ff86eaeea", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8ad772e9b1bbf0c9", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/backfill_notice_dates.py:6"}, "properties": {"repobilityId": "0dee94de4dd43ae1", "scanner": "scanner-primary", "fingerprint": "8ad772e9b1bbf0c9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5c3130d36aedfbea", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/fetch_county_centroids.py:1"}, "properties": {"repobilityId": "3d87ae2a6616306b", "scanner": "scanner-primary", "fingerprint": "5c3130d36aedfbea", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0b9a909ac56d2521", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/audit.py:41"}, "properties": {"repobilityId": "62efc18d97bc6bc8", "scanner": "scanner-primary", "fingerprint": "0b9a909ac56d2521", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d8025b0c2ddd22f0", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/scripts/mark_superseded.py:42"}, "properties": {"repobilityId": "9a484afa9d52393a", "scanner": "scanner-primary", "fingerprint": "d8025b0c2ddd22f0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2c8478850210eea0", "level": "none", "message": {"text": "Commented-code block (6 lines) in warn_v2/scripts/mark_superseded.py:128"}, "properties": {"repobilityId": "91a2cc97646cc22e", "scanner": "scanner-primary", "fingerprint": "2c8478850210eea0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cdd4d915c0af3ee7", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/observability/metrics.py:39"}, "properties": {"repobilityId": "5054d6a85f220222", "scanner": "scanner-primary", "fingerprint": "cdd4d915c0af3ee7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6c412d22590ddd7f", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/observability/collector.py:7"}, "properties": {"repobilityId": "4e0a1e0cf730d799", "scanner": "scanner-primary", "fingerprint": "6c412d22590ddd7f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6412c8b9f5987230", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/geo/county_centroids.py:7"}, "properties": {"repobilityId": "6bd2d0e762c34ef6", "scanner": "scanner-primary", "fingerprint": "6412c8b9f5987230", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-744691d8be55f53b", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/geo/zip_centroids.py:7"}, "properties": {"repobilityId": "c1bae4b48fce780b", "scanner": "scanner-primary", "fingerprint": "744691d8be55f53b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4c363f63fd37135c", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/geo/city_centroids.py:8"}, "properties": {"repobilityId": "38cb96abdf8e9338", "scanner": "scanner-primary", "fingerprint": "4c363f63fd37135c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-924c85d3c8faaffd", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/geo/geocoder.py:22"}, "properties": {"repobilityId": "1b0f4a6f443088c1", "scanner": "scanner-primary", "fingerprint": "924c85d3c8faaffd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c7bb485085716356", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/pipeline/validate.py:8"}, "properties": {"repobilityId": "a6d4d1bc3cf81598", "scanner": "scanner-primary", "fingerprint": "c7bb485085716356", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0bb1fcb2f0799c0f", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/pipeline/dedup.py:11"}, "properties": {"repobilityId": "e4ce373ec8132b1d", "scanner": "scanner-primary", "fingerprint": "0bb1fcb2f0799c0f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-382c5173efaee6b1", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/pipeline/storage.py:13"}, "properties": {"repobilityId": "bb26fecbf4353927", "scanner": "scanner-primary", "fingerprint": "382c5173efaee6b1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3301a65abd331a8b", "level": "none", "message": {"text": "Commented-code block (5 lines) in warn_v2/pipeline/storage.py:31"}, "properties": {"repobilityId": "219257f9e0df35f8", "scanner": "scanner-primary", "fingerprint": "3301a65abd331a8b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3105bc4eda2058a1", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/pipeline/runner.py:10"}, "properties": {"repobilityId": "50b439d41a94d5ef", "scanner": "scanner-primary", "fingerprint": "3105bc4eda2058a1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f08b989142b3a192", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/db/models.py:77"}, "properties": {"repobilityId": "4b54bef1cdaf2a6a", "scanner": "scanner-primary", "fingerprint": "f08b989142b3a192", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ed3999fc66cdcdf7", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/db/migrations/env.py:10"}, "properties": {"repobilityId": "97d42fab4e55d130", "scanner": "scanner-primary", "fingerprint": "ed3999fc66cdcdf7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0852f9d9381b3c2a", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/db/migrations/versions/20260604_0008_add_notice_closure_category.py:18"}, "properties": {"repobilityId": "a89210978551d5bc", "scanner": "scanner-primary", "fingerprint": "0852f9d9381b3c2a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c0da595f716e67b5", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/db/migrations/versions/20260610_0010_add_company_consolidation.py:10"}, "properties": {"repobilityId": "e77e4a5b7eacef45", "scanner": "scanner-primary", "fingerprint": "c0da595f716e67b5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-247e396f65d607b7", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/companies/naics_subsectors.py:6"}, "properties": {"repobilityId": "b3272e88cc8eca2c", "scanner": "scanner-primary", "fingerprint": "247e396f65d607b7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-53439363edfa53ae", "level": "note", "message": {"text": "Legacy-named symbol `warn_v2` in warn_v2/companies/naics.py:12"}, "properties": {"repobilityId": "59c81e25b3b2fc9b", "scanner": "scanner-primary", "fingerprint": "53439363edfa53ae", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c0b76951c27e52dd", "level": "none", "message": {"text": "Commented-code block (7 lines) in warn_v2/companies/normalize.py:34"}, "properties": {"repobilityId": "c698a54dddec8bd2", "scanner": "scanner-primary", "fingerprint": "c0b76951c27e52dd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2eafc3188c36bb02", "level": "none", "message": {"text": "3 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "bd934ba112b02ffa", "scanner": "scanner-primary", "fingerprint": "2eafc3188c36bb02", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "2a34fdaf7f395c6d", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-49c98f7cedd9c977", "level": "note", "message": {"text": "Near-duplicate function bodies in 4 places"}, "properties": {"repobilityId": "8cca4932914f0a01", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "259536eda9540b6e", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-0027e313ade46c8f", "level": "note", "message": {"text": "Near-duplicate function bodies in 7 places"}, "properties": {"repobilityId": "78bc68abfc72f956", "scanner": "scanner-primary", "fingerprint": "0027e313ade46c8f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "69e68195b0d2f940", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-02525d39071dd2c7", "level": "note", "message": {"text": "Near-duplicate function bodies in 5 places"}, "properties": {"repobilityId": "6ff9fb2ada9049d8", "scanner": "scanner-primary", "fingerprint": "02525d39071dd2c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "e2fec1f3f99035f4", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "8bde543045e11017", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "32a1d2c8f94164d9", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "e85c246f3dae9177", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "c9b6a7512819d1db", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "fe232d239b9a66f0", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-8f5614c18a2feac7", "level": "note", "message": {"text": "Unused endpoint: GET /api"}, "properties": {"repobilityId": "47e248c6b06dd2ec", "scanner": "scanner-primary", "fingerprint": "8f5614c18a2feac7", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-618721b912bad1c2", "level": "note", "message": {"text": "Unused endpoint: POST /login"}, "properties": {"repobilityId": "675a5dd4bf2ef236", "scanner": "scanner-primary", "fingerprint": "618721b912bad1c2", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-99fc36db98c134ce", "level": "note", "message": {"text": "Unused endpoint: POST /logout"}, "properties": {"repobilityId": "0af3ca38445a19ab", "scanner": "scanner-primary", "fingerprint": "99fc36db98c134ce", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-fd1dc91abf32142d", "level": "note", "message": {"text": "Unused endpoint: GET /me"}, "properties": {"repobilityId": "00f3951a82dd9417", "scanner": "scanner-primary", "fingerprint": "fd1dc91abf32142d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-bfdc0a38ae304a34", "level": "note", "message": {"text": "Unused endpoint: GET /api/by-state"}, "properties": {"repobilityId": "91647c0695db8d89", "scanner": "scanner-primary", "fingerprint": "bfdc0a38ae304a34", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e731e7fb6ef67d4d", "level": "note", "message": {"text": "Unused endpoint: GET /api/by-month"}, "properties": {"repobilityId": "a5519b445e534506", "scanner": "scanner-primary", "fingerprint": "e731e7fb6ef67d4d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-55400656691c67ef", "level": "note", "message": {"text": "Unused endpoint: GET /api/top-employers"}, "properties": {"repobilityId": "48971b011e26bc60", "scanner": "scanner-primary", "fingerprint": "55400656691c67ef", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-502119c1e51bfc20", "level": "note", "message": {"text": "Unused endpoint: GET /api/industries"}, "properties": {"repobilityId": "7004391f4db03f42", "scanner": "scanner-primary", "fingerprint": "502119c1e51bfc20", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-43396fa1429f3432", "level": "note", "message": {"text": "Unused endpoint: GET /api/by-parent-group"}, "properties": {"repobilityId": "00f39f6cdfcbe665", "scanner": "scanner-primary", "fingerprint": "43396fa1429f3432", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ad36fba84f420ef3", "level": "note", "message": {"text": "Unused endpoint: GET /api/{company_id}"}, "properties": {"repobilityId": "5890653e2c348874", "scanner": "scanner-primary", "fingerprint": "ad36fba84f420ef3", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e381149ec6773ea6", "level": "note", "message": {"text": "Unused endpoint: GET /api/{company_id}/notices"}, "properties": {"repobilityId": "08d8151bb0014ffd", "scanner": "scanner-primary", "fingerprint": "e381149ec6773ea6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-140c1508b3fd3a8d", "level": "note", "message": {"text": "Unused endpoint: GET /api/{company_id}/family"}, "properties": {"repobilityId": "9ac04ea0a73a5041", "scanner": "scanner-primary", "fingerprint": "140c1508b3fd3a8d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-266da6c0908cf013", "level": "note", "message": {"text": "Unused endpoint: GET /api/{notice_id}"}, "properties": {"repobilityId": "ba3acbc1ed964243", "scanner": "scanner-primary", "fingerprint": "266da6c0908cf013", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-30508a113f66e9a7", "level": "note", "message": {"text": "Unused endpoint: GET /api/{notice_id}/pdf"}, "properties": {"repobilityId": "9361dd0c16dac19b", "scanner": "scanner-primary", "fingerprint": "30508a113f66e9a7", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}]}]}