{"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-bead75b0f9233e05", "name": "No API endpoints detected", "shortDescription": {"text": "No API endpoints detected"}, "fullDescription": {"text": "The scanner did not find FastAPI/Flask/Express/NestJS/GraphQL/gRPC routes. If this repo exposes APIs, the framework may be unsupported."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "info", "confidence": 1.0}}, {"id": "scanner-84e3dc01c4a4e876", "name": "Stray `console.log` in TS/JS \u2014 convex/retention.ts:27", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 convex/retention.ts:27"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2b92e9aa6770b0a2", "name": "Stray `console.log` in TS/JS \u2014 convex/brain/push.ts:77", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 convex/brain/push.ts:77"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d71200ed3f2b1286", "name": "React Flow edge with `label=` but no project-wide edge-label CSS override \u2014 convex/brain/analystTools.ts:55", "shortDescription": {"text": "React Flow edge with `label=` but no project-wide edge-label CSS override \u2014 convex/brain/analystTools.ts:55"}, "fullDescription": {"text": "React Flow edge labels render with a white rectangle behind the text by default, which scatters bright boxes across a dark canvas. Either drop the label, or override `.react-flow__edge-textbg` and `.react-flow__edge-text` in your stylesheet.\n\nWhy: P-H in CHECKLIST.md \u2014 vendor edge labels bleed white through a dark canvas.\nRule id: fq.edge-label.no-bg"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6d1751c3e6af214f", "name": "Icon-only button without accessible name \u2014 src/components/inspector/Inspector.tsx:73", "shortDescription": {"text": "Icon-only button without accessible name \u2014 src/components/inspector/Inspector.tsx:73"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fdac4462ee9dc8ce", "name": "Dockerfile runs as root: workers/ais/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: workers/ais/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-d381ab105bc8de8d", "name": "Docker base image is tag-pinned but not digest-pinned: node:22-alpine", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: node:22-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-aa5acaa49eb8315b", "name": "Containers defined but no K8s/orchestration manifest found", "shortDescription": {"text": "Containers defined but no K8s/orchestration manifest found"}, "fullDescription": {"text": "Repo has Dockerfiles/compose but no Kubernetes/Nomad manifests. If the target deployment is K8s, the manifests may live in a separate ops repo."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4601e3ad3bb28677", "name": "No CI/CD pipelines detected", "shortDescription": {"text": "No CI/CD pipelines detected"}, "fullDescription": {"text": "No GitHub Actions, GitLab CI, or CircleCI configs found. Without CI you can't gate deploys on tests/lints."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6893a6c8b0861585", "name": "Very low test-to-source ratio", "shortDescription": {"text": "Very low test-to-source ratio"}, "fullDescription": {"text": "8 test file(s) for 214 source file(s) (ratio 0.04). Consider adding integration or unit tests for critical paths."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "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-f5e7ce3dda00753c", "name": "Node manifest has dependencies but no lockfile: workers/ais/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: workers/ais/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 15 console/debugger/print-style debug statements in non-test source. This is a common fast-generation residue before production cleanup."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "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-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: license, ci, lockfile. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "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, ci, lockfile. 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-2c5f98b152cddb6d", "name": "Agent authority lacks a verifier contract: .claude/launch.json", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/launch.json"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-614ad63c66bc9220", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/fetch-basemap.mjs:11", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/fetch-basemap.mjs:11"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-39d4cacd0f6a9d04", "name": "Commented-code block (5 lines) in scripts/gtfs-stops.mjs:2", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/gtfs-stops.mjs:2"}, "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-9a75c09daf421b53", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/gtfs-stops.mjs:49", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/gtfs-stops.mjs:49"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5459f82add5f423f", "name": "Commented-code block (7 lines) in convex/retention.ts:4", "shortDescription": {"text": "Commented-code block (7 lines) in convex/retention.ts:4"}, "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-3602623a9bdf3965", "name": "Commented-code block (5 lines) in convex/watchlist.ts:10", "shortDescription": {"text": "Commented-code block (5 lines) in convex/watchlist.ts:10"}, "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-10e6504530333ec7", "name": "Commented-code block (5 lines) in convex/brain/push.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in convex/brain/push.ts:8"}, "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-2c555b4afd92472a", "name": "Commented-code block (6 lines) in convex/brain/anomaly.ts:9", "shortDescription": {"text": "Commented-code block (6 lines) in convex/brain/anomaly.ts:9"}, "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-0fba58f0b61197dc", "name": "Commented-code block (6 lines) in convex/brain/analyst.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in convex/brain/analyst.ts:1"}, "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-6814f7f908b6bddd", "name": "`fetch()` without try/.catch or AbortSignal \u2014 convex/brain/analyst.ts:287", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 convex/brain/analyst.ts:287"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c6fd6fb51d1aeaef", "name": "Commented-code block (8 lines) in convex/brain/geofence.ts:11", "shortDescription": {"text": "Commented-code block (8 lines) in convex/brain/geofence.ts:11"}, "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-2477450ef2d53230", "name": "Commented-code block (7 lines) in convex/brain/analystTools.ts:1", "shortDescription": {"text": "Commented-code block (7 lines) in convex/brain/analystTools.ts:1"}, "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-1da6c5f4113b98d7", "name": "Commented-code block (6 lines) in convex/brain/patternOfLife.ts:11", "shortDescription": {"text": "Commented-code block (6 lines) in convex/brain/patternOfLife.ts:11"}, "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-1594f5fae821c8fa", "name": "Commented-code block (9 lines) in convex/brain/baselines.ts:8", "shortDescription": {"text": "Commented-code block (9 lines) in convex/brain/baselines.ts:8"}, "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-8c5c8bfb509f090b", "name": "Commented-code block (5 lines) in convex/brain/rules/tsunamiCorrelation.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in convex/brain/rules/tsunamiCorrelation.ts:8"}, "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-59771690e209383f", "name": "Commented-code block (8 lines) in convex/brain/rules/aisGapSensitive.ts:10", "shortDescription": {"text": "Commented-code block (8 lines) in convex/brain/rules/aisGapSensitive.ts:10"}, "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-419bb958e0d54ddd", "name": "Commented-code block (8 lines) in convex/brain/rules/sanctionsMatch.ts:5", "shortDescription": {"text": "Commented-code block (8 lines) in convex/brain/rules/sanctionsMatch.ts:5"}, "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-2ded062c8c7cf39a", "name": "Commented-code block (6 lines) in convex/brain/rules/smokeEta.ts:10", "shortDescription": {"text": "Commented-code block (6 lines) in convex/brain/rules/smokeEta.ts:10"}, "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-b2afbae7a1ee16a7", "name": "Commented-code block (7 lines) in convex/feeds/nrcanQuakes.ts:8", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/nrcanQuakes.ts:8"}, "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-3acdc9bbcce9fa18", "name": "Commented-code block (6 lines) in convex/feeds/uvicMesh.ts:15", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/uvicMesh.ts:15"}, "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-2b438ef4f43dcc40", "name": "Commented-code block (8 lines) in convex/feeds/ecccHydrometric.ts:14", "shortDescription": {"text": "Commented-code block (8 lines) in convex/feeds/ecccHydrometric.ts:14"}, "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-cad4ed683b77bdd7", "name": "Commented-code block (5 lines) in convex/feeds/emergencyInfoBc.ts:13", "shortDescription": {"text": "Commented-code block (5 lines) in convex/feeds/emergencyInfoBc.ts:13"}, "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-67b2a89b96fbaa9f", "name": "Commented-code block (7 lines) in convex/feeds/dfoTides.ts:14", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/dfoTides.ts:14"}, "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-4a302d32f0cc07f5", "name": "Commented-code block (9 lines) in convex/feeds/dfoClosures.ts:16", "shortDescription": {"text": "Commented-code block (9 lines) in convex/feeds/dfoClosures.ts:16"}, "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-b6d1b06a6abc998f", "name": "Commented-code block (5 lines) in convex/feeds/purpleair.ts:15", "shortDescription": {"text": "Commented-code block (5 lines) in convex/feeds/purpleair.ts:15"}, "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-bd4275b6cea2012a", "name": "Commented-code block (5 lines) in convex/feeds/bchydroOutages.ts:10", "shortDescription": {"text": "Commented-code block (5 lines) in convex/feeds/bchydroOutages.ts:10"}, "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-eede8567a1a77808", "name": "Commented-code block (6 lines) in convex/feeds/extraCams.ts:7", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/extraCams.ts:7"}, "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-ba58deba72f816ab", "name": "Commented-code block (7 lines) in convex/feeds/camsAggregators.ts:7", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/camsAggregators.ts:7"}, "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-df0bb9646acc2261", "name": "Commented-code block (8 lines) in convex/feeds/openMeteo.ts:14", "shortDescription": {"text": "Commented-code block (8 lines) in convex/feeds/openMeteo.ts:14"}, "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-5988ef0d56080aa5", "name": "Commented-code block (7 lines) in convex/feeds/drivebcEvents.ts:15", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/drivebcEvents.ts:15"}, "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-521af342fe57e83d", "name": "Commented-code block (7 lines) in convex/feeds/gpsjam.ts:15", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/gpsjam.ts:15"}, "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-8eee58987ba7d267", "name": "Commented-code block (7 lines) in convex/feeds/cwfisHotspots.ts:8", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/cwfisHotspots.ts:8"}, "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-c00a762495d34314", "name": "Commented-code block (8 lines) in convex/feeds/launchLibrary.ts:8", "shortDescription": {"text": "Commented-code block (8 lines) in convex/feeds/launchLibrary.ts:8"}, "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-0748151c6c54ae53", "name": "Commented-code block (8 lines) in convex/feeds/bcEvacOrders.ts:10", "shortDescription": {"text": "Commented-code block (8 lines) in convex/feeds/bcEvacOrders.ts:10"}, "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-7b10911a5707c60d", "name": "Commented-code block (5 lines) in convex/feeds/adsbAircraft.ts:9", "shortDescription": {"text": "Commented-code block (5 lines) in convex/feeds/adsbAircraft.ts:9"}, "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-db164c1d07ba8a65", "name": "Commented-code block (9 lines) in convex/feeds/ntwcTsunami.ts:10", "shortDescription": {"text": "Commented-code block (9 lines) in convex/feeds/ntwcTsunami.ts:10"}, "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-cda3ea62d332d6e0", "name": "Commented-code block (9 lines) in convex/feeds/mscMarineText.ts:9", "shortDescription": {"text": "Commented-code block (9 lines) in convex/feeds/mscMarineText.ts:9"}, "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-4cf731f0db18da8d", "name": "Commented-code block (6 lines) in convex/feeds/celestrak.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/celestrak.ts:8"}, "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-65f264dc6335db9c", "name": "Commented-code block (10 lines) in convex/feeds/bcRfcAdvisories.ts:14", "shortDescription": {"text": "Commented-code block (10 lines) in convex/feeds/bcRfcAdvisories.ts:14"}, "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-9cd484dbbb736c35", "name": "Commented-code block (9 lines) in convex/feeds/nwsAdjacentWaters.ts:7", "shortDescription": {"text": "Commented-code block (9 lines) in convex/feeds/nwsAdjacentWaters.ts:7"}, "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-6c95411b6d5784e8", "name": "Commented-code block (6 lines) in convex/feeds/camsWildlife.ts:7", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/camsWildlife.ts:7"}, "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-e26043102645fc79", "name": "Commented-code block (6 lines) in convex/feeds/cloudflareRadar.ts:13", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/cloudflareRadar.ts:13"}, "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-2cfd8fac6f90a84b", "name": "Commented-code block (15 lines) in convex/feeds/openChargeMap.ts:9", "shortDescription": {"text": "Commented-code block (15 lines) in convex/feeds/openChargeMap.ts:9"}, "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-9674bbb7d0f19c51", "name": "Commented-code block (25 lines) in convex/feeds/ioda.ts:15", "shortDescription": {"text": "Commented-code block (25 lines) in convex/feeds/ioda.ts:15"}, "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-1b98c696e187c9a9", "name": "Commented-code block (6 lines) in convex/feeds/pnsnTremor.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/pnsnTremor.ts:8"}, "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-ed38531cac50517e", "name": "Commented-code block (7 lines) in convex/feeds/orcasound.ts:12", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/orcasound.ts:12"}, "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-bef8d7312d386950", "name": "Commented-code block (11 lines) in convex/feeds/dfoLightstations.ts:14", "shortDescription": {"text": "Commented-code block (11 lines) in convex/feeds/dfoLightstations.ts:14"}, "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-4a7243a51ecf3910", "name": "Commented-code block (8 lines) in convex/feeds/newsRss.ts:14", "shortDescription": {"text": "Commented-code block (8 lines) in convex/feeds/newsRss.ts:14"}, "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-2746e4644389fc67", "name": "Commented-code block (9 lines) in convex/feeds/ccgNotship.ts:8", "shortDescription": {"text": "Commented-code block (9 lines) in convex/feeds/ccgNotship.ts:8"}, "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-ba2020e6f156ecd2", "name": "Commented-code block (19 lines) in convex/feeds/permits.ts:14", "shortDescription": {"text": "Commented-code block (19 lines) in convex/feeds/permits.ts:14"}, "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-63eaa982d09518db", "name": "Commented-code block (6 lines) in convex/feeds/camsTourism.ts:7", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/camsTourism.ts:7"}, "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-58aa192d63aed93d", "name": "Commented-code block (8 lines) in convex/feeds/bcTransit.ts:10", "shortDescription": {"text": "Commented-code block (8 lines) in convex/feeds/bcTransit.ts:10"}, "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-8fe60093a8ac68c1", "name": "Commented-code block (11 lines) in convex/feeds/socialPulse.ts:22", "shortDescription": {"text": "Commented-code block (11 lines) in convex/feeds/socialPulse.ts:22"}, "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-5010e2a47c0422b8", "name": "Commented-code block (7 lines) in convex/feeds/nasaFirms.ts:8", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/nasaFirms.ts:8"}, "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-3923122b540ac261", "name": "Commented-code block (6 lines) in convex/feeds/ripestat.ts:15", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/ripestat.ts:15"}, "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-e4f19e3e3aa20de0", "name": "Commented-code block (7 lines) in convex/feeds/openaq.ts:15", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/openaq.ts:15"}, "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-85658ecdc58c363f", "name": "Commented-code block (7 lines) in convex/feeds/avalancheCanada.ts:13", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/avalancheCanada.ts:13"}, "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-acf368c1d7b99d33", "name": "Commented-code block (5 lines) in convex/feeds/gacTravel.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in convex/feeds/gacTravel.ts:7"}, "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-e33678a8f9f29813", "name": "Commented-code block (5 lines) in convex/feeds/camsMarineHarbour.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in convex/feeds/camsMarineHarbour.ts:7"}, "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-1e40f6f989917b3e", "name": "Commented-code block (16 lines) in convex/feeds/bcSnow.ts:14", "shortDescription": {"text": "Commented-code block (16 lines) in convex/feeds/bcSnow.ts:14"}, "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-c55ad8c3c0a224ef", "name": "Commented-code block (13 lines) in convex/feeds/ecccConditions.ts:15", "shortDescription": {"text": "Commented-code block (13 lines) in convex/feeds/ecccConditions.ts:15"}, "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-aa1bd1c7de2b10b5", "name": "Commented-code block (5 lines) in convex/feeds/oncOceans.ts:14", "shortDescription": {"text": "Commented-code block (5 lines) in convex/feeds/oncOceans.ts:14"}, "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-254b6880b87030a7", "name": "Commented-code block (9 lines) in convex/feeds/naadPelmorex.ts:10", "shortDescription": {"text": "Commented-code block (9 lines) in convex/feeds/naadPelmorex.ts:10"}, "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-d5bd4a36e6df561d", "name": "Commented-code block (5 lines) in convex/feeds/camsInstitutional.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in convex/feeds/camsInstitutional.ts:7"}, "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-d25162d8c5aae7d1", "name": "Commented-code block (9 lines) in convex/feeds/bcParks.ts:14", "shortDescription": {"text": "Commented-code block (9 lines) in convex/feeds/bcParks.ts:14"}, "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-7d4f1163fdceac6b", "name": "`fetch()` without try/.catch or AbortSignal \u2014 convex/feeds/bcParks.ts:46", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 convex/feeds/bcParks.ts:46"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ced2d649360ca4e1", "name": "Commented-code block (6 lines) in convex/feeds/whoOutbreaks.ts:7", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/whoOutbreaks.ts:7"}, "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-9515ba5ec9c1c33e", "name": "Commented-code block (18 lines) in convex/feeds/gdelt.ts:13", "shortDescription": {"text": "Commented-code block (18 lines) in convex/feeds/gdelt.ts:13"}, "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-7d498571f47165ed", "name": "Commented-code block (7 lines) in convex/feeds/camsTransport.ts:7", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/camsTransport.ts:7"}, "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-c9f93e82749f0f26", "name": "Commented-code block (6 lines) in convex/feeds/ecccAlerts.ts:9", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/ecccAlerts.ts:9"}, "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-35825295ac142330", "name": "Commented-code block (7 lines) in convex/feeds/bcwsFires.ts:15", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/bcwsFires.ts:15"}, "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-9a6611b716cc7f0d", "name": "Commented-code block (10 lines) in convex/feeds/ecccAqhi.ts:15", "shortDescription": {"text": "Commented-code block (10 lines) in convex/feeds/ecccAqhi.ts:15"}, "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-a8c273cdf818b3a7", "name": "Commented-code block (5 lines) in convex/feeds/camsAgency.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in convex/feeds/camsAgency.ts:7"}, "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-2ead138d97f0799a", "name": "Commented-code block (8 lines) in convex/feeds/sondehub.ts:9", "shortDescription": {"text": "Commented-code block (8 lines) in convex/feeds/sondehub.ts:9"}, "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-de7bdc07dd00b9b9", "name": "Commented-code block (6 lines) in convex/feeds/bcDrought.ts:17", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/bcDrought.ts: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-c3c54a6df9b75e19", "name": "Commented-code block (7 lines) in convex/feeds/ndbcBuoys.ts:14", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/ndbcBuoys.ts:14"}, "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-22c5aec8cf12437f", "name": "Commented-code block (5 lines) in convex/feeds/gdacs.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in convex/feeds/gdacs.ts:8"}, "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-de7654f38b33d5ce", "name": "Commented-code block (6 lines) in convex/feeds/drivebcCams.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/drivebcCams.ts:8"}, "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-ea892a808135f650", "name": "Commented-code block (10 lines) in convex/feeds/bcwsBans.ts:16", "shortDescription": {"text": "Commented-code block (10 lines) in convex/feeds/bcwsBans.ts:16"}, "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-6958c18d1c61853e", "name": "Commented-code block (9 lines) in convex/feeds/camsTrails.ts:7", "shortDescription": {"text": "Commented-code block (9 lines) in convex/feeds/camsTrails.ts:7"}, "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-eeb0d6735c07d2b8", "name": "Commented-code block (8 lines) in convex/feeds/abusech.ts:13", "shortDescription": {"text": "Commented-code block (8 lines) in convex/feeds/abusech.ts:13"}, "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-f1d61bb63c9ae080", "name": "Commented-code block (16 lines) in convex/feeds/noaaSwpc.ts:15", "shortDescription": {"text": "Commented-code block (16 lines) in convex/feeds/noaaSwpc.ts:15"}, "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-8be003164b1cdf7d", "name": "Commented-code block (7 lines) in convex/feeds/sstErddap.ts:13", "shortDescription": {"text": "Commented-code block (7 lines) in convex/feeds/sstErddap.ts:13"}, "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-4e9075fab5c01c53", "name": "Commented-code block (9 lines) in convex/feeds/bccdcWastewater.ts:13", "shortDescription": {"text": "Commented-code block (9 lines) in convex/feeds/bccdcWastewater.ts:13"}, "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-ffffaba4c15ece18", "name": "Commented-code block (6 lines) in convex/feeds/nasaNeo.ts:7", "shortDescription": {"text": "Commented-code block (6 lines) in convex/feeds/nasaNeo.ts:7"}, "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-739d0e6144d67b14", "name": "Commented-code block (14 lines) in convex/feeds/bcFerries.ts:15", "shortDescription": {"text": "Commented-code block (14 lines) in convex/feeds/bcFerries.ts:15"}, "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-ff07abadaba89e5e", "name": "Commented-code block (7 lines) in workers/ais/src/index.mjs:1", "shortDescription": {"text": "Commented-code block (7 lines) in workers/ais/src/index.mjs:1"}, "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-aee93771c417f73f", "name": "Commented-code block (5 lines) in src/layers/defs/transit.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in src/layers/defs/transit.ts:8"}, "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-d91bf47447b53c04", "name": "Commented-code block (11 lines) in src/layers/defs/closures.ts:27", "shortDescription": {"text": "Commented-code block (11 lines) in src/layers/defs/closures.ts:27"}, "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-91df840157f93604", "name": "Commented-code block (5 lines) in src/layers/defs/aqhi.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/layers/defs/aqhi.ts:5"}, "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-a44496465d4f7652", "name": "Commented-code block (6 lines) in src/layers/defs/pm25.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/layers/defs/pm25.ts:5"}, "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-c1ae550e86d652e0", "name": "Commented-code block (5 lines) in src/layers/defs/wxStations.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/layers/defs/wxStations.ts:5"}, "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-b44a5b6d78c6613a", "name": "Commented-code block (6 lines) in src/layers/defs/evChargers.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/layers/defs/evChargers.ts:5"}, "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-7ea14119b6887017", "name": "Commented-code block (6 lines) in src/layers/defs/fireRasters.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in src/layers/defs/fireRasters.ts:8"}, "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-b940dc84aa80d773", "name": "Commented-code block (9 lines) in src/layers/defs/gibsRasters.ts:3", "shortDescription": {"text": "Commented-code block (9 lines) in src/layers/defs/gibsRasters.ts:3"}, "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-55ce2656c03842b6", "name": "Commented-code block (7 lines) in src/components/cams/CamTile.tsx:7", "shortDescription": {"text": "Commented-code block (7 lines) in src/components/cams/CamTile.tsx:7"}, "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-a1ef26251b0def98", "name": "Commented-code block (5 lines) in src/pages/AnalystPage.tsx:7", "shortDescription": {"text": "Commented-code block (5 lines) in src/pages/AnalystPage.tsx:7"}, "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-e336693c33c30d96", "name": "Commented-code block (5 lines) in src/map/trailLayers.ts:54", "shortDescription": {"text": "Commented-code block (5 lines) in src/map/trailLayers.ts:54"}, "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-76b7c08f154cfdbd", "name": "Commented-code block (6 lines) in src/map/useAnimatedSnapshot.ts:4", "shortDescription": {"text": "Commented-code block (6 lines) in src/map/useAnimatedSnapshot.ts:4"}, "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}}]}}, "automationDetails": {"id": "repobility/21152"}, "properties": {"repository": "thesamuelputra/blindspot", "repoUrl": "https://github.com/thesamuelputra/blindspot", "branch": "main"}, "results": [{"ruleId": "scanner-bead75b0f9233e05", "level": "none", "message": {"text": "No API endpoints detected"}, "properties": {"repobilityId": "0f8bb852027c38f8", "scanner": "scanner-primary", "fingerprint": "bead75b0f9233e05", "layer": "api", "severity": "info", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-84e3dc01c4a4e876", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 convex/retention.ts:27"}, "properties": {"repobilityId": "c0892c2f384bede4", "scanner": "scanner-primary", "fingerprint": "84e3dc01c4a4e876", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2b92e9aa6770b0a2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 convex/brain/push.ts:77"}, "properties": {"repobilityId": "5b62b31151fa5c6b", "scanner": "scanner-primary", "fingerprint": "2b92e9aa6770b0a2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d71200ed3f2b1286", "level": "note", "message": {"text": "React Flow edge with `label=` but no project-wide edge-label CSS override \u2014 convex/brain/analystTools.ts:55"}, "properties": {"repobilityId": "6bbc29f37c502645", "scanner": "scanner-primary", "fingerprint": "d71200ed3f2b1286", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.edge-label.no-bg"]}}, {"ruleId": "scanner-6d1751c3e6af214f", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 src/components/inspector/Inspector.tsx:73"}, "properties": {"repobilityId": "af34fedb64a934e2", "scanner": "scanner-primary", "fingerprint": "6d1751c3e6af214f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-fdac4462ee9dc8ce", "level": "warning", "message": {"text": "Dockerfile runs as root: workers/ais/Dockerfile"}, "properties": {"repobilityId": "026ae7fbaf383081", "scanner": "scanner-primary", "fingerprint": "fdac4462ee9dc8ce", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-d381ab105bc8de8d", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:22-alpine"}, "properties": {"repobilityId": "6490180fa201699f", "scanner": "scanner-primary", "fingerprint": "d381ab105bc8de8d", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "workers/ais/Dockerfile"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-aa5acaa49eb8315b", "level": "note", "message": {"text": "Containers defined but no K8s/orchestration manifest found"}, "properties": {"repobilityId": "b230ea9b68736081", "scanner": "scanner-primary", "fingerprint": "aa5acaa49eb8315b", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["coverage", "deployment"]}}, {"ruleId": "scanner-4601e3ad3bb28677", "level": "warning", "message": {"text": "No CI/CD pipelines detected"}, "properties": {"repobilityId": "c3ee439bce2bc51e", "scanner": "scanner-primary", "fingerprint": "4601e3ad3bb28677", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-6893a6c8b0861585", "level": "warning", "message": {"text": "Very low test-to-source ratio"}, "properties": {"repobilityId": "54a7de3f06314bf0", "scanner": "scanner-primary", "fingerprint": "6893a6c8b0861585", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["tests", "coverage"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "5a6656aa13329561", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-f5e7ce3dda00753c", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: workers/ais/package.json"}, "properties": {"repobilityId": "b79d58803a421087", "scanner": "scanner-primary", "fingerprint": "f5e7ce3dda00753c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "workers/ais/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "dc8e9cba73463ee1", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "05c34bd3ee7ef369", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "warning", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "4ac757057675ea75", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "01f65e440ce1b0fc", "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": "3d99d4126ec0f958", "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": "ec3b4e9639cba2d6", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-2c5f98b152cddb6d", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/launch.json"}, "properties": {"repobilityId": "0de48c0f4ab303d8", "scanner": "scanner-primary", "fingerprint": "2c5f98b152cddb6d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/launch.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-614ad63c66bc9220", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/fetch-basemap.mjs:11"}, "properties": {"repobilityId": "67f1f2ca6b2f427b", "scanner": "scanner-primary", "fingerprint": "614ad63c66bc9220", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-39d4cacd0f6a9d04", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/gtfs-stops.mjs:2"}, "properties": {"repobilityId": "c4719ed5ed1af959", "scanner": "scanner-primary", "fingerprint": "39d4cacd0f6a9d04", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9a75c09daf421b53", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/gtfs-stops.mjs:49"}, "properties": {"repobilityId": "32f576b7f1e9709d", "scanner": "scanner-primary", "fingerprint": "9a75c09daf421b53", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5459f82add5f423f", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/retention.ts:4"}, "properties": {"repobilityId": "4204c40a1e085b97", "scanner": "scanner-primary", "fingerprint": "5459f82add5f423f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3602623a9bdf3965", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/watchlist.ts:10"}, "properties": {"repobilityId": "ee952245e9717cf2", "scanner": "scanner-primary", "fingerprint": "3602623a9bdf3965", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-10e6504530333ec7", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/brain/push.ts:8"}, "properties": {"repobilityId": "4fa7362ce0ddca48", "scanner": "scanner-primary", "fingerprint": "10e6504530333ec7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2c555b4afd92472a", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/brain/anomaly.ts:9"}, "properties": {"repobilityId": "9f474efbf123eb93", "scanner": "scanner-primary", "fingerprint": "2c555b4afd92472a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0fba58f0b61197dc", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/brain/analyst.ts:1"}, "properties": {"repobilityId": "ed2d52d517d9ea9d", "scanner": "scanner-primary", "fingerprint": "0fba58f0b61197dc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6814f7f908b6bddd", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 convex/brain/analyst.ts:287"}, "properties": {"repobilityId": "45976bf37fbba3df", "scanner": "scanner-primary", "fingerprint": "6814f7f908b6bddd", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c6fd6fb51d1aeaef", "level": "none", "message": {"text": "Commented-code block (8 lines) in convex/brain/geofence.ts:11"}, "properties": {"repobilityId": "b35b8e5c807d9f74", "scanner": "scanner-primary", "fingerprint": "c6fd6fb51d1aeaef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2477450ef2d53230", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/brain/analystTools.ts:1"}, "properties": {"repobilityId": "41ff62895fc5f435", "scanner": "scanner-primary", "fingerprint": "2477450ef2d53230", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1da6c5f4113b98d7", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/brain/patternOfLife.ts:11"}, "properties": {"repobilityId": "50dca7809b103d43", "scanner": "scanner-primary", "fingerprint": "1da6c5f4113b98d7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1594f5fae821c8fa", "level": "none", "message": {"text": "Commented-code block (9 lines) in convex/brain/baselines.ts:8"}, "properties": {"repobilityId": "816d690c3ad6f913", "scanner": "scanner-primary", "fingerprint": "1594f5fae821c8fa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8c5c8bfb509f090b", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/brain/rules/tsunamiCorrelation.ts:8"}, "properties": {"repobilityId": "4129827fc15ff9b7", "scanner": "scanner-primary", "fingerprint": "8c5c8bfb509f090b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-59771690e209383f", "level": "none", "message": {"text": "Commented-code block (8 lines) in convex/brain/rules/aisGapSensitive.ts:10"}, "properties": {"repobilityId": "9500b436f457786c", "scanner": "scanner-primary", "fingerprint": "59771690e209383f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-419bb958e0d54ddd", "level": "none", "message": {"text": "Commented-code block (8 lines) in convex/brain/rules/sanctionsMatch.ts:5"}, "properties": {"repobilityId": "af48a92c0da1a460", "scanner": "scanner-primary", "fingerprint": "419bb958e0d54ddd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2ded062c8c7cf39a", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/brain/rules/smokeEta.ts:10"}, "properties": {"repobilityId": "b43cf70fb4832590", "scanner": "scanner-primary", "fingerprint": "2ded062c8c7cf39a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b2afbae7a1ee16a7", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/nrcanQuakes.ts:8"}, "properties": {"repobilityId": "b2a98a368d66bc21", "scanner": "scanner-primary", "fingerprint": "b2afbae7a1ee16a7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3acdc9bbcce9fa18", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/uvicMesh.ts:15"}, "properties": {"repobilityId": "90dd7b3d5063815e", "scanner": "scanner-primary", "fingerprint": "3acdc9bbcce9fa18", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2b438ef4f43dcc40", "level": "none", "message": {"text": "Commented-code block (8 lines) in convex/feeds/ecccHydrometric.ts:14"}, "properties": {"repobilityId": "b51284a79e7ea293", "scanner": "scanner-primary", "fingerprint": "2b438ef4f43dcc40", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cad4ed683b77bdd7", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/feeds/emergencyInfoBc.ts:13"}, "properties": {"repobilityId": "bb7b715edca701f8", "scanner": "scanner-primary", "fingerprint": "cad4ed683b77bdd7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-67b2a89b96fbaa9f", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/dfoTides.ts:14"}, "properties": {"repobilityId": "3be79f5b8d9feb12", "scanner": "scanner-primary", "fingerprint": "67b2a89b96fbaa9f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4a302d32f0cc07f5", "level": "none", "message": {"text": "Commented-code block (9 lines) in convex/feeds/dfoClosures.ts:16"}, "properties": {"repobilityId": "a31ca628a7abd527", "scanner": "scanner-primary", "fingerprint": "4a302d32f0cc07f5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b6d1b06a6abc998f", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/feeds/purpleair.ts:15"}, "properties": {"repobilityId": "7a2daac25b069992", "scanner": "scanner-primary", "fingerprint": "b6d1b06a6abc998f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bd4275b6cea2012a", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/feeds/bchydroOutages.ts:10"}, "properties": {"repobilityId": "a03b22e44ecee634", "scanner": "scanner-primary", "fingerprint": "bd4275b6cea2012a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eede8567a1a77808", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/extraCams.ts:7"}, "properties": {"repobilityId": "d3a757d8e42b26ec", "scanner": "scanner-primary", "fingerprint": "eede8567a1a77808", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ba58deba72f816ab", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/camsAggregators.ts:7"}, "properties": {"repobilityId": "585b18e39717a020", "scanner": "scanner-primary", "fingerprint": "ba58deba72f816ab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-df0bb9646acc2261", "level": "none", "message": {"text": "Commented-code block (8 lines) in convex/feeds/openMeteo.ts:14"}, "properties": {"repobilityId": "1a66e7a6e6fd0211", "scanner": "scanner-primary", "fingerprint": "df0bb9646acc2261", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5988ef0d56080aa5", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/drivebcEvents.ts:15"}, "properties": {"repobilityId": "8fb539186b0ff595", "scanner": "scanner-primary", "fingerprint": "5988ef0d56080aa5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-521af342fe57e83d", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/gpsjam.ts:15"}, "properties": {"repobilityId": "169ce07f899f7970", "scanner": "scanner-primary", "fingerprint": "521af342fe57e83d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8eee58987ba7d267", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/cwfisHotspots.ts:8"}, "properties": {"repobilityId": "e1425bd6a729c273", "scanner": "scanner-primary", "fingerprint": "8eee58987ba7d267", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c00a762495d34314", "level": "none", "message": {"text": "Commented-code block (8 lines) in convex/feeds/launchLibrary.ts:8"}, "properties": {"repobilityId": "34e726a89a37c92a", "scanner": "scanner-primary", "fingerprint": "c00a762495d34314", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0748151c6c54ae53", "level": "none", "message": {"text": "Commented-code block (8 lines) in convex/feeds/bcEvacOrders.ts:10"}, "properties": {"repobilityId": "4b9da7445ec9294e", "scanner": "scanner-primary", "fingerprint": "0748151c6c54ae53", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7b10911a5707c60d", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/feeds/adsbAircraft.ts:9"}, "properties": {"repobilityId": "6f425523d6440e81", "scanner": "scanner-primary", "fingerprint": "7b10911a5707c60d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-db164c1d07ba8a65", "level": "none", "message": {"text": "Commented-code block (9 lines) in convex/feeds/ntwcTsunami.ts:10"}, "properties": {"repobilityId": "b8ba59037113dfe1", "scanner": "scanner-primary", "fingerprint": "db164c1d07ba8a65", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cda3ea62d332d6e0", "level": "none", "message": {"text": "Commented-code block (9 lines) in convex/feeds/mscMarineText.ts:9"}, "properties": {"repobilityId": "791438cf1a99a015", "scanner": "scanner-primary", "fingerprint": "cda3ea62d332d6e0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4cf731f0db18da8d", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/celestrak.ts:8"}, "properties": {"repobilityId": "25c3b0ca72868d62", "scanner": "scanner-primary", "fingerprint": "4cf731f0db18da8d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-65f264dc6335db9c", "level": "none", "message": {"text": "Commented-code block (10 lines) in convex/feeds/bcRfcAdvisories.ts:14"}, "properties": {"repobilityId": "8fd9b80fcac87b90", "scanner": "scanner-primary", "fingerprint": "65f264dc6335db9c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9cd484dbbb736c35", "level": "none", "message": {"text": "Commented-code block (9 lines) in convex/feeds/nwsAdjacentWaters.ts:7"}, "properties": {"repobilityId": "07d8b9ef4438d339", "scanner": "scanner-primary", "fingerprint": "9cd484dbbb736c35", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6c95411b6d5784e8", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/camsWildlife.ts:7"}, "properties": {"repobilityId": "97215038afb920f9", "scanner": "scanner-primary", "fingerprint": "6c95411b6d5784e8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e26043102645fc79", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/cloudflareRadar.ts:13"}, "properties": {"repobilityId": "de7bcc6a19b18284", "scanner": "scanner-primary", "fingerprint": "e26043102645fc79", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2cfd8fac6f90a84b", "level": "none", "message": {"text": "Commented-code block (15 lines) in convex/feeds/openChargeMap.ts:9"}, "properties": {"repobilityId": "e3dbc07b8afa5cd8", "scanner": "scanner-primary", "fingerprint": "2cfd8fac6f90a84b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9674bbb7d0f19c51", "level": "none", "message": {"text": "Commented-code block (25 lines) in convex/feeds/ioda.ts:15"}, "properties": {"repobilityId": "6d71ee48f41143cf", "scanner": "scanner-primary", "fingerprint": "9674bbb7d0f19c51", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1b98c696e187c9a9", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/pnsnTremor.ts:8"}, "properties": {"repobilityId": "3b84412e48db34c7", "scanner": "scanner-primary", "fingerprint": "1b98c696e187c9a9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ed38531cac50517e", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/orcasound.ts:12"}, "properties": {"repobilityId": "2ae63a29647a9953", "scanner": "scanner-primary", "fingerprint": "ed38531cac50517e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bef8d7312d386950", "level": "none", "message": {"text": "Commented-code block (11 lines) in convex/feeds/dfoLightstations.ts:14"}, "properties": {"repobilityId": "45ca3531a611a634", "scanner": "scanner-primary", "fingerprint": "bef8d7312d386950", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4a7243a51ecf3910", "level": "none", "message": {"text": "Commented-code block (8 lines) in convex/feeds/newsRss.ts:14"}, "properties": {"repobilityId": "0c74d17a4c2186d9", "scanner": "scanner-primary", "fingerprint": "4a7243a51ecf3910", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2746e4644389fc67", "level": "none", "message": {"text": "Commented-code block (9 lines) in convex/feeds/ccgNotship.ts:8"}, "properties": {"repobilityId": "a1fbfb07deb704e6", "scanner": "scanner-primary", "fingerprint": "2746e4644389fc67", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ba2020e6f156ecd2", "level": "none", "message": {"text": "Commented-code block (19 lines) in convex/feeds/permits.ts:14"}, "properties": {"repobilityId": "09665598a00baa8c", "scanner": "scanner-primary", "fingerprint": "ba2020e6f156ecd2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-63eaa982d09518db", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/camsTourism.ts:7"}, "properties": {"repobilityId": "94384883f3e7bcf4", "scanner": "scanner-primary", "fingerprint": "63eaa982d09518db", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-58aa192d63aed93d", "level": "none", "message": {"text": "Commented-code block (8 lines) in convex/feeds/bcTransit.ts:10"}, "properties": {"repobilityId": "9ac5a9dcbf8feb52", "scanner": "scanner-primary", "fingerprint": "58aa192d63aed93d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8fe60093a8ac68c1", "level": "none", "message": {"text": "Commented-code block (11 lines) in convex/feeds/socialPulse.ts:22"}, "properties": {"repobilityId": "5bab92bc4083cd11", "scanner": "scanner-primary", "fingerprint": "8fe60093a8ac68c1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5010e2a47c0422b8", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/nasaFirms.ts:8"}, "properties": {"repobilityId": "b488ec15910e90bf", "scanner": "scanner-primary", "fingerprint": "5010e2a47c0422b8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3923122b540ac261", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/ripestat.ts:15"}, "properties": {"repobilityId": "b2b0dca6c07084d3", "scanner": "scanner-primary", "fingerprint": "3923122b540ac261", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e4f19e3e3aa20de0", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/openaq.ts:15"}, "properties": {"repobilityId": "ae30885b2fd024ff", "scanner": "scanner-primary", "fingerprint": "e4f19e3e3aa20de0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-85658ecdc58c363f", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/avalancheCanada.ts:13"}, "properties": {"repobilityId": "acc9831af403048d", "scanner": "scanner-primary", "fingerprint": "85658ecdc58c363f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-acf368c1d7b99d33", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/feeds/gacTravel.ts:7"}, "properties": {"repobilityId": "0f7ceeed64bfec5a", "scanner": "scanner-primary", "fingerprint": "acf368c1d7b99d33", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e33678a8f9f29813", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/feeds/camsMarineHarbour.ts:7"}, "properties": {"repobilityId": "9da816c258d130e1", "scanner": "scanner-primary", "fingerprint": "e33678a8f9f29813", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1e40f6f989917b3e", "level": "none", "message": {"text": "Commented-code block (16 lines) in convex/feeds/bcSnow.ts:14"}, "properties": {"repobilityId": "44b3ae719d7ad51b", "scanner": "scanner-primary", "fingerprint": "1e40f6f989917b3e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c55ad8c3c0a224ef", "level": "none", "message": {"text": "Commented-code block (13 lines) in convex/feeds/ecccConditions.ts:15"}, "properties": {"repobilityId": "4ed6097a001cf1a6", "scanner": "scanner-primary", "fingerprint": "c55ad8c3c0a224ef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa1bd1c7de2b10b5", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/feeds/oncOceans.ts:14"}, "properties": {"repobilityId": "24d14060aba01f91", "scanner": "scanner-primary", "fingerprint": "aa1bd1c7de2b10b5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-254b6880b87030a7", "level": "none", "message": {"text": "Commented-code block (9 lines) in convex/feeds/naadPelmorex.ts:10"}, "properties": {"repobilityId": "04b8ed35e5cc8eab", "scanner": "scanner-primary", "fingerprint": "254b6880b87030a7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d5bd4a36e6df561d", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/feeds/camsInstitutional.ts:7"}, "properties": {"repobilityId": "e8aec9f93eeb5ec4", "scanner": "scanner-primary", "fingerprint": "d5bd4a36e6df561d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d25162d8c5aae7d1", "level": "none", "message": {"text": "Commented-code block (9 lines) in convex/feeds/bcParks.ts:14"}, "properties": {"repobilityId": "aee7c4c768a55f1d", "scanner": "scanner-primary", "fingerprint": "d25162d8c5aae7d1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7d4f1163fdceac6b", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 convex/feeds/bcParks.ts:46"}, "properties": {"repobilityId": "3b1aa53a2ebd400d", "scanner": "scanner-primary", "fingerprint": "7d4f1163fdceac6b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ced2d649360ca4e1", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/whoOutbreaks.ts:7"}, "properties": {"repobilityId": "b4cabb2101572566", "scanner": "scanner-primary", "fingerprint": "ced2d649360ca4e1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9515ba5ec9c1c33e", "level": "none", "message": {"text": "Commented-code block (18 lines) in convex/feeds/gdelt.ts:13"}, "properties": {"repobilityId": "5caefa37fe56be64", "scanner": "scanner-primary", "fingerprint": "9515ba5ec9c1c33e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7d498571f47165ed", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/camsTransport.ts:7"}, "properties": {"repobilityId": "e6dcd185149aa4ca", "scanner": "scanner-primary", "fingerprint": "7d498571f47165ed", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c9f93e82749f0f26", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/ecccAlerts.ts:9"}, "properties": {"repobilityId": "bfb4856d8f1bd73f", "scanner": "scanner-primary", "fingerprint": "c9f93e82749f0f26", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-35825295ac142330", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/bcwsFires.ts:15"}, "properties": {"repobilityId": "6a0b01f1a9d05c47", "scanner": "scanner-primary", "fingerprint": "35825295ac142330", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9a6611b716cc7f0d", "level": "none", "message": {"text": "Commented-code block (10 lines) in convex/feeds/ecccAqhi.ts:15"}, "properties": {"repobilityId": "96312f78042e2ec1", "scanner": "scanner-primary", "fingerprint": "9a6611b716cc7f0d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a8c273cdf818b3a7", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/feeds/camsAgency.ts:7"}, "properties": {"repobilityId": "8e20e08df863aecb", "scanner": "scanner-primary", "fingerprint": "a8c273cdf818b3a7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2ead138d97f0799a", "level": "none", "message": {"text": "Commented-code block (8 lines) in convex/feeds/sondehub.ts:9"}, "properties": {"repobilityId": "1b6c126eb3957dda", "scanner": "scanner-primary", "fingerprint": "2ead138d97f0799a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-de7bdc07dd00b9b9", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/bcDrought.ts:17"}, "properties": {"repobilityId": "9ad75aed87838ee6", "scanner": "scanner-primary", "fingerprint": "de7bdc07dd00b9b9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c3c54a6df9b75e19", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/ndbcBuoys.ts:14"}, "properties": {"repobilityId": "9ad4af174796857c", "scanner": "scanner-primary", "fingerprint": "c3c54a6df9b75e19", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-22c5aec8cf12437f", "level": "none", "message": {"text": "Commented-code block (5 lines) in convex/feeds/gdacs.ts:8"}, "properties": {"repobilityId": "0e4d3b4f57a7cd0a", "scanner": "scanner-primary", "fingerprint": "22c5aec8cf12437f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-de7654f38b33d5ce", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/drivebcCams.ts:8"}, "properties": {"repobilityId": "e88707b6a5cde072", "scanner": "scanner-primary", "fingerprint": "de7654f38b33d5ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ea892a808135f650", "level": "none", "message": {"text": "Commented-code block (10 lines) in convex/feeds/bcwsBans.ts:16"}, "properties": {"repobilityId": "127279b31eca53c0", "scanner": "scanner-primary", "fingerprint": "ea892a808135f650", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6958c18d1c61853e", "level": "none", "message": {"text": "Commented-code block (9 lines) in convex/feeds/camsTrails.ts:7"}, "properties": {"repobilityId": "cd32e4f20b864d1d", "scanner": "scanner-primary", "fingerprint": "6958c18d1c61853e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eeb0d6735c07d2b8", "level": "none", "message": {"text": "Commented-code block (8 lines) in convex/feeds/abusech.ts:13"}, "properties": {"repobilityId": "31016347ee7fb16b", "scanner": "scanner-primary", "fingerprint": "eeb0d6735c07d2b8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f1d61bb63c9ae080", "level": "none", "message": {"text": "Commented-code block (16 lines) in convex/feeds/noaaSwpc.ts:15"}, "properties": {"repobilityId": "da156c6cb52b1c43", "scanner": "scanner-primary", "fingerprint": "f1d61bb63c9ae080", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8be003164b1cdf7d", "level": "none", "message": {"text": "Commented-code block (7 lines) in convex/feeds/sstErddap.ts:13"}, "properties": {"repobilityId": "7d2b5e7a34d8c630", "scanner": "scanner-primary", "fingerprint": "8be003164b1cdf7d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e9075fab5c01c53", "level": "none", "message": {"text": "Commented-code block (9 lines) in convex/feeds/bccdcWastewater.ts:13"}, "properties": {"repobilityId": "0c2dc92cedc39c81", "scanner": "scanner-primary", "fingerprint": "4e9075fab5c01c53", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ffffaba4c15ece18", "level": "none", "message": {"text": "Commented-code block (6 lines) in convex/feeds/nasaNeo.ts:7"}, "properties": {"repobilityId": "b649d6abe9676937", "scanner": "scanner-primary", "fingerprint": "ffffaba4c15ece18", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-739d0e6144d67b14", "level": "none", "message": {"text": "Commented-code block (14 lines) in convex/feeds/bcFerries.ts:15"}, "properties": {"repobilityId": "00ea211fa0190780", "scanner": "scanner-primary", "fingerprint": "739d0e6144d67b14", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ff07abadaba89e5e", "level": "none", "message": {"text": "Commented-code block (7 lines) in workers/ais/src/index.mjs:1"}, "properties": {"repobilityId": "dd9bbd60ad45a1f8", "scanner": "scanner-primary", "fingerprint": "ff07abadaba89e5e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aee93771c417f73f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/layers/defs/transit.ts:8"}, "properties": {"repobilityId": "bf45c9f495a63b69", "scanner": "scanner-primary", "fingerprint": "aee93771c417f73f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d91bf47447b53c04", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/layers/defs/closures.ts:27"}, "properties": {"repobilityId": "e3c1658afc39d112", "scanner": "scanner-primary", "fingerprint": "d91bf47447b53c04", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91df840157f93604", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/layers/defs/aqhi.ts:5"}, "properties": {"repobilityId": "1f0c7f389e9f5af4", "scanner": "scanner-primary", "fingerprint": "91df840157f93604", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a44496465d4f7652", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/layers/defs/pm25.ts:5"}, "properties": {"repobilityId": "80eb07877c9c4606", "scanner": "scanner-primary", "fingerprint": "a44496465d4f7652", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c1ae550e86d652e0", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/layers/defs/wxStations.ts:5"}, "properties": {"repobilityId": "47fa112ec9e74142", "scanner": "scanner-primary", "fingerprint": "c1ae550e86d652e0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b44a5b6d78c6613a", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/layers/defs/evChargers.ts:5"}, "properties": {"repobilityId": "3a987f6f3cfd22b6", "scanner": "scanner-primary", "fingerprint": "b44a5b6d78c6613a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7ea14119b6887017", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/layers/defs/fireRasters.ts:8"}, "properties": {"repobilityId": "e25b62241e93dcfb", "scanner": "scanner-primary", "fingerprint": "7ea14119b6887017", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b940dc84aa80d773", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/layers/defs/gibsRasters.ts:3"}, "properties": {"repobilityId": "b2bfac3236bf3773", "scanner": "scanner-primary", "fingerprint": "b940dc84aa80d773", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-55ce2656c03842b6", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/components/cams/CamTile.tsx:7"}, "properties": {"repobilityId": "7f3745951f9ac92e", "scanner": "scanner-primary", "fingerprint": "55ce2656c03842b6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a1ef26251b0def98", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/pages/AnalystPage.tsx:7"}, "properties": {"repobilityId": "5735ecbd38d33c85", "scanner": "scanner-primary", "fingerprint": "a1ef26251b0def98", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e336693c33c30d96", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/map/trailLayers.ts:54"}, "properties": {"repobilityId": "3858ddcf1c86ab89", "scanner": "scanner-primary", "fingerprint": "e336693c33c30d96", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-76b7c08f154cfdbd", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/map/useAnimatedSnapshot.ts:4"}, "properties": {"repobilityId": "e21d7e006cccb8c9", "scanner": "scanner-primary", "fingerprint": "76b7c08f154cfdbd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}]}]}