{"version": "2.1.0", "$schema": "https://json.schemastore.org/sarif-2.1.0.json", "runs": [{"tool": {"driver": {"name": "Repobility", "informationUri": "https://repobility.com", "rules": [{"id": "scanner-bead75b0f9233e05", "name": "No API endpoints detected", "shortDescription": {"text": "No API endpoints detected"}, "fullDescription": {"text": "The scanner did not find FastAPI/Flask/Express/NestJS/GraphQL/gRPC routes. If this repo exposes APIs, the framework may be unsupported."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4907154981037793", "name": "Stray `console.log` in TS/JS \u2014 scripts/smoke-slc350-embed.ts:19", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/smoke-slc350-embed.ts:19"}, "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-0d664600d2c8da58", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/brand/BrandProfileForm.tsx:208", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/brand/BrandProfileForm.tsx:208"}, "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-313add9846fc6ae0", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 src/components/brand/Section3Personas.tsx:33", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 src/components/brand/Section3Personas.tsx:33"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-165ae132134f7881", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 src/components/brand/Section11ProofPoints.tsx:36", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 src/components/brand/Section11ProofPoints.tsx:36"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-eba0f5e9a6351c98", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/pitch/PitchesTab.tsx:87", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/pitch/PitchesTab.tsx:87"}, "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-132d125e8182cc5b", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/assets/AssetCard.tsx:122", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/assets/AssetCard.tsx:122"}, "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-724a44c9b4d3e6f3", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/assets/ImagePicker.tsx:68", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/assets/ImagePicker.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-fdc4e1f952bf5d00", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/assets/LinkedinAdsCsvImport.tsx:234", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/assets/LinkedinAdsCsvImport.tsx:234"}, "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-7780c4b37f843600", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/icp/IcpList.tsx:79", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/icp/IcpList.tsx:79"}, "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-4ca0597738d5cb93", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/campaign/CampaignCard.tsx:162", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/campaign/CampaignCard.tsx:162"}, "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-19e20586ac09f51c", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/admin/SuppressionList.tsx:231", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/admin/SuppressionList.tsx:231"}, "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-4a81be846b3de943", "name": "\"active\" state uses light bg in a dark theme \u2014 src/components/scoring-rules/ScoringRuleList.tsx:121", "shortDescription": {"text": "\"active\" state uses light bg in a dark theme \u2014 src/components/scoring-rules/ScoringRuleList.tsx:121"}, "fullDescription": {"text": "A ternary like `active ? 'bg-white' : '...'` (or bg-gray-100/200) on a dark theme produces jarring white pills. Use a dark-emphasized active state instead \u2014 border + ring or slightly brighter dark bg. Example: `active ? 'bg-gray-800 border-gray-500 ring-1 ring-blue-500/30' : '\u2026'`.\n\nWhy: P-E in CHECKLIST.md \u2014 light bg in a dark theme is a class of regression.\nRule id: fq.active-light-bg"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b3595ecff7e12c05", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/segment/SegmentList.tsx:90", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/segment/SegmentList.tsx:90"}, "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-4aaec6d4d79c4055", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/builder/DocUpload.tsx:163", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/builder/DocUpload.tsx:163"}, "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-cc1370392ab5d23c", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/distribution-agent/PlanReviewCard.tsx:100", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/distribution-agent/PlanReviewCard.tsx:100"}, "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-42d44735e0122ebb", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/distribution-agent/ToolCallStreamCard.tsx:74", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/distribution-agent/ToolCallStreamCard.tsx:74"}, "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-5343133f5c7537ee", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/layouts/IntelligenceStudioSidebar.tsx:218", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/layouts/IntelligenceStudioSidebar.tsx:218"}, "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-3f4d31829d933c39", "name": "`truncate` class without `title=` for hover reveal \u2014 src/app/[locale]/heute/heute-client.tsx:191", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/[locale]/heute/heute-client.tsx:191"}, "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-6d03111d501e7df8", "name": "`truncate` class without `title=` for hover reveal \u2014 src/app/[locale]/heute/suggestions-block.tsx:72", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/[locale]/heute/suggestions-block.tsx:72"}, "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-3f56f62e1885d6c3", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 src/app/[locale]/setup-mcp/page.tsx:29", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 src/app/[locale]/setup-mcp/page.tsx:29"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cf4affd05c33fa9a", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 src/app/privacy/page.tsx:52", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 src/app/privacy/page.tsx:52"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-faacb7d438631dd7", "name": "Stray `console.log` in TS/JS \u2014 src/lib/logger.ts:22", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/lib/logger.ts:22"}, "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-24f8f11e77845de6", "name": "Stray `console.log` in TS/JS \u2014 src/server/distribution-agent/__tests__/integration-smoke.test.ts:86", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/server/distribution-agent/__tests__/integration-smoke.test.ts:86"}, "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-835eae4c7f17a2f8", "name": "Docker base image is tag-pinned but not digest-pinned: node:22-alpine", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: node:22-alpine"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-aa5acaa49eb8315b", "name": "Containers defined but no K8s/orchestration manifest found", "shortDescription": {"text": "Containers defined but no K8s/orchestration manifest found"}, "fullDescription": {"text": "Repo has Dockerfiles/compose but no Kubernetes/Nomad manifests. If the target deployment is K8s, the manifests may live in a separate ops repo."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-aca58e5870948743", "name": "Insecure pattern 'dangerous_innerhtml' in src/components/brand/Section3Personas.tsx:33", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in src/components/brand/Section3Personas.tsx:33"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8caf32e9f307b26b", "name": "Insecure pattern 'dangerous_innerhtml' in src/components/brand/Section11ProofPoints.tsx:36", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in src/components/brand/Section11ProofPoints.tsx:36"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a785794807426f97", "name": "Insecure pattern 'dangerous_innerhtml' in src/app/[locale]/setup-mcp/page.tsx:29", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in src/app/[locale]/setup-mcp/page.tsx:29"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-79a28bc519dca0cf", "name": "Insecure pattern 'dangerous_innerhtml' in src/app/privacy/page.tsx:52", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in src/app/privacy/page.tsx:52"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4601e3ad3bb28677", "name": "No CI/CD pipelines detected", "shortDescription": {"text": "No CI/CD pipelines detected"}, "fullDescription": {"text": "No GitHub Actions, GitLab CI, or CircleCI configs found. Without CI you can't gate deploys on tests/lints."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9d75af1ae2b39cac", "name": "Very large file: src/server/qb/__tests__/processQbPipelineRunJob.test.ts (1503 lines)", "shortDescription": {"text": "Very large file: src/server/qb/__tests__/processQbPipelineRunJob.test.ts (1503 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 5 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 202 placeholder/mock markers across 51 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-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: license, ci. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-749d4bc1bd66df5f", "name": "Agent instructions exist but release-hardening basics are missing", "shortDescription": {"text": "Agent instructions exist but release-hardening basics are missing"}, "fullDescription": {"text": "AI-coder instruction files were found, but the repo is missing license, ci. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bea357a6497a2d5d", "name": "Agent authority lacks a verifier contract: CLAUDE.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: CLAUDE.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-939358504f5dd55d", "name": "Commented-code block (5 lines) in __tests__/adapters/skeleton-interfaces.test.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in __tests__/adapters/skeleton-interfaces.test.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-114e78dc18e1cfad", "name": "Commented-code block (6 lines) in __tests__/app/api/unsubscribe.test.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in __tests__/app/api/unsubscribe.test.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-b3a153c0214f7c95", "name": "Commented-code block (9 lines) in __tests__/app/api/track/click.test.ts:5", "shortDescription": {"text": "Commented-code block (9 lines) in __tests__/app/api/track/click.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-cacf7b248e43286b", "name": "Commented-code block (5 lines) in __tests__/app/api/track/open.test.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in __tests__/app/api/track/open.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-5fa7c0de80feb5a0", "name": "Commented-code block (5 lines) in __tests__/lib/pitch/boosterSelector.test.ts:152", "shortDescription": {"text": "Commented-code block (5 lines) in __tests__/lib/pitch/boosterSelector.test.ts: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-aff7a9ad42a8b3b9", "name": "Commented-code block (8 lines) in __tests__/lib/privacy/renderPrivacyMarkdown.test.ts:3", "shortDescription": {"text": "Commented-code block (8 lines) in __tests__/lib/privacy/renderPrivacyMarkdown.test.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-82f054cf54068f2a", "name": "Commented-code block (10 lines) in __tests__/server/email/previewSendAction.test.ts:3", "shortDescription": {"text": "Commented-code block (10 lines) in __tests__/server/email/previewSendAction.test.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-9c704d52dc2c4803", "name": "Commented-code block (9 lines) in __tests__/server/email/createEmailSendAction.test.ts:3", "shortDescription": {"text": "Commented-code block (9 lines) in __tests__/server/email/createEmailSendAction.test.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-bb601335e5b7af0b", "name": "Commented-code block (5 lines) in __tests__/server/email/listEmailSendsForPitchAction.test.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in __tests__/server/email/listEmailSendsForPitchAction.test.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-fffa5b41bf4319e6", "name": "Commented-code block (7 lines) in __tests__/server/lead-research/runLeadResearchRun.test.ts:328", "shortDescription": {"text": "Commented-code block (7 lines) in __tests__/server/lead-research/runLeadResearchRun.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-a27696da2985431c", "name": "Legacy-named symbol `email_v2` in __tests__/prompts/asset/shared/few-shot-loader.test.ts:342", "shortDescription": {"text": "Legacy-named symbol `email_v2` in __tests__/prompts/asset/shared/few-shot-loader.test.ts:342"}, "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-3fa40d607f6a014e", "name": "Commented-code block (6 lines) in __tests__/migrations/003-tenant-foundation.test.ts:6", "shortDescription": {"text": "Commented-code block (6 lines) in __tests__/migrations/003-tenant-foundation.test.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-6d85f77145dd28fd", "name": "Legacy-named symbol `partner_diagnostic_v1` in scripts/qb-imitation-test/cli.mjs:9", "shortDescription": {"text": "Legacy-named symbol `partner_diagnostic_v1` in scripts/qb-imitation-test/cli.mjs: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-a6d5a4303e8a5622", "name": "Commented-code block (5 lines) in scripts/qb-imitation-test/cli.mjs:7", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/qb-imitation-test/cli.mjs: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-52ea492c1d72465f", "name": "Commented-code block (12 lines) in src/middleware.ts:3", "shortDescription": {"text": "Commented-code block (12 lines) in src/middleware.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-06855eac70c2099f", "name": "Commented-code block (6 lines) in src/adapters/linkedin-ads-csv/schema.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in src/adapters/linkedin-ads-csv/schema.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-c50c87918813b2d2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/adapters/image/__tests__/nano-banana.test.ts:2", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/adapters/image/__tests__/nano-banana.test.ts:2"}, "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-642a935cbf4ed8c3", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/adapters/image/__tests__/nano-banana-edit.test.ts:164", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/adapters/image/__tests__/nano-banana-edit.test.ts:164"}, "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-264ca63c6f21b733", "name": "Legacy-named symbol `eleven_multilingual_v2` in src/adapters/voice/elevenlabs.ts:32", "shortDescription": {"text": "Legacy-named symbol `eleven_multilingual_v2` in src/adapters/voice/elevenlabs.ts:32"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f12f37d9c548a81b", "name": "Legacy-named symbol `eleven_multilingual_v2` in src/adapters/voice/__tests__/elevenlabs.test.ts:88", "shortDescription": {"text": "Legacy-named symbol `eleven_multilingual_v2` in src/adapters/voice/__tests__/elevenlabs.test.ts:88"}, "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-4d0bf6edce743dfd", "name": "Legacy-named symbol `eleven_multilingual_v2` in src/adapters/voice/__tests__/types.test.ts:54", "shortDescription": {"text": "Legacy-named symbol `eleven_multilingual_v2` in src/adapters/voice/__tests__/types.test.ts:54"}, "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-3bd91a04a37d3e02", "name": "Commented-code block (5 lines) in src/adapters/op-self-signup/client.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/adapters/op-self-signup/client.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-ecf11929030631f8", "name": "Commented-code block (7 lines) in src/adapters/firecrawl/client.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/adapters/firecrawl/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-ab6c1b38c69aee39", "name": "Commented-code block (5 lines) in src/adapters/firecrawl/query-builder.ts:60", "shortDescription": {"text": "Commented-code block (5 lines) in src/adapters/firecrawl/query-builder.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-d2b3d18bb655bf97", "name": "Commented-code block (6 lines) in src/adapters/firecrawl/response-mapper.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/adapters/firecrawl/response-mapper.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-6acb6a281e793dc3", "name": "Commented-code block (8 lines) in src/adapters/video/brief-generator.ts:31", "shortDescription": {"text": "Commented-code block (8 lines) in src/adapters/video/brief-generator.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-f1b3aaa1e4a56595", "name": "Commented-code block (5 lines) in src/adapters/business-pipeline/status-pull.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in src/adapters/business-pipeline/status-pull.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-a3f71f8374569d44", "name": "Commented-code block (7 lines) in src/components/lead/PushToPipelineButton.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/components/lead/PushToPipelineButton.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-a5e573db7b82a7e4", "name": "Commented-code block (6 lines) in src/components/pitch/PitchSendTab.tsx:8", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/pitch/PitchSendTab.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-35d4307dc97c18cc", "name": "Commented-code block (11 lines) in src/components/pitch/SendPitchModal.tsx:3", "shortDescription": {"text": "Commented-code block (11 lines) in src/components/pitch/SendPitchModal.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-cc191107fe15fe3a", "name": "Commented-code block (5 lines) in src/components/assets/AssetSendPerformanceTab.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/assets/AssetSendPerformanceTab.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-c932a925dbb5c7ea", "name": "Commented-code block (5 lines) in src/components/assets/imageEditModal.helpers.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/assets/imageEditModal.helpers.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-930f3ea5bb9bd2e0", "name": "Commented-code block (5 lines) in src/components/assets/AssetDetail.tsx:228", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/assets/AssetDetail.tsx: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-be617c402502bb6a", "name": "Commented-code block (5 lines) in src/components/ki-workspace/KIWorkspace.tsx:4", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/ki-workspace/KIWorkspace.tsx: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-1deb3a6e717528b1", "name": "Commented-code block (9 lines) in src/components/ki-workspace/nl-builder-inline.tsx:4", "shortDescription": {"text": "Commented-code block (9 lines) in src/components/ki-workspace/nl-builder-inline.tsx: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-9d92ec6fecf85798", "name": "Commented-code block (6 lines) in src/components/ki-workspace/hooks/useVoiceCapture.ts:4", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/ki-workspace/hooks/useVoiceCapture.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-11748f17b25229b6", "name": "Commented-code block (5 lines) in src/components/ki-workspace/hooks/useReportRun.ts:4", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/ki-workspace/hooks/useReportRun.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-657ff64131e1ff52", "name": "Commented-code block (6 lines) in src/components/ki-workspace/hooks/distribution-stream-machine.ts:4", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/ki-workspace/hooks/distribution-stream-machine.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-34b2733e1e62c5eb", "name": "Commented-code block (5 lines) in src/components/ki-workspace/hooks/__tests__/useDistributionAgentStream.test.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/ki-workspace/hooks/__tests__/useDistributionAgentStream.test.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-753aec7d392aa155", "name": "Commented-code block (6 lines) in src/components/admin/knowledge/KnowledgeEditForm.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/admin/knowledge/KnowledgeEditForm.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-3b20d0a5193c49fd", "name": "Commented-code block (5 lines) in src/components/admin/knowledge/BulkImportForm.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/admin/knowledge/BulkImportForm.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-9e2304680a8a98c3", "name": "Commented-code block (5 lines) in src/components/scoring-rules/scoring-rule-form-state.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/scoring-rules/scoring-rule-form-state.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-d50f5931465418e4", "name": "Commented-code block (5 lines) in src/components/segment/SegmentRecalcScoreButton.tsx:7", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/segment/SegmentRecalcScoreButton.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-d81f8c151a7d3c5b", "name": "Commented-code block (6 lines) in src/components/builder/BlockEditor.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/builder/BlockEditor.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-0103f6951bf21b21", "name": "Commented-code block (6 lines) in src/components/builder/DocUpload.tsx:1", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/builder/DocUpload.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-d43142f9f870cbfa", "name": "Commented-code block (8 lines) in src/components/builder/useQbRunStatus.ts:3", "shortDescription": {"text": "Commented-code block (8 lines) in src/components/builder/useQbRunStatus.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-71c9c939989bcc51", "name": "Commented-code block (10 lines) in src/components/builder/QuestionEditor.tsx:3", "shortDescription": {"text": "Commented-code block (10 lines) in src/components/builder/QuestionEditor.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-41d7f6a998db9a1c", "name": "Commented-code block (10 lines) in src/components/builder/RunView.tsx:3", "shortDescription": {"text": "Commented-code block (10 lines) in src/components/builder/RunView.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-44e578edcd36879c", "name": "Commented-code block (6 lines) in src/components/builder/ConfirmEditor.tsx:6", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/builder/ConfirmEditor.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-90504c7965d6d356", "name": "Commented-code block (6 lines) in src/components/builder/WizardForm.tsx:7", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/builder/WizardForm.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-80b1c23a693f7f3f", "name": "Commented-code block (6 lines) in src/components/distribution-agent/AssetEditForm.tsx:1", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/distribution-agent/AssetEditForm.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-15a528710956ba5a", "name": "Commented-code block (5 lines) in src/components/distribution-agent/PlanReviewSection.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/distribution-agent/PlanReviewSection.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-e74b470c23f9c2b3", "name": "Commented-code block (6 lines) in src/components/distribution-agent/PlanReviewCard.tsx:1", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/distribution-agent/PlanReviewCard.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-8573035893256424", "name": "Commented-code block (5 lines) in src/components/distribution-agent/IcpEditForm.tsx:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/distribution-agent/IcpEditForm.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-b4a91a0ed69854be", "name": "Commented-code block (6 lines) in src/components/distribution-agent/CampaignCompletionStatus.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/distribution-agent/CampaignCompletionStatus.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-5ee8ce688e305f39", "name": "Commented-code block (7 lines) in src/components/layouts/IntelligenceStudioSidebarServer.tsx:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/components/layouts/IntelligenceStudioSidebarServer.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-fb9604fb4be29d47", "name": "Commented-code block (5 lines) in src/components/layouts/IntelligenceStudioSidebar.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/layouts/IntelligenceStudioSidebar.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-6867ced16d1a271b", "name": "Commented-code block (5 lines) in src/app/api/qb/doc/convert/route.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/qb/doc/convert/route.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-8a9b354eb3f80a16", "name": "Commented-code block (12 lines) in src/app/api/qb/run/[id]/export.json/route.ts:5", "shortDescription": {"text": "Commented-code block (12 lines) in src/app/api/qb/run/[id]/export.json/route.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-189a44a37503cffd", "name": "Commented-code block (6 lines) in src/app/api/qb/run/[id]/status/route.ts:10", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/qb/run/[id]/status/route.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-13d0670d4aa26d98", "name": "Commented-code block (5 lines) in src/app/api/qb/run/[id]/cancel/route.ts:10", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/qb/run/[id]/cancel/route.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-6c6ebae1e9fee618", "name": "Commented-code block (5 lines) in src/app/api/unsubscribe/route.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/unsubscribe/route.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-08fea4e913d8b811", "name": "Commented-code block (6 lines) in src/app/api/voice/transcribe/route.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/voice/transcribe/route.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-8d943372ff26e31d", "name": "Commented-code block (15 lines) in src/app/api/distribution-agent/run/[runId]/stream/route.ts:5", "shortDescription": {"text": "Commented-code block (15 lines) in src/app/api/distribution-agent/run/[runId]/stream/route.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-5026b4411d71dba2", "name": "Commented-code block (8 lines) in src/app/api/distribution-agent/run/[runId]/jobs/route.ts:6", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/api/distribution-agent/run/[runId]/jobs/route.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-e7261a4eb66682ec", "name": "Commented-code block (16 lines) in src/app/api/distribution-agent/run/[runId]/clarification/route.ts:7", "shortDescription": {"text": "Commented-code block (16 lines) in src/app/api/distribution-agent/run/[runId]/clarification/route.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-39803a5edbb34a68", "name": "Commented-code block (6 lines) in src/app/api/track/open/[token]/route.ts:10", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/track/open/[token]/route.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-dc6f19a475d17652", "name": "Commented-code block (6 lines) in src/app/api/track/click/[token]/route.ts:9", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/track/click/[token]/route.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-368d027888c9bb49", "name": "Commented-code block (5 lines) in src/app/unsubscribe/layout.tsx:7", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/unsubscribe/layout.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-582c6fd5168e95fc", "name": "Commented-code block (6 lines) in src/app/unsubscribe/[token]/UnsubscribeForm.tsx:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/unsubscribe/[token]/UnsubscribeForm.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-6081a92c68eb247d", "name": "Commented-code block (6 lines) in src/app/[locale]/leads/[id]/actions.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/[locale]/leads/[id]/actions.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-67d81a7d177e69f5", "name": "Commented-code block (6 lines) in src/app/[locale]/heute/ki-workspace-wrapper.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/[locale]/heute/ki-workspace-wrapper.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-9cbfc825f7a4fe23", "name": "Commented-code block (9 lines) in src/app/[locale]/heute/actions.ts:3", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/[locale]/heute/actions.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-6f030551574a8ccd", "name": "Commented-code block (5 lines) in src/app/[locale]/heute/page.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/[locale]/heute/page.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-e0eb95ecde023285", "name": "Commented-code block (7 lines) in src/app/[locale]/heute/suggestions-block.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/[locale]/heute/suggestions-block.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-1d6c5a91df544e67", "name": "Commented-code block (7 lines) in src/app/[locale]/heute/distribution/[runId]/distribution-client.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/[locale]/heute/distribution/[runId]/distribution-client.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-63627654e10ff4c5", "name": "Commented-code block (5 lines) in src/app/[locale]/admin/suppression/page.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/[locale]/admin/suppression/page.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-38884927c5a19949", "name": "Commented-code block (5 lines) in src/app/[locale]/scoring-rules/actions.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/[locale]/scoring-rules/actions.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-ac863d43148c519c", "name": "Commented-code block (5 lines) in src/app/[locale]/builder/new/page.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/[locale]/builder/new/page.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-7468d0c1e761b194", "name": "Commented-code block (5 lines) in src/lib/featureFlags.ts:79", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/featureFlags.ts:79"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cd4e6f331246e2be", "name": "Commented-code block (6 lines) in src/lib/__tests__/document-parser.test.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/__tests__/document-parser.test.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-b6e033a0fd56ebf1", "name": "Commented-code block (5 lines) in src/lib/brand/schema.ts:209", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/brand/schema.ts:209"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-63e992c38ece6e1a", "name": "Commented-code block (5 lines) in src/lib/email/footer-shared.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/email/footer-shared.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-43760329fe4c974e", "name": "Commented-code block (5 lines) in src/lib/email/render.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/email/render.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-5702ded4722672dd", "name": "Commented-code block (5 lines) in src/lib/i18n/detectPublicLocale.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/i18n/detectPublicLocale.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-ce5fe763ea81bb80", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/ai/whisper/local.ts:42", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/ai/whisper/local.ts:42"}, "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-e7b3f05c707db8b6", "name": "Commented-code block (10 lines) in src/lib/qb/cost-cap.ts:4", "shortDescription": {"text": "Commented-code block (10 lines) in src/lib/qb/cost-cap.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-84579a9533f56f63", "name": "Commented-code block (10 lines) in src/lib/qb/bedrock-wrapper.ts:3", "shortDescription": {"text": "Commented-code block (10 lines) in src/lib/qb/bedrock-wrapper.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-32503b43a7b22ed4", "name": "Commented-code block (5 lines) in src/lib/qb/schema.ts:4", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/qb/schema.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-508adaf6293c454d", "name": "Commented-code block (7 lines) in src/lib/qb/heal-json.ts:7", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/qb/heal-json.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-90fb70cf078b8e1a", "name": "Commented-code block (9 lines) in src/lib/qb/pipeline-engine.ts:7", "shortDescription": {"text": "Commented-code block (9 lines) in src/lib/qb/pipeline-engine.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-dc81f3755940ffff", "name": "Commented-code block (5 lines) in src/lib/qb/regenerate-helper-examples.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/qb/regenerate-helper-examples.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-1b641ff310e92dc0", "name": "Commented-code block (6 lines) in src/lib/qb/__tests__/phase-5-stil-anker.test.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/qb/__tests__/phase-5-stil-anker.test.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-ccfdbd97476cf1e5", "name": "Commented-code block (5 lines) in src/lib/qb/__tests__/phase-3-fragen.test.ts:138", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/qb/__tests__/phase-3-fragen.test.ts: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-d0bcef3d35e06050", "name": "Commented-code block (5 lines) in src/lib/qb/__tests__/phase-6-quality-validation.test.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/qb/__tests__/phase-6-quality-validation.test.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-c9816db240916499", "name": "Commented-code block (7 lines) in src/lib/qb/__tests__/regenerate-helper-examples.test.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/qb/__tests__/regenerate-helper-examples.test.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-c40b803671164885", "name": "Commented-code block (8 lines) in src/lib/qb/quality/zod-hard-gate.ts:7", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/qb/quality/zod-hard-gate.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-d83249d075a24cbe", "name": "Commented-code block (6 lines) in src/lib/qb/quality/llm-judge.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/qb/quality/llm-judge.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-636c38fc66bb5c8c", "name": "Commented-code block (5 lines) in src/lib/qb/quality/repair-architect.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/qb/quality/repair-architect.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-6e178c131572ef56", "name": "Commented-code block (5 lines) in src/lib/qb/quality/__tests__/llm-judge.test.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/qb/quality/__tests__/llm-judge.test.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-58cd8266f27de0be", "name": "Commented-code block (13 lines) in src/lib/qb/phases/phase-3-fragen.ts:228", "shortDescription": {"text": "Commented-code block (13 lines) in src/lib/qb/phases/phase-3-fragen.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-10f17ce57b1dd2da", "name": "Commented-code block (8 lines) in src/lib/qb/phases/phase-6-quality-validation.ts:3", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/qb/phases/phase-6-quality-validation.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-357d747adfe57109", "name": "Commented-code block (6 lines) in src/lib/qb/phases/phase-5-stil-anker.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/qb/phases/phase-5-stil-anker.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-b97260e66ce21762", "name": "Commented-code block (5 lines) in src/lib/qb/phases/phase-4-score-mapping.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/qb/phases/phase-4-score-mapping.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-9c6020fc631dc7ee", "name": "Commented-code block (6 lines) in src/lib/qb/export/to-op-template.test.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/qb/export/to-op-template.test.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-94aa16bd60872bf8", "name": "Commented-code block (6 lines) in src/lib/qb/export/to-op-template.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/qb/export/to-op-template.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-f5953f9dbe673af8", "name": "Commented-code block (5 lines) in src/lib/middleware/subdomainGuard.ts:40", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/middleware/subdomainGuard.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-0c86ee0c1ad53e08", "name": "Commented-code block (5 lines) in src/lib/lead/statemachine.ts:19", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/lead/statemachine.ts: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-4e7aa39f1e01fc63", "name": "Commented-code block (5 lines) in src/lib/ki-workspace/suggestions/rules/ungescorte-leads.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/ki-workspace/suggestions/rules/ungescorte-leads.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-ad6bb16c68e6d9c4", "name": "Commented-code block (5 lines) in src/lib/ki-workspace/suggestions/rules/research-run-unreviewed.test.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/ki-workspace/suggestions/rules/research-run-unreviewed.test.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-489ec0244c91202e", "name": "Commented-code block (6 lines) in src/lib/ki-workspace/reports/cron-laufe-heute.ts:6", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/ki-workspace/reports/cron-laufe-heute.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-5629d166412fb57a", "name": "Commented-code block (7 lines) in src/lib/ki-workspace/reports/_shared.ts:4", "shortDescription": {"text": "Commented-code block (7 lines) in src/lib/ki-workspace/reports/_shared.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-48fc73b80e960498", "name": "Commented-code block (5 lines) in src/lib/campaign/statemachine.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/campaign/statemachine.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-21460d9a20241c69", "name": "Commented-code block (5 lines) in src/lib/scoring/fields.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/scoring/fields.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-62ed72d021246e13", "name": "Commented-code block (6 lines) in src/lib/scoring/evaluator.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/scoring/evaluator.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-3813c1e782fa22a9", "name": "Commented-code block (9 lines) in src/lib/scoring/__tests__/evaluator.test.ts:6", "shortDescription": {"text": "Commented-code block (9 lines) in src/lib/scoring/__tests__/evaluator.test.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-8b71b704b67248a1", "name": "Commented-code block (5 lines) in src/lib/rateLimit/inMemoryWindow.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/rateLimit/inMemoryWindow.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-5d7774f2afd43f5d", "name": "Legacy-named symbol `passThroughLegacy` in src/lib/segment/filter-translation.ts:161", "shortDescription": {"text": "Legacy-named symbol `passThroughLegacy` in src/lib/segment/filter-translation.ts:161"}, "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-92c1fb015fe8156c", "name": "Commented-code block (5 lines) in src/lib/distribution-agent/plan-schema.ts:117", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/distribution-agent/plan-schema.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-c0a9a1e07bc6431b", "name": "Commented-code block (5 lines) in src/lib/privacy/clientIp.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/lib/privacy/clientIp.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-f97ab3a9221c1d41", "name": "Commented-code block (6 lines) in src/hooks/useAutoRefreshPending.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in src/hooks/useAutoRefreshPending.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-ebd168e700d9312b", "name": "Commented-code block (5 lines) in src/hooks/createPendingPoller.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/hooks/createPendingPoller.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-ab8f5142cabcf453", "name": "Commented-code block (6 lines) in src/server/asset-performance/channels.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in src/server/asset-performance/channels.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-89a4a188d466e6c9", "name": "Commented-code block (7 lines) in src/server/suppression/importCsv.ts:167", "shortDescription": {"text": "Commented-code block (7 lines) in src/server/suppression/importCsv.ts:167"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cadd216dad9e1606", "name": "Commented-code block (5 lines) in src/server/suppression/autoSuppress.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/suppression/autoSuppress.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-45abc06141a80ddf", "name": "Commented-code block (6 lines) in src/server/suppression/removeSuppression.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/server/suppression/removeSuppression.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-b62ef688751946a6", "name": "Commented-code block (12 lines) in src/server/email/preSendCheck.ts:7", "shortDescription": {"text": "Commented-code block (12 lines) in src/server/email/preSendCheck.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-a088ab9a4a877602", "name": "Commented-code block (5 lines) in src/server/email/retryEmailSendAction.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/email/retryEmailSendAction.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-f69fdc4b1dbb3a3f", "name": "Commented-code block (5 lines) in src/server/email/listEmailSendsForPitchAction.ts:4", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/email/listEmailSendsForPitchAction.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-3c888fc8ac37f48f", "name": "Commented-code block (8 lines) in src/server/email/createEmailSendAction.ts:7", "shortDescription": {"text": "Commented-code block (8 lines) in src/server/email/createEmailSendAction.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-81e3bf83ee7ac3ec", "name": "Commented-code block (7 lines) in src/server/email/applyEventToEmailSend.ts:7", "shortDescription": {"text": "Commented-code block (7 lines) in src/server/email/applyEventToEmailSend.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-e9179c1c306ca41f", "name": "Commented-code block (9 lines) in src/server/email/processEmailSendJob.ts:4", "shortDescription": {"text": "Commented-code block (9 lines) in src/server/email/processEmailSendJob.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-92a66964ee375507", "name": "Commented-code block (5 lines) in src/server/email/previewSendAction.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/email/previewSendAction.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-cff4ede7d29043bf", "name": "Commented-code block (7 lines) in src/server/qb/loadConfirmData.ts:8", "shortDescription": {"text": "Commented-code block (7 lines) in src/server/qb/loadConfirmData.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-94d39ef890d9489f", "name": "Commented-code block (21 lines) in src/server/qb/processQbPipelineRunJob.ts:9", "shortDescription": {"text": "Commented-code block (21 lines) in src/server/qb/processQbPipelineRunJob.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-d9f53601623855f1", "name": "Commented-code block (14 lines) in src/server/qb/submitWizardAction.ts:3", "shortDescription": {"text": "Commented-code block (14 lines) in src/server/qb/submitWizardAction.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-49e2ad3818a9f1a9", "name": "Commented-code block (6 lines) in src/server/qb/__tests__/processQbPipelineRunJob.test.ts:414", "shortDescription": {"text": "Commented-code block (6 lines) in src/server/qb/__tests__/processQbPipelineRunJob.test.ts:414"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-afb3783594d1a2c0", "name": "Commented-code block (7 lines) in src/server/qb/__tests__/submitWizardAction.test.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/server/qb/__tests__/submitWizardAction.test.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-bb4a73f109d0a5cd", "name": "Commented-code block (5 lines) in src/server/lead/repository.ts:330", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/lead/repository.ts:330"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f44f1e139fb08c74", "name": "Commented-code block (7 lines) in src/server/assets/versionActions.ts:62", "shortDescription": {"text": "Commented-code block (7 lines) in src/server/assets/versionActions.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-9ee95c19c70bed82", "name": "Legacy-named symbol `eleven_turbo_v2` in src/server/assets/__tests__/repository-voice.test.ts:26", "shortDescription": {"text": "Legacy-named symbol `eleven_turbo_v2` in src/server/assets/__tests__/repository-voice.test.ts:26"}, "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-d28e8f1784e667ad", "name": "Legacy-named symbol `eleven_multilingual_v2` in src/server/assets/__tests__/versionActions-bl108.test.ts:355", "shortDescription": {"text": "Legacy-named symbol `eleven_multilingual_v2` in src/server/assets/__tests__/versionActions-bl108.test.ts:355"}, "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-70c645dd5a89e94f", "name": "Commented-code block (7 lines) in src/server/assets/__tests__/queries-pickable-image-versions.test.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/server/assets/__tests__/queries-pickable-image-versions.test.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-8813c425e0bfe330", "name": "Legacy-named symbol `eleven_multilingual_v2` in src/server/assets/__tests__/voiceGeneration.test.ts:22", "shortDescription": {"text": "Legacy-named symbol `eleven_multilingual_v2` in src/server/assets/__tests__/voiceGeneration.test.ts:22"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b814a377d844875a", "name": "Commented-code block (5 lines) in src/server/campaign/updateCampaignThresholdOverride.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/campaign/updateCampaignThresholdOverride.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-4df29a16a5544e65", "name": "Commented-code block (5 lines) in src/server/lead-research/runLeadResearchRun.ts:165", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/lead-research/runLeadResearchRun.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-efd62761f613f94b", "name": "Commented-code block (5 lines) in src/server/scoring-rules/saveScoringRule.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/scoring-rules/saveScoringRule.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-3e581537961eaeba", "name": "Commented-code block (5 lines) in src/server/distribution-agent/apply-plan.ts:60", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/distribution-agent/apply-plan.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-19831ed0da21ca84", "name": "Commented-code block (6 lines) in src/server/distribution-agent/service.ts:193", "shortDescription": {"text": "Commented-code block (6 lines) in src/server/distribution-agent/service.ts:193"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d4796dabc065a509", "name": "Commented-code block (5 lines) in src/server/distribution-agent/__tests__/service.test.ts:71", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/distribution-agent/__tests__/service.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-6304487e9cd7241c", "name": "Commented-code block (5 lines) in src/server/outcomes/repository.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/outcomes/repository.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-0208ba42e3282215", "name": "Commented-code block (5 lines) in src/server/asset-generation/runImageCompose.ts:294", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/asset-generation/runImageCompose.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-92e5388d6b69f9ca", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/server/asset-generation/runImageCompose.ts:274", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/server/asset-generation/runImageCompose.ts:274"}, "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-12f66b4768c3b843", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/server/asset-generation/runImageEdit.ts:211", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/server/asset-generation/runImageEdit.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-9531f7661bb24c9b", "name": "Commented-code block (5 lines) in src/server/asset-generation/__tests__/runImageEdit.test.ts:519", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/asset-generation/__tests__/runImageEdit.test.ts:519"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-440b144af3a30a87", "name": "Legacy-named symbol `eleven_turbo_v2` in src/server/asset-generation/__tests__/runVoiceGenerationJob.test.ts:47", "shortDescription": {"text": "Legacy-named symbol `eleven_turbo_v2` in src/server/asset-generation/__tests__/runVoiceGenerationJob.test.ts:47"}, "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-f85a7abd961901ab", "name": "Commented-code block (5 lines) in src/server/knowledge/__tests__/foundationParser.test.ts:16", "shortDescription": {"text": "Commented-code block (5 lines) in src/server/knowledge/__tests__/foundationParser.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-b014246e6b0a6bcb", "name": "Legacy-named symbol `email_v2` in src/prompts/asset/shared/prompt-types.ts:82", "shortDescription": {"text": "Legacy-named symbol `email_v2` in src/prompts/asset/shared/prompt-types.ts:82"}, "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-a91f542e00765d07", "name": "Commented-code block (5 lines) in src/prompts/asset/shared/brand-context.ts:33", "shortDescription": {"text": "Commented-code block (5 lines) in src/prompts/asset/shared/brand-context.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-9a82cf7d16234d20", "name": "21 env vars used in code but missing from .env.example", "shortDescription": {"text": "21 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `AWS_REGION`, `AWS_SES_ACCESS_KEY_ID`, `AWS_SES_REGION`, `AWS_SES_SECRET_ACCESS_KEY`, `DAILY_COST_CAP_EUR`, `DISTRIBUTION_AGENT_BEDROCK_CALL_TIMEOUT_MS`, `DISTRIBUTION_AGENT_BEDROCK_LOOP_BUDGET_MS`, `DISTRIBUTION_AGENT_COST_CAP_DAILY_USD` + 13 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}}]}}, "automationDetails": {"id": "repobility/20390"}, "properties": {"repository": "Strategaize-systems/strategaize-intelligence-studio", "repoUrl": "https://github.com/Strategaize-systems/strategaize-intelligence-studio", "branch": "main"}, "results": [{"ruleId": "scanner-bead75b0f9233e05", "level": "none", "message": {"text": "No API endpoints detected"}, "properties": {"repobilityId": "0f8bb852027c38f8", "scanner": "scanner-primary", "fingerprint": "bead75b0f9233e05", "layer": "api", "severity": "info", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-4907154981037793", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/smoke-slc350-embed.ts:19"}, "properties": {"repobilityId": "955ec397f17cc06b", "scanner": "scanner-primary", "fingerprint": "4907154981037793", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0d664600d2c8da58", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/brand/BrandProfileForm.tsx:208"}, "properties": {"repobilityId": "81593348795fe913", "scanner": "scanner-primary", "fingerprint": "0d664600d2c8da58", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-313add9846fc6ae0", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 src/components/brand/Section3Personas.tsx:33"}, "properties": {"repobilityId": "5ec5de4ed728cf31", "scanner": "scanner-primary", "fingerprint": "313add9846fc6ae0", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-165ae132134f7881", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 src/components/brand/Section11ProofPoints.tsx:36"}, "properties": {"repobilityId": "55ec9557717305c2", "scanner": "scanner-primary", "fingerprint": "165ae132134f7881", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-eba0f5e9a6351c98", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/pitch/PitchesTab.tsx:87"}, "properties": {"repobilityId": "3668d6a83a0c9aa8", "scanner": "scanner-primary", "fingerprint": "eba0f5e9a6351c98", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-132d125e8182cc5b", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/assets/AssetCard.tsx:122"}, "properties": {"repobilityId": "81ceb2964528bcba", "scanner": "scanner-primary", "fingerprint": "132d125e8182cc5b", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-724a44c9b4d3e6f3", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/assets/ImagePicker.tsx:68"}, "properties": {"repobilityId": "53fe213f67c40405", "scanner": "scanner-primary", "fingerprint": "724a44c9b4d3e6f3", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-fdc4e1f952bf5d00", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/assets/LinkedinAdsCsvImport.tsx:234"}, "properties": {"repobilityId": "8a3f249d3301cddf", "scanner": "scanner-primary", "fingerprint": "fdc4e1f952bf5d00", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-7780c4b37f843600", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/icp/IcpList.tsx:79"}, "properties": {"repobilityId": "9e6a844fcfed446b", "scanner": "scanner-primary", "fingerprint": "7780c4b37f843600", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-4ca0597738d5cb93", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/campaign/CampaignCard.tsx:162"}, "properties": {"repobilityId": "19fe31ee1d1fa11c", "scanner": "scanner-primary", "fingerprint": "4ca0597738d5cb93", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-19e20586ac09f51c", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/admin/SuppressionList.tsx:231"}, "properties": {"repobilityId": "21f1c8d74502825f", "scanner": "scanner-primary", "fingerprint": "19e20586ac09f51c", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-4a81be846b3de943", "level": "note", "message": {"text": "\"active\" state uses light bg in a dark theme \u2014 src/components/scoring-rules/ScoringRuleList.tsx:121"}, "properties": {"repobilityId": "5615c4ce3ee42cd4", "scanner": "scanner-primary", "fingerprint": "4a81be846b3de943", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.active-light-bg"]}}, {"ruleId": "scanner-b3595ecff7e12c05", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/segment/SegmentList.tsx:90"}, "properties": {"repobilityId": "12580df567e78090", "scanner": "scanner-primary", "fingerprint": "b3595ecff7e12c05", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-4aaec6d4d79c4055", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/builder/DocUpload.tsx:163"}, "properties": {"repobilityId": "9ff7f92d53f856b2", "scanner": "scanner-primary", "fingerprint": "4aaec6d4d79c4055", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-cc1370392ab5d23c", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/distribution-agent/PlanReviewCard.tsx:100"}, "properties": {"repobilityId": "f1d9398402b89bb4", "scanner": "scanner-primary", "fingerprint": "cc1370392ab5d23c", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-42d44735e0122ebb", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/distribution-agent/ToolCallStreamCard.tsx:74"}, "properties": {"repobilityId": "6dde6690b5d8be9a", "scanner": "scanner-primary", "fingerprint": "42d44735e0122ebb", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-5343133f5c7537ee", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/layouts/IntelligenceStudioSidebar.tsx:218"}, "properties": {"repobilityId": "da086d2197a0dbd1", "scanner": "scanner-primary", "fingerprint": "5343133f5c7537ee", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-3f4d31829d933c39", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/[locale]/heute/heute-client.tsx:191"}, "properties": {"repobilityId": "9fa95873c69464fb", "scanner": "scanner-primary", "fingerprint": "3f4d31829d933c39", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-6d03111d501e7df8", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/app/[locale]/heute/suggestions-block.tsx:72"}, "properties": {"repobilityId": "ca4bfc2890ccb590", "scanner": "scanner-primary", "fingerprint": "6d03111d501e7df8", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-3f56f62e1885d6c3", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 src/app/[locale]/setup-mcp/page.tsx:29"}, "properties": {"repobilityId": "eb190b41ded9b485", "scanner": "scanner-primary", "fingerprint": "3f56f62e1885d6c3", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-cf4affd05c33fa9a", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 src/app/privacy/page.tsx:52"}, "properties": {"repobilityId": "ad275bde365817de", "scanner": "scanner-primary", "fingerprint": "cf4affd05c33fa9a", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-faacb7d438631dd7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/lib/logger.ts:22"}, "properties": {"repobilityId": "d91dbb6e420e1181", "scanner": "scanner-primary", "fingerprint": "faacb7d438631dd7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-24f8f11e77845de6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/server/distribution-agent/__tests__/integration-smoke.test.ts:86"}, "properties": {"repobilityId": "4d2fdb0526c4c737", "scanner": "scanner-primary", "fingerprint": "24f8f11e77845de6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-835eae4c7f17a2f8", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:22-alpine"}, "properties": {"repobilityId": "4d36e53455a05ed5", "scanner": "scanner-primary", "fingerprint": "835eae4c7f17a2f8", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Dockerfile"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-835eae4c7f17a2f8", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:22-alpine"}, "properties": {"repobilityId": "e1d34649daa99565", "scanner": "scanner-primary", "fingerprint": "835eae4c7f17a2f8", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Dockerfile"}, "region": {"startLine": 15}}}]}, {"ruleId": "scanner-835eae4c7f17a2f8", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:22-alpine"}, "properties": {"repobilityId": "666cac04d3dd1e93", "scanner": "scanner-primary", "fingerprint": "835eae4c7f17a2f8", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Dockerfile"}, "region": {"startLine": 43}}}]}, {"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-aca58e5870948743", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in src/components/brand/Section3Personas.tsx:33"}, "properties": {"repobilityId": "16ba19a019292531", "scanner": "scanner-primary", "fingerprint": "aca58e5870948743", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/components/brand/Section3Personas.tsx"}, "region": {"startLine": 33}}}]}, {"ruleId": "scanner-8caf32e9f307b26b", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in src/components/brand/Section11ProofPoints.tsx:36"}, "properties": {"repobilityId": "d0e0c97548d272f9", "scanner": "scanner-primary", "fingerprint": "8caf32e9f307b26b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/components/brand/Section11ProofPoints.tsx"}, "region": {"startLine": 36}}}]}, {"ruleId": "scanner-a785794807426f97", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in src/app/[locale]/setup-mcp/page.tsx:29"}, "properties": {"repobilityId": "5bbd2ea7cf60106e", "scanner": "scanner-primary", "fingerprint": "a785794807426f97", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/app/[locale]/setup-mcp/page.tsx"}, "region": {"startLine": 29}}}]}, {"ruleId": "scanner-79a28bc519dca0cf", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in src/app/privacy/page.tsx:52"}, "properties": {"repobilityId": "9fd200e641f75ddd", "scanner": "scanner-primary", "fingerprint": "79a28bc519dca0cf", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/app/privacy/page.tsx"}, "region": {"startLine": 52}}}]}, {"ruleId": "scanner-4601e3ad3bb28677", "level": "warning", "message": {"text": "No CI/CD pipelines detected"}, "properties": {"repobilityId": "c3ee439bce2bc51e", "scanner": "scanner-primary", "fingerprint": "4601e3ad3bb28677", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-9d75af1ae2b39cac", "level": "note", "message": {"text": "Very large file: src/server/qb/__tests__/processQbPipelineRunJob.test.ts (1503 lines)"}, "properties": {"repobilityId": "f4f22a07fd8d8937", "scanner": "scanner-primary", "fingerprint": "9d75af1ae2b39cac", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "f57b12221131ca95", "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": "1a9c057ee434de23", "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": "5529db10a83d6af3", "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": "9f2e7eada2a6bbf2", "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": "90749c51316c6491", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "note", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "29575b10c59a9729", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "e68bc77a2c6c29ee", "scanner": "scanner-primary", "fingerprint": "749d4bc1bd66df5f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "ccc8bec3a02a3b6a", "scanner": "scanner-primary", "fingerprint": "ea8f3013f588db25", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-8424db9c75e04ba4", "level": "none", "message": {"text": "Very short observed git history"}, "properties": {"repobilityId": "00daf623108bbbaf", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-bea357a6497a2d5d", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: CLAUDE.md"}, "properties": {"repobilityId": "aae72df3934829ac", "scanner": "scanner-primary", "fingerprint": "bea357a6497a2d5d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "CLAUDE.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-939358504f5dd55d", "level": "none", "message": {"text": "Commented-code block (5 lines) in __tests__/adapters/skeleton-interfaces.test.ts:1"}, "properties": {"repobilityId": "74173777f57189bd", "scanner": "scanner-primary", "fingerprint": "939358504f5dd55d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-114e78dc18e1cfad", "level": "none", "message": {"text": "Commented-code block (6 lines) in __tests__/app/api/unsubscribe.test.ts:3"}, "properties": {"repobilityId": "a3f1e48641e6d30d", "scanner": "scanner-primary", "fingerprint": "114e78dc18e1cfad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b3a153c0214f7c95", "level": "none", "message": {"text": "Commented-code block (9 lines) in __tests__/app/api/track/click.test.ts:5"}, "properties": {"repobilityId": "30977a32f817bb14", "scanner": "scanner-primary", "fingerprint": "b3a153c0214f7c95", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cacf7b248e43286b", "level": "none", "message": {"text": "Commented-code block (5 lines) in __tests__/app/api/track/open.test.ts:5"}, "properties": {"repobilityId": "ae2f1e7808fd9ed4", "scanner": "scanner-primary", "fingerprint": "cacf7b248e43286b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5fa7c0de80feb5a0", "level": "none", "message": {"text": "Commented-code block (5 lines) in __tests__/lib/pitch/boosterSelector.test.ts:152"}, "properties": {"repobilityId": "b72be1037d3f9bdd", "scanner": "scanner-primary", "fingerprint": "5fa7c0de80feb5a0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aff7a9ad42a8b3b9", "level": "none", "message": {"text": "Commented-code block (8 lines) in __tests__/lib/privacy/renderPrivacyMarkdown.test.ts:3"}, "properties": {"repobilityId": "0dd5e655de091d5c", "scanner": "scanner-primary", "fingerprint": "aff7a9ad42a8b3b9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-82f054cf54068f2a", "level": "none", "message": {"text": "Commented-code block (10 lines) in __tests__/server/email/previewSendAction.test.ts:3"}, "properties": {"repobilityId": "ed4598cb94e70fdc", "scanner": "scanner-primary", "fingerprint": "82f054cf54068f2a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9c704d52dc2c4803", "level": "none", "message": {"text": "Commented-code block (9 lines) in __tests__/server/email/createEmailSendAction.test.ts:3"}, "properties": {"repobilityId": "19cfa48cdfbe9706", "scanner": "scanner-primary", "fingerprint": "9c704d52dc2c4803", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bb601335e5b7af0b", "level": "none", "message": {"text": "Commented-code block (5 lines) in __tests__/server/email/listEmailSendsForPitchAction.test.ts:3"}, "properties": {"repobilityId": "31702d4c3add50eb", "scanner": "scanner-primary", "fingerprint": "bb601335e5b7af0b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fffa5b41bf4319e6", "level": "none", "message": {"text": "Commented-code block (7 lines) in __tests__/server/lead-research/runLeadResearchRun.test.ts:328"}, "properties": {"repobilityId": "d3d3d76d8d96d428", "scanner": "scanner-primary", "fingerprint": "fffa5b41bf4319e6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a27696da2985431c", "level": "note", "message": {"text": "Legacy-named symbol `email_v2` in __tests__/prompts/asset/shared/few-shot-loader.test.ts:342"}, "properties": {"repobilityId": "3eac176dc498a29f", "scanner": "scanner-primary", "fingerprint": "a27696da2985431c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3fa40d607f6a014e", "level": "none", "message": {"text": "Commented-code block (6 lines) in __tests__/migrations/003-tenant-foundation.test.ts:6"}, "properties": {"repobilityId": "29fe7e62d010bcff", "scanner": "scanner-primary", "fingerprint": "3fa40d607f6a014e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6d85f77145dd28fd", "level": "note", "message": {"text": "Legacy-named symbol `partner_diagnostic_v1` in scripts/qb-imitation-test/cli.mjs:9"}, "properties": {"repobilityId": "1e7abec65292c24c", "scanner": "scanner-primary", "fingerprint": "6d85f77145dd28fd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a6d5a4303e8a5622", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/qb-imitation-test/cli.mjs:7"}, "properties": {"repobilityId": "72bbea1bbda5d618", "scanner": "scanner-primary", "fingerprint": "a6d5a4303e8a5622", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-52ea492c1d72465f", "level": "none", "message": {"text": "Commented-code block (12 lines) in src/middleware.ts:3"}, "properties": {"repobilityId": "6d327b1c5f077d7d", "scanner": "scanner-primary", "fingerprint": "52ea492c1d72465f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-06855eac70c2099f", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/adapters/linkedin-ads-csv/schema.ts:1"}, "properties": {"repobilityId": "b71303566553f1c3", "scanner": "scanner-primary", "fingerprint": "06855eac70c2099f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c50c87918813b2d2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/adapters/image/__tests__/nano-banana.test.ts:2"}, "properties": {"repobilityId": "02f3a52c50b4cf98", "scanner": "scanner-primary", "fingerprint": "c50c87918813b2d2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-642a935cbf4ed8c3", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/adapters/image/__tests__/nano-banana-edit.test.ts:164"}, "properties": {"repobilityId": "23c8cf3c07196c60", "scanner": "scanner-primary", "fingerprint": "642a935cbf4ed8c3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-264ca63c6f21b733", "level": "note", "message": {"text": "Legacy-named symbol `eleven_multilingual_v2` in src/adapters/voice/elevenlabs.ts:32"}, "properties": {"repobilityId": "21f15bd53ebd6350", "scanner": "scanner-primary", "fingerprint": "264ca63c6f21b733", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f12f37d9c548a81b", "level": "note", "message": {"text": "Legacy-named symbol `eleven_multilingual_v2` in src/adapters/voice/__tests__/elevenlabs.test.ts:88"}, "properties": {"repobilityId": "92a77fa6f172de11", "scanner": "scanner-primary", "fingerprint": "f12f37d9c548a81b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4d0bf6edce743dfd", "level": "note", "message": {"text": "Legacy-named symbol `eleven_multilingual_v2` in src/adapters/voice/__tests__/types.test.ts:54"}, "properties": {"repobilityId": "026b1dd98d1db693", "scanner": "scanner-primary", "fingerprint": "4d0bf6edce743dfd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3bd91a04a37d3e02", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/adapters/op-self-signup/client.ts:5"}, "properties": {"repobilityId": "3eac07e22bd9d935", "scanner": "scanner-primary", "fingerprint": "3bd91a04a37d3e02", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ecf11929030631f8", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/adapters/firecrawl/client.ts:3"}, "properties": {"repobilityId": "0e80b84de98935ea", "scanner": "scanner-primary", "fingerprint": "ecf11929030631f8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ab6c1b38c69aee39", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/adapters/firecrawl/query-builder.ts:60"}, "properties": {"repobilityId": "0007bc8f6c4dc366", "scanner": "scanner-primary", "fingerprint": "ab6c1b38c69aee39", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d2b3d18bb655bf97", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/adapters/firecrawl/response-mapper.ts:3"}, "properties": {"repobilityId": "7103705cc8f1a7f6", "scanner": "scanner-primary", "fingerprint": "d2b3d18bb655bf97", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6acb6a281e793dc3", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/adapters/video/brief-generator.ts:31"}, "properties": {"repobilityId": "ba8c1e5c0a6baf15", "scanner": "scanner-primary", "fingerprint": "6acb6a281e793dc3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f1b3aaa1e4a56595", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/adapters/business-pipeline/status-pull.ts:6"}, "properties": {"repobilityId": "880e8200c91e328b", "scanner": "scanner-primary", "fingerprint": "f1b3aaa1e4a56595", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a3f71f8374569d44", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/components/lead/PushToPipelineButton.tsx:3"}, "properties": {"repobilityId": "ef5f8166865d6a2b", "scanner": "scanner-primary", "fingerprint": "a3f71f8374569d44", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a5e573db7b82a7e4", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/pitch/PitchSendTab.tsx:8"}, "properties": {"repobilityId": "cd128a96d33305ae", "scanner": "scanner-primary", "fingerprint": "a5e573db7b82a7e4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-35d4307dc97c18cc", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/components/pitch/SendPitchModal.tsx:3"}, "properties": {"repobilityId": "74fdb0b024259804", "scanner": "scanner-primary", "fingerprint": "35d4307dc97c18cc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cc191107fe15fe3a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/assets/AssetSendPerformanceTab.tsx:3"}, "properties": {"repobilityId": "7a219c631f459379", "scanner": "scanner-primary", "fingerprint": "cc191107fe15fe3a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c932a925dbb5c7ea", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/assets/imageEditModal.helpers.ts:3"}, "properties": {"repobilityId": "f257fbcbd2167056", "scanner": "scanner-primary", "fingerprint": "c932a925dbb5c7ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-930f3ea5bb9bd2e0", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/assets/AssetDetail.tsx:228"}, "properties": {"repobilityId": "c175e2118d0272ff", "scanner": "scanner-primary", "fingerprint": "930f3ea5bb9bd2e0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-be617c402502bb6a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/ki-workspace/KIWorkspace.tsx:4"}, "properties": {"repobilityId": "0079bfc64944e32f", "scanner": "scanner-primary", "fingerprint": "be617c402502bb6a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1deb3a6e717528b1", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/components/ki-workspace/nl-builder-inline.tsx:4"}, "properties": {"repobilityId": "fe5f7adfa80eb8ab", "scanner": "scanner-primary", "fingerprint": "1deb3a6e717528b1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9d92ec6fecf85798", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/ki-workspace/hooks/useVoiceCapture.ts:4"}, "properties": {"repobilityId": "70f64b733df16757", "scanner": "scanner-primary", "fingerprint": "9d92ec6fecf85798", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-11748f17b25229b6", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/ki-workspace/hooks/useReportRun.ts:4"}, "properties": {"repobilityId": "dd153c4b8311298f", "scanner": "scanner-primary", "fingerprint": "11748f17b25229b6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-657ff64131e1ff52", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/ki-workspace/hooks/distribution-stream-machine.ts:4"}, "properties": {"repobilityId": "ebc5c447a3be6ea6", "scanner": "scanner-primary", "fingerprint": "657ff64131e1ff52", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-34b2733e1e62c5eb", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/ki-workspace/hooks/__tests__/useDistributionAgentStream.test.ts:3"}, "properties": {"repobilityId": "2b92e35f999a20fd", "scanner": "scanner-primary", "fingerprint": "34b2733e1e62c5eb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-753aec7d392aa155", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/admin/knowledge/KnowledgeEditForm.tsx:3"}, "properties": {"repobilityId": "68edb2b54f439491", "scanner": "scanner-primary", "fingerprint": "753aec7d392aa155", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3b20d0a5193c49fd", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/admin/knowledge/BulkImportForm.tsx:3"}, "properties": {"repobilityId": "a80a92eb5ff06ca4", "scanner": "scanner-primary", "fingerprint": "3b20d0a5193c49fd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9e2304680a8a98c3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/scoring-rules/scoring-rule-form-state.ts:7"}, "properties": {"repobilityId": "712be4f937a8ab56", "scanner": "scanner-primary", "fingerprint": "9e2304680a8a98c3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d50f5931465418e4", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/segment/SegmentRecalcScoreButton.tsx:7"}, "properties": {"repobilityId": "953bfe139f31b253", "scanner": "scanner-primary", "fingerprint": "d50f5931465418e4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d81f8c151a7d3c5b", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/builder/BlockEditor.tsx:3"}, "properties": {"repobilityId": "468cc68fd4450e9d", "scanner": "scanner-primary", "fingerprint": "d81f8c151a7d3c5b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0103f6951bf21b21", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/builder/DocUpload.tsx:1"}, "properties": {"repobilityId": "361cff0dc42c6b13", "scanner": "scanner-primary", "fingerprint": "0103f6951bf21b21", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d43142f9f870cbfa", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/components/builder/useQbRunStatus.ts:3"}, "properties": {"repobilityId": "2652e844fd58f7ce", "scanner": "scanner-primary", "fingerprint": "d43142f9f870cbfa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-71c9c939989bcc51", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/components/builder/QuestionEditor.tsx:3"}, "properties": {"repobilityId": "92a404673e033348", "scanner": "scanner-primary", "fingerprint": "71c9c939989bcc51", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-41d7f6a998db9a1c", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/components/builder/RunView.tsx:3"}, "properties": {"repobilityId": "80a55685565793b1", "scanner": "scanner-primary", "fingerprint": "41d7f6a998db9a1c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-44e578edcd36879c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/builder/ConfirmEditor.tsx:6"}, "properties": {"repobilityId": "6b30d8d1a9df7abe", "scanner": "scanner-primary", "fingerprint": "44e578edcd36879c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-90504c7965d6d356", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/builder/WizardForm.tsx:7"}, "properties": {"repobilityId": "e4e246562d0b68fe", "scanner": "scanner-primary", "fingerprint": "90504c7965d6d356", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-80b1c23a693f7f3f", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/distribution-agent/AssetEditForm.tsx:1"}, "properties": {"repobilityId": "cd90cdae5011ff1c", "scanner": "scanner-primary", "fingerprint": "80b1c23a693f7f3f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-15a528710956ba5a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/distribution-agent/PlanReviewSection.tsx:3"}, "properties": {"repobilityId": "20ad9509cae38a6b", "scanner": "scanner-primary", "fingerprint": "15a528710956ba5a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e74b470c23f9c2b3", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/distribution-agent/PlanReviewCard.tsx:1"}, "properties": {"repobilityId": "9ac099c07bb4567d", "scanner": "scanner-primary", "fingerprint": "e74b470c23f9c2b3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8573035893256424", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/distribution-agent/IcpEditForm.tsx:1"}, "properties": {"repobilityId": "497f6be2526e0a02", "scanner": "scanner-primary", "fingerprint": "8573035893256424", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b4a91a0ed69854be", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/distribution-agent/CampaignCompletionStatus.tsx:3"}, "properties": {"repobilityId": "3cf315f219727b91", "scanner": "scanner-primary", "fingerprint": "b4a91a0ed69854be", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5ee8ce688e305f39", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/components/layouts/IntelligenceStudioSidebarServer.tsx:5"}, "properties": {"repobilityId": "8829f299cdcacc91", "scanner": "scanner-primary", "fingerprint": "5ee8ce688e305f39", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fb9604fb4be29d47", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/layouts/IntelligenceStudioSidebar.tsx:3"}, "properties": {"repobilityId": "0fec061d304b3ca1", "scanner": "scanner-primary", "fingerprint": "fb9604fb4be29d47", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6867ced16d1a271b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/qb/doc/convert/route.ts:3"}, "properties": {"repobilityId": "cfe693f65f84520c", "scanner": "scanner-primary", "fingerprint": "6867ced16d1a271b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8a9b354eb3f80a16", "level": "none", "message": {"text": "Commented-code block (12 lines) in src/app/api/qb/run/[id]/export.json/route.ts:5"}, "properties": {"repobilityId": "27688af6e1e30481", "scanner": "scanner-primary", "fingerprint": "8a9b354eb3f80a16", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-189a44a37503cffd", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/qb/run/[id]/status/route.ts:10"}, "properties": {"repobilityId": "1f631219bf8953da", "scanner": "scanner-primary", "fingerprint": "189a44a37503cffd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-13d0670d4aa26d98", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/qb/run/[id]/cancel/route.ts:10"}, "properties": {"repobilityId": "367a03bb41cf4059", "scanner": "scanner-primary", "fingerprint": "13d0670d4aa26d98", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6c6ebae1e9fee618", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/unsubscribe/route.ts:6"}, "properties": {"repobilityId": "73da632ab0320872", "scanner": "scanner-primary", "fingerprint": "6c6ebae1e9fee618", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-08fea4e913d8b811", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/voice/transcribe/route.ts:3"}, "properties": {"repobilityId": "c1971131e57c8a38", "scanner": "scanner-primary", "fingerprint": "08fea4e913d8b811", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8d943372ff26e31d", "level": "none", "message": {"text": "Commented-code block (15 lines) in src/app/api/distribution-agent/run/[runId]/stream/route.ts:5"}, "properties": {"repobilityId": "ce540553c73d2fb6", "scanner": "scanner-primary", "fingerprint": "8d943372ff26e31d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5026b4411d71dba2", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/api/distribution-agent/run/[runId]/jobs/route.ts:6"}, "properties": {"repobilityId": "5dd07bc3eb7edb06", "scanner": "scanner-primary", "fingerprint": "5026b4411d71dba2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e7261a4eb66682ec", "level": "none", "message": {"text": "Commented-code block (16 lines) in src/app/api/distribution-agent/run/[runId]/clarification/route.ts:7"}, "properties": {"repobilityId": "e230a637089a6b2c", "scanner": "scanner-primary", "fingerprint": "e7261a4eb66682ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-39803a5edbb34a68", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/track/open/[token]/route.ts:10"}, "properties": {"repobilityId": "3037b577e39ee455", "scanner": "scanner-primary", "fingerprint": "39803a5edbb34a68", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dc6f19a475d17652", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/track/click/[token]/route.ts:9"}, "properties": {"repobilityId": "bc9269cedec23726", "scanner": "scanner-primary", "fingerprint": "dc6f19a475d17652", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-368d027888c9bb49", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/unsubscribe/layout.tsx:7"}, "properties": {"repobilityId": "271986f85912eb19", "scanner": "scanner-primary", "fingerprint": "368d027888c9bb49", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-582c6fd5168e95fc", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/unsubscribe/[token]/UnsubscribeForm.tsx:5"}, "properties": {"repobilityId": "f70e31a9be558a44", "scanner": "scanner-primary", "fingerprint": "582c6fd5168e95fc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6081a92c68eb247d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/[locale]/leads/[id]/actions.ts:3"}, "properties": {"repobilityId": "c21ce7019ad35257", "scanner": "scanner-primary", "fingerprint": "6081a92c68eb247d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-67d81a7d177e69f5", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/[locale]/heute/ki-workspace-wrapper.tsx:3"}, "properties": {"repobilityId": "0871844266cb7416", "scanner": "scanner-primary", "fingerprint": "67d81a7d177e69f5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9cbfc825f7a4fe23", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/[locale]/heute/actions.ts:3"}, "properties": {"repobilityId": "10107cd46353dddd", "scanner": "scanner-primary", "fingerprint": "9cbfc825f7a4fe23", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6f030551574a8ccd", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/[locale]/heute/page.tsx:3"}, "properties": {"repobilityId": "00471812e5360826", "scanner": "scanner-primary", "fingerprint": "6f030551574a8ccd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e0eb95ecde023285", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/[locale]/heute/suggestions-block.tsx:3"}, "properties": {"repobilityId": "ccb38818dcda700c", "scanner": "scanner-primary", "fingerprint": "e0eb95ecde023285", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1d6c5a91df544e67", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/[locale]/heute/distribution/[runId]/distribution-client.tsx:3"}, "properties": {"repobilityId": "08b9c5a3f28bbc26", "scanner": "scanner-primary", "fingerprint": "1d6c5a91df544e67", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-63627654e10ff4c5", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/[locale]/admin/suppression/page.tsx:3"}, "properties": {"repobilityId": "1cc3951ee4f176fb", "scanner": "scanner-primary", "fingerprint": "63627654e10ff4c5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-38884927c5a19949", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/[locale]/scoring-rules/actions.ts:3"}, "properties": {"repobilityId": "14988500b762d711", "scanner": "scanner-primary", "fingerprint": "38884927c5a19949", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac863d43148c519c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/[locale]/builder/new/page.tsx:3"}, "properties": {"repobilityId": "45eed48ae487be58", "scanner": "scanner-primary", "fingerprint": "ac863d43148c519c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7468d0c1e761b194", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/featureFlags.ts:79"}, "properties": {"repobilityId": "b7eac6c136e92ae4", "scanner": "scanner-primary", "fingerprint": "7468d0c1e761b194", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cd4e6f331246e2be", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/__tests__/document-parser.test.ts:1"}, "properties": {"repobilityId": "38bd91770595374e", "scanner": "scanner-primary", "fingerprint": "cd4e6f331246e2be", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b6e033a0fd56ebf1", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/brand/schema.ts:209"}, "properties": {"repobilityId": "1724d41300728dd0", "scanner": "scanner-primary", "fingerprint": "b6e033a0fd56ebf1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-63e992c38ece6e1a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/email/footer-shared.ts:5"}, "properties": {"repobilityId": "ad543213712f3b4f", "scanner": "scanner-primary", "fingerprint": "63e992c38ece6e1a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-43760329fe4c974e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/email/render.ts:7"}, "properties": {"repobilityId": "f9908d30fe179694", "scanner": "scanner-primary", "fingerprint": "43760329fe4c974e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5702ded4722672dd", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/i18n/detectPublicLocale.ts:8"}, "properties": {"repobilityId": "55fd98c3de738a9b", "scanner": "scanner-primary", "fingerprint": "5702ded4722672dd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ce5fe763ea81bb80", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/ai/whisper/local.ts:42"}, "properties": {"repobilityId": "52b3a341c43012e8", "scanner": "scanner-primary", "fingerprint": "ce5fe763ea81bb80", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e7b3f05c707db8b6", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/lib/qb/cost-cap.ts:4"}, "properties": {"repobilityId": "2467027f2ce39b2d", "scanner": "scanner-primary", "fingerprint": "e7b3f05c707db8b6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-84579a9533f56f63", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/lib/qb/bedrock-wrapper.ts:3"}, "properties": {"repobilityId": "76fdef802469e261", "scanner": "scanner-primary", "fingerprint": "84579a9533f56f63", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-32503b43a7b22ed4", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/qb/schema.ts:4"}, "properties": {"repobilityId": "2a7ef6ecbfebca2e", "scanner": "scanner-primary", "fingerprint": "32503b43a7b22ed4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-508adaf6293c454d", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/qb/heal-json.ts:7"}, "properties": {"repobilityId": "751aac2edac3556c", "scanner": "scanner-primary", "fingerprint": "508adaf6293c454d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-90fb70cf078b8e1a", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/lib/qb/pipeline-engine.ts:7"}, "properties": {"repobilityId": "4f28186916a84970", "scanner": "scanner-primary", "fingerprint": "90fb70cf078b8e1a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dc81f3755940ffff", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/qb/regenerate-helper-examples.ts:3"}, "properties": {"repobilityId": "2bbabb629ed0e2da", "scanner": "scanner-primary", "fingerprint": "dc81f3755940ffff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1b641ff310e92dc0", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/qb/__tests__/phase-5-stil-anker.test.ts:3"}, "properties": {"repobilityId": "3ed5eb541d22b269", "scanner": "scanner-primary", "fingerprint": "1b641ff310e92dc0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ccfdbd97476cf1e5", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/qb/__tests__/phase-3-fragen.test.ts:138"}, "properties": {"repobilityId": "f1c565fcce418549", "scanner": "scanner-primary", "fingerprint": "ccfdbd97476cf1e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d0bcef3d35e06050", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/qb/__tests__/phase-6-quality-validation.test.ts:3"}, "properties": {"repobilityId": "28042dc58f59a4de", "scanner": "scanner-primary", "fingerprint": "d0bcef3d35e06050", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c9816db240916499", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/qb/__tests__/regenerate-helper-examples.test.ts:3"}, "properties": {"repobilityId": "920c15945560f284", "scanner": "scanner-primary", "fingerprint": "c9816db240916499", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c40b803671164885", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/qb/quality/zod-hard-gate.ts:7"}, "properties": {"repobilityId": "38ef5982a7d60db3", "scanner": "scanner-primary", "fingerprint": "c40b803671164885", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d83249d075a24cbe", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/qb/quality/llm-judge.ts:3"}, "properties": {"repobilityId": "c8aeddaa74e880f1", "scanner": "scanner-primary", "fingerprint": "d83249d075a24cbe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-636c38fc66bb5c8c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/qb/quality/repair-architect.ts:3"}, "properties": {"repobilityId": "77741b9ecafb9c92", "scanner": "scanner-primary", "fingerprint": "636c38fc66bb5c8c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6e178c131572ef56", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/qb/quality/__tests__/llm-judge.test.ts:3"}, "properties": {"repobilityId": "593be868eed0031f", "scanner": "scanner-primary", "fingerprint": "6e178c131572ef56", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-58cd8266f27de0be", "level": "none", "message": {"text": "Commented-code block (13 lines) in src/lib/qb/phases/phase-3-fragen.ts:228"}, "properties": {"repobilityId": "7ec5f1bf3cb69a5b", "scanner": "scanner-primary", "fingerprint": "58cd8266f27de0be", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-10f17ce57b1dd2da", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/qb/phases/phase-6-quality-validation.ts:3"}, "properties": {"repobilityId": "0578be79b3584b54", "scanner": "scanner-primary", "fingerprint": "10f17ce57b1dd2da", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-357d747adfe57109", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/qb/phases/phase-5-stil-anker.ts:3"}, "properties": {"repobilityId": "40bd7a99d80c75ac", "scanner": "scanner-primary", "fingerprint": "357d747adfe57109", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b97260e66ce21762", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/qb/phases/phase-4-score-mapping.ts:7"}, "properties": {"repobilityId": "caaaad762c0e0553", "scanner": "scanner-primary", "fingerprint": "b97260e66ce21762", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9c6020fc631dc7ee", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/qb/export/to-op-template.test.ts:3"}, "properties": {"repobilityId": "776dc1e126eb689d", "scanner": "scanner-primary", "fingerprint": "9c6020fc631dc7ee", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-94aa16bd60872bf8", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/qb/export/to-op-template.ts:3"}, "properties": {"repobilityId": "ceb4fc4921b00b46", "scanner": "scanner-primary", "fingerprint": "94aa16bd60872bf8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5953f9dbe673af8", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/middleware/subdomainGuard.ts:40"}, "properties": {"repobilityId": "38df3debbbdc3608", "scanner": "scanner-primary", "fingerprint": "f5953f9dbe673af8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0c86ee0c1ad53e08", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/lead/statemachine.ts:19"}, "properties": {"repobilityId": "c7cb4ad2d37e07fb", "scanner": "scanner-primary", "fingerprint": "0c86ee0c1ad53e08", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e7aa39f1e01fc63", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/ki-workspace/suggestions/rules/ungescorte-leads.ts:3"}, "properties": {"repobilityId": "f5763951c8116a33", "scanner": "scanner-primary", "fingerprint": "4e7aa39f1e01fc63", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad6bb16c68e6d9c4", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/ki-workspace/suggestions/rules/research-run-unreviewed.test.ts:3"}, "properties": {"repobilityId": "650119c02b11011b", "scanner": "scanner-primary", "fingerprint": "ad6bb16c68e6d9c4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-489ec0244c91202e", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/ki-workspace/reports/cron-laufe-heute.ts:6"}, "properties": {"repobilityId": "35e6f8c33919d39d", "scanner": "scanner-primary", "fingerprint": "489ec0244c91202e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5629d166412fb57a", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lib/ki-workspace/reports/_shared.ts:4"}, "properties": {"repobilityId": "266f5523779fb9c5", "scanner": "scanner-primary", "fingerprint": "5629d166412fb57a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-48fc73b80e960498", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/campaign/statemachine.ts:3"}, "properties": {"repobilityId": "4479df547cc96d2c", "scanner": "scanner-primary", "fingerprint": "48fc73b80e960498", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-21460d9a20241c69", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/scoring/fields.ts:8"}, "properties": {"repobilityId": "d613a12c7060d750", "scanner": "scanner-primary", "fingerprint": "21460d9a20241c69", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-62ed72d021246e13", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/scoring/evaluator.ts:8"}, "properties": {"repobilityId": "7a2c855d45821131", "scanner": "scanner-primary", "fingerprint": "62ed72d021246e13", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3813c1e782fa22a9", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/lib/scoring/__tests__/evaluator.test.ts:6"}, "properties": {"repobilityId": "6ed63c5ee959a94d", "scanner": "scanner-primary", "fingerprint": "3813c1e782fa22a9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8b71b704b67248a1", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/rateLimit/inMemoryWindow.ts:6"}, "properties": {"repobilityId": "a2f94bc78bab84b9", "scanner": "scanner-primary", "fingerprint": "8b71b704b67248a1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5d7774f2afd43f5d", "level": "note", "message": {"text": "Legacy-named symbol `passThroughLegacy` in src/lib/segment/filter-translation.ts:161"}, "properties": {"repobilityId": "25319331f6f3ac15", "scanner": "scanner-primary", "fingerprint": "5d7774f2afd43f5d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-92c1fb015fe8156c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/distribution-agent/plan-schema.ts:117"}, "properties": {"repobilityId": "c68217395973024a", "scanner": "scanner-primary", "fingerprint": "92c1fb015fe8156c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c0a9a1e07bc6431b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lib/privacy/clientIp.ts:3"}, "properties": {"repobilityId": "3fb8f33fbd37dc5a", "scanner": "scanner-primary", "fingerprint": "c0a9a1e07bc6431b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f97ab3a9221c1d41", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/hooks/useAutoRefreshPending.ts:1"}, "properties": {"repobilityId": "37c95765cd09666e", "scanner": "scanner-primary", "fingerprint": "f97ab3a9221c1d41", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ebd168e700d9312b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/hooks/createPendingPoller.ts:1"}, "properties": {"repobilityId": "0710def3ecf95fca", "scanner": "scanner-primary", "fingerprint": "ebd168e700d9312b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ab8f5142cabcf453", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/server/asset-performance/channels.ts:1"}, "properties": {"repobilityId": "ee82fa37494de98a", "scanner": "scanner-primary", "fingerprint": "ab8f5142cabcf453", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-89a4a188d466e6c9", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/server/suppression/importCsv.ts:167"}, "properties": {"repobilityId": "e9dc15d37e3ae536", "scanner": "scanner-primary", "fingerprint": "89a4a188d466e6c9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cadd216dad9e1606", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/suppression/autoSuppress.ts:3"}, "properties": {"repobilityId": "34252dc2b39a516f", "scanner": "scanner-primary", "fingerprint": "cadd216dad9e1606", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-45abc06141a80ddf", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/server/suppression/removeSuppression.ts:3"}, "properties": {"repobilityId": "f9548ebc0b7fa77f", "scanner": "scanner-primary", "fingerprint": "45abc06141a80ddf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b62ef688751946a6", "level": "none", "message": {"text": "Commented-code block (12 lines) in src/server/email/preSendCheck.ts:7"}, "properties": {"repobilityId": "3f398a0790237b7e", "scanner": "scanner-primary", "fingerprint": "b62ef688751946a6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a088ab9a4a877602", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/email/retryEmailSendAction.ts:3"}, "properties": {"repobilityId": "c5611bbbc57f1c9c", "scanner": "scanner-primary", "fingerprint": "a088ab9a4a877602", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f69fdc4b1dbb3a3f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/email/listEmailSendsForPitchAction.ts:4"}, "properties": {"repobilityId": "6dff029f59387980", "scanner": "scanner-primary", "fingerprint": "f69fdc4b1dbb3a3f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3c888fc8ac37f48f", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/server/email/createEmailSendAction.ts:7"}, "properties": {"repobilityId": "e31738eb3c0c4221", "scanner": "scanner-primary", "fingerprint": "3c888fc8ac37f48f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-81e3bf83ee7ac3ec", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/server/email/applyEventToEmailSend.ts:7"}, "properties": {"repobilityId": "a481bf5f1fe29649", "scanner": "scanner-primary", "fingerprint": "81e3bf83ee7ac3ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e9179c1c306ca41f", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/server/email/processEmailSendJob.ts:4"}, "properties": {"repobilityId": "ce809226b15e0081", "scanner": "scanner-primary", "fingerprint": "e9179c1c306ca41f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-92a66964ee375507", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/email/previewSendAction.ts:3"}, "properties": {"repobilityId": "088392a7023ed2c2", "scanner": "scanner-primary", "fingerprint": "92a66964ee375507", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cff4ede7d29043bf", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/server/qb/loadConfirmData.ts:8"}, "properties": {"repobilityId": "364300f75ba5c57f", "scanner": "scanner-primary", "fingerprint": "cff4ede7d29043bf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-94d39ef890d9489f", "level": "none", "message": {"text": "Commented-code block (21 lines) in src/server/qb/processQbPipelineRunJob.ts:9"}, "properties": {"repobilityId": "877bffaeb647b024", "scanner": "scanner-primary", "fingerprint": "94d39ef890d9489f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d9f53601623855f1", "level": "none", "message": {"text": "Commented-code block (14 lines) in src/server/qb/submitWizardAction.ts:3"}, "properties": {"repobilityId": "4b16080eda68caa9", "scanner": "scanner-primary", "fingerprint": "d9f53601623855f1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-49e2ad3818a9f1a9", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/server/qb/__tests__/processQbPipelineRunJob.test.ts:414"}, "properties": {"repobilityId": "d7659ebfa9efa025", "scanner": "scanner-primary", "fingerprint": "49e2ad3818a9f1a9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-afb3783594d1a2c0", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/server/qb/__tests__/submitWizardAction.test.ts:3"}, "properties": {"repobilityId": "50f6f01b53af7a77", "scanner": "scanner-primary", "fingerprint": "afb3783594d1a2c0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bb4a73f109d0a5cd", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/lead/repository.ts:330"}, "properties": {"repobilityId": "6bcdacb8aea07e72", "scanner": "scanner-primary", "fingerprint": "bb4a73f109d0a5cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f44f1e139fb08c74", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/server/assets/versionActions.ts:62"}, "properties": {"repobilityId": "01f55f6a11a5df4f", "scanner": "scanner-primary", "fingerprint": "f44f1e139fb08c74", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ee95c19c70bed82", "level": "note", "message": {"text": "Legacy-named symbol `eleven_turbo_v2` in src/server/assets/__tests__/repository-voice.test.ts:26"}, "properties": {"repobilityId": "86040b5e7fbcc085", "scanner": "scanner-primary", "fingerprint": "9ee95c19c70bed82", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d28e8f1784e667ad", "level": "note", "message": {"text": "Legacy-named symbol `eleven_multilingual_v2` in src/server/assets/__tests__/versionActions-bl108.test.ts:355"}, "properties": {"repobilityId": "105c9ef4b1c2ab76", "scanner": "scanner-primary", "fingerprint": "d28e8f1784e667ad", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-70c645dd5a89e94f", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/server/assets/__tests__/queries-pickable-image-versions.test.ts:3"}, "properties": {"repobilityId": "77a2075c34163d7f", "scanner": "scanner-primary", "fingerprint": "70c645dd5a89e94f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8813c425e0bfe330", "level": "note", "message": {"text": "Legacy-named symbol `eleven_multilingual_v2` in src/server/assets/__tests__/voiceGeneration.test.ts:22"}, "properties": {"repobilityId": "568abb7f4ab9104b", "scanner": "scanner-primary", "fingerprint": "8813c425e0bfe330", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b814a377d844875a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/campaign/updateCampaignThresholdOverride.ts:7"}, "properties": {"repobilityId": "86e0718709052a5f", "scanner": "scanner-primary", "fingerprint": "b814a377d844875a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4df29a16a5544e65", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/lead-research/runLeadResearchRun.ts:165"}, "properties": {"repobilityId": "099432b8fe42f721", "scanner": "scanner-primary", "fingerprint": "4df29a16a5544e65", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-efd62761f613f94b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/scoring-rules/saveScoringRule.ts:8"}, "properties": {"repobilityId": "63bbae12780ce626", "scanner": "scanner-primary", "fingerprint": "efd62761f613f94b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3e581537961eaeba", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/distribution-agent/apply-plan.ts:60"}, "properties": {"repobilityId": "ba5ad01a5229d7f5", "scanner": "scanner-primary", "fingerprint": "3e581537961eaeba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-19831ed0da21ca84", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/server/distribution-agent/service.ts:193"}, "properties": {"repobilityId": "138984c2653682d9", "scanner": "scanner-primary", "fingerprint": "19831ed0da21ca84", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d4796dabc065a509", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/distribution-agent/__tests__/service.test.ts:71"}, "properties": {"repobilityId": "a17b7790234885b9", "scanner": "scanner-primary", "fingerprint": "d4796dabc065a509", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6304487e9cd7241c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/outcomes/repository.ts:3"}, "properties": {"repobilityId": "00cbe3dd813f3da8", "scanner": "scanner-primary", "fingerprint": "6304487e9cd7241c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0208ba42e3282215", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/asset-generation/runImageCompose.ts:294"}, "properties": {"repobilityId": "4d8e462bd828f0e5", "scanner": "scanner-primary", "fingerprint": "0208ba42e3282215", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-92e5388d6b69f9ca", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/server/asset-generation/runImageCompose.ts:274"}, "properties": {"repobilityId": "e8f7d596e8004c43", "scanner": "scanner-primary", "fingerprint": "92e5388d6b69f9ca", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-12f66b4768c3b843", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/server/asset-generation/runImageEdit.ts:211"}, "properties": {"repobilityId": "dc0e419696660be6", "scanner": "scanner-primary", "fingerprint": "12f66b4768c3b843", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9531f7661bb24c9b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/asset-generation/__tests__/runImageEdit.test.ts:519"}, "properties": {"repobilityId": "9ca374a291bdd9f2", "scanner": "scanner-primary", "fingerprint": "9531f7661bb24c9b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-440b144af3a30a87", "level": "note", "message": {"text": "Legacy-named symbol `eleven_turbo_v2` in src/server/asset-generation/__tests__/runVoiceGenerationJob.test.ts:47"}, "properties": {"repobilityId": "98792b27d0dd626e", "scanner": "scanner-primary", "fingerprint": "440b144af3a30a87", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f85a7abd961901ab", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server/knowledge/__tests__/foundationParser.test.ts:16"}, "properties": {"repobilityId": "cfc3449696e518da", "scanner": "scanner-primary", "fingerprint": "f85a7abd961901ab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b014246e6b0a6bcb", "level": "note", "message": {"text": "Legacy-named symbol `email_v2` in src/prompts/asset/shared/prompt-types.ts:82"}, "properties": {"repobilityId": "b7d327c47fc8dbd1", "scanner": "scanner-primary", "fingerprint": "b014246e6b0a6bcb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a91f542e00765d07", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/prompts/asset/shared/brand-context.ts:33"}, "properties": {"repobilityId": "6da221b4530362a3", "scanner": "scanner-primary", "fingerprint": "a91f542e00765d07", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9a82cf7d16234d20", "level": "note", "message": {"text": "21 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "2fad2cbef136ee78", "scanner": "scanner-primary", "fingerprint": "9a82cf7d16234d20", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}]}]}