{"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-0a5de49da908e479", "name": "Possibly dead Python function: npv", "shortDescription": {"text": "Possibly dead Python function: npv"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8672105aadab7b80", "name": "Stray `console.log` in TS/JS \u2014 scripts/seed-demo-data.ts:655", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/seed-demo-data.ts:655"}, "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-347396ed27c03f46", "name": "Stray `console.log` in TS/JS \u2014 scripts/check-gdpr-export-coverage.ts:780", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/check-gdpr-export-coverage.ts:780"}, "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-aaf14c318bdf2177", "name": "Stray `console.log` in TS/JS \u2014 scripts/check-admin-route-manifest.ts:431", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/check-admin-route-manifest.ts:431"}, "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-1fe9acef53c2a823", "name": "Stray `console.log` in TS/JS \u2014 scripts/check-founder-lp-readiness.ts:48", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/check-founder-lp-readiness.ts:48"}, "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-ab330eadbab28d11", "name": "Stray `console.log` in TS/JS \u2014 scripts/seed-full-app-demo.ts:1193", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/seed-full-app-demo.ts:1193"}, "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-078345fcb524a4c8", "name": "Stray `console.log` in TS/JS \u2014 scripts/verify-phase18-artifacts.ts:87", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/verify-phase18-artifacts.ts:87"}, "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-80e95eb11d20ea84", "name": "Stray `console.log` in TS/JS \u2014 src/app/api/keys/sync/route.ts:274", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/keys/sync/route.ts:274"}, "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-18d50e205def6c44", "name": "TODO/FIXME marker in shipping code \u2014 src/app/api/keys/validate-and-encrypt/route.ts:53", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 src/app/api/keys/validate-and-encrypt/route.ts:53"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-55d58b6eeebf3ed5", "name": "`truncate` class without `title=` for hover reveal \u2014 src/app/demo/layout.tsx:36", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/demo/layout.tsx:36"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f97ebb4a99c1217f", "name": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/portfolios/page.tsx:44", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/portfolios/page.tsx:44"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c9c9e102e548e1c4", "name": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/portfolios/[id]/manage/page.tsx:69", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/portfolios/[id]/manage/page.tsx:69"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-21a6a2bc74eb1fe2", "name": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/admin/partner-pilot/[partner_tag]/page.tsx:166", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/admin/partner-pilot/[partner_tag]/page.tsx:166"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eafd31b843b350a7", "name": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/admin/compute-jobs/page.tsx:125", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/admin/compute-jobs/page.tsx:125"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6a738dfe5d7118ed", "name": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/allocations/components/AlertBanner.tsx:127", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/allocations/components/AlertBanner.tsx:127"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ee51873fd824e88c", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/strategy/StrategyGrid.tsx:63", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/strategy/StrategyGrid.tsx:63"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-47d3d1c61982ed94", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/strategy/MetadataCards.tsx:21", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/strategy/MetadataCards.tsx:21"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-29705063693cc5ed", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/admin/MatchQueueIndex.tsx:289", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/admin/MatchQueueIndex.tsx:289"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9df01dafa9c58c25", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/admin/AllocatorMatchQueue.tsx:560", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/admin/AllocatorMatchQueue.tsx:560"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-84dc7f5d46ae3632", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/admin/match/ShortlistCard.tsx:43", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/admin/match/ShortlistCard.tsx:43"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3cbc983212922d8f", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/scenarios/ScenarioBuilder.tsx:363", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/scenarios/ScenarioBuilder.tsx:363"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bf0660c8e3f84fe5", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/exchanges/AllocatorExchangeManager.tsx:714", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/exchanges/AllocatorExchangeManager.tsx:714"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c4f8a4cec8502a11", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/ReplacementCard.tsx:116", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/ReplacementCard.tsx:116"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ad8b1d617e139fc4", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/PortfolioOptimizer.tsx:78", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/PortfolioOptimizer.tsx:78"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b3328f38722eb11a", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/PortfolioImpactPanel.tsx:197", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/PortfolioImpactPanel.tsx:197"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9dc9227c88f2cb56", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/CorrelationHeatmap.tsx:178", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/CorrelationHeatmap.tsx:178"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-be40a0b7fb1dde84", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/ReplacementPanel.tsx:127", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/ReplacementPanel.tsx:127"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0009ab4157880258", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/AllocationTimeline.tsx:30", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/AllocationTimeline.tsx:30"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c8e4c3e0e6cc4901", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/WinnersLosersStrip.tsx:24", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/WinnersLosersStrip.tsx:24"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9ffae4d80970698d", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/DocumentList.tsx:68", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/DocumentList.tsx:68"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-570a908ae88b8e26", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/AllocationPie.tsx:106", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/AllocationPie.tsx:106"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9cd970bec88a946e", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/deck/DeckCard.tsx:13", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/deck/DeckCard.tsx:13"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-33192da1df874305", "name": "TODO/FIXME marker in shipping code \u2014 src/__tests__/audit-coverage.test.ts:265", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 src/__tests__/audit-coverage.test.ts:265"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7c6105c6d8bfef6e", "name": "Stray `console.log` in TS/JS \u2014 e2e/demo-public.spec.ts:269", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 e2e/demo-public.spec.ts:269"}, "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-e6e1301764247d7a", "name": "Stray `console.log` in TS/JS \u2014 e2e/csv-upload-flow.spec.ts:110", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 e2e/csv-upload-flow.spec.ts:110"}, "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-32cfcfec25013915", "name": "Stray `console.log` in TS/JS \u2014 e2e/demo-founder-view.spec.ts:75", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 e2e/demo-founder-view.spec.ts:75"}, "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-f7ab79d03cdd4ef7", "name": "Stray `console.log` in TS/JS \u2014 e2e/wizard-hydration-probe.spec.ts:84", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 e2e/wizard-hydration-probe.spec.ts:84"}, "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-5bdf2c75ef90a86c", "name": "Privileged port 14 in use", "shortDescription": {"text": "Privileged port 14 in use"}, "fullDescription": {"text": "Port 14 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-25efbfd35cc59b04", "name": "Docker base image is tag-pinned but not digest-pinned: python:3.12-slim", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: python:3.12-slim"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-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-5392c6feb20faf27", "name": "Possible secret in scripts/seed-full-app-demo.ts", "shortDescription": {"text": "Possible secret in scripts/seed-full-app-demo.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-df6df6d619becf3e", "name": "Insecure pattern 'eval_used' in src/app/api/admin/match/eval/route.test.ts:71", "shortDescription": {"text": "Insecure pattern 'eval_used' in src/app/api/admin/match/eval/route.test.ts:71"}, "fullDescription": {"text": "Found a known-risky pattern (eval_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-160ee660b4921d38", "name": "Possible secret in src/app/api/strategies/create-with-key/route.audit.test.ts", "shortDescription": {"text": "Possible secret in src/app/api/strategies/create-with-key/route.audit.test.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-d3a0e47febdb62e0", "name": "Possible secret in src/app/api/strategies/create-with-key/route.test.ts", "shortDescription": {"text": "Possible secret in src/app/api/strategies/create-with-key/route.test.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-e5e000407f2157b8", "name": "Possible secret in src/lib/test-helpers/live-db.ts", "shortDescription": {"text": "Possible secret in src/lib/test-helpers/live-db.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-a09dff37a83cdcc0", "name": "Insecure pattern 'node_child_process' in src/__tests__/gdpr-export-coverage-hook.test.ts:18", "shortDescription": {"text": "Insecure pattern 'node_child_process' in src/__tests__/gdpr-export-coverage-hook.test.ts:18"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-eb124961b26c720e", "name": "Insecure pattern 'node_child_process' in src/__tests__/check-banned-packages.test.ts:30", "shortDescription": {"text": "Insecure pattern 'node_child_process' in src/__tests__/check-banned-packages.test.ts:30"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-84385fa6a12fdd01", "name": "Insecure pattern 'node_child_process' in src/__tests__/gitleaks-allowlist.test.ts:34", "shortDescription": {"text": "Insecure pattern 'node_child_process' in src/__tests__/gitleaks-allowlist.test.ts:34"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-91f530e71ec2d5e3", "name": "Possible secret in e2e/for-quants-onboarding.spec.ts", "shortDescription": {"text": "Possible secret in e2e/for-quants-onboarding.spec.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-3239def292c4f491", "name": "Possible secret in e2e/csv-upload-flow.spec.ts", "shortDescription": {"text": "Possible secret in e2e/csv-upload-flow.spec.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-e394b208dc5d6d8a", "name": "Possible secret in e2e/mandate-form.spec.ts", "shortDescription": {"text": "Possible secret in e2e/mandate-form.spec.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-e8d802357375e292", "name": "Possible secret in e2e/helpers/discovery-selectors.ts", "shortDescription": {"text": "Possible secret in e2e/helpers/discovery-selectors.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-2e210de2c0b6ec3b", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-417c592c69640fb5", "name": "Very large file: scripts/seed-full-app-demo.ts (1768 lines)", "shortDescription": {"text": "Very large file: scripts/seed-full-app-demo.ts (1768 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a36cc17c0253b32a", "name": "Very large file: src/app/api/allocator/scenario/commit/route.test.ts (1604 lines)", "shortDescription": {"text": "Very large file: src/app/api/allocator/scenario/commit/route.test.ts (1604 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8acede25040c5554", "name": "Very large file: src/app/api/admin/users/[id]/roles/route.test.ts (1982 lines)", "shortDescription": {"text": "Very large file: src/app/api/admin/users/[id]/roles/route.test.ts (1982 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ff34ec81d2d24d7b", "name": "Very large file: src/app/api/strategies/csv-finalize/route.ts (1399 lines)", "shortDescription": {"text": "Very large file: src/app/api/strategies/csv-finalize/route.ts (1399 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2cc860061f3ee564", "name": "Very large file: src/app/factsheet/[id]/v2/TimeSeriesChart.tsx (1311 lines)", "shortDescription": {"text": "Very large file: src/app/factsheet/[id]/v2/TimeSeriesChart.tsx (1311 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b365dfbbbc32f7a9", "name": "Very large file: src/app/(dashboard)/allocations/widgets/performance/EquityChart.tsx (2303 lines)", "shortDescription": {"text": "Very large file: src/app/(dashboard)/allocations/widgets/performance/EquityChart.tsx (2303 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-795d72e59cc20c8d", "name": "Very large file: src/app/(dashboard)/allocations/components/ScenarioComposer.tsx (1427 lines)", "shortDescription": {"text": "Very large file: src/app/(dashboard)/allocations/components/ScenarioComposer.tsx (1427 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a269ef4664f5f4d3", "name": "Very large file: src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.test.tsx (2067 lines)", "shortDescription": {"text": "Very large file: src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.test.tsx (2067 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cd0dac620fe22b6a", "name": "Very large file: src/app/(dashboard)/allocations/components/ScenarioComposer.test.tsx (2043 lines)", "shortDescription": {"text": "Very large file: src/app/(dashboard)/allocations/components/ScenarioComposer.test.tsx (2043 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8349ff57c3357b1a", "name": "Very large file: src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.tsx (1194 lines)", "shortDescription": {"text": "Very large file: src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.tsx (1194 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cb2edc03711bbb41", "name": "Very large file: src/lib/queries.ts (3205 lines)", "shortDescription": {"text": "Very large file: src/lib/queries.ts (3205 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9afabbb24d477bb9", "name": "Very large file: src/lib/queries.my-allocation.test.ts (1506 lines)", "shortDescription": {"text": "Very large file: src/lib/queries.my-allocation.test.ts (1506 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f28ef622e4a1fd52", "name": "Very large file: src/lib/types.ts (1709 lines)", "shortDescription": {"text": "Very large file: src/lib/types.ts (1709 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4e2301ff735d6c14", "name": "Very large file: src/lib/database.types.ts (3580 lines)", "shortDescription": {"text": "Very large file: src/lib/database.types.ts (3580 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e7fd32b0f3f3a706", "name": "Very large file: src/lib/auth.test.ts (1426 lines)", "shortDescription": {"text": "Very large file: src/lib/auth.test.ts (1426 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d38ad86a1b75825e", "name": "Very large file: src/lib/audit.ts (1142 lines)", "shortDescription": {"text": "Very large file: src/lib/audit.ts (1142 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-61ddcddad0610461", "name": "Very large file: src/lib/gdpr-export.ts (1295 lines)", "shortDescription": {"text": "Very large file: src/lib/gdpr-export.ts (1295 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4a4f42698a464443", "name": "Very large file: src/__tests__/gdpr-export.test.ts (2384 lines)", "shortDescription": {"text": "Very large file: src/__tests__/gdpr-export.test.ts (2384 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8bbb25d3a8865b50", "name": "Very large file: src/__tests__/audit-coverage.test.ts (1282 lines)", "shortDescription": {"text": "Very large file: src/__tests__/audit-coverage.test.ts (1282 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9db7e5865199f13b", "name": "Very large file: src/__tests__/csv-validate-route.test.ts (1355 lines)", "shortDescription": {"text": "Very large file: src/__tests__/csv-validate-route.test.ts (1355 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ddb3f74b71e152cd", "name": "Very large file: src/__tests__/critical-regressions.test.ts (1247 lines)", "shortDescription": {"text": "Very large file: src/__tests__/critical-regressions.test.ts (1247 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-675577010c6ceaea", "name": "Very large file: supabase/types.generated.ts (3256 lines)", "shortDescription": {"text": "Very large file: supabase/types.generated.ts (3256 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c296a30fde8d920f", "name": "Very large file: analytics-service/tests/test_process_key.py (1986 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_process_key.py (1986 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8cace093c4861134", "name": "Very large file: analytics-service/tests/test_position_reconstruction_funding.py (1669 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_position_reconstruction_funding.py (1669 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0fb5b2e5c351ce3e", "name": "Very large file: analytics-service/tests/test_feedback_engine.py (2059 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_feedback_engine.py (2059 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5b0a69b42489baa6", "name": "Very large file: analytics-service/tests/test_metrics.py (2067 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_metrics.py (2067 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5f84e80a7149e7da", "name": "Very large file: analytics-service/tests/test_ana_recon_audit.py (1281 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_ana_recon_audit.py (1281 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-aa35b651b9206e6b", "name": "Very large file: analytics-service/tests/test_funding_fetch.py (1983 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_funding_fetch.py (1983 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-43c2b5038f534acf", "name": "Very large file: analytics-service/tests/test_position_reconstruction.py (4033 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_position_reconstruction.py (4033 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-767ea1cfa5ede13b", "name": "Very large file: analytics-service/tests/test_match_router.py (3956 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_match_router.py (3956 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6f1b02751a92937d", "name": "Very large file: analytics-service/tests/test_simulator_router.py (1736 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_simulator_router.py (1736 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ce60bec2b056c69f", "name": "Very large file: analytics-service/tests/test_compute_jobs_fencing.py (2607 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_compute_jobs_fencing.py (2607 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c5468296246d0adc", "name": "Very large file: analytics-service/tests/test_phase12_kill_switch.py (1709 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_phase12_kill_switch.py (1709 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-00eef8b4ca44cd6f", "name": "Very large file: analytics-service/tests/test_equity_reconstruction.py (4907 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_equity_reconstruction.py (4907 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-39f40fe96c6962c9", "name": "Very large file: analytics-service/tests/test_main_worker.py (1675 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_main_worker.py (1675 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-83f5b937a2919392", "name": "Very large file: analytics-service/tests/test_exchange.py (5658 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_exchange.py (5658 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-367b909bd19003a9", "name": "Very large file: analytics-service/tests/test_c19_portfolio_fixes.py (1150 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_c19_portfolio_fixes.py (1150 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7202eb36b9b0136c", "name": "Very large file: analytics-service/tests/test_cron_router.py (2690 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_cron_router.py (2690 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5da1c41258dc39ae", "name": "Very large file: analytics-service/tests/test_match_engine.py (1588 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_match_engine.py (1588 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bd78c5591f39870f", "name": "Very large file: analytics-service/tests/test_analytics_runner.py (5350 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_analytics_runner.py (5350 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1b66c8efea59e09d", "name": "Very large file: analytics-service/tests/test_job_worker.py (3291 lines)", "shortDescription": {"text": "Very large file: analytics-service/tests/test_job_worker.py (3291 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0a645ae61c7baf8e", "name": "Very large file: analytics-service/scripts/phase12_kill_switch.py (1138 lines)", "shortDescription": {"text": "Very large file: analytics-service/scripts/phase12_kill_switch.py (1138 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ca0c83ac2b968811", "name": "Very large file: analytics-service/routers/portfolio.py (2423 lines)", "shortDescription": {"text": "Very large file: analytics-service/routers/portfolio.py (2423 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-35eb151b2db918ae", "name": "Very large file: analytics-service/routers/match.py (2018 lines)", "shortDescription": {"text": "Very large file: analytics-service/routers/match.py (2018 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-57ca8f9b25c2a18a", "name": "Very large file: analytics-service/services/analytics_runner.py (2172 lines)", "shortDescription": {"text": "Very large file: analytics-service/services/analytics_runner.py (2172 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7714e87eab23adf4", "name": "Very large file: analytics-service/services/equity_reconstruction.py (3181 lines)", "shortDescription": {"text": "Very large file: analytics-service/services/equity_reconstruction.py (3181 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d72e73190b69cd20", "name": "Very large file: analytics-service/services/metrics.py (1499 lines)", "shortDescription": {"text": "Very large file: analytics-service/services/metrics.py (1499 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9c08307779098ac1", "name": "Very large file: analytics-service/services/match_engine.py (1280 lines)", "shortDescription": {"text": "Very large file: analytics-service/services/match_engine.py (1280 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3af00dfe941f4d6d", "name": "Very large file: analytics-service/services/exchange.py (2777 lines)", "shortDescription": {"text": "Very large file: analytics-service/services/exchange.py (2777 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e4d47c002be90be2", "name": "Very large file: analytics-service/services/job_worker.py (2799 lines)", "shortDescription": {"text": "Very large file: analytics-service/services/job_worker.py (2799 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e6266b147567f57a", "name": "Very large file: analytics-service/services/position_reconstruction.py (2149 lines)", "shortDescription": {"text": "Very large file: analytics-service/services/position_reconstruction.py (2149 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "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-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 115 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-72b2a6250083a784", "name": "Placeholder or mock-heavy implementation detected", "shortDescription": {"text": "Placeholder or mock-heavy implementation detected"}, "fullDescription": {"text": "Found 208 placeholder/mock markers across 91 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9d79c4077342a7d0", "name": "Runtime service client appears to use placeholder configuration", "shortDescription": {"text": "Runtime service client appears to use placeholder configuration"}, "fullDescription": {"text": "A runtime source file appears to wire Supabase/Firebase/AI/payment-style clients to placeholder URLs, keys, or fallback values. In the Fable corpus this often means the UI/API shape is present while the backend service is not actually configured."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-749d4bc1bd66df5f", "name": "Agent instructions exist but release-hardening basics are missing", "shortDescription": {"text": "Agent instructions exist but release-hardening basics are missing"}, "fullDescription": {"text": "AI-coder instruction files were found, but the repo is missing license. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e725d2ab884fbd49", "name": "Multiple root agent instruction files without precedence", "shortDescription": {"text": "Multiple root agent instruction files without precedence"}, "fullDescription": {"text": "The repo has multiple top-level AI-coder instruction files. Without precedence rules, different agents may follow different policies."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bfc48882257cab64", "name": "Commented-code block (10 lines) in vitest.config.ts:6", "shortDescription": {"text": "Commented-code block (10 lines) in vitest.config.ts:6"}, "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-3a25db917e84c265", "name": "Commented-code block (8 lines) in eslint.config.mjs:33", "shortDescription": {"text": "Commented-code block (8 lines) in eslint.config.mjs:33"}, "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-e011c2ade7c74378", "name": "Commented-code block (10 lines) in next.config.ts:24", "shortDescription": {"text": "Commented-code block (10 lines) in next.config.ts:24"}, "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-cfa4a721e9befdd1", "name": "Commented-code block (9 lines) in tests/a11y/wizard-contrast.test.ts:54", "shortDescription": {"text": "Commented-code block (9 lines) in tests/a11y/wizard-contrast.test.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-3045feb15d1f3faa", "name": "Commented-code block (5 lines) in tests/a11y/trust-tier-tokens.test.ts:48", "shortDescription": {"text": "Commented-code block (5 lines) in tests/a11y/trust-tier-tokens.test.ts:48"}, "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-31aba971f814d3f2", "name": "Commented-code block (6 lines) in tests/a11y/chart-contrast.test.ts:101", "shortDescription": {"text": "Commented-code block (6 lines) in tests/a11y/chart-contrast.test.ts:101"}, "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-50d237c1da1622a4", "name": "Commented-code block (5 lines) in tests/integration/mig-129-cutover-concurrency.test.ts:367", "shortDescription": {"text": "Commented-code block (5 lines) in tests/integration/mig-129-cutover-concurrency.test.ts:367"}, "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-c075158d7dd21e52", "name": "Commented-code block (7 lines) in tests/integration/mig-128-batch-concurrency.test.ts:252", "shortDescription": {"text": "Commented-code block (7 lines) in tests/integration/mig-128-batch-concurrency.test.ts:252"}, "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-dbc5a20c3c4b7d85", "name": "Commented-code block (6 lines) in tests/integration/phase-19-pra-write.test.ts:153", "shortDescription": {"text": "Commented-code block (6 lines) in tests/integration/phase-19-pra-write.test.ts:153"}, "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-91e2f9566ef703e0", "name": "Commented-code block (6 lines) in tests/integration/cron-flag-monitor.test.ts:580", "shortDescription": {"text": "Commented-code block (6 lines) in tests/integration/cron-flag-monitor.test.ts:580"}, "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-c231512edf0ce3e5", "name": "Commented-code block (6 lines) in tests/integration/process-key-thin-adapters.test.ts:94", "shortDescription": {"text": "Commented-code block (6 lines) in tests/integration/process-key-thin-adapters.test.ts:94"}, "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-62920dbc94fb7e06", "name": "Commented-code block (5 lines) in tests/lib/wizard-errors-shape.test.ts:42", "shortDescription": {"text": "Commented-code block (5 lines) in tests/lib/wizard-errors-shape.test.ts:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3c4fcbdf012398ad", "name": "Commented-code block (5 lines) in tests/lib/feature-flags.test.ts:132", "shortDescription": {"text": "Commented-code block (5 lines) in tests/lib/feature-flags.test.ts:132"}, "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-7663cd4418d5959f", "name": "Commented-code block (7 lines) in tests/lib/scripts/no-server-only-leak.test.ts:57", "shortDescription": {"text": "Commented-code block (7 lines) in tests/lib/scripts/no-server-only-leak.test.ts:57"}, "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-79066ec04b3b4e95", "name": "Commented-code block (6 lines) in tests/lib/admin/pii-scrub-python-parity.test.ts:96", "shortDescription": {"text": "Commented-code block (6 lines) in tests/lib/admin/pii-scrub-python-parity.test.ts:96"}, "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-ca5f47ed9e772556", "name": "Commented-code block (5 lines) in tests/visual/strategy-v2-panel-count.test.tsx:33", "shortDescription": {"text": "Commented-code block (5 lines) in tests/visual/strategy-v2-panel-count.test.tsx:33"}, "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-c8d1db667b095437", "name": "Commented-code block (6 lines) in tests/visual/chart-accessibility-layer.test.ts:91", "shortDescription": {"text": "Commented-code block (6 lines) in tests/visual/chart-accessibility-layer.test.ts:91"}, "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-7a22cd4dd3ba43a6", "name": "Commented-code block (7 lines) in scripts/seed-demo-data.ts:31", "shortDescription": {"text": "Commented-code block (7 lines) in scripts/seed-demo-data.ts:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-533eb07fd6214a55", "name": "Commented-code block (16 lines) in scripts/check-gdpr-export-coverage.ts:202", "shortDescription": {"text": "Commented-code block (16 lines) in scripts/check-gdpr-export-coverage.ts:202"}, "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-b5fd4b15990b245a", "name": "Commented-code block (6 lines) in scripts/check-admin-route-manifest.ts:301", "shortDescription": {"text": "Commented-code block (6 lines) in scripts/check-admin-route-manifest.ts:301"}, "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-47a83eb1c8433090", "name": "Commented-code block (7 lines) in scripts/seed-full-app-demo.ts:621", "shortDescription": {"text": "Commented-code block (7 lines) in scripts/seed-full-app-demo.ts:621"}, "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-b1d09b006668be3b", "name": "Commented-code block (5 lines) in scripts/check-banned-packages.mjs:50", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/check-banned-packages.mjs:50"}, "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-de83c9fb93254f32", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/check-banned-packages.mjs:60", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/check-banned-packages.mjs:60"}, "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-fdd7cf0bec542511", "name": "Commented-code block (5 lines) in scripts/check-gdpr-export-coverage.test.ts:394", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/check-gdpr-export-coverage.test.ts:394"}, "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-e15614b065f0a568", "name": "Commented-code block (5 lines) in tools/eslint-plugin-quantalyze/tests/no-passthrough-on-ipc.test.ts:51", "shortDescription": {"text": "Commented-code block (5 lines) in tools/eslint-plugin-quantalyze/tests/no-passthrough-on-ipc.test.ts:51"}, "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-ee6eb2e1f28a06ca", "name": "Commented-code block (5 lines) in tools/eslint-plugin-quantalyze/rules/no-raw-localstorage.mjs:71", "shortDescription": {"text": "Commented-code block (5 lines) in tools/eslint-plugin-quantalyze/rules/no-raw-localstorage.mjs:71"}, "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-f97919a46d399e85", "name": "Commented-code block (7 lines) in src/proxy.ts:12", "shortDescription": {"text": "Commented-code block (7 lines) in src/proxy.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-97d45d6eda7e29e0", "name": "Commented-code block (10 lines) in src/test-setup.ts:5", "shortDescription": {"text": "Commented-code block (10 lines) in src/test-setup.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-7e21d693585e2752", "name": "Commented-code block (5 lines) in src/proxy.test.ts:111", "shortDescription": {"text": "Commented-code block (5 lines) in src/proxy.test.ts:111"}, "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-fbdb1fc2675bd63c", "name": "Commented-code block (5 lines) in src/app/layout.tsx:9", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/layout.tsx: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-12436bc37288dfe3", "name": "Commented-code block (5 lines) in src/app/api/bridge/route.ts:18", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/bridge/route.ts:18"}, "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-701374cf375d96e7", "name": "Commented-code block (5 lines) in src/app/api/bridge/route.test.ts:34", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/bridge/route.test.ts:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-03f322513a8b75fd", "name": "Commented-code block (7 lines) in src/app/api/bridge/outcome/route.ts:24", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/bridge/outcome/route.ts:24"}, "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-280fdb435c572821", "name": "Commented-code block (8 lines) in src/app/api/bridge/outcome/[id]/curves/route.ts:77", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/api/bridge/outcome/[id]/curves/route.ts:77"}, "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-5e54fe2abcb7f376", "name": "Commented-code block (7 lines) in src/app/api/bridge/outcome/[id]/curves/route.test.ts:272", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/bridge/outcome/[id]/curves/route.test.ts:272"}, "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-6b72a251c84de03b", "name": "Commented-code block (8 lines) in src/app/api/cron/cleanup-wizard-drafts/route.ts:86", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/api/cron/cleanup-wizard-drafts/route.ts:86"}, "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-14dac4adefc8abda", "name": "Commented-code block (5 lines) in src/app/api/cron/cleanup-wizard-drafts/route.test.ts:322", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/cron/cleanup-wizard-drafts/route.test.ts:322"}, "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-74c413c6fbc158e2", "name": "Commented-code block (7 lines) in src/app/api/cron/phase19-error-rollup/route.ts:32", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/cron/phase19-error-rollup/route.ts:32"}, "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-3f7bb14b34619c11", "name": "Commented-code block (6 lines) in src/app/api/cron/phase19-error-rollup/route.test.ts:111", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/cron/phase19-error-rollup/route.test.ts:111"}, "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-279b27d1973b49ee", "name": "Commented-code block (5 lines) in src/app/api/cron/founder-lp-report/route.ts:165", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/cron/founder-lp-report/route.ts:165"}, "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-d52b5d7e60d6afc1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/cron/founder-lp-report/route.ts:19", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/cron/founder-lp-report/route.ts:19"}, "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-d71968496153d4b4", "name": "Commented-code block (6 lines) in src/app/api/cron/founder-lp-report/route.test.ts:328", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/cron/founder-lp-report/route.test.ts:328"}, "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-18fb69bba48b5eaa", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/cron/founder-lp-report/route.test.ts:26", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/cron/founder-lp-report/route.test.ts:26"}, "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-e59a196d188d54ff", "name": "Commented-code block (5 lines) in src/app/api/cron/sync-funding/route.ts:127", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/cron/sync-funding/route.ts:127"}, "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-e54373283118e423", "name": "Commented-code block (7 lines) in src/app/api/cron/sync-funding/route.test.ts:255", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/cron/sync-funding/route.test.ts:255"}, "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-de0f805e11e276a2", "name": "Commented-code block (5 lines) in src/app/api/cron/cleanup-ack-tokens/route.test.ts:26", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/cron/cleanup-ack-tokens/route.test.ts:26"}, "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-ff77f47727a3e53e", "name": "Commented-code block (7 lines) in src/app/api/cron/flag-monitor/route.ts:46", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/cron/flag-monitor/route.ts:46"}, "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-8d8e194b3ea9f048", "name": "Commented-code block (9 lines) in src/app/api/cron/flag-monitor/route.test.ts:44", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/api/cron/flag-monitor/route.test.ts:44"}, "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-4354f6b88edd98fa", "name": "Commented-code block (6 lines) in src/app/api/cron/reconcile-strategies/route.ts:77", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/cron/reconcile-strategies/route.ts:77"}, "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-63bd4e3357d58f0d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/cron/reconcile-strategies/route.ts:11", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/cron/reconcile-strategies/route.ts: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-3d9523114105edf2", "name": "Commented-code block (7 lines) in src/app/api/intro-response/route.ts:100", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/intro-response/route.ts:100"}, "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-1be77d5d99d82735", "name": "Commented-code block (5 lines) in src/app/api/intro-response/route.test.ts:86", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/intro-response/route.test.ts:86"}, "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-eb3c8f7da673480e", "name": "Commented-code block (6 lines) in src/app/api/portfolio-pdf/[id]/route.ts:34", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/portfolio-pdf/[id]/route.ts:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2ee415c4710ceee5", "name": "Commented-code block (10 lines) in src/app/api/portfolio-optimizer/route.ts:56", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/api/portfolio-optimizer/route.ts:56"}, "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-e4675027c622725e", "name": "Commented-code block (7 lines) in src/app/api/portfolio-optimizer/route.test.ts:200", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/portfolio-optimizer/route.test.ts:200"}, "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-73d7df6df0bebf2d", "name": "Commented-code block (5 lines) in src/app/api/allocator/holdings/sync/route.ts:68", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/allocator/holdings/sync/route.ts:68"}, "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-4aa84df75ce82c4e", "name": "Commented-code block (14 lines) in src/app/api/allocator/scenario/commit/route.ts:60", "shortDescription": {"text": "Commented-code block (14 lines) in src/app/api/allocator/scenario/commit/route.ts:60"}, "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-04d6fb27e32c78f9", "name": "Commented-code block (13 lines) in src/app/api/allocator/scenario/commit/percent-allocated-parity.test.ts:28", "shortDescription": {"text": "Commented-code block (13 lines) in src/app/api/allocator/scenario/commit/percent-allocated-parity.test.ts:28"}, "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-75a5844fab615962", "name": "Commented-code block (8 lines) in src/app/api/allocator/scenario/commit/route.test.ts:43", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/api/allocator/scenario/commit/route.test.ts:43"}, "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-9898e4cfe87de60a", "name": "Commented-code block (7 lines) in src/app/api/account/export/route.ts:208", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/account/export/route.ts:208"}, "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-c870159b2aabbeb4", "name": "Commented-code block (5 lines) in src/app/api/account/export/route.test.ts:420", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/account/export/route.test.ts:420"}, "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-32365c1cd8036bb4", "name": "Commented-code block (9 lines) in src/app/api/factsheet/[id]/pdf/route.ts:49", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/api/factsheet/[id]/pdf/route.ts:49"}, "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-5b5318d0fbfc0c1f", "name": "Commented-code block (7 lines) in src/app/api/factsheet/[id]/pdf/route.test.ts:80", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/factsheet/[id]/pdf/route.test.ts:80"}, "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-56588eaf93fd5388", "name": "Commented-code block (7 lines) in src/app/api/factsheet/[id]/tearsheet.pdf/route.ts:18", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/factsheet/[id]/tearsheet.pdf/route.ts:18"}, "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-91765d5e8876bb08", "name": "Commented-code block (5 lines) in src/app/api/factsheet/[id]/tearsheet.pdf/route.test.ts:90", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/factsheet/[id]/tearsheet.pdf/route.test.ts:90"}, "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-aaf4ba64b607e901", "name": "Commented-code block (8 lines) in src/app/api/notes/route.ts:37", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/api/notes/route.ts:37"}, "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-78961f11aba07677", "name": "Commented-code block (6 lines) in src/app/api/notes/route.test.ts:708", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/notes/route.test.ts:708"}, "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-676c99ce9bb286c8", "name": "Commented-code block (10 lines) in src/app/api/verify-strategy/route.ts:143", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/api/verify-strategy/route.ts:143"}, "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-e0d05fc118617732", "name": "Legacy-named symbol `verification_requests_legacy` in src/app/api/verify-strategy/[id]/status/route.ts:23", "shortDescription": {"text": "Legacy-named symbol `verification_requests_legacy` in src/app/api/verify-strategy/[id]/status/route.ts:23"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d637dc62c2d9b95e", "name": "Commented-code block (8 lines) in src/app/api/admin/manager-approve/route.ts:90", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/api/admin/manager-approve/route.ts:90"}, "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-8563b70db1c404e7", "name": "Commented-code block (9 lines) in src/app/api/admin/allocator-approve/route.ts:78", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/api/admin/allocator-approve/route.ts:78"}, "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-01fbefeda2966a71", "name": "Commented-code block (10 lines) in src/app/api/admin/intro-request/route.ts:24", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/api/admin/intro-request/route.ts:24"}, "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-95db5f76d11d0ebb", "name": "Commented-code block (8 lines) in src/app/api/admin/users/[id]/roles/route.ts:12", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/api/admin/users/[id]/roles/route.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-0317c9af6f66abf0", "name": "Commented-code block (5 lines) in src/app/api/admin/users/[id]/roles/route.test.ts:25", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/users/[id]/roles/route.test.ts:25"}, "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-4079df08f269a9af", "name": "Commented-code block (10 lines) in src/app/api/admin/strategy-review/route.ts:47", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/api/admin/strategy-review/route.ts:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4c74ef7971e3f183", "name": "Commented-code block (5 lines) in src/app/api/admin/strategy-review/route.test.ts:188", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/strategy-review/route.test.ts:188"}, "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-91ffebd6550ff722", "name": "Commented-code block (5 lines) in src/app/api/admin/match/kill-switch/route.ts:47", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/match/kill-switch/route.ts:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-255c7c4210b46ecb", "name": "Commented-code block (6 lines) in src/app/api/admin/match/[allocator_id]/route.test.ts:175", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/admin/match/[allocator_id]/route.test.ts:175"}, "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-dab8ff1484440772", "name": "Commented-code block (5 lines) in src/app/api/admin/match/preferences/[allocator_id]/route.ts:22", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/match/preferences/[allocator_id]/route.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-2a038855dc234df9", "name": "Commented-code block (5 lines) in src/app/api/admin/match/send-intro/route.ts:53", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/match/send-intro/route.ts:53"}, "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-b547066bab76ad07", "name": "Commented-code block (5 lines) in src/app/api/admin/match/send-intro/route.test.ts:52", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/match/send-intro/route.test.ts:52"}, "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-4375c391ba23bfdc", "name": "Commented-code block (5 lines) in src/app/api/admin/match/decisions/route.ts:46", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/match/decisions/route.ts:46"}, "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-d46ef07e5295774c", "name": "Commented-code block (6 lines) in src/app/api/admin/match/decisions/route.test.ts:236", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/admin/match/decisions/route.test.ts:236"}, "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-a632ab7c4c30b19d", "name": "Commented-code block (5 lines) in src/app/api/admin/match/allocators/route.ts:16", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/match/allocators/route.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-5582d978048e3331", "name": "Commented-code block (10 lines) in src/app/api/admin/partner-import/route.ts:88", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/api/admin/partner-import/route.ts:88"}, "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-f5f7f083fbc0cde6", "name": "Commented-code block (5 lines) in src/app/api/admin/partner-import/route.test.ts:392", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/partner-import/route.test.ts:392"}, "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-78e24b94dc3cb975", "name": "Commented-code block (5 lines) in src/app/api/admin/for-quants-leads/process/route.ts:18", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/for-quants-leads/process/route.ts:18"}, "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-46f3016249ffecbf", "name": "Commented-code block (6 lines) in src/app/api/admin/for-quants-leads/process/route.test.ts:188", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/admin/for-quants-leads/process/route.test.ts:188"}, "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-1000834d48ba5f03", "name": "Commented-code block (13 lines) in src/app/api/admin/notify-submission/route.ts:1", "shortDescription": {"text": "Commented-code block (13 lines) in src/app/api/admin/notify-submission/route.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-e997a3a7cca1890f", "name": "Commented-code block (5 lines) in src/app/api/admin/notify-submission/route.test.ts:182", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/notify-submission/route.test.ts:182"}, "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-7955bb22a4cdd2f3", "name": "Commented-code block (8 lines) in src/app/api/admin/deletion-requests/[id]/reject/route.ts:73", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/api/admin/deletion-requests/[id]/reject/route.ts:73"}, "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-db544c120cdb1856", "name": "Commented-code block (7 lines) in src/app/api/admin/deletion-requests/[id]/reject/route.test.ts:206", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/admin/deletion-requests/[id]/reject/route.test.ts:206"}, "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-de2f5f15393266ba", "name": "Commented-code block (9 lines) in src/app/api/admin/deletion-requests/[id]/approve/route.ts:85", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/api/admin/deletion-requests/[id]/approve/route.ts:85"}, "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-5f1d7cce76991e04", "name": "Commented-code block (10 lines) in src/app/api/admin/deletion-requests/[id]/approve/route.test.ts:111", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/api/admin/deletion-requests/[id]/approve/route.test.ts:111"}, "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-f6a565e8e9989d3a", "name": "Commented-code block (6 lines) in src/app/api/admin/allocators/[id]/holdings/route.ts:36", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/admin/allocators/[id]/holdings/route.ts:36"}, "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-dc59092ca84947c1", "name": "Commented-code block (5 lines) in src/app/api/admin/allocators/[id]/holdings/route.test.ts:129", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/allocators/[id]/holdings/route.test.ts:129"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-85581a626fa7cd7a", "name": "Commented-code block (13 lines) in src/app/api/demo/match/[allocator_id]/route.ts:24", "shortDescription": {"text": "Commented-code block (13 lines) in src/app/api/demo/match/[allocator_id]/route.ts:24"}, "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-2539807c84746568", "name": "Commented-code block (5 lines) in src/app/api/demo/match/[allocator_id]/route.test.ts:121", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/demo/match/[allocator_id]/route.test.ts:121"}, "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-7ea02f121649f1b6", "name": "Commented-code block (5 lines) in src/app/api/portfolio-strategies/alias/route.ts:57", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/portfolio-strategies/alias/route.ts:57"}, "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-b1f3dd206fc5e7bb", "name": "Commented-code block (5 lines) in src/app/api/portfolio-strategies/alias/route.test.ts:286", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/portfolio-strategies/alias/route.test.ts:286"}, "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-b9a4e5a44173ec80", "name": "Commented-code block (13 lines) in src/app/api/attestation/route.ts:12", "shortDescription": {"text": "Commented-code block (13 lines) in src/app/api/attestation/route.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-227d9085a1b22959", "name": "Commented-code block (5 lines) in src/app/api/attestation/route.test.ts:41", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/attestation/route.test.ts:41"}, "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-f2f740caead5fef4", "name": "Commented-code block (7 lines) in src/app/api/strategies/finalize-wizard/route.ts:224", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/strategies/finalize-wizard/route.ts:224"}, "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-2beec92d3b92585c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/strategies/finalize-wizard/route.ts:81", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/strategies/finalize-wizard/route.ts:81"}, "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-f0b3e9b11e7cc2df", "name": "Commented-code block (5 lines) in src/app/api/strategies/finalize-wizard/route.test.ts:82", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/strategies/finalize-wizard/route.test.ts:82"}, "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-6b753f7b178a27b8", "name": "Commented-code block (5 lines) in src/app/api/strategies/draft/[id]/route.ts:59", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/strategies/draft/[id]/route.ts:59"}, "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-60c05541325399fd", "name": "Commented-code block (10 lines) in src/app/api/strategies/draft/[id]/route.test.ts:311", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/api/strategies/draft/[id]/route.test.ts:311"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-70fdf3e046cb8ce7", "name": "Commented-code block (10 lines) in src/app/api/strategies/browse/route.ts:99", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/api/strategies/browse/route.ts:99"}, "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-cc03589f5fb20bae", "name": "Commented-code block (5 lines) in src/app/api/strategies/browse/route.test.ts:239", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/strategies/browse/route.test.ts:239"}, "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-0dd0118dc87c0ba5", "name": "Commented-code block (6 lines) in src/app/api/strategies/csv-validate/route.ts:73", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/strategies/csv-validate/route.ts:73"}, "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-6fa9127aa52154f3", "name": "Commented-code block (9 lines) in src/app/api/strategies/create-with-key/route.audit.test.ts:94", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/api/strategies/create-with-key/route.audit.test.ts:94"}, "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-bafa583b3ff6f97d", "name": "Commented-code block (10 lines) in src/app/api/strategies/create-with-key/route.ts:120", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/api/strategies/create-with-key/route.ts:120"}, "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-691d36d9c75a8d27", "name": "Commented-code block (5 lines) in src/app/api/strategies/create-with-key/route.test.ts:44", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/strategies/create-with-key/route.test.ts:44"}, "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-4ca32d0d106b646d", "name": "Commented-code block (6 lines) in src/app/api/strategies/csv-finalize/route.ts:54", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/strategies/csv-finalize/route.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-d8928517d1de3486", "name": "Commented-code block (9 lines) in src/app/api/portfolio-alerts/route.test.ts:362", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/api/portfolio-alerts/route.test.ts:362"}, "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-c2cf983843dfc849", "name": "Commented-code block (9 lines) in src/app/api/keys/[id]/permissions/route.ts:161", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/api/keys/[id]/permissions/route.ts:161"}, "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-89ccbeac312c1afa", "name": "Commented-code block (5 lines) in src/app/api/keys/[id]/permissions/route.test.ts:333", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/keys/[id]/permissions/route.test.ts:333"}, "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-63825484bd158f4f", "name": "Commented-code block (5 lines) in src/app/api/keys/sync/route.ts:63", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/keys/sync/route.ts:63"}, "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-7346e82560030b4f", "name": "Commented-code block (6 lines) in src/app/api/keys/sync/route.test.ts:74", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/keys/sync/route.test.ts:74"}, "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-dde7a3c010555f83", "name": "Commented-code block (10 lines) in src/app/api/keys/validate-and-encrypt/route.ts:42", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/api/keys/validate-and-encrypt/route.ts:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6c6cbb822f1418b9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/keys/validate-and-encrypt/route.ts:79", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/keys/validate-and-encrypt/route.ts:79"}, "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-806e801afeaf39cc", "name": "Commented-code block (6 lines) in src/app/api/match/decisions/holding/route.ts:115", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/match/decisions/holding/route.ts:115"}, "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-85f3f8c2d50b781e", "name": "Commented-code block (5 lines) in src/app/api/webhooks/resend/route.ts:11", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/webhooks/resend/route.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-46f52b37c5215203", "name": "Commented-code block (5 lines) in src/app/api/simulator/route.ts:166", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/simulator/route.ts:166"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6222b6e8c0afa210", "name": "Commented-code block (7 lines) in src/app/api/simulator/route.test.ts:130", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/simulator/route.test.ts:130"}, "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-52e4e0a1c6fc7445", "name": "Commented-code block (6 lines) in src/app/api/alerts/ack/route.ts:121", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/alerts/ack/route.ts:121"}, "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-177528ffd7570a3d", "name": "Commented-code block (6 lines) in src/app/api/preferences/route.ts:50", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/preferences/route.ts:50"}, "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-3adb968e9694e2c6", "name": "Commented-code block (5 lines) in src/app/api/preferences/route.test.ts:62", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/preferences/route.test.ts:62"}, "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-d8dbb1310ad3533d", "name": "Commented-code block (5 lines) in src/app/api/intro/route.ts:223", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/intro/route.ts:223"}, "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-890dde166ec22e32", "name": "Commented-code block (5 lines) in src/app/api/intro/route.test.ts:22", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/intro/route.test.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-598c0d19a4ca2ca3", "name": "Commented-code block (5 lines) in src/app/api/alert-digest/route.ts:65", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/alert-digest/route.ts:65"}, "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-ecd1f7a785ffc154", "name": "Commented-code block (6 lines) in src/app/api/alert-digest/route.test.ts:150", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/alert-digest/route.test.ts:150"}, "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-c69f9fcdee8c41b8", "name": "Commented-code block (5 lines) in src/app/api/me/audit-log/export/route.test.ts:440", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/me/audit-log/export/route.test.ts:440"}, "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-53d04be5665809eb", "name": "Commented-code block (6 lines) in src/app/api/watchlist/[strategyId]/route.ts:51", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/watchlist/[strategyId]/route.ts:51"}, "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-c2718b9526c19ece", "name": "Commented-code block (7 lines) in src/app/api/watchlist/[strategyId]/route.test.ts:24", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/watchlist/[strategyId]/route.test.ts:24"}, "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-0b717e5ca9f20782", "name": "Commented-code block (8 lines) in src/app/api/for-quants-lead/route.ts:161", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/api/for-quants-lead/route.ts:161"}, "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-8cafbccf2354cd44", "name": "Commented-code block (5 lines) in src/app/api/for-quants-lead/route.gaps.test.ts:252", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/for-quants-lead/route.gaps.test.ts:252"}, "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-564632b87830adc7", "name": "Commented-code block (8 lines) in src/app/api/for-quants-lead/route.test.ts:255", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/api/for-quants-lead/route.test.ts:255"}, "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-88a071e663abf94b", "name": "Commented-code block (7 lines) in src/app/api/trades/upload/route.ts:149", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/trades/upload/route.ts:149"}, "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-2897edcbace8d45e", "name": "Commented-code block (5 lines) in src/app/api/trades/upload/route.test.ts:85", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/trades/upload/route.test.ts:85"}, "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-484d8f5208c73cd7", "name": "Commented-code block (7 lines) in src/app/api/debug-key-flow/route.ts:13", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/debug-key-flow/route.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-c0ae54c31c083666", "name": "Commented-code block (8 lines) in src/app/api/debug-key-flow/rate-limit.ts:5", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/api/debug-key-flow/rate-limit.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-d6d90eb2dd675ec2", "name": "Commented-code block (7 lines) in src/app/api/debug-key-flow/route.test.ts:224", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/debug-key-flow/route.test.ts:224"}, "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-3b0a4dee27cc75e9", "name": "Commented-code block (6 lines) in src/app/portfolio-pdf/[id]/page.tsx:142", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/portfolio-pdf/[id]/page.tsx:142"}, "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-1e75a489b63c4791", "name": "Commented-code block (5 lines) in src/app/strategy/[id]/page.test.tsx:55", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/strategy/[id]/page.test.tsx:55"}, "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-76d3377b4c154d49", "name": "Commented-code block (8 lines) in src/app/factsheet/[id]/tearsheet/page.tsx:17", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/factsheet/[id]/tearsheet/page.tsx: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-e39ee092a3978c27", "name": "Commented-code block (6 lines) in src/app/factsheet/[id]/tearsheet/page.test.tsx:219", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/factsheet/[id]/tearsheet/page.test.tsx:219"}, "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-426c00cef9734ca0", "name": "Commented-code block (6 lines) in src/app/factsheet/[id]/v2/format.ts:99", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/factsheet/[id]/v2/format.ts:99"}, "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-2409ac98dd2c21b1", "name": "Commented-code block (6 lines) in src/app/factsheet/[id]/v2/HistogramChart.tsx:43", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/factsheet/[id]/v2/HistogramChart.tsx:43"}, "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-b7e3517f5640e5e3", "name": "Commented-code block (5 lines) in src/app/factsheet/[id]/v2/RangePicker.tsx:48", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/factsheet/[id]/v2/RangePicker.tsx:48"}, "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-fd62c3ecbc00fad3", "name": "Commented-code block (6 lines) in src/app/factsheet/[id]/v2/TimeSeriesChart.tsx:616", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/factsheet/[id]/v2/TimeSeriesChart.tsx:616"}, "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-c5a3f6096bf1e34c", "name": "Commented-code block (7 lines) in src/app/factsheet/[id]/v2/format.test.ts:68", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/factsheet/[id]/v2/format.test.ts:68"}, "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-03ec64b01d3363ef", "name": "Legacy-named symbol `factsheet_v2_share_copy` in src/app/factsheet/[id]/v2/FactsheetView.tsx:800", "shortDescription": {"text": "Legacy-named symbol `factsheet_v2_share_copy` in src/app/factsheet/[id]/v2/FactsheetView.tsx:800"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0339dec704cc2a4c", "name": "Commented-code block (7 lines) in src/app/factsheet/[id]/v2/FactsheetView.tsx:163", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/factsheet/[id]/v2/FactsheetView.tsx:163"}, "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-6d69f0134b6ee83a", "name": "Commented-code block (11 lines) in src/app/factsheet/[id]/v2/factsheet-context.tsx:212", "shortDescription": {"text": "Commented-code block (11 lines) in src/app/factsheet/[id]/v2/factsheet-context.tsx:212"}, "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-0a0524d5f6e18b52", "name": "Commented-code block (5 lines) in src/app/factsheet/[id]/v2/chart-configs.ts:237", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/factsheet/[id]/v2/chart-configs.ts:237"}, "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-0de3b5272e166b66", "name": "Commented-code block (5 lines) in src/app/factsheet/[id]/v2/CollapsibleSection.test.tsx:109", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/factsheet/[id]/v2/CollapsibleSection.test.tsx:109"}, "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-0f9e77abd50f8359", "name": "Commented-code block (7 lines) in src/app/factsheet/[id]/v2/page.tsx:60", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/factsheet/[id]/v2/page.tsx:60"}, "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-20433a0ecbab5f08", "name": "Commented-code block (7 lines) in src/app/factsheet/[id]/v2/CollapsibleSection.tsx:43", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/factsheet/[id]/v2/CollapsibleSection.tsx:43"}, "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-b11d827eb52be6a1", "name": "Legacy-named symbol `factsheet_v2_share_copy` in src/app/factsheet/[id]/v2/factsheet-analytics.ts:28", "shortDescription": {"text": "Legacy-named symbol `factsheet_v2_share_copy` in src/app/factsheet/[id]/v2/factsheet-analytics.ts:28"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f59d0e435506d5a4", "name": "Commented-code block (6 lines) in src/app/demo/page.tsx:1", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/demo/page.tsx: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-0c91fdf3b3dd5b7c", "name": "Commented-code block (7 lines) in src/app/auth/callback/route.ts:66", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/auth/callback/route.ts:66"}, "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-c30bf591bc20a01e", "name": "Commented-code block (6 lines) in src/app/auth/callback/route.test.ts:155", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/auth/callback/route.test.ts:155"}, "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-2a4a47b98b12acd4", "name": "Commented-code block (6 lines) in src/app/for-quants/RequestCallModal.test.tsx:179", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/for-quants/RequestCallModal.test.tsx:179"}, "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-675ba0926e5d5c46", "name": "Commented-code block (6 lines) in src/app/for-quants/RequestCallModal.tsx:62", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/for-quants/RequestCallModal.tsx:62"}, "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-24e1b2dc5ece3d6f", "name": "Legacy-named symbol `for_quants_view_fired_v1` in src/app/for-quants/ForQuantsCtas.tsx:41", "shortDescription": {"text": "Legacy-named symbol `for_quants_view_fired_v1` in src/app/for-quants/ForQuantsCtas.tsx:41"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3d73a2a0da771395", "name": "Commented-code block (8 lines) in src/app/for-quants/ForQuantsCtas.tsx:51", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/for-quants/ForQuantsCtas.tsx:51"}, "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-78f470d5310470d2", "name": "Legacy-named symbol `for_quants_view_fired_v1` in src/app/for-quants/ForQuantsCtas.test.tsx:12", "shortDescription": {"text": "Legacy-named symbol `for_quants_view_fired_v1` in src/app/for-quants/ForQuantsCtas.test.tsx:12"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ca62256af5ea5898", "name": "Commented-code block (5 lines) in src/app/for-quants/ForQuantsCtas.test.tsx:98", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/for-quants/ForQuantsCtas.test.tsx:98"}, "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-26582d098270bca1", "name": "Commented-code block (10 lines) in src/app/(dashboard)/layout.tsx:13", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/layout.tsx: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-5b21fc0c6f8b3430", "name": "Commented-code block (6 lines) in src/app/(dashboard)/admin/page.tsx:50", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/admin/page.tsx:50"}, "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-43b7365429091f54", "name": "Commented-code block (6 lines) in src/app/(dashboard)/admin/users/page.tsx:29", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/admin/users/page.tsx:29"}, "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-5e503d83aa025002", "name": "Commented-code block (5 lines) in src/app/(dashboard)/admin/csv-status/page.tsx:34", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/admin/csv-status/page.tsx:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b49d2614f126f8ec", "name": "Commented-code block (5 lines) in src/app/(dashboard)/admin/deletion-requests/page.tsx:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/admin/deletion-requests/page.tsx: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-3e0238900acb6f70", "name": "Commented-code block (9 lines) in src/app/(dashboard)/admin/compute-jobs/page.tsx:19", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/admin/compute-jobs/page.tsx:19"}, "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-2d90a3ce916a5068", "name": "Commented-code block (6 lines) in src/app/(dashboard)/profile/page.tsx:21", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/profile/page.tsx:21"}, "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-bc0cb82b4e9a6907", "name": "Commented-code block (5 lines) in src/app/(dashboard)/discovery/[slug]/page.tsx:27", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/discovery/[slug]/page.tsx: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-542448046d89ef0c", "name": "Commented-code block (5 lines) in src/app/(dashboard)/discovery/[slug]/[strategyId]/page.tsx:31", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/discovery/[slug]/[strategyId]/page.tsx:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1f71569532fef4ba", "name": "Commented-code block (8 lines) in src/app/(dashboard)/strategies/page.wizard-draft-banner.test.tsx:94", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/strategies/page.wizard-draft-banner.test.tsx:94"}, "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-f25965b60b47b802", "name": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/page.tsx:17", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/page.tsx: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-a1c3571b105da0fa", "name": "Commented-code block (8 lines) in src/app/(dashboard)/strategies/[id]/edit/page.test.tsx:68", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/strategies/[id]/edit/page.test.tsx:68"}, "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-9ef9983ed98a75f1", "name": "Commented-code block (8 lines) in src/app/(dashboard)/strategies/new/wizard/WizardChrome.test.tsx:8", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/strategies/new/wizard/WizardChrome.test.tsx: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-e461598a7e82509c", "name": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/WizardClient.tsx:101", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/WizardClient.tsx:101"}, "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-31fab28023a5c257", "name": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/WizardClient.test.tsx:223", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/WizardClient.test.tsx:223"}, "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-401237acebcb0587", "name": "Commented-code block (10 lines) in src/app/(dashboard)/strategies/new/wizard/page.tsx:52", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/strategies/new/wizard/page.tsx:52"}, "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-e8c3411966ce3f20", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/strategies/new/wizard/steps/ConnectKeyStep.test.tsx:8", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/strategies/new/wizard/steps/ConnectKeyStep.test.tsx:8"}, "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-f95d48f5e32f59fe", "name": "Commented-code block (5 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvUploadStep.tsx:146", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvUploadStep.tsx:146"}, "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-17d8c414639e4057", "name": "Commented-code block (5 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SubmitStep.test.tsx:158", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SubmitStep.test.tsx:158"}, "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-5dcad9bb08283625", "name": "Commented-code block (16 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SubmitStep.tsx:105", "shortDescription": {"text": "Commented-code block (16 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SubmitStep.tsx:105"}, "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-bdd9433a313362b3", "name": "Commented-code block (5 lines) in src/app/(dashboard)/strategies/new/wizard/steps/ConnectKeyStep.tsx:115", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/strategies/new/wizard/steps/ConnectKeyStep.tsx:115"}, "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-d1f8a4be1ab4e5dd", "name": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/steps/MetadataStep.tsx:71", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/steps/MetadataStep.tsx:71"}, "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-c318537f226017b9", "name": "Commented-code block (10 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.test.ts:4", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.test.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-2ac5d473a658fed6", "name": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvPreviewStep.test.ts:4", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvPreviewStep.test.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-ca7d1a46c5ee5317", "name": "Commented-code block (9 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvSubmitStep.test.tsx:6", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvSubmitStep.test.tsx:6"}, "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-5163cab9660f39bf", "name": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.render.test.tsx:26", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.render.test.tsx:26"}, "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-a2d2b59505458257", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.render.tes", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.render.test.tsx:142"}, "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-c91a969f62267f87", "name": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvUploadStep.test.tsx:7", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvUploadStep.test.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-15e80e0ba1053529", "name": "Commented-code block (5 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvSubmitStep.tsx:105", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvSubmitStep.tsx:105"}, "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-22f12ef82220c30d", "name": "Commented-code block (10 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.tsx:179", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.tsx:179"}, "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-7bf9720b2ee8b092", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.tsx:207", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.tsx:207"}, "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-2be268f13aab5001", "name": "Commented-code block (8 lines) in src/app/(dashboard)/scenarios/page.tsx:37", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/scenarios/page.tsx:37"}, "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-99bcb8e959def4fa", "name": "Commented-code block (12 lines) in src/app/(dashboard)/compare/lib/holding-compare-adapter.ts:161", "shortDescription": {"text": "Commented-code block (12 lines) in src/app/(dashboard)/compare/lib/holding-compare-adapter.ts:161"}, "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-91a89976622a925d", "name": "Commented-code block (9 lines) in src/app/(dashboard)/compare/lib/holding-compare-adapter.test.ts:102", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/compare/lib/holding-compare-adapter.test.ts:102"}, "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-463ae966a0c4b7cf", "name": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/AllocationDashboardV2.tsx:45", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/AllocationDashboardV2.tsx:45"}, "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-7fccd80b840d1bb1", "name": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/AllocationContext.tsx:95", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/AllocationContext.tsx:95"}, "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-64cf5d9c82a592b8", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/AllocationDashboardV2.staleness.test.tsx:16", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/AllocationDashboardV2.staleness.test.tsx: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-e8ef8e286f004913", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/MandateTabPanel.tsx:144", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/MandateTabPanel.tsx:144"}, "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-c0abf54f9b683c6c", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/AllocationContext.test.tsx:127", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/AllocationContext.test.tsx:127"}, "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-816ac67a744e3f16", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/ScenarioFlaggedHoldingsList.tsx:30", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/ScenarioFlaggedHoldingsList.tsx:30"}, "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-e6f5e4a3bf66081f", "name": "Legacy-named symbol `ui_v2` in src/app/(dashboard)/allocations/AllocationsTabs.tsx:137", "shortDescription": {"text": "Legacy-named symbol `ui_v2` in src/app/(dashboard)/allocations/AllocationsTabs.tsx:137"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0d176ec8c757584b", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/AllocationsTabs.tsx:27", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/AllocationsTabs.tsx: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-e78324fe5302dd46", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/page.tsx:43", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/page.tsx:43"}, "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-d58ddb34870abbe5", "name": "Legacy-named symbol `ui_v2` in src/app/(dashboard)/allocations/AllocationsTabs.scenario-composer.test.tsx:8", "shortDescription": {"text": "Legacy-named symbol `ui_v2` in src/app/(dashboard)/allocations/AllocationsTabs.scenario-composer.test.tsx:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5b793c6f038cd5d2", "name": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/AllocationsTabs.scenario-composer.test.tsx:369", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/AllocationsTabs.scenario-composer.test.tsx:369"}, "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-35364a0be6383ccc", "name": "Legacy-named symbol `ui_v2` in src/app/(dashboard)/allocations/AllocationsTabs.test.tsx:614", "shortDescription": {"text": "Legacy-named symbol `ui_v2` in src/app/(dashboard)/allocations/AllocationsTabs.test.tsx:614"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0cd7016afe527d95", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/AllocationsTabs.test.tsx:45", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/AllocationsTabs.test.tsx:45"}, "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-ab68867bc07c1625", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/AllocationDashboardV2.baseline-unknown.test.tsx:10", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/AllocationDashboardV2.baseline-unknown.test.tsx: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-29a3ff6aae074185", "name": "Legacy-named symbol `migrateLegacy` in src/app/(dashboard)/allocations/hooks/useExcludedKeyIds.ts:61", "shortDescription": {"text": "Legacy-named symbol `migrateLegacy` in src/app/(dashboard)/allocations/hooks/useExcludedKeyIds.ts:61"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0de5ea8f06c3bf34", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/hooks/useExcludedKeyIds.ts:38", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/hooks/useExcludedKeyIds.ts:38"}, "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-d51ba75a2f33c8f3", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/hooks/useScenarioState.test.tsx:525", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/hooks/useScenarioState.test.tsx:525"}, "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-a72ebc283485d9b0", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/hooks/useScenarioState.ts:124", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/hooks/useScenarioState.ts:124"}, "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-a6476a99adb8ca74", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/context/TweaksContext.tsx:208", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/context/TweaksContext.tsx:208"}, "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-d5d65af014a27c0c", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/index.contract.test.ts:9", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/index.contract.test.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-72a13bf3c60b0c29", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/intelligence/RegimeDetector.tsx:23", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/intelligence/RegimeDetector.tsx:23"}, "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-fc4d570833252625", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/intelligence/intelligence.test.tsx:63", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/intelligence/intelligence.test.tsx:63"}, "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-5492f0183f5751c0", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/performance/equity-curve.equitydailypoints.tes", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/performance/equity-curve.equitydailypoints.test.tsx:109"}, "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-be29ed75820a872d", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.tweaks.test.tsx:11", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.tweaks.test.tsx: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-88378357b1c7067a", "name": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.test.tsx:17", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.test.tsx: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-8f275ffe5c533ad5", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.boundary.test.tsx:11", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.boundary.test.tsx: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-e10fbbaf335d803e", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChartWidget.header.test.tsx:", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChartWidget.header.test.tsx: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-d00b9ddcaa1724e6", "name": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.tsx:24", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.tsx:24"}, "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-a6b50acc735b844a", "name": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.scenario.test.tsx:11", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.scenario.test.tsx: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-8314fadc57d9ae3f", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/widgets/performance/DrawdownChart.tsx:50", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/widgets/performance/DrawdownChart.tsx:50"}, "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-68a2e189a060c715", "name": "Legacy-named symbol `widget_state_v2` in src/app/(dashboard)/allocations/widgets/performance/EquityChart.v2.test.tsx:9", "shortDescription": {"text": "Legacy-named symbol `widget_state_v2` in src/app/(dashboard)/allocations/widgets/performance/EquityChart.v2.test.tsx:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-747ebe6491aee64b", "name": "Commented-code block (14 lines) in src/app/(dashboard)/allocations/widgets/performance/DrawdownChart.scenario.test.tsx:2", "shortDescription": {"text": "Commented-code block (14 lines) in src/app/(dashboard)/allocations/widgets/performance/DrawdownChart.scenario.test.tsx:29"}, "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-1e6bba91c80a8ee6", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/risk/risk.test.tsx:159", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/risk/risk.test.tsx:159"}, "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-29dce74858c37ea0", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/widgets/risk/CorrelationMatrix.tsx:12", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/widgets/risk/CorrelationMatrix.tsx: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-aa39f29c34ec7f79", "name": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/widgets/risk/RiskDecomposition.boundary.test.tsx:5", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/widgets/risk/RiskDecomposition.boundary.test.tsx: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-a45875528d1a5bf3", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/lib/widget-boundary.tsx:142", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/lib/widget-boundary.tsx:142"}, "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-6c1c2c9fb8c6de37", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/lib/composite-returns.ts:33", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/lib/composite-returns.ts:33"}, "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-41f2c33de0c08066", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/outcomes/OutcomesWidget.tsx:265", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/outcomes/OutcomesWidget.tsx:265"}, "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-c06ea89882e6a03f", "name": "Legacy-named symbol `sOld` in src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:321", "shortDescription": {"text": "Legacy-named symbol `sOld` in src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:321"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ebe39441674a1ce7", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:21", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:21"}, "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-9963507879127038", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:435", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:435"}, "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-f57d582717bc99a4", "name": "Legacy-named symbol `widget_state_v2` in src/app/(dashboard)/allocations/widgets/outcomes/OutcomesWidget.v2.test.tsx:21", "shortDescription": {"text": "Legacy-named symbol `widget_state_v2` in src/app/(dashboard)/allocations/widgets/outcomes/OutcomesWidget.v2.test.tsx:21"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5a72d972702341a9", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.sub-row.errors.test.tsx:21", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.sub-row.errors.test.tsx:21"}, "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-211c1b1eb4475e1d", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.test.tsx:318", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.test.tsx:318"}, "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-a4bd571d4282ef1b", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.test.tsx:3", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.test.tsx:350"}, "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-aa10aed6efbba129", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.sub-row.test.tsx:191", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.sub-row.test.tsx:191"}, "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-f9ce82d9c545621f", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/ScenarioFooter.tsx:89", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/ScenarioFooter.tsx:89"}, "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-1cdf6f1ad661bd9a", "name": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:47", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-60b1900a69de0f4d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:93", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:93"}, "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-f4ed7d4f71640522", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/BridgeWidget.tsx:108", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/BridgeWidget.tsx:108"}, "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-4a8ef7403c225afe", "name": "Legacy-named symbol `widget_state_v2` in src/app/(dashboard)/allocations/components/WidgetState.tsx:21", "shortDescription": {"text": "Legacy-named symbol `widget_state_v2` in src/app/(dashboard)/allocations/components/WidgetState.tsx:21"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f55ac39da4873276", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/components/WidgetState.tsx:43", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/components/WidgetState.tsx:43"}, "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-d5b834e6096aaa32", "name": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/components/ScenarioComposer.tsx:307", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/components/ScenarioComposer.tsx:307"}, "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-01ec1ab23d11a553", "name": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/components/CustomRangePicker.test.tsx:9", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/components/CustomRangePicker.test.tsx: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-766c3a7d181188ad", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.test.tsx:728", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.test.tsx:728"}, "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-aee26c7a51a8345a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.test.tsx:7", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.test.tsx:703"}, "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-539248f3f378f244", "name": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/components/ScenarioComposer.test.tsx:400", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/components/ScenarioComposer.test.tsx:400"}, "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-9e45cef4156b2922", "name": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/components/KpiStrip.test.tsx:236", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/components/KpiStrip.test.tsx:236"}, "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-442f4b83c18ae036", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/components/BridgeDrawer.tsx:115", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/components/BridgeDrawer.tsx:115"}, "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-ffc22087fb84e1bd", "name": "Commented-code block (11 lines) in src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.tsx:42", "shortDescription": {"text": "Commented-code block (11 lines) in src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.tsx:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-106c978f382f91b6", "name": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.banner-dismiss.test.tsx:10", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.banner-dismiss.test.tsx: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-05848f061cbec949", "name": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/components/BridgeWidget.test.tsx:10", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/components/BridgeWidget.test.tsx: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-77f2bf4b5c700ac5", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/WidgetState.test.tsx:121", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/WidgetState.test.tsx:121"}, "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-7eedc011138d940f", "name": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/BridgeWidget.variants.test.tsx:6", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/BridgeWidget.variants.test.tsx:6"}, "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-394b706829914d04", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.tsx:184", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.tsx:184"}, "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-ebe781927d74fbfa", "name": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/components/BridgeDrawer.test.tsx:300", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/components/BridgeDrawer.test.tsx:300"}, "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-e167e6cf4ebc3747", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/OutcomeForm.test.tsx:6", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/OutcomeForm.test.tsx:6"}, "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-372210534a46a04e", "name": "Commented-code block (17 lines) in src/app/(dashboard)/allocations/components/KpiStrip.tsx:307", "shortDescription": {"text": "Commented-code block (17 lines) in src/app/(dashboard)/allocations/components/KpiStrip.tsx:307"}, "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-7754618184e7b498", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.test.tsx:198", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.test.tsx:198"}, "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-bd8c8598f8859c6a", "name": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/HoldingDetail.test.tsx:6", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/HoldingDetail.test.tsx:6"}, "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-dbd339c71809ddf5", "name": "Commented-code block (15 lines) in src/app/(dashboard)/allocations/components/CustomRangePicker.tsx:18", "shortDescription": {"text": "Commented-code block (15 lines) in src/app/(dashboard)/allocations/components/CustomRangePicker.tsx:18"}, "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-cf808986377d2082", "name": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/KpiStrip.scenario.test.tsx:325", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/KpiStrip.scenario.test.tsx:325"}, "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-56a2e19290e5d06f", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:144", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:144"}, "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-cb475e8bfbc319db", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:69", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:69"}, "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-3dfab3ef63709d18", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/HoldingDetail.tsx:77", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/HoldingDetail.tsx:77"}, "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-3ff9fb39cb7b955d", "name": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/components/BridgeOutcomeBanner.test.tsx:5", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/components/BridgeOutcomeBanner.test.tsx: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-d86a9e0c3d344ccb", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/Tweaks.test.tsx:254", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/Tweaks.test.tsx:254"}, "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-1308f47d73f03ff1", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/lib/drawdown.test.ts:10", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/lib/drawdown.test.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-47e95d23cd56eca7", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/lib/scenario-adapter.ts:176", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/lib/scenario-adapter.ts:176"}, "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-1874057f7a4ee83b", "name": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/lib/mandate-fit.test.ts:161", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/lib/mandate-fit.test.ts:161"}, "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-c5b37f4eb6dd4c10", "name": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/lib/scenario-state.test.ts:180", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/lib/scenario-state.test.ts:180"}, "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-d64baae267eb4c60", "name": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/lib/scenario-state.ts:262", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/lib/scenario-state.ts:262"}, "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-fdb568039ba988e9", "name": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/lib/holding-outcome-adapter.ts:132", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/lib/holding-outcome-adapter.ts:132"}, "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-0033a4616b155b3b", "name": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/lib/holdings-adapter.test.ts:55", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/lib/holdings-adapter.test.ts:55"}, "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-f15780e8ee988f76", "name": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/lib/holding-outcome-adapter.test.ts:160", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/lib/holding-outcome-adapter.test.ts:160"}, "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-96c24d6cc05db96c", "name": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/lib/scenario-state.localStorage.test.ts:99", "shortDescription": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/lib/scenario-state.localStorage.test.ts:99"}, "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-932503fc717b850b", "name": "Commented-code block (26 lines) in src/app/(dashboard)/allocations/lib/scenario-adapter.test.ts:365", "shortDescription": {"text": "Commented-code block (26 lines) in src/app/(dashboard)/allocations/lib/scenario-adapter.test.ts:365"}, "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-05152c106e7ddbe7", "name": "Commented-code block (6 lines) in src/app/(auth)/onboarding/page.tsx:9", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/(auth)/onboarding/page.tsx: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-6a6e4b228e20b5c7", "name": "Commented-code block (7 lines) in src/hooks/useLazyPanelMetrics.ts:98", "shortDescription": {"text": "Commented-code block (7 lines) in src/hooks/useLazyPanelMetrics.ts:98"}, "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-cf767564637945d8", "name": "Commented-code block (5 lines) in src/hooks/useLazyPanelMetrics.test.ts:320", "shortDescription": {"text": "Commented-code block (5 lines) in src/hooks/useLazyPanelMetrics.test.ts:320"}, "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-884f8280861bd95a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/hooks/useLazyPanelMetrics.test.ts:659", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/hooks/useLazyPanelMetrics.test.ts:659"}, "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-0115048a37aa6257", "name": "Commented-code block (6 lines) in src/components/landing/VerificationSection.tsx:8", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/landing/VerificationSection.tsx: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-cb89075a807a1f6e", "name": "Commented-code block (6 lines) in src/components/charts/CorrelationWithBenchmark.tsx:60", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/charts/CorrelationWithBenchmark.tsx:60"}, "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-7ad88113d95525ef", "name": "Commented-code block (5 lines) in src/components/charts/DailyHeatmap.tsx:281", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/charts/DailyHeatmap.tsx:281"}, "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-f7440cc439b9d3a8", "name": "Commented-code block (5 lines) in src/components/charts/CorrelationWithBenchmark.test.tsx:174", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/charts/CorrelationWithBenchmark.test.tsx:174"}, "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-039560fa0e69b022", "name": "Commented-code block (5 lines) in src/components/strategy/ApiKeyManager.test.tsx:245", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/strategy/ApiKeyManager.test.tsx:245"}, "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-3ae4147eaf4cbfe3", "name": "Commented-code block (5 lines) in src/components/strategy/discovery-selectors.contract.test.tsx:298", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/strategy/discovery-selectors.contract.test.tsx:298"}, "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-6cbb576bfd3b0cca", "name": "Commented-code block (9 lines) in src/components/strategy/MetricPanel.types.test.ts:38", "shortDescription": {"text": "Commented-code block (9 lines) in src/components/strategy/MetricPanel.types.test.ts:38"}, "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-d499bdd1d1de7321", "name": "Commented-code block (9 lines) in src/components/strategy/StrategyTable.tsx:163", "shortDescription": {"text": "Commented-code block (9 lines) in src/components/strategy/StrategyTable.tsx:163"}, "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-fff4faa2aeb52e95", "name": "Commented-code block (6 lines) in src/components/strategy/ApiKeyManager.tsx:39", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/strategy/ApiKeyManager.tsx:39"}, "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-9b25a59c33a6dad4", "name": "Commented-code block (7 lines) in src/components/strategy/StrategyTable.test.tsx:111", "shortDescription": {"text": "Commented-code block (7 lines) in src/components/strategy/StrategyTable.test.tsx:111"}, "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-d98d2682c9e7afbd", "name": "Commented-code block (5 lines) in src/components/strategy/CustomizeDrawer.tsx:51", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/strategy/CustomizeDrawer.tsx:51"}, "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-9cbd4b0725ea4cb8", "name": "Commented-code block (5 lines) in src/components/strategy/StarToggle.test.tsx:216", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/strategy/StarToggle.test.tsx:216"}, "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-f5d7d7fd35be86ec", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy/ManagerIdentityPanel.test.tsx:72", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy/ManagerIdentityPanel.test.tsx:72"}, "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-ae926c6472d4b6db", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy/ManagerIdentityPanel.tsx:16", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy/ManagerIdentityPanel.tsx:16"}, "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-71aa240b06cfcef4", "name": "Commented-code block (5 lines) in src/components/strategy/ApiKeyForm.tsx:41", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/strategy/ApiKeyForm.tsx:41"}, "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-f7cb301905d8d5e2", "name": "Commented-code block (5 lines) in src/components/strategy/SyncProgress.test.ts:38", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/strategy/SyncProgress.test.ts:38"}, "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-a7deae14744aff3a", "name": "Commented-code block (7 lines) in src/components/strategy/PendingIntros.tsx:26", "shortDescription": {"text": "Commented-code block (7 lines) in src/components/strategy/PendingIntros.tsx:26"}, "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-9df882cbdbaba7da", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy/PendingIntros.tsx:29", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy/PendingIntros.tsx:29"}, "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-ec5ceaed55c921ba", "name": "Commented-code block (6 lines) in src/components/strategy/WatchlistTabs.test.tsx:52", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/strategy/WatchlistTabs.test.tsx:52"}, "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-1f644e4baa62daf6", "name": "Commented-code block (5 lines) in src/components/strategy/StrategyForm.test.tsx:165", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/strategy/StrategyForm.test.tsx:165"}, "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-cc17454862530fb6", "name": "Commented-code block (8 lines) in src/components/strategy/FactsheetPreview.test.tsx:177", "shortDescription": {"text": "Commented-code block (8 lines) in src/components/strategy/FactsheetPreview.test.tsx:177"}, "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-a4d7a9efa9f5cc15", "name": "Commented-code block (5 lines) in src/components/strategy/PendingIntros.test.tsx:116", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/strategy/PendingIntros.test.tsx:116"}, "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-9295103ec58266d0", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy/PendingIntros.test.tsx:207", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy/PendingIntros.test.tsx:207"}, "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-3c77e8b012f01373", "name": "Commented-code block (8 lines) in src/components/strategy/CustomizeDrawer.test.tsx:94", "shortDescription": {"text": "Commented-code block (8 lines) in src/components/strategy/CustomizeDrawer.test.tsx:94"}, "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-e370b3c82cd4d8ea", "name": "Commented-code block (6 lines) in src/components/strategy/SyncProgress.tsx:17", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/strategy/SyncProgress.tsx: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-8005bf5b98e2a8ba", "name": "Commented-code block (5 lines) in src/components/notes/HoldingNoteRow.tsx:138", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/notes/HoldingNoteRow.tsx:138"}, "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-cef173c205540df3", "name": "Commented-code block (6 lines) in src/components/notes/HoldingNoteRow.test.tsx:321", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/notes/HoldingNoteRow.test.tsx:321"}, "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-314238626ec220dc", "name": "Commented-code block (5 lines) in src/components/admin/SendIntroPanel.test.tsx:179", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/admin/SendIntroPanel.test.tsx:179"}, "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-b22f0cb1d9f9066b", "name": "Commented-code block (5 lines) in src/components/admin/ForQuantsLeadsTable.tsx:81", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/admin/ForQuantsLeadsTable.tsx:81"}, "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-35a0be81bff5c06a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/admin/MatchQueueIndex.tsx:146", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/admin/MatchQueueIndex.tsx:146"}, "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-d682ba465be5cd14", "name": "Commented-code block (5 lines) in src/components/admin/AllocatorMatchQueue.test.tsx:36", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/admin/AllocatorMatchQueue.test.tsx:36"}, "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-eac1009bd764e54f", "name": "Commented-code block (5 lines) in src/components/admin/ComputeJobsTable.tsx:71", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/admin/ComputeJobsTable.tsx:71"}, "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-bccca4f6f663f592", "name": "Commented-code block (7 lines) in src/components/admin/AdminTabs.tsx:39", "shortDescription": {"text": "Commented-code block (7 lines) in src/components/admin/AdminTabs.tsx:39"}, "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-66d2555a3322d81c", "name": "Commented-code block (6 lines) in src/components/admin/DeletionRequestActions.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/admin/DeletionRequestActions.tsx: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-98430bd99647a4af", "name": "Commented-code block (5 lines) in src/components/admin/AllocatorMatchQueue.tsx:166", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/admin/AllocatorMatchQueue.tsx:166"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4a70d03a0aec5b72", "name": "Commented-code block (8 lines) in src/components/layout/Sidebar.tsx:26", "shortDescription": {"text": "Commented-code block (8 lines) in src/components/layout/Sidebar.tsx:26"}, "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-81c0d91efb823084", "name": "Commented-code block (6 lines) in src/components/layout/Sidebar.test.tsx:223", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/layout/Sidebar.test.tsx:223"}, "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-130d633c73167b9a", "name": "Commented-code block (5 lines) in src/components/layout/MobileSidebarDrawer.tsx:68", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/layout/MobileSidebarDrawer.tsx:68"}, "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-3b86431c5476abf6", "name": "Commented-code block (5 lines) in src/components/discovery/SimulateImpactButton.tsx:88", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/discovery/SimulateImpactButton.tsx:88"}, "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-d6beef5180e63e56", "name": "Commented-code block (5 lines) in src/components/discovery/SimulateImpactButton.test.tsx:61", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/discovery/SimulateImpactButton.test.tsx:61"}, "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-dadc4b5fc24d3d13", "name": "Commented-code block (5 lines) in src/components/scenarios/ScenarioBuilder.tsx:221", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/scenarios/ScenarioBuilder.tsx:221"}, "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-90c4c8f85014f3f6", "name": "Commented-code block (10 lines) in src/components/error/ErrorEnvelope.test.tsx:190", "shortDescription": {"text": "Commented-code block (10 lines) in src/components/error/ErrorEnvelope.test.tsx:190"}, "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-e315d3751f457814", "name": "Commented-code block (6 lines) in src/components/error/ErrorEnvelope.tsx:10", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/error/ErrorEnvelope.tsx: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-f4cb71f46cd1673a", "name": "Commented-code block (6 lines) in src/components/strategy-v2/StrategyV2Shell.test.tsx:274", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/strategy-v2/StrategyV2Shell.test.tsx:274"}, "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-afa8c5e19882491e", "name": "Commented-code block (10 lines) in src/components/strategy-v2/HeadlineMetricsPanel.tsx:94", "shortDescription": {"text": "Commented-code block (10 lines) in src/components/strategy-v2/HeadlineMetricsPanel.tsx:94"}, "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-74b9791a1dd5a124", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy-v2/HeadlineMetricsPanel.tsx:13", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy-v2/HeadlineMetricsPanel.tsx:13"}, "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-3f8816f0d4425a7b", "name": "Commented-code block (5 lines) in src/components/strategy-v2/TradeAndPositionPanel.tsx:236", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/strategy-v2/TradeAndPositionPanel.tsx:236"}, "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-6c4eeb2d1e83a4d0", "name": "Commented-code block (5 lines) in src/components/strategy-v2/HeadlineMetricsPanel.test.tsx:282", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/strategy-v2/HeadlineMetricsPanel.test.tsx:282"}, "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-c5167d066a4269ca", "name": "Commented-code block (6 lines) in src/components/strategy-v2/ReturnsDistributionPanel.tsx:55", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/strategy-v2/ReturnsDistributionPanel.tsx:55"}, "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-1830e5888837d19e", "name": "Commented-code block (6 lines) in src/components/auth/ProfileTabs.test.tsx:113", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/auth/ProfileTabs.test.tsx:113"}, "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-725936db07033563", "name": "Legacy-named symbol `quantalyze_wizard_state_v1` in src/components/auth/SignOutButton.test.tsx:73", "shortDescription": {"text": "Legacy-named symbol `quantalyze_wizard_state_v1` in src/components/auth/SignOutButton.test.tsx:73"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-316a21a12d536760", "name": "Commented-code block (5 lines) in src/components/auth/SignOutButton.test.tsx:17", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/auth/SignOutButton.test.tsx: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-6c983c502e3b727e", "name": "Commented-code block (7 lines) in src/components/auth/ProfileTabs.tsx:62", "shortDescription": {"text": "Commented-code block (7 lines) in src/components/auth/ProfileTabs.tsx:62"}, "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-6178372e7634babd", "name": "Commented-code block (14 lines) in src/components/auth/SignupForm.tsx:73", "shortDescription": {"text": "Commented-code block (14 lines) in src/components/auth/SignupForm.tsx:73"}, "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-608c47efdb78a8ff", "name": "Commented-code block (7 lines) in src/components/auth/SignupForm.repeated-signup.test.tsx:154", "shortDescription": {"text": "Commented-code block (7 lines) in src/components/auth/SignupForm.repeated-signup.test.tsx:154"}, "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-f2cec55d5c5c1dbc", "name": "Commented-code block (7 lines) in src/components/auth/SignOutButton.tsx:13", "shortDescription": {"text": "Commented-code block (7 lines) in src/components/auth/SignOutButton.tsx: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-0047c79cb4725832", "name": "Commented-code block (10 lines) in src/components/exchanges/AllocatorExchangeManager.test.tsx:411", "shortDescription": {"text": "Commented-code block (10 lines) in src/components/exchanges/AllocatorExchangeManager.test.tsx:411"}, "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-4789510d797d7d4a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/exchanges/AllocatorExchangeManager.test.tsx:239", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/exchanges/AllocatorExchangeManager.test.tsx:239"}, "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-9b0416022372620f", "name": "Commented-code block (9 lines) in src/components/exchanges/AllocatorSyncStatus.test.tsx:86", "shortDescription": {"text": "Commented-code block (9 lines) in src/components/exchanges/AllocatorSyncStatus.test.tsx:86"}, "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-b6ebcbc0c4460173", "name": "Commented-code block (5 lines) in src/components/exchanges/AllocatorSyncStatus.tsx:231", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/exchanges/AllocatorSyncStatus.tsx:231"}, "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-c37f22cafffc4932", "name": "Commented-code block (5 lines) in src/components/exchanges/AllocatorExchangeManager.tsx:75", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/exchanges/AllocatorExchangeManager.tsx:75"}, "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-7b9a3062f13308fc", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/exchanges/AllocatorExchangeManager.tsx:529", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/exchanges/AllocatorExchangeManager.tsx:529"}, "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-0b507605b033a2a0", "name": "Commented-code block (6 lines) in src/components/portfolio/ReplacementCard.tsx:37", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/portfolio/ReplacementCard.tsx:37"}, "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-9568468e5ba54b0c", "name": "Commented-code block (7 lines) in src/components/portfolio/ReplacementPanel.test.tsx:154", "shortDescription": {"text": "Commented-code block (7 lines) in src/components/portfolio/ReplacementPanel.test.tsx:154"}, "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-bd3d0f5b8177b540", "name": "Commented-code block (6 lines) in src/components/portfolio/PortfolioImpactPanel.tsx:57", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/portfolio/PortfolioImpactPanel.tsx:57"}, "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-f0baa719a504d65d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/portfolio/DocumentUpload.tsx:54", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/portfolio/DocumentUpload.tsx:54"}, "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-55e1e4b60a1457a7", "name": "Commented-code block (5 lines) in src/components/portfolio/ReplacementCard.test.tsx:221", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/portfolio/ReplacementCard.test.tsx:221"}, "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-67c3bbeb4d4569a3", "name": "Commented-code block (5 lines) in src/components/portfolio/InsightStrip.test.tsx:211", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/portfolio/InsightStrip.test.tsx:211"}, "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-aa99f9aca78fff76", "name": "Commented-code block (5 lines) in src/components/portfolio/PortfolioImpactPanel.test.tsx:192", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/portfolio/PortfolioImpactPanel.test.tsx:192"}, "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-78b392a3faccceda", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/portfolio/AlertsList.tsx:34", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/portfolio/AlertsList.tsx:34"}, "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-69435995e2b35119", "name": "Commented-code block (5 lines) in src/components/portfolio/NextFiveMillionCard.test.tsx:87", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/portfolio/NextFiveMillionCard.test.tsx:87"}, "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-3445184b1d63ece8", "name": "Commented-code block (6 lines) in src/components/portfolio/CorrelationHeatmap.test.tsx:121", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/portfolio/CorrelationHeatmap.test.tsx:121"}, "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-f5119ce2a4bc72c9", "name": "Commented-code block (5 lines) in src/components/portfolio/CreatePortfolioForm.test.tsx:92", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/portfolio/CreatePortfolioForm.test.tsx:92"}, "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-19a11a0df71b265e", "name": "Commented-code block (8 lines) in src/components/portfolio/InsightStrip.tsx:87", "shortDescription": {"text": "Commented-code block (8 lines) in src/components/portfolio/InsightStrip.tsx:87"}, "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-02a0ebedee28826c", "name": "Commented-code block (5 lines) in src/components/portfolio/CreatePortfolioForm.tsx:67", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/portfolio/CreatePortfolioForm.tsx:67"}, "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-68648d01cd118ca9", "name": "Commented-code block (5 lines) in src/components/portfolio/StrategyBreakdownTable.tsx:101", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/portfolio/StrategyBreakdownTable.tsx:101"}, "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-936976032b3cc16b", "name": "Commented-code block (6 lines) in src/components/mandate/MandateForm.tsx:24", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/mandate/MandateForm.tsx:24"}, "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-53441e65485bc27a", "name": "Commented-code block (5 lines) in src/components/mandate/MandateForm.test.tsx:126", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/mandate/MandateForm.test.tsx:126"}, "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-c5fa5bbda9aec5ef", "name": "Commented-code block (6 lines) in src/components/mandate/useMandateAutoSave.ts:85", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/mandate/useMandateAutoSave.ts:85"}, "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-f09e970b8afff459", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/mandate/useMandateAutoSave.ts:118", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/mandate/useMandateAutoSave.ts:118"}, "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-2f40f926d766238d", "name": "Commented-code block (5 lines) in src/components/mandate/useMandateAutoSave.unmount.test.ts:39", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/mandate/useMandateAutoSave.unmount.test.ts:39"}, "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-e41917f53033cb52", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/mandate/useMandateAutoSave.unmount.test.ts:71", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/mandate/useMandateAutoSave.unmount.test.ts:71"}, "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-7584069b9c25cc4b", "name": "Commented-code block (5 lines) in src/components/mandate/useMandateAutoSave.test.ts:232", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/mandate/useMandateAutoSave.test.ts:232"}, "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-b61069201449a790", "name": "Commented-code block (5 lines) in src/components/ui/Tooltip.tsx:50", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/ui/Tooltip.tsx:50"}, "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-69752ff8fcca1ee0", "name": "Commented-code block (6 lines) in src/components/ui/Tooltip.test.tsx:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/ui/Tooltip.test.tsx: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-f3355c7bcf33a2ce", "name": "Commented-code block (7 lines) in src/components/ui/VerifiedBadge.test.tsx:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/components/ui/VerifiedBadge.test.tsx: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-90d3798f2cc745b8", "name": "Commented-code block (5 lines) in src/components/ui/TimeframeSelector.tsx:37", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/ui/TimeframeSelector.tsx:37"}, "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-dbc119c1d4c199f7", "name": "Commented-code block (7 lines) in src/lib/scenario.ts:223", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/scenario.ts:223"}, "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-da32475b0ad9a3ba", "name": "Commented-code block (7 lines) in src/lib/demo.test.ts:67", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/demo.test.ts:67"}, "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-e37a5312d30974f0", "name": "Commented-code block (5 lines) in src/lib/analytics.ts:118", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/analytics.ts:118"}, "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-a58e5294f0d430f2", "name": "Commented-code block (5 lines) in src/lib/email.ts:32", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/email.ts:32"}, "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-3e44119b661481a9", "name": "Commented-code block (6 lines) in src/lib/queries.hh-0495.test.ts:118", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/queries.hh-0495.test.ts:118"}, "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-716e052ac3604bc6", "name": "Commented-code block (6 lines) in src/lib/ratelimit.test.ts:25", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/ratelimit.test.ts:25"}, "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-288fb0a32f471308", "name": "Commented-code block (6 lines) in src/lib/email.test.ts:133", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/email.test.ts:133"}, "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-ec2313364d033744", "name": "Commented-code block (5 lines) in src/lib/audit.test.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/audit.test.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-3cb0ece92b7e3acb", "name": "Commented-code block (15 lines) in src/lib/portfolio-math-utils.ts:93", "shortDescription": {"text": "Commented-code block (15 lines) in src/lib/portfolio-math-utils.ts:93"}, "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-e170d5e8cbacecf8", "name": "Commented-code block (5 lines) in src/lib/analytics-client.test.ts:51", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/analytics-client.test.ts:51"}, "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-d7162d79bc2338e2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/analytics-client.test.ts:211", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/analytics-client.test.ts:211"}, "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-b14fd9f752146f1c", "name": "Commented-code block (6 lines) in src/lib/analytics-schemas.test.ts:140", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/analytics-schemas.test.ts:140"}, "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-03c6b60b40bb9e5c", "name": "Commented-code block (5 lines) in src/lib/drawdown-math.test.ts:238", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/drawdown-math.test.ts:238"}, "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-4bd05308b4cc0a5d", "name": "Commented-code block (14 lines) in src/lib/demo-recommendations.ts:182", "shortDescription": {"text": "Commented-code block (14 lines) in src/lib/demo-recommendations.ts:182"}, "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-a3960da8fbd32833", "name": "Commented-code block (5 lines) in src/lib/closed-sets.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/closed-sets.ts:6"}, "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-a50fe476a9194c34", "name": "Commented-code block (7 lines) in src/lib/dateday.test.ts:85", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/dateday.test.ts:85"}, "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-8eeb1401f606a96f", "name": "Commented-code block (6 lines) in src/lib/constants.ts:146", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/constants.ts:146"}, "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-ee5c86af7c97d252", "name": "Commented-code block (7 lines) in src/lib/envelope.ts:1", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/envelope.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-d0bd84050825a160", "name": "Commented-code block (8 lines) in src/lib/queries-client.ts:55", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/queries-client.ts:55"}, "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-abce6fbd06b13149", "name": "Commented-code block (8 lines) in src/lib/health-score.ts:142", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/health-score.ts:142"}, "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-39b66197499b0385", "name": "Commented-code block (7 lines) in src/lib/audit-log-csv.ts:129", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/audit-log-csv.ts:129"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b305a2fe21a32f20", "name": "Commented-code block (8 lines) in src/lib/scenario-dealias.test.ts:268", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/scenario-dealias.test.ts:268"}, "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-3970b9e45a3f5ff1", "name": "Commented-code block (6 lines) in src/lib/csrf.test.ts:95", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/csrf.test.ts:95"}, "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-99c5b0c63f7a4360", "name": "Commented-code block (5 lines) in src/lib/feature-flags.ts:57", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/feature-flags.ts:57"}, "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-ccfc8f4181ffe451", "name": "Legacy-named symbol `widget_state_v2` in src/lib/widget-state-flag.test.ts:8", "shortDescription": {"text": "Legacy-named symbol `widget_state_v2` in src/lib/widget-state-flag.test.ts:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0816bf21c170e646", "name": "Commented-code block (6 lines) in src/lib/auth.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/auth.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-5092dca7a53a5912", "name": "Commented-code block (10 lines) in src/lib/wizardErrors.ts:334", "shortDescription": {"text": "Commented-code block (10 lines) in src/lib/wizardErrors.ts:334"}, "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-15e51e27bd9978fd", "name": "Commented-code block (10 lines) in src/lib/visibility.test.ts:40", "shortDescription": {"text": "Commented-code block (10 lines) in src/lib/visibility.test.ts:40"}, "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-6e3131f42f66dab5", "name": "Commented-code block (5 lines) in src/lib/sec-005-live-probe.test.ts:44", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/sec-005-live-probe.test.ts:44"}, "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-af53bff60ed939bd", "name": "Commented-code block (5 lines) in src/lib/for-quants-analytics.gaps.test.ts:39", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/for-quants-analytics.gaps.test.ts:39"}, "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-ef68790984afc59c", "name": "Commented-code block (5 lines) in src/lib/drawdown-math.ts:57", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/drawdown-math.ts:57"}, "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-1d8f3db9e85dd581", "name": "Commented-code block (6 lines) in src/lib/envelope.test.ts:36", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/envelope.test.ts:36"}, "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-7c82b97383acfcbc", "name": "Commented-code block (6 lines) in src/lib/warmup-analytics.test.ts:71", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/warmup-analytics.test.ts:71"}, "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-5491f6c8c4a01cc6", "name": "Commented-code block (7 lines) in src/lib/scenario-dealias.ts:66", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/scenario-dealias.ts:66"}, "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-c4ea7a6d321687f0", "name": "Commented-code block (5 lines) in src/lib/analytics.test.ts:31", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/analytics.test.ts:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0cf1302f4f6684dc", "name": "Commented-code block (5 lines) in src/lib/test-safety.test.ts:146", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/test-safety.test.ts:146"}, "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-083853e0c6762c79", "name": "Commented-code block (5 lines) in src/lib/queries.audit-2026-05-07.test.ts:41", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/queries.audit-2026-05-07.test.ts:41"}, "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-9d0919c7f3587a89", "name": "Commented-code block (10 lines) in src/lib/migration-028-tenant-check.test.ts:268", "shortDescription": {"text": "Commented-code block (10 lines) in src/lib/migration-028-tenant-check.test.ts:268"}, "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-dc942569517896ff", "name": "Commented-code block (5 lines) in src/lib/sec-005-api-keys-projection.test.ts:91", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/sec-005-api-keys-projection.test.ts:91"}, "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-7ebffb7da6915a6c", "name": "Commented-code block (6 lines) in src/lib/audit-log-csv.test.ts:162", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/audit-log-csv.test.ts:162"}, "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-91630d61ef4f43ea", "name": "Commented-code block (5 lines) in src/lib/playwright-console-filter.test.ts:62", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/playwright-console-filter.test.ts:62"}, "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-5271d73f405f2064", "name": "Commented-code block (5 lines) in src/lib/for-quants-leads-admin.ts:89", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/for-quants-leads-admin.ts:89"}, "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-bc856023978798f7", "name": "Commented-code block (5 lines) in src/lib/queries.percentiles.test.ts:56", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/queries.percentiles.test.ts:56"}, "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-909c8dbab21c6f16", "name": "Commented-code block (5 lines) in src/lib/discovery-prefs.test.ts:170", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/discovery-prefs.test.ts:170"}, "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-a3de88cf553020bc", "name": "Commented-code block (8 lines) in src/lib/utils.test.ts:26", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/utils.test.ts:26"}, "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-4011ba2b66ec0f11", "name": "Commented-code block (6 lines) in src/lib/queries.ts:162", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/queries.ts:162"}, "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-97ed9f7a6386e692", "name": "Commented-code block (6 lines) in src/lib/admin.test.ts:158", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/admin.test.ts:158"}, "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-6ebe6dd07b9979c7", "name": "Commented-code block (7 lines) in src/lib/queries.test.ts:16", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/queries.test.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-ec71b431e984b997", "name": "Commented-code block (9 lines) in src/lib/scenario.test.ts:148", "shortDescription": {"text": "Commented-code block (9 lines) in src/lib/scenario.test.ts:148"}, "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-eb39fe0a1b7e5bc6", "name": "Commented-code block (7 lines) in src/lib/units.test.ts:17", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/units.test.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-9f42ea71f2239900", "name": "Commented-code block (5 lines) in src/lib/portfolio-math-utils.test.ts:43", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/portfolio-math-utils.test.ts:43"}, "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-d15218059431cd0a", "name": "Commented-code block (5 lines) in src/lib/outcomes-kpi.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/outcomes-kpi.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-22df2cd0642a9ee0", "name": "Commented-code block (8 lines) in src/lib/gdpr-export-manifest.ts:206", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/gdpr-export-manifest.ts:206"}, "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-42bd0f9d24ad7308", "name": "Commented-code block (9 lines) in src/lib/constants.test.ts:8", "shortDescription": {"text": "Commented-code block (9 lines) in src/lib/constants.test.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-38f9b6b5671c2a77", "name": "Commented-code block (5 lines) in src/lib/for-quants-analytics.ts:49", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/for-quants-analytics.ts:49"}, "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-54884e56b0a7ec05", "name": "Commented-code block (5 lines) in src/lib/sanitize-filename.test.ts:46", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/sanitize-filename.test.ts:46"}, "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-6b2292e1ab654701", "name": "Commented-code block (5 lines) in src/lib/health-score.test.ts:194", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/health-score.test.ts:194"}, "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-c154c7e044a2f7c3", "name": "Commented-code block (6 lines) in src/lib/queries.my-allocation.test.ts:442", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/queries.my-allocation.test.ts:442"}, "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-467309c2820bba1c", "name": "Commented-code block (7 lines) in src/lib/strategyGate.test.ts:164", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/strategyGate.test.ts:164"}, "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-27015ea4824ba2cd", "name": "Commented-code block (6 lines) in src/lib/correlation-id.ts:24", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/correlation-id.ts:24"}, "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-9c3b9f2d45cf335b", "name": "Commented-code block (5 lines) in src/lib/csv.ts:33", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/csv.ts:33"}, "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-0df90cac91c41151", "name": "Commented-code block (7 lines) in src/lib/analytics-client.ts:44", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/analytics-client.ts:44"}, "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-aeb64f50dbcc27f6", "name": "Commented-code block (5 lines) in src/lib/outcomes-kpi.test.ts:139", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/outcomes-kpi.test.ts:139"}, "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-7817b94b88201b4f", "name": "Commented-code block (7 lines) in src/lib/wizardErrors.test.ts:110", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/wizardErrors.test.ts:110"}, "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-8400443fe591b066", "name": "Commented-code block (6 lines) in src/lib/for-quants-analytics.test.ts:46", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/for-quants-analytics.test.ts:46"}, "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-e44df4e8211e58b2", "name": "Commented-code block (6 lines) in src/lib/types.ts:12", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/types.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-164c1fc658a84020", "name": "Commented-code block (9 lines) in src/lib/portfolio-stats.ts:17", "shortDescription": {"text": "Commented-code block (9 lines) in src/lib/portfolio-stats.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-29c0503c140c1995", "name": "Commented-code block (6 lines) in src/lib/analytics-schemas.ts:38", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/analytics-schemas.ts:38"}, "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-f9b4f797862ee17b", "name": "Commented-code block (6 lines) in src/lib/utils.ts:34", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/utils.ts:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1f52123c8327841f", "name": "Commented-code block (7 lines) in src/lib/audit.hh1-audit.test.ts:153", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/audit.hh1-audit.test.ts:153"}, "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-d9a7b2b15fd46a07", "name": "Commented-code block (5 lines) in src/lib/csrf.ts:65", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/csrf.ts:65"}, "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-13de4eab2726e4a9", "name": "Commented-code block (7 lines) in src/lib/visibility.ts:75", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/visibility.ts:75"}, "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-572b93fce8788791", "name": "Commented-code block (6 lines) in src/lib/queries.mandateIsSet.test.ts:21", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/queries.mandateIsSet.test.ts:21"}, "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-335404f16ab39dec", "name": "Commented-code block (9 lines) in src/lib/metrics-parity-helper.ts:114", "shortDescription": {"text": "Commented-code block (9 lines) in src/lib/metrics-parity-helper.ts:114"}, "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-bd46096647d79248", "name": "Commented-code block (8 lines) in src/lib/database.types.ts:1021", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/database.types.ts:1021"}, "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-4024948095f1fbd2", "name": "Commented-code block (5 lines) in src/lib/admin.ts:294", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/admin.ts:294"}, "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-a15ccb9b835d8eb3", "name": "Commented-code block (9 lines) in src/lib/preferences.ts:125", "shortDescription": {"text": "Commented-code block (9 lines) in src/lib/preferences.ts:125"}, "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-eb587b28cfa93805", "name": "Commented-code block (7 lines) in src/lib/auth.test.ts:153", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/auth.test.ts:153"}, "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-ea80b8e713339e55", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/auth.test.ts:586", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/auth.test.ts:586"}, "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-64507d0c48572242", "name": "Commented-code block (5 lines) in src/lib/queries.match-batches-rls.regression-1.test.ts:111", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/queries.match-batches-rls.regression-1.test.ts:111"}, "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-cefa29a982a47e2f", "name": "Commented-code block (6 lines) in src/lib/ratelimit.ts:97", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/ratelimit.ts:97"}, "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-9788bd067b8464df", "name": "Legacy-named symbol `widget_state_v2` in src/lib/widget-state-flag.ts:13", "shortDescription": {"text": "Legacy-named symbol `widget_state_v2` in src/lib/widget-state-flag.ts:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-59c0b2881cb45f68", "name": "Commented-code block (9 lines) in src/lib/widget-state-flag.ts:56", "shortDescription": {"text": "Commented-code block (9 lines) in src/lib/widget-state-flag.ts:56"}, "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-d5bde1506b4d0472", "name": "Commented-code block (8 lines) in src/lib/audit.ts:101", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/audit.ts:101"}, "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-4ea3f23a67aefafd", "name": "Commented-code block (7 lines) in src/lib/queries.hh-1255.test.ts:123", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/queries.hh-1255.test.ts:123"}, "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-0a8d7c4f002cab1f", "name": "Commented-code block (7 lines) in src/lib/process-key-client.ts:101", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/process-key-client.ts:101"}, "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-adf5ba5ab0ba57ca", "name": "Commented-code block (9 lines) in src/lib/demo-recommendations.test.ts:169", "shortDescription": {"text": "Commented-code block (9 lines) in src/lib/demo-recommendations.test.ts:169"}, "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-a1a3e045f4107006", "name": "Commented-code block (5 lines) in src/lib/portfolio-stats.test.ts:597", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/portfolio-stats.test.ts:597"}, "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-dae91d8d5319802d", "name": "Commented-code block (5 lines) in src/lib/gdpr-export.ts:12", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/gdpr-export.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-e61ebeffd6f8c188", "name": "Commented-code block (5 lines) in src/lib/bridge/send-intro.test.ts:256", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/bridge/send-intro.test.ts:256"}, "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-a7f9fc1be647506d", "name": "Commented-code block (6 lines) in src/lib/bridge/send-intro.ts:58", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/bridge/send-intro.ts:58"}, "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-fb6977fbc96ec1fb", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/bridge/send-intro.ts:7", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/bridge/send-intro.ts:7"}, "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-3b04dd35b3c37aed", "name": "Commented-code block (6 lines) in src/lib/api/withAdminAuth.test.ts:137", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/api/withAdminAuth.test.ts:137"}, "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-755fc7105585ebe4", "name": "Commented-code block (6 lines) in src/lib/api/simulatorSchema.ts:27", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/api/simulatorSchema.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-908b62f08110698d", "name": "Commented-code block (5 lines) in src/lib/api/withAuthLimited.test.ts:173", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/api/withAuthLimited.test.ts:173"}, "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-41d2f4cade90c831", "name": "Commented-code block (7 lines) in src/lib/api/limiter-ordering.test.ts:112", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/api/limiter-ordering.test.ts:112"}, "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-f7ffde33b8d3408d", "name": "Commented-code block (8 lines) in src/lib/api/withAdminAuth.ts:122", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/api/withAdminAuth.ts:122"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-174ca6b9caf0e5e3", "name": "Commented-code block (11 lines) in src/lib/api/withAuth.ts:41", "shortDescription": {"text": "Commented-code block (11 lines) in src/lib/api/withAuth.ts:41"}, "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-5f0c6a73a29471c1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/api/withAuth.ts:44", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/api/withAuth.ts:44"}, "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-8ac040efb98b28ed", "name": "Commented-code block (5 lines) in src/lib/api/simulatorSchema.test.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/api/simulatorSchema.test.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-1bb0e56467d42462", "name": "Commented-code block (5 lines) in src/lib/api/withAuthLimited.ts:149", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/api/withAuthLimited.ts:149"}, "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-cbdac951d18b679b", "name": "Commented-code block (5 lines) in src/lib/factsheet/event-signatures.test.ts:63", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/factsheet/event-signatures.test.ts:63"}, "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-b449f68bd566fff5", "name": "Commented-code block (7 lines) in src/lib/factsheet/build-payload.ts:94", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/factsheet/build-payload.ts:94"}, "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-d7053f4d35bee48d", "name": "Commented-code block (5 lines) in src/lib/factsheet/allocator-portfolio-payload.ts:102", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/factsheet/allocator-portfolio-payload.ts:102"}, "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-4d351f833cb07c34", "name": "Commented-code block (8 lines) in src/lib/factsheet/allocator-portfolio-payload.test.ts:90", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/factsheet/allocator-portfolio-payload.test.ts:90"}, "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-884c046a50955504", "name": "Commented-code block (6 lines) in src/lib/factsheet/audit-c20.test.ts:100", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/factsheet/audit-c20.test.ts:100"}, "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-add631280ab7e63d", "name": "Commented-code block (5 lines) in src/lib/notes/ownership.ts:80", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/notes/ownership.ts:80"}, "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-b035ad925c6c4c97", "name": "Commented-code block (5 lines) in src/lib/admin/pii-scrub.ts:54", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/admin/pii-scrub.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-330435b8edcec249", "name": "Commented-code block (5 lines) in src/lib/admin/pii-scrub.test.ts:242", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/admin/pii-scrub.test.ts:242"}, "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-f58020bbc73bd4c8", "name": "Commented-code block (9 lines) in src/lib/admin/match.ts:44", "shortDescription": {"text": "Commented-code block (9 lines) in src/lib/admin/match.ts:44"}, "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-c358d131b3b38ba2", "name": "Legacy-named symbol `quantalyze_wizard_state_v1` in src/lib/wizard/localStorage.test.ts:301", "shortDescription": {"text": "Legacy-named symbol `quantalyze_wizard_state_v1` in src/lib/wizard/localStorage.test.ts:301"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-df14e39323a31eb4", "name": "Commented-code block (8 lines) in src/lib/wizard/localStorage.test.ts:13", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/wizard/localStorage.test.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-417b2af4b498f674", "name": "Legacy-named symbol `quantalyze_wizard_state_v1` in src/lib/wizard/localStorage.ts:51", "shortDescription": {"text": "Legacy-named symbol `quantalyze_wizard_state_v1` in src/lib/wizard/localStorage.ts:51"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-40ce7252d9cafd3a", "name": "Commented-code block (5 lines) in src/lib/wizard/localStorage.ts:66", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/wizard/localStorage.ts:66"}, "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-bf3445e8b30d999d", "name": "Commented-code block (5 lines) in src/lib/auth/rbac-manifest.ts:135", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/auth/rbac-manifest.ts:135"}, "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-94a43103c9cc223d", "name": "Commented-code block (6 lines) in src/lib/auth/rbac-manifest.test.ts:63", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/auth/rbac-manifest.test.ts:63"}, "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-0568e21872421532", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/test-helpers/live-db.ts:212", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/test-helpers/live-db.ts:212"}, "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-3ad1c55b09df1b3c", "name": "Commented-code block (7 lines) in src/lib/intro/snapshot.test.ts:85", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/intro/snapshot.test.ts:85"}, "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-f384a4ac0d4163e5", "name": "Commented-code block (7 lines) in src/lib/supabase/mock.ts:153", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/supabase/mock.ts:153"}, "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-38316604a4a9c361", "name": "Commented-code block (6 lines) in src/lib/supabase/client.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/supabase/client.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-d1b21727becba62c", "name": "Commented-code block (5 lines) in src/lib/supabase/numeric-precision.test.ts:47", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/supabase/numeric-precision.test.ts:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b8d215629d8b1ed4", "name": "Commented-code block (6 lines) in src/lib/supabase/admin.ts:4", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/supabase/admin.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-1f1a9ca318be0985", "name": "Commented-code block (5 lines) in src/lib/supabase/admin-users.ts:107", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/supabase/admin-users.ts:107"}, "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-c6fb2134f47505a7", "name": "Commented-code block (6 lines) in src/lib/analytics/usage-events.ts:50", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/analytics/usage-events.ts:50"}, "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-22b640c4655da07e", "name": "Legacy-named symbol `emitFirstBridgeSurfacedLegacy` in src/lib/analytics/onboarding-funnel.ts:242", "shortDescription": {"text": "Legacy-named symbol `emitFirstBridgeSurfacedLegacy` in src/lib/analytics/onboarding-funnel.ts:242"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4072025a2a10e625", "name": "Commented-code block (7 lines) in src/lib/analytics/onboarding-funnel.ts:215", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/analytics/onboarding-funnel.ts:215"}, "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-4f9dd1609ebffdd4", "name": "Commented-code block (5 lines) in src/lib/analytics/onboarding-funnel.test.ts:437", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/analytics/onboarding-funnel.test.ts:437"}, "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-4cfabd556bacd26a", "name": "Legacy-named symbol `migrateLegacy` in src/lib/storage/codecs.ts:52", "shortDescription": {"text": "Legacy-named symbol `migrateLegacy` in src/lib/storage/codecs.ts:52"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fbbaa0eae41cbd56", "name": "Legacy-named symbol `migrateLegacy` in src/lib/storage/codecs.test.ts:15", "shortDescription": {"text": "Legacy-named symbol `migrateLegacy` in src/lib/storage/codecs.test.ts:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-30a8571719ef64c4", "name": "Commented-code block (6 lines) in src/lib/storage/cross-tab.ts:239", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/storage/cross-tab.ts:239"}, "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-fb82b684a6f36c85", "name": "Commented-code block (9 lines) in src/lib/__tests__/getMyAllocationDashboard.scenario.test.ts:406", "shortDescription": {"text": "Commented-code block (9 lines) in src/lib/__tests__/getMyAllocationDashboard.scenario.test.ts:406"}, "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-5575e2b02d820900", "name": "Commented-code block (7 lines) in src/lib/sync-freshness/types.test.ts:9", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/sync-freshness/types.test.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-ad48dccc4122a9f7", "name": "Commented-code block (9 lines) in src/__tests__/bridge-outcomes-voluntary-schema.test.ts:327", "shortDescription": {"text": "Commented-code block (9 lines) in src/__tests__/bridge-outcomes-voluntary-schema.test.ts:327"}, "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-d94050f6711b6cd0", "name": "Commented-code block (5 lines) in src/__tests__/format-percent-contract.test.ts:105", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/format-percent-contract.test.ts:105"}, "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-d3f2ec796d04b199", "name": "Commented-code block (7 lines) in src/__tests__/gdpr-export-coverage-hook.test.ts:131", "shortDescription": {"text": "Commented-code block (7 lines) in src/__tests__/gdpr-export-coverage-hook.test.ts:131"}, "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-22cc3a3e0d1698ad", "name": "Commented-code block (6 lines) in src/__tests__/audit-fanout-integration.test.ts:252", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/audit-fanout-integration.test.ts:252"}, "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-173986dc953496fb", "name": "Commented-code block (5 lines) in src/__tests__/user-notes-multiscope-rls.test.ts:129", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/user-notes-multiscope-rls.test.ts:129"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f2ccee0e9074e9ce", "name": "Commented-code block (9 lines) in src/__tests__/outcomes-join-rls.test.ts:168", "shortDescription": {"text": "Commented-code block (9 lines) in src/__tests__/outcomes-join-rls.test.ts:168"}, "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-247ab8eff321fba2", "name": "Commented-code block (6 lines) in src/__tests__/audit-emit-typed-dispatch.test.ts:258", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/audit-emit-typed-dispatch.test.ts:258"}, "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-e9756e99ceb3f44a", "name": "Commented-code block (7 lines) in src/__tests__/gdpr-export-route.test.ts:46", "shortDescription": {"text": "Commented-code block (7 lines) in src/__tests__/gdpr-export-route.test.ts:46"}, "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-f5a94fa20b07dfe1", "name": "Commented-code block (7 lines) in src/__tests__/scenario-commit-rls.test.ts:53", "shortDescription": {"text": "Commented-code block (7 lines) in src/__tests__/scenario-commit-rls.test.ts:53"}, "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-00c55d64ddf428cf", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/__tests__/scenario-commit-rls.test.ts:414", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/__tests__/scenario-commit-rls.test.ts:414"}, "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-334cea809c36313b", "name": "Commented-code block (6 lines) in src/__tests__/redteam-b02-regressions.test.ts:29", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/redteam-b02-regressions.test.ts:29"}, "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-25317890bbecb522", "name": "Commented-code block (5 lines) in src/__tests__/allocator-equity-rls.test.ts:282", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/allocator-equity-rls.test.ts:282"}, "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-941ddaed016b2e2c", "name": "Commented-code block (9 lines) in src/__tests__/match-decisions-visibility-trigger-rls.test.ts:360", "shortDescription": {"text": "Commented-code block (9 lines) in src/__tests__/match-decisions-visibility-trigger-rls.test.ts:360"}, "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-dc61e4163eeaf90a", "name": "Commented-code block (5 lines) in src/__tests__/gdpr-export.test.ts:137", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/gdpr-export.test.ts:137"}, "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-7192913c1e64ef24", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/__tests__/gdpr-export.test.ts:128", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/__tests__/gdpr-export.test.ts:128"}, "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-35e78355c4bb6d65", "name": "Commented-code block (8 lines) in src/__tests__/audit-log-cold-archive.test.ts:64", "shortDescription": {"text": "Commented-code block (8 lines) in src/__tests__/audit-log-cold-archive.test.ts:64"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1b81f122e84620cf", "name": "Legacy-named symbol `match_decisions_kind_bridge_recommended_v2` in src/__tests__/match-decisions-xor-rls.test.ts:129", "shortDescription": {"text": "Legacy-named symbol `match_decisions_kind_bridge_recommended_v2` in src/__tests__/match-decisions-xor-rls.test.ts:129"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6dd7329265d77254", "name": "Commented-code block (5 lines) in src/__tests__/match-decisions-xor-rls.test.ts:249", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/match-decisions-xor-rls.test.ts:249"}, "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-2aa225bc66d8fe0d", "name": "Commented-code block (6 lines) in src/__tests__/trades-side-check-constraint-2026-05-07-g12a.test.ts:7", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/trades-side-check-constraint-2026-05-07-g12a.test.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-d77b98b48ce525d7", "name": "Commented-code block (8 lines) in src/__tests__/wizard-rpcs-live-db.test.ts:429", "shortDescription": {"text": "Commented-code block (8 lines) in src/__tests__/wizard-rpcs-live-db.test.ts:429"}, "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-bbcc16adcd0a33ac", "name": "Commented-code block (5 lines) in src/__tests__/csv-finalize-rpc.test.ts:42", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/csv-finalize-rpc.test.ts:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8e9eaf647571c705", "name": "Commented-code block (5 lines) in src/__tests__/positions-rls-g12d-disclosure-tier.test.ts:151", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/positions-rls-g12d-disclosure-tier.test.ts:151"}, "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-08676c4cfd748398", "name": "Commented-code block (14 lines) in src/__tests__/audit-coverage.test.ts:125", "shortDescription": {"text": "Commented-code block (14 lines) in src/__tests__/audit-coverage.test.ts:125"}, "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-35356fbad4422261", "name": "Commented-code block (6 lines) in src/__tests__/retention-crons.test.ts:90", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/retention-crons.test.ts:90"}, "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-1a725b49b92e4e73", "name": "Commented-code block (6 lines) in src/__tests__/deletion-request-admin-self.test.ts:49", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/deletion-request-admin-self.test.ts:49"}, "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-bda406218e96874e", "name": "Legacy-named symbol `runIntrospectionSqlLegacy` in src/__tests__/match-decisions-schema.test.ts:34", "shortDescription": {"text": "Legacy-named symbol `runIntrospectionSqlLegacy` in src/__tests__/match-decisions-schema.test.ts:34"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-69eeb6b494ba86a1", "name": "Commented-code block (7 lines) in src/__tests__/match-decisions-schema.test.ts:25", "shortDescription": {"text": "Commented-code block (7 lines) in src/__tests__/match-decisions-schema.test.ts:25"}, "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-fbfe8c08b3dd7528", "name": "Commented-code block (14 lines) in src/__tests__/scenario-commit-batch-tx.test.ts:482", "shortDescription": {"text": "Commented-code block (14 lines) in src/__tests__/scenario-commit-batch-tx.test.ts:482"}, "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-ad4050d208533a8c", "name": "Commented-code block (9 lines) in src/__tests__/delete-allocator-api-key-rpc.test.ts:433", "shortDescription": {"text": "Commented-code block (9 lines) in src/__tests__/delete-allocator-api-key-rpc.test.ts:433"}, "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-a2d5193835d9f96b", "name": "Legacy-named symbol `boLegacy` in src/__tests__/bridge-outcome-cron-holding.test.ts:457", "shortDescription": {"text": "Legacy-named symbol `boLegacy` in src/__tests__/bridge-outcome-cron-holding.test.ts:457"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-35d9274cd74b518b", "name": "Commented-code block (5 lines) in src/__tests__/sanitize-user-rpc.test.ts:75", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/sanitize-user-rpc.test.ts:75"}, "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-9914e6020d76da95", "name": "Commented-code block (9 lines) in src/__tests__/mandate-columns-schema-sync.test.ts:57", "shortDescription": {"text": "Commented-code block (9 lines) in src/__tests__/mandate-columns-schema-sync.test.ts:57"}, "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-fd28cf5d77e8333d", "name": "Commented-code block (6 lines) in src/__tests__/check-banned-packages.test.ts:171", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/check-banned-packages.test.ts:171"}, "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-3c42667c2b115b4d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/__tests__/check-banned-packages.test.ts:15", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/__tests__/check-banned-packages.test.ts:15"}, "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-5fa6d26167a825b5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/__tests__/match-decisions-holding-endpoint-rls.test.ts:99", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/__tests__/match-decisions-holding-endpoint-rls.test.ts:99"}, "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-615f834cc829cdc6", "name": "Commented-code block (6 lines) in src/__tests__/observ12-fixtures-presence.test.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/observ12-fixtures-presence.test.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-1528704815bd9a4c", "name": "Commented-code block (7 lines) in src/__tests__/csv-validate-route.test.ts:117", "shortDescription": {"text": "Commented-code block (7 lines) in src/__tests__/csv-validate-route.test.ts:117"}, "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-2910d735b12d9311", "name": "Commented-code block (7 lines) in src/__tests__/e2e-match-queue-no-vacuous-admin-gate.test.ts:94", "shortDescription": {"text": "Commented-code block (7 lines) in src/__tests__/e2e-match-queue-no-vacuous-admin-gate.test.ts:94"}, "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-fb24cb70656b8211", "name": "Commented-code block (5 lines) in src/__tests__/rbac-matrix-unit.test.ts:54", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/rbac-matrix-unit.test.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-5eed95342b71e5d6", "name": "Commented-code block (11 lines) in src/__tests__/log-audit-event-service-rpc.test.ts:157", "shortDescription": {"text": "Commented-code block (11 lines) in src/__tests__/log-audit-event-service-rpc.test.ts:157"}, "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-1ea5a1a93b1253c5", "name": "Commented-code block (7 lines) in src/__tests__/user-app-roles-backfill.test.ts:40", "shortDescription": {"text": "Commented-code block (7 lines) in src/__tests__/user-app-roles-backfill.test.ts:40"}, "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-c8bb393377c66bdf", "name": "Commented-code block (5 lines) in src/__tests__/check-admin-route-manifest.test.ts:128", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/check-admin-route-manifest.test.ts:128"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-264c88d8e140fd0f", "name": "Commented-code block (9 lines) in src/__tests__/metrics-parity.test.ts:30", "shortDescription": {"text": "Commented-code block (9 lines) in src/__tests__/metrics-parity.test.ts:30"}, "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-c59d3c3fc9414210", "name": "Commented-code block (6 lines) in src/__tests__/sanitize-user.test.ts:37", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/sanitize-user.test.ts:37"}, "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-f724221034767863", "name": "Commented-code block (5 lines) in src/__tests__/mandate-audit.test.ts:84", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/mandate-audit.test.ts:84"}, "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-22da00737ec6acf3", "name": "Commented-code block (5 lines) in src/__tests__/strategies-source-csv-constraint.test.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/strategies-source-csv-constraint.test.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-b40b0eb8ae97ee75", "name": "Commented-code block (6 lines) in src/__tests__/claim-dedupe-done-pending-children-guard.test.ts:177", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/claim-dedupe-done-pending-children-guard.test.ts:177"}, "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-512bc0af42881571", "name": "Commented-code block (5 lines) in src/__tests__/vercel-cron-limits.test.ts:42", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/vercel-cron-limits.test.ts:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3e906f5a7d8ff508", "name": "Commented-code block (5 lines) in src/__tests__/rbac-matrix.test.ts:222", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/rbac-matrix.test.ts:222"}, "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-db0311b047d96aad", "name": "Commented-code block (9 lines) in src/__tests__/metrics-parity-helper.test.ts:148", "shortDescription": {"text": "Commented-code block (9 lines) in src/__tests__/metrics-parity-helper.test.ts:148"}, "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-f0748df3a9c21b94", "name": "Commented-code block (13 lines) in src/__tests__/no-store-coverage.test.ts:119", "shortDescription": {"text": "Commented-code block (13 lines) in src/__tests__/no-store-coverage.test.ts:119"}, "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-d0140fc97722a278", "name": "Commented-code block (7 lines) in src/__tests__/csv-finalize-c14-regression.test.ts:200", "shortDescription": {"text": "Commented-code block (7 lines) in src/__tests__/csv-finalize-c14-regression.test.ts:200"}, "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-d77f7f1fae00d19b", "name": "Commented-code block (6 lines) in src/__tests__/compute-jobs-kind-check-csv-2026-05-25.test.ts:10", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/compute-jobs-kind-check-csv-2026-05-25.test.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-7df77ee711db9579", "name": "Commented-code block (8 lines) in src/__tests__/scenario-commit-batch-race.test.ts:70", "shortDescription": {"text": "Commented-code block (8 lines) in src/__tests__/scenario-commit-batch-race.test.ts:70"}, "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-0a23db4632f368e5", "name": "Commented-code block (6 lines) in src/__tests__/admin-csrf-ratelimit-grep.test.ts:69", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/admin-csrf-ratelimit-grep.test.ts:69"}, "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-097225f8a1f7fd8e", "name": "Commented-code block (6 lines) in src/__tests__/compute-jobs-claim-token-not-leaked.test.ts:41", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/compute-jobs-claim-token-not-leaked.test.ts:41"}, "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-99d8c1bc2078ef6f", "name": "Commented-code block (8 lines) in src/__tests__/audit-event-union-types.test.ts:29", "shortDescription": {"text": "Commented-code block (8 lines) in src/__tests__/audit-event-union-types.test.ts:29"}, "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-80a04e6a27381c08", "name": "Commented-code block (5 lines) in src/__tests__/gdpr-export-redaction.test.ts:120", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/gdpr-export-redaction.test.ts:120"}, "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-c4564d27154d726d", "name": "Commented-code block (5 lines) in src/__tests__/bridge-outcome-cron.test.ts:128", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/bridge-outcome-cron.test.ts:128"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-49ccdc381e03ccb1", "name": "Commented-code block (5 lines) in src/__tests__/compute-jobs-audit-2026-05-07-g10b.test.ts:762", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/compute-jobs-audit-2026-05-07-g10b.test.ts:762"}, "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-3136266d88744822", "name": "Commented-code block (6 lines) in src/__tests__/strategy-verifications-rls.test.ts:228", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/strategy-verifications-rls.test.ts:228"}, "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-d035c74e694da618", "name": "Commented-code block (22 lines) in src/__tests__/update-allocator-mandates-rpc.test.ts:108", "shortDescription": {"text": "Commented-code block (22 lines) in src/__tests__/update-allocator-mandates-rpc.test.ts:108"}, "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-0bfaa80729c00935", "name": "Commented-code block (6 lines) in src/__tests__/claim-failed-retry-dedupe-migrations.test.ts:113", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/claim-failed-retry-dedupe-migrations.test.ts:113"}, "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-410ea000f96ab496", "name": "Commented-code block (7 lines) in src/__tests__/gdpr-export-schema.test.ts:172", "shortDescription": {"text": "Commented-code block (7 lines) in src/__tests__/gdpr-export-schema.test.ts:172"}, "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-b7cf94db05783fec", "name": "Commented-code block (13 lines) in src/__tests__/audit-log-rls.test.ts:76", "shortDescription": {"text": "Commented-code block (13 lines) in src/__tests__/audit-log-rls.test.ts:76"}, "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-887550fa21dafe46", "name": "Commented-code block (6 lines) in src/__tests__/portfolio-strategies-alias-rls.test.ts:61", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/portfolio-strategies-alias-rls.test.ts:61"}, "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-b46394daf409cc62", "name": "Commented-code block (11 lines) in src/__tests__/gitleaks-allowlist.test.ts:186", "shortDescription": {"text": "Commented-code block (11 lines) in src/__tests__/gitleaks-allowlist.test.ts:186"}, "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-425a7dc30140044b", "name": "Commented-code block (5 lines) in src/__tests__/auth-rbac-unified.test.ts:183", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/auth-rbac-unified.test.ts:183"}, "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-89fefb9fc6ec861a", "name": "Commented-code block (5 lines) in src/__tests__/raise-exception-concat-grammar.test.ts:11", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/raise-exception-concat-grammar.test.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-730e8b68bb14133c", "name": "Commented-code block (11 lines) in src/__tests__/bridge-outcome-cron-voluntary-add.test.ts:305", "shortDescription": {"text": "Commented-code block (11 lines) in src/__tests__/bridge-outcome-cron-voluntary-add.test.ts:305"}, "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-087a26ecb356da48", "name": "Commented-code block (6 lines) in src/__tests__/compute-jobs-audit-2026-05-07-residual.test.ts:291", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/compute-jobs-audit-2026-05-07-residual.test.ts:291"}, "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-d1e8a23251dcddf1", "name": "Commented-code block (7 lines) in src/__tests__/critical-regressions.test.ts:173", "shortDescription": {"text": "Commented-code block (7 lines) in src/__tests__/critical-regressions.test.ts:173"}, "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-af8ad25eafb2238c", "name": "Commented-code block (5 lines) in src/__tests__/positions-runtime-guard-g12e.test.ts:126", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/positions-runtime-guard-g12e.test.ts:126"}, "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-408ac980dac7de2a", "name": "Commented-code block (5 lines) in src/__tests__/migration-084-trigger.test.ts:214", "shortDescription": {"text": "Commented-code block (5 lines) in src/__tests__/migration-084-trigger.test.ts:214"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b01314036259abef", "name": "Commented-code block (6 lines) in src/__tests__/contracts/contracts-registry.test.ts:114", "shortDescription": {"text": "Commented-code block (6 lines) in src/__tests__/contracts/contracts-registry.test.ts:114"}, "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-23b93132bee0d7d4", "name": "Commented-code block (7 lines) in src/__tests__/contracts/check-zod-db-check-parity.test.ts:191", "shortDescription": {"text": "Commented-code block (7 lines) in src/__tests__/contracts/check-zod-db-check-parity.test.ts:191"}, "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-37a08a30628f05f8", "name": "`fetch()` without try/.catch or AbortSignal \u2014 supabase/functions/notify-admin/index.ts:66", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 supabase/functions/notify-admin/index.ts:66"}, "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-17e71ba842596479", "name": "Commented-code block (7 lines) in analytics-service/sentry_init.py:34", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/sentry_init.py:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ee4a7963706dfac7", "name": "Legacy-named symbol `_claim_legacy` in analytics-service/main_worker.py:397", "shortDescription": {"text": "Legacy-named symbol `_claim_legacy` in analytics-service/main_worker.py:397"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2bc530e6b7c67468", "name": "Commented-code block (7 lines) in analytics-service/main_worker.py:72", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/main_worker.py:72"}, "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-5192ae6466b91fef", "name": "Commented-code block (6 lines) in analytics-service/main.py:16", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/main.py: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-b994e877dbb666b6", "name": "Commented-code block (5 lines) in analytics-service/tests/test_match_engine_service.py:1027", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_match_engine_service.py:1027"}, "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-f90d2c908495c62a", "name": "Commented-code block (9 lines) in analytics-service/tests/test_process_key.py:37", "shortDescription": {"text": "Commented-code block (9 lines) in analytics-service/tests/test_process_key.py:37"}, "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-1cb4c61ad9faf80f", "name": "Commented-code block (5 lines) in analytics-service/tests/test_simulator_scoring.py:183", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_simulator_scoring.py:183"}, "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-5384881c9855fb7d", "name": "Commented-code block (12 lines) in analytics-service/tests/test_key_permissions.py:242", "shortDescription": {"text": "Commented-code block (12 lines) in analytics-service/tests/test_key_permissions.py:242"}, "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-fdf11ff4b863c72e", "name": "Commented-code block (5 lines) in analytics-service/tests/test_position_reconstruction_funding.py:59", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_position_reconstruction_funding.py:59"}, "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-e1658a6f19c1792e", "name": "Commented-code block (5 lines) in analytics-service/tests/test_match_integration.py:174", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_match_integration.py:174"}, "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-fbe65dbcae2c054e", "name": "Commented-code block (7 lines) in analytics-service/tests/conftest.py:8", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/tests/conftest.py: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-c84f49f7798ec669", "name": "Commented-code block (11 lines) in analytics-service/tests/test_routers_audit_2026_05_17.py:163", "shortDescription": {"text": "Commented-code block (11 lines) in analytics-service/tests/test_routers_audit_2026_05_17.py:163"}, "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-54abe486738f4eed", "name": "Commented-code block (5 lines) in analytics-service/tests/test_equity_fallback.py:98", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_equity_fallback.py:98"}, "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-797313e6ecb8087b", "name": "Commented-code block (5 lines) in analytics-service/tests/test_equity_curve_builder.py:134", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_equity_curve_builder.py:134"}, "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-f6df367e51bc5990", "name": "Commented-code block (7 lines) in analytics-service/tests/test_feedback_engine.py:116", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_feedback_engine.py:116"}, "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-88bce42cc732eef9", "name": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/tests/test_fingerprint.py:1", "shortDescription": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/tests/test_fingerprint.py:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-22163bc998b13370", "name": "Commented-code block (7 lines) in analytics-service/tests/test_fingerprint.py:437", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_fingerprint.py:437"}, "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-33783b21b0453692", "name": "Commented-code block (6 lines) in analytics-service/tests/test_match_eval.py:118", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_match_eval.py:118"}, "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-3ad79cd20a62ca01", "name": "Commented-code block (7 lines) in analytics-service/tests/test_metrics.py:41", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_metrics.py:41"}, "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-2e9ca9c55228a5d1", "name": "Legacy-named symbol `excess_old` in analytics-service/tests/test_ana_recon_audit.py:1034", "shortDescription": {"text": "Legacy-named symbol `excess_old` in analytics-service/tests/test_ana_recon_audit.py:1034"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-01261cb3fddd53c6", "name": "Commented-code block (8 lines) in analytics-service/tests/test_ana_recon_audit.py:798", "shortDescription": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_ana_recon_audit.py:798"}, "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-923de79ba119efdb", "name": "Commented-code block (5 lines) in analytics-service/tests/test_trigger_rls_audit.py:205", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_trigger_rls_audit.py:205"}, "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-9af06870bf060d0a", "name": "Commented-code block (8 lines) in analytics-service/tests/test_funding_fetch.py:27", "shortDescription": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_funding_fetch.py: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-0501d17a213b9d24", "name": "Commented-code block (10 lines) in analytics-service/tests/test_routers_audit_emission_structure.py:50", "shortDescription": {"text": "Commented-code block (10 lines) in analytics-service/tests/test_routers_audit_emission_structure.py:50"}, "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-9a09c8de56fc0c83", "name": "Commented-code block (5 lines) in analytics-service/tests/test_persist_csv_daily_returns_live.py:766", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_persist_csv_daily_returns_live.py:766"}, "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-47360b65b0c929bd", "name": "Legacy-named symbol `verification_requests_legacy` in analytics-service/tests/test_legacy_table_rls.py:2", "shortDescription": {"text": "Legacy-named symbol `verification_requests_legacy` in analytics-service/tests/test_legacy_table_rls.py:2"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bacfdb4b9c87ac21", "name": "Commented-code block (10 lines) in analytics-service/tests/test_position_reconstruction.py:16", "shortDescription": {"text": "Commented-code block (10 lines) in analytics-service/tests/test_position_reconstruction.py: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-c09aa0638b009deb", "name": "Commented-code block (8 lines) in analytics-service/tests/test_portfolio_router_logic.py:203", "shortDescription": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_portfolio_router_logic.py:203"}, "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-aecf4db6fd110a18", "name": "Commented-code block (5 lines) in analytics-service/tests/test_match_router.py:1068", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_match_router.py:1068"}, "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-2fdb676f5e9cf0ce", "name": "Commented-code block (9 lines) in analytics-service/tests/test_simulator_router.py:33", "shortDescription": {"text": "Commented-code block (9 lines) in analytics-service/tests/test_simulator_router.py:33"}, "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-8bbd0cfea4a5c238", "name": "Legacy-named symbol `_claim_legacy` in analytics-service/tests/test_compute_jobs_fencing.py:1634", "shortDescription": {"text": "Legacy-named symbol `_claim_legacy` in analytics-service/tests/test_compute_jobs_fencing.py:1634"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-287cae286c2f07ad", "name": "Commented-code block (5 lines) in analytics-service/tests/test_compute_jobs_fencing.py:88", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_compute_jobs_fencing.py:88"}, "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-e13d949ca91e94d2", "name": "Commented-code block (6 lines) in analytics-service/tests/test_position_reconstruction_fifo_flip.py:57", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_position_reconstruction_fifo_flip.py:57"}, "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-b43dc63d816d847b", "name": "Legacy-named symbol `verification_requests_legacy` in analytics-service/tests/test_verify_strategy_no_legacy_writes.py:6", "shortDescription": {"text": "Legacy-named symbol `verification_requests_legacy` in analytics-service/tests/test_verify_strategy_no_legacy_writes.py:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f5c3f7c004a8b719", "name": "Commented-code block (7 lines) in analytics-service/tests/test_verify_strategy_no_legacy_writes.py:67", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_verify_strategy_no_legacy_writes.py:67"}, "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-2793c7dde299233d", "name": "Commented-code block (5 lines) in analytics-service/tests/test_phase12_kill_switch.py:942", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_phase12_kill_switch.py:942"}, "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-20450d2011081f61", "name": "Commented-code block (6 lines) in analytics-service/tests/test_portfolio_router_audit_2026_05_07.py:235", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_portfolio_router_audit_2026_05_07.py:235"}, "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-29a4d0b3f08b39be", "name": "Commented-code block (5 lines) in analytics-service/tests/test_outcomes_kpi_parity.py:98", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_outcomes_kpi_parity.py:98"}, "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-1f9c2db177c4d950", "name": "Commented-code block (8 lines) in analytics-service/tests/test_equity_reconstruction.py:297", "shortDescription": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_equity_reconstruction.py:297"}, "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-6917c3bdcc83a0fe", "name": "Legacy-named symbol `test_90_day_gate_fetches_archive_when_old` in analytics-service/tests/test_exchange_harness.py:227", "shortDescription": {"text": "Legacy-named symbol `test_90_day_gate_fetches_archive_when_old` in analytics-service/tests/test_exchange_harness.py:227"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-859ba8b8c9e505f2", "name": "Commented-code block (5 lines) in analytics-service/tests/test_exchange_harness.py:485", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_exchange_harness.py:485"}, "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-ee5808f7a3280dfb", "name": "Commented-code block (5 lines) in analytics-service/tests/test_main_worker.py:76", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_main_worker.py:76"}, "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-39766d5d38e6936b", "name": "Commented-code block (7 lines) in analytics-service/tests/test_audit.py:127", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_audit.py:127"}, "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-da5dd792f3945679", "name": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/tests/test_compute_similarity_sql.py:20", "shortDescription": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/tests/test_compute_similarity_sql.py:20"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-016a0bbe517c623d", "name": "Commented-code block (6 lines) in analytics-service/tests/test_compute_similarity_sql.py:37", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_compute_similarity_sql.py:37"}, "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-40b4317ed6789d49", "name": "Legacy-named symbol `test_get_and_clear_returns_defensive_copy` in analytics-service/tests/test_exchange.py:5142", "shortDescription": {"text": "Legacy-named symbol `test_get_and_clear_returns_defensive_copy` in analytics-service/tests/test_exchange.py:5142"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-409c42fe7dcf54ae", "name": "Commented-code block (8 lines) in analytics-service/tests/test_exchange.py:163", "shortDescription": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_exchange.py:163"}, "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-386ba02cf01dad1d", "name": "Commented-code block (9 lines) in analytics-service/tests/test_c19_portfolio_fixes.py:381", "shortDescription": {"text": "Commented-code block (9 lines) in analytics-service/tests/test_c19_portfolio_fixes.py:381"}, "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-0cf7962ac918c9d5", "name": "Commented-code block (7 lines) in analytics-service/tests/test_metrics_minigolden.py:320", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_metrics_minigolden.py:320"}, "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-c66d23c4bf4ce412", "name": "Commented-code block (7 lines) in analytics-service/tests/test_conftest_fixture_isolation.py:58", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_conftest_fixture_isolation.py:58"}, "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-c45d0db5c4666bc0", "name": "Commented-code block (7 lines) in analytics-service/tests/test_repro_key_flow.py:24", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_repro_key_flow.py:24"}, "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-eb8caa7cb33923ec", "name": "Commented-code block (7 lines) in analytics-service/tests/test_metrics_parity.py:367", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_metrics_parity.py:367"}, "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-5e554415de70291d", "name": "Commented-code block (5 lines) in analytics-service/tests/test_routers_audit_emission.py:68", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_routers_audit_emission.py:68"}, "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-cc0378e50fe8662a", "name": "Commented-code block (7 lines) in analytics-service/tests/test_cron_router.py:334", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_cron_router.py:334"}, "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-d6d7a5064a751c14", "name": "Legacy-named symbol `test_weights_version_pinned_v2` in analytics-service/tests/test_match_engine.py:1208", "shortDescription": {"text": "Legacy-named symbol `test_weights_version_pinned_v2` in analytics-service/tests/test_match_engine.py:1208"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-acd4861622b0cfb1", "name": "Commented-code block (6 lines) in analytics-service/tests/test_match_engine.py:36", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_match_engine.py:36"}, "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-aba7564b316b4c06", "name": "Commented-code block (9 lines) in analytics-service/tests/test_logging_config.py:114", "shortDescription": {"text": "Commented-code block (9 lines) in analytics-service/tests/test_logging_config.py:114"}, "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-0b4b3108bc24c492", "name": "Commented-code block (8 lines) in analytics-service/tests/test_analytics_runner.py:42", "shortDescription": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_analytics_runner.py:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dbcc8e0bddbaaf3a", "name": "Legacy-named symbol `test_drain_missing_metadata_treated_as_legacy` in analytics-service/tests/test_long_fetch.py:317", "shortDescription": {"text": "Legacy-named symbol `test_drain_missing_metadata_treated_as_legacy` in analytics-service/tests/test_long_fetch.py:317"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6281c8ce98ae217f", "name": "Commented-code block (5 lines) in analytics-service/tests/test_position_reconstruction_edges.py:136", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_position_reconstruction_edges.py:136"}, "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-084e7584a6ec4d34", "name": "Commented-code block (10 lines) in analytics-service/tests/test_db.py:272", "shortDescription": {"text": "Commented-code block (10 lines) in analytics-service/tests/test_db.py:272"}, "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-1703cb06534160b8", "name": "Commented-code block (6 lines) in analytics-service/tests/test_job_worker.py:1624", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_job_worker.py:1624"}, "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-01785570e4fa52ac", "name": "Commented-code block (6 lines) in analytics-service/tests/test_bridge_scoring.py:236", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_bridge_scoring.py:236"}, "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-caeb9175fac6343b", "name": "Commented-code block (7 lines) in analytics-service/tests/test_csv_validator.py:152", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_csv_validator.py:152"}, "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-d7b8de0b936d5f9a", "name": "Commented-code block (6 lines) in analytics-service/tests/test_sentry_init.py:67", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_sentry_init.py:67"}, "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-3ac595d798cf02cc", "name": "Commented-code block (8 lines) in analytics-service/tests/test_csv_analytics_runner.py:206", "shortDescription": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_csv_analytics_runner.py:206"}, "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-92f6b211872f1e89", "name": "Commented-code block (6 lines) in analytics-service/tests/test_resend_correlation_rls.py:113", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_resend_correlation_rls.py:113"}, "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-e79d080d02e637f4", "name": "Commented-code block (6 lines) in analytics-service/tests/test_window_alignment.py:108", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_window_alignment.py:108"}, "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-8a58fe4f3b32d7f7", "name": "Commented-code block (12 lines) in analytics-service/tests/test_worker_load.py:68", "shortDescription": {"text": "Commented-code block (12 lines) in analytics-service/tests/test_worker_load.py:68"}, "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-9d0c0730fd38f917", "name": "Commented-code block (5 lines) in analytics-service/tests/fixtures/regen_golden.py:120", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/tests/fixtures/regen_golden.py:120"}, "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-7573c758730ee5a9", "name": "Commented-code block (8 lines) in analytics-service/scripts/phase12_deploy.py:53", "shortDescription": {"text": "Commented-code block (8 lines) in analytics-service/scripts/phase12_deploy.py:53"}, "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-e14f475741f9a815", "name": "Network/subprocess call without timeout or try/except \u2014 analytics-service/scripts/phase12_deploy.py:133", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 analytics-service/scripts/phase12_deploy.py:133"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-78f5aa62bb204867", "name": "Commented-code block (5 lines) in analytics-service/scripts/reset_stuck_computing_rows.py:56", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/scripts/reset_stuck_computing_rows.py:56"}, "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-f856c4b451fc6cd0", "name": "Commented-code block (6 lines) in analytics-service/scripts/phase12_kill_switch.py:88", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/scripts/phase12_kill_switch.py:88"}, "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-4548e63ef99b9e42", "name": "Network/subprocess call without timeout or try/except \u2014 analytics-service/scripts/phase12_kill_switch.py:190", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 analytics-service/scripts/phase12_kill_switch.py:190"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e6ac69edfe43a052", "name": "Commented-code block (6 lines) in analytics-service/scripts/phase12_backfill_enqueue.py:58", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/scripts/phase12_backfill_enqueue.py:58"}, "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-1835f9f0cc20fb1b", "name": "Commented-code block (6 lines) in analytics-service/scripts/record_cassettes.py:81", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/scripts/record_cassettes.py:81"}, "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-f2947d01e561e955", "name": "Commented-code block (7 lines) in analytics-service/models/schemas.py:91", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/models/schemas.py:91"}, "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-4a4dcec6d4674844", "name": "Commented-code block (8 lines) in analytics-service/routers/simulator.py:47", "shortDescription": {"text": "Commented-code block (8 lines) in analytics-service/routers/simulator.py:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5f707ca219e0a03c", "name": "Legacy-named symbol `verification_requests_legacy` in analytics-service/routers/portfolio.py:2151", "shortDescription": {"text": "Legacy-named symbol `verification_requests_legacy` in analytics-service/routers/portfolio.py:2151"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d238088472d29be7", "name": "Commented-code block (5 lines) in analytics-service/routers/portfolio.py:53", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/routers/portfolio.py:53"}, "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-6619d540195cd4d6", "name": "Commented-code block (9 lines) in analytics-service/routers/process_key.py:56", "shortDescription": {"text": "Commented-code block (9 lines) in analytics-service/routers/process_key.py:56"}, "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-151777bac5d3dbb5", "name": "Commented-code block (6 lines) in analytics-service/routers/cron.py:19", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/routers/cron.py:19"}, "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-f42491d3e4e93bed", "name": "Commented-code block (5 lines) in analytics-service/routers/debug_key_flow.py:213", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/routers/debug_key_flow.py:213"}, "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-7e3bf9821711c982", "name": "Commented-code block (5 lines) in analytics-service/routers/internal.py:178", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/routers/internal.py:178"}, "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-c67767ddaa37dd12", "name": "Commented-code block (6 lines) in analytics-service/routers/exchange.py:109", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/routers/exchange.py:109"}, "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-d475265e8170bc3e", "name": "Commented-code block (9 lines) in analytics-service/routers/match.py:72", "shortDescription": {"text": "Commented-code block (9 lines) in analytics-service/routers/match.py:72"}, "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-f046b24bc2f28c30", "name": "Commented-code block (7 lines) in analytics-service/services/dateday.py:32", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/services/dateday.py:32"}, "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-35a285e0f73fd04e", "name": "Commented-code block (6 lines) in analytics-service/services/analytics_runner.py:75", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/services/analytics_runner.py:75"}, "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-dc6dd5ff5fda70d5", "name": "Commented-code block (6 lines) in analytics-service/services/audit.py:67", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/services/audit.py:67"}, "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-3c7bbb7725cfe83e", "name": "Commented-code block (6 lines) in analytics-service/services/allocator_positions.py:49", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/services/allocator_positions.py:49"}, "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-c17f1c9567117887", "name": "Commented-code block (8 lines) in analytics-service/services/portfolio_optimizer.py:18", "shortDescription": {"text": "Commented-code block (8 lines) in analytics-service/services/portfolio_optimizer.py:18"}, "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-cb38eba79894ac66", "name": "Commented-code block (9 lines) in analytics-service/services/transforms.py:105", "shortDescription": {"text": "Commented-code block (9 lines) in analytics-service/services/transforms.py:105"}, "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-6657489e5e8e130f", "name": "Commented-code block (5 lines) in analytics-service/services/portfolio_metrics.py:266", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/services/portfolio_metrics.py:266"}, "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-92d39907160b7d2a", "name": "Commented-code block (9 lines) in analytics-service/services/redact.py:71", "shortDescription": {"text": "Commented-code block (9 lines) in analytics-service/services/redact.py:71"}, "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-72cd0cd8b9dc3e55", "name": "Commented-code block (5 lines) in analytics-service/services/funding_fetch.py:72", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/services/funding_fetch.py:72"}, "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-79e1253aef543624", "name": "Commented-code block (6 lines) in analytics-service/services/equity_reconstruction.py:65", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/services/equity_reconstruction.py:65"}, "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-3ddd3621f3826bc3", "name": "Commented-code block (5 lines) in analytics-service/services/rate_limit.py:24", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/services/rate_limit.py:24"}, "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-5ae17169147b0a7e", "name": "Commented-code block (11 lines) in analytics-service/services/metrics.py:15", "shortDescription": {"text": "Commented-code block (11 lines) in analytics-service/services/metrics.py: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-2b425be4cb058618", "name": "Commented-code block (5 lines) in analytics-service/services/match_engine.py:45", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/services/match_engine.py:45"}, "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-a8da7a74d49ab231", "name": "Commented-code block (7 lines) in analytics-service/services/csv_validator.py:39", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/services/csv_validator.py:39"}, "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-bbcbf9a3b51b473d", "name": "Commented-code block (8 lines) in analytics-service/services/encryption.py:101", "shortDescription": {"text": "Commented-code block (8 lines) in analytics-service/services/encryption.py:101"}, "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-0bb029b312dc13a2", "name": "Commented-code block (10 lines) in analytics-service/services/bridge_scoring.py:47", "shortDescription": {"text": "Commented-code block (10 lines) in analytics-service/services/bridge_scoring.py:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e5cce80dd7c3d71f", "name": "Commented-code block (10 lines) in analytics-service/services/geo_block.py:67", "shortDescription": {"text": "Commented-code block (10 lines) in analytics-service/services/geo_block.py:67"}, "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-c4060705c3ef1fb2", "name": "Commented-code block (5 lines) in analytics-service/services/closed_sets.py:89", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/services/closed_sets.py:89"}, "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-106fa99d8fdacb39", "name": "Commented-code block (6 lines) in analytics-service/services/key_permissions.py:42", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/services/key_permissions.py:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fc14ca7c4cda2ded", "name": "Commented-code block (11 lines) in analytics-service/services/logging_config.py:168", "shortDescription": {"text": "Commented-code block (11 lines) in analytics-service/services/logging_config.py:168"}, "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-5206db0e43ae804d", "name": "Commented-code block (10 lines) in analytics-service/services/exchange.py:21", "shortDescription": {"text": "Commented-code block (10 lines) in analytics-service/services/exchange.py:21"}, "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-5ab21270aa854a21", "name": "Commented-code block (7 lines) in analytics-service/services/match_eval.py:90", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/services/match_eval.py:90"}, "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-3a1bd914d78a76c1", "name": "Commented-code block (6 lines) in analytics-service/services/job_worker.py:57", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/services/job_worker.py:57"}, "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-77e757ddab1cd068", "name": "Commented-code block (6 lines) in analytics-service/services/feedback_engine.py:86", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/services/feedback_engine.py:86"}, "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-08129524de23c4c1", "name": "Commented-code block (6 lines) in analytics-service/services/feature_flags.py:48", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/services/feature_flags.py:48"}, "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-1a81a512b974247b", "name": "Commented-code block (7 lines) in analytics-service/services/portfolio_risk.py:68", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/services/portfolio_risk.py:68"}, "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-329bb50245a8ae37", "name": "Commented-code block (8 lines) in analytics-service/services/position_reconstruction.py:42", "shortDescription": {"text": "Commented-code block (8 lines) in analytics-service/services/position_reconstruction.py:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e54195984545a30d", "name": "Commented-code block (7 lines) in analytics-service/services/simulator_scoring.py:109", "shortDescription": {"text": "Commented-code block (7 lines) in analytics-service/services/simulator_scoring.py:109"}, "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-8f75dbc88818bd44", "name": "Commented-code block (6 lines) in analytics-service/services/db.py:25", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/services/db.py:25"}, "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-6ee1bc07a02f9986", "name": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/fingerprint.py:62", "shortDescription": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/fingerprint.py:62"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d1a0f571b3eb62ee", "name": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/bybit.py:89", "shortDescription": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/bybit.py:89"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a362ff6155faa03e", "name": "Commented-code block (6 lines) in analytics-service/services/ingestion/__init__.py:87", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/services/ingestion/__init__.py:87"}, "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-02f6fcda136bf1cb", "name": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/okx.py:12", "shortDescription": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/okx.py:12"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b8c2b260955420d0", "name": "Commented-code block (5 lines) in analytics-service/services/ingestion/adapter.py:77", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/services/ingestion/adapter.py:77"}, "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-ff36a08f85f037c8", "name": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/csv_adapter.py:218", "shortDescription": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/csv_adapter.py:218"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-868392f3ed578423", "name": "Commented-code block (6 lines) in analytics-service/services/ingestion/csv_adapter.py:46", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/services/ingestion/csv_adapter.py:46"}, "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-94bee0950c06beac", "name": "Commented-code block (5 lines) in analytics-service/services/ingestion/long_fetch.py:116", "shortDescription": {"text": "Commented-code block (5 lines) in analytics-service/services/ingestion/long_fetch.py:116"}, "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-58210e41653a3acd", "name": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/binance.py:123", "shortDescription": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/binance.py:123"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-982be15c172c1897", "name": "Commented-code block (6 lines) in analytics-service/services/ingestion/binance.py:77", "shortDescription": {"text": "Commented-code block (6 lines) in analytics-service/services/ingestion/binance.py:77"}, "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-92d5d4fe46f4df34", "name": "Commented-code block (5 lines) in e2e/demo-public.spec.ts:50", "shortDescription": {"text": "Commented-code block (5 lines) in e2e/demo-public.spec.ts:50"}, "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-49fd99f96b687f7a", "name": "Commented-code block (12 lines) in e2e/for-quants-onboarding.spec.ts:184", "shortDescription": {"text": "Commented-code block (12 lines) in e2e/for-quants-onboarding.spec.ts:184"}, "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-d1b70ff7b3555a65", "name": "Commented-code block (5 lines) in e2e/wizard-axe.spec.ts:64", "shortDescription": {"text": "Commented-code block (5 lines) in e2e/wizard-axe.spec.ts:64"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d3a7220087ccd642", "name": "Commented-code block (19 lines) in e2e/match-queue.spec.ts:14", "shortDescription": {"text": "Commented-code block (19 lines) in e2e/match-queue.spec.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-6591ff4bf58b864c", "name": "Commented-code block (8 lines) in e2e/discovery-axe.spec.ts:55", "shortDescription": {"text": "Commented-code block (8 lines) in e2e/discovery-axe.spec.ts:55"}, "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-2314c7d049f1f031", "name": "Commented-code block (5 lines) in e2e/onboarding-banner-smoke.spec.ts:49", "shortDescription": {"text": "Commented-code block (5 lines) in e2e/onboarding-banner-smoke.spec.ts:49"}, "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-ecf6506daa21e6e6", "name": "Legacy-named symbol `strategy_v2` in e2e/strategy-v2-axe.spec.ts:44", "shortDescription": {"text": "Legacy-named symbol `strategy_v2` in e2e/strategy-v2-axe.spec.ts:44"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1fbdb12aa79683d2", "name": "Commented-code block (11 lines) in e2e/discovery-sparkline-regression.spec.ts:105", "shortDescription": {"text": "Commented-code block (11 lines) in e2e/discovery-sparkline-regression.spec.ts:105"}, "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-51d0278bf60000f0", "name": "Commented-code block (5 lines) in e2e/csv-upload-flow.spec.ts:172", "shortDescription": {"text": "Commented-code block (5 lines) in e2e/csv-upload-flow.spec.ts:172"}, "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-6923d77ae69f4b77", "name": "Commented-code block (7 lines) in e2e/demo-founder-view.spec.ts:49", "shortDescription": {"text": "Commented-code block (7 lines) in e2e/demo-founder-view.spec.ts:49"}, "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-864d56c61b7df4ff", "name": "Commented-code block (10 lines) in e2e/discovery-prefs-isolation.spec.ts:64", "shortDescription": {"text": "Commented-code block (10 lines) in e2e/discovery-prefs-isolation.spec.ts:64"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f3b8805586050b1d", "name": "Commented-code block (5 lines) in e2e/strategy-v2-partial-data.spec.ts:134", "shortDescription": {"text": "Commented-code block (5 lines) in e2e/strategy-v2-partial-data.spec.ts:134"}, "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-2c915d20769e9dc1", "name": "Legacy-named symbol `strategy_v2` in e2e/strategy-v2-chart-parity.spec.ts:66", "shortDescription": {"text": "Legacy-named symbol `strategy_v2` in e2e/strategy-v2-chart-parity.spec.ts:66"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-76b883bcbd82eaa1", "name": "Commented-code block (10 lines) in e2e/strategy-v2-chart-parity.spec.ts:37", "shortDescription": {"text": "Commented-code block (10 lines) in e2e/strategy-v2-chart-parity.spec.ts:37"}, "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-f374c85fe71ce39c", "name": "Commented-code block (5 lines) in e2e/discovery-watchlist.spec.ts:87", "shortDescription": {"text": "Commented-code block (5 lines) in e2e/discovery-watchlist.spec.ts:87"}, "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-369d6183c86a5111", "name": "Commented-code block (6 lines) in e2e/mandate-form.spec.ts:156", "shortDescription": {"text": "Commented-code block (6 lines) in e2e/mandate-form.spec.ts:156"}, "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-e260a4cedc3fa11a", "name": "Commented-code block (6 lines) in e2e/portfolio-pdf-demo.spec.ts:101", "shortDescription": {"text": "Commented-code block (6 lines) in e2e/portfolio-pdf-demo.spec.ts:101"}, "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-aa633943a6167773", "name": "Commented-code block (8 lines) in e2e/security-page.spec.ts:97", "shortDescription": {"text": "Commented-code block (8 lines) in e2e/security-page.spec.ts:97"}, "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-e9b4f759b85f7e3b", "name": "Legacy-named symbol `quantalyze_wizard_state_v1` in e2e/wizard-hydration-probe.spec.ts:148", "shortDescription": {"text": "Legacy-named symbol `quantalyze_wizard_state_v1` in e2e/wizard-hydration-probe.spec.ts:148"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6449cb45d0850ba5", "name": "Commented-code block (6 lines) in e2e/wizard-hydration-probe.spec.ts:42", "shortDescription": {"text": "Commented-code block (6 lines) in e2e/wizard-hydration-probe.spec.ts:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4270000e74b59a3d", "name": "Commented-code block (5 lines) in e2e/discovery-hide-examples-default.spec.ts:40", "shortDescription": {"text": "Commented-code block (5 lines) in e2e/discovery-hide-examples-default.spec.ts:40"}, "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-a344be273a856bf2", "name": "Legacy-named symbol `strategy_v2` in e2e/strategy-v2-keyboard.spec.ts:70", "shortDescription": {"text": "Legacy-named symbol `strategy_v2` in e2e/strategy-v2-keyboard.spec.ts:70"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-841dea6e3d81538f", "name": "Commented-code block (13 lines) in e2e/strategy-v2-keyboard.spec.ts:40", "shortDescription": {"text": "Commented-code block (13 lines) in e2e/strategy-v2-keyboard.spec.ts:40"}, "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-1303b57a8fabe503", "name": "Commented-code block (10 lines) in e2e/onboarding-funnel.spec.ts:118", "shortDescription": {"text": "Commented-code block (10 lines) in e2e/onboarding-funnel.spec.ts:118"}, "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-7ab24c46f779a5e5", "name": "Commented-code block (8 lines) in e2e/admin-csv-status-axe.spec.ts:58", "shortDescription": {"text": "Commented-code block (8 lines) in e2e/admin-csv-status-axe.spec.ts:58"}, "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-e95af626137654e8", "name": "Commented-code block (5 lines) in e2e/helpers/seed-test-project.ts:82", "shortDescription": {"text": "Commented-code block (5 lines) in e2e/helpers/seed-test-project.ts:82"}, "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-2f398bac3c1c9045", "name": "Commented-code block (9 lines) in e2e/helpers/login.ts:38", "shortDescription": {"text": "Commented-code block (9 lines) in e2e/helpers/login.ts:38"}, "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-e5f1624c66850566", "name": "Commented-code block (6 lines) in e2e/helpers/cleanup-test-project.ts:33", "shortDescription": {"text": "Commented-code block (6 lines) in e2e/helpers/cleanup-test-project.ts:33"}, "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-6af648a07c4f5617", "name": "72 env vars used in code but missing from .env.example", "shortDescription": {"text": "72 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `ALERT_ACK_SECRET`, `ALLOWED_ORIGINS`, `ALLOW_NO_LOCKFILE`, `AWS_LAMBDA_FUNCTION_NAME`, `BASE_URL`, `CI`, `DATABASE_URL`, `DB_THREAD_POOL_SIZE` + 64 more. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2c04133e54348533", "name": "Near-duplicate function bodies in 2 places", "shortDescription": {"text": "Near-duplicate function bodies in 2 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nanalytics-service/scripts/phase12_kill_switch.py:measure_p999_via_sql, analytics-service/scripts/phase12_kill_switch.py:measure_p999\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a28c91ebe6f1b148", "name": "FastAPI POST `portfolio_simulator` without auth dependency \u2014 analytics-service/routers/simulator.py:231", "shortDescription": {"text": "FastAPI POST `portfolio_simulator` without auth dependency \u2014 analytics-service/routers/simulator.py:231"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7b0c9a645d7c01d1", "name": "FastAPI POST `portfolio_analytics` without auth dependency \u2014 analytics-service/routers/portfolio.py:1529", "shortDescription": {"text": "FastAPI POST `portfolio_analytics` without auth dependency \u2014 analytics-service/routers/portfolio.py:1529"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a07d7636500f36f7", "name": "FastAPI POST `portfolio_optimizer` without auth dependency \u2014 analytics-service/routers/portfolio.py:1589", "shortDescription": {"text": "FastAPI POST `portfolio_optimizer` without auth dependency \u2014 analytics-service/routers/portfolio.py:1589"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1b3d86fb6ea1c571", "name": "FastAPI POST `portfolio_bridge` without auth dependency \u2014 analytics-service/routers/portfolio.py:1849", "shortDescription": {"text": "FastAPI POST `portfolio_bridge` without auth dependency \u2014 analytics-service/routers/portfolio.py:1849"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-01b458dd9048ad91", "name": "FastAPI POST `verify_strategy` without auth dependency \u2014 analytics-service/routers/portfolio.py:2144", "shortDescription": {"text": "FastAPI POST `verify_strategy` without auth dependency \u2014 analytics-service/routers/portfolio.py:2144"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-45d9ad1a958b9348", "name": "FastAPI POST `csv_validate` without auth dependency \u2014 analytics-service/routers/csv.py:56", "shortDescription": {"text": "FastAPI POST `csv_validate` without auth dependency \u2014 analytics-service/routers/csv.py:56"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-af5143fc018cf10f", "name": "FastAPI POST `compute_analytics` without auth dependency \u2014 analytics-service/routers/analytics.py:15", "shortDescription": {"text": "FastAPI POST `compute_analytics` without auth dependency \u2014 analytics-service/routers/analytics.py:15"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-89c0c91ee2fa865d", "name": "FastAPI POST `process_key` without auth dependency \u2014 analytics-service/routers/process_key.py:338", "shortDescription": {"text": "FastAPI POST `process_key` without auth dependency \u2014 analytics-service/routers/process_key.py:338"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ef834b035984cc71", "name": "FastAPI POST `cron_sync` without auth dependency \u2014 analytics-service/routers/cron.py:555", "shortDescription": {"text": "FastAPI POST `cron_sync` without auth dependency \u2014 analytics-service/routers/cron.py:555"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-5ad39f065bdcf289", "name": "FastAPI POST `validate_key` without auth dependency \u2014 analytics-service/routers/debug_key_flow.py:113", "shortDescription": {"text": "FastAPI POST `validate_key` without auth dependency \u2014 analytics-service/routers/debug_key_flow.py:113"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-53f7e6012ccff108", "name": "FastAPI POST `encrypt_key` without auth dependency \u2014 analytics-service/routers/debug_key_flow.py:159", "shortDescription": {"text": "FastAPI POST `encrypt_key` without auth dependency \u2014 analytics-service/routers/debug_key_flow.py:159"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-be5486d2af71759e", "name": "FastAPI POST `fetch_trades` without auth dependency \u2014 analytics-service/routers/debug_key_flow.py:196", "shortDescription": {"text": "FastAPI POST `fetch_trades` without auth dependency \u2014 analytics-service/routers/debug_key_flow.py:196"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2fb7042fea89193a", "name": "FastAPI POST `get_key_permissions` without auth dependency \u2014 analytics-service/routers/internal.py:126", "shortDescription": {"text": "FastAPI POST `get_key_permissions` without auth dependency \u2014 analytics-service/routers/internal.py:126"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-5a54a19269d777c1", "name": "FastAPI POST `validate_key` without auth dependency \u2014 analytics-service/routers/exchange.py:25", "shortDescription": {"text": "FastAPI POST `validate_key` without auth dependency \u2014 analytics-service/routers/exchange.py:25"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-72ce61fdcf25808b", "name": "FastAPI POST `encrypt_key` without auth dependency \u2014 analytics-service/routers/exchange.py:75", "shortDescription": {"text": "FastAPI POST `encrypt_key` without auth dependency \u2014 analytics-service/routers/exchange.py:75"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3e21b9b3e904c96d", "name": "FastAPI POST `fetch_trades` without auth dependency \u2014 analytics-service/routers/exchange.py:88", "shortDescription": {"text": "FastAPI POST `fetch_trades` without auth dependency \u2014 analytics-service/routers/exchange.py:88"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-caed0bd1311a51a7", "name": "FastAPI POST `recompute` without auth dependency \u2014 analytics-service/routers/match.py:1619", "shortDescription": {"text": "FastAPI POST `recompute` without auth dependency \u2014 analytics-service/routers/match.py:1619"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a92cf7137ffcf58b", "name": "FastAPI POST `cron_recompute` without auth dependency \u2014 analytics-service/routers/match.py:1829", "shortDescription": {"text": "FastAPI POST `cron_recompute` without auth dependency \u2014 analytics-service/routers/match.py:1829"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3ea280c4782abe00", "name": "Dangling fetch: GET /x (tools/eslint-plugin-quantalyze/tests/no-raw-localstorage.test.ts:26)", "shortDescription": {"text": "Dangling fetch: GET /x (tools/eslint-plugin-quantalyze/tests/no-raw-localstorage.test.ts:26)"}, "fullDescription": {"text": "`tools/eslint-plugin-quantalyze/tests/no-raw-localstorage.test.ts:26` calls `GET /x` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/x`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1da3c1caf4516b80", "name": "Dangling fetch: POST /api/for-quants-lead (src/app/for-quants/RequestCallModal.tsx:140)", "shortDescription": {"text": "Dangling fetch: POST /api/for-quants-lead (src/app/for-quants/RequestCallModal.tsx:140)"}, "fullDescription": {"text": "`src/app/for-quants/RequestCallModal.tsx:140` calls `POST /api/for-quants-lead` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/for-quants-lead`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8d7d0bdaf6007fb8", "name": "Dangling fetch: POST /api/admin/partner-import (src/app/(dashboard)/admin/partner-import/page.tsx:61)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/partner-import (src/app/(dashboard)/admin/partner-import/page.tsx:61)"}, "fullDescription": {"text": "`src/app/(dashboard)/admin/partner-import/page.tsx:61` calls `POST /api/admin/partner-import` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/partner-import`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2168cb6371ae4491", "name": "Dangling fetch: GET /api/me/audit-log/export (src/app/(dashboard)/profile/components/AuditLogSubsection.tsx:35)", "shortDescription": {"text": "Dangling fetch: GET /api/me/audit-log/export (src/app/(dashboard)/profile/components/AuditLogSubsection.tsx:35)"}, "fullDescription": {"text": "`src/app/(dashboard)/profile/components/AuditLogSubsection.tsx:35` calls `GET /api/me/audit-log/export` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/me/audit-log/export`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-512c0515dfeb3787", "name": "Dangling fetch: POST /api/for-quants-lead (src/app/(dashboard)/strategies/new/wizard/DesktopGate.tsx:42)", "shortDescription": {"text": "Dangling fetch: POST /api/for-quants-lead (src/app/(dashboard)/strategies/new/wizard/DesktopGate.tsx:42)"}, "fullDescription": {"text": "`src/app/(dashboard)/strategies/new/wizard/DesktopGate.tsx:42` calls `POST /api/for-quants-lead` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/for-quants-lead`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-82ed8afd7a196f49", "name": "Dangling fetch: DELETE /api/strategies/draft/${strategyId} (src/app/(dashboard)/strategies/new/wizard/WizardClient.tsx:4", "shortDescription": {"text": "Dangling fetch: DELETE /api/strategies/draft/${strategyId} (src/app/(dashboard)/strategies/new/wizard/WizardClient.tsx:470)"}, "fullDescription": {"text": "`src/app/(dashboard)/strategies/new/wizard/WizardClient.tsx:470` calls `DELETE /api/strategies/draft/${strategyId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/strategies/draft/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4fdad195bc9d8f94", "name": "Dangling fetch: POST /api/strategies/csv-validate (src/app/(dashboard)/strategies/new/wizard/steps/CsvUploadStep.tsx:266", "shortDescription": {"text": "Dangling fetch: POST /api/strategies/csv-validate (src/app/(dashboard)/strategies/new/wizard/steps/CsvUploadStep.tsx:266)"}, "fullDescription": {"text": "`src/app/(dashboard)/strategies/new/wizard/steps/CsvUploadStep.tsx:266` calls `POST /api/strategies/csv-validate` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/strategies/csv-validate`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b21bebab78845b41", "name": "Dangling fetch: POST /api/strategies/finalize-wizard (src/app/(dashboard)/strategies/new/wizard/steps/SubmitStep.tsx:74)", "shortDescription": {"text": "Dangling fetch: POST /api/strategies/finalize-wizard (src/app/(dashboard)/strategies/new/wizard/steps/SubmitStep.tsx:74)"}, "fullDescription": {"text": "`src/app/(dashboard)/strategies/new/wizard/steps/SubmitStep.tsx:74` calls `POST /api/strategies/finalize-wizard` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/strategies/finalize-wizard`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-36526c6f5c48d342", "name": "Dangling fetch: POST /api/strategies/create-with-key (src/app/(dashboard)/strategies/new/wizard/steps/ConnectKeyStep.tsx", "shortDescription": {"text": "Dangling fetch: POST /api/strategies/create-with-key (src/app/(dashboard)/strategies/new/wizard/steps/ConnectKeyStep.tsx:137)"}, "fullDescription": {"text": "`src/app/(dashboard)/strategies/new/wizard/steps/ConnectKeyStep.tsx:137` calls `POST /api/strategies/create-with-key` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/strategies/create-with-key`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d4fc6dcc385c1899", "name": "Dangling fetch: POST /api/strategies/csv-finalize (src/app/(dashboard)/strategies/new/wizard/steps/CsvSubmitStep.tsx:98)", "shortDescription": {"text": "Dangling fetch: POST /api/strategies/csv-finalize (src/app/(dashboard)/strategies/new/wizard/steps/CsvSubmitStep.tsx:98)"}, "fullDescription": {"text": "`src/app/(dashboard)/strategies/new/wizard/steps/CsvSubmitStep.tsx:98` calls `POST /api/strategies/csv-finalize` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/strategies/csv-finalize`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-96b3b77d3933a141", "name": "Dangling fetch: POST /api/keys/sync (src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.tsx:207)", "shortDescription": {"text": "Dangling fetch: POST /api/keys/sync (src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.tsx:207)"}, "fullDescription": {"text": "`src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.tsx:207` calls `POST /api/keys/sync` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/keys/sync`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-463f283de24ca3a5", "name": "Dangling fetch: GET /api/bridge/outcome/${outcome.id}/curves (src/app/(dashboard)/allocations/widgets/outcomes/OutcomesW", "shortDescription": {"text": "Dangling fetch: GET /api/bridge/outcome/${outcome.id}/curves (src/app/(dashboard)/allocations/widgets/outcomes/OutcomesWidget.tsx:369)"}, "fullDescription": {"text": "`src/app/(dashboard)/allocations/widgets/outcomes/OutcomesWidget.tsx:369` calls `GET /api/bridge/outcome/${outcome.id}/curves` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/bridge/outcome/<p>/curves`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f7eefe0899c554b9", "name": "Dangling fetch: GET /api/bridge/outcome/{id}/curves (src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:", "shortDescription": {"text": "Dangling fetch: GET /api/bridge/outcome/{id}/curves (src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:435)"}, "fullDescription": {"text": "`src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:435` calls `GET /api/bridge/outcome/{id}/curves` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/bridge/outcome/<p>/curves`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d2af4e83d39ddee2", "name": "Dangling fetch: PUT /api/preferences (src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:82)", "shortDescription": {"text": "Dangling fetch: PUT /api/preferences (src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:82)"}, "fullDescription": {"text": "`src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:82` calls `PUT /api/preferences` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/preferences`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-369eaf316f93e4c0", "name": "Dangling fetch: PUT /api/preferences (src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:93)", "shortDescription": {"text": "Dangling fetch: PUT /api/preferences (src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:93)"}, "fullDescription": {"text": "`src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:93` calls `PUT /api/preferences` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/preferences`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-cfbff1b8c768ff5d", "name": "Dangling fetch: POST /api/bridge/outcome/dismiss (src/app/(dashboard)/allocations/components/BridgeOutcomeBanner.tsx:36)", "shortDescription": {"text": "Dangling fetch: POST /api/bridge/outcome/dismiss (src/app/(dashboard)/allocations/components/BridgeOutcomeBanner.tsx:36)"}, "fullDescription": {"text": "`src/app/(dashboard)/allocations/components/BridgeOutcomeBanner.tsx:36` calls `POST /api/bridge/outcome/dismiss` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/bridge/outcome/dismiss`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d8a87ae584a686ef", "name": "Dangling fetch: POST /api/allocator/scenario/commit (src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.tsx", "shortDescription": {"text": "Dangling fetch: POST /api/allocator/scenario/commit (src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.tsx:524)"}, "fullDescription": {"text": "`src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.tsx:524` calls `POST /api/allocator/scenario/commit` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/allocator/scenario/commit`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0906e3606b15e705", "name": "Dangling fetch: GET /api/alerts/critical?portfolio_id=${encodeURIComponent(portfolioId)} (src/app/(dashboard)/allocation", "shortDescription": {"text": "Dangling fetch: GET /api/alerts/critical?portfolio_id=${encodeURIComponent(portfolioId)} (src/app/(dashboard)/allocations/components/AlertBanner.tsx:37)"}, "fullDescription": {"text": "`src/app/(dashboard)/allocations/components/AlertBanner.tsx:37` calls `GET /api/alerts/critical?portfolio_id=${encodeURIComponent(portfolioId)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/alerts/critical`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-47c8b5efe5144662", "name": "Dangling fetch: GET /api/strategies/browse (src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:69)", "shortDescription": {"text": "Dangling fetch: GET /api/strategies/browse (src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:69)"}, "fullDescription": {"text": "`src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:69` calls `GET /api/strategies/browse` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/strategies/browse`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7652bbd22e161be8", "name": "Dangling fetch: GET /api/strategies/browse (src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:160)", "shortDescription": {"text": "Dangling fetch: GET /api/strategies/browse (src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:160)"}, "fullDescription": {"text": "`src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:160` calls `GET /api/strategies/browse` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/strategies/browse`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9f185434a3118346", "name": "Dangling fetch: GET /api/notes?scope_kind=holding&scope_ref=${encodeURIComponent(scope_ref)} (src/app/(dashboard)/alloca", "shortDescription": {"text": "Dangling fetch: GET /api/notes?scope_kind=holding&scope_ref=${encodeURIComponent(scope_ref)} (src/app/(dashboard)/allocations/components/HoldingDetail.tsx:90)"}, "fullDescription": {"text": "`src/app/(dashboard)/allocations/components/HoldingDetail.tsx:90` calls `GET /api/notes?scope_kind=holding&scope_ref=${encodeURIComponent(scope_ref)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/notes`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c83a93749292e19b", "name": "Dangling fetch: POST /api/attestation (src/components/legal/AccreditedInvestorGate.tsx:30)", "shortDescription": {"text": "Dangling fetch: POST /api/attestation (src/components/legal/AccreditedInvestorGate.tsx:30)"}, "fullDescription": {"text": "`src/components/legal/AccreditedInvestorGate.tsx:30` calls `POST /api/attestation` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/attestation`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-fb1545779e9eacad", "name": "Dangling fetch: POST /api/keys/validate-and-encrypt (src/components/strategy/ApiKeyManager.tsx:137)", "shortDescription": {"text": "Dangling fetch: POST /api/keys/validate-and-encrypt (src/components/strategy/ApiKeyManager.tsx:137)"}, "fullDescription": {"text": "`src/components/strategy/ApiKeyManager.tsx:137` calls `POST /api/keys/validate-and-encrypt` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/keys/validate-and-encrypt`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0a5107dad6cdb117", "name": "Dangling fetch: POST /api/keys/sync (src/components/strategy/ApiKeyManager.tsx:188)", "shortDescription": {"text": "Dangling fetch: POST /api/keys/sync (src/components/strategy/ApiKeyManager.tsx:188)"}, "fullDescription": {"text": "`src/components/strategy/ApiKeyManager.tsx:188` calls `POST /api/keys/sync` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/keys/sync`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b20e78b9f9a730f5", "name": "Dangling fetch: POST /api/keys/sync (src/components/strategy/ApiKeyManager.tsx:251)", "shortDescription": {"text": "Dangling fetch: POST /api/keys/sync (src/components/strategy/ApiKeyManager.tsx:251)"}, "fullDescription": {"text": "`src/components/strategy/ApiKeyManager.tsx:251` calls `POST /api/keys/sync` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/keys/sync`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-eac7ef81ff2409d5", "name": "Dangling fetch: POST /api/keys/validate-and-encrypt (src/components/strategy/StrategyForm.tsx:103)", "shortDescription": {"text": "Dangling fetch: POST /api/keys/validate-and-encrypt (src/components/strategy/StrategyForm.tsx:103)"}, "fullDescription": {"text": "`src/components/strategy/StrategyForm.tsx:103` calls `POST /api/keys/validate-and-encrypt` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/keys/validate-and-encrypt`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3cfb1fdbdc26235e", "name": "Dangling fetch: POST /api/intro (src/components/strategy/RequestIntroButton.tsx:93)", "shortDescription": {"text": "Dangling fetch: POST /api/intro (src/components/strategy/RequestIntroButton.tsx:93)"}, "fullDescription": {"text": "`src/components/strategy/RequestIntroButton.tsx:93` calls `POST /api/intro` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/intro`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-50e277bed9a8a8a2", "name": "Dangling fetch: POST /api/admin/notify-submission (src/components/strategy/StrategyActions.tsx:41)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/notify-submission (src/components/strategy/StrategyActions.tsx:41)"}, "fullDescription": {"text": "`src/components/strategy/StrategyActions.tsx:41` calls `POST /api/admin/notify-submission` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/notify-submission`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6cfb78cc4ec27f0c", "name": "Dangling fetch: POST /api/intro-response (src/components/strategy/PendingIntros.tsx:61)", "shortDescription": {"text": "Dangling fetch: POST /api/intro-response (src/components/strategy/PendingIntros.tsx:61)"}, "fullDescription": {"text": "`src/components/strategy/PendingIntros.tsx:61` calls `POST /api/intro-response` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/intro-response`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a91f078c44f5c9ae", "name": "Dangling fetch: PUT /api/watchlist/${strategyId} (src/components/strategy/StarToggle.tsx:63)", "shortDescription": {"text": "Dangling fetch: PUT /api/watchlist/${strategyId} (src/components/strategy/StarToggle.tsx:63)"}, "fullDescription": {"text": "`src/components/strategy/StarToggle.tsx:63` calls `PUT /api/watchlist/${strategyId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/watchlist/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6d60774a425d273b", "name": "Dangling fetch: GET /api/notes?scope_kind=bridge_outcome&scope_ref=${encodeURIComponent(outcomeId)} (src/components/note", "shortDescription": {"text": "Dangling fetch: GET /api/notes?scope_kind=bridge_outcome&scope_ref=${encodeURIComponent(outcomeId)} (src/components/notes/BridgeOutcomeNoteSection.tsx:49)"}, "fullDescription": {"text": "`src/components/notes/BridgeOutcomeNoteSection.tsx:49` calls `GET /api/notes?scope_kind=bridge_outcome&scope_ref=${encodeURIComponent(outcomeId)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/notes`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-763587e0b6f96593", "name": "Dangling fetch: GET /api/notes?scope_kind=holding&scope_ref=${encodeURIComponent(scope_ref)} (src/components/notes/Holdi", "shortDescription": {"text": "Dangling fetch: GET /api/notes?scope_kind=holding&scope_ref=${encodeURIComponent(scope_ref)} (src/components/notes/HoldingNoteRow.tsx:158)"}, "fullDescription": {"text": "`src/components/notes/HoldingNoteRow.tsx:158` calls `GET /api/notes?scope_kind=holding&scope_ref=${encodeURIComponent(scope_ref)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/notes`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d796fb353cde26b4", "name": "Dangling fetch: PATCH /api/notes (src/components/notes/useNoteAutoSave.ts:74)", "shortDescription": {"text": "Dangling fetch: PATCH /api/notes (src/components/notes/useNoteAutoSave.ts:74)"}, "fullDescription": {"text": "`src/components/notes/useNoteAutoSave.ts:74` calls `PATCH /api/notes` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/notes`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c0b1f8dbbf24f6e1", "name": "Dangling fetch: POST /api/admin/for-quants-leads/process (src/components/admin/ForQuantsLeadsTable.tsx:66)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/for-quants-leads/process (src/components/admin/ForQuantsLeadsTable.tsx:66)"}, "fullDescription": {"text": "`src/components/admin/ForQuantsLeadsTable.tsx:66` calls `POST /api/admin/for-quants-leads/process` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/for-quants-leads/process`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2d78c1ebe287768a", "name": "Dangling fetch: GET /api/admin/match/eval?${params.toString()} (src/components/admin/MatchEvalDashboard.tsx:59)", "shortDescription": {"text": "Dangling fetch: GET /api/admin/match/eval?${params.toString()} (src/components/admin/MatchEvalDashboard.tsx:59)"}, "fullDescription": {"text": "`src/components/admin/MatchEvalDashboard.tsx:59` calls `GET /api/admin/match/eval?${params.toString()}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/match/eval`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9aa86c12a30cd6e0", "name": "Dangling fetch: GET /api/admin/match/allocators (src/components/admin/MatchQueueIndex.tsx:51)", "shortDescription": {"text": "Dangling fetch: GET /api/admin/match/allocators (src/components/admin/MatchQueueIndex.tsx:51)"}, "fullDescription": {"text": "`src/components/admin/MatchQueueIndex.tsx:51` calls `GET /api/admin/match/allocators` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/match/allocators`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7c930003d5fe7313", "name": "Dangling fetch: GET /api/admin/match/kill-switch (src/components/admin/MatchQueueIndex.tsx:52)", "shortDescription": {"text": "Dangling fetch: GET /api/admin/match/kill-switch (src/components/admin/MatchQueueIndex.tsx:52)"}, "fullDescription": {"text": "`src/components/admin/MatchQueueIndex.tsx:52` calls `GET /api/admin/match/kill-switch` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/match/kill-switch`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3f93c34993dbdffb", "name": "Dangling fetch: POST /api/admin/match/kill-switch (src/components/admin/MatchQueueIndex.tsx:146)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/match/kill-switch (src/components/admin/MatchQueueIndex.tsx:146)"}, "fullDescription": {"text": "`src/components/admin/MatchQueueIndex.tsx:146` calls `POST /api/admin/match/kill-switch` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/match/kill-switch`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8f98268542b6777f", "name": "Dangling fetch: POST /api/admin/match/kill-switch (src/components/admin/MatchQueueIndex.tsx:216)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/match/kill-switch (src/components/admin/MatchQueueIndex.tsx:216)"}, "fullDescription": {"text": "`src/components/admin/MatchQueueIndex.tsx:216` calls `POST /api/admin/match/kill-switch` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/match/kill-switch`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2f97da1df3d8a7a5", "name": "Dangling fetch: POST /api/admin/allocators/${allocatorId}/holdings (src/components/admin/SendIntroPanel.tsx:44)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/allocators/${allocatorId}/holdings (src/components/admin/SendIntroPanel.tsx:44)"}, "fullDescription": {"text": "`src/components/admin/SendIntroPanel.tsx:44` calls `POST /api/admin/allocators/${allocatorId}/holdings` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/allocators/<p>/holdings`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-055afd0456692bfc", "name": "Dangling fetch: PUT /api/admin/match/preferences/${allocatorId} (src/components/admin/PreferencesPanel.tsx:143)", "shortDescription": {"text": "Dangling fetch: PUT /api/admin/match/preferences/${allocatorId} (src/components/admin/PreferencesPanel.tsx:143)"}, "fullDescription": {"text": "`src/components/admin/PreferencesPanel.tsx:143` calls `PUT /api/admin/match/preferences/${allocatorId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/match/preferences/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a42fa0cfd47ac710", "name": "Dangling fetch: POST /api/admin/users/${encodeURIComponent(targetUserId)}/roles (src/components/admin/UserRolesPanel.tsx", "shortDescription": {"text": "Dangling fetch: POST /api/admin/users/${encodeURIComponent(targetUserId)}/roles (src/components/admin/UserRolesPanel.tsx:97)"}, "fullDescription": {"text": "`src/components/admin/UserRolesPanel.tsx:97` calls `POST /api/admin/users/${encodeURIComponent(targetUserId)}/roles` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/users/<p>/roles`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-73661c2f28e41de2", "name": "Dangling fetch: GET /api/admin/compute-jobs?${params.toString()} (src/components/admin/ComputeJobsTable.tsx:94)", "shortDescription": {"text": "Dangling fetch: GET /api/admin/compute-jobs?${params.toString()} (src/components/admin/ComputeJobsTable.tsx:94)"}, "fullDescription": {"text": "`src/components/admin/ComputeJobsTable.tsx:94` calls `GET /api/admin/compute-jobs?${params.toString()}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/compute-jobs`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2305a548fc67362a", "name": "Dangling fetch: POST /api/admin/intro-request (src/components/admin/AdminTabs.tsx:187)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/intro-request (src/components/admin/AdminTabs.tsx:187)"}, "fullDescription": {"text": "`src/components/admin/AdminTabs.tsx:187` calls `POST /api/admin/intro-request` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/intro-request`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4cd38436bd13db7f", "name": "Dangling fetch: POST /api/admin/intro-request (src/components/admin/AdminTabs.tsx:314)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/intro-request (src/components/admin/AdminTabs.tsx:314)"}, "fullDescription": {"text": "`src/components/admin/AdminTabs.tsx:314` calls `POST /api/admin/intro-request` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/intro-request`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-52a983f6b6e00352", "name": "Dangling fetch: POST /api/admin/strategy-review (src/components/admin/AdminTabs.tsx:363)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/strategy-review (src/components/admin/AdminTabs.tsx:363)"}, "fullDescription": {"text": "`src/components/admin/AdminTabs.tsx:363` calls `POST /api/admin/strategy-review` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/strategy-review`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-87a78a7757f71db4", "name": "Dangling fetch: POST /api/admin/strategy-review (src/components/admin/AdminTabs.tsx:386)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/strategy-review (src/components/admin/AdminTabs.tsx:386)"}, "fullDescription": {"text": "`src/components/admin/AdminTabs.tsx:386` calls `POST /api/admin/strategy-review` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/strategy-review`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d2fb3d3656b56812", "name": "Dangling fetch: POST /api/admin/allocator-approve (src/components/admin/AdminTabs.tsx:564)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/allocator-approve (src/components/admin/AdminTabs.tsx:564)"}, "fullDescription": {"text": "`src/components/admin/AdminTabs.tsx:564` calls `POST /api/admin/allocator-approve` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/allocator-approve`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-df00c8e51c9a8039", "name": "Dangling fetch: POST /api/admin/manager-approve (src/components/admin/AdminTabs.tsx:612)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/manager-approve (src/components/admin/AdminTabs.tsx:612)"}, "fullDescription": {"text": "`src/components/admin/AdminTabs.tsx:612` calls `POST /api/admin/manager-approve` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/manager-approve`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-46754c3235027de1", "name": "Dangling fetch: POST /api/admin/deletion-requests/${encodeURIComponent(requestId)}/approve (src/components/admin/Deletio", "shortDescription": {"text": "Dangling fetch: POST /api/admin/deletion-requests/${encodeURIComponent(requestId)}/approve (src/components/admin/DeletionRequestActions.tsx:49)"}, "fullDescription": {"text": "`src/components/admin/DeletionRequestActions.tsx:49` calls `POST /api/admin/deletion-requests/${encodeURIComponent(requestId)}/approve` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/deletion-requests/<p>/approve`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d126c1f4b49aacc7", "name": "Dangling fetch: POST /api/admin/deletion-requests/${encodeURIComponent(requestId)}/reject (src/components/admin/Deletion", "shortDescription": {"text": "Dangling fetch: POST /api/admin/deletion-requests/${encodeURIComponent(requestId)}/reject (src/components/admin/DeletionRequestActions.tsx:82)"}, "fullDescription": {"text": "`src/components/admin/DeletionRequestActions.tsx:82` calls `POST /api/admin/deletion-requests/${encodeURIComponent(requestId)}/reject` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/deletion-requests/<p>/reject`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-76864955593abb43", "name": "Dangling fetch: POST /api/admin/match/recompute (src/components/admin/AllocatorMatchQueue.tsx:218)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/match/recompute (src/components/admin/AllocatorMatchQueue.tsx:218)"}, "fullDescription": {"text": "`src/components/admin/AllocatorMatchQueue.tsx:218` calls `POST /api/admin/match/recompute` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/match/recompute`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2716c7156adfd318", "name": "Dangling fetch: POST /api/admin/match/decisions (src/components/admin/AllocatorMatchQueue.tsx:240)", "shortDescription": {"text": "Dangling fetch: POST /api/admin/match/decisions (src/components/admin/AllocatorMatchQueue.tsx:240)"}, "fullDescription": {"text": "`src/components/admin/AllocatorMatchQueue.tsx:240` calls `POST /api/admin/match/decisions` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/admin/match/decisions`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6be05ca09e04376f", "name": "Dangling fetch: POST /api/account/deletion-request (src/components/auth/DeleteAccountButton.tsx:20)", "shortDescription": {"text": "Dangling fetch: POST /api/account/deletion-request (src/components/auth/DeleteAccountButton.tsx:20)"}, "fullDescription": {"text": "`src/components/auth/DeleteAccountButton.tsx:20` calls `POST /api/account/deletion-request` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/account/deletion-request`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7c8d8a5227dcf732", "name": "Dangling fetch: POST /api/allocator/holdings/sync (src/components/exchanges/AllocatorExchangeManager.tsx:336)", "shortDescription": {"text": "Dangling fetch: POST /api/allocator/holdings/sync (src/components/exchanges/AllocatorExchangeManager.tsx:336)"}, "fullDescription": {"text": "`src/components/exchanges/AllocatorExchangeManager.tsx:336` calls `POST /api/allocator/holdings/sync` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/allocator/holdings/sync`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ee00cdd03be3f824", "name": "Dangling fetch: POST /api/allocator/holdings/sync (src/components/exchanges/AllocatorExchangeManager.tsx:457)", "shortDescription": {"text": "Dangling fetch: POST /api/allocator/holdings/sync (src/components/exchanges/AllocatorExchangeManager.tsx:457)"}, "fullDescription": {"text": "`src/components/exchanges/AllocatorExchangeManager.tsx:457` calls `POST /api/allocator/holdings/sync` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/allocator/holdings/sync`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-622681d899e32f6d", "name": "Dangling fetch: POST /api/keys/validate-and-encrypt (src/components/exchanges/AllocatorExchangeManager.tsx:529)", "shortDescription": {"text": "Dangling fetch: POST /api/keys/validate-and-encrypt (src/components/exchanges/AllocatorExchangeManager.tsx:529)"}, "fullDescription": {"text": "`src/components/exchanges/AllocatorExchangeManager.tsx:529` calls `POST /api/keys/validate-and-encrypt` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/keys/validate-and-encrypt`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6c96d41c70945b0a", "name": "Dangling fetch: POST /api/allocator/holdings/sync (src/components/exchanges/AllocatorExchangeManager.tsx:598)", "shortDescription": {"text": "Dangling fetch: POST /api/allocator/holdings/sync (src/components/exchanges/AllocatorExchangeManager.tsx:598)"}, "fullDescription": {"text": "`src/components/exchanges/AllocatorExchangeManager.tsx:598` calls `POST /api/allocator/holdings/sync` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/allocator/holdings/sync`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e3bc730924cd7eef", "name": "Dangling fetch: POST /api/intro (src/components/portfolio/ReplacementCard.tsx:63)", "shortDescription": {"text": "Dangling fetch: POST /api/intro (src/components/portfolio/ReplacementCard.tsx:63)"}, "fullDescription": {"text": "`src/components/portfolio/ReplacementCard.tsx:63` calls `POST /api/intro` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/intro`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4a71a786aeaab452", "name": "Dangling fetch: POST /api/portfolio-documents (src/components/portfolio/DocumentUpload.tsx:54)", "shortDescription": {"text": "Dangling fetch: POST /api/portfolio-documents (src/components/portfolio/DocumentUpload.tsx:54)"}, "fullDescription": {"text": "`src/components/portfolio/DocumentUpload.tsx:54` calls `POST /api/portfolio-documents` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/portfolio-documents`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2a5c35839fbda5b2", "name": "Dangling fetch: PATCH /api/portfolio-alerts (src/components/portfolio/AlertsList.tsx:34)", "shortDescription": {"text": "Dangling fetch: PATCH /api/portfolio-alerts (src/components/portfolio/AlertsList.tsx:34)"}, "fullDescription": {"text": "`src/components/portfolio/AlertsList.tsx:34` calls `PATCH /api/portfolio-alerts` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/portfolio-alerts`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3c147f1048a1849e", "name": "Dangling fetch: POST /api/bridge (src/components/portfolio/ReplacementPanel.tsx:40)", "shortDescription": {"text": "Dangling fetch: POST /api/bridge (src/components/portfolio/ReplacementPanel.tsx:40)"}, "fullDescription": {"text": "`src/components/portfolio/ReplacementPanel.tsx:40` calls `POST /api/bridge` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/bridge`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-05008dd4d277b281", "name": "Dangling fetch: PUT /api/preferences (src/components/mandate/useMandateAutoSave.ts:272)", "shortDescription": {"text": "Dangling fetch: PUT /api/preferences (src/components/mandate/useMandateAutoSave.ts:272)"}, "fullDescription": {"text": "`src/components/mandate/useMandateAutoSave.ts:272` calls `PUT /api/preferences` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/preferences`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-08a2b11680bb34f6", "name": "Dangling fetch: POST /api/bridge/outcome (src/lib/bridge-outcome-schema.ts:133)", "shortDescription": {"text": "Dangling fetch: POST /api/bridge/outcome (src/lib/bridge-outcome-schema.ts:133)"}, "fullDescription": {"text": "`src/lib/bridge-outcome-schema.ts:133` calls `POST /api/bridge/outcome` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/bridge/outcome`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9e4349fb0898e50d", "name": "Dangling fetch: POST /api/match/decisions/holding (src/lib/bridge/send-intro.ts:48)", "shortDescription": {"text": "Dangling fetch: POST /api/match/decisions/holding (src/lib/bridge/send-intro.ts:48)"}, "fullDescription": {"text": "`src/lib/bridge/send-intro.ts:48` calls `POST /api/match/decisions/holding` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/match/decisions/holding`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-376d99cf5133a805", "name": "Dangling fetch: POST https://api.supabase.com/v1/projects/${SUPABASE_PROJECT_REF}/database/query (src/lib/test-helpers/l", "shortDescription": {"text": "Dangling fetch: POST https://api.supabase.com/v1/projects/${SUPABASE_PROJECT_REF}/database/query (src/lib/test-helpers/live-db.ts:212)"}, "fullDescription": {"text": "`src/lib/test-helpers/live-db.ts:212` calls `POST https://api.supabase.com/v1/projects/${SUPABASE_PROJECT_REF}/database/query` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.supabase.com/v1/projects/<p>/database/query`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-25ec50988fdabaab", "name": "Dangling fetch: POST https://api.resend.com/emails (supabase/functions/notify-admin/index.ts:66)", "shortDescription": {"text": "Dangling fetch: POST https://api.resend.com/emails (supabase/functions/notify-admin/index.ts:66)"}, "fullDescription": {"text": "`supabase/functions/notify-admin/index.ts:66` calls `POST https://api.resend.com/emails` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.resend.com/emails`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d67a0b9e0df99024", "name": "Unused endpoint: POST /portfolio-analytics", "shortDescription": {"text": "Unused endpoint: POST /portfolio-analytics"}, "fullDescription": {"text": "`analytics-service/routers/portfolio.py` declares `POST /portfolio-analytics` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-904d96436832b62b", "name": "Unused endpoint: POST /portfolio-bridge", "shortDescription": {"text": "Unused endpoint: POST /portfolio-bridge"}, "fullDescription": {"text": "`analytics-service/routers/portfolio.py` declares `POST /portfolio-bridge` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-588ecbccf8cf018d", "name": "Unused endpoint: POST /csv/validate", "shortDescription": {"text": "Unused endpoint: POST /csv/validate"}, "fullDescription": {"text": "`analytics-service/routers/csv.py` declares `POST /csv/validate` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bbb2e2272a2093df", "name": "Unused endpoint: POST /compute-analytics", "shortDescription": {"text": "Unused endpoint: POST /compute-analytics"}, "fullDescription": {"text": "`analytics-service/routers/analytics.py` declares `POST /compute-analytics` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7a009b1a56794f45", "name": "Unused endpoint: POST /", "shortDescription": {"text": "Unused endpoint: POST /"}, "fullDescription": {"text": "`analytics-service/routers/process_key.py` declares `POST /` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c3ef16c771384b7f", "name": "Unused endpoint: POST /cron-sync", "shortDescription": {"text": "Unused endpoint: POST /cron-sync"}, "fullDescription": {"text": "`analytics-service/routers/cron.py` declares `POST /cron-sync` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-34c0472a1f1fafe5", "name": "Unused endpoint: POST /validate", "shortDescription": {"text": "Unused endpoint: POST /validate"}, "fullDescription": {"text": "`analytics-service/routers/debug_key_flow.py` declares `POST /validate` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8867c729ef22c5c6", "name": "Unused endpoint: POST /encrypt", "shortDescription": {"text": "Unused endpoint: POST /encrypt"}, "fullDescription": {"text": "`analytics-service/routers/debug_key_flow.py` declares `POST /encrypt` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-98df2496a876f86d", "name": "Unused endpoint: POST /fetch-trades", "shortDescription": {"text": "Unused endpoint: POST /fetch-trades"}, "fullDescription": {"text": "`analytics-service/routers/debug_key_flow.py` declares `POST /fetch-trades` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6e92b5d1b67138c7", "name": "Unused endpoint: POST /validate-key", "shortDescription": {"text": "Unused endpoint: POST /validate-key"}, "fullDescription": {"text": "`analytics-service/routers/exchange.py` declares `POST /validate-key` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e9c491232396db09", "name": "Unused endpoint: POST /encrypt-key", "shortDescription": {"text": "Unused endpoint: POST /encrypt-key"}, "fullDescription": {"text": "`analytics-service/routers/exchange.py` declares `POST /encrypt-key` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0a3fc3bb4cbb87d4", "name": "Unused endpoint: POST /recompute", "shortDescription": {"text": "Unused endpoint: POST /recompute"}, "fullDescription": {"text": "`analytics-service/routers/match.py` declares `POST /recompute` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-008be858a84b3d28", "name": "Unused endpoint: GET /eval", "shortDescription": {"text": "Unused endpoint: GET /eval"}, "fullDescription": {"text": "`analytics-service/routers/match.py` declares `GET /eval` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b4dfe9ba6846362f", "name": "Unused endpoint: POST /cron-recompute", "shortDescription": {"text": "Unused endpoint: POST /cron-recompute"}, "fullDescription": {"text": "`analytics-service/routers/match.py` declares `POST /cron-recompute` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/23988"}, "properties": {"repository": "AI-Isaiah/Quantalyze", "repoUrl": "https://github.com/AI-Isaiah/Quantalyze", "branch": "main"}, "results": [{"ruleId": "scanner-0a5de49da908e479", "level": "note", "message": {"text": "Possibly dead Python function: npv"}, "properties": {"repobilityId": "03df5427aca4c72f", "scanner": "scanner-primary", "fingerprint": "0a5de49da908e479", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/services/portfolio_metrics.py:204"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8672105aadab7b80", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/seed-demo-data.ts:655"}, "properties": {"repobilityId": "72bc7b37a1b19a82", "scanner": "scanner-primary", "fingerprint": "8672105aadab7b80", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-347396ed27c03f46", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/check-gdpr-export-coverage.ts:780"}, "properties": {"repobilityId": "6ff7fe4a65db12b5", "scanner": "scanner-primary", "fingerprint": "347396ed27c03f46", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-aaf14c318bdf2177", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/check-admin-route-manifest.ts:431"}, "properties": {"repobilityId": "ebe609666a0c433a", "scanner": "scanner-primary", "fingerprint": "aaf14c318bdf2177", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1fe9acef53c2a823", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/check-founder-lp-readiness.ts:48"}, "properties": {"repobilityId": "89bef856fdca54c3", "scanner": "scanner-primary", "fingerprint": "1fe9acef53c2a823", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ab330eadbab28d11", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/seed-full-app-demo.ts:1193"}, "properties": {"repobilityId": "ee6381c16ee1652e", "scanner": "scanner-primary", "fingerprint": "ab330eadbab28d11", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-078345fcb524a4c8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/verify-phase18-artifacts.ts:87"}, "properties": {"repobilityId": "40686a9a288a6720", "scanner": "scanner-primary", "fingerprint": "078345fcb524a4c8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-80e95eb11d20ea84", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/keys/sync/route.ts:274"}, "properties": {"repobilityId": "2f1120c23151b9d0", "scanner": "scanner-primary", "fingerprint": "80e95eb11d20ea84", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-18d50e205def6c44", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 src/app/api/keys/validate-and-encrypt/route.ts:53"}, "properties": {"repobilityId": "26901643eb442fcd", "scanner": "scanner-primary", "fingerprint": "18d50e205def6c44", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-55d58b6eeebf3ed5", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/demo/layout.tsx:36"}, "properties": {"repobilityId": "1be6993aaf2fe685", "scanner": "scanner-primary", "fingerprint": "55d58b6eeebf3ed5", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-f97ebb4a99c1217f", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/portfolios/page.tsx:44"}, "properties": {"repobilityId": "46138572ede10e53", "scanner": "scanner-primary", "fingerprint": "f97ebb4a99c1217f", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-c9c9e102e548e1c4", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/portfolios/[id]/manage/page.tsx:69"}, "properties": {"repobilityId": "cbc68149867f3e1a", "scanner": "scanner-primary", "fingerprint": "c9c9e102e548e1c4", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-21a6a2bc74eb1fe2", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/admin/partner-pilot/[partner_tag]/page.tsx:166"}, "properties": {"repobilityId": "614679dafbb4883c", "scanner": "scanner-primary", "fingerprint": "21a6a2bc74eb1fe2", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-eafd31b843b350a7", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/admin/compute-jobs/page.tsx:125"}, "properties": {"repobilityId": "4ccd8d0a9f415a42", "scanner": "scanner-primary", "fingerprint": "eafd31b843b350a7", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-6a738dfe5d7118ed", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/(dashboard)/allocations/components/AlertBanner.tsx:127"}, "properties": {"repobilityId": "3850e4ec311b0c13", "scanner": "scanner-primary", "fingerprint": "6a738dfe5d7118ed", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-ee51873fd824e88c", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/strategy/StrategyGrid.tsx:63"}, "properties": {"repobilityId": "7ea80c912140157f", "scanner": "scanner-primary", "fingerprint": "ee51873fd824e88c", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-47d3d1c61982ed94", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/strategy/MetadataCards.tsx:21"}, "properties": {"repobilityId": "9e19c386ec8f5600", "scanner": "scanner-primary", "fingerprint": "47d3d1c61982ed94", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-29705063693cc5ed", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/admin/MatchQueueIndex.tsx:289"}, "properties": {"repobilityId": "02c4fc33d181b6e6", "scanner": "scanner-primary", "fingerprint": "29705063693cc5ed", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-9df01dafa9c58c25", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/admin/AllocatorMatchQueue.tsx:560"}, "properties": {"repobilityId": "3fa5600c95594c5c", "scanner": "scanner-primary", "fingerprint": "9df01dafa9c58c25", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-84dc7f5d46ae3632", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/admin/match/ShortlistCard.tsx:43"}, "properties": {"repobilityId": "7dfc11ceaf0a04f8", "scanner": "scanner-primary", "fingerprint": "84dc7f5d46ae3632", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-3cbc983212922d8f", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/scenarios/ScenarioBuilder.tsx:363"}, "properties": {"repobilityId": "495a1a3d5290b777", "scanner": "scanner-primary", "fingerprint": "3cbc983212922d8f", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-bf0660c8e3f84fe5", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/exchanges/AllocatorExchangeManager.tsx:714"}, "properties": {"repobilityId": "22d35abc454a1771", "scanner": "scanner-primary", "fingerprint": "bf0660c8e3f84fe5", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-c4f8a4cec8502a11", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/ReplacementCard.tsx:116"}, "properties": {"repobilityId": "a8e9460672b4e2a1", "scanner": "scanner-primary", "fingerprint": "c4f8a4cec8502a11", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-ad8b1d617e139fc4", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/PortfolioOptimizer.tsx:78"}, "properties": {"repobilityId": "e335b0bb1037d93f", "scanner": "scanner-primary", "fingerprint": "ad8b1d617e139fc4", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-b3328f38722eb11a", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/PortfolioImpactPanel.tsx:197"}, "properties": {"repobilityId": "ebf89a52fd1e81d4", "scanner": "scanner-primary", "fingerprint": "b3328f38722eb11a", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-9dc9227c88f2cb56", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/CorrelationHeatmap.tsx:178"}, "properties": {"repobilityId": "ac9fdea6806c2c2f", "scanner": "scanner-primary", "fingerprint": "9dc9227c88f2cb56", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-be40a0b7fb1dde84", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/ReplacementPanel.tsx:127"}, "properties": {"repobilityId": "226bc97e5da21827", "scanner": "scanner-primary", "fingerprint": "be40a0b7fb1dde84", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-0009ab4157880258", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/AllocationTimeline.tsx:30"}, "properties": {"repobilityId": "f07afdf614e09d9d", "scanner": "scanner-primary", "fingerprint": "0009ab4157880258", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-c8e4c3e0e6cc4901", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/WinnersLosersStrip.tsx:24"}, "properties": {"repobilityId": "bcb7a1206d4a03bd", "scanner": "scanner-primary", "fingerprint": "c8e4c3e0e6cc4901", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-9ffae4d80970698d", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/DocumentList.tsx:68"}, "properties": {"repobilityId": "fd89b9f3061d7698", "scanner": "scanner-primary", "fingerprint": "9ffae4d80970698d", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-570a908ae88b8e26", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/portfolio/AllocationPie.tsx:106"}, "properties": {"repobilityId": "3b244e0650789460", "scanner": "scanner-primary", "fingerprint": "570a908ae88b8e26", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-9cd970bec88a946e", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/deck/DeckCard.tsx:13"}, "properties": {"repobilityId": "7ed96dea2d001740", "scanner": "scanner-primary", "fingerprint": "9cd970bec88a946e", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-33192da1df874305", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 src/__tests__/audit-coverage.test.ts:265"}, "properties": {"repobilityId": "ea04399441c89e2b", "scanner": "scanner-primary", "fingerprint": "33192da1df874305", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-7c6105c6d8bfef6e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 e2e/demo-public.spec.ts:269"}, "properties": {"repobilityId": "d63dcc401399f2c5", "scanner": "scanner-primary", "fingerprint": "7c6105c6d8bfef6e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e6e1301764247d7a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 e2e/csv-upload-flow.spec.ts:110"}, "properties": {"repobilityId": "694bb1dd3d93dff5", "scanner": "scanner-primary", "fingerprint": "e6e1301764247d7a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-32cfcfec25013915", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 e2e/demo-founder-view.spec.ts:75"}, "properties": {"repobilityId": "4a50bfa9fb2c5f9e", "scanner": "scanner-primary", "fingerprint": "32cfcfec25013915", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f7ab79d03cdd4ef7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 e2e/wizard-hydration-probe.spec.ts:84"}, "properties": {"repobilityId": "5cec40e121eee805", "scanner": "scanner-primary", "fingerprint": "f7ab79d03cdd4ef7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5bdf2c75ef90a86c", "level": "warning", "message": {"text": "Privileged port 14 in use"}, "properties": {"repobilityId": "2dbd4b719a1412ff", "scanner": "scanner-primary", "fingerprint": "5bdf2c75ef90a86c", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/test-verify-no-legacy-writes.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-25efbfd35cc59b04", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: python:3.12-slim"}, "properties": {"repobilityId": "8dd514c90241fcd4", "scanner": "scanner-primary", "fingerprint": "25efbfd35cc59b04", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/Dockerfile"}, "region": {"startLine": 9}}}]}, {"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-5392c6feb20faf27", "level": "error", "message": {"text": "Possible secret in scripts/seed-full-app-demo.ts"}, "properties": {"repobilityId": "bbc1d86227227474", "scanner": "scanner-primary", "fingerprint": "5392c6feb20faf27", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/seed-full-app-demo.ts"}, "region": {"startLine": 46}}}]}, {"ruleId": "scanner-df6df6d619becf3e", "level": "error", "message": {"text": "Insecure pattern 'eval_used' in src/app/api/admin/match/eval/route.test.ts:71"}, "properties": {"repobilityId": "2c75c2643c1aa3c0", "scanner": "scanner-primary", "fingerprint": "df6df6d619becf3e", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "eval_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/app/api/admin/match/eval/route.test.ts"}, "region": {"startLine": 71}}}]}, {"ruleId": "scanner-160ee660b4921d38", "level": "error", "message": {"text": "Possible secret in src/app/api/strategies/create-with-key/route.audit.test.ts"}, "properties": {"repobilityId": "a672515696c45997", "scanner": "scanner-primary", "fingerprint": "160ee660b4921d38", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/app/api/strategies/create-with-key/route.audit.test.ts"}, "region": {"startLine": 88}}}]}, {"ruleId": "scanner-160ee660b4921d38", "level": "error", "message": {"text": "Possible secret in src/app/api/strategies/create-with-key/route.audit.test.ts"}, "properties": {"repobilityId": "a672515696c45997", "scanner": "scanner-primary", "fingerprint": "160ee660b4921d38", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/app/api/strategies/create-with-key/route.audit.test.ts"}, "region": {"startLine": 89}}}]}, {"ruleId": "scanner-d3a0e47febdb62e0", "level": "error", "message": {"text": "Possible secret in src/app/api/strategies/create-with-key/route.test.ts"}, "properties": {"repobilityId": "8753d26a90dd592c", "scanner": "scanner-primary", "fingerprint": "d3a0e47febdb62e0", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/app/api/strategies/create-with-key/route.test.ts"}, "region": {"startLine": 80}}}]}, {"ruleId": "scanner-d3a0e47febdb62e0", "level": "error", "message": {"text": "Possible secret in src/app/api/strategies/create-with-key/route.test.ts"}, "properties": {"repobilityId": "8753d26a90dd592c", "scanner": "scanner-primary", "fingerprint": "d3a0e47febdb62e0", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/app/api/strategies/create-with-key/route.test.ts"}, "region": {"startLine": 81}}}]}, {"ruleId": "scanner-e5e000407f2157b8", "level": "error", "message": {"text": "Possible secret in src/lib/test-helpers/live-db.ts"}, "properties": {"repobilityId": "eaea61adcb47ad10", "scanner": "scanner-primary", "fingerprint": "e5e000407f2157b8", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/lib/test-helpers/live-db.ts"}, "region": {"startLine": 75}}}]}, {"ruleId": "scanner-a09dff37a83cdcc0", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in src/__tests__/gdpr-export-coverage-hook.test.ts:18"}, "properties": {"repobilityId": "a17887ad3c89ec43", "scanner": "scanner-primary", "fingerprint": "a09dff37a83cdcc0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/__tests__/gdpr-export-coverage-hook.test.ts"}, "region": {"startLine": 18}}}]}, {"ruleId": "scanner-eb124961b26c720e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in src/__tests__/check-banned-packages.test.ts:30"}, "properties": {"repobilityId": "b3b86c1e190634f2", "scanner": "scanner-primary", "fingerprint": "eb124961b26c720e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/__tests__/check-banned-packages.test.ts"}, "region": {"startLine": 30}}}]}, {"ruleId": "scanner-84385fa6a12fdd01", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in src/__tests__/gitleaks-allowlist.test.ts:34"}, "properties": {"repobilityId": "13b785a21091416f", "scanner": "scanner-primary", "fingerprint": "84385fa6a12fdd01", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/__tests__/gitleaks-allowlist.test.ts"}, "region": {"startLine": 34}}}]}, {"ruleId": "scanner-91f530e71ec2d5e3", "level": "error", "message": {"text": "Possible secret in e2e/for-quants-onboarding.spec.ts"}, "properties": {"repobilityId": "2ef2badc612cfb26", "scanner": "scanner-primary", "fingerprint": "91f530e71ec2d5e3", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "e2e/for-quants-onboarding.spec.ts"}, "region": {"startLine": 32}}}]}, {"ruleId": "scanner-3239def292c4f491", "level": "error", "message": {"text": "Possible secret in e2e/csv-upload-flow.spec.ts"}, "properties": {"repobilityId": "d7c08c13dc2dba5a", "scanner": "scanner-primary", "fingerprint": "3239def292c4f491", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "e2e/csv-upload-flow.spec.ts"}, "region": {"startLine": 38}}}]}, {"ruleId": "scanner-e394b208dc5d6d8a", "level": "error", "message": {"text": "Possible secret in e2e/mandate-form.spec.ts"}, "properties": {"repobilityId": "6546844ac60c2087", "scanner": "scanner-primary", "fingerprint": "e394b208dc5d6d8a", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "e2e/mandate-form.spec.ts"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-e8d802357375e292", "level": "error", "message": {"text": "Possible secret in e2e/helpers/discovery-selectors.ts"}, "properties": {"repobilityId": "1e750770a390caeb", "scanner": "scanner-primary", "fingerprint": "e8d802357375e292", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "e2e/helpers/discovery-selectors.ts"}, "region": {"startLine": 45}}}]}, {"ruleId": "scanner-2e210de2c0b6ec3b", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "dad6f15f22d5c3fd", "scanner": "scanner-primary", "fingerprint": "2e210de2c0b6ec3b", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/cassette-refresh.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-417c592c69640fb5", "level": "note", "message": {"text": "Very large file: scripts/seed-full-app-demo.ts (1768 lines)"}, "properties": {"repobilityId": "f98e03901d6bfd83", "scanner": "scanner-primary", "fingerprint": "417c592c69640fb5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a36cc17c0253b32a", "level": "note", "message": {"text": "Very large file: src/app/api/allocator/scenario/commit/route.test.ts (1604 lines)"}, "properties": {"repobilityId": "b468ca79d8481477", "scanner": "scanner-primary", "fingerprint": "a36cc17c0253b32a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8acede25040c5554", "level": "note", "message": {"text": "Very large file: src/app/api/admin/users/[id]/roles/route.test.ts (1982 lines)"}, "properties": {"repobilityId": "999fcdc524c8ce75", "scanner": "scanner-primary", "fingerprint": "8acede25040c5554", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ff34ec81d2d24d7b", "level": "note", "message": {"text": "Very large file: src/app/api/strategies/csv-finalize/route.ts (1399 lines)"}, "properties": {"repobilityId": "e5c8a6c1525f0318", "scanner": "scanner-primary", "fingerprint": "ff34ec81d2d24d7b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2cc860061f3ee564", "level": "note", "message": {"text": "Very large file: src/app/factsheet/[id]/v2/TimeSeriesChart.tsx (1311 lines)"}, "properties": {"repobilityId": "dbbcb240eaad77fe", "scanner": "scanner-primary", "fingerprint": "2cc860061f3ee564", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b365dfbbbc32f7a9", "level": "note", "message": {"text": "Very large file: src/app/(dashboard)/allocations/widgets/performance/EquityChart.tsx (2303 lines)"}, "properties": {"repobilityId": "17f43e485257aeeb", "scanner": "scanner-primary", "fingerprint": "b365dfbbbc32f7a9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-795d72e59cc20c8d", "level": "note", "message": {"text": "Very large file: src/app/(dashboard)/allocations/components/ScenarioComposer.tsx (1427 lines)"}, "properties": {"repobilityId": "79df97a33a0c2e9d", "scanner": "scanner-primary", "fingerprint": "795d72e59cc20c8d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a269ef4664f5f4d3", "level": "note", "message": {"text": "Very large file: src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.test.tsx (2067 lines)"}, "properties": {"repobilityId": "b02490f0edf750f8", "scanner": "scanner-primary", "fingerprint": "a269ef4664f5f4d3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cd0dac620fe22b6a", "level": "note", "message": {"text": "Very large file: src/app/(dashboard)/allocations/components/ScenarioComposer.test.tsx (2043 lines)"}, "properties": {"repobilityId": "45f8a48ea6a438c6", "scanner": "scanner-primary", "fingerprint": "cd0dac620fe22b6a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8349ff57c3357b1a", "level": "note", "message": {"text": "Very large file: src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.tsx (1194 lines)"}, "properties": {"repobilityId": "0a8d8aa192ccd826", "scanner": "scanner-primary", "fingerprint": "8349ff57c3357b1a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cb2edc03711bbb41", "level": "note", "message": {"text": "Very large file: src/lib/queries.ts (3205 lines)"}, "properties": {"repobilityId": "488464669af4cdfb", "scanner": "scanner-primary", "fingerprint": "cb2edc03711bbb41", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9afabbb24d477bb9", "level": "note", "message": {"text": "Very large file: src/lib/queries.my-allocation.test.ts (1506 lines)"}, "properties": {"repobilityId": "c5466e42e2d8a34e", "scanner": "scanner-primary", "fingerprint": "9afabbb24d477bb9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f28ef622e4a1fd52", "level": "note", "message": {"text": "Very large file: src/lib/types.ts (1709 lines)"}, "properties": {"repobilityId": "1df5ffb8039732db", "scanner": "scanner-primary", "fingerprint": "f28ef622e4a1fd52", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-4e2301ff735d6c14", "level": "note", "message": {"text": "Very large file: src/lib/database.types.ts (3580 lines)"}, "properties": {"repobilityId": "ca4d4e35c819d250", "scanner": "scanner-primary", "fingerprint": "4e2301ff735d6c14", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e7fd32b0f3f3a706", "level": "note", "message": {"text": "Very large file: src/lib/auth.test.ts (1426 lines)"}, "properties": {"repobilityId": "9844b9c3bb1173e8", "scanner": "scanner-primary", "fingerprint": "e7fd32b0f3f3a706", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d38ad86a1b75825e", "level": "note", "message": {"text": "Very large file: src/lib/audit.ts (1142 lines)"}, "properties": {"repobilityId": "2fe35ed7aae1aa44", "scanner": "scanner-primary", "fingerprint": "d38ad86a1b75825e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-61ddcddad0610461", "level": "note", "message": {"text": "Very large file: src/lib/gdpr-export.ts (1295 lines)"}, "properties": {"repobilityId": "d2651dbc92801b6d", "scanner": "scanner-primary", "fingerprint": "61ddcddad0610461", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-4a4f42698a464443", "level": "note", "message": {"text": "Very large file: src/__tests__/gdpr-export.test.ts (2384 lines)"}, "properties": {"repobilityId": "a82a10fe1a15b901", "scanner": "scanner-primary", "fingerprint": "4a4f42698a464443", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8bbb25d3a8865b50", "level": "note", "message": {"text": "Very large file: src/__tests__/audit-coverage.test.ts (1282 lines)"}, "properties": {"repobilityId": "a551faebd4d7d092", "scanner": "scanner-primary", "fingerprint": "8bbb25d3a8865b50", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9db7e5865199f13b", "level": "note", "message": {"text": "Very large file: src/__tests__/csv-validate-route.test.ts (1355 lines)"}, "properties": {"repobilityId": "c56092fc080fa2b2", "scanner": "scanner-primary", "fingerprint": "9db7e5865199f13b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ddb3f74b71e152cd", "level": "note", "message": {"text": "Very large file: src/__tests__/critical-regressions.test.ts (1247 lines)"}, "properties": {"repobilityId": "b36edcd7aa43ee97", "scanner": "scanner-primary", "fingerprint": "ddb3f74b71e152cd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-675577010c6ceaea", "level": "note", "message": {"text": "Very large file: supabase/types.generated.ts (3256 lines)"}, "properties": {"repobilityId": "541d478fd0cd2d79", "scanner": "scanner-primary", "fingerprint": "675577010c6ceaea", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c296a30fde8d920f", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_process_key.py (1986 lines)"}, "properties": {"repobilityId": "b562002315143a9f", "scanner": "scanner-primary", "fingerprint": "c296a30fde8d920f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8cace093c4861134", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_position_reconstruction_funding.py (1669 lines)"}, "properties": {"repobilityId": "23e6c7e7b746539d", "scanner": "scanner-primary", "fingerprint": "8cace093c4861134", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0fb5b2e5c351ce3e", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_feedback_engine.py (2059 lines)"}, "properties": {"repobilityId": "e6b2546a8855901e", "scanner": "scanner-primary", "fingerprint": "0fb5b2e5c351ce3e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5b0a69b42489baa6", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_metrics.py (2067 lines)"}, "properties": {"repobilityId": "48b20b6e1379e54c", "scanner": "scanner-primary", "fingerprint": "5b0a69b42489baa6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5f84e80a7149e7da", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_ana_recon_audit.py (1281 lines)"}, "properties": {"repobilityId": "a16040c55d3b9b7e", "scanner": "scanner-primary", "fingerprint": "5f84e80a7149e7da", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-aa35b651b9206e6b", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_funding_fetch.py (1983 lines)"}, "properties": {"repobilityId": "aea943ba4aa200ca", "scanner": "scanner-primary", "fingerprint": "aa35b651b9206e6b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-43c2b5038f534acf", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_position_reconstruction.py (4033 lines)"}, "properties": {"repobilityId": "d77ab4f85f66d669", "scanner": "scanner-primary", "fingerprint": "43c2b5038f534acf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-767ea1cfa5ede13b", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_match_router.py (3956 lines)"}, "properties": {"repobilityId": "9da424e682d21405", "scanner": "scanner-primary", "fingerprint": "767ea1cfa5ede13b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6f1b02751a92937d", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_simulator_router.py (1736 lines)"}, "properties": {"repobilityId": "405a95f1273c39d6", "scanner": "scanner-primary", "fingerprint": "6f1b02751a92937d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ce60bec2b056c69f", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_compute_jobs_fencing.py (2607 lines)"}, "properties": {"repobilityId": "e6b9e3e359465059", "scanner": "scanner-primary", "fingerprint": "ce60bec2b056c69f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c5468296246d0adc", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_phase12_kill_switch.py (1709 lines)"}, "properties": {"repobilityId": "6641ff08b3ef301c", "scanner": "scanner-primary", "fingerprint": "c5468296246d0adc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-00eef8b4ca44cd6f", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_equity_reconstruction.py (4907 lines)"}, "properties": {"repobilityId": "6ad9a6833c08de8e", "scanner": "scanner-primary", "fingerprint": "00eef8b4ca44cd6f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-39f40fe96c6962c9", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_main_worker.py (1675 lines)"}, "properties": {"repobilityId": "d026db7d8355e06f", "scanner": "scanner-primary", "fingerprint": "39f40fe96c6962c9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-83f5b937a2919392", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_exchange.py (5658 lines)"}, "properties": {"repobilityId": "dbc8a2659f67d870", "scanner": "scanner-primary", "fingerprint": "83f5b937a2919392", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-367b909bd19003a9", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_c19_portfolio_fixes.py (1150 lines)"}, "properties": {"repobilityId": "5de4d5b1caabe025", "scanner": "scanner-primary", "fingerprint": "367b909bd19003a9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7202eb36b9b0136c", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_cron_router.py (2690 lines)"}, "properties": {"repobilityId": "f99ce16af0d0d1bf", "scanner": "scanner-primary", "fingerprint": "7202eb36b9b0136c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5da1c41258dc39ae", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_match_engine.py (1588 lines)"}, "properties": {"repobilityId": "0df970b98654f859", "scanner": "scanner-primary", "fingerprint": "5da1c41258dc39ae", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-bd78c5591f39870f", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_analytics_runner.py (5350 lines)"}, "properties": {"repobilityId": "4e43732442c8bcdb", "scanner": "scanner-primary", "fingerprint": "bd78c5591f39870f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-1b66c8efea59e09d", "level": "note", "message": {"text": "Very large file: analytics-service/tests/test_job_worker.py (3291 lines)"}, "properties": {"repobilityId": "3b8eae610e6eac92", "scanner": "scanner-primary", "fingerprint": "1b66c8efea59e09d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0a645ae61c7baf8e", "level": "note", "message": {"text": "Very large file: analytics-service/scripts/phase12_kill_switch.py (1138 lines)"}, "properties": {"repobilityId": "46b1b848dbc6282b", "scanner": "scanner-primary", "fingerprint": "0a645ae61c7baf8e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ca0c83ac2b968811", "level": "note", "message": {"text": "Very large file: analytics-service/routers/portfolio.py (2423 lines)"}, "properties": {"repobilityId": "1ec64e02d5f10bcc", "scanner": "scanner-primary", "fingerprint": "ca0c83ac2b968811", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-35eb151b2db918ae", "level": "note", "message": {"text": "Very large file: analytics-service/routers/match.py (2018 lines)"}, "properties": {"repobilityId": "2a60145ec68f9c3d", "scanner": "scanner-primary", "fingerprint": "35eb151b2db918ae", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-57ca8f9b25c2a18a", "level": "note", "message": {"text": "Very large file: analytics-service/services/analytics_runner.py (2172 lines)"}, "properties": {"repobilityId": "82ee68489218d35d", "scanner": "scanner-primary", "fingerprint": "57ca8f9b25c2a18a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7714e87eab23adf4", "level": "note", "message": {"text": "Very large file: analytics-service/services/equity_reconstruction.py (3181 lines)"}, "properties": {"repobilityId": "ab013c56d3d42d1c", "scanner": "scanner-primary", "fingerprint": "7714e87eab23adf4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d72e73190b69cd20", "level": "note", "message": {"text": "Very large file: analytics-service/services/metrics.py (1499 lines)"}, "properties": {"repobilityId": "de115522f4d52e36", "scanner": "scanner-primary", "fingerprint": "d72e73190b69cd20", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9c08307779098ac1", "level": "note", "message": {"text": "Very large file: analytics-service/services/match_engine.py (1280 lines)"}, "properties": {"repobilityId": "ba025034334ef907", "scanner": "scanner-primary", "fingerprint": "9c08307779098ac1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3af00dfe941f4d6d", "level": "note", "message": {"text": "Very large file: analytics-service/services/exchange.py (2777 lines)"}, "properties": {"repobilityId": "e477292d0b0fe247", "scanner": "scanner-primary", "fingerprint": "3af00dfe941f4d6d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e4d47c002be90be2", "level": "note", "message": {"text": "Very large file: analytics-service/services/job_worker.py (2799 lines)"}, "properties": {"repobilityId": "1aec49d4905b1f82", "scanner": "scanner-primary", "fingerprint": "e4d47c002be90be2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e6266b147567f57a", "level": "note", "message": {"text": "Very large file: analytics-service/services/position_reconstruction.py (2149 lines)"}, "properties": {"repobilityId": "560388f1763ca006", "scanner": "scanner-primary", "fingerprint": "e6266b147567f57a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "2222d8d625f5f04d", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "72cdca73419289b4", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-72b2a6250083a784", "level": "warning", "message": {"text": "Placeholder or mock-heavy implementation detected"}, "properties": {"repobilityId": "705fd945b48d964b", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-9d79c4077342a7d0", "level": "warning", "message": {"text": "Runtime service client appears to use placeholder configuration"}, "properties": {"repobilityId": "04bb077fcbff5470", "scanner": "scanner-primary", "fingerprint": "9d79c4077342a7d0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "runtime-config", "service-client", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "90be672d55027c9d", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "2af2cf85ec7adb28", "scanner": "scanner-primary", "fingerprint": "749d4bc1bd66df5f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-e725d2ab884fbd49", "level": "note", "message": {"text": "Multiple root agent instruction files without precedence"}, "properties": {"repobilityId": "1953db6c89508d22", "scanner": "scanner-primary", "fingerprint": "e725d2ab884fbd49", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["agent-instructions", "governance"]}}, {"ruleId": "scanner-bfc48882257cab64", "level": "none", "message": {"text": "Commented-code block (10 lines) in vitest.config.ts:6"}, "properties": {"repobilityId": "addcac0c8144e38d", "scanner": "scanner-primary", "fingerprint": "bfc48882257cab64", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3a25db917e84c265", "level": "none", "message": {"text": "Commented-code block (8 lines) in eslint.config.mjs:33"}, "properties": {"repobilityId": "33ed63ea2f9ab33a", "scanner": "scanner-primary", "fingerprint": "3a25db917e84c265", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e011c2ade7c74378", "level": "none", "message": {"text": "Commented-code block (10 lines) in next.config.ts:24"}, "properties": {"repobilityId": "36863e1fe095612f", "scanner": "scanner-primary", "fingerprint": "e011c2ade7c74378", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cfa4a721e9befdd1", "level": "none", "message": {"text": "Commented-code block (9 lines) in tests/a11y/wizard-contrast.test.ts:54"}, "properties": {"repobilityId": "a1f8de0f1fa2ba16", "scanner": "scanner-primary", "fingerprint": "cfa4a721e9befdd1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3045feb15d1f3faa", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/a11y/trust-tier-tokens.test.ts:48"}, "properties": {"repobilityId": "b86e2708dc6f2bce", "scanner": "scanner-primary", "fingerprint": "3045feb15d1f3faa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-31aba971f814d3f2", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/a11y/chart-contrast.test.ts:101"}, "properties": {"repobilityId": "0d2e24cdb4f62407", "scanner": "scanner-primary", "fingerprint": "31aba971f814d3f2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-50d237c1da1622a4", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/integration/mig-129-cutover-concurrency.test.ts:367"}, "properties": {"repobilityId": "4d19aa458a5e1ff0", "scanner": "scanner-primary", "fingerprint": "50d237c1da1622a4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c075158d7dd21e52", "level": "none", "message": {"text": "Commented-code block (7 lines) in tests/integration/mig-128-batch-concurrency.test.ts:252"}, "properties": {"repobilityId": "1aea325d2490fca2", "scanner": "scanner-primary", "fingerprint": "c075158d7dd21e52", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dbc5a20c3c4b7d85", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/integration/phase-19-pra-write.test.ts:153"}, "properties": {"repobilityId": "a0a6b1dbe52a091e", "scanner": "scanner-primary", "fingerprint": "dbc5a20c3c4b7d85", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91e2f9566ef703e0", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/integration/cron-flag-monitor.test.ts:580"}, "properties": {"repobilityId": "a692edf285ce71bb", "scanner": "scanner-primary", "fingerprint": "91e2f9566ef703e0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c231512edf0ce3e5", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/integration/process-key-thin-adapters.test.ts:94"}, "properties": {"repobilityId": "7745e6aa02f04938", "scanner": "scanner-primary", "fingerprint": "c231512edf0ce3e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-62920dbc94fb7e06", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/lib/wizard-errors-shape.test.ts:42"}, "properties": {"repobilityId": "b90896fc94eececc", "scanner": "scanner-primary", "fingerprint": "62920dbc94fb7e06", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3c4fcbdf012398ad", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/lib/feature-flags.test.ts:132"}, "properties": {"repobilityId": "ee012ce659bb1b70", "scanner": "scanner-primary", "fingerprint": "3c4fcbdf012398ad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7663cd4418d5959f", "level": "none", "message": {"text": "Commented-code block (7 lines) in tests/lib/scripts/no-server-only-leak.test.ts:57"}, "properties": {"repobilityId": "f831a4c2a84968b6", "scanner": "scanner-primary", "fingerprint": "7663cd4418d5959f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-79066ec04b3b4e95", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/lib/admin/pii-scrub-python-parity.test.ts:96"}, "properties": {"repobilityId": "9b2b04f3dc914c7a", "scanner": "scanner-primary", "fingerprint": "79066ec04b3b4e95", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ca5f47ed9e772556", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/visual/strategy-v2-panel-count.test.tsx:33"}, "properties": {"repobilityId": "89137a75d70fae18", "scanner": "scanner-primary", "fingerprint": "ca5f47ed9e772556", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c8d1db667b095437", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/visual/chart-accessibility-layer.test.ts:91"}, "properties": {"repobilityId": "f7bbb2cc819588ae", "scanner": "scanner-primary", "fingerprint": "c8d1db667b095437", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7a22cd4dd3ba43a6", "level": "none", "message": {"text": "Commented-code block (7 lines) in scripts/seed-demo-data.ts:31"}, "properties": {"repobilityId": "7fbcdbfc3c60d563", "scanner": "scanner-primary", "fingerprint": "7a22cd4dd3ba43a6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-533eb07fd6214a55", "level": "none", "message": {"text": "Commented-code block (16 lines) in scripts/check-gdpr-export-coverage.ts:202"}, "properties": {"repobilityId": "6173272ba91a2098", "scanner": "scanner-primary", "fingerprint": "533eb07fd6214a55", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b5fd4b15990b245a", "level": "none", "message": {"text": "Commented-code block (6 lines) in scripts/check-admin-route-manifest.ts:301"}, "properties": {"repobilityId": "12a4bbcc3784704f", "scanner": "scanner-primary", "fingerprint": "b5fd4b15990b245a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-47a83eb1c8433090", "level": "none", "message": {"text": "Commented-code block (7 lines) in scripts/seed-full-app-demo.ts:621"}, "properties": {"repobilityId": "f7ddd57e3c54a623", "scanner": "scanner-primary", "fingerprint": "47a83eb1c8433090", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b1d09b006668be3b", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/check-banned-packages.mjs:50"}, "properties": {"repobilityId": "f480fcea9aa0f8b3", "scanner": "scanner-primary", "fingerprint": "b1d09b006668be3b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-de83c9fb93254f32", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/check-banned-packages.mjs:60"}, "properties": {"repobilityId": "41626c6f2c256b5e", "scanner": "scanner-primary", "fingerprint": "de83c9fb93254f32", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-fdd7cf0bec542511", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/check-gdpr-export-coverage.test.ts:394"}, "properties": {"repobilityId": "3a8bd4256216a522", "scanner": "scanner-primary", "fingerprint": "fdd7cf0bec542511", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e15614b065f0a568", "level": "none", "message": {"text": "Commented-code block (5 lines) in tools/eslint-plugin-quantalyze/tests/no-passthrough-on-ipc.test.ts:51"}, "properties": {"repobilityId": "0cf15cd6a5b3b2ea", "scanner": "scanner-primary", "fingerprint": "e15614b065f0a568", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ee6eb2e1f28a06ca", "level": "none", "message": {"text": "Commented-code block (5 lines) in tools/eslint-plugin-quantalyze/rules/no-raw-localstorage.mjs:71"}, "properties": {"repobilityId": "d47b12f94c0f4edd", "scanner": "scanner-primary", "fingerprint": "ee6eb2e1f28a06ca", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f97919a46d399e85", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/proxy.ts:12"}, "properties": {"repobilityId": "e170b32313116bb9", "scanner": "scanner-primary", "fingerprint": "f97919a46d399e85", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-97d45d6eda7e29e0", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/test-setup.ts:5"}, "properties": {"repobilityId": "f2d8d26d890a07c1", "scanner": "scanner-primary", "fingerprint": "97d45d6eda7e29e0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7e21d693585e2752", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/proxy.test.ts:111"}, "properties": {"repobilityId": "bd920556d8873bee", "scanner": "scanner-primary", "fingerprint": "7e21d693585e2752", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fbdb1fc2675bd63c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/layout.tsx:9"}, "properties": {"repobilityId": "ff489c092698eaaa", "scanner": "scanner-primary", "fingerprint": "fbdb1fc2675bd63c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-12436bc37288dfe3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/bridge/route.ts:18"}, "properties": {"repobilityId": "f3895ae0c760c012", "scanner": "scanner-primary", "fingerprint": "12436bc37288dfe3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-701374cf375d96e7", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/bridge/route.test.ts:34"}, "properties": {"repobilityId": "4a25e17ef6a0e322", "scanner": "scanner-primary", "fingerprint": "701374cf375d96e7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-03f322513a8b75fd", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/bridge/outcome/route.ts:24"}, "properties": {"repobilityId": "496d63a69948073a", "scanner": "scanner-primary", "fingerprint": "03f322513a8b75fd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-280fdb435c572821", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/api/bridge/outcome/[id]/curves/route.ts:77"}, "properties": {"repobilityId": "9c5f1f78ae14b882", "scanner": "scanner-primary", "fingerprint": "280fdb435c572821", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5e54fe2abcb7f376", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/bridge/outcome/[id]/curves/route.test.ts:272"}, "properties": {"repobilityId": "e1eb86c8e0a5358d", "scanner": "scanner-primary", "fingerprint": "5e54fe2abcb7f376", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6b72a251c84de03b", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/api/cron/cleanup-wizard-drafts/route.ts:86"}, "properties": {"repobilityId": "a98d395d1503571e", "scanner": "scanner-primary", "fingerprint": "6b72a251c84de03b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-14dac4adefc8abda", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/cron/cleanup-wizard-drafts/route.test.ts:322"}, "properties": {"repobilityId": "6746df89e4e85a19", "scanner": "scanner-primary", "fingerprint": "14dac4adefc8abda", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-74c413c6fbc158e2", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/cron/phase19-error-rollup/route.ts:32"}, "properties": {"repobilityId": "d7fdaf90ad76c2d5", "scanner": "scanner-primary", "fingerprint": "74c413c6fbc158e2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3f7bb14b34619c11", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/cron/phase19-error-rollup/route.test.ts:111"}, "properties": {"repobilityId": "cfb729eac1cf8afe", "scanner": "scanner-primary", "fingerprint": "3f7bb14b34619c11", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-279b27d1973b49ee", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/cron/founder-lp-report/route.ts:165"}, "properties": {"repobilityId": "cebedded673f0c29", "scanner": "scanner-primary", "fingerprint": "279b27d1973b49ee", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d52b5d7e60d6afc1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/cron/founder-lp-report/route.ts:19"}, "properties": {"repobilityId": "da2b0c9a673c8e7c", "scanner": "scanner-primary", "fingerprint": "d52b5d7e60d6afc1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d71968496153d4b4", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/cron/founder-lp-report/route.test.ts:328"}, "properties": {"repobilityId": "9783c593e7ebd9b6", "scanner": "scanner-primary", "fingerprint": "d71968496153d4b4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-18fb69bba48b5eaa", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/cron/founder-lp-report/route.test.ts:26"}, "properties": {"repobilityId": "1fb4bfac86dd94bc", "scanner": "scanner-primary", "fingerprint": "18fb69bba48b5eaa", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e59a196d188d54ff", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/cron/sync-funding/route.ts:127"}, "properties": {"repobilityId": "8309b2c4815b511f", "scanner": "scanner-primary", "fingerprint": "e59a196d188d54ff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e54373283118e423", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/cron/sync-funding/route.test.ts:255"}, "properties": {"repobilityId": "66b0bf7e9dba1e55", "scanner": "scanner-primary", "fingerprint": "e54373283118e423", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-de0f805e11e276a2", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/cron/cleanup-ack-tokens/route.test.ts:26"}, "properties": {"repobilityId": "f9213da24bcd91ce", "scanner": "scanner-primary", "fingerprint": "de0f805e11e276a2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ff77f47727a3e53e", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/cron/flag-monitor/route.ts:46"}, "properties": {"repobilityId": "c2eee58d7ba064d8", "scanner": "scanner-primary", "fingerprint": "ff77f47727a3e53e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8d8e194b3ea9f048", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/api/cron/flag-monitor/route.test.ts:44"}, "properties": {"repobilityId": "29bc06028865c092", "scanner": "scanner-primary", "fingerprint": "8d8e194b3ea9f048", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4354f6b88edd98fa", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/cron/reconcile-strategies/route.ts:77"}, "properties": {"repobilityId": "16bea726a729a46e", "scanner": "scanner-primary", "fingerprint": "4354f6b88edd98fa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-63bd4e3357d58f0d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/cron/reconcile-strategies/route.ts:11"}, "properties": {"repobilityId": "ff91bc218a40091b", "scanner": "scanner-primary", "fingerprint": "63bd4e3357d58f0d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3d9523114105edf2", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/intro-response/route.ts:100"}, "properties": {"repobilityId": "4320c32392d89845", "scanner": "scanner-primary", "fingerprint": "3d9523114105edf2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1be77d5d99d82735", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/intro-response/route.test.ts:86"}, "properties": {"repobilityId": "3b715acb2423d871", "scanner": "scanner-primary", "fingerprint": "1be77d5d99d82735", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb3c8f7da673480e", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/portfolio-pdf/[id]/route.ts:34"}, "properties": {"repobilityId": "eac343a0ba95449e", "scanner": "scanner-primary", "fingerprint": "eb3c8f7da673480e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2ee415c4710ceee5", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/api/portfolio-optimizer/route.ts:56"}, "properties": {"repobilityId": "b0726e29393e62e9", "scanner": "scanner-primary", "fingerprint": "2ee415c4710ceee5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e4675027c622725e", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/portfolio-optimizer/route.test.ts:200"}, "properties": {"repobilityId": "11162f27c071e8c5", "scanner": "scanner-primary", "fingerprint": "e4675027c622725e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-73d7df6df0bebf2d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/allocator/holdings/sync/route.ts:68"}, "properties": {"repobilityId": "2b7281051de19bed", "scanner": "scanner-primary", "fingerprint": "73d7df6df0bebf2d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4aa84df75ce82c4e", "level": "none", "message": {"text": "Commented-code block (14 lines) in src/app/api/allocator/scenario/commit/route.ts:60"}, "properties": {"repobilityId": "4e234521226356ab", "scanner": "scanner-primary", "fingerprint": "4aa84df75ce82c4e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-04d6fb27e32c78f9", "level": "none", "message": {"text": "Commented-code block (13 lines) in src/app/api/allocator/scenario/commit/percent-allocated-parity.test.ts:28"}, "properties": {"repobilityId": "5b82e7d18f8d5db9", "scanner": "scanner-primary", "fingerprint": "04d6fb27e32c78f9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-75a5844fab615962", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/api/allocator/scenario/commit/route.test.ts:43"}, "properties": {"repobilityId": "a4a02ff0d1779b78", "scanner": "scanner-primary", "fingerprint": "75a5844fab615962", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9898e4cfe87de60a", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/account/export/route.ts:208"}, "properties": {"repobilityId": "a75a8dca036c565c", "scanner": "scanner-primary", "fingerprint": "9898e4cfe87de60a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c870159b2aabbeb4", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/account/export/route.test.ts:420"}, "properties": {"repobilityId": "e3229a058c4ad7dc", "scanner": "scanner-primary", "fingerprint": "c870159b2aabbeb4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-32365c1cd8036bb4", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/api/factsheet/[id]/pdf/route.ts:49"}, "properties": {"repobilityId": "f281f88b6a51a96d", "scanner": "scanner-primary", "fingerprint": "32365c1cd8036bb4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5b5318d0fbfc0c1f", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/factsheet/[id]/pdf/route.test.ts:80"}, "properties": {"repobilityId": "0e6ab6eb95066328", "scanner": "scanner-primary", "fingerprint": "5b5318d0fbfc0c1f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-56588eaf93fd5388", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/factsheet/[id]/tearsheet.pdf/route.ts:18"}, "properties": {"repobilityId": "f5b6bd402e8494d5", "scanner": "scanner-primary", "fingerprint": "56588eaf93fd5388", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91765d5e8876bb08", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/factsheet/[id]/tearsheet.pdf/route.test.ts:90"}, "properties": {"repobilityId": "cb4e2f60721bf996", "scanner": "scanner-primary", "fingerprint": "91765d5e8876bb08", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aaf4ba64b607e901", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/api/notes/route.ts:37"}, "properties": {"repobilityId": "290fb17d59176fad", "scanner": "scanner-primary", "fingerprint": "aaf4ba64b607e901", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-78961f11aba07677", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/notes/route.test.ts:708"}, "properties": {"repobilityId": "c013b135f4bf8404", "scanner": "scanner-primary", "fingerprint": "78961f11aba07677", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-676c99ce9bb286c8", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/api/verify-strategy/route.ts:143"}, "properties": {"repobilityId": "fb95f5921e55e899", "scanner": "scanner-primary", "fingerprint": "676c99ce9bb286c8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e0d05fc118617732", "level": "note", "message": {"text": "Legacy-named symbol `verification_requests_legacy` in src/app/api/verify-strategy/[id]/status/route.ts:23"}, "properties": {"repobilityId": "4d23a9cc252000a2", "scanner": "scanner-primary", "fingerprint": "e0d05fc118617732", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d637dc62c2d9b95e", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/api/admin/manager-approve/route.ts:90"}, "properties": {"repobilityId": "0aed35d79ae08944", "scanner": "scanner-primary", "fingerprint": "d637dc62c2d9b95e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8563b70db1c404e7", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/api/admin/allocator-approve/route.ts:78"}, "properties": {"repobilityId": "930014f987a49425", "scanner": "scanner-primary", "fingerprint": "8563b70db1c404e7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-01fbefeda2966a71", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/api/admin/intro-request/route.ts:24"}, "properties": {"repobilityId": "d1df1a57efd41ef2", "scanner": "scanner-primary", "fingerprint": "01fbefeda2966a71", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-95db5f76d11d0ebb", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/api/admin/users/[id]/roles/route.ts:12"}, "properties": {"repobilityId": "e34abb18fefa3540", "scanner": "scanner-primary", "fingerprint": "95db5f76d11d0ebb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0317c9af6f66abf0", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/users/[id]/roles/route.test.ts:25"}, "properties": {"repobilityId": "7511aaa56b21cce5", "scanner": "scanner-primary", "fingerprint": "0317c9af6f66abf0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4079df08f269a9af", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/api/admin/strategy-review/route.ts:47"}, "properties": {"repobilityId": "a039cbee18645d25", "scanner": "scanner-primary", "fingerprint": "4079df08f269a9af", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4c74ef7971e3f183", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/strategy-review/route.test.ts:188"}, "properties": {"repobilityId": "05504e2561d2a41e", "scanner": "scanner-primary", "fingerprint": "4c74ef7971e3f183", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91ffebd6550ff722", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/match/kill-switch/route.ts:47"}, "properties": {"repobilityId": "4915fc1b78932c7d", "scanner": "scanner-primary", "fingerprint": "91ffebd6550ff722", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-255c7c4210b46ecb", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/admin/match/[allocator_id]/route.test.ts:175"}, "properties": {"repobilityId": "3bf0eb3e751c41cc", "scanner": "scanner-primary", "fingerprint": "255c7c4210b46ecb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dab8ff1484440772", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/match/preferences/[allocator_id]/route.ts:22"}, "properties": {"repobilityId": "2a3b57ca5b562116", "scanner": "scanner-primary", "fingerprint": "dab8ff1484440772", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2a038855dc234df9", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/match/send-intro/route.ts:53"}, "properties": {"repobilityId": "84eab7b50ff481f2", "scanner": "scanner-primary", "fingerprint": "2a038855dc234df9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b547066bab76ad07", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/match/send-intro/route.test.ts:52"}, "properties": {"repobilityId": "bfa939d363e0d767", "scanner": "scanner-primary", "fingerprint": "b547066bab76ad07", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4375c391ba23bfdc", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/match/decisions/route.ts:46"}, "properties": {"repobilityId": "cc88dc31a5616967", "scanner": "scanner-primary", "fingerprint": "4375c391ba23bfdc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d46ef07e5295774c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/admin/match/decisions/route.test.ts:236"}, "properties": {"repobilityId": "0742e3016cc2a0f8", "scanner": "scanner-primary", "fingerprint": "d46ef07e5295774c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a632ab7c4c30b19d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/match/allocators/route.ts:16"}, "properties": {"repobilityId": "f4e79c279f7fb3ab", "scanner": "scanner-primary", "fingerprint": "a632ab7c4c30b19d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5582d978048e3331", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/api/admin/partner-import/route.ts:88"}, "properties": {"repobilityId": "0353328ea46f1b53", "scanner": "scanner-primary", "fingerprint": "5582d978048e3331", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5f7f083fbc0cde6", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/partner-import/route.test.ts:392"}, "properties": {"repobilityId": "f2b7c898d5cb6a19", "scanner": "scanner-primary", "fingerprint": "f5f7f083fbc0cde6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-78e24b94dc3cb975", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/for-quants-leads/process/route.ts:18"}, "properties": {"repobilityId": "c095d33cc397a8de", "scanner": "scanner-primary", "fingerprint": "78e24b94dc3cb975", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-46f3016249ffecbf", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/admin/for-quants-leads/process/route.test.ts:188"}, "properties": {"repobilityId": "42774054a81a41f1", "scanner": "scanner-primary", "fingerprint": "46f3016249ffecbf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1000834d48ba5f03", "level": "none", "message": {"text": "Commented-code block (13 lines) in src/app/api/admin/notify-submission/route.ts:1"}, "properties": {"repobilityId": "015f590b50071569", "scanner": "scanner-primary", "fingerprint": "1000834d48ba5f03", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e997a3a7cca1890f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/notify-submission/route.test.ts:182"}, "properties": {"repobilityId": "3ba8f7b5902a415a", "scanner": "scanner-primary", "fingerprint": "e997a3a7cca1890f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7955bb22a4cdd2f3", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/api/admin/deletion-requests/[id]/reject/route.ts:73"}, "properties": {"repobilityId": "00262227f8371908", "scanner": "scanner-primary", "fingerprint": "7955bb22a4cdd2f3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-db544c120cdb1856", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/admin/deletion-requests/[id]/reject/route.test.ts:206"}, "properties": {"repobilityId": "cdb036c6e7a4046b", "scanner": "scanner-primary", "fingerprint": "db544c120cdb1856", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-de2f5f15393266ba", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/api/admin/deletion-requests/[id]/approve/route.ts:85"}, "properties": {"repobilityId": "335f7e80c4147ce8", "scanner": "scanner-primary", "fingerprint": "de2f5f15393266ba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5f1d7cce76991e04", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/api/admin/deletion-requests/[id]/approve/route.test.ts:111"}, "properties": {"repobilityId": "c1a8f5a59368f2c0", "scanner": "scanner-primary", "fingerprint": "5f1d7cce76991e04", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f6a565e8e9989d3a", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/admin/allocators/[id]/holdings/route.ts:36"}, "properties": {"repobilityId": "c05e8f96a1c74b1e", "scanner": "scanner-primary", "fingerprint": "f6a565e8e9989d3a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dc59092ca84947c1", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/allocators/[id]/holdings/route.test.ts:129"}, "properties": {"repobilityId": "f234022d53b27ec4", "scanner": "scanner-primary", "fingerprint": "dc59092ca84947c1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-85581a626fa7cd7a", "level": "none", "message": {"text": "Commented-code block (13 lines) in src/app/api/demo/match/[allocator_id]/route.ts:24"}, "properties": {"repobilityId": "40de15ef9648e76a", "scanner": "scanner-primary", "fingerprint": "85581a626fa7cd7a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2539807c84746568", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/demo/match/[allocator_id]/route.test.ts:121"}, "properties": {"repobilityId": "e14727616140deab", "scanner": "scanner-primary", "fingerprint": "2539807c84746568", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7ea02f121649f1b6", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/portfolio-strategies/alias/route.ts:57"}, "properties": {"repobilityId": "9a9f62ed0556e672", "scanner": "scanner-primary", "fingerprint": "7ea02f121649f1b6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b1f3dd206fc5e7bb", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/portfolio-strategies/alias/route.test.ts:286"}, "properties": {"repobilityId": "d0fc9a6794932517", "scanner": "scanner-primary", "fingerprint": "b1f3dd206fc5e7bb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b9a4e5a44173ec80", "level": "none", "message": {"text": "Commented-code block (13 lines) in src/app/api/attestation/route.ts:12"}, "properties": {"repobilityId": "8ce2c7e033e1e5d6", "scanner": "scanner-primary", "fingerprint": "b9a4e5a44173ec80", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-227d9085a1b22959", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/attestation/route.test.ts:41"}, "properties": {"repobilityId": "6ae1162ce8c42402", "scanner": "scanner-primary", "fingerprint": "227d9085a1b22959", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f2f740caead5fef4", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/strategies/finalize-wizard/route.ts:224"}, "properties": {"repobilityId": "ff0da5b8c71e788e", "scanner": "scanner-primary", "fingerprint": "f2f740caead5fef4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2beec92d3b92585c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/strategies/finalize-wizard/route.ts:81"}, "properties": {"repobilityId": "c93d45f97a007e1a", "scanner": "scanner-primary", "fingerprint": "2beec92d3b92585c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f0b3e9b11e7cc2df", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/strategies/finalize-wizard/route.test.ts:82"}, "properties": {"repobilityId": "60ab147dcec6c883", "scanner": "scanner-primary", "fingerprint": "f0b3e9b11e7cc2df", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6b753f7b178a27b8", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/strategies/draft/[id]/route.ts:59"}, "properties": {"repobilityId": "20e38451a34c6076", "scanner": "scanner-primary", "fingerprint": "6b753f7b178a27b8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-60c05541325399fd", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/api/strategies/draft/[id]/route.test.ts:311"}, "properties": {"repobilityId": "4d1f228eb5e34994", "scanner": "scanner-primary", "fingerprint": "60c05541325399fd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-70fdf3e046cb8ce7", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/api/strategies/browse/route.ts:99"}, "properties": {"repobilityId": "1945450422d13a53", "scanner": "scanner-primary", "fingerprint": "70fdf3e046cb8ce7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cc03589f5fb20bae", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/strategies/browse/route.test.ts:239"}, "properties": {"repobilityId": "1bd763aa2f3def7e", "scanner": "scanner-primary", "fingerprint": "cc03589f5fb20bae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0dd0118dc87c0ba5", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/strategies/csv-validate/route.ts:73"}, "properties": {"repobilityId": "9e72ae44291b31b0", "scanner": "scanner-primary", "fingerprint": "0dd0118dc87c0ba5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6fa9127aa52154f3", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/api/strategies/create-with-key/route.audit.test.ts:94"}, "properties": {"repobilityId": "7e21f6e677bddc57", "scanner": "scanner-primary", "fingerprint": "6fa9127aa52154f3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bafa583b3ff6f97d", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/api/strategies/create-with-key/route.ts:120"}, "properties": {"repobilityId": "c734de4f4bee1139", "scanner": "scanner-primary", "fingerprint": "bafa583b3ff6f97d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-691d36d9c75a8d27", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/strategies/create-with-key/route.test.ts:44"}, "properties": {"repobilityId": "ce9f19b0987d950a", "scanner": "scanner-primary", "fingerprint": "691d36d9c75a8d27", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4ca32d0d106b646d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/strategies/csv-finalize/route.ts:54"}, "properties": {"repobilityId": "93f4bb08e459c836", "scanner": "scanner-primary", "fingerprint": "4ca32d0d106b646d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d8928517d1de3486", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/api/portfolio-alerts/route.test.ts:362"}, "properties": {"repobilityId": "a55cbb1c941dead6", "scanner": "scanner-primary", "fingerprint": "d8928517d1de3486", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c2cf983843dfc849", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/api/keys/[id]/permissions/route.ts:161"}, "properties": {"repobilityId": "3bcb5fe126fc5be1", "scanner": "scanner-primary", "fingerprint": "c2cf983843dfc849", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-89ccbeac312c1afa", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/keys/[id]/permissions/route.test.ts:333"}, "properties": {"repobilityId": "c5d07a481a881639", "scanner": "scanner-primary", "fingerprint": "89ccbeac312c1afa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-63825484bd158f4f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/keys/sync/route.ts:63"}, "properties": {"repobilityId": "c38f005933b0c982", "scanner": "scanner-primary", "fingerprint": "63825484bd158f4f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7346e82560030b4f", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/keys/sync/route.test.ts:74"}, "properties": {"repobilityId": "da913c142015342d", "scanner": "scanner-primary", "fingerprint": "7346e82560030b4f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dde7a3c010555f83", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/api/keys/validate-and-encrypt/route.ts:42"}, "properties": {"repobilityId": "3ddc6661df706fdf", "scanner": "scanner-primary", "fingerprint": "dde7a3c010555f83", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6c6cbb822f1418b9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/keys/validate-and-encrypt/route.ts:79"}, "properties": {"repobilityId": "e3e04ca60637ae93", "scanner": "scanner-primary", "fingerprint": "6c6cbb822f1418b9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-806e801afeaf39cc", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/match/decisions/holding/route.ts:115"}, "properties": {"repobilityId": "40c055935f18bff7", "scanner": "scanner-primary", "fingerprint": "806e801afeaf39cc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-85f3f8c2d50b781e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/webhooks/resend/route.ts:11"}, "properties": {"repobilityId": "72aefb865f3a4fff", "scanner": "scanner-primary", "fingerprint": "85f3f8c2d50b781e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-46f52b37c5215203", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/simulator/route.ts:166"}, "properties": {"repobilityId": "76017dd95c1d9988", "scanner": "scanner-primary", "fingerprint": "46f52b37c5215203", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6222b6e8c0afa210", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/simulator/route.test.ts:130"}, "properties": {"repobilityId": "420fb68d13996a96", "scanner": "scanner-primary", "fingerprint": "6222b6e8c0afa210", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-52e4e0a1c6fc7445", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/alerts/ack/route.ts:121"}, "properties": {"repobilityId": "0676c0d21a0cb64d", "scanner": "scanner-primary", "fingerprint": "52e4e0a1c6fc7445", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-177528ffd7570a3d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/preferences/route.ts:50"}, "properties": {"repobilityId": "809ca800283ff1b6", "scanner": "scanner-primary", "fingerprint": "177528ffd7570a3d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3adb968e9694e2c6", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/preferences/route.test.ts:62"}, "properties": {"repobilityId": "fe0f19a9ea38f32c", "scanner": "scanner-primary", "fingerprint": "3adb968e9694e2c6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d8dbb1310ad3533d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/intro/route.ts:223"}, "properties": {"repobilityId": "572f3a23ee9bbb9d", "scanner": "scanner-primary", "fingerprint": "d8dbb1310ad3533d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-890dde166ec22e32", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/intro/route.test.ts:22"}, "properties": {"repobilityId": "42d1d1ace43c2714", "scanner": "scanner-primary", "fingerprint": "890dde166ec22e32", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-598c0d19a4ca2ca3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/alert-digest/route.ts:65"}, "properties": {"repobilityId": "a66180c9265387bf", "scanner": "scanner-primary", "fingerprint": "598c0d19a4ca2ca3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ecd1f7a785ffc154", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/alert-digest/route.test.ts:150"}, "properties": {"repobilityId": "aaad9837f4123414", "scanner": "scanner-primary", "fingerprint": "ecd1f7a785ffc154", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c69f9fcdee8c41b8", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/me/audit-log/export/route.test.ts:440"}, "properties": {"repobilityId": "9ec301826cb3175a", "scanner": "scanner-primary", "fingerprint": "c69f9fcdee8c41b8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-53d04be5665809eb", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/watchlist/[strategyId]/route.ts:51"}, "properties": {"repobilityId": "b6536c3df022cb7b", "scanner": "scanner-primary", "fingerprint": "53d04be5665809eb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c2718b9526c19ece", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/watchlist/[strategyId]/route.test.ts:24"}, "properties": {"repobilityId": "894b884703099a00", "scanner": "scanner-primary", "fingerprint": "c2718b9526c19ece", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0b717e5ca9f20782", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/api/for-quants-lead/route.ts:161"}, "properties": {"repobilityId": "54ab295a5fb1f2fa", "scanner": "scanner-primary", "fingerprint": "0b717e5ca9f20782", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8cafbccf2354cd44", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/for-quants-lead/route.gaps.test.ts:252"}, "properties": {"repobilityId": "f4930d83e54aaeb0", "scanner": "scanner-primary", "fingerprint": "8cafbccf2354cd44", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-564632b87830adc7", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/api/for-quants-lead/route.test.ts:255"}, "properties": {"repobilityId": "36694269bdcd465d", "scanner": "scanner-primary", "fingerprint": "564632b87830adc7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-88a071e663abf94b", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/trades/upload/route.ts:149"}, "properties": {"repobilityId": "4e8c4dc47deb7c45", "scanner": "scanner-primary", "fingerprint": "88a071e663abf94b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2897edcbace8d45e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/trades/upload/route.test.ts:85"}, "properties": {"repobilityId": "82623099b097ccad", "scanner": "scanner-primary", "fingerprint": "2897edcbace8d45e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-484d8f5208c73cd7", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/debug-key-flow/route.ts:13"}, "properties": {"repobilityId": "a26e627902ae6bc4", "scanner": "scanner-primary", "fingerprint": "484d8f5208c73cd7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c0ae54c31c083666", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/api/debug-key-flow/rate-limit.ts:5"}, "properties": {"repobilityId": "1cf1dae543286773", "scanner": "scanner-primary", "fingerprint": "c0ae54c31c083666", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d6d90eb2dd675ec2", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/debug-key-flow/route.test.ts:224"}, "properties": {"repobilityId": "fc7cb7b1f1ef3a24", "scanner": "scanner-primary", "fingerprint": "d6d90eb2dd675ec2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3b0a4dee27cc75e9", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/portfolio-pdf/[id]/page.tsx:142"}, "properties": {"repobilityId": "1d12f87c68940c25", "scanner": "scanner-primary", "fingerprint": "3b0a4dee27cc75e9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1e75a489b63c4791", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/strategy/[id]/page.test.tsx:55"}, "properties": {"repobilityId": "8c5fc229f45317e1", "scanner": "scanner-primary", "fingerprint": "1e75a489b63c4791", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-76d3377b4c154d49", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/factsheet/[id]/tearsheet/page.tsx:17"}, "properties": {"repobilityId": "98567ae4f5fc2af2", "scanner": "scanner-primary", "fingerprint": "76d3377b4c154d49", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e39ee092a3978c27", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/factsheet/[id]/tearsheet/page.test.tsx:219"}, "properties": {"repobilityId": "0325eebe25e4a4ef", "scanner": "scanner-primary", "fingerprint": "e39ee092a3978c27", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-426c00cef9734ca0", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/factsheet/[id]/v2/format.ts:99"}, "properties": {"repobilityId": "3aa3200d69e2ebd2", "scanner": "scanner-primary", "fingerprint": "426c00cef9734ca0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2409ac98dd2c21b1", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/factsheet/[id]/v2/HistogramChart.tsx:43"}, "properties": {"repobilityId": "b99a3aec66b472d9", "scanner": "scanner-primary", "fingerprint": "2409ac98dd2c21b1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b7e3517f5640e5e3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/factsheet/[id]/v2/RangePicker.tsx:48"}, "properties": {"repobilityId": "bf2997070f12d1c6", "scanner": "scanner-primary", "fingerprint": "b7e3517f5640e5e3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fd62c3ecbc00fad3", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/factsheet/[id]/v2/TimeSeriesChart.tsx:616"}, "properties": {"repobilityId": "d20c7a6fa7165747", "scanner": "scanner-primary", "fingerprint": "fd62c3ecbc00fad3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c5a3f6096bf1e34c", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/factsheet/[id]/v2/format.test.ts:68"}, "properties": {"repobilityId": "2d21977a1ba1d0e2", "scanner": "scanner-primary", "fingerprint": "c5a3f6096bf1e34c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-03ec64b01d3363ef", "level": "note", "message": {"text": "Legacy-named symbol `factsheet_v2_share_copy` in src/app/factsheet/[id]/v2/FactsheetView.tsx:800"}, "properties": {"repobilityId": "90af55f917d1eda5", "scanner": "scanner-primary", "fingerprint": "03ec64b01d3363ef", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0339dec704cc2a4c", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/factsheet/[id]/v2/FactsheetView.tsx:163"}, "properties": {"repobilityId": "54d5d6b8d5a3abad", "scanner": "scanner-primary", "fingerprint": "0339dec704cc2a4c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6d69f0134b6ee83a", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/app/factsheet/[id]/v2/factsheet-context.tsx:212"}, "properties": {"repobilityId": "e4abffa2cf20fde0", "scanner": "scanner-primary", "fingerprint": "6d69f0134b6ee83a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0a0524d5f6e18b52", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/factsheet/[id]/v2/chart-configs.ts:237"}, "properties": {"repobilityId": "8fbbaca8cc50b3d5", "scanner": "scanner-primary", "fingerprint": "0a0524d5f6e18b52", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0de3b5272e166b66", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/factsheet/[id]/v2/CollapsibleSection.test.tsx:109"}, "properties": {"repobilityId": "5d24e269cf20ebc9", "scanner": "scanner-primary", "fingerprint": "0de3b5272e166b66", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0f9e77abd50f8359", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/factsheet/[id]/v2/page.tsx:60"}, "properties": {"repobilityId": "e167e9bade701610", "scanner": "scanner-primary", "fingerprint": "0f9e77abd50f8359", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-20433a0ecbab5f08", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/factsheet/[id]/v2/CollapsibleSection.tsx:43"}, "properties": {"repobilityId": "6f9754b86aa7c5bf", "scanner": "scanner-primary", "fingerprint": "20433a0ecbab5f08", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b11d827eb52be6a1", "level": "note", "message": {"text": "Legacy-named symbol `factsheet_v2_share_copy` in src/app/factsheet/[id]/v2/factsheet-analytics.ts:28"}, "properties": {"repobilityId": "6ae3e1d6785c46e9", "scanner": "scanner-primary", "fingerprint": "b11d827eb52be6a1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f59d0e435506d5a4", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/demo/page.tsx:1"}, "properties": {"repobilityId": "d785ea748fedcf1f", "scanner": "scanner-primary", "fingerprint": "f59d0e435506d5a4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0c91fdf3b3dd5b7c", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/auth/callback/route.ts:66"}, "properties": {"repobilityId": "9938b0ddea206654", "scanner": "scanner-primary", "fingerprint": "0c91fdf3b3dd5b7c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c30bf591bc20a01e", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/auth/callback/route.test.ts:155"}, "properties": {"repobilityId": "f21958b689d71611", "scanner": "scanner-primary", "fingerprint": "c30bf591bc20a01e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2a4a47b98b12acd4", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/for-quants/RequestCallModal.test.tsx:179"}, "properties": {"repobilityId": "7ce7a13365d989ec", "scanner": "scanner-primary", "fingerprint": "2a4a47b98b12acd4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-675ba0926e5d5c46", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/for-quants/RequestCallModal.tsx:62"}, "properties": {"repobilityId": "ac604806ae7e66cb", "scanner": "scanner-primary", "fingerprint": "675ba0926e5d5c46", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-24e1b2dc5ece3d6f", "level": "note", "message": {"text": "Legacy-named symbol `for_quants_view_fired_v1` in src/app/for-quants/ForQuantsCtas.tsx:41"}, "properties": {"repobilityId": "54ad8220dc645091", "scanner": "scanner-primary", "fingerprint": "24e1b2dc5ece3d6f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3d73a2a0da771395", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/for-quants/ForQuantsCtas.tsx:51"}, "properties": {"repobilityId": "c88dad856c8b0854", "scanner": "scanner-primary", "fingerprint": "3d73a2a0da771395", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-78f470d5310470d2", "level": "note", "message": {"text": "Legacy-named symbol `for_quants_view_fired_v1` in src/app/for-quants/ForQuantsCtas.test.tsx:12"}, "properties": {"repobilityId": "69f5f6f9960a31e8", "scanner": "scanner-primary", "fingerprint": "78f470d5310470d2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ca62256af5ea5898", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/for-quants/ForQuantsCtas.test.tsx:98"}, "properties": {"repobilityId": "2e865af5b9b214ba", "scanner": "scanner-primary", "fingerprint": "ca62256af5ea5898", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-26582d098270bca1", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/layout.tsx:13"}, "properties": {"repobilityId": "f08b9c3278dedab8", "scanner": "scanner-primary", "fingerprint": "26582d098270bca1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5b21fc0c6f8b3430", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/admin/page.tsx:50"}, "properties": {"repobilityId": "ce87b1323d3473eb", "scanner": "scanner-primary", "fingerprint": "5b21fc0c6f8b3430", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-43b7365429091f54", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/admin/users/page.tsx:29"}, "properties": {"repobilityId": "5ee54dc456afbb7f", "scanner": "scanner-primary", "fingerprint": "43b7365429091f54", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5e503d83aa025002", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/admin/csv-status/page.tsx:34"}, "properties": {"repobilityId": "71bdb305591b1768", "scanner": "scanner-primary", "fingerprint": "5e503d83aa025002", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b49d2614f126f8ec", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/admin/deletion-requests/page.tsx:1"}, "properties": {"repobilityId": "784f82d903960169", "scanner": "scanner-primary", "fingerprint": "b49d2614f126f8ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3e0238900acb6f70", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/admin/compute-jobs/page.tsx:19"}, "properties": {"repobilityId": "4b862ef6bd87a91a", "scanner": "scanner-primary", "fingerprint": "3e0238900acb6f70", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2d90a3ce916a5068", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/profile/page.tsx:21"}, "properties": {"repobilityId": "acaef657cf530f94", "scanner": "scanner-primary", "fingerprint": "2d90a3ce916a5068", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bc0cb82b4e9a6907", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/discovery/[slug]/page.tsx:27"}, "properties": {"repobilityId": "db38153cb2a06cfa", "scanner": "scanner-primary", "fingerprint": "bc0cb82b4e9a6907", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-542448046d89ef0c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/discovery/[slug]/[strategyId]/page.tsx:31"}, "properties": {"repobilityId": "cbe4c129440e5a9e", "scanner": "scanner-primary", "fingerprint": "542448046d89ef0c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1f71569532fef4ba", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/strategies/page.wizard-draft-banner.test.tsx:94"}, "properties": {"repobilityId": "c5884a29199c6aea", "scanner": "scanner-primary", "fingerprint": "1f71569532fef4ba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f25965b60b47b802", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/page.tsx:17"}, "properties": {"repobilityId": "1d00d33537774e1b", "scanner": "scanner-primary", "fingerprint": "f25965b60b47b802", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a1c3571b105da0fa", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/strategies/[id]/edit/page.test.tsx:68"}, "properties": {"repobilityId": "311d769bfb5e2b36", "scanner": "scanner-primary", "fingerprint": "a1c3571b105da0fa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ef9983ed98a75f1", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/strategies/new/wizard/WizardChrome.test.tsx:8"}, "properties": {"repobilityId": "6c2b4bb7e45771ab", "scanner": "scanner-primary", "fingerprint": "9ef9983ed98a75f1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e461598a7e82509c", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/WizardClient.tsx:101"}, "properties": {"repobilityId": "2431edcbfc45232c", "scanner": "scanner-primary", "fingerprint": "e461598a7e82509c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-31fab28023a5c257", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/WizardClient.test.tsx:223"}, "properties": {"repobilityId": "eeef827b84e09b14", "scanner": "scanner-primary", "fingerprint": "31fab28023a5c257", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-401237acebcb0587", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/strategies/new/wizard/page.tsx:52"}, "properties": {"repobilityId": "eff4fab4e94e5def", "scanner": "scanner-primary", "fingerprint": "401237acebcb0587", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e8c3411966ce3f20", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/strategies/new/wizard/steps/ConnectKeyStep.test.tsx:8"}, "properties": {"repobilityId": "fdffcacba43e6bfa", "scanner": "scanner-primary", "fingerprint": "e8c3411966ce3f20", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f95d48f5e32f59fe", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvUploadStep.tsx:146"}, "properties": {"repobilityId": "c76421d141f73a0f", "scanner": "scanner-primary", "fingerprint": "f95d48f5e32f59fe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-17d8c414639e4057", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SubmitStep.test.tsx:158"}, "properties": {"repobilityId": "0e8493487c8a02a0", "scanner": "scanner-primary", "fingerprint": "17d8c414639e4057", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5dcad9bb08283625", "level": "none", "message": {"text": "Commented-code block (16 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SubmitStep.tsx:105"}, "properties": {"repobilityId": "27a763bd076eab87", "scanner": "scanner-primary", "fingerprint": "5dcad9bb08283625", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bdd9433a313362b3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/strategies/new/wizard/steps/ConnectKeyStep.tsx:115"}, "properties": {"repobilityId": "2ca9f4ceb2108766", "scanner": "scanner-primary", "fingerprint": "bdd9433a313362b3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d1f8a4be1ab4e5dd", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/steps/MetadataStep.tsx:71"}, "properties": {"repobilityId": "c8a6912e5dd048ba", "scanner": "scanner-primary", "fingerprint": "d1f8a4be1ab4e5dd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c318537f226017b9", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.test.ts:4"}, "properties": {"repobilityId": "c6fb9df0023d6d76", "scanner": "scanner-primary", "fingerprint": "c318537f226017b9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2ac5d473a658fed6", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvPreviewStep.test.ts:4"}, "properties": {"repobilityId": "e5b24fd63e76da9f", "scanner": "scanner-primary", "fingerprint": "2ac5d473a658fed6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ca7d1a46c5ee5317", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvSubmitStep.test.tsx:6"}, "properties": {"repobilityId": "083781eaa549b0f8", "scanner": "scanner-primary", "fingerprint": "ca7d1a46c5ee5317", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5163cab9660f39bf", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.render.test.tsx:26"}, "properties": {"repobilityId": "c1a35f5da2d6109b", "scanner": "scanner-primary", "fingerprint": "5163cab9660f39bf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a2d2b59505458257", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.render.test.tsx:142"}, "properties": {"repobilityId": "ad65edad0de1a3c1", "scanner": "scanner-primary", "fingerprint": "a2d2b59505458257", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c91a969f62267f87", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvUploadStep.test.tsx:7"}, "properties": {"repobilityId": "1ba3538d3b167cb7", "scanner": "scanner-primary", "fingerprint": "c91a969f62267f87", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-15e80e0ba1053529", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/strategies/new/wizard/steps/CsvSubmitStep.tsx:105"}, "properties": {"repobilityId": "28c80628b881d322", "scanner": "scanner-primary", "fingerprint": "15e80e0ba1053529", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-22f12ef82220c30d", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.tsx:179"}, "properties": {"repobilityId": "03aec157b3207927", "scanner": "scanner-primary", "fingerprint": "22f12ef82220c30d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7bf9720b2ee8b092", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.tsx:207"}, "properties": {"repobilityId": "3ac5ec5887d9c3cb", "scanner": "scanner-primary", "fingerprint": "7bf9720b2ee8b092", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2be268f13aab5001", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/scenarios/page.tsx:37"}, "properties": {"repobilityId": "3601a79c0e67edae", "scanner": "scanner-primary", "fingerprint": "2be268f13aab5001", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-99bcb8e959def4fa", "level": "none", "message": {"text": "Commented-code block (12 lines) in src/app/(dashboard)/compare/lib/holding-compare-adapter.ts:161"}, "properties": {"repobilityId": "15c9d9b3c17c56f1", "scanner": "scanner-primary", "fingerprint": "99bcb8e959def4fa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91a89976622a925d", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/compare/lib/holding-compare-adapter.test.ts:102"}, "properties": {"repobilityId": "ab0f79f1967994d4", "scanner": "scanner-primary", "fingerprint": "91a89976622a925d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-463ae966a0c4b7cf", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/AllocationDashboardV2.tsx:45"}, "properties": {"repobilityId": "9e25b4fb914246b3", "scanner": "scanner-primary", "fingerprint": "463ae966a0c4b7cf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7fccd80b840d1bb1", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/AllocationContext.tsx:95"}, "properties": {"repobilityId": "22df69be0df066f1", "scanner": "scanner-primary", "fingerprint": "7fccd80b840d1bb1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-64cf5d9c82a592b8", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/AllocationDashboardV2.staleness.test.tsx:16"}, "properties": {"repobilityId": "2bdf77c829d05740", "scanner": "scanner-primary", "fingerprint": "64cf5d9c82a592b8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e8ef8e286f004913", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/MandateTabPanel.tsx:144"}, "properties": {"repobilityId": "bda68bdf9f759509", "scanner": "scanner-primary", "fingerprint": "e8ef8e286f004913", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c0abf54f9b683c6c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/AllocationContext.test.tsx:127"}, "properties": {"repobilityId": "6f0e67bc0b746377", "scanner": "scanner-primary", "fingerprint": "c0abf54f9b683c6c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-816ac67a744e3f16", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/ScenarioFlaggedHoldingsList.tsx:30"}, "properties": {"repobilityId": "0426e087cb0ed9fd", "scanner": "scanner-primary", "fingerprint": "816ac67a744e3f16", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e6f5e4a3bf66081f", "level": "note", "message": {"text": "Legacy-named symbol `ui_v2` in src/app/(dashboard)/allocations/AllocationsTabs.tsx:137"}, "properties": {"repobilityId": "1d67ffbc23d5eaaa", "scanner": "scanner-primary", "fingerprint": "e6f5e4a3bf66081f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0d176ec8c757584b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/AllocationsTabs.tsx:27"}, "properties": {"repobilityId": "c55da81ff767537b", "scanner": "scanner-primary", "fingerprint": "0d176ec8c757584b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e78324fe5302dd46", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/page.tsx:43"}, "properties": {"repobilityId": "7966c1608e108157", "scanner": "scanner-primary", "fingerprint": "e78324fe5302dd46", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d58ddb34870abbe5", "level": "note", "message": {"text": "Legacy-named symbol `ui_v2` in src/app/(dashboard)/allocations/AllocationsTabs.scenario-composer.test.tsx:8"}, "properties": {"repobilityId": "2618aa370c579d4a", "scanner": "scanner-primary", "fingerprint": "d58ddb34870abbe5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5b793c6f038cd5d2", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/AllocationsTabs.scenario-composer.test.tsx:369"}, "properties": {"repobilityId": "e522b17d0d6cbd6e", "scanner": "scanner-primary", "fingerprint": "5b793c6f038cd5d2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-35364a0be6383ccc", "level": "note", "message": {"text": "Legacy-named symbol `ui_v2` in src/app/(dashboard)/allocations/AllocationsTabs.test.tsx:614"}, "properties": {"repobilityId": "3d1521e7f8a5b0f3", "scanner": "scanner-primary", "fingerprint": "35364a0be6383ccc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0cd7016afe527d95", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/AllocationsTabs.test.tsx:45"}, "properties": {"repobilityId": "46890cfbe9ec005b", "scanner": "scanner-primary", "fingerprint": "0cd7016afe527d95", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ab68867bc07c1625", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/AllocationDashboardV2.baseline-unknown.test.tsx:10"}, "properties": {"repobilityId": "98b5574ba3aef9f6", "scanner": "scanner-primary", "fingerprint": "ab68867bc07c1625", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-29a3ff6aae074185", "level": "note", "message": {"text": "Legacy-named symbol `migrateLegacy` in src/app/(dashboard)/allocations/hooks/useExcludedKeyIds.ts:61"}, "properties": {"repobilityId": "3eae7a8c7b1a3f35", "scanner": "scanner-primary", "fingerprint": "29a3ff6aae074185", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0de5ea8f06c3bf34", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/hooks/useExcludedKeyIds.ts:38"}, "properties": {"repobilityId": "5e94c565bbf4000a", "scanner": "scanner-primary", "fingerprint": "0de5ea8f06c3bf34", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d51ba75a2f33c8f3", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/hooks/useScenarioState.test.tsx:525"}, "properties": {"repobilityId": "a5ec1f96530ac827", "scanner": "scanner-primary", "fingerprint": "d51ba75a2f33c8f3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a72ebc283485d9b0", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/hooks/useScenarioState.ts:124"}, "properties": {"repobilityId": "b3de5a904e9cd796", "scanner": "scanner-primary", "fingerprint": "a72ebc283485d9b0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a6476a99adb8ca74", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/context/TweaksContext.tsx:208"}, "properties": {"repobilityId": "22eccaea8285bf2b", "scanner": "scanner-primary", "fingerprint": "a6476a99adb8ca74", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d5d65af014a27c0c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/index.contract.test.ts:9"}, "properties": {"repobilityId": "c95a22f23993da7d", "scanner": "scanner-primary", "fingerprint": "d5d65af014a27c0c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-72a13bf3c60b0c29", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/intelligence/RegimeDetector.tsx:23"}, "properties": {"repobilityId": "9801c20b749c65de", "scanner": "scanner-primary", "fingerprint": "72a13bf3c60b0c29", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fc4d570833252625", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/intelligence/intelligence.test.tsx:63"}, "properties": {"repobilityId": "d65fab8ee36a0802", "scanner": "scanner-primary", "fingerprint": "fc4d570833252625", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5492f0183f5751c0", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/performance/equity-curve.equitydailypoints.test.tsx:109"}, "properties": {"repobilityId": "3aa9e4cb0bbfc710", "scanner": "scanner-primary", "fingerprint": "5492f0183f5751c0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-be29ed75820a872d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.tweaks.test.tsx:11"}, "properties": {"repobilityId": "2380511bca786eda", "scanner": "scanner-primary", "fingerprint": "be29ed75820a872d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-88378357b1c7067a", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.test.tsx:17"}, "properties": {"repobilityId": "1c4d177c6eb15833", "scanner": "scanner-primary", "fingerprint": "88378357b1c7067a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8f275ffe5c533ad5", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.boundary.test.tsx:11"}, "properties": {"repobilityId": "ece84e6cabbe6d8c", "scanner": "scanner-primary", "fingerprint": "8f275ffe5c533ad5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e10fbbaf335d803e", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChartWidget.header.test.tsx:13"}, "properties": {"repobilityId": "4ed617a0d684be83", "scanner": "scanner-primary", "fingerprint": "e10fbbaf335d803e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d00b9ddcaa1724e6", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.tsx:24"}, "properties": {"repobilityId": "f1743338cf355fa8", "scanner": "scanner-primary", "fingerprint": "d00b9ddcaa1724e6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a6b50acc735b844a", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/widgets/performance/EquityChart.scenario.test.tsx:11"}, "properties": {"repobilityId": "3863121c7849321d", "scanner": "scanner-primary", "fingerprint": "a6b50acc735b844a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8314fadc57d9ae3f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/widgets/performance/DrawdownChart.tsx:50"}, "properties": {"repobilityId": "56dd07fedfe5bf31", "scanner": "scanner-primary", "fingerprint": "8314fadc57d9ae3f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-68a2e189a060c715", "level": "note", "message": {"text": "Legacy-named symbol `widget_state_v2` in src/app/(dashboard)/allocations/widgets/performance/EquityChart.v2.test.tsx:9"}, "properties": {"repobilityId": "f47df26a649c0620", "scanner": "scanner-primary", "fingerprint": "68a2e189a060c715", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-747ebe6491aee64b", "level": "none", "message": {"text": "Commented-code block (14 lines) in src/app/(dashboard)/allocations/widgets/performance/DrawdownChart.scenario.test.tsx:29"}, "properties": {"repobilityId": "3c895793e0b5a0c2", "scanner": "scanner-primary", "fingerprint": "747ebe6491aee64b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1e6bba91c80a8ee6", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/risk/risk.test.tsx:159"}, "properties": {"repobilityId": "950cdcb4ef003000", "scanner": "scanner-primary", "fingerprint": "1e6bba91c80a8ee6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-29dce74858c37ea0", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/widgets/risk/CorrelationMatrix.tsx:12"}, "properties": {"repobilityId": "e80b6e9853114bdd", "scanner": "scanner-primary", "fingerprint": "29dce74858c37ea0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa39f29c34ec7f79", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/widgets/risk/RiskDecomposition.boundary.test.tsx:5"}, "properties": {"repobilityId": "53c12d6606046e2b", "scanner": "scanner-primary", "fingerprint": "aa39f29c34ec7f79", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a45875528d1a5bf3", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/lib/widget-boundary.tsx:142"}, "properties": {"repobilityId": "0c63b73fdce9ff00", "scanner": "scanner-primary", "fingerprint": "a45875528d1a5bf3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6c1c2c9fb8c6de37", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/widgets/lib/composite-returns.ts:33"}, "properties": {"repobilityId": "a0b7dd29a9d93781", "scanner": "scanner-primary", "fingerprint": "6c1c2c9fb8c6de37", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-41f2c33de0c08066", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/widgets/outcomes/OutcomesWidget.tsx:265"}, "properties": {"repobilityId": "07ceb125391b40c3", "scanner": "scanner-primary", "fingerprint": "41f2c33de0c08066", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c06ea89882e6a03f", "level": "note", "message": {"text": "Legacy-named symbol `sOld` in src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:321"}, "properties": {"repobilityId": "854ff1a470ff3ee2", "scanner": "scanner-primary", "fingerprint": "c06ea89882e6a03f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ebe39441674a1ce7", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:21"}, "properties": {"repobilityId": "d001bde2dcd0a2be", "scanner": "scanner-primary", "fingerprint": "ebe39441674a1ce7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9963507879127038", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:435"}, "properties": {"repobilityId": "c757a6ab0ca86a8a", "scanner": "scanner-primary", "fingerprint": "9963507879127038", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f57d582717bc99a4", "level": "note", "message": {"text": "Legacy-named symbol `widget_state_v2` in src/app/(dashboard)/allocations/widgets/outcomes/OutcomesWidget.v2.test.tsx:21"}, "properties": {"repobilityId": "f9a6450b430b6029", "scanner": "scanner-primary", "fingerprint": "f57d582717bc99a4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5a72d972702341a9", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.sub-row.errors.test.tsx:21"}, "properties": {"repobilityId": "ab61a1d1314fd031", "scanner": "scanner-primary", "fingerprint": "5a72d972702341a9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-211c1b1eb4475e1d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.test.tsx:318"}, "properties": {"repobilityId": "ef86ab7d505f33a7", "scanner": "scanner-primary", "fingerprint": "211c1b1eb4475e1d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a4bd571d4282ef1b", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.test.tsx:350"}, "properties": {"repobilityId": "ee4657c94bcdef8d", "scanner": "scanner-primary", "fingerprint": "a4bd571d4282ef1b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-aa10aed6efbba129", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.sub-row.test.tsx:191"}, "properties": {"repobilityId": "9251e5b962bf0734", "scanner": "scanner-primary", "fingerprint": "aa10aed6efbba129", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f9ce82d9c545621f", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/ScenarioFooter.tsx:89"}, "properties": {"repobilityId": "39353d27e192596f", "scanner": "scanner-primary", "fingerprint": "f9ce82d9c545621f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1cdf6f1ad661bd9a", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:47"}, "properties": {"repobilityId": "b7d833e862576afd", "scanner": "scanner-primary", "fingerprint": "1cdf6f1ad661bd9a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-60b1900a69de0f4d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:93"}, "properties": {"repobilityId": "a5bba701bdd15bdc", "scanner": "scanner-primary", "fingerprint": "60b1900a69de0f4d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f4ed7d4f71640522", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/BridgeWidget.tsx:108"}, "properties": {"repobilityId": "5048be8ed24df3df", "scanner": "scanner-primary", "fingerprint": "f4ed7d4f71640522", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4a8ef7403c225afe", "level": "note", "message": {"text": "Legacy-named symbol `widget_state_v2` in src/app/(dashboard)/allocations/components/WidgetState.tsx:21"}, "properties": {"repobilityId": "7a486935c1a2ea58", "scanner": "scanner-primary", "fingerprint": "4a8ef7403c225afe", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f55ac39da4873276", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/components/WidgetState.tsx:43"}, "properties": {"repobilityId": "ed9d287a6773c37f", "scanner": "scanner-primary", "fingerprint": "f55ac39da4873276", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d5b834e6096aaa32", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/components/ScenarioComposer.tsx:307"}, "properties": {"repobilityId": "a6adcfa6a30ee30f", "scanner": "scanner-primary", "fingerprint": "d5b834e6096aaa32", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-01ec1ab23d11a553", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/components/CustomRangePicker.test.tsx:9"}, "properties": {"repobilityId": "5c68a95bbbe5e8cb", "scanner": "scanner-primary", "fingerprint": "01ec1ab23d11a553", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-766c3a7d181188ad", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.test.tsx:728"}, "properties": {"repobilityId": "47ed21f57a03137a", "scanner": "scanner-primary", "fingerprint": "766c3a7d181188ad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aee26c7a51a8345a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.test.tsx:703"}, "properties": {"repobilityId": "e8aa31229f499a89", "scanner": "scanner-primary", "fingerprint": "aee26c7a51a8345a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-539248f3f378f244", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/components/ScenarioComposer.test.tsx:400"}, "properties": {"repobilityId": "ef0aa6cde86d61e4", "scanner": "scanner-primary", "fingerprint": "539248f3f378f244", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9e45cef4156b2922", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/components/KpiStrip.test.tsx:236"}, "properties": {"repobilityId": "a4cf18052271b1af", "scanner": "scanner-primary", "fingerprint": "9e45cef4156b2922", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-442f4b83c18ae036", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/components/BridgeDrawer.tsx:115"}, "properties": {"repobilityId": "fb00e832b960ef5f", "scanner": "scanner-primary", "fingerprint": "442f4b83c18ae036", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ffc22087fb84e1bd", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.tsx:42"}, "properties": {"repobilityId": "04c59ea2416ebc7c", "scanner": "scanner-primary", "fingerprint": "ffc22087fb84e1bd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-106c978f382f91b6", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.banner-dismiss.test.tsx:10"}, "properties": {"repobilityId": "65b632bfc3299393", "scanner": "scanner-primary", "fingerprint": "106c978f382f91b6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-05848f061cbec949", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/components/BridgeWidget.test.tsx:10"}, "properties": {"repobilityId": "cb3515737c2c1241", "scanner": "scanner-primary", "fingerprint": "05848f061cbec949", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-77f2bf4b5c700ac5", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/WidgetState.test.tsx:121"}, "properties": {"repobilityId": "db6be8d239928a5b", "scanner": "scanner-primary", "fingerprint": "77f2bf4b5c700ac5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7eedc011138d940f", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/BridgeWidget.variants.test.tsx:6"}, "properties": {"repobilityId": "9111ec5cb6f5056b", "scanner": "scanner-primary", "fingerprint": "7eedc011138d940f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-394b706829914d04", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.tsx:184"}, "properties": {"repobilityId": "fca48128f65779d8", "scanner": "scanner-primary", "fingerprint": "394b706829914d04", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ebe781927d74fbfa", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/components/BridgeDrawer.test.tsx:300"}, "properties": {"repobilityId": "0a891d476a4839b0", "scanner": "scanner-primary", "fingerprint": "ebe781927d74fbfa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e167e6cf4ebc3747", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/OutcomeForm.test.tsx:6"}, "properties": {"repobilityId": "777aaad2aa7ad067", "scanner": "scanner-primary", "fingerprint": "e167e6cf4ebc3747", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-372210534a46a04e", "level": "none", "message": {"text": "Commented-code block (17 lines) in src/app/(dashboard)/allocations/components/KpiStrip.tsx:307"}, "properties": {"repobilityId": "b70af72ce509839f", "scanner": "scanner-primary", "fingerprint": "372210534a46a04e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7754618184e7b498", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/HoldingsTable.test.tsx:198"}, "properties": {"repobilityId": "7215a225b5080382", "scanner": "scanner-primary", "fingerprint": "7754618184e7b498", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bd8c8598f8859c6a", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/HoldingDetail.test.tsx:6"}, "properties": {"repobilityId": "41cb3597762e2075", "scanner": "scanner-primary", "fingerprint": "bd8c8598f8859c6a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dbd339c71809ddf5", "level": "none", "message": {"text": "Commented-code block (15 lines) in src/app/(dashboard)/allocations/components/CustomRangePicker.tsx:18"}, "properties": {"repobilityId": "fc9b4a744a573ad6", "scanner": "scanner-primary", "fingerprint": "dbd339c71809ddf5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cf808986377d2082", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/components/KpiStrip.scenario.test.tsx:325"}, "properties": {"repobilityId": "230d735cbd654715", "scanner": "scanner-primary", "fingerprint": "cf808986377d2082", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-56a2e19290e5d06f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:144"}, "properties": {"repobilityId": "94336542faa0ce8e", "scanner": "scanner-primary", "fingerprint": "56a2e19290e5d06f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cb475e8bfbc319db", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:69"}, "properties": {"repobilityId": "9d8b98b52a30693c", "scanner": "scanner-primary", "fingerprint": "cb475e8bfbc319db", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3dfab3ef63709d18", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/components/HoldingDetail.tsx:77"}, "properties": {"repobilityId": "b223caaa542f85eb", "scanner": "scanner-primary", "fingerprint": "3dfab3ef63709d18", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ff9fb39cb7b955d", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/(dashboard)/allocations/components/BridgeOutcomeBanner.test.tsx:5"}, "properties": {"repobilityId": "1decbd7e63e6e968", "scanner": "scanner-primary", "fingerprint": "3ff9fb39cb7b955d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d86a9e0c3d344ccb", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/components/Tweaks.test.tsx:254"}, "properties": {"repobilityId": "525b265571d830f8", "scanner": "scanner-primary", "fingerprint": "d86a9e0c3d344ccb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1308f47d73f03ff1", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/lib/drawdown.test.ts:10"}, "properties": {"repobilityId": "0fb1a8668dca013f", "scanner": "scanner-primary", "fingerprint": "1308f47d73f03ff1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-47e95d23cd56eca7", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/lib/scenario-adapter.ts:176"}, "properties": {"repobilityId": "a7ed1a856adc7009", "scanner": "scanner-primary", "fingerprint": "47e95d23cd56eca7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1874057f7a4ee83b", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(dashboard)/allocations/lib/mandate-fit.test.ts:161"}, "properties": {"repobilityId": "f5822034b60959ea", "scanner": "scanner-primary", "fingerprint": "1874057f7a4ee83b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c5b37f4eb6dd4c10", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/(dashboard)/allocations/lib/scenario-state.test.ts:180"}, "properties": {"repobilityId": "85f7118d114e63e1", "scanner": "scanner-primary", "fingerprint": "c5b37f4eb6dd4c10", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d64baae267eb4c60", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/lib/scenario-state.ts:262"}, "properties": {"repobilityId": "226e0e2cb67b5eb2", "scanner": "scanner-primary", "fingerprint": "d64baae267eb4c60", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fdb568039ba988e9", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/(dashboard)/allocations/lib/holding-outcome-adapter.ts:132"}, "properties": {"repobilityId": "bcf1aabd100e1721", "scanner": "scanner-primary", "fingerprint": "fdb568039ba988e9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0033a4616b155b3b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/(dashboard)/allocations/lib/holdings-adapter.test.ts:55"}, "properties": {"repobilityId": "40f52d6124583e45", "scanner": "scanner-primary", "fingerprint": "0033a4616b155b3b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f15780e8ee988f76", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/lib/holding-outcome-adapter.test.ts:160"}, "properties": {"repobilityId": "040453c1aaa74d27", "scanner": "scanner-primary", "fingerprint": "f15780e8ee988f76", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-96c24d6cc05db96c", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/app/(dashboard)/allocations/lib/scenario-state.localStorage.test.ts:99"}, "properties": {"repobilityId": "bd9f4a555d9830fa", "scanner": "scanner-primary", "fingerprint": "96c24d6cc05db96c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-932503fc717b850b", "level": "none", "message": {"text": "Commented-code block (26 lines) in src/app/(dashboard)/allocations/lib/scenario-adapter.test.ts:365"}, "properties": {"repobilityId": "6f336bc749a757cd", "scanner": "scanner-primary", "fingerprint": "932503fc717b850b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-05152c106e7ddbe7", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/(auth)/onboarding/page.tsx:9"}, "properties": {"repobilityId": "1965df3f63b1055e", "scanner": "scanner-primary", "fingerprint": "05152c106e7ddbe7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6a6e4b228e20b5c7", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/hooks/useLazyPanelMetrics.ts:98"}, "properties": {"repobilityId": "a56b8ceb923159f3", "scanner": "scanner-primary", "fingerprint": "6a6e4b228e20b5c7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cf767564637945d8", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/hooks/useLazyPanelMetrics.test.ts:320"}, "properties": {"repobilityId": "56fa75c2708f53f6", "scanner": "scanner-primary", "fingerprint": "cf767564637945d8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-884f8280861bd95a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/hooks/useLazyPanelMetrics.test.ts:659"}, "properties": {"repobilityId": "3ba074138b66c13a", "scanner": "scanner-primary", "fingerprint": "884f8280861bd95a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0115048a37aa6257", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/landing/VerificationSection.tsx:8"}, "properties": {"repobilityId": "f7d92e163eb16dda", "scanner": "scanner-primary", "fingerprint": "0115048a37aa6257", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cb89075a807a1f6e", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/charts/CorrelationWithBenchmark.tsx:60"}, "properties": {"repobilityId": "f60475b2232312fc", "scanner": "scanner-primary", "fingerprint": "cb89075a807a1f6e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7ad88113d95525ef", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/charts/DailyHeatmap.tsx:281"}, "properties": {"repobilityId": "65a81f85e50e5891", "scanner": "scanner-primary", "fingerprint": "7ad88113d95525ef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f7440cc439b9d3a8", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/charts/CorrelationWithBenchmark.test.tsx:174"}, "properties": {"repobilityId": "072bde4e538dba35", "scanner": "scanner-primary", "fingerprint": "f7440cc439b9d3a8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-039560fa0e69b022", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/strategy/ApiKeyManager.test.tsx:245"}, "properties": {"repobilityId": "aa62883a6f0c340c", "scanner": "scanner-primary", "fingerprint": "039560fa0e69b022", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ae4147eaf4cbfe3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/strategy/discovery-selectors.contract.test.tsx:298"}, "properties": {"repobilityId": "cb788608ce1bab0d", "scanner": "scanner-primary", "fingerprint": "3ae4147eaf4cbfe3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6cbb576bfd3b0cca", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/components/strategy/MetricPanel.types.test.ts:38"}, "properties": {"repobilityId": "c8439efaf6fb4b14", "scanner": "scanner-primary", "fingerprint": "6cbb576bfd3b0cca", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d499bdd1d1de7321", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/components/strategy/StrategyTable.tsx:163"}, "properties": {"repobilityId": "525d15e85a2a9e7c", "scanner": "scanner-primary", "fingerprint": "d499bdd1d1de7321", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fff4faa2aeb52e95", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/strategy/ApiKeyManager.tsx:39"}, "properties": {"repobilityId": "5578b83dce5d4100", "scanner": "scanner-primary", "fingerprint": "fff4faa2aeb52e95", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9b25a59c33a6dad4", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/components/strategy/StrategyTable.test.tsx:111"}, "properties": {"repobilityId": "629c61dc627e5ec7", "scanner": "scanner-primary", "fingerprint": "9b25a59c33a6dad4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d98d2682c9e7afbd", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/strategy/CustomizeDrawer.tsx:51"}, "properties": {"repobilityId": "1a33179579ef4aa0", "scanner": "scanner-primary", "fingerprint": "d98d2682c9e7afbd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9cbd4b0725ea4cb8", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/strategy/StarToggle.test.tsx:216"}, "properties": {"repobilityId": "8b85f32936f79880", "scanner": "scanner-primary", "fingerprint": "9cbd4b0725ea4cb8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5d7d7fd35be86ec", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy/ManagerIdentityPanel.test.tsx:72"}, "properties": {"repobilityId": "a9e50d210f1bb606", "scanner": "scanner-primary", "fingerprint": "f5d7d7fd35be86ec", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ae926c6472d4b6db", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy/ManagerIdentityPanel.tsx:16"}, "properties": {"repobilityId": "fea18079cafff6ff", "scanner": "scanner-primary", "fingerprint": "ae926c6472d4b6db", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-71aa240b06cfcef4", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/strategy/ApiKeyForm.tsx:41"}, "properties": {"repobilityId": "4b3b66c31a5b2c91", "scanner": "scanner-primary", "fingerprint": "71aa240b06cfcef4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f7cb301905d8d5e2", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/strategy/SyncProgress.test.ts:38"}, "properties": {"repobilityId": "13f30cf95d4e8a67", "scanner": "scanner-primary", "fingerprint": "f7cb301905d8d5e2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a7deae14744aff3a", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/components/strategy/PendingIntros.tsx:26"}, "properties": {"repobilityId": "dbd0a0f6f3fa5b86", "scanner": "scanner-primary", "fingerprint": "a7deae14744aff3a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9df882cbdbaba7da", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy/PendingIntros.tsx:29"}, "properties": {"repobilityId": "6bd4962365b9340c", "scanner": "scanner-primary", "fingerprint": "9df882cbdbaba7da", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ec5ceaed55c921ba", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/strategy/WatchlistTabs.test.tsx:52"}, "properties": {"repobilityId": "74284d958f8a1e71", "scanner": "scanner-primary", "fingerprint": "ec5ceaed55c921ba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1f644e4baa62daf6", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/strategy/StrategyForm.test.tsx:165"}, "properties": {"repobilityId": "e4545dfc3030984b", "scanner": "scanner-primary", "fingerprint": "1f644e4baa62daf6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cc17454862530fb6", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/components/strategy/FactsheetPreview.test.tsx:177"}, "properties": {"repobilityId": "a709be1dc983d7ea", "scanner": "scanner-primary", "fingerprint": "cc17454862530fb6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a4d7a9efa9f5cc15", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/strategy/PendingIntros.test.tsx:116"}, "properties": {"repobilityId": "d11a693d5085b639", "scanner": "scanner-primary", "fingerprint": "a4d7a9efa9f5cc15", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9295103ec58266d0", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy/PendingIntros.test.tsx:207"}, "properties": {"repobilityId": "2894d100d0ccd9fa", "scanner": "scanner-primary", "fingerprint": "9295103ec58266d0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3c77e8b012f01373", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/components/strategy/CustomizeDrawer.test.tsx:94"}, "properties": {"repobilityId": "8a6f2a1cd14bebb1", "scanner": "scanner-primary", "fingerprint": "3c77e8b012f01373", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e370b3c82cd4d8ea", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/strategy/SyncProgress.tsx:17"}, "properties": {"repobilityId": "b1968c200d0484c5", "scanner": "scanner-primary", "fingerprint": "e370b3c82cd4d8ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8005bf5b98e2a8ba", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/notes/HoldingNoteRow.tsx:138"}, "properties": {"repobilityId": "0a1fb3ef84f30622", "scanner": "scanner-primary", "fingerprint": "8005bf5b98e2a8ba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cef173c205540df3", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/notes/HoldingNoteRow.test.tsx:321"}, "properties": {"repobilityId": "ca4b3bbbbf8d60bf", "scanner": "scanner-primary", "fingerprint": "cef173c205540df3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-314238626ec220dc", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/admin/SendIntroPanel.test.tsx:179"}, "properties": {"repobilityId": "176e8071e80ae98c", "scanner": "scanner-primary", "fingerprint": "314238626ec220dc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b22f0cb1d9f9066b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/admin/ForQuantsLeadsTable.tsx:81"}, "properties": {"repobilityId": "09c7eb83f9f7cd8b", "scanner": "scanner-primary", "fingerprint": "b22f0cb1d9f9066b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-35a0be81bff5c06a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/admin/MatchQueueIndex.tsx:146"}, "properties": {"repobilityId": "65cc954c78a4314b", "scanner": "scanner-primary", "fingerprint": "35a0be81bff5c06a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d682ba465be5cd14", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/admin/AllocatorMatchQueue.test.tsx:36"}, "properties": {"repobilityId": "7de89cd8b63fe7e1", "scanner": "scanner-primary", "fingerprint": "d682ba465be5cd14", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eac1009bd764e54f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/admin/ComputeJobsTable.tsx:71"}, "properties": {"repobilityId": "e5889e2dcd29bd27", "scanner": "scanner-primary", "fingerprint": "eac1009bd764e54f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bccca4f6f663f592", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/components/admin/AdminTabs.tsx:39"}, "properties": {"repobilityId": "818d772c3d96ca60", "scanner": "scanner-primary", "fingerprint": "bccca4f6f663f592", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-66d2555a3322d81c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/admin/DeletionRequestActions.tsx:3"}, "properties": {"repobilityId": "8552b1fca4057ad4", "scanner": "scanner-primary", "fingerprint": "66d2555a3322d81c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-98430bd99647a4af", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/admin/AllocatorMatchQueue.tsx:166"}, "properties": {"repobilityId": "6d6a4822b646d966", "scanner": "scanner-primary", "fingerprint": "98430bd99647a4af", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4a70d03a0aec5b72", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/components/layout/Sidebar.tsx:26"}, "properties": {"repobilityId": "2b858e58cfc9b7c8", "scanner": "scanner-primary", "fingerprint": "4a70d03a0aec5b72", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-81c0d91efb823084", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/layout/Sidebar.test.tsx:223"}, "properties": {"repobilityId": "aa203f0ee3ebb7fa", "scanner": "scanner-primary", "fingerprint": "81c0d91efb823084", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-130d633c73167b9a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/layout/MobileSidebarDrawer.tsx:68"}, "properties": {"repobilityId": "49377df46d767a97", "scanner": "scanner-primary", "fingerprint": "130d633c73167b9a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3b86431c5476abf6", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/discovery/SimulateImpactButton.tsx:88"}, "properties": {"repobilityId": "1dc909c86189f9d9", "scanner": "scanner-primary", "fingerprint": "3b86431c5476abf6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d6beef5180e63e56", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/discovery/SimulateImpactButton.test.tsx:61"}, "properties": {"repobilityId": "c64a13b78112cf62", "scanner": "scanner-primary", "fingerprint": "d6beef5180e63e56", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dadc4b5fc24d3d13", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/scenarios/ScenarioBuilder.tsx:221"}, "properties": {"repobilityId": "9951524ae9fabe4e", "scanner": "scanner-primary", "fingerprint": "dadc4b5fc24d3d13", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-90c4c8f85014f3f6", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/components/error/ErrorEnvelope.test.tsx:190"}, "properties": {"repobilityId": "47f1a65b06940bb6", "scanner": "scanner-primary", "fingerprint": "90c4c8f85014f3f6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e315d3751f457814", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/error/ErrorEnvelope.tsx:10"}, "properties": {"repobilityId": "7902354c21df06d5", "scanner": "scanner-primary", "fingerprint": "e315d3751f457814", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f4cb71f46cd1673a", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/strategy-v2/StrategyV2Shell.test.tsx:274"}, "properties": {"repobilityId": "0ce909b0d0a778b9", "scanner": "scanner-primary", "fingerprint": "f4cb71f46cd1673a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-afa8c5e19882491e", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/components/strategy-v2/HeadlineMetricsPanel.tsx:94"}, "properties": {"repobilityId": "3b957885175745ba", "scanner": "scanner-primary", "fingerprint": "afa8c5e19882491e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-74b9791a1dd5a124", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/strategy-v2/HeadlineMetricsPanel.tsx:13"}, "properties": {"repobilityId": "45012d27b8e35429", "scanner": "scanner-primary", "fingerprint": "74b9791a1dd5a124", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3f8816f0d4425a7b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/strategy-v2/TradeAndPositionPanel.tsx:236"}, "properties": {"repobilityId": "494da9a6e49438c5", "scanner": "scanner-primary", "fingerprint": "3f8816f0d4425a7b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6c4eeb2d1e83a4d0", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/strategy-v2/HeadlineMetricsPanel.test.tsx:282"}, "properties": {"repobilityId": "ec549527facdb360", "scanner": "scanner-primary", "fingerprint": "6c4eeb2d1e83a4d0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c5167d066a4269ca", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/strategy-v2/ReturnsDistributionPanel.tsx:55"}, "properties": {"repobilityId": "b34b8f627c659a10", "scanner": "scanner-primary", "fingerprint": "c5167d066a4269ca", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1830e5888837d19e", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/auth/ProfileTabs.test.tsx:113"}, "properties": {"repobilityId": "e4a6a33abf93b465", "scanner": "scanner-primary", "fingerprint": "1830e5888837d19e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-725936db07033563", "level": "note", "message": {"text": "Legacy-named symbol `quantalyze_wizard_state_v1` in src/components/auth/SignOutButton.test.tsx:73"}, "properties": {"repobilityId": "a35775cc5a76b63b", "scanner": "scanner-primary", "fingerprint": "725936db07033563", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-316a21a12d536760", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/auth/SignOutButton.test.tsx:17"}, "properties": {"repobilityId": "acd7bfb1b06d85a2", "scanner": "scanner-primary", "fingerprint": "316a21a12d536760", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6c983c502e3b727e", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/components/auth/ProfileTabs.tsx:62"}, "properties": {"repobilityId": "487f8c08f1e6a006", "scanner": "scanner-primary", "fingerprint": "6c983c502e3b727e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6178372e7634babd", "level": "none", "message": {"text": "Commented-code block (14 lines) in src/components/auth/SignupForm.tsx:73"}, "properties": {"repobilityId": "38845f4c38b05f8b", "scanner": "scanner-primary", "fingerprint": "6178372e7634babd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-608c47efdb78a8ff", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/components/auth/SignupForm.repeated-signup.test.tsx:154"}, "properties": {"repobilityId": "53ddac0cf78eb15e", "scanner": "scanner-primary", "fingerprint": "608c47efdb78a8ff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f2cec55d5c5c1dbc", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/components/auth/SignOutButton.tsx:13"}, "properties": {"repobilityId": "ce7800c96eda551e", "scanner": "scanner-primary", "fingerprint": "f2cec55d5c5c1dbc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0047c79cb4725832", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/components/exchanges/AllocatorExchangeManager.test.tsx:411"}, "properties": {"repobilityId": "c0fc79046b30b66d", "scanner": "scanner-primary", "fingerprint": "0047c79cb4725832", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4789510d797d7d4a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/exchanges/AllocatorExchangeManager.test.tsx:239"}, "properties": {"repobilityId": "6e4a2f91800d438c", "scanner": "scanner-primary", "fingerprint": "4789510d797d7d4a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9b0416022372620f", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/components/exchanges/AllocatorSyncStatus.test.tsx:86"}, "properties": {"repobilityId": "87d3c729f255dfac", "scanner": "scanner-primary", "fingerprint": "9b0416022372620f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b6ebcbc0c4460173", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/exchanges/AllocatorSyncStatus.tsx:231"}, "properties": {"repobilityId": "c0f4e9775588db54", "scanner": "scanner-primary", "fingerprint": "b6ebcbc0c4460173", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c37f22cafffc4932", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/exchanges/AllocatorExchangeManager.tsx:75"}, "properties": {"repobilityId": "5e7935e490901214", "scanner": "scanner-primary", "fingerprint": "c37f22cafffc4932", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7b9a3062f13308fc", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/exchanges/AllocatorExchangeManager.tsx:529"}, "properties": {"repobilityId": "f6f81dc9d76a7ed2", "scanner": "scanner-primary", "fingerprint": "7b9a3062f13308fc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0b507605b033a2a0", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/portfolio/ReplacementCard.tsx:37"}, "properties": {"repobilityId": "7f11f82b8922b096", "scanner": "scanner-primary", "fingerprint": "0b507605b033a2a0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9568468e5ba54b0c", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/components/portfolio/ReplacementPanel.test.tsx:154"}, "properties": {"repobilityId": "543b6d83f56c6df6", "scanner": "scanner-primary", "fingerprint": "9568468e5ba54b0c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bd3d0f5b8177b540", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/portfolio/PortfolioImpactPanel.tsx:57"}, "properties": {"repobilityId": "2868c3f2660da18d", "scanner": "scanner-primary", "fingerprint": "bd3d0f5b8177b540", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f0baa719a504d65d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/portfolio/DocumentUpload.tsx:54"}, "properties": {"repobilityId": "19d689fc79fc1197", "scanner": "scanner-primary", "fingerprint": "f0baa719a504d65d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-55e1e4b60a1457a7", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/portfolio/ReplacementCard.test.tsx:221"}, "properties": {"repobilityId": "34ec14a32712d4c3", "scanner": "scanner-primary", "fingerprint": "55e1e4b60a1457a7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-67c3bbeb4d4569a3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/portfolio/InsightStrip.test.tsx:211"}, "properties": {"repobilityId": "cce6877648bf54f4", "scanner": "scanner-primary", "fingerprint": "67c3bbeb4d4569a3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa99f9aca78fff76", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/portfolio/PortfolioImpactPanel.test.tsx:192"}, "properties": {"repobilityId": "02ac922f6343be50", "scanner": "scanner-primary", "fingerprint": "aa99f9aca78fff76", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-78b392a3faccceda", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/portfolio/AlertsList.tsx:34"}, "properties": {"repobilityId": "8e4c17f20f8c4a2f", "scanner": "scanner-primary", "fingerprint": "78b392a3faccceda", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-69435995e2b35119", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/portfolio/NextFiveMillionCard.test.tsx:87"}, "properties": {"repobilityId": "2e54ab7dd3259ba7", "scanner": "scanner-primary", "fingerprint": "69435995e2b35119", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3445184b1d63ece8", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/portfolio/CorrelationHeatmap.test.tsx:121"}, "properties": {"repobilityId": "082c5f956b2788d7", "scanner": "scanner-primary", "fingerprint": "3445184b1d63ece8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5119ce2a4bc72c9", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/portfolio/CreatePortfolioForm.test.tsx:92"}, "properties": {"repobilityId": "e0fa4107587ce30a", "scanner": "scanner-primary", "fingerprint": "f5119ce2a4bc72c9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-19a11a0df71b265e", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/components/portfolio/InsightStrip.tsx:87"}, "properties": {"repobilityId": "11dde1085907b48a", "scanner": "scanner-primary", "fingerprint": "19a11a0df71b265e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-02a0ebedee28826c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/portfolio/CreatePortfolioForm.tsx:67"}, "properties": {"repobilityId": "53276049e90d5152", "scanner": "scanner-primary", "fingerprint": "02a0ebedee28826c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-68648d01cd118ca9", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/portfolio/StrategyBreakdownTable.tsx:101"}, "properties": {"repobilityId": "33bdde80b54c58d2", "scanner": "scanner-primary", "fingerprint": "68648d01cd118ca9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-936976032b3cc16b", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/mandate/MandateForm.tsx:24"}, "properties": {"repobilityId": "f534fec0c6bde51b", "scanner": "scanner-primary", "fingerprint": "936976032b3cc16b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-53441e65485bc27a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/mandate/MandateForm.test.tsx:126"}, "properties": {"repobilityId": "fc9a1fbd861f5435", "scanner": "scanner-primary", "fingerprint": "53441e65485bc27a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c5fa5bbda9aec5ef", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/mandate/useMandateAutoSave.ts:85"}, "properties": {"repobilityId": "9d5324104150771f", "scanner": "scanner-primary", "fingerprint": "c5fa5bbda9aec5ef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f09e970b8afff459", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/mandate/useMandateAutoSave.ts:118"}, "properties": {"repobilityId": "1ab0e198a7494514", "scanner": "scanner-primary", "fingerprint": "f09e970b8afff459", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2f40f926d766238d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/mandate/useMandateAutoSave.unmount.test.ts:39"}, "properties": {"repobilityId": "ebc488192ea69394", "scanner": "scanner-primary", "fingerprint": "2f40f926d766238d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e41917f53033cb52", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/mandate/useMandateAutoSave.unmount.test.ts:71"}, "properties": {"repobilityId": "78b0a929494548a7", "scanner": "scanner-primary", "fingerprint": "e41917f53033cb52", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7584069b9c25cc4b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/mandate/useMandateAutoSave.test.ts:232"}, "properties": {"repobilityId": "d1f322f8ad611418", "scanner": "scanner-primary", "fingerprint": "7584069b9c25cc4b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b61069201449a790", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/ui/Tooltip.tsx:50"}, "properties": {"repobilityId": "989fc2c127e24ef8", "scanner": "scanner-primary", "fingerprint": "b61069201449a790", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-69752ff8fcca1ee0", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/ui/Tooltip.test.tsx:5"}, "properties": {"repobilityId": "3f84f1364eedf387", "scanner": "scanner-primary", "fingerprint": "69752ff8fcca1ee0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f3355c7bcf33a2ce", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/components/ui/VerifiedBadge.test.tsx:5"}, "properties": {"repobilityId": "482b977d87c13532", "scanner": "scanner-primary", "fingerprint": "f3355c7bcf33a2ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-90d3798f2cc745b8", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/ui/TimeframeSelector.tsx:37"}, "properties": {"repobilityId": "4915bcbf2c74ce63", "scanner": "scanner-primary", "fingerprint": "90d3798f2cc745b8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dbc119c1d4c199f7", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/scenario.ts:223"}, "properties": {"repobilityId": "801355f9f09efea0", "scanner": "scanner-primary", "fingerprint": "dbc119c1d4c199f7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-da32475b0ad9a3ba", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/demo.test.ts:67"}, "properties": {"repobilityId": "62509e6ed6cd6c4d", "scanner": "scanner-primary", "fingerprint": "da32475b0ad9a3ba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e37a5312d30974f0", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/analytics.ts:118"}, "properties": {"repobilityId": "d89ebfd9aa1e57ad", "scanner": "scanner-primary", "fingerprint": "e37a5312d30974f0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a58e5294f0d430f2", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/email.ts:32"}, "properties": {"repobilityId": "f24817f2e9869cdc", "scanner": "scanner-primary", "fingerprint": "a58e5294f0d430f2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3e44119b661481a9", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/queries.hh-0495.test.ts:118"}, "properties": {"repobilityId": "f86c9ef4cb63a784", "scanner": "scanner-primary", "fingerprint": "3e44119b661481a9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-716e052ac3604bc6", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/ratelimit.test.ts:25"}, "properties": {"repobilityId": "eae47a779cbb9312", "scanner": "scanner-primary", "fingerprint": "716e052ac3604bc6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-288fb0a32f471308", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/email.test.ts:133"}, "properties": {"repobilityId": "6251bdf138cf9661", "scanner": "scanner-primary", "fingerprint": "288fb0a32f471308", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec2313364d033744", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/audit.test.ts:7"}, "properties": {"repobilityId": "c54d15871c8b221c", "scanner": "scanner-primary", "fingerprint": "ec2313364d033744", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3cb0ece92b7e3acb", "level": "none", "message": {"text": "Commented-code block (15 lines) in src/lib/portfolio-math-utils.ts:93"}, "properties": {"repobilityId": "b89fe4b3259e0feb", "scanner": "scanner-primary", "fingerprint": "3cb0ece92b7e3acb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e170d5e8cbacecf8", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/analytics-client.test.ts:51"}, "properties": {"repobilityId": "e86225d9de8f35c9", "scanner": "scanner-primary", "fingerprint": "e170d5e8cbacecf8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d7162d79bc2338e2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/analytics-client.test.ts:211"}, "properties": {"repobilityId": "66e99f9e5f782f99", "scanner": "scanner-primary", "fingerprint": "d7162d79bc2338e2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b14fd9f752146f1c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/analytics-schemas.test.ts:140"}, "properties": {"repobilityId": "467ead4fe7ee5536", "scanner": "scanner-primary", "fingerprint": "b14fd9f752146f1c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-03c6b60b40bb9e5c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/drawdown-math.test.ts:238"}, "properties": {"repobilityId": "f29331601f2dad2b", "scanner": "scanner-primary", "fingerprint": "03c6b60b40bb9e5c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4bd05308b4cc0a5d", "level": "none", "message": {"text": "Commented-code block (14 lines) in src/lib/demo-recommendations.ts:182"}, "properties": {"repobilityId": "0a7f425e2c44d7bd", "scanner": "scanner-primary", "fingerprint": "4bd05308b4cc0a5d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a3960da8fbd32833", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/closed-sets.ts:6"}, "properties": {"repobilityId": "56eb862c8b7e9276", "scanner": "scanner-primary", "fingerprint": "a3960da8fbd32833", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a50fe476a9194c34", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/dateday.test.ts:85"}, "properties": {"repobilityId": "0ce986df44c1f7f7", "scanner": "scanner-primary", "fingerprint": "a50fe476a9194c34", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8eeb1401f606a96f", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/constants.ts:146"}, "properties": {"repobilityId": "af471e33c8d09614", "scanner": "scanner-primary", "fingerprint": "8eeb1401f606a96f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ee5c86af7c97d252", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/envelope.ts:1"}, "properties": {"repobilityId": "996a2606316650cb", "scanner": "scanner-primary", "fingerprint": "ee5c86af7c97d252", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d0bd84050825a160", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/queries-client.ts:55"}, "properties": {"repobilityId": "9d14887d71b7c16d", "scanner": "scanner-primary", "fingerprint": "d0bd84050825a160", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-abce6fbd06b13149", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/health-score.ts:142"}, "properties": {"repobilityId": "58b5d0456a6c4c59", "scanner": "scanner-primary", "fingerprint": "abce6fbd06b13149", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-39b66197499b0385", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/audit-log-csv.ts:129"}, "properties": {"repobilityId": "7afbcf19d479789e", "scanner": "scanner-primary", "fingerprint": "39b66197499b0385", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b305a2fe21a32f20", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/scenario-dealias.test.ts:268"}, "properties": {"repobilityId": "6b727881908771ed", "scanner": "scanner-primary", "fingerprint": "b305a2fe21a32f20", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3970b9e45a3f5ff1", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/csrf.test.ts:95"}, "properties": {"repobilityId": "57c50dd7706f300d", "scanner": "scanner-primary", "fingerprint": "3970b9e45a3f5ff1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-99c5b0c63f7a4360", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/feature-flags.ts:57"}, "properties": {"repobilityId": "b5fd96b28c528dc5", "scanner": "scanner-primary", "fingerprint": "99c5b0c63f7a4360", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ccfc8f4181ffe451", "level": "note", "message": {"text": "Legacy-named symbol `widget_state_v2` in src/lib/widget-state-flag.test.ts:8"}, "properties": {"repobilityId": "2a1048ee78cf2aa2", "scanner": "scanner-primary", "fingerprint": "ccfc8f4181ffe451", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0816bf21c170e646", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/auth.ts:8"}, "properties": {"repobilityId": "0b1452694c20cd15", "scanner": "scanner-primary", "fingerprint": "0816bf21c170e646", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5092dca7a53a5912", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/lib/wizardErrors.ts:334"}, "properties": {"repobilityId": "df9472c0f74b54ad", "scanner": "scanner-primary", "fingerprint": "5092dca7a53a5912", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-15e51e27bd9978fd", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/lib/visibility.test.ts:40"}, "properties": {"repobilityId": "d46dd63567413d13", "scanner": "scanner-primary", "fingerprint": "15e51e27bd9978fd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6e3131f42f66dab5", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/sec-005-live-probe.test.ts:44"}, "properties": {"repobilityId": "0f66bfd202a185be", "scanner": "scanner-primary", "fingerprint": "6e3131f42f66dab5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-af53bff60ed939bd", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/for-quants-analytics.gaps.test.ts:39"}, "properties": {"repobilityId": "831f50642ca356f7", "scanner": "scanner-primary", "fingerprint": "af53bff60ed939bd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ef68790984afc59c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/drawdown-math.ts:57"}, "properties": {"repobilityId": "6edd616fb5ce63f2", "scanner": "scanner-primary", "fingerprint": "ef68790984afc59c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1d8f3db9e85dd581", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/envelope.test.ts:36"}, "properties": {"repobilityId": "4c320a2ca37a2029", "scanner": "scanner-primary", "fingerprint": "1d8f3db9e85dd581", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7c82b97383acfcbc", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/warmup-analytics.test.ts:71"}, "properties": {"repobilityId": "e0e25ce10f1652f5", "scanner": "scanner-primary", "fingerprint": "7c82b97383acfcbc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5491f6c8c4a01cc6", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/scenario-dealias.ts:66"}, "properties": {"repobilityId": "d59f8337d0b1f726", "scanner": "scanner-primary", "fingerprint": "5491f6c8c4a01cc6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c4ea7a6d321687f0", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/analytics.test.ts:31"}, "properties": {"repobilityId": "3b68906baec25845", "scanner": "scanner-primary", "fingerprint": "c4ea7a6d321687f0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0cf1302f4f6684dc", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/test-safety.test.ts:146"}, "properties": {"repobilityId": "d7fa9b21215f1bf7", "scanner": "scanner-primary", "fingerprint": "0cf1302f4f6684dc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-083853e0c6762c79", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/queries.audit-2026-05-07.test.ts:41"}, "properties": {"repobilityId": "67ac96527be1fcae", "scanner": "scanner-primary", "fingerprint": "083853e0c6762c79", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9d0919c7f3587a89", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/lib/migration-028-tenant-check.test.ts:268"}, "properties": {"repobilityId": "f58830aae4d36078", "scanner": "scanner-primary", "fingerprint": "9d0919c7f3587a89", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dc942569517896ff", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/sec-005-api-keys-projection.test.ts:91"}, "properties": {"repobilityId": "a229ac91723d7367", "scanner": "scanner-primary", "fingerprint": "dc942569517896ff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7ebffb7da6915a6c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/audit-log-csv.test.ts:162"}, "properties": {"repobilityId": "cb16a851660eeef1", "scanner": "scanner-primary", "fingerprint": "7ebffb7da6915a6c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91630d61ef4f43ea", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/playwright-console-filter.test.ts:62"}, "properties": {"repobilityId": "212206d658e387d6", "scanner": "scanner-primary", "fingerprint": "91630d61ef4f43ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5271d73f405f2064", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/for-quants-leads-admin.ts:89"}, "properties": {"repobilityId": "ed04a07b3f828761", "scanner": "scanner-primary", "fingerprint": "5271d73f405f2064", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bc856023978798f7", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/queries.percentiles.test.ts:56"}, "properties": {"repobilityId": "d791e1b4f0573ede", "scanner": "scanner-primary", "fingerprint": "bc856023978798f7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-909c8dbab21c6f16", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/discovery-prefs.test.ts:170"}, "properties": {"repobilityId": "595d94d6468e6163", "scanner": "scanner-primary", "fingerprint": "909c8dbab21c6f16", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a3de88cf553020bc", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/utils.test.ts:26"}, "properties": {"repobilityId": "7e5499273c371f6d", "scanner": "scanner-primary", "fingerprint": "a3de88cf553020bc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4011ba2b66ec0f11", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/queries.ts:162"}, "properties": {"repobilityId": "cad51641b8c7d2d9", "scanner": "scanner-primary", "fingerprint": "4011ba2b66ec0f11", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-97ed9f7a6386e692", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/admin.test.ts:158"}, "properties": {"repobilityId": "bbc9d6865341d0fd", "scanner": "scanner-primary", "fingerprint": "97ed9f7a6386e692", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6ebe6dd07b9979c7", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/queries.test.ts:16"}, "properties": {"repobilityId": "c73494f5c8021312", "scanner": "scanner-primary", "fingerprint": "6ebe6dd07b9979c7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec71b431e984b997", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/lib/scenario.test.ts:148"}, "properties": {"repobilityId": "b3d46fe394e88e93", "scanner": "scanner-primary", "fingerprint": "ec71b431e984b997", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb39fe0a1b7e5bc6", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/units.test.ts:17"}, "properties": {"repobilityId": "19bfe5c1d96cc37f", "scanner": "scanner-primary", "fingerprint": "eb39fe0a1b7e5bc6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9f42ea71f2239900", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/portfolio-math-utils.test.ts:43"}, "properties": {"repobilityId": "100a68331702d748", "scanner": "scanner-primary", "fingerprint": "9f42ea71f2239900", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d15218059431cd0a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/outcomes-kpi.ts:1"}, "properties": {"repobilityId": "2840173400915ffc", "scanner": "scanner-primary", "fingerprint": "d15218059431cd0a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-22df2cd0642a9ee0", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/gdpr-export-manifest.ts:206"}, "properties": {"repobilityId": "e86cf23cdf2cf62d", "scanner": "scanner-primary", "fingerprint": "22df2cd0642a9ee0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-42bd0f9d24ad7308", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/lib/constants.test.ts:8"}, "properties": {"repobilityId": "5696cbdba9e29e9a", "scanner": "scanner-primary", "fingerprint": "42bd0f9d24ad7308", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-38f9b6b5671c2a77", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/for-quants-analytics.ts:49"}, "properties": {"repobilityId": "dce5885c3af33e40", "scanner": "scanner-primary", "fingerprint": "38f9b6b5671c2a77", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-54884e56b0a7ec05", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/sanitize-filename.test.ts:46"}, "properties": {"repobilityId": "19e8735531a07342", "scanner": "scanner-primary", "fingerprint": "54884e56b0a7ec05", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6b2292e1ab654701", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/health-score.test.ts:194"}, "properties": {"repobilityId": "0960707be5cf08bd", "scanner": "scanner-primary", "fingerprint": "6b2292e1ab654701", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c154c7e044a2f7c3", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/queries.my-allocation.test.ts:442"}, "properties": {"repobilityId": "6c127632819dfd1e", "scanner": "scanner-primary", "fingerprint": "c154c7e044a2f7c3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-467309c2820bba1c", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/strategyGate.test.ts:164"}, "properties": {"repobilityId": "e229ca726057fe4c", "scanner": "scanner-primary", "fingerprint": "467309c2820bba1c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-27015ea4824ba2cd", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/correlation-id.ts:24"}, "properties": {"repobilityId": "54015dece8f57a07", "scanner": "scanner-primary", "fingerprint": "27015ea4824ba2cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9c3b9f2d45cf335b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/csv.ts:33"}, "properties": {"repobilityId": "4adf13705e526e82", "scanner": "scanner-primary", "fingerprint": "9c3b9f2d45cf335b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0df90cac91c41151", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/analytics-client.ts:44"}, "properties": {"repobilityId": "50521c863d017bba", "scanner": "scanner-primary", "fingerprint": "0df90cac91c41151", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aeb64f50dbcc27f6", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/outcomes-kpi.test.ts:139"}, "properties": {"repobilityId": "fcbffb189209ec93", "scanner": "scanner-primary", "fingerprint": "aeb64f50dbcc27f6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7817b94b88201b4f", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/wizardErrors.test.ts:110"}, "properties": {"repobilityId": "038da3d8bc66557a", "scanner": "scanner-primary", "fingerprint": "7817b94b88201b4f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8400443fe591b066", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/for-quants-analytics.test.ts:46"}, "properties": {"repobilityId": "f46620131640b01c", "scanner": "scanner-primary", "fingerprint": "8400443fe591b066", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e44df4e8211e58b2", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/types.ts:12"}, "properties": {"repobilityId": "b4e19fb2a2800c66", "scanner": "scanner-primary", "fingerprint": "e44df4e8211e58b2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-164c1fc658a84020", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/lib/portfolio-stats.ts:17"}, "properties": {"repobilityId": "2d400f53f61acb92", "scanner": "scanner-primary", "fingerprint": "164c1fc658a84020", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-29c0503c140c1995", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/analytics-schemas.ts:38"}, "properties": {"repobilityId": "402a4ce96c35d8ff", "scanner": "scanner-primary", "fingerprint": "29c0503c140c1995", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f9b4f797862ee17b", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/utils.ts:34"}, "properties": {"repobilityId": "10f1f94828b00965", "scanner": "scanner-primary", "fingerprint": "f9b4f797862ee17b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1f52123c8327841f", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/audit.hh1-audit.test.ts:153"}, "properties": {"repobilityId": "a65f526b8e19f00d", "scanner": "scanner-primary", "fingerprint": "1f52123c8327841f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d9a7b2b15fd46a07", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/csrf.ts:65"}, "properties": {"repobilityId": "346910568b0c48ff", "scanner": "scanner-primary", "fingerprint": "d9a7b2b15fd46a07", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-13de4eab2726e4a9", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/visibility.ts:75"}, "properties": {"repobilityId": "ff47d59cfd9fa5cb", "scanner": "scanner-primary", "fingerprint": "13de4eab2726e4a9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-572b93fce8788791", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/queries.mandateIsSet.test.ts:21"}, "properties": {"repobilityId": "c0ab26694c9335dc", "scanner": "scanner-primary", "fingerprint": "572b93fce8788791", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-335404f16ab39dec", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/lib/metrics-parity-helper.ts:114"}, "properties": {"repobilityId": "b972109823e647ee", "scanner": "scanner-primary", "fingerprint": "335404f16ab39dec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bd46096647d79248", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/database.types.ts:1021"}, "properties": {"repobilityId": "75bca688ff020502", "scanner": "scanner-primary", "fingerprint": "bd46096647d79248", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4024948095f1fbd2", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/admin.ts:294"}, "properties": {"repobilityId": "b7f36f55972563d9", "scanner": "scanner-primary", "fingerprint": "4024948095f1fbd2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a15ccb9b835d8eb3", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/lib/preferences.ts:125"}, "properties": {"repobilityId": "24a79d049bd5c54f", "scanner": "scanner-primary", "fingerprint": "a15ccb9b835d8eb3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb587b28cfa93805", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/auth.test.ts:153"}, "properties": {"repobilityId": "74d3e012804b360d", "scanner": "scanner-primary", "fingerprint": "eb587b28cfa93805", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ea80b8e713339e55", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/auth.test.ts:586"}, "properties": {"repobilityId": "89439273cef8040a", "scanner": "scanner-primary", "fingerprint": "ea80b8e713339e55", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-64507d0c48572242", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/queries.match-batches-rls.regression-1.test.ts:111"}, "properties": {"repobilityId": "99a6a936d75c6947", "scanner": "scanner-primary", "fingerprint": "64507d0c48572242", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cefa29a982a47e2f", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/ratelimit.ts:97"}, "properties": {"repobilityId": "c92d31d99ab82127", "scanner": "scanner-primary", "fingerprint": "cefa29a982a47e2f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9788bd067b8464df", "level": "note", "message": {"text": "Legacy-named symbol `widget_state_v2` in src/lib/widget-state-flag.ts:13"}, "properties": {"repobilityId": "dafb503975abf04d", "scanner": "scanner-primary", "fingerprint": "9788bd067b8464df", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-59c0b2881cb45f68", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/lib/widget-state-flag.ts:56"}, "properties": {"repobilityId": "a3585fd04684b4bb", "scanner": "scanner-primary", "fingerprint": "59c0b2881cb45f68", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d5bde1506b4d0472", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/audit.ts:101"}, "properties": {"repobilityId": "0758635086c38a4c", "scanner": "scanner-primary", "fingerprint": "d5bde1506b4d0472", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4ea3f23a67aefafd", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/queries.hh-1255.test.ts:123"}, "properties": {"repobilityId": "174666e760857a5a", "scanner": "scanner-primary", "fingerprint": "4ea3f23a67aefafd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0a8d7c4f002cab1f", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/process-key-client.ts:101"}, "properties": {"repobilityId": "7ce3c9e2ed0962a0", "scanner": "scanner-primary", "fingerprint": "0a8d7c4f002cab1f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-adf5ba5ab0ba57ca", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/lib/demo-recommendations.test.ts:169"}, "properties": {"repobilityId": "abe13757708f51da", "scanner": "scanner-primary", "fingerprint": "adf5ba5ab0ba57ca", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a1a3e045f4107006", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/portfolio-stats.test.ts:597"}, "properties": {"repobilityId": "ce2687266e270234", "scanner": "scanner-primary", "fingerprint": "a1a3e045f4107006", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dae91d8d5319802d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/gdpr-export.ts:12"}, "properties": {"repobilityId": "b0e0e70d67c2d6da", "scanner": "scanner-primary", "fingerprint": "dae91d8d5319802d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e61ebeffd6f8c188", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/bridge/send-intro.test.ts:256"}, "properties": {"repobilityId": "dc14d820f0abfdf5", "scanner": "scanner-primary", "fingerprint": "e61ebeffd6f8c188", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a7f9fc1be647506d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/bridge/send-intro.ts:58"}, "properties": {"repobilityId": "545d2dc610619fda", "scanner": "scanner-primary", "fingerprint": "a7f9fc1be647506d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fb6977fbc96ec1fb", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/bridge/send-intro.ts:7"}, "properties": {"repobilityId": "fee185b378d0343c", "scanner": "scanner-primary", "fingerprint": "fb6977fbc96ec1fb", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3b04dd35b3c37aed", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/api/withAdminAuth.test.ts:137"}, "properties": {"repobilityId": "f7dc2ecea44d4de2", "scanner": "scanner-primary", "fingerprint": "3b04dd35b3c37aed", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-755fc7105585ebe4", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/api/simulatorSchema.ts:27"}, "properties": {"repobilityId": "0488569eb1727ddf", "scanner": "scanner-primary", "fingerprint": "755fc7105585ebe4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-908b62f08110698d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/api/withAuthLimited.test.ts:173"}, "properties": {"repobilityId": "f230665dbe151bd2", "scanner": "scanner-primary", "fingerprint": "908b62f08110698d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-41d2f4cade90c831", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/api/limiter-ordering.test.ts:112"}, "properties": {"repobilityId": "f07b819039ccb7f1", "scanner": "scanner-primary", "fingerprint": "41d2f4cade90c831", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f7ffde33b8d3408d", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/api/withAdminAuth.ts:122"}, "properties": {"repobilityId": "38807038bf7abd7d", "scanner": "scanner-primary", "fingerprint": "f7ffde33b8d3408d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-174ca6b9caf0e5e3", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/lib/api/withAuth.ts:41"}, "properties": {"repobilityId": "06e702002658ac49", "scanner": "scanner-primary", "fingerprint": "174ca6b9caf0e5e3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5f0c6a73a29471c1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/api/withAuth.ts:44"}, "properties": {"repobilityId": "259b6b11d01091b6", "scanner": "scanner-primary", "fingerprint": "5f0c6a73a29471c1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8ac040efb98b28ed", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/api/simulatorSchema.test.ts:8"}, "properties": {"repobilityId": "9cfd30598e15e9c0", "scanner": "scanner-primary", "fingerprint": "8ac040efb98b28ed", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1bb0e56467d42462", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/api/withAuthLimited.ts:149"}, "properties": {"repobilityId": "7f32d89f6096034e", "scanner": "scanner-primary", "fingerprint": "1bb0e56467d42462", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cbdac951d18b679b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/factsheet/event-signatures.test.ts:63"}, "properties": {"repobilityId": "cab1697203985eb5", "scanner": "scanner-primary", "fingerprint": "cbdac951d18b679b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b449f68bd566fff5", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/factsheet/build-payload.ts:94"}, "properties": {"repobilityId": "857ffea87506f118", "scanner": "scanner-primary", "fingerprint": "b449f68bd566fff5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d7053f4d35bee48d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/factsheet/allocator-portfolio-payload.ts:102"}, "properties": {"repobilityId": "568f3471a9cff284", "scanner": "scanner-primary", "fingerprint": "d7053f4d35bee48d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4d351f833cb07c34", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/factsheet/allocator-portfolio-payload.test.ts:90"}, "properties": {"repobilityId": "fbdda20628f89f9c", "scanner": "scanner-primary", "fingerprint": "4d351f833cb07c34", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-884c046a50955504", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/factsheet/audit-c20.test.ts:100"}, "properties": {"repobilityId": "19ebcab8ca45ba31", "scanner": "scanner-primary", "fingerprint": "884c046a50955504", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-add631280ab7e63d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/notes/ownership.ts:80"}, "properties": {"repobilityId": "3f81b8040bf8be33", "scanner": "scanner-primary", "fingerprint": "add631280ab7e63d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b035ad925c6c4c97", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/admin/pii-scrub.ts:54"}, "properties": {"repobilityId": "cddc1a908dc2f330", "scanner": "scanner-primary", "fingerprint": "b035ad925c6c4c97", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-330435b8edcec249", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/admin/pii-scrub.test.ts:242"}, "properties": {"repobilityId": "e7d1d5761f5dd3cb", "scanner": "scanner-primary", "fingerprint": "330435b8edcec249", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f58020bbc73bd4c8", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/lib/admin/match.ts:44"}, "properties": {"repobilityId": "a567c0ac0c609bcf", "scanner": "scanner-primary", "fingerprint": "f58020bbc73bd4c8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c358d131b3b38ba2", "level": "note", "message": {"text": "Legacy-named symbol `quantalyze_wizard_state_v1` in src/lib/wizard/localStorage.test.ts:301"}, "properties": {"repobilityId": "becac809ee4a831c", "scanner": "scanner-primary", "fingerprint": "c358d131b3b38ba2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-df14e39323a31eb4", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/wizard/localStorage.test.ts:13"}, "properties": {"repobilityId": "b4aedadc58b3d70a", "scanner": "scanner-primary", "fingerprint": "df14e39323a31eb4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-417b2af4b498f674", "level": "note", "message": {"text": "Legacy-named symbol `quantalyze_wizard_state_v1` in src/lib/wizard/localStorage.ts:51"}, "properties": {"repobilityId": "53e8baffb2014665", "scanner": "scanner-primary", "fingerprint": "417b2af4b498f674", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-40ce7252d9cafd3a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/wizard/localStorage.ts:66"}, "properties": {"repobilityId": "9e3b28df98372117", "scanner": "scanner-primary", "fingerprint": "40ce7252d9cafd3a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf3445e8b30d999d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/auth/rbac-manifest.ts:135"}, "properties": {"repobilityId": "d678d0f333055bf1", "scanner": "scanner-primary", "fingerprint": "bf3445e8b30d999d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-94a43103c9cc223d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/auth/rbac-manifest.test.ts:63"}, "properties": {"repobilityId": "3b70c8c63f8bdedd", "scanner": "scanner-primary", "fingerprint": "94a43103c9cc223d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0568e21872421532", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/test-helpers/live-db.ts:212"}, "properties": {"repobilityId": "bfab34ed95f5b4bc", "scanner": "scanner-primary", "fingerprint": "0568e21872421532", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3ad1c55b09df1b3c", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/intro/snapshot.test.ts:85"}, "properties": {"repobilityId": "927495851277f53c", "scanner": "scanner-primary", "fingerprint": "3ad1c55b09df1b3c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f384a4ac0d4163e5", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/supabase/mock.ts:153"}, "properties": {"repobilityId": "265e03c2328cf614", "scanner": "scanner-primary", "fingerprint": "f384a4ac0d4163e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-38316604a4a9c361", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/supabase/client.ts:3"}, "properties": {"repobilityId": "90c10306ba6c5124", "scanner": "scanner-primary", "fingerprint": "38316604a4a9c361", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d1b21727becba62c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/supabase/numeric-precision.test.ts:47"}, "properties": {"repobilityId": "d76d4649bf01b86a", "scanner": "scanner-primary", "fingerprint": "d1b21727becba62c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b8d215629d8b1ed4", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/supabase/admin.ts:4"}, "properties": {"repobilityId": "333035ec07b0e6f0", "scanner": "scanner-primary", "fingerprint": "b8d215629d8b1ed4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1f1a9ca318be0985", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/supabase/admin-users.ts:107"}, "properties": {"repobilityId": "b8514babdb21b6e1", "scanner": "scanner-primary", "fingerprint": "1f1a9ca318be0985", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c6fb2134f47505a7", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/analytics/usage-events.ts:50"}, "properties": {"repobilityId": "06a87e54dd49eac9", "scanner": "scanner-primary", "fingerprint": "c6fb2134f47505a7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-22b640c4655da07e", "level": "note", "message": {"text": "Legacy-named symbol `emitFirstBridgeSurfacedLegacy` in src/lib/analytics/onboarding-funnel.ts:242"}, "properties": {"repobilityId": "19bf0caeb9ded974", "scanner": "scanner-primary", "fingerprint": "22b640c4655da07e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4072025a2a10e625", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/analytics/onboarding-funnel.ts:215"}, "properties": {"repobilityId": "0f9a93bcba545469", "scanner": "scanner-primary", "fingerprint": "4072025a2a10e625", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4f9dd1609ebffdd4", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/analytics/onboarding-funnel.test.ts:437"}, "properties": {"repobilityId": "b7cfdda6076514cf", "scanner": "scanner-primary", "fingerprint": "4f9dd1609ebffdd4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4cfabd556bacd26a", "level": "note", "message": {"text": "Legacy-named symbol `migrateLegacy` in src/lib/storage/codecs.ts:52"}, "properties": {"repobilityId": "f2824d973a4bc13c", "scanner": "scanner-primary", "fingerprint": "4cfabd556bacd26a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-fbbaa0eae41cbd56", "level": "note", "message": {"text": "Legacy-named symbol `migrateLegacy` in src/lib/storage/codecs.test.ts:15"}, "properties": {"repobilityId": "5cc5c03c0a06c8bd", "scanner": "scanner-primary", "fingerprint": "fbbaa0eae41cbd56", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-30a8571719ef64c4", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/storage/cross-tab.ts:239"}, "properties": {"repobilityId": "8eec0bf701248ab2", "scanner": "scanner-primary", "fingerprint": "30a8571719ef64c4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fb82b684a6f36c85", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/lib/__tests__/getMyAllocationDashboard.scenario.test.ts:406"}, "properties": {"repobilityId": "c0e94f399d768432", "scanner": "scanner-primary", "fingerprint": "fb82b684a6f36c85", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5575e2b02d820900", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/sync-freshness/types.test.ts:9"}, "properties": {"repobilityId": "60512791ba2ef327", "scanner": "scanner-primary", "fingerprint": "5575e2b02d820900", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad48dccc4122a9f7", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/__tests__/bridge-outcomes-voluntary-schema.test.ts:327"}, "properties": {"repobilityId": "f875efadb7e13722", "scanner": "scanner-primary", "fingerprint": "ad48dccc4122a9f7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d94050f6711b6cd0", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/format-percent-contract.test.ts:105"}, "properties": {"repobilityId": "87fdd7c1b0f0cb0f", "scanner": "scanner-primary", "fingerprint": "d94050f6711b6cd0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d3f2ec796d04b199", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/__tests__/gdpr-export-coverage-hook.test.ts:131"}, "properties": {"repobilityId": "8e530de5c70004e0", "scanner": "scanner-primary", "fingerprint": "d3f2ec796d04b199", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-22cc3a3e0d1698ad", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/audit-fanout-integration.test.ts:252"}, "properties": {"repobilityId": "c9dd1f774a0b9a0c", "scanner": "scanner-primary", "fingerprint": "22cc3a3e0d1698ad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-173986dc953496fb", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/user-notes-multiscope-rls.test.ts:129"}, "properties": {"repobilityId": "ea60fbbed5f3302a", "scanner": "scanner-primary", "fingerprint": "173986dc953496fb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f2ccee0e9074e9ce", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/__tests__/outcomes-join-rls.test.ts:168"}, "properties": {"repobilityId": "705187feeacadbd3", "scanner": "scanner-primary", "fingerprint": "f2ccee0e9074e9ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-247ab8eff321fba2", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/audit-emit-typed-dispatch.test.ts:258"}, "properties": {"repobilityId": "da4427e17650fb3f", "scanner": "scanner-primary", "fingerprint": "247ab8eff321fba2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e9756e99ceb3f44a", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/__tests__/gdpr-export-route.test.ts:46"}, "properties": {"repobilityId": "da5ae53243fd642c", "scanner": "scanner-primary", "fingerprint": "e9756e99ceb3f44a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5a94fa20b07dfe1", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/__tests__/scenario-commit-rls.test.ts:53"}, "properties": {"repobilityId": "d705c709b41c8999", "scanner": "scanner-primary", "fingerprint": "f5a94fa20b07dfe1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-00c55d64ddf428cf", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/__tests__/scenario-commit-rls.test.ts:414"}, "properties": {"repobilityId": "548dfe6d8adab903", "scanner": "scanner-primary", "fingerprint": "00c55d64ddf428cf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-334cea809c36313b", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/redteam-b02-regressions.test.ts:29"}, "properties": {"repobilityId": "4925d782bc28f7e8", "scanner": "scanner-primary", "fingerprint": "334cea809c36313b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-25317890bbecb522", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/allocator-equity-rls.test.ts:282"}, "properties": {"repobilityId": "1c15cd1d625b70c7", "scanner": "scanner-primary", "fingerprint": "25317890bbecb522", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-941ddaed016b2e2c", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/__tests__/match-decisions-visibility-trigger-rls.test.ts:360"}, "properties": {"repobilityId": "72783b7a3a98134b", "scanner": "scanner-primary", "fingerprint": "941ddaed016b2e2c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dc61e4163eeaf90a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/gdpr-export.test.ts:137"}, "properties": {"repobilityId": "2f2f2c2b1f5fce21", "scanner": "scanner-primary", "fingerprint": "dc61e4163eeaf90a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7192913c1e64ef24", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/__tests__/gdpr-export.test.ts:128"}, "properties": {"repobilityId": "88c933a2aa516456", "scanner": "scanner-primary", "fingerprint": "7192913c1e64ef24", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-35e78355c4bb6d65", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/__tests__/audit-log-cold-archive.test.ts:64"}, "properties": {"repobilityId": "baf2a07e492e69a6", "scanner": "scanner-primary", "fingerprint": "35e78355c4bb6d65", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1b81f122e84620cf", "level": "note", "message": {"text": "Legacy-named symbol `match_decisions_kind_bridge_recommended_v2` in src/__tests__/match-decisions-xor-rls.test.ts:129"}, "properties": {"repobilityId": "b78f3c2bf3def72f", "scanner": "scanner-primary", "fingerprint": "1b81f122e84620cf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6dd7329265d77254", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/match-decisions-xor-rls.test.ts:249"}, "properties": {"repobilityId": "667069bb17ed3230", "scanner": "scanner-primary", "fingerprint": "6dd7329265d77254", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2aa225bc66d8fe0d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/trades-side-check-constraint-2026-05-07-g12a.test.ts:7"}, "properties": {"repobilityId": "da0ce8e750a5b850", "scanner": "scanner-primary", "fingerprint": "2aa225bc66d8fe0d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d77b98b48ce525d7", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/__tests__/wizard-rpcs-live-db.test.ts:429"}, "properties": {"repobilityId": "a24c82d6b7db318a", "scanner": "scanner-primary", "fingerprint": "d77b98b48ce525d7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bbcc16adcd0a33ac", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/csv-finalize-rpc.test.ts:42"}, "properties": {"repobilityId": "827f6271639a3b08", "scanner": "scanner-primary", "fingerprint": "bbcc16adcd0a33ac", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8e9eaf647571c705", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/positions-rls-g12d-disclosure-tier.test.ts:151"}, "properties": {"repobilityId": "e158a07dca5f4104", "scanner": "scanner-primary", "fingerprint": "8e9eaf647571c705", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-08676c4cfd748398", "level": "none", "message": {"text": "Commented-code block (14 lines) in src/__tests__/audit-coverage.test.ts:125"}, "properties": {"repobilityId": "37d046d358e8496d", "scanner": "scanner-primary", "fingerprint": "08676c4cfd748398", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-35356fbad4422261", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/retention-crons.test.ts:90"}, "properties": {"repobilityId": "fd37b489eb9544a2", "scanner": "scanner-primary", "fingerprint": "35356fbad4422261", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1a725b49b92e4e73", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/deletion-request-admin-self.test.ts:49"}, "properties": {"repobilityId": "0f7bc5c035b79e5f", "scanner": "scanner-primary", "fingerprint": "1a725b49b92e4e73", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bda406218e96874e", "level": "note", "message": {"text": "Legacy-named symbol `runIntrospectionSqlLegacy` in src/__tests__/match-decisions-schema.test.ts:34"}, "properties": {"repobilityId": "7cc3652ef8f4b8b9", "scanner": "scanner-primary", "fingerprint": "bda406218e96874e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-69eeb6b494ba86a1", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/__tests__/match-decisions-schema.test.ts:25"}, "properties": {"repobilityId": "46b1e5c6e1985dac", "scanner": "scanner-primary", "fingerprint": "69eeb6b494ba86a1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fbfe8c08b3dd7528", "level": "none", "message": {"text": "Commented-code block (14 lines) in src/__tests__/scenario-commit-batch-tx.test.ts:482"}, "properties": {"repobilityId": "3fa88337bd812327", "scanner": "scanner-primary", "fingerprint": "fbfe8c08b3dd7528", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad4050d208533a8c", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/__tests__/delete-allocator-api-key-rpc.test.ts:433"}, "properties": {"repobilityId": "8950fb307e32e819", "scanner": "scanner-primary", "fingerprint": "ad4050d208533a8c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a2d5193835d9f96b", "level": "note", "message": {"text": "Legacy-named symbol `boLegacy` in src/__tests__/bridge-outcome-cron-holding.test.ts:457"}, "properties": {"repobilityId": "468a39f8010c128a", "scanner": "scanner-primary", "fingerprint": "a2d5193835d9f96b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-35d9274cd74b518b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/sanitize-user-rpc.test.ts:75"}, "properties": {"repobilityId": "050770f829178c23", "scanner": "scanner-primary", "fingerprint": "35d9274cd74b518b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9914e6020d76da95", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/__tests__/mandate-columns-schema-sync.test.ts:57"}, "properties": {"repobilityId": "61d49579ccf69435", "scanner": "scanner-primary", "fingerprint": "9914e6020d76da95", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fd28cf5d77e8333d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/check-banned-packages.test.ts:171"}, "properties": {"repobilityId": "157480e097a797f9", "scanner": "scanner-primary", "fingerprint": "fd28cf5d77e8333d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3c42667c2b115b4d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/__tests__/check-banned-packages.test.ts:15"}, "properties": {"repobilityId": "6eb04867989214f5", "scanner": "scanner-primary", "fingerprint": "3c42667c2b115b4d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5fa6d26167a825b5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/__tests__/match-decisions-holding-endpoint-rls.test.ts:99"}, "properties": {"repobilityId": "e37aa9435aa65b82", "scanner": "scanner-primary", "fingerprint": "5fa6d26167a825b5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-615f834cc829cdc6", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/observ12-fixtures-presence.test.ts:5"}, "properties": {"repobilityId": "044a916f08d57284", "scanner": "scanner-primary", "fingerprint": "615f834cc829cdc6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1528704815bd9a4c", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/__tests__/csv-validate-route.test.ts:117"}, "properties": {"repobilityId": "d1308fe14f0dca03", "scanner": "scanner-primary", "fingerprint": "1528704815bd9a4c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2910d735b12d9311", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/__tests__/e2e-match-queue-no-vacuous-admin-gate.test.ts:94"}, "properties": {"repobilityId": "aa248ddeeed6cbbc", "scanner": "scanner-primary", "fingerprint": "2910d735b12d9311", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fb24cb70656b8211", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/rbac-matrix-unit.test.ts:54"}, "properties": {"repobilityId": "e5104d3731da5745", "scanner": "scanner-primary", "fingerprint": "fb24cb70656b8211", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5eed95342b71e5d6", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/__tests__/log-audit-event-service-rpc.test.ts:157"}, "properties": {"repobilityId": "4329bc351c9c8f40", "scanner": "scanner-primary", "fingerprint": "5eed95342b71e5d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1ea5a1a93b1253c5", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/__tests__/user-app-roles-backfill.test.ts:40"}, "properties": {"repobilityId": "c2c50b68d18aa76a", "scanner": "scanner-primary", "fingerprint": "1ea5a1a93b1253c5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c8bb393377c66bdf", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/check-admin-route-manifest.test.ts:128"}, "properties": {"repobilityId": "5bc2d8c6370dca6a", "scanner": "scanner-primary", "fingerprint": "c8bb393377c66bdf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-264c88d8e140fd0f", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/__tests__/metrics-parity.test.ts:30"}, "properties": {"repobilityId": "401d2f88d309ba45", "scanner": "scanner-primary", "fingerprint": "264c88d8e140fd0f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c59d3c3fc9414210", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/sanitize-user.test.ts:37"}, "properties": {"repobilityId": "292324a129468c00", "scanner": "scanner-primary", "fingerprint": "c59d3c3fc9414210", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f724221034767863", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/mandate-audit.test.ts:84"}, "properties": {"repobilityId": "c5a983dda9cf91d8", "scanner": "scanner-primary", "fingerprint": "f724221034767863", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-22da00737ec6acf3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/strategies-source-csv-constraint.test.ts:7"}, "properties": {"repobilityId": "35e5cff36fb8e391", "scanner": "scanner-primary", "fingerprint": "22da00737ec6acf3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b40b0eb8ae97ee75", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/claim-dedupe-done-pending-children-guard.test.ts:177"}, "properties": {"repobilityId": "5c1b303e16ff228e", "scanner": "scanner-primary", "fingerprint": "b40b0eb8ae97ee75", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-512bc0af42881571", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/vercel-cron-limits.test.ts:42"}, "properties": {"repobilityId": "6f58c522213d5b0b", "scanner": "scanner-primary", "fingerprint": "512bc0af42881571", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3e906f5a7d8ff508", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/rbac-matrix.test.ts:222"}, "properties": {"repobilityId": "9bbb1ed72f3683af", "scanner": "scanner-primary", "fingerprint": "3e906f5a7d8ff508", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-db0311b047d96aad", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/__tests__/metrics-parity-helper.test.ts:148"}, "properties": {"repobilityId": "e9359e9a3e1e8f4f", "scanner": "scanner-primary", "fingerprint": "db0311b047d96aad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f0748df3a9c21b94", "level": "none", "message": {"text": "Commented-code block (13 lines) in src/__tests__/no-store-coverage.test.ts:119"}, "properties": {"repobilityId": "4537720dc4a13b36", "scanner": "scanner-primary", "fingerprint": "f0748df3a9c21b94", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d0140fc97722a278", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/__tests__/csv-finalize-c14-regression.test.ts:200"}, "properties": {"repobilityId": "6a1c6505fe17b130", "scanner": "scanner-primary", "fingerprint": "d0140fc97722a278", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d77f7f1fae00d19b", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/compute-jobs-kind-check-csv-2026-05-25.test.ts:10"}, "properties": {"repobilityId": "e118a4535952b8d4", "scanner": "scanner-primary", "fingerprint": "d77f7f1fae00d19b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7df77ee711db9579", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/__tests__/scenario-commit-batch-race.test.ts:70"}, "properties": {"repobilityId": "9832cded6547c0ad", "scanner": "scanner-primary", "fingerprint": "7df77ee711db9579", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0a23db4632f368e5", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/admin-csrf-ratelimit-grep.test.ts:69"}, "properties": {"repobilityId": "874113d61768156a", "scanner": "scanner-primary", "fingerprint": "0a23db4632f368e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-097225f8a1f7fd8e", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/compute-jobs-claim-token-not-leaked.test.ts:41"}, "properties": {"repobilityId": "65537b2abf66ad5b", "scanner": "scanner-primary", "fingerprint": "097225f8a1f7fd8e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-99d8c1bc2078ef6f", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/__tests__/audit-event-union-types.test.ts:29"}, "properties": {"repobilityId": "21768805fa058616", "scanner": "scanner-primary", "fingerprint": "99d8c1bc2078ef6f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-80a04e6a27381c08", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/gdpr-export-redaction.test.ts:120"}, "properties": {"repobilityId": "39c7e596021ee170", "scanner": "scanner-primary", "fingerprint": "80a04e6a27381c08", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c4564d27154d726d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/bridge-outcome-cron.test.ts:128"}, "properties": {"repobilityId": "1bee38a0f3b55dbe", "scanner": "scanner-primary", "fingerprint": "c4564d27154d726d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-49ccdc381e03ccb1", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/compute-jobs-audit-2026-05-07-g10b.test.ts:762"}, "properties": {"repobilityId": "a7a68f73e112c918", "scanner": "scanner-primary", "fingerprint": "49ccdc381e03ccb1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3136266d88744822", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/strategy-verifications-rls.test.ts:228"}, "properties": {"repobilityId": "f5de77ec8e46f6bf", "scanner": "scanner-primary", "fingerprint": "3136266d88744822", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d035c74e694da618", "level": "none", "message": {"text": "Commented-code block (22 lines) in src/__tests__/update-allocator-mandates-rpc.test.ts:108"}, "properties": {"repobilityId": "70010aba35aff035", "scanner": "scanner-primary", "fingerprint": "d035c74e694da618", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0bfaa80729c00935", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/claim-failed-retry-dedupe-migrations.test.ts:113"}, "properties": {"repobilityId": "17a82823ad5cb5f6", "scanner": "scanner-primary", "fingerprint": "0bfaa80729c00935", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-410ea000f96ab496", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/__tests__/gdpr-export-schema.test.ts:172"}, "properties": {"repobilityId": "e6ba394e683946da", "scanner": "scanner-primary", "fingerprint": "410ea000f96ab496", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b7cf94db05783fec", "level": "none", "message": {"text": "Commented-code block (13 lines) in src/__tests__/audit-log-rls.test.ts:76"}, "properties": {"repobilityId": "9908d8ba9802bdfc", "scanner": "scanner-primary", "fingerprint": "b7cf94db05783fec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-887550fa21dafe46", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/portfolio-strategies-alias-rls.test.ts:61"}, "properties": {"repobilityId": "d2f59ca9e116df8b", "scanner": "scanner-primary", "fingerprint": "887550fa21dafe46", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b46394daf409cc62", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/__tests__/gitleaks-allowlist.test.ts:186"}, "properties": {"repobilityId": "1b0c82d4c1f89754", "scanner": "scanner-primary", "fingerprint": "b46394daf409cc62", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-425a7dc30140044b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/auth-rbac-unified.test.ts:183"}, "properties": {"repobilityId": "8c10ba61bd791f1a", "scanner": "scanner-primary", "fingerprint": "425a7dc30140044b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-89fefb9fc6ec861a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/raise-exception-concat-grammar.test.ts:11"}, "properties": {"repobilityId": "a9b2f9786d6b2da6", "scanner": "scanner-primary", "fingerprint": "89fefb9fc6ec861a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-730e8b68bb14133c", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/__tests__/bridge-outcome-cron-voluntary-add.test.ts:305"}, "properties": {"repobilityId": "a0c9c8b5f2aea6eb", "scanner": "scanner-primary", "fingerprint": "730e8b68bb14133c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-087a26ecb356da48", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/compute-jobs-audit-2026-05-07-residual.test.ts:291"}, "properties": {"repobilityId": "a34a566556479984", "scanner": "scanner-primary", "fingerprint": "087a26ecb356da48", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d1e8a23251dcddf1", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/__tests__/critical-regressions.test.ts:173"}, "properties": {"repobilityId": "3043b02e6ddad53f", "scanner": "scanner-primary", "fingerprint": "d1e8a23251dcddf1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-af8ad25eafb2238c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/positions-runtime-guard-g12e.test.ts:126"}, "properties": {"repobilityId": "8fe67cf060631660", "scanner": "scanner-primary", "fingerprint": "af8ad25eafb2238c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-408ac980dac7de2a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/__tests__/migration-084-trigger.test.ts:214"}, "properties": {"repobilityId": "8ad2c8b3a0174c63", "scanner": "scanner-primary", "fingerprint": "408ac980dac7de2a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b01314036259abef", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/__tests__/contracts/contracts-registry.test.ts:114"}, "properties": {"repobilityId": "d84df81ccca03efd", "scanner": "scanner-primary", "fingerprint": "b01314036259abef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-23b93132bee0d7d4", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/__tests__/contracts/check-zod-db-check-parity.test.ts:191"}, "properties": {"repobilityId": "8856194f83204f66", "scanner": "scanner-primary", "fingerprint": "23b93132bee0d7d4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-37a08a30628f05f8", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 supabase/functions/notify-admin/index.ts:66"}, "properties": {"repobilityId": "3f932828ecf35098", "scanner": "scanner-primary", "fingerprint": "37a08a30628f05f8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-17e71ba842596479", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/sentry_init.py:34"}, "properties": {"repobilityId": "5d6f5bf615fb6659", "scanner": "scanner-primary", "fingerprint": "17e71ba842596479", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ee4a7963706dfac7", "level": "note", "message": {"text": "Legacy-named symbol `_claim_legacy` in analytics-service/main_worker.py:397"}, "properties": {"repobilityId": "0cc14719442fde0b", "scanner": "scanner-primary", "fingerprint": "ee4a7963706dfac7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2bc530e6b7c67468", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/main_worker.py:72"}, "properties": {"repobilityId": "4100ff1ae431e162", "scanner": "scanner-primary", "fingerprint": "2bc530e6b7c67468", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5192ae6466b91fef", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/main.py:16"}, "properties": {"repobilityId": "864a547c8eb5fd12", "scanner": "scanner-primary", "fingerprint": "5192ae6466b91fef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b994e877dbb666b6", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_match_engine_service.py:1027"}, "properties": {"repobilityId": "83b988bc595a08ad", "scanner": "scanner-primary", "fingerprint": "b994e877dbb666b6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f90d2c908495c62a", "level": "none", "message": {"text": "Commented-code block (9 lines) in analytics-service/tests/test_process_key.py:37"}, "properties": {"repobilityId": "c0475ba58e233913", "scanner": "scanner-primary", "fingerprint": "f90d2c908495c62a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1cb4c61ad9faf80f", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_simulator_scoring.py:183"}, "properties": {"repobilityId": "0b1b15a70bd32aa7", "scanner": "scanner-primary", "fingerprint": "1cb4c61ad9faf80f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5384881c9855fb7d", "level": "none", "message": {"text": "Commented-code block (12 lines) in analytics-service/tests/test_key_permissions.py:242"}, "properties": {"repobilityId": "efe57ff1f4a3907b", "scanner": "scanner-primary", "fingerprint": "5384881c9855fb7d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fdf11ff4b863c72e", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_position_reconstruction_funding.py:59"}, "properties": {"repobilityId": "a9b79366676c49e8", "scanner": "scanner-primary", "fingerprint": "fdf11ff4b863c72e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e1658a6f19c1792e", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_match_integration.py:174"}, "properties": {"repobilityId": "545600ecb336e367", "scanner": "scanner-primary", "fingerprint": "e1658a6f19c1792e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fbe65dbcae2c054e", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/tests/conftest.py:8"}, "properties": {"repobilityId": "cd72085246a97f8b", "scanner": "scanner-primary", "fingerprint": "fbe65dbcae2c054e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c84f49f7798ec669", "level": "none", "message": {"text": "Commented-code block (11 lines) in analytics-service/tests/test_routers_audit_2026_05_17.py:163"}, "properties": {"repobilityId": "73dd5d8ad9beb560", "scanner": "scanner-primary", "fingerprint": "c84f49f7798ec669", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-54abe486738f4eed", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_equity_fallback.py:98"}, "properties": {"repobilityId": "2e8b5d9abb74c518", "scanner": "scanner-primary", "fingerprint": "54abe486738f4eed", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-797313e6ecb8087b", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_equity_curve_builder.py:134"}, "properties": {"repobilityId": "6723e9e53990004b", "scanner": "scanner-primary", "fingerprint": "797313e6ecb8087b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f6df367e51bc5990", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_feedback_engine.py:116"}, "properties": {"repobilityId": "32566f9b374223dc", "scanner": "scanner-primary", "fingerprint": "f6df367e51bc5990", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-88bce42cc732eef9", "level": "note", "message": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/tests/test_fingerprint.py:1"}, "properties": {"repobilityId": "ad2ed1d9fa95cfaa", "scanner": "scanner-primary", "fingerprint": "88bce42cc732eef9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-22163bc998b13370", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_fingerprint.py:437"}, "properties": {"repobilityId": "3744488a4929fd22", "scanner": "scanner-primary", "fingerprint": "22163bc998b13370", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-33783b21b0453692", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_match_eval.py:118"}, "properties": {"repobilityId": "7ee59cb274860e5d", "scanner": "scanner-primary", "fingerprint": "33783b21b0453692", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ad79cd20a62ca01", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_metrics.py:41"}, "properties": {"repobilityId": "0d154ae1c5a0d861", "scanner": "scanner-primary", "fingerprint": "3ad79cd20a62ca01", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2e9ca9c55228a5d1", "level": "note", "message": {"text": "Legacy-named symbol `excess_old` in analytics-service/tests/test_ana_recon_audit.py:1034"}, "properties": {"repobilityId": "f40d643be5ed4a41", "scanner": "scanner-primary", "fingerprint": "2e9ca9c55228a5d1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-01261cb3fddd53c6", "level": "none", "message": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_ana_recon_audit.py:798"}, "properties": {"repobilityId": "c96365bbe47ce0c8", "scanner": "scanner-primary", "fingerprint": "01261cb3fddd53c6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-923de79ba119efdb", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_trigger_rls_audit.py:205"}, "properties": {"repobilityId": "b472b081f9d43740", "scanner": "scanner-primary", "fingerprint": "923de79ba119efdb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9af06870bf060d0a", "level": "none", "message": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_funding_fetch.py:27"}, "properties": {"repobilityId": "0f40668a1fbe1433", "scanner": "scanner-primary", "fingerprint": "9af06870bf060d0a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0501d17a213b9d24", "level": "none", "message": {"text": "Commented-code block (10 lines) in analytics-service/tests/test_routers_audit_emission_structure.py:50"}, "properties": {"repobilityId": "b1d2bdfcf3f9e517", "scanner": "scanner-primary", "fingerprint": "0501d17a213b9d24", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9a09c8de56fc0c83", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_persist_csv_daily_returns_live.py:766"}, "properties": {"repobilityId": "366be0605ced3bb7", "scanner": "scanner-primary", "fingerprint": "9a09c8de56fc0c83", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-47360b65b0c929bd", "level": "note", "message": {"text": "Legacy-named symbol `verification_requests_legacy` in analytics-service/tests/test_legacy_table_rls.py:2"}, "properties": {"repobilityId": "9ab7c4f187557952", "scanner": "scanner-primary", "fingerprint": "47360b65b0c929bd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bacfdb4b9c87ac21", "level": "none", "message": {"text": "Commented-code block (10 lines) in analytics-service/tests/test_position_reconstruction.py:16"}, "properties": {"repobilityId": "7e78bdf93fd4a36c", "scanner": "scanner-primary", "fingerprint": "bacfdb4b9c87ac21", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c09aa0638b009deb", "level": "none", "message": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_portfolio_router_logic.py:203"}, "properties": {"repobilityId": "c330c5de4ae522dc", "scanner": "scanner-primary", "fingerprint": "c09aa0638b009deb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aecf4db6fd110a18", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_match_router.py:1068"}, "properties": {"repobilityId": "d5a859abf7571207", "scanner": "scanner-primary", "fingerprint": "aecf4db6fd110a18", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2fdb676f5e9cf0ce", "level": "none", "message": {"text": "Commented-code block (9 lines) in analytics-service/tests/test_simulator_router.py:33"}, "properties": {"repobilityId": "7737cafa2f4aed78", "scanner": "scanner-primary", "fingerprint": "2fdb676f5e9cf0ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8bbd0cfea4a5c238", "level": "note", "message": {"text": "Legacy-named symbol `_claim_legacy` in analytics-service/tests/test_compute_jobs_fencing.py:1634"}, "properties": {"repobilityId": "f69078d419f21e22", "scanner": "scanner-primary", "fingerprint": "8bbd0cfea4a5c238", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-287cae286c2f07ad", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_compute_jobs_fencing.py:88"}, "properties": {"repobilityId": "769c657d9537139b", "scanner": "scanner-primary", "fingerprint": "287cae286c2f07ad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e13d949ca91e94d2", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_position_reconstruction_fifo_flip.py:57"}, "properties": {"repobilityId": "77379d5da2db95ed", "scanner": "scanner-primary", "fingerprint": "e13d949ca91e94d2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b43dc63d816d847b", "level": "note", "message": {"text": "Legacy-named symbol `verification_requests_legacy` in analytics-service/tests/test_verify_strategy_no_legacy_writes.py:6"}, "properties": {"repobilityId": "2e52b43b813728ef", "scanner": "scanner-primary", "fingerprint": "b43dc63d816d847b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f5c3f7c004a8b719", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_verify_strategy_no_legacy_writes.py:67"}, "properties": {"repobilityId": "d0f9b19987de9c79", "scanner": "scanner-primary", "fingerprint": "f5c3f7c004a8b719", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2793c7dde299233d", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_phase12_kill_switch.py:942"}, "properties": {"repobilityId": "e2c811dccc74a192", "scanner": "scanner-primary", "fingerprint": "2793c7dde299233d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-20450d2011081f61", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_portfolio_router_audit_2026_05_07.py:235"}, "properties": {"repobilityId": "121afa8429f41ffd", "scanner": "scanner-primary", "fingerprint": "20450d2011081f61", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-29a4d0b3f08b39be", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_outcomes_kpi_parity.py:98"}, "properties": {"repobilityId": "79ca32d95a6a4fd7", "scanner": "scanner-primary", "fingerprint": "29a4d0b3f08b39be", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1f9c2db177c4d950", "level": "none", "message": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_equity_reconstruction.py:297"}, "properties": {"repobilityId": "def0bc65314317bc", "scanner": "scanner-primary", "fingerprint": "1f9c2db177c4d950", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6917c3bdcc83a0fe", "level": "note", "message": {"text": "Legacy-named symbol `test_90_day_gate_fetches_archive_when_old` in analytics-service/tests/test_exchange_harness.py:227"}, "properties": {"repobilityId": "be13ae43ba672584", "scanner": "scanner-primary", "fingerprint": "6917c3bdcc83a0fe", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-859ba8b8c9e505f2", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_exchange_harness.py:485"}, "properties": {"repobilityId": "28ffc71af9190126", "scanner": "scanner-primary", "fingerprint": "859ba8b8c9e505f2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ee5808f7a3280dfb", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_main_worker.py:76"}, "properties": {"repobilityId": "2363479f58d2a0ef", "scanner": "scanner-primary", "fingerprint": "ee5808f7a3280dfb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-39766d5d38e6936b", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_audit.py:127"}, "properties": {"repobilityId": "fa73b7de8cd95a44", "scanner": "scanner-primary", "fingerprint": "39766d5d38e6936b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-da5dd792f3945679", "level": "note", "message": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/tests/test_compute_similarity_sql.py:20"}, "properties": {"repobilityId": "fbde0b0d40823ba9", "scanner": "scanner-primary", "fingerprint": "da5dd792f3945679", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-016a0bbe517c623d", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_compute_similarity_sql.py:37"}, "properties": {"repobilityId": "bc0475b63204f34a", "scanner": "scanner-primary", "fingerprint": "016a0bbe517c623d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-40b4317ed6789d49", "level": "note", "message": {"text": "Legacy-named symbol `test_get_and_clear_returns_defensive_copy` in analytics-service/tests/test_exchange.py:5142"}, "properties": {"repobilityId": "dbf135376f5bba9d", "scanner": "scanner-primary", "fingerprint": "40b4317ed6789d49", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-409c42fe7dcf54ae", "level": "none", "message": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_exchange.py:163"}, "properties": {"repobilityId": "7941134821897dce", "scanner": "scanner-primary", "fingerprint": "409c42fe7dcf54ae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-386ba02cf01dad1d", "level": "none", "message": {"text": "Commented-code block (9 lines) in analytics-service/tests/test_c19_portfolio_fixes.py:381"}, "properties": {"repobilityId": "609bac281bfc9647", "scanner": "scanner-primary", "fingerprint": "386ba02cf01dad1d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0cf7962ac918c9d5", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_metrics_minigolden.py:320"}, "properties": {"repobilityId": "6e1bc9957406ffd6", "scanner": "scanner-primary", "fingerprint": "0cf7962ac918c9d5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c66d23c4bf4ce412", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_conftest_fixture_isolation.py:58"}, "properties": {"repobilityId": "a49355e7dec3d84c", "scanner": "scanner-primary", "fingerprint": "c66d23c4bf4ce412", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c45d0db5c4666bc0", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_repro_key_flow.py:24"}, "properties": {"repobilityId": "1c2da9007297f074", "scanner": "scanner-primary", "fingerprint": "c45d0db5c4666bc0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb8caa7cb33923ec", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_metrics_parity.py:367"}, "properties": {"repobilityId": "a8cf0e3fee90be3d", "scanner": "scanner-primary", "fingerprint": "eb8caa7cb33923ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5e554415de70291d", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_routers_audit_emission.py:68"}, "properties": {"repobilityId": "af1f642b8f8a85a7", "scanner": "scanner-primary", "fingerprint": "5e554415de70291d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cc0378e50fe8662a", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_cron_router.py:334"}, "properties": {"repobilityId": "5beb05ac74b33b62", "scanner": "scanner-primary", "fingerprint": "cc0378e50fe8662a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d6d7a5064a751c14", "level": "note", "message": {"text": "Legacy-named symbol `test_weights_version_pinned_v2` in analytics-service/tests/test_match_engine.py:1208"}, "properties": {"repobilityId": "fa122d6618cf49ff", "scanner": "scanner-primary", "fingerprint": "d6d7a5064a751c14", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-acd4861622b0cfb1", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_match_engine.py:36"}, "properties": {"repobilityId": "f7f131ce5a4161d2", "scanner": "scanner-primary", "fingerprint": "acd4861622b0cfb1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aba7564b316b4c06", "level": "none", "message": {"text": "Commented-code block (9 lines) in analytics-service/tests/test_logging_config.py:114"}, "properties": {"repobilityId": "245b2e4b077eb31e", "scanner": "scanner-primary", "fingerprint": "aba7564b316b4c06", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0b4b3108bc24c492", "level": "none", "message": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_analytics_runner.py:42"}, "properties": {"repobilityId": "5d416722b427fd5b", "scanner": "scanner-primary", "fingerprint": "0b4b3108bc24c492", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dbcc8e0bddbaaf3a", "level": "note", "message": {"text": "Legacy-named symbol `test_drain_missing_metadata_treated_as_legacy` in analytics-service/tests/test_long_fetch.py:317"}, "properties": {"repobilityId": "59e757923010a66b", "scanner": "scanner-primary", "fingerprint": "dbcc8e0bddbaaf3a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6281c8ce98ae217f", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/test_position_reconstruction_edges.py:136"}, "properties": {"repobilityId": "d56c0775711a25e2", "scanner": "scanner-primary", "fingerprint": "6281c8ce98ae217f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-084e7584a6ec4d34", "level": "none", "message": {"text": "Commented-code block (10 lines) in analytics-service/tests/test_db.py:272"}, "properties": {"repobilityId": "3dfd06aa1322f4f4", "scanner": "scanner-primary", "fingerprint": "084e7584a6ec4d34", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1703cb06534160b8", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_job_worker.py:1624"}, "properties": {"repobilityId": "5e16a4f9d4961e64", "scanner": "scanner-primary", "fingerprint": "1703cb06534160b8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-01785570e4fa52ac", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_bridge_scoring.py:236"}, "properties": {"repobilityId": "4996eed8a30c91d4", "scanner": "scanner-primary", "fingerprint": "01785570e4fa52ac", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-caeb9175fac6343b", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/tests/test_csv_validator.py:152"}, "properties": {"repobilityId": "e0695336e59bc3d4", "scanner": "scanner-primary", "fingerprint": "caeb9175fac6343b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d7b8de0b936d5f9a", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_sentry_init.py:67"}, "properties": {"repobilityId": "072abaadc96a4ffd", "scanner": "scanner-primary", "fingerprint": "d7b8de0b936d5f9a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ac595d798cf02cc", "level": "none", "message": {"text": "Commented-code block (8 lines) in analytics-service/tests/test_csv_analytics_runner.py:206"}, "properties": {"repobilityId": "d7d13134484cc789", "scanner": "scanner-primary", "fingerprint": "3ac595d798cf02cc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-92f6b211872f1e89", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_resend_correlation_rls.py:113"}, "properties": {"repobilityId": "5fccef47d0ccc9ef", "scanner": "scanner-primary", "fingerprint": "92f6b211872f1e89", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e79d080d02e637f4", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/tests/test_window_alignment.py:108"}, "properties": {"repobilityId": "ab1fd98d19cc403a", "scanner": "scanner-primary", "fingerprint": "e79d080d02e637f4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8a58fe4f3b32d7f7", "level": "none", "message": {"text": "Commented-code block (12 lines) in analytics-service/tests/test_worker_load.py:68"}, "properties": {"repobilityId": "28c662c051984196", "scanner": "scanner-primary", "fingerprint": "8a58fe4f3b32d7f7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9d0c0730fd38f917", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/tests/fixtures/regen_golden.py:120"}, "properties": {"repobilityId": "becf1e12ce6bb0c3", "scanner": "scanner-primary", "fingerprint": "9d0c0730fd38f917", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7573c758730ee5a9", "level": "none", "message": {"text": "Commented-code block (8 lines) in analytics-service/scripts/phase12_deploy.py:53"}, "properties": {"repobilityId": "31aa781af906dd63", "scanner": "scanner-primary", "fingerprint": "7573c758730ee5a9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e14f475741f9a815", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 analytics-service/scripts/phase12_deploy.py:133"}, "properties": {"repobilityId": "c0625da86367d936", "scanner": "scanner-primary", "fingerprint": "e14f475741f9a815", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-78f5aa62bb204867", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/scripts/reset_stuck_computing_rows.py:56"}, "properties": {"repobilityId": "98860b37bf9382ec", "scanner": "scanner-primary", "fingerprint": "78f5aa62bb204867", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f856c4b451fc6cd0", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/scripts/phase12_kill_switch.py:88"}, "properties": {"repobilityId": "2a955b647d5073f2", "scanner": "scanner-primary", "fingerprint": "f856c4b451fc6cd0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4548e63ef99b9e42", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 analytics-service/scripts/phase12_kill_switch.py:190"}, "properties": {"repobilityId": "782dd556feacc6ab", "scanner": "scanner-primary", "fingerprint": "4548e63ef99b9e42", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e6ac69edfe43a052", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/scripts/phase12_backfill_enqueue.py:58"}, "properties": {"repobilityId": "c3b5bd8caf7bfede", "scanner": "scanner-primary", "fingerprint": "e6ac69edfe43a052", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1835f9f0cc20fb1b", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/scripts/record_cassettes.py:81"}, "properties": {"repobilityId": "6eb924a76ad3d590", "scanner": "scanner-primary", "fingerprint": "1835f9f0cc20fb1b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f2947d01e561e955", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/models/schemas.py:91"}, "properties": {"repobilityId": "4f4b4c2f84c468fe", "scanner": "scanner-primary", "fingerprint": "f2947d01e561e955", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4a4dcec6d4674844", "level": "none", "message": {"text": "Commented-code block (8 lines) in analytics-service/routers/simulator.py:47"}, "properties": {"repobilityId": "c6b4ebdfb8795599", "scanner": "scanner-primary", "fingerprint": "4a4dcec6d4674844", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5f707ca219e0a03c", "level": "note", "message": {"text": "Legacy-named symbol `verification_requests_legacy` in analytics-service/routers/portfolio.py:2151"}, "properties": {"repobilityId": "56675b372a4b7625", "scanner": "scanner-primary", "fingerprint": "5f707ca219e0a03c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d238088472d29be7", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/routers/portfolio.py:53"}, "properties": {"repobilityId": "19445a3cc46c6d26", "scanner": "scanner-primary", "fingerprint": "d238088472d29be7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6619d540195cd4d6", "level": "none", "message": {"text": "Commented-code block (9 lines) in analytics-service/routers/process_key.py:56"}, "properties": {"repobilityId": "b6ee53630430bf19", "scanner": "scanner-primary", "fingerprint": "6619d540195cd4d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-151777bac5d3dbb5", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/routers/cron.py:19"}, "properties": {"repobilityId": "d493c13e0a490be3", "scanner": "scanner-primary", "fingerprint": "151777bac5d3dbb5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f42491d3e4e93bed", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/routers/debug_key_flow.py:213"}, "properties": {"repobilityId": "67135c179d141de0", "scanner": "scanner-primary", "fingerprint": "f42491d3e4e93bed", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7e3bf9821711c982", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/routers/internal.py:178"}, "properties": {"repobilityId": "e1e2cc613cee820d", "scanner": "scanner-primary", "fingerprint": "7e3bf9821711c982", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c67767ddaa37dd12", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/routers/exchange.py:109"}, "properties": {"repobilityId": "b057f71d631e8f46", "scanner": "scanner-primary", "fingerprint": "c67767ddaa37dd12", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d475265e8170bc3e", "level": "none", "message": {"text": "Commented-code block (9 lines) in analytics-service/routers/match.py:72"}, "properties": {"repobilityId": "dac715db05c8cd9c", "scanner": "scanner-primary", "fingerprint": "d475265e8170bc3e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f046b24bc2f28c30", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/services/dateday.py:32"}, "properties": {"repobilityId": "a8da7893ecbdd949", "scanner": "scanner-primary", "fingerprint": "f046b24bc2f28c30", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-35a285e0f73fd04e", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/services/analytics_runner.py:75"}, "properties": {"repobilityId": "35852e4622d807dc", "scanner": "scanner-primary", "fingerprint": "35a285e0f73fd04e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dc6dd5ff5fda70d5", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/services/audit.py:67"}, "properties": {"repobilityId": "b811c9e68f177a15", "scanner": "scanner-primary", "fingerprint": "dc6dd5ff5fda70d5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3c7bbb7725cfe83e", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/services/allocator_positions.py:49"}, "properties": {"repobilityId": "e8fafdf1c68fa228", "scanner": "scanner-primary", "fingerprint": "3c7bbb7725cfe83e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c17f1c9567117887", "level": "none", "message": {"text": "Commented-code block (8 lines) in analytics-service/services/portfolio_optimizer.py:18"}, "properties": {"repobilityId": "8ea8fdf4cd0de4e6", "scanner": "scanner-primary", "fingerprint": "c17f1c9567117887", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cb38eba79894ac66", "level": "none", "message": {"text": "Commented-code block (9 lines) in analytics-service/services/transforms.py:105"}, "properties": {"repobilityId": "3528749733fde7bf", "scanner": "scanner-primary", "fingerprint": "cb38eba79894ac66", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6657489e5e8e130f", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/services/portfolio_metrics.py:266"}, "properties": {"repobilityId": "b70c8cc1e39cf722", "scanner": "scanner-primary", "fingerprint": "6657489e5e8e130f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-92d39907160b7d2a", "level": "none", "message": {"text": "Commented-code block (9 lines) in analytics-service/services/redact.py:71"}, "properties": {"repobilityId": "6829083180ef5d73", "scanner": "scanner-primary", "fingerprint": "92d39907160b7d2a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-72cd0cd8b9dc3e55", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/services/funding_fetch.py:72"}, "properties": {"repobilityId": "445881e3b59fb689", "scanner": "scanner-primary", "fingerprint": "72cd0cd8b9dc3e55", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-79e1253aef543624", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/services/equity_reconstruction.py:65"}, "properties": {"repobilityId": "59ca11652422c194", "scanner": "scanner-primary", "fingerprint": "79e1253aef543624", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ddd3621f3826bc3", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/services/rate_limit.py:24"}, "properties": {"repobilityId": "459dc98bd874215b", "scanner": "scanner-primary", "fingerprint": "3ddd3621f3826bc3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5ae17169147b0a7e", "level": "none", "message": {"text": "Commented-code block (11 lines) in analytics-service/services/metrics.py:15"}, "properties": {"repobilityId": "280f09ce1d3adbdf", "scanner": "scanner-primary", "fingerprint": "5ae17169147b0a7e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2b425be4cb058618", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/services/match_engine.py:45"}, "properties": {"repobilityId": "89afc0ae904e687b", "scanner": "scanner-primary", "fingerprint": "2b425be4cb058618", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a8da7a74d49ab231", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/services/csv_validator.py:39"}, "properties": {"repobilityId": "95281ffe4f4f9cbd", "scanner": "scanner-primary", "fingerprint": "a8da7a74d49ab231", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bbcbf9a3b51b473d", "level": "none", "message": {"text": "Commented-code block (8 lines) in analytics-service/services/encryption.py:101"}, "properties": {"repobilityId": "47b7288901658e6f", "scanner": "scanner-primary", "fingerprint": "bbcbf9a3b51b473d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0bb029b312dc13a2", "level": "none", "message": {"text": "Commented-code block (10 lines) in analytics-service/services/bridge_scoring.py:47"}, "properties": {"repobilityId": "b7736c13bc2d7c10", "scanner": "scanner-primary", "fingerprint": "0bb029b312dc13a2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e5cce80dd7c3d71f", "level": "none", "message": {"text": "Commented-code block (10 lines) in analytics-service/services/geo_block.py:67"}, "properties": {"repobilityId": "047ae2a9668cbc8e", "scanner": "scanner-primary", "fingerprint": "e5cce80dd7c3d71f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c4060705c3ef1fb2", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/services/closed_sets.py:89"}, "properties": {"repobilityId": "8712faa0354879e4", "scanner": "scanner-primary", "fingerprint": "c4060705c3ef1fb2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-106fa99d8fdacb39", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/services/key_permissions.py:42"}, "properties": {"repobilityId": "e2e90f257966d47e", "scanner": "scanner-primary", "fingerprint": "106fa99d8fdacb39", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fc14ca7c4cda2ded", "level": "none", "message": {"text": "Commented-code block (11 lines) in analytics-service/services/logging_config.py:168"}, "properties": {"repobilityId": "7951e761a8833c37", "scanner": "scanner-primary", "fingerprint": "fc14ca7c4cda2ded", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5206db0e43ae804d", "level": "none", "message": {"text": "Commented-code block (10 lines) in analytics-service/services/exchange.py:21"}, "properties": {"repobilityId": "8c48d653245d88e1", "scanner": "scanner-primary", "fingerprint": "5206db0e43ae804d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5ab21270aa854a21", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/services/match_eval.py:90"}, "properties": {"repobilityId": "5597f8ae7a385d08", "scanner": "scanner-primary", "fingerprint": "5ab21270aa854a21", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3a1bd914d78a76c1", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/services/job_worker.py:57"}, "properties": {"repobilityId": "3137eaf5856b3d88", "scanner": "scanner-primary", "fingerprint": "3a1bd914d78a76c1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-77e757ddab1cd068", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/services/feedback_engine.py:86"}, "properties": {"repobilityId": "2bb91cb60b57f09c", "scanner": "scanner-primary", "fingerprint": "77e757ddab1cd068", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-08129524de23c4c1", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/services/feature_flags.py:48"}, "properties": {"repobilityId": "9b07065ccf4fde58", "scanner": "scanner-primary", "fingerprint": "08129524de23c4c1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1a81a512b974247b", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/services/portfolio_risk.py:68"}, "properties": {"repobilityId": "6cfc24b4c1766ab2", "scanner": "scanner-primary", "fingerprint": "1a81a512b974247b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-329bb50245a8ae37", "level": "none", "message": {"text": "Commented-code block (8 lines) in analytics-service/services/position_reconstruction.py:42"}, "properties": {"repobilityId": "30e1e9f10f539f0e", "scanner": "scanner-primary", "fingerprint": "329bb50245a8ae37", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e54195984545a30d", "level": "none", "message": {"text": "Commented-code block (7 lines) in analytics-service/services/simulator_scoring.py:109"}, "properties": {"repobilityId": "69847618b3db48d4", "scanner": "scanner-primary", "fingerprint": "e54195984545a30d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8f75dbc88818bd44", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/services/db.py:25"}, "properties": {"repobilityId": "e1b562f92c93ffff", "scanner": "scanner-primary", "fingerprint": "8f75dbc88818bd44", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6ee1bc07a02f9986", "level": "note", "message": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/fingerprint.py:62"}, "properties": {"repobilityId": "662c407914a2deea", "scanner": "scanner-primary", "fingerprint": "6ee1bc07a02f9986", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d1a0f571b3eb62ee", "level": "note", "message": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/bybit.py:89"}, "properties": {"repobilityId": "eaef721efce3cafe", "scanner": "scanner-primary", "fingerprint": "d1a0f571b3eb62ee", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a362ff6155faa03e", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/services/ingestion/__init__.py:87"}, "properties": {"repobilityId": "f6f01826b14629cd", "scanner": "scanner-primary", "fingerprint": "a362ff6155faa03e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-02f6fcda136bf1cb", "level": "note", "message": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/okx.py:12"}, "properties": {"repobilityId": "f23a3fef5aa031a6", "scanner": "scanner-primary", "fingerprint": "02f6fcda136bf1cb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b8c2b260955420d0", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/services/ingestion/adapter.py:77"}, "properties": {"repobilityId": "555e497ef4da8120", "scanner": "scanner-primary", "fingerprint": "b8c2b260955420d0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ff36a08f85f037c8", "level": "note", "message": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/csv_adapter.py:218"}, "properties": {"repobilityId": "d65cd09308aecde2", "scanner": "scanner-primary", "fingerprint": "ff36a08f85f037c8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-868392f3ed578423", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/services/ingestion/csv_adapter.py:46"}, "properties": {"repobilityId": "4486c8e90e5dbbfd", "scanner": "scanner-primary", "fingerprint": "868392f3ed578423", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-94bee0950c06beac", "level": "none", "message": {"text": "Commented-code block (5 lines) in analytics-service/services/ingestion/long_fetch.py:116"}, "properties": {"repobilityId": "de33b0660f53e403", "scanner": "scanner-primary", "fingerprint": "94bee0950c06beac", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-58210e41653a3acd", "level": "note", "message": {"text": "Legacy-named symbol `compute_fingerprint_v1` in analytics-service/services/ingestion/binance.py:123"}, "properties": {"repobilityId": "5e0f63922159a90a", "scanner": "scanner-primary", "fingerprint": "58210e41653a3acd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-982be15c172c1897", "level": "none", "message": {"text": "Commented-code block (6 lines) in analytics-service/services/ingestion/binance.py:77"}, "properties": {"repobilityId": "6c070f9f2960960f", "scanner": "scanner-primary", "fingerprint": "982be15c172c1897", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-92d5d4fe46f4df34", "level": "none", "message": {"text": "Commented-code block (5 lines) in e2e/demo-public.spec.ts:50"}, "properties": {"repobilityId": "d0f2bf7b107c7f6e", "scanner": "scanner-primary", "fingerprint": "92d5d4fe46f4df34", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-49fd99f96b687f7a", "level": "none", "message": {"text": "Commented-code block (12 lines) in e2e/for-quants-onboarding.spec.ts:184"}, "properties": {"repobilityId": "c2323bee2996a6db", "scanner": "scanner-primary", "fingerprint": "49fd99f96b687f7a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d1b70ff7b3555a65", "level": "none", "message": {"text": "Commented-code block (5 lines) in e2e/wizard-axe.spec.ts:64"}, "properties": {"repobilityId": "71b6a0124c836b49", "scanner": "scanner-primary", "fingerprint": "d1b70ff7b3555a65", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d3a7220087ccd642", "level": "none", "message": {"text": "Commented-code block (19 lines) in e2e/match-queue.spec.ts:14"}, "properties": {"repobilityId": "a965412f9725c8c5", "scanner": "scanner-primary", "fingerprint": "d3a7220087ccd642", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6591ff4bf58b864c", "level": "none", "message": {"text": "Commented-code block (8 lines) in e2e/discovery-axe.spec.ts:55"}, "properties": {"repobilityId": "6c18b9b6b2735107", "scanner": "scanner-primary", "fingerprint": "6591ff4bf58b864c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2314c7d049f1f031", "level": "none", "message": {"text": "Commented-code block (5 lines) in e2e/onboarding-banner-smoke.spec.ts:49"}, "properties": {"repobilityId": "a1edd66fdafb2749", "scanner": "scanner-primary", "fingerprint": "2314c7d049f1f031", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ecf6506daa21e6e6", "level": "note", "message": {"text": "Legacy-named symbol `strategy_v2` in e2e/strategy-v2-axe.spec.ts:44"}, "properties": {"repobilityId": "0ffc4a8d58321fa9", "scanner": "scanner-primary", "fingerprint": "ecf6506daa21e6e6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1fbdb12aa79683d2", "level": "none", "message": {"text": "Commented-code block (11 lines) in e2e/discovery-sparkline-regression.spec.ts:105"}, "properties": {"repobilityId": "e0ce45994e5523d1", "scanner": "scanner-primary", "fingerprint": "1fbdb12aa79683d2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-51d0278bf60000f0", "level": "none", "message": {"text": "Commented-code block (5 lines) in e2e/csv-upload-flow.spec.ts:172"}, "properties": {"repobilityId": "9588d3b24c176834", "scanner": "scanner-primary", "fingerprint": "51d0278bf60000f0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6923d77ae69f4b77", "level": "none", "message": {"text": "Commented-code block (7 lines) in e2e/demo-founder-view.spec.ts:49"}, "properties": {"repobilityId": "db1562b13ce485d0", "scanner": "scanner-primary", "fingerprint": "6923d77ae69f4b77", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-864d56c61b7df4ff", "level": "none", "message": {"text": "Commented-code block (10 lines) in e2e/discovery-prefs-isolation.spec.ts:64"}, "properties": {"repobilityId": "78f098305836e7cf", "scanner": "scanner-primary", "fingerprint": "864d56c61b7df4ff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f3b8805586050b1d", "level": "none", "message": {"text": "Commented-code block (5 lines) in e2e/strategy-v2-partial-data.spec.ts:134"}, "properties": {"repobilityId": "e90678dbd92f024b", "scanner": "scanner-primary", "fingerprint": "f3b8805586050b1d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2c915d20769e9dc1", "level": "note", "message": {"text": "Legacy-named symbol `strategy_v2` in e2e/strategy-v2-chart-parity.spec.ts:66"}, "properties": {"repobilityId": "91a4735d01d7b2a8", "scanner": "scanner-primary", "fingerprint": "2c915d20769e9dc1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-76b883bcbd82eaa1", "level": "none", "message": {"text": "Commented-code block (10 lines) in e2e/strategy-v2-chart-parity.spec.ts:37"}, "properties": {"repobilityId": "2ff657a4c08bcabb", "scanner": "scanner-primary", "fingerprint": "76b883bcbd82eaa1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f374c85fe71ce39c", "level": "none", "message": {"text": "Commented-code block (5 lines) in e2e/discovery-watchlist.spec.ts:87"}, "properties": {"repobilityId": "e4bbdb97912f4b6f", "scanner": "scanner-primary", "fingerprint": "f374c85fe71ce39c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-369d6183c86a5111", "level": "none", "message": {"text": "Commented-code block (6 lines) in e2e/mandate-form.spec.ts:156"}, "properties": {"repobilityId": "d0e7cc9efa39cc0a", "scanner": "scanner-primary", "fingerprint": "369d6183c86a5111", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e260a4cedc3fa11a", "level": "none", "message": {"text": "Commented-code block (6 lines) in e2e/portfolio-pdf-demo.spec.ts:101"}, "properties": {"repobilityId": "30c5b2b979192a4e", "scanner": "scanner-primary", "fingerprint": "e260a4cedc3fa11a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa633943a6167773", "level": "none", "message": {"text": "Commented-code block (8 lines) in e2e/security-page.spec.ts:97"}, "properties": {"repobilityId": "db39edab91e46cfe", "scanner": "scanner-primary", "fingerprint": "aa633943a6167773", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e9b4f759b85f7e3b", "level": "note", "message": {"text": "Legacy-named symbol `quantalyze_wizard_state_v1` in e2e/wizard-hydration-probe.spec.ts:148"}, "properties": {"repobilityId": "01ffeb23f4026e49", "scanner": "scanner-primary", "fingerprint": "e9b4f759b85f7e3b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6449cb45d0850ba5", "level": "none", "message": {"text": "Commented-code block (6 lines) in e2e/wizard-hydration-probe.spec.ts:42"}, "properties": {"repobilityId": "b9a92e1a1beaf010", "scanner": "scanner-primary", "fingerprint": "6449cb45d0850ba5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4270000e74b59a3d", "level": "none", "message": {"text": "Commented-code block (5 lines) in e2e/discovery-hide-examples-default.spec.ts:40"}, "properties": {"repobilityId": "3014b894ad434ac1", "scanner": "scanner-primary", "fingerprint": "4270000e74b59a3d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a344be273a856bf2", "level": "note", "message": {"text": "Legacy-named symbol `strategy_v2` in e2e/strategy-v2-keyboard.spec.ts:70"}, "properties": {"repobilityId": "50f8ea2c6ca87aa2", "scanner": "scanner-primary", "fingerprint": "a344be273a856bf2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-841dea6e3d81538f", "level": "none", "message": {"text": "Commented-code block (13 lines) in e2e/strategy-v2-keyboard.spec.ts:40"}, "properties": {"repobilityId": "e6b3e36619b9bdde", "scanner": "scanner-primary", "fingerprint": "841dea6e3d81538f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1303b57a8fabe503", "level": "none", "message": {"text": "Commented-code block (10 lines) in e2e/onboarding-funnel.spec.ts:118"}, "properties": {"repobilityId": "201cfbe1e41af45c", "scanner": "scanner-primary", "fingerprint": "1303b57a8fabe503", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7ab24c46f779a5e5", "level": "none", "message": {"text": "Commented-code block (8 lines) in e2e/admin-csv-status-axe.spec.ts:58"}, "properties": {"repobilityId": "8b93bf5b548e6875", "scanner": "scanner-primary", "fingerprint": "7ab24c46f779a5e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e95af626137654e8", "level": "none", "message": {"text": "Commented-code block (5 lines) in e2e/helpers/seed-test-project.ts:82"}, "properties": {"repobilityId": "27f710dbeb7fa1fd", "scanner": "scanner-primary", "fingerprint": "e95af626137654e8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2f398bac3c1c9045", "level": "none", "message": {"text": "Commented-code block (9 lines) in e2e/helpers/login.ts:38"}, "properties": {"repobilityId": "ea4881207076c9ca", "scanner": "scanner-primary", "fingerprint": "2f398bac3c1c9045", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e5f1624c66850566", "level": "none", "message": {"text": "Commented-code block (6 lines) in e2e/helpers/cleanup-test-project.ts:33"}, "properties": {"repobilityId": "a747fe6f29427af6", "scanner": "scanner-primary", "fingerprint": "e5f1624c66850566", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6af648a07c4f5617", "level": "note", "message": {"text": "72 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "f5b46f215a507c37", "scanner": "scanner-primary", "fingerprint": "6af648a07c4f5617", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "592fc7b7944f86a7", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "98f6814eebfbe521", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "d95af39f3b1620f5", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "add3bc4a44362654", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "2072ea87422fa61f", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "2ad7224a88f2bf38", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "59cfd2e26c0ed4b7", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "dae11e24f23ec3be", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-a28c91ebe6f1b148", "level": "error", "message": {"text": "FastAPI POST `portfolio_simulator` without auth dependency \u2014 analytics-service/routers/simulator.py:231"}, "properties": {"repobilityId": "f4665c60e3cb8788", "scanner": "scanner-primary", "fingerprint": "a28c91ebe6f1b148", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/simulator.py"}, "region": {"startLine": 231}}}]}, {"ruleId": "scanner-7b0c9a645d7c01d1", "level": "error", "message": {"text": "FastAPI POST `portfolio_analytics` without auth dependency \u2014 analytics-service/routers/portfolio.py:1529"}, "properties": {"repobilityId": "8a360eaeeceb33af", "scanner": "scanner-primary", "fingerprint": "7b0c9a645d7c01d1", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/portfolio.py"}, "region": {"startLine": 1529}}}]}, {"ruleId": "scanner-a07d7636500f36f7", "level": "error", "message": {"text": "FastAPI POST `portfolio_optimizer` without auth dependency \u2014 analytics-service/routers/portfolio.py:1589"}, "properties": {"repobilityId": "e156be2f3251436e", "scanner": "scanner-primary", "fingerprint": "a07d7636500f36f7", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/portfolio.py"}, "region": {"startLine": 1589}}}]}, {"ruleId": "scanner-1b3d86fb6ea1c571", "level": "error", "message": {"text": "FastAPI POST `portfolio_bridge` without auth dependency \u2014 analytics-service/routers/portfolio.py:1849"}, "properties": {"repobilityId": "d22d97dc392a408f", "scanner": "scanner-primary", "fingerprint": "1b3d86fb6ea1c571", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/portfolio.py"}, "region": {"startLine": 1849}}}]}, {"ruleId": "scanner-01b458dd9048ad91", "level": "error", "message": {"text": "FastAPI POST `verify_strategy` without auth dependency \u2014 analytics-service/routers/portfolio.py:2144"}, "properties": {"repobilityId": "a37a5f03c9252c22", "scanner": "scanner-primary", "fingerprint": "01b458dd9048ad91", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/portfolio.py"}, "region": {"startLine": 2144}}}]}, {"ruleId": "scanner-45d9ad1a958b9348", "level": "error", "message": {"text": "FastAPI POST `csv_validate` without auth dependency \u2014 analytics-service/routers/csv.py:56"}, "properties": {"repobilityId": "b8fba4c7d0595f02", "scanner": "scanner-primary", "fingerprint": "45d9ad1a958b9348", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/csv.py"}, "region": {"startLine": 56}}}]}, {"ruleId": "scanner-af5143fc018cf10f", "level": "error", "message": {"text": "FastAPI POST `compute_analytics` without auth dependency \u2014 analytics-service/routers/analytics.py:15"}, "properties": {"repobilityId": "681b364525b12580", "scanner": "scanner-primary", "fingerprint": "af5143fc018cf10f", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/analytics.py"}, "region": {"startLine": 15}}}]}, {"ruleId": "scanner-89c0c91ee2fa865d", "level": "error", "message": {"text": "FastAPI POST `process_key` without auth dependency \u2014 analytics-service/routers/process_key.py:338"}, "properties": {"repobilityId": "0b3a4a99c265e2d2", "scanner": "scanner-primary", "fingerprint": "89c0c91ee2fa865d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/process_key.py"}, "region": {"startLine": 338}}}]}, {"ruleId": "scanner-ef834b035984cc71", "level": "error", "message": {"text": "FastAPI POST `cron_sync` without auth dependency \u2014 analytics-service/routers/cron.py:555"}, "properties": {"repobilityId": "56c74738c5c66ec1", "scanner": "scanner-primary", "fingerprint": "ef834b035984cc71", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/cron.py"}, "region": {"startLine": 555}}}]}, {"ruleId": "scanner-5ad39f065bdcf289", "level": "error", "message": {"text": "FastAPI POST `validate_key` without auth dependency \u2014 analytics-service/routers/debug_key_flow.py:113"}, "properties": {"repobilityId": "50b75840e8fc1c7c", "scanner": "scanner-primary", "fingerprint": "5ad39f065bdcf289", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/debug_key_flow.py"}, "region": {"startLine": 113}}}]}, {"ruleId": "scanner-53f7e6012ccff108", "level": "error", "message": {"text": "FastAPI POST `encrypt_key` without auth dependency \u2014 analytics-service/routers/debug_key_flow.py:159"}, "properties": {"repobilityId": "bffcdee8e8ea7b6f", "scanner": "scanner-primary", "fingerprint": "53f7e6012ccff108", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/debug_key_flow.py"}, "region": {"startLine": 159}}}]}, {"ruleId": "scanner-be5486d2af71759e", "level": "error", "message": {"text": "FastAPI POST `fetch_trades` without auth dependency \u2014 analytics-service/routers/debug_key_flow.py:196"}, "properties": {"repobilityId": "f55cb8ce909b51fb", "scanner": "scanner-primary", "fingerprint": "be5486d2af71759e", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/debug_key_flow.py"}, "region": {"startLine": 196}}}]}, {"ruleId": "scanner-2fb7042fea89193a", "level": "error", "message": {"text": "FastAPI POST `get_key_permissions` without auth dependency \u2014 analytics-service/routers/internal.py:126"}, "properties": {"repobilityId": "0c0cf719cd972821", "scanner": "scanner-primary", "fingerprint": "2fb7042fea89193a", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/internal.py"}, "region": {"startLine": 126}}}]}, {"ruleId": "scanner-5a54a19269d777c1", "level": "error", "message": {"text": "FastAPI POST `validate_key` without auth dependency \u2014 analytics-service/routers/exchange.py:25"}, "properties": {"repobilityId": "e6b7aeeea17c92c9", "scanner": "scanner-primary", "fingerprint": "5a54a19269d777c1", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/exchange.py"}, "region": {"startLine": 25}}}]}, {"ruleId": "scanner-72ce61fdcf25808b", "level": "error", "message": {"text": "FastAPI POST `encrypt_key` without auth dependency \u2014 analytics-service/routers/exchange.py:75"}, "properties": {"repobilityId": "2ca97c59abcfca6a", "scanner": "scanner-primary", "fingerprint": "72ce61fdcf25808b", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/exchange.py"}, "region": {"startLine": 75}}}]}, {"ruleId": "scanner-3e21b9b3e904c96d", "level": "error", "message": {"text": "FastAPI POST `fetch_trades` without auth dependency \u2014 analytics-service/routers/exchange.py:88"}, "properties": {"repobilityId": "71e9299114a65a8f", "scanner": "scanner-primary", "fingerprint": "3e21b9b3e904c96d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/exchange.py"}, "region": {"startLine": 88}}}]}, {"ruleId": "scanner-caed0bd1311a51a7", "level": "error", "message": {"text": "FastAPI POST `recompute` without auth dependency \u2014 analytics-service/routers/match.py:1619"}, "properties": {"repobilityId": "904f3be6788857d1", "scanner": "scanner-primary", "fingerprint": "caed0bd1311a51a7", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/match.py"}, "region": {"startLine": 1619}}}]}, {"ruleId": "scanner-a92cf7137ffcf58b", "level": "error", "message": {"text": "FastAPI POST `cron_recompute` without auth dependency \u2014 analytics-service/routers/match.py:1829"}, "properties": {"repobilityId": "edb9d5027b873f42", "scanner": "scanner-primary", "fingerprint": "a92cf7137ffcf58b", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "analytics-service/routers/match.py"}, "region": {"startLine": 1829}}}]}, {"ruleId": "scanner-3ea280c4782abe00", "level": "error", "message": {"text": "Dangling fetch: GET /x (tools/eslint-plugin-quantalyze/tests/no-raw-localstorage.test.ts:26)"}, "properties": {"repobilityId": "3d8324bf9a7c7595", "scanner": "scanner-primary", "fingerprint": "3ea280c4782abe00", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-1da3c1caf4516b80", "level": "error", "message": {"text": "Dangling fetch: POST /api/for-quants-lead (src/app/for-quants/RequestCallModal.tsx:140)"}, "properties": {"repobilityId": "bc0e3c5b652587c3", "scanner": "scanner-primary", "fingerprint": "1da3c1caf4516b80", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-8d7d0bdaf6007fb8", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/partner-import (src/app/(dashboard)/admin/partner-import/page.tsx:61)"}, "properties": {"repobilityId": "ce0b7afec32c5d18", "scanner": "scanner-primary", "fingerprint": "8d7d0bdaf6007fb8", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2168cb6371ae4491", "level": "error", "message": {"text": "Dangling fetch: GET /api/me/audit-log/export (src/app/(dashboard)/profile/components/AuditLogSubsection.tsx:35)"}, "properties": {"repobilityId": "d66ae02b78410062", "scanner": "scanner-primary", "fingerprint": "2168cb6371ae4491", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-512c0515dfeb3787", "level": "error", "message": {"text": "Dangling fetch: POST /api/for-quants-lead (src/app/(dashboard)/strategies/new/wizard/DesktopGate.tsx:42)"}, "properties": {"repobilityId": "b4e37562dcc9ef9d", "scanner": "scanner-primary", "fingerprint": "512c0515dfeb3787", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-82ed8afd7a196f49", "level": "error", "message": {"text": "Dangling fetch: DELETE /api/strategies/draft/${strategyId} (src/app/(dashboard)/strategies/new/wizard/WizardClient.tsx:470)"}, "properties": {"repobilityId": "b20b8c4dc7e4bf70", "scanner": "scanner-primary", "fingerprint": "82ed8afd7a196f49", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-4fdad195bc9d8f94", "level": "error", "message": {"text": "Dangling fetch: POST /api/strategies/csv-validate (src/app/(dashboard)/strategies/new/wizard/steps/CsvUploadStep.tsx:266)"}, "properties": {"repobilityId": "6f8aa3225d2d58c2", "scanner": "scanner-primary", "fingerprint": "4fdad195bc9d8f94", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-b21bebab78845b41", "level": "error", "message": {"text": "Dangling fetch: POST /api/strategies/finalize-wizard (src/app/(dashboard)/strategies/new/wizard/steps/SubmitStep.tsx:74)"}, "properties": {"repobilityId": "c5ca33ff8837e606", "scanner": "scanner-primary", "fingerprint": "b21bebab78845b41", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-36526c6f5c48d342", "level": "error", "message": {"text": "Dangling fetch: POST /api/strategies/create-with-key (src/app/(dashboard)/strategies/new/wizard/steps/ConnectKeyStep.tsx:137)"}, "properties": {"repobilityId": "b39245a9753d1abd", "scanner": "scanner-primary", "fingerprint": "36526c6f5c48d342", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d4fc6dcc385c1899", "level": "error", "message": {"text": "Dangling fetch: POST /api/strategies/csv-finalize (src/app/(dashboard)/strategies/new/wizard/steps/CsvSubmitStep.tsx:98)"}, "properties": {"repobilityId": "617b572ca6f63921", "scanner": "scanner-primary", "fingerprint": "d4fc6dcc385c1899", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-96b3b77d3933a141", "level": "error", "message": {"text": "Dangling fetch: POST /api/keys/sync (src/app/(dashboard)/strategies/new/wizard/steps/SyncPreviewStep.tsx:207)"}, "properties": {"repobilityId": "6ea11211b0977ae6", "scanner": "scanner-primary", "fingerprint": "96b3b77d3933a141", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-463f283de24ca3a5", "level": "error", "message": {"text": "Dangling fetch: GET /api/bridge/outcome/${outcome.id}/curves (src/app/(dashboard)/allocations/widgets/outcomes/OutcomesWidget.tsx:369)"}, "properties": {"repobilityId": "f57319c3f4ba0549", "scanner": "scanner-primary", "fingerprint": "463f283de24ca3a5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f7eefe0899c554b9", "level": "error", "message": {"text": "Dangling fetch: GET /api/bridge/outcome/{id}/curves (src/app/(dashboard)/allocations/widgets/outcomes/outcomes.test.tsx:435)"}, "properties": {"repobilityId": "a3f4ba64cdedba6e", "scanner": "scanner-primary", "fingerprint": "f7eefe0899c554b9", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d2af4e83d39ddee2", "level": "error", "message": {"text": "Dangling fetch: PUT /api/preferences (src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:82)"}, "properties": {"repobilityId": "b73ed347929a873e", "scanner": "scanner-primary", "fingerprint": "d2af4e83d39ddee2", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-369eaf316f93e4c0", "level": "error", "message": {"text": "Dangling fetch: PUT /api/preferences (src/app/(dashboard)/allocations/components/MandateQuickSetCard.tsx:93)"}, "properties": {"repobilityId": "03d3b0592cb84b88", "scanner": "scanner-primary", "fingerprint": "369eaf316f93e4c0", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-cfbff1b8c768ff5d", "level": "error", "message": {"text": "Dangling fetch: POST /api/bridge/outcome/dismiss (src/app/(dashboard)/allocations/components/BridgeOutcomeBanner.tsx:36)"}, "properties": {"repobilityId": "ac0b6c90c62c93c2", "scanner": "scanner-primary", "fingerprint": "cfbff1b8c768ff5d", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d8a87ae584a686ef", "level": "error", "message": {"text": "Dangling fetch: POST /api/allocator/scenario/commit (src/app/(dashboard)/allocations/components/ScenarioCommitDrawer.tsx:524)"}, "properties": {"repobilityId": "b40086e44764675b", "scanner": "scanner-primary", "fingerprint": "d8a87ae584a686ef", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-0906e3606b15e705", "level": "error", "message": {"text": "Dangling fetch: GET /api/alerts/critical?portfolio_id=${encodeURIComponent(portfolioId)} (src/app/(dashboard)/allocations/components/AlertBanner.tsx:37)"}, "properties": {"repobilityId": "c1975a21a77d2a28", "scanner": "scanner-primary", "fingerprint": "0906e3606b15e705", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-47c8b5efe5144662", "level": "error", "message": {"text": "Dangling fetch: GET /api/strategies/browse (src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:69)"}, "properties": {"repobilityId": "b6d68bdbf7d07317", "scanner": "scanner-primary", "fingerprint": "47c8b5efe5144662", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-7652bbd22e161be8", "level": "error", "message": {"text": "Dangling fetch: GET /api/strategies/browse (src/app/(dashboard)/allocations/components/StrategyBrowseDrawer.tsx:160)"}, "properties": {"repobilityId": "2d9ac78005b0a790", "scanner": "scanner-primary", "fingerprint": "7652bbd22e161be8", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-9f185434a3118346", "level": "error", "message": {"text": "Dangling fetch: GET /api/notes?scope_kind=holding&scope_ref=${encodeURIComponent(scope_ref)} (src/app/(dashboard)/allocations/components/HoldingDetail.tsx:90)"}, "properties": {"repobilityId": "cdcc2e2500035579", "scanner": "scanner-primary", "fingerprint": "9f185434a3118346", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-c83a93749292e19b", "level": "error", "message": {"text": "Dangling fetch: POST /api/attestation (src/components/legal/AccreditedInvestorGate.tsx:30)"}, "properties": {"repobilityId": "c71896dc4c7856d4", "scanner": "scanner-primary", "fingerprint": "c83a93749292e19b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-fb1545779e9eacad", "level": "error", "message": {"text": "Dangling fetch: POST /api/keys/validate-and-encrypt (src/components/strategy/ApiKeyManager.tsx:137)"}, "properties": {"repobilityId": "3173a791b40bbf27", "scanner": "scanner-primary", "fingerprint": "fb1545779e9eacad", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-0a5107dad6cdb117", "level": "error", "message": {"text": "Dangling fetch: POST /api/keys/sync (src/components/strategy/ApiKeyManager.tsx:188)"}, "properties": {"repobilityId": "2c2400047df9fa69", "scanner": "scanner-primary", "fingerprint": "0a5107dad6cdb117", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-b20e78b9f9a730f5", "level": "error", "message": {"text": "Dangling fetch: POST /api/keys/sync (src/components/strategy/ApiKeyManager.tsx:251)"}, "properties": {"repobilityId": "c569dd5ace263996", "scanner": "scanner-primary", "fingerprint": "b20e78b9f9a730f5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-eac7ef81ff2409d5", "level": "error", "message": {"text": "Dangling fetch: POST /api/keys/validate-and-encrypt (src/components/strategy/StrategyForm.tsx:103)"}, "properties": {"repobilityId": "b2a381fcc46e2c2e", "scanner": "scanner-primary", "fingerprint": "eac7ef81ff2409d5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-3cfb1fdbdc26235e", "level": "error", "message": {"text": "Dangling fetch: POST /api/intro (src/components/strategy/RequestIntroButton.tsx:93)"}, "properties": {"repobilityId": "b7cda4ac754b51b8", "scanner": "scanner-primary", "fingerprint": "3cfb1fdbdc26235e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-50e277bed9a8a8a2", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/notify-submission (src/components/strategy/StrategyActions.tsx:41)"}, "properties": {"repobilityId": "6b78cb0707856e66", "scanner": "scanner-primary", "fingerprint": "50e277bed9a8a8a2", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6cfb78cc4ec27f0c", "level": "error", "message": {"text": "Dangling fetch: POST /api/intro-response (src/components/strategy/PendingIntros.tsx:61)"}, "properties": {"repobilityId": "f60c1fcec3e82cd8", "scanner": "scanner-primary", "fingerprint": "6cfb78cc4ec27f0c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a91f078c44f5c9ae", "level": "error", "message": {"text": "Dangling fetch: PUT /api/watchlist/${strategyId} (src/components/strategy/StarToggle.tsx:63)"}, "properties": {"repobilityId": "e42f2c9ec13c45ac", "scanner": "scanner-primary", "fingerprint": "a91f078c44f5c9ae", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6d60774a425d273b", "level": "error", "message": {"text": "Dangling fetch: GET /api/notes?scope_kind=bridge_outcome&scope_ref=${encodeURIComponent(outcomeId)} (src/components/notes/BridgeOutcomeNoteSection.tsx:49)"}, "properties": {"repobilityId": "de3b79ebe9c393a4", "scanner": "scanner-primary", "fingerprint": "6d60774a425d273b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-763587e0b6f96593", "level": "error", "message": {"text": "Dangling fetch: GET /api/notes?scope_kind=holding&scope_ref=${encodeURIComponent(scope_ref)} (src/components/notes/HoldingNoteRow.tsx:158)"}, "properties": {"repobilityId": "22907b54ed308276", "scanner": "scanner-primary", "fingerprint": "763587e0b6f96593", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d796fb353cde26b4", "level": "error", "message": {"text": "Dangling fetch: PATCH /api/notes (src/components/notes/useNoteAutoSave.ts:74)"}, "properties": {"repobilityId": "1109571ebc13558d", "scanner": "scanner-primary", "fingerprint": "d796fb353cde26b4", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-c0b1f8dbbf24f6e1", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/for-quants-leads/process (src/components/admin/ForQuantsLeadsTable.tsx:66)"}, "properties": {"repobilityId": "29c9ded44cd16a0e", "scanner": "scanner-primary", "fingerprint": "c0b1f8dbbf24f6e1", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2d78c1ebe287768a", "level": "error", "message": {"text": "Dangling fetch: GET /api/admin/match/eval?${params.toString()} (src/components/admin/MatchEvalDashboard.tsx:59)"}, "properties": {"repobilityId": "25efbfc108312911", "scanner": "scanner-primary", "fingerprint": "2d78c1ebe287768a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-9aa86c12a30cd6e0", "level": "error", "message": {"text": "Dangling fetch: GET /api/admin/match/allocators (src/components/admin/MatchQueueIndex.tsx:51)"}, "properties": {"repobilityId": "7dec903f57e1f3ad", "scanner": "scanner-primary", "fingerprint": "9aa86c12a30cd6e0", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-7c930003d5fe7313", "level": "error", "message": {"text": "Dangling fetch: GET /api/admin/match/kill-switch (src/components/admin/MatchQueueIndex.tsx:52)"}, "properties": {"repobilityId": "4700a25e6ddfd912", "scanner": "scanner-primary", "fingerprint": "7c930003d5fe7313", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-3f93c34993dbdffb", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/match/kill-switch (src/components/admin/MatchQueueIndex.tsx:146)"}, "properties": {"repobilityId": "77a59355a6d11152", "scanner": "scanner-primary", "fingerprint": "3f93c34993dbdffb", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-8f98268542b6777f", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/match/kill-switch (src/components/admin/MatchQueueIndex.tsx:216)"}, "properties": {"repobilityId": "162b7d06635fc9de", "scanner": "scanner-primary", "fingerprint": "8f98268542b6777f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2f97da1df3d8a7a5", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/allocators/${allocatorId}/holdings (src/components/admin/SendIntroPanel.tsx:44)"}, "properties": {"repobilityId": "6030ba2dd51c95f0", "scanner": "scanner-primary", "fingerprint": "2f97da1df3d8a7a5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-055afd0456692bfc", "level": "error", "message": {"text": "Dangling fetch: PUT /api/admin/match/preferences/${allocatorId} (src/components/admin/PreferencesPanel.tsx:143)"}, "properties": {"repobilityId": "21d5b674292813d0", "scanner": "scanner-primary", "fingerprint": "055afd0456692bfc", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a42fa0cfd47ac710", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/users/${encodeURIComponent(targetUserId)}/roles (src/components/admin/UserRolesPanel.tsx:97)"}, "properties": {"repobilityId": "9afff868db474ca2", "scanner": "scanner-primary", "fingerprint": "a42fa0cfd47ac710", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-73661c2f28e41de2", "level": "error", "message": {"text": "Dangling fetch: GET /api/admin/compute-jobs?${params.toString()} (src/components/admin/ComputeJobsTable.tsx:94)"}, "properties": {"repobilityId": "50dbaa48bc6ba7c1", "scanner": "scanner-primary", "fingerprint": "73661c2f28e41de2", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2305a548fc67362a", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/intro-request (src/components/admin/AdminTabs.tsx:187)"}, "properties": {"repobilityId": "cabc8149510cbdec", "scanner": "scanner-primary", "fingerprint": "2305a548fc67362a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-4cd38436bd13db7f", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/intro-request (src/components/admin/AdminTabs.tsx:314)"}, "properties": {"repobilityId": "670f3d0e736bf693", "scanner": "scanner-primary", "fingerprint": "4cd38436bd13db7f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-52a983f6b6e00352", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/strategy-review (src/components/admin/AdminTabs.tsx:363)"}, "properties": {"repobilityId": "25e3a3935a81bf3e", "scanner": "scanner-primary", "fingerprint": "52a983f6b6e00352", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-87a78a7757f71db4", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/strategy-review (src/components/admin/AdminTabs.tsx:386)"}, "properties": {"repobilityId": "aae76e9a86ce9700", "scanner": "scanner-primary", "fingerprint": "87a78a7757f71db4", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d2fb3d3656b56812", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/allocator-approve (src/components/admin/AdminTabs.tsx:564)"}, "properties": {"repobilityId": "3bdff3461b949dba", "scanner": "scanner-primary", "fingerprint": "d2fb3d3656b56812", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-df00c8e51c9a8039", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/manager-approve (src/components/admin/AdminTabs.tsx:612)"}, "properties": {"repobilityId": "4a2975f1156304b7", "scanner": "scanner-primary", "fingerprint": "df00c8e51c9a8039", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-46754c3235027de1", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/deletion-requests/${encodeURIComponent(requestId)}/approve (src/components/admin/DeletionRequestActions.tsx:49)"}, "properties": {"repobilityId": "6c836947ed30139d", "scanner": "scanner-primary", "fingerprint": "46754c3235027de1", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d126c1f4b49aacc7", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/deletion-requests/${encodeURIComponent(requestId)}/reject (src/components/admin/DeletionRequestActions.tsx:82)"}, "properties": {"repobilityId": "ddfeec0e5ba42e94", "scanner": "scanner-primary", "fingerprint": "d126c1f4b49aacc7", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-76864955593abb43", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/match/recompute (src/components/admin/AllocatorMatchQueue.tsx:218)"}, "properties": {"repobilityId": "a13a000dbe52b1f5", "scanner": "scanner-primary", "fingerprint": "76864955593abb43", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2716c7156adfd318", "level": "error", "message": {"text": "Dangling fetch: POST /api/admin/match/decisions (src/components/admin/AllocatorMatchQueue.tsx:240)"}, "properties": {"repobilityId": "7f674c769d799a00", "scanner": "scanner-primary", "fingerprint": "2716c7156adfd318", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6be05ca09e04376f", "level": "error", "message": {"text": "Dangling fetch: POST /api/account/deletion-request (src/components/auth/DeleteAccountButton.tsx:20)"}, "properties": {"repobilityId": "8f9b02808df59068", "scanner": "scanner-primary", "fingerprint": "6be05ca09e04376f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-7c8d8a5227dcf732", "level": "error", "message": {"text": "Dangling fetch: POST /api/allocator/holdings/sync (src/components/exchanges/AllocatorExchangeManager.tsx:336)"}, "properties": {"repobilityId": "63c3f03d7c181404", "scanner": "scanner-primary", "fingerprint": "7c8d8a5227dcf732", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-ee00cdd03be3f824", "level": "error", "message": {"text": "Dangling fetch: POST /api/allocator/holdings/sync (src/components/exchanges/AllocatorExchangeManager.tsx:457)"}, "properties": {"repobilityId": "70f3280c64ad4bb4", "scanner": "scanner-primary", "fingerprint": "ee00cdd03be3f824", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-622681d899e32f6d", "level": "error", "message": {"text": "Dangling fetch: POST /api/keys/validate-and-encrypt (src/components/exchanges/AllocatorExchangeManager.tsx:529)"}, "properties": {"repobilityId": "ad822edfc5359211", "scanner": "scanner-primary", "fingerprint": "622681d899e32f6d", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6c96d41c70945b0a", "level": "error", "message": {"text": "Dangling fetch: POST /api/allocator/holdings/sync (src/components/exchanges/AllocatorExchangeManager.tsx:598)"}, "properties": {"repobilityId": "edde85ab3623f002", "scanner": "scanner-primary", "fingerprint": "6c96d41c70945b0a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-e3bc730924cd7eef", "level": "error", "message": {"text": "Dangling fetch: POST /api/intro (src/components/portfolio/ReplacementCard.tsx:63)"}, "properties": {"repobilityId": "c25abbc8c2e75dab", "scanner": "scanner-primary", "fingerprint": "e3bc730924cd7eef", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-4a71a786aeaab452", "level": "error", "message": {"text": "Dangling fetch: POST /api/portfolio-documents (src/components/portfolio/DocumentUpload.tsx:54)"}, "properties": {"repobilityId": "7a493fe3c04c7422", "scanner": "scanner-primary", "fingerprint": "4a71a786aeaab452", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2a5c35839fbda5b2", "level": "error", "message": {"text": "Dangling fetch: PATCH /api/portfolio-alerts (src/components/portfolio/AlertsList.tsx:34)"}, "properties": {"repobilityId": "636cdcce82e1e830", "scanner": "scanner-primary", "fingerprint": "2a5c35839fbda5b2", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-3c147f1048a1849e", "level": "error", "message": {"text": "Dangling fetch: POST /api/bridge (src/components/portfolio/ReplacementPanel.tsx:40)"}, "properties": {"repobilityId": "30c0bddb1c678f56", "scanner": "scanner-primary", "fingerprint": "3c147f1048a1849e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-05008dd4d277b281", "level": "error", "message": {"text": "Dangling fetch: PUT /api/preferences (src/components/mandate/useMandateAutoSave.ts:272)"}, "properties": {"repobilityId": "581711f68668c943", "scanner": "scanner-primary", "fingerprint": "05008dd4d277b281", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-08a2b11680bb34f6", "level": "error", "message": {"text": "Dangling fetch: POST /api/bridge/outcome (src/lib/bridge-outcome-schema.ts:133)"}, "properties": {"repobilityId": "63e42d9bf588ed64", "scanner": "scanner-primary", "fingerprint": "08a2b11680bb34f6", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-9e4349fb0898e50d", "level": "error", "message": {"text": "Dangling fetch: POST /api/match/decisions/holding (src/lib/bridge/send-intro.ts:48)"}, "properties": {"repobilityId": "574097cf45a901f5", "scanner": "scanner-primary", "fingerprint": "9e4349fb0898e50d", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-376d99cf5133a805", "level": "error", "message": {"text": "Dangling fetch: POST https://api.supabase.com/v1/projects/${SUPABASE_PROJECT_REF}/database/query (src/lib/test-helpers/live-db.ts:212)"}, "properties": {"repobilityId": "855fff94f32ce7d9", "scanner": "scanner-primary", "fingerprint": "376d99cf5133a805", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-25ec50988fdabaab", "level": "error", "message": {"text": "Dangling fetch: POST https://api.resend.com/emails (supabase/functions/notify-admin/index.ts:66)"}, "properties": {"repobilityId": "8384e1e7c26985bf", "scanner": "scanner-primary", "fingerprint": "25ec50988fdabaab", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d67a0b9e0df99024", "level": "note", "message": {"text": "Unused endpoint: POST /portfolio-analytics"}, "properties": {"repobilityId": "db564abe2ec9ebd5", "scanner": "scanner-primary", "fingerprint": "d67a0b9e0df99024", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-904d96436832b62b", "level": "note", "message": {"text": "Unused endpoint: POST /portfolio-bridge"}, "properties": {"repobilityId": "44d5e340b4b0bb61", "scanner": "scanner-primary", "fingerprint": "904d96436832b62b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-588ecbccf8cf018d", "level": "note", "message": {"text": "Unused endpoint: POST /csv/validate"}, "properties": {"repobilityId": "1763698c96e6b11a", "scanner": "scanner-primary", "fingerprint": "588ecbccf8cf018d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-bbb2e2272a2093df", "level": "note", "message": {"text": "Unused endpoint: POST /compute-analytics"}, "properties": {"repobilityId": "7229041d2037b752", "scanner": "scanner-primary", "fingerprint": "bbb2e2272a2093df", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-7a009b1a56794f45", "level": "note", "message": {"text": "Unused endpoint: POST /"}, "properties": {"repobilityId": "a8a901e5ad26a1dc", "scanner": "scanner-primary", "fingerprint": "7a009b1a56794f45", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c3ef16c771384b7f", "level": "note", "message": {"text": "Unused endpoint: POST /cron-sync"}, "properties": {"repobilityId": "8b65f45fcf8d35b5", "scanner": "scanner-primary", "fingerprint": "c3ef16c771384b7f", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-34c0472a1f1fafe5", "level": "note", "message": {"text": "Unused endpoint: POST /validate"}, "properties": {"repobilityId": "a7420e69f672add1", "scanner": "scanner-primary", "fingerprint": "34c0472a1f1fafe5", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-8867c729ef22c5c6", "level": "note", "message": {"text": "Unused endpoint: POST /encrypt"}, "properties": {"repobilityId": "18722860c79aa174", "scanner": "scanner-primary", "fingerprint": "8867c729ef22c5c6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-98df2496a876f86d", "level": "note", "message": {"text": "Unused endpoint: POST /fetch-trades"}, "properties": {"repobilityId": "57e0daacbe651976", "scanner": "scanner-primary", "fingerprint": "98df2496a876f86d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-6e92b5d1b67138c7", "level": "note", "message": {"text": "Unused endpoint: POST /validate-key"}, "properties": {"repobilityId": "ab3b2d1785aaefbf", "scanner": "scanner-primary", "fingerprint": "6e92b5d1b67138c7", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e9c491232396db09", "level": "note", "message": {"text": "Unused endpoint: POST /encrypt-key"}, "properties": {"repobilityId": "e07554fb9181978f", "scanner": "scanner-primary", "fingerprint": "e9c491232396db09", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-0a3fc3bb4cbb87d4", "level": "note", "message": {"text": "Unused endpoint: POST /recompute"}, "properties": {"repobilityId": "d99282f06926ec0e", "scanner": "scanner-primary", "fingerprint": "0a3fc3bb4cbb87d4", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-008be858a84b3d28", "level": "note", "message": {"text": "Unused endpoint: GET /eval"}, "properties": {"repobilityId": "67fd092671fd19b2", "scanner": "scanner-primary", "fingerprint": "008be858a84b3d28", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b4dfe9ba6846362f", "level": "note", "message": {"text": "Unused endpoint: POST /cron-recompute"}, "properties": {"repobilityId": "94d1c1a15c8a8c11", "scanner": "scanner-primary", "fingerprint": "b4dfe9ba6846362f", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}]}]}