{"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-20e436d4618428a7", "name": "Possibly dead Python function: drain_stderr", "shortDescription": {"text": "Possibly dead Python function: drain_stderr"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5da9ecae6aad8bf2", "name": "Possibly dead Python function: check_robots", "shortDescription": {"text": "Possibly dead Python function: check_robots"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cfe5210bccd336fe", "name": "Possibly dead Python function: check_llms_txt", "shortDescription": {"text": "Possibly dead Python function: check_llms_txt"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0fb286c87dd00fcc", "name": "Possibly dead Python function: check_ssr", "shortDescription": {"text": "Possibly dead Python function: check_ssr"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e488d15f4b2218da", "name": "Possibly dead Python function: check_sitemap", "shortDescription": {"text": "Possibly dead Python function: check_sitemap"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4e34b757c597dc70", "name": "Possibly dead Python function: check_schema", "shortDescription": {"text": "Possibly dead Python function: check_schema"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d77ba306d031b790", "name": "Possibly dead Python function: check_links", "shortDescription": {"text": "Possibly dead Python function: check_links"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e9131baf6a9499e9", "name": "Possibly dead Python function: do_GET", "shortDescription": {"text": "Possibly dead Python function: do_GET"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-017cf43a10ba1a69", "name": "Possibly dead Python function: log_message", "shortDescription": {"text": "Possibly dead Python function: log_message"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1561a204676c5a4d", "name": "Stray `console.log` in TS/JS \u2014 credential-executor/src/cli.ts:72", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 credential-executor/src/cli.ts:72"}, "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-03bbd7f36fe8a0cb", "name": "Stray `console.log` in TS/JS \u2014 credential-executor/src/__tests__/transport.test.ts:212", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 credential-executor/src/__tests__/transport.test.ts:212"}, "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-933dbf7f9885bd39", "name": "Stray `console.log` in TS/JS \u2014 benchmarking/gateway/bench-proxy.ts:57", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 benchmarking/gateway/bench-proxy.ts:57"}, "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-c00f038b52e9f321", "name": "Stray `console.log` in TS/JS \u2014 benchmarking/gateway/bench-webhook.ts:73", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 benchmarking/gateway/bench-webhook.ts:73"}, "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-3b0fec112c8198a4", "name": "Stray `console.log` in TS/JS \u2014 apps/web/scripts/transform-daemon-spec.ts:227", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/scripts/transform-daemon-spec.ts:227"}, "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-59a9c9f570d70912", "name": "Stray `console.log` in TS/JS \u2014 apps/web/scripts/ensure-fresh-vite.ts:69", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/scripts/ensure-fresh-vite.ts:69"}, "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-fe4cf7ff45d916b2", "name": "Stray `console.log` in TS/JS \u2014 apps/web/scripts/run-tests.ts:67", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/scripts/run-tests.ts:67"}, "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-4057c05128c358a3", "name": "Stray `console.log` in TS/JS \u2014 apps/web/scripts/transform-gateway-spec.ts:91", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/scripts/transform-gateway-spec.ts:91"}, "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-e633089d7a8df7f3", "name": "Stray `console.log` in TS/JS \u2014 apps/web/src/utils/sandbox-bridge.test.ts:55", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/src/utils/sandbox-bridge.test.ts:55"}, "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-311536755b41cbc3", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/collapsible-nav-section.tsx:119", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/collapsible-nav-section.tsx:119"}, "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-67f9b7e72e3b08cd", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/dictation-overlay-page.tsx:54", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/dictation-overlay-page.tsx:54"}, "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-25ed565fd592e78c", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/components/avatar-renderer.tsx:40", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/components/avatar-renderer.tsx:40"}, "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-4b3c8c4c4c989fcf", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/sidebar-shell.tsx:94", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/sidebar-shell.tsx:94"}, "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-9bb11d8f3d06ab23", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/app-card.tsx:68", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/app-card.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-d42de03d4726b0a8", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/command-palette/command-palette-item.tsx:58", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/command-palette/command-palette-item.tsx:58"}, "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-c5cbb7cbf49a6dd1", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/pages/BundleConfirmPage.tsx:62", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/pages/BundleConfirmPage.tsx:62"}, "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-0b3bc04ff0645e74", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/managed-oauth-tab.tsx:97", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/managed-oauth-tab.tsx:97"}, "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-5400eabafb8134ac", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/system-tasks-section.tsx:6", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/system-tasks-section.tsx:62"}, "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-530e8dc114edc45d", "name": "\"active\" state uses light bg in a dark theme \u2014 apps/web/src/domains/settings/components/integration-detail-modal.tsx:276", "shortDescription": {"text": "\"active\" state uses light bg in a dark theme \u2014 apps/web/src/domains/settings/components/integration-detail-modal.tsx:276"}, "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-02afd6de1df55d87", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/schedule-row.tsx:74", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/schedule-row.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-0ec9eef05ecf8291", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/recent-runs-card.tsx:69", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/recent-runs-card.tsx:69"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e6ec5f90df289e58", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/assistant-picker.tsx:48", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/assistant-picker.tsx:48"}, "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-03d02e1fa58c6eee", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/your-own-oauth-tab.tsx:365", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/your-own-oauth-tab.tsx:365"}, "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-75e555dbb7497260", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/timezone-picker.tsx:265", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/timezone-picker.tsx:265"}, "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-680b77bf5f1fe5b9", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/integration-row.tsx:117", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/integration-row.tsx:117"}, "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-e0935aeb7c3b0fe2", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/device-row.tsx:32", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/device-row.tsx:32"}, "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-4b03da6b97a6dc37", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/trust-rules/trust-rules-mo", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/trust-rules/trust-rules-modal.tsx:225"}, "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-391feb0b26fc2b7a", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/panels/assistant-lifecycle", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/panels/assistant-lifecycle-panel.tsx:252"}, "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-d4eccb07ca8a5d36", "name": "Stray `console.log` in TS/JS \u2014 apps/web/src/domains/settings/components/billing-usage/billing-usage-chart.stories.tsx:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/src/domains/settings/components/billing-usage/billing-usage-chart.stories.tsx:127"}, "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-e6341427b0f41753", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/keyboard-shortcuts/keyboard-shortcuts", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/keyboard-shortcuts/keyboard-shortcuts-page.tsx:69"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0af79250d1581b59", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/pages/archive-page.tsx:73", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/pages/archive-page.tsx:73"}, "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-7c305751218f6242", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/pages/bookmarks-page.tsx:82", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/pages/bookmarks-page.tsx:82"}, "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-642121c192ef81c1", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/pages/notifications-page.tsx:224", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/pages/notifications-page.tsx:224"}, "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-3561256085f9dc60", "name": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/library/library-page.tsx:15", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/library/library-page.tsx:15"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1d2512e9a3d27d56", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/library/components/library-document-card.tsx:3", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/library/components/library-document-card.tsx:39"}, "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-b1c3cbd01c52d1b7", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/library/components/library-app-card.tsx:121", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/library/components/library-app-card.tsx:121"}, "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-981d6f1feea1e825", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/intelligence-layout.tsx:58", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/intelligence-layout.tsx:58"}, "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-2ce0b54bdf39a31e", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/plugin-detail-page.tsx:303", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/plugin-detail-page.tsx:303"}, "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-01ec275b9a7d9482", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/constellation-view/nod", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/constellation-view/node-popover.tsx:51"}, "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-6b3d8ae983119712", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/skills/skill-detail-mo", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/skills/skill-detail-mobile.tsx:125"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a6084e0d8519e2c7", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/skills/skill-row.tsx:5", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/skills/skill-row.tsx:55"}, "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-2bd4981032153004", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/skills/skill-detail.ts", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/skills/skill-detail.tsx:209"}, "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-80dace493f24e7fb", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/plugins/catalog-row.ts", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/plugins/catalog-row.tsx:31"}, "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-fa173e8b17a597d5", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/plugins/plugin-row.tsx", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/plugins/plugin-row.tsx:39"}, "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-3e2a86e912b2f237", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/workspace/components/workspace-file-viewer.tsx", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/workspace/components/workspace-file-viewer.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-5a6dbc98982151b5", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/workspace/components/workspace-tree.tsx:290", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/workspace/components/workspace-tree.tsx:290"}, "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-06c2bafd4f365565", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/chat-conversation-header.tsx:112", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/chat-conversation-header.tsx:112"}, "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-bf68865181ffbc2c", "name": "Stray `console.log` in TS/JS \u2014 apps/web/src/domains/chat/api/debug-api.ts:67", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/src/domains/chat/api/debug-api.ts:67"}, "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-c7a0ca2767152ac2", "name": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/chat/utils/sanitize-display-messages.ts:35", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/chat/utils/sanitize-display-messages.ts:35"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-27407714551400d1", "name": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/chat/utils/sanitize-display-messages.test.ts:60", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/chat/utils/sanitize-display-messages.test.ts:60"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3ce24cc9e94e6750", "name": "Stray `console.log` in TS/JS \u2014 apps/web/src/domains/chat/utils/debug-api.ts:875", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/src/domains/chat/utils/debug-api.ts:875"}, "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-53bfd1af406a201c", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/tool-detail-panel.tsx:149", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/tool-detail-panel.tsx:149"}, "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-98d4c64b16aa6ea3", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/subagent-detail-panel.tsx:170", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/subagent-detail-panel.tsx:170"}, "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-f466c94ef5cb2c08", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/document-viewer-container.tsx:", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/document-viewer-container.tsx:304"}, "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-77c3ed8a6c750e2d", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/queued-messages-drawer.tsx:60", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/queued-messages-drawer.tsx:60"}, "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-2cb8a0e4c3bfa633", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/document-comment-thread.tsx:10", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/document-comment-thread.tsx:107"}, "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-dde55d50bcc53298", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-rule-editor-modal.tsx:429", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-rule-editor-modal.tsx:429"}, "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-2300e374868e9a4d", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/slack-channel-footer.tsx:37", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/slack-channel-footer.tsx:37"}, "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-9ced9ecfc9cd9cdd", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/multi-activity-group/multi-act", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/multi-activity-group/multi-activity-group.tsx:418"}, "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-e065de81e9da8805", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/tool-call-chip/tool-call-chip.", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/tool-call-chip/tool-call-chip.tsx:350"}, "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-16b2e829fe1ec9bc", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-composer/chat-composer.ts", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-composer/chat-composer.tsx:558"}, "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-b927df7871637c34", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/tool-progress-card/tool-step-p", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/tool-progress-card/tool-step-pill.tsx:160"}, "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-14ca2bebbe2ea858", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/tool-progress-card/phase-group", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/tool-progress-card/phase-grouped-step-list.tsx:643"}, "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-5d83819c854c06d0", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/single-activity/single-activit", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/single-activity/single-activity.tsx:184"}, "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-3086eaadbeae9595", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/web-search/web-search-step-row", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/web-search/web-search-step-row.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-6cdbcdafed228717", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/web-search/favicon-chip.tsx:95", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/web-search/favicon-chip.tsx:95"}, "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-a9ce18d3a65f3f08", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/surfaces/copy-block-surface.ts", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/surfaces/copy-block-surface.tsx:37"}, "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-f92cfa9cca9f23c8", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/surfaces/work-result-surface.t", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/surfaces/work-result-surface.tsx:282"}, "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-3c6c967518c0afe7", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/surfaces/file-upload-surface.t", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/surfaces/file-upload-surface.tsx:325"}, "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-8645514ce6bbd3cd", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/chat-attachme", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/chat-attachments.tsx:57"}, "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-7dfa650b984bfb9e", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/attachment-lo", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/attachment-loading-chip.tsx:34"}, "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-35af0b7095562be2", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/attachment-ch", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/attachment-chip.tsx:97"}, "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-1a582c01c05fb3bf", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/attachment-pr", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/attachment-preview-modal.tsx:334"}, "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-d87861772103f959", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/message-attac", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/message-attachment-square.tsx:96"}, "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-b429520fc1a0b197", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/chat/components/chat-attachments/text-preview", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/chat/components/chat-attachments/text-preview.tsx:195"}, "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-8518bf2e8adc89f1", "name": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/chat/hooks/use-stream-event-handler.ts:334", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/chat/hooks/use-stream-event-handler.ts:334"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cac5544ac048d813", "name": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/chat/transcript/use-transcript-scroll.ts:94", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/chat/transcript/use-transcript-scroll.ts:94"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-16b12194da745301", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/inspect-page.tsx:335", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/inspect-page.tsx:335"}, "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-3ba3965790a14cdc", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/components/cache-breakpoint-map", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/components/cache-breakpoint-map-card.tsx:105"}, "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-42a2f6dc1013a6fc", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/components/tool-definitions-con", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/components/tool-definitions-content.tsx:58"}, "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-f72a9c4fc1370f98", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/components/tabs/memory-tab.tsx:", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/components/tabs/memory-tab.tsx:287"}, "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-770ab6a1b06e0cd9", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/components/tabs/prompt-tab.tsx:", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/components/tabs/prompt-tab.tsx:192"}, "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-b38c0b6e4131668e", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/logs/components/emails-tab.tsx:164", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/logs/components/emails-tab.tsx:164"}, "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-dffa84d7aed30d13", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/logs/components/usage-trend-chart.tsx:189", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/logs/components/usage-trend-chart.tsx:189"}, "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-4cab7806962336b7", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/home/home-greeting-header.tsx:45", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/home/home-greeting-header.tsx:45"}, "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-9b8b6f4f3be4e310", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/home/detail-panel/home-detail-panel.tsx:193", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/home/detail-panel/home-detail-panel.tsx:193"}, "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-a7c392ebe8251048", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/terminal/components/terminal-toolbar.tsx:48", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/terminal/components/terminal-toolbar.tsx:48"}, "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-bf5a9ca92d29c465", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/onboarding/cast/cast-starter.tsx:306", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/onboarding/cast/cast-starter.tsx:306"}, "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-ee1254e8c9211a8f", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/onboarding/cast/cast-avatar.tsx:43", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/onboarding/cast/cast-avatar.tsx:43"}, "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-9d5f0db6e76409bd", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/account/pages/oauth-complete-page.tsx:257", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/account/pages/oauth-complete-page.tsx:257"}, "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-909a2d1ed59f23ac", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/account/pages/oauth-popup-complete-page.tsx:2", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/account/pages/oauth-popup-complete-page.tsx:261"}, "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-5c3e476d82a9e685", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/contacts/components/contact-channels-section.t", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/contacts/components/contact-channels-section.tsx:297"}, "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-a32cdf955eb87b1f", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/contacts/components/contacts-list.tsx:187", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/contacts/components/contacts-list.tsx:187"}, "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-081f9bddf64a52a3", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/contacts/components/contact-merge-dialog.tsx:2", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/contacts/components/contact-merge-dialog.tsx:202"}, "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-bad6c46a188858d5", "name": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/install-file-deps.ts:71", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/install-file-deps.ts:71"}, "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-cef9e7df9c62e94a", "name": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/reclaim-dev-port.ts:72", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/reclaim-dev-port.ts:72"}, "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-0a7a28dfa93af2bf", "name": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/afterSign.js:130", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/afterSign.js:130"}, "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-850b332eb67eee9f", "name": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/dev.ts:64", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/dev.ts:64"}, "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-fcfa59a19f1832c6", "name": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/prepare-electron-dev-app.ts:111", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/prepare-electron-dev-app.ts:111"}, "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-01191f9d2936476f", "name": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/afterPack.js:71", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/afterPack.js:71"}, "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-8fe2333640d23c8c", "name": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/run-tests.ts:75", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/run-tests.ts:75"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-eac00f3e41c94c94", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate-release-notes.ts:99", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-release-notes.ts:99"}, "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-2d14283b46950ade", "name": "Stray `console.log` in TS/JS \u2014 scripts/create-hotfix-branch.ts:48", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/create-hotfix-branch.ts:48"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-26884ed9630eab10", "name": "Stray `console.log` in TS/JS \u2014 scripts/docker-login-with-retry.ts:31", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/docker-login-with-retry.ts:31"}, "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-2f2a7ffc1c512f30", "name": "Stray `console.log` in TS/JS \u2014 scripts/staging-docker-upload.ts:186", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/staging-docker-upload.ts:186"}, "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-81f1173b4d50a3fe", "name": "Stray `console.log` in TS/JS \u2014 scripts/gcr-publish.ts:158", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/gcr-publish.ts:158"}, "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-59f2286bc96ea674", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate-emoji-catalog.ts:319", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-emoji-catalog.ts:319"}, "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-1cb8a7999d921a66", "name": "Stray `console.log` in TS/JS \u2014 scripts/service-communication/generate-matrix.ts:137", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/service-communication/generate-matrix.ts:137"}, "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-334cb74068221b6c", "name": "Stray `console.log` in TS/JS \u2014 cli/src/index.ts:84", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/index.ts:84"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-94c895a82b47fcc9", "name": "Stray `console.log` in TS/JS \u2014 cli/src/adapters/openclaw-http-server.ts:35", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/adapters/openclaw-http-server.ts:35"}, "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-796a087e7fbbd89d", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/login.ts:297", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/login.ts:297"}, "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-3113b080d82d81e9", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/use.ts:14", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/use.ts:14"}, "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-20873e5e376914c3", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/hatch.ts:215", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/hatch.ts:215"}, "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-9ae3e9ed0e7427f5", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/sleep.ts:52", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/sleep.ts:52"}, "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-acbd6e9682236c6f", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/rollback.ts:46", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/rollback.ts:46"}, "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-b9646f24e9d652dd", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/confirm.ts:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/confirm.ts:16"}, "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-c72937a08f11e031", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/recover.ts:24", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/recover.ts:24"}, "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-26e46a122155d435", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/wake.ts:28", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/wake.ts:28"}, "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-d39dd926daf36827", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/env.ts:10", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/env.ts:10"}, "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-0311663363a2c5f6", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/terminal.ts:31", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/terminal.ts:31"}, "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-afa1943e4fb6bdfd", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/message.ts:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/message.ts:15"}, "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-c6886354db52cd3f", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/flags.ts:53", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/flags.ts:53"}, "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-4ba087160cd33f35", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/ssh.ts:27", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/ssh.ts:27"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6744b8009e4b294f", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/nginx-ingress.ts:34", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/nginx-ingress.ts:34"}, "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-d54d3b791e42d643", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/backup.ts:25", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/backup.ts:25"}, "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-dc89786b5253256e", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/clean.ts:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/clean.ts:7"}, "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-9a9e94bb1e39084f", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/connect.ts:4", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/connect.ts:4"}, "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-7a3398c6b9bfb6cf", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/devices.ts:42", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/devices.ts:42"}, "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-f5d0d3c0afa31dcb", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/client.ts:266", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/client.ts:266"}, "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-7d62f6e17e4ac88d", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/exec.ts:64", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/exec.ts:64"}, "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-555525ba30b9a39c", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/pair.ts:41", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/pair.ts:41"}, "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-265f38da9ad5c94c", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/gateway.ts:4", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/gateway.ts:4"}, "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-f72a0f0e09b99c1b", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/retire.ts:54", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/retire.ts:54"}, "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-1a44f90fa2360a37", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/setup.ts:93", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/setup.ts:93"}, "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-0440d24a522b3d72", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/upgrade.ts:87", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/upgrade.ts:87"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6fb9598cd8069fb4", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/unpair.ts:27", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/unpair.ts:27"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8656c8f4af0dd151", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/roadmap.ts:5", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/roadmap.ts:5"}, "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-80e82a799f082396", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/logs.ts:30", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/logs.ts:30"}, "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-3effff8b660ea42c", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/events.ts:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/events.ts:15"}, "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-b248532083b88484", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/workflows.ts:67", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/workflows.ts:67"}, "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-5373a329e0641ab0", "name": "TODO/FIXME marker in shipping code \u2014 cli/src/commands/teleport.ts:711", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 cli/src/commands/teleport.ts:711"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fc7b3d84b51b2cab", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/teleport.ts:59", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/teleport.ts:59"}, "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-6a2dba35cc4f3590", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/restore.ts:22", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/restore.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-437f13325ee3c2d9", "name": "TODO/FIXME marker in shipping code \u2014 cli/src/commands/ps.ts:512", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 cli/src/commands/ps.ts:512"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f85315a7e45d3e79", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/ps.ts:83", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/ps.ts:83"}, "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-ab44bf57f762f8b4", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/tunnel.ts:30", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/tunnel.ts:30"}, "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-99ad9d2b0dbd4b92", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/connect/import.ts:26", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/connect/import.ts:26"}, "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-cfdc9f5087be1142", "name": "Stray `console.log` in TS/JS \u2014 cli/src/commands/gateway/token.ts:11", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/gateway/token.ts:11"}, "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-89da2ff9275c822d", "name": "Stray `console.log` in TS/JS \u2014 cli/src/components/DefaultMainScreen.tsx:961", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/components/DefaultMainScreen.tsx:961"}, "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-7f6748468b08a78d", "name": "Stray `console.log` in TS/JS \u2014 cli/src/lib/lifecycle-reporter.ts:28", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/lifecycle-reporter.ts:28"}, "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-e8928d63f7f38b6a", "name": "Stray `console.log` in TS/JS \u2014 cli/src/lib/local.ts:265", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/local.ts:265"}, "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-3918106bdf681ec6", "name": "Stray `console.log` in TS/JS \u2014 cli/src/lib/retire-apple-container.ts:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/retire-apple-container.ts:16"}, "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-4d12b8366eaa2e3e", "name": "Stray `console.log` in TS/JS \u2014 cli/src/lib/aws.ts:391", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/aws.ts:391"}, "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-1a4015a657d78293", "name": "Stray `console.log` in TS/JS \u2014 cli/src/lib/ngrok.ts:276", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/ngrok.ts:276"}, "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-2d4a94a0ac24c63e", "name": "Stray `console.log` in TS/JS \u2014 cli/src/lib/upgrade-lifecycle.ts:258", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/upgrade-lifecycle.ts:258"}, "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-64f0f4277daf2f32", "name": "Stray `console.log` in TS/JS \u2014 cli/src/lib/cloudflare-tunnel.ts:201", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/cloudflare-tunnel.ts:201"}, "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-abca371a97a073ca", "name": "Stray `console.log` in TS/JS \u2014 cli/src/lib/gcp.ts:179", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/gcp.ts:179"}, "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-d2517a20e75d096c", "name": "Stray `console.log` in TS/JS \u2014 cli/src/lib/ssh-apple-container.ts:32", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/ssh-apple-container.ts:32"}, "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-09e77824f5f95164", "name": "Stray `console.log` in TS/JS \u2014 cli/src/lib/process.ts:125", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/process.ts:125"}, "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-fc387b567f4446f1", "name": "Stray `console.log` in TS/JS \u2014 cli/src/lib/hatch-local.ts:107", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/hatch-local.ts:107"}, "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-16834753a298fb44", "name": "Stray `console.log` in TS/JS \u2014 cli/src/lib/docker.ts:126", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/docker.ts:126"}, "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-8503cbd3e74eb978", "name": "Stray `console.log` in TS/JS \u2014 meta/feature-flags/sync-bundled-copies.ts:24", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 meta/feature-flags/sync-bundled-copies.ts:24"}, "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-394aa3c8e01229ad", "name": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/bottom-sheet.tsx:131", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/bottom-sheet.tsx:131"}, "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-92fee8ebf7f09439", "name": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/menu.tsx:128", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/menu.tsx:128"}, "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-58bdb97dcaa52bcd", "name": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/context-menu.tsx:106", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/context-menu.tsx:106"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bb16c6c533fbede4", "name": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/dropdown.tsx:352", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/dropdown.tsx:352"}, "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-cdc206296c030454", "name": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/modal.tsx:163", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/modal.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-7128f46634562c9f", "name": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/side-menu/side-menu.tsx:585", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/side-menu/side-menu.tsx:585"}, "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-9df2486c18d62791", "name": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/panel-item/marquee-text.tsx:", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/panel-item/marquee-text.tsx:78"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-51e0a001801c187b", "name": "`truncate` class without `title=` for hover reveal \u2014 clients/chrome-extension/popup/screens/ActivityScreen.tsx:94", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 clients/chrome-extension/popup/screens/ActivityScreen.tsx:94"}, "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-784eca28422ee6fe", "name": "`truncate` class without `title=` for hover reveal \u2014 clients/chrome-extension/popup/screens/main/AssistantInfoBar.tsx:19", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 clients/chrome-extension/popup/screens/main/AssistantInfoBar.tsx:19"}, "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-5edf6ab8a7f84691", "name": "Stray `console.log` in TS/JS \u2014 clients/chrome-extension/background/worker.ts:670", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 clients/chrome-extension/background/worker.ts:670"}, "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-ffa39e4d68bf674f", "name": "Stray `console.log` in TS/JS \u2014 assistant/scripts/generate-openapi.ts:607", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/generate-openapi.ts:607"}, "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-613efaee6ed2a022", "name": "Stray `console.log` in TS/JS \u2014 assistant/scripts/build-plugin-api.ts:175", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/build-plugin-api.ts:175"}, "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-c8b08d7516d3b8bc", "name": "Stray `console.log` in TS/JS \u2014 assistant/scripts/sync-llm-catalog.ts:144", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/sync-llm-catalog.ts:144"}, "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-68fa1a51af1ccbbe", "name": "Stray `console.log` in TS/JS \u2014 assistant/scripts/memory-inspect.ts:88", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/memory-inspect.ts:88"}, "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-08792045c47628d0", "name": "Stray `console.log` in TS/JS \u2014 assistant/scripts/generate-bundled-tool-registry.ts:214", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/generate-bundled-tool-registry.ts:214"}, "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-c7a48a583dd11d1d", "name": "Stray `console.log` in TS/JS \u2014 assistant/scripts/sync-web-search-catalog.ts:117", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/sync-web-search-catalog.ts:117"}, "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-2358742191780b17", "name": "Stray `console.log` in TS/JS \u2014 assistant/scripts/check-circular-deps.ts:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/check-circular-deps.ts:43"}, "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-b69aac74b8aedc57", "name": "Stray `console.log` in TS/JS \u2014 assistant/scripts/capture-x-graphql.ts:245", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/capture-x-graphql.ts:245"}, "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-ee76ff7a38fb3509", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/app-bundler.test.ts:77", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/app-bundler.test.ts:77"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-33b4b06589e25f0e", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/skill-projection.benchmark.test.ts:292", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/skill-projection.benchmark.test.ts:292"}, "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-5c6edfe927667fb1", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/token-estimator-accuracy.benchmark.test.ts:1271", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/token-estimator-accuracy.benchmark.test.ts:1271"}, "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-0af4626f380b7a07", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/email-html-renderer.test.ts:33", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/email-html-renderer.test.ts:33"}, "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-f4ce6056ddf342c8", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/file-list-tool.test.ts:78", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/file-list-tool.test.ts:78"}, "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-d143e7e0a2841f6e", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/edit-engine.test.ts:148", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/edit-engine.test.ts:148"}, "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-704dcc5b74cae8ec", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/turn-commit.test.ts:165", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/turn-commit.test.ts:165"}, "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-1b35650b8a307e2e", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/workspace-lifecycle.test.ts:179", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/workspace-lifecycle.test.ts:179"}, "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-cb87f87784a9b7c0", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/app-compiler.test.ts:101", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/app-compiler.test.ts:101"}, "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-004ce0559fd60d82", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/mcp/manager.ts:20", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/mcp/manager.ts:20"}, "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-13abbcff2755b57f", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/mcp/mcp-oauth-provider.ts:304", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/mcp/mcp-oauth-provider.ts:304"}, "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-55cd826111e60e7a", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/plugins.ts:105", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/plugins.ts:105"}, "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-0c50f1a103edeffd", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/skills.ts:36", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/skills.ts:36"}, "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-d9153649516dacfd", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/pending.ts:77", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/pending.ts:77"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d47e3c7d9cb69f8e", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/audit.ts:58", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/audit.ts:58"}, "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-493d50ab26b69c06", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/tools.ts:81", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/tools.ts:81"}, "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-07aec8ad4ca6348c", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/routes.ts:99", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/routes.ts:99"}, "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-01f196be60ded691", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/sequence.ts:118", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/sequence.ts:118"}, "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-fec691b73564e632", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/memory/migrations/180-backfill-inline-attachments-to-disk.ts:62", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/memory/migrations/180-backfill-inline-attachments-to-disk.ts:62"}, "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-388bcb06809439f3", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/memory/migrations/191-backfill-audio-attachment-mime-types.ts:44", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/memory/migrations/191-backfill-audio-attachment-mime-types.ts:44"}, "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-bbf77dafaffb00cd", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/memory/migrations/206-scrub-corrupted-image-attachments.ts:50", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/memory/migrations/206-scrub-corrupted-image-attachments.ts:50"}, "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-34fcf864e0aa7bd0", "name": "TODO/FIXME marker in shipping code \u2014 assistant/src/memory/graph/extraction.ts:1098", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 assistant/src/memory/graph/extraction.ts:1098"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9d90c7a189ca2b2c", "name": "TODO/FIXME marker in shipping code \u2014 assistant/src/runtime/assistant-event-hub.ts:649", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 assistant/src/runtime/assistant-event-hub.ts:649"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c1a9df778d74766e", "name": "TODO/FIXME marker in shipping code \u2014 assistant/src/runtime/routes/identity-routes.ts:370", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 assistant/src/runtime/routes/identity-routes.ts:370"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8b0ad9870e963036", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/workflows/journal-store.test.ts:48", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/workflows/journal-store.test.ts:48"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dde2930b9fc27c7d", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/workflows/sandbox.test.ts:137", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/workflows/sandbox.test.ts:137"}, "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-d8a952b8991e5383", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/tools/skills/sandbox-runner.ts:24", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/tools/skills/sandbox-runner.ts:24"}, "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-bdbfd8a1fa200fa2", "name": "Stray `console.log` in TS/JS \u2014 assistant/src/plugins/defaults/memory-v3-shadow/__tests__/carry-integration.test.ts:1159", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/plugins/defaults/memory-v3-shadow/__tests__/carry-integration.test.ts:1159"}, "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-d7bc292f4363a6d5", "name": "Stray `console.log` in TS/JS \u2014 gateway/scripts/generate-openapi.ts:135", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 gateway/scripts/generate-openapi.ts:135"}, "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-83807c025b9df027", "name": "Stray `console.log` in TS/JS \u2014 gateway/src/__tests__/text-to-blocks.test.ts:152", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 gateway/src/__tests__/text-to-blocks.test.ts:152"}, "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-3672d429e35823f9", "name": "Stray `console.log` in TS/JS \u2014 gateway/src/cli/schema.ts:8", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 gateway/src/cli/schema.ts:8"}, "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-3655ec5a66fc1a38", "name": "Stray `console.log` in TS/JS \u2014 gateway/src/cli/enable-proxy.ts:35", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 gateway/src/cli/enable-proxy.ts:35"}, "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-5d3f1255a0edcae4", "name": "Stray `console.log` in TS/JS \u2014 gateway/src/risk/risk-classifier-parity.test.ts:187", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 gateway/src/risk/risk-classifier-parity.test.ts:187"}, "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-8f82322f510b3920", "name": "TODO/FIXME marker in shipping code \u2014 gateway/src/risk/bash-risk-classifier.ts:287", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 gateway/src/risk/bash-risk-classifier.ts:287"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-633cc8158b18bffe", "name": "Stray `console.log` in TS/JS \u2014 evals/src/commands/run.ts:150", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/commands/run.ts:150"}, "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-d1bccf217f522a7f", "name": "Stray `console.log` in TS/JS \u2014 evals/src/commands/export.ts:85", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/commands/export.ts:85"}, "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-554241811f466b70", "name": "Stray `console.log` in TS/JS \u2014 evals/src/commands/server.ts:510", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/commands/server.ts:510"}, "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-f5153148d73270c0", "name": "Stray `console.log` in TS/JS \u2014 evals/src/commands/list.ts:20", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/commands/list.ts:20"}, "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-6015c8267016bdfd", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 evals/src/lib/report-html.tsx:2027", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 evals/src/lib/report-html.tsx:2027"}, "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-5673a605086fa3bd", "name": "Stray `console.log` in TS/JS \u2014 evals/src/lib/adapters/__tests__/vellum-app-page.test.ts:26", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/lib/adapters/__tests__/vellum-app-page.test.ts:26"}, "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-109c6b06943ce8f6", "name": "Stray `console.log` in TS/JS \u2014 evals/src/lib/__tests__/vellum-adapter.test.ts:943", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/lib/__tests__/vellum-adapter.test.ts:943"}, "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-8130fb75200e4412", "name": "Stray `console.log` in TS/JS \u2014 evals/src/lib/runner/run-once.ts:712", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/lib/runner/run-once.ts:712"}, "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-18350a08939be75b", "name": "Stray `console.log` in TS/JS \u2014 evals/src/lib/runner/progress.ts:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/lib/runner/progress.ts:12"}, "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-ca8f90e4c37ec55d", "name": "Stray `console.log` in TS/JS \u2014 skills/outlook/scripts/outlook-email.ts:80", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/outlook/scripts/outlook-email.ts:80"}, "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-c2dd7b6d26c3dc12", "name": "Stray `console.log` in TS/JS \u2014 skills/outlook-calendar/scripts/outlook-cal.ts:69", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/outlook-calendar/scripts/outlook-cal.ts:69"}, "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-f181c3262907e84a", "name": "Stray `console.log` in TS/JS \u2014 skills/resend-setup/scripts/check-config.ts:22", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/resend-setup/scripts/check-config.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-fab754a3eed71a37", "name": "Stray `console.log` in TS/JS \u2014 skills/resend-setup/scripts/setup-webhook.ts:74", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/resend-setup/scripts/setup-webhook.ts:74"}, "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-ef62a23e76b13764", "name": "Stray `console.log` in TS/JS \u2014 skills/mailgun-setup/scripts/check-config.ts:22", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/mailgun-setup/scripts/check-config.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-a1406d0aa37b6a49", "name": "Stray `console.log` in TS/JS \u2014 skills/mailgun-setup/scripts/setup-webhook.ts:87", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/mailgun-setup/scripts/setup-webhook.ts:87"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-804d2cf103eb41fa", "name": "Stray `console.log` in TS/JS \u2014 skills/meet-join/bot/scripts/build-bot.ts:14", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/bot/scripts/build-bot.ts:14"}, "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-3351339d64c86d23", "name": "Stray `console.log` in TS/JS \u2014 skills/meet-join/bot/src/main.ts:370", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/bot/src/main.ts:370"}, "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-780466a22c44eaa7", "name": "Stray `console.log` in TS/JS \u2014 skills/meet-join/scripts/emit-manifest.ts:356", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/scripts/emit-manifest.ts:356"}, "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-11c5d4e2539fb1c0", "name": "Stray `console.log` in TS/JS \u2014 skills/meet-join/meet-controller-ext/scripts/build.ts:42", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/meet-controller-ext/scripts/build.ts:42"}, "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-413db66df7857fc6", "name": "Stray `console.log` in TS/JS \u2014 skills/meet-join/meet-controller-ext/src/content.ts:44", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/meet-controller-ext/src/content.ts:44"}, "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-3b165003b4a6b2a3", "name": "Stray `console.log` in TS/JS \u2014 skills/meet-join/meet-controller-ext/src/background.ts:11", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/meet-controller-ext/src/background.ts:11"}, "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-21bf9c5b9d70aa3a", "name": "TODO/FIXME marker in shipping code \u2014 skills/meet-join/meet-controller-ext/src/dom/selectors.ts:26", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 skills/meet-join/meet-controller-ext/src/dom/selectors.ts:26"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8aa8a1d9cf675aed", "name": "TODO/FIXME marker in shipping code \u2014 skills/meet-join/meet-controller-ext/src/features/participants.ts:199", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 skills/meet-join/meet-controller-ext/src/features/participants.ts:199"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dcafec0ebe52361d", "name": "Stray `console.log` in TS/JS \u2014 skills/meet-join/meet-controller-ext/src/features/avatar.ts:167", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/meet-controller-ext/src/features/avatar.ts:167"}, "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-3528ab946d6ef39e", "name": "Stray `console.log` in TS/JS \u2014 skills/meet-join/daemon/__tests__/consent-monitor-live.test.ts:277", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/daemon/__tests__/consent-monitor-live.test.ts:277"}, "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-81d85deca1d4df4e", "name": "Stray `console.log` in TS/JS \u2014 skills/stripe-app-setup/scripts/check-config.ts:22", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/stripe-app-setup/scripts/check-config.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-e3a25251e38b39f9", "name": "Stray `console.log` in TS/JS \u2014 skills/sentry-app-setup/scripts/check-config.ts:23", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/sentry-app-setup/scripts/check-config.ts:23"}, "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-50c6f70fa51d8047", "name": "Stray `console.log` in TS/JS \u2014 skills/slack-app-setup/scripts/build-manifest-url.ts:130", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/slack-app-setup/scripts/build-manifest-url.ts:130"}, "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-84876da2cdbfd25e", "name": "Stray `console.log` in TS/JS \u2014 skills/gmail/scripts/gmail-email.ts:116", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/gmail/scripts/gmail-email.ts:116"}, "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-df63f0e8ebdf5eb1", "name": "Stray `console.log` in TS/JS \u2014 skills/google-calendar/scripts/gcal.ts:335", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/google-calendar/scripts/gcal.ts:335"}, "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-845140bd8130871a", "name": "Stray `console.log` in TS/JS \u2014 skills/discord-app-setup/scripts/check-config.ts:34", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/discord-app-setup/scripts/check-config.ts:34"}, "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-d50937cfb9552e33", "name": "Stray `console.log` in TS/JS \u2014 skills/discord-app-setup/scripts/validate-token.ts:85", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/discord-app-setup/scripts/validate-token.ts:85"}, "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-d2564d7d73cdbbb3", "name": "Stray `console.log` in TS/JS \u2014 skills/discord-app-setup/scripts/print-invite-url.ts:103", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 skills/discord-app-setup/scripts/print-invite-url.ts:103"}, "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-ba60f17ce4de1d8a", "name": "Privileged port 256 in use", "shortDescription": {"text": "Privileged port 256 in use"}, "fullDescription": {"text": "Port 256 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-74f2e038947cadd1", "name": "Privileged port 1001 in use", "shortDescription": {"text": "Privileged port 1001 in use"}, "fullDescription": {"text": "Port 1001 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c6d9600a6eede061", "name": "Privileged port 733 in use", "shortDescription": {"text": "Privileged port 733 in use"}, "fullDescription": {"text": "Port 733 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3d658c9586e620c8", "name": "Privileged port 11 in use", "shortDescription": {"text": "Privileged port 11 in use"}, "fullDescription": {"text": "Port 11 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8a4b26195a1acd01", "name": "Dockerfile pipes a remote installer into a shell", "shortDescription": {"text": "Dockerfile pipes a remote installer into a shell"}, "fullDescription": {"text": "Executing downloaded code during image build gives the remote endpoint build-time code execution. Prefer pinned packages or verify downloaded installers by checksum/signature."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f8f447c8899e0125", "name": "Dockerfile runs as root: assistant/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: assistant/Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3c713e67723783f7", "name": "Dockerfile pipes a remote installer into a shell", "shortDescription": {"text": "Dockerfile pipes a remote installer into a shell"}, "fullDescription": {"text": "Executing downloaded code during image build gives the remote endpoint build-time code execution. Prefer pinned packages or verify downloaded installers by checksum/signature."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "high", "confidence": 1.0}}, {"id": "scanner-5567a681b28df273", "name": "Dockerfile runs as root: evals/src/lib/adapters/hermes-image/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: evals/src/lib/adapters/hermes-image/Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-31ba561e1e5a1a4e", "name": "Dockerfile runs as root: evals/src/lib/egress/recording/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: evals/src/lib/egress/recording/Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-66a0585390bbd893", "name": "Docker base image is tag-pinned but not digest-pinned: mitmproxy/mitmproxy:11.0.2", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: mitmproxy/mitmproxy:11.0.2"}, "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-4cfd0e36e1300ee5", "name": "Dockerfile runs as root: evals/src/lib/egress/connection-telemetry/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: evals/src/lib/egress/connection-telemetry/Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0b35634df9b92c62", "name": "Docker base image is tag-pinned but not digest-pinned: python:3.12-alpine", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: python:3.12-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-59b186ce129c2dd9", "name": "Dockerfile runs as root: skills/meet-join/bot/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: skills/meet-join/bot/Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-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-e557a571f62c8585", "name": "Insecure pattern 'private_key_in_repo' in credential-executor/src/__tests__/command-workspace.test.ts:794", "shortDescription": {"text": "Insecure pattern 'private_key_in_repo' in credential-executor/src/__tests__/command-workspace.test.ts:794"}, "fullDescription": {"text": "Found a known-risky pattern (private_key_in_repo). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-2daa1bca2cbc490d", "name": "Insecure pattern 'node_child_process' in credential-executor/src/http/log-export-routes.test.ts:23", "shortDescription": {"text": "Insecure pattern 'node_child_process' in credential-executor/src/http/log-export-routes.test.ts:23"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c11bfe754eeffd98", "name": "Insecure pattern 'node_child_process' in credential-executor/src/http/log-export-routes.ts:13", "shortDescription": {"text": "Insecure pattern 'node_child_process' in credential-executor/src/http/log-export-routes.ts:13"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2c119ee7bee52d51", "name": "Insecure pattern 'node_child_process' in apps/web/scripts/postinstall.ts:33", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/web/scripts/postinstall.ts:33"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8ae94a81141400f3", "name": "Insecure pattern 'local_storage_auth_token' in apps/web/src/stores/auth-store.ts:747", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in apps/web/src/stores/auth-store.ts:747"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1092c5a25bd267b9", "name": "Insecure pattern 'local_storage_auth_token' in apps/web/src/utils/storage-migration.test.ts:217", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in apps/web/src/utils/storage-migration.test.ts:217"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9080c9ad7349ea17", "name": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/components/avatar-renderer.tsx:40", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/components/avatar-renderer.tsx:40"}, "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-21ceae64a4560203", "name": "Insecure pattern 'local_storage_auth_token' in apps/web/src/lib/api-interceptors.test.ts:51", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in apps/web/src/lib/api-interceptors.test.ts:51"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-36a2d22a8561fed0", "name": "Insecure pattern 'local_storage_auth_token' in apps/web/src/lib/auth/session-cleanup.test.ts:18", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in apps/web/src/lib/auth/session-cleanup.test.ts:18"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-05b43031f4368020", "name": "Insecure pattern 'local_storage_auth_token' in apps/web/src/runtime/native-auth.ts:204", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in apps/web/src/runtime/native-auth.ts:204"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-893721067f418a0d", "name": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/chat/components/chat-attachments/text-preview.tsx:195", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/chat/components/chat-attachments/text-preview.tsx:195"}, "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-50ec782c21337f8e", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/web/src/domains/chat/voice/use-push-to-talk.test.tsx:41", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/web/src/domains/chat/voice/use-push-to-talk.test.tsx:41"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8513c42e9d8e4cf8", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/web/src/domains/chat/transcript/use-transcript-scroll.burst.test.", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/web/src/domains/chat/transcript/use-transcript-scroll.burst.test.tsx:95"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fe12cb465a0916e2", "name": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/onboarding/cast/cast-starter.tsx:306", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/onboarding/cast/cast-starter.tsx:306"}, "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-95aaa542c163473f", "name": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/onboarding/cast/cast-avatar.tsx:43", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/onboarding/cast/cast-avatar.tsx:43"}, "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-b08255c564f87198", "name": "Insecure pattern 'local_storage_auth_token' in apps/web/src/domains/account/pages/platform-loopback-page.tsx:56", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in apps/web/src/domains/account/pages/platform-loopback-page.tsx:56"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1b12e059210ffd01", "name": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/account/pages/oauth-complete-page.tsx:257", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/account/pages/oauth-complete-page.tsx:257"}, "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-eb3ae34b61e7c2a2", "name": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/account/pages/oauth-popup-complete-page.tsx:261", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/account/pages/oauth-popup-complete-page.tsx:261"}, "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-1ce5caa2b9c0a167", "name": "Insecure pattern 'node_child_process' in apps/macos/electron.vite.config.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/electron.vite.config.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b35eeafa386d6330", "name": "Insecure pattern 'node_child_process' in apps/macos/scripts/install-file-deps.ts:21", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/scripts/install-file-deps.ts:21"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5f1be641c03f9df2", "name": "Insecure pattern 'node_child_process' in apps/macos/scripts/reclaim-dev-port.ts:22", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/scripts/reclaim-dev-port.ts:22"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0417f80c1eff1fed", "name": "Insecure pattern 'node_child_process' in apps/macos/scripts/afterSign.js:7", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/scripts/afterSign.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e32b43788d37867b", "name": "Insecure pattern 'node_child_process' in apps/macos/scripts/dev.ts:24", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/scripts/dev.ts:24"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2198b2e42eb496c0", "name": "Insecure pattern 'node_child_process' in apps/macos/scripts/prepare-electron-dev-app.ts:2", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/scripts/prepare-electron-dev-app.ts:2"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5bda2e76752273df", "name": "Insecure pattern 'node_child_process' in apps/macos/scripts/afterPack.js:10", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/scripts/afterPack.js:10"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-add5e1ca29bc3b1f", "name": "Insecure pattern 'node_child_process' in apps/macos/src/main/shell-path.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/shell-path.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d3c7b629ba851a36", "name": "Insecure pattern 'node_child_process' in apps/macos/src/main/appleScriptExecutor.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/appleScriptExecutor.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2a01dbf95e3dfd13", "name": "Insecure pattern 'node_child_process' in apps/macos/src/main/cli-installer.ts:2", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/cli-installer.ts:2"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-734c99cfa7ec73af", "name": "Insecure pattern 'node_child_process' in apps/macos/src/main/hotkey-helper.ts:2", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/hotkey-helper.ts:2"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-62274e70fdaae489", "name": "Insecure pattern 'node_child_process' in apps/macos/src/main/executors/host-bash-executor.ts:8", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/executors/host-bash-executor.ts:8"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4020fedbca2ecb83", "name": "Insecure pattern 'node_child_process' in apps/macos/src/main/sidecar/supervisor.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/sidecar/supervisor.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8a3abdcb9940fc99", "name": "Insecure pattern 'node_child_process' in apps/macos/src/main/sidecar/mac-helper.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/sidecar/mac-helper.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6242cd4c203f7a06", "name": "Insecure pattern 'node_child_process' in scripts/generate-release-notes.ts:14", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/generate-release-notes.ts:14"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4cacaefc4cfc91cb", "name": "Insecure pattern 'node_child_process' in scripts/create-hotfix-branch.ts:13", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/create-hotfix-branch.ts:13"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9db0543012c568aa", "name": "Insecure pattern 'node_child_process' in scripts/docker-login-with-retry.ts:15", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/docker-login-with-retry.ts:15"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-278f4b2f86f5fc54", "name": "Insecure pattern 'node_child_process' in scripts/staging-docker-upload.ts:28", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/staging-docker-upload.ts:28"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-dac39ad5c571d2f4", "name": "Insecure pattern 'node_child_process' in scripts/gcr-publish.ts:26", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/gcr-publish.ts:26"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-db141945629dc7fe", "name": "Insecure pattern 'node_child_process' in scripts/skills/generate-catalog.mjs:13", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/skills/generate-catalog.mjs:13"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4f299cedd0ee67d1", "name": "Insecure pattern 'node_child_process' in scripts/skills/check-catalog.mjs:15", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/skills/check-catalog.mjs:15"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-242ece72187eba8e", "name": "Insecure pattern 'node_child_process' in cli/src/adapters/openclaw-http-server.ts:2", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/adapters/openclaw-http-server.ts:2"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4b9b6d3a02eb44b8", "name": "Insecure pattern 'node_child_process' in cli/src/__tests__/nginx-ingress.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/__tests__/nginx-ingress.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0f09faa080931d10", "name": "Insecure pattern 'node_child_process' in cli/src/__tests__/cloudflare-tunnel.test.ts:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/__tests__/cloudflare-tunnel.test.ts:3"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c6dcad67e22c1f7f", "name": "Insecure pattern 'node_child_process' in cli/src/commands/login.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/commands/login.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a3cf4df5dbc697a3", "name": "Insecure pattern 'exec_used' in cli/src/commands/recover.ts:102", "shortDescription": {"text": "Insecure pattern 'exec_used' in cli/src/commands/recover.ts:102"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bdd6f39fd80d3cd3", "name": "Insecure pattern 'node_child_process' in cli/src/commands/ssh.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/commands/ssh.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-549841b3fa2a2fe5", "name": "Insecure pattern 'node_child_process' in cli/src/commands/client.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/commands/client.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f9341a2fb8283246", "name": "Insecure pattern 'node_child_process' in cli/src/commands/exec.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/commands/exec.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f40c941a3b111362", "name": "Insecure pattern 'exec_used' in cli/src/commands/retire.ts:63", "shortDescription": {"text": "Insecure pattern 'exec_used' in cli/src/commands/retire.ts:63"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bb00ac1c00ad6e9d", "name": "Insecure pattern 'exec_used' in cli/src/commands/upgrade.ts:393", "shortDescription": {"text": "Insecure pattern 'exec_used' in cli/src/commands/upgrade.ts:393"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e874ef72bec42eaa", "name": "Insecure pattern 'node_child_process' in cli/src/commands/upgrade.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/commands/upgrade.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c16f6a204eb22beb", "name": "Insecure pattern 'node_child_process' in cli/src/commands/logs.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/commands/logs.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0af0a89dfb71c6fb", "name": "Insecure pattern 'node_child_process' in cli/src/lib/local.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/local.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1479e531f789f0eb", "name": "Insecure pattern 'exec_used' in cli/src/lib/aws.ts:97", "shortDescription": {"text": "Insecure pattern 'exec_used' in cli/src/lib/aws.ts:97"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d428fc5ce11a33f0", "name": "Insecure pattern 'node_child_process' in cli/src/lib/ngrok.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/ngrok.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2b7b418718b009f7", "name": "Insecure pattern 'exec_used' in cli/src/lib/upgrade-lifecycle.ts:703", "shortDescription": {"text": "Insecure pattern 'exec_used' in cli/src/lib/upgrade-lifecycle.ts:703"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-deeb6b4ab0e9a26d", "name": "Insecure pattern 'node_child_process' in cli/src/lib/upgrade-lifecycle.ts:2", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/upgrade-lifecycle.ts:2"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-16498bc647e07f01", "name": "Insecure pattern 'node_child_process' in cli/src/lib/cloudflare-tunnel.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/cloudflare-tunnel.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7b98227ed5719729", "name": "Insecure pattern 'node_child_process' in cli/src/lib/guardian-token.ts:2", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/guardian-token.ts:2"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1ea24a0f156a17d2", "name": "Insecure pattern 'node_child_process' in cli/src/lib/nginx-ingress.ts:6", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/nginx-ingress.ts:6"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a8d0d73773224a4c", "name": "Insecure pattern 'exec_used' in cli/src/lib/gcp.ts:127", "shortDescription": {"text": "Insecure pattern 'exec_used' in cli/src/lib/gcp.ts:127"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ac4674eaf1892fe5", "name": "Insecure pattern 'node_child_process' in cli/src/lib/provider-secrets.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/provider-secrets.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-89f5d70798b8dab7", "name": "Insecure pattern 'node_child_process' in cli/src/lib/process.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/process.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-19b19b017e3bf61f", "name": "Insecure pattern 'exec_used' in cli/src/lib/docker.ts:127", "shortDescription": {"text": "Insecure pattern 'exec_used' in cli/src/lib/docker.ts:127"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0f1ce005802a5b1b", "name": "Insecure pattern 'node_child_process' in cli/src/lib/step-runner.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/step-runner.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-13a0cba752babaad", "name": "Insecure pattern 'node_child_process' in cli/src/lib/xdg-log.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/xdg-log.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8aea45f110afbd89", "name": "Insecure pattern 'node_child_process' in cli/src/lib/retire-local.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/retire-local.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ffbaa7c75d0bd6ea", "name": "Insecure pattern 'exec_used' in cli/src/lib/__tests__/step-runner.test.ts:58", "shortDescription": {"text": "Insecure pattern 'exec_used' in cli/src/lib/__tests__/step-runner.test.ts:58"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-73cc46e62e5f2c70", "name": "Insecure pattern 'node_child_process' in meta/__tests__/install.test.ts:12", "shortDescription": {"text": "Insecure pattern 'node_child_process' in meta/__tests__/install.test.ts:12"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3ea75e0c61454c79", "name": "Insecure pattern 'node_child_process' in packages/local-mode/src/hatch.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in packages/local-mode/src/hatch.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c0e3038f6068d66d", "name": "Insecure pattern 'node_child_process' in packages/local-mode/src/sleep.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in packages/local-mode/src/sleep.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b73eba1b24c7b4d7", "name": "Insecure pattern 'node_child_process' in packages/local-mode/src/wake.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in packages/local-mode/src/wake.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b6bbca741f11403f", "name": "Insecure pattern 'node_child_process' in packages/local-mode/src/guardian-token.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in packages/local-mode/src/guardian-token.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ee844a0c4012ac72", "name": "Insecure pattern 'node_child_process' in packages/local-mode/src/retire.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in packages/local-mode/src/retire.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-35478c85ed9014cf", "name": "Insecure pattern 'weak_hash' in clients/macos/build.sh:353", "shortDescription": {"text": "Insecure pattern 'weak_hash' in clients/macos/build.sh:353"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d969a9f56440abfb", "name": "Insecure pattern 'domparser_html_parse' in clients/macos/vellum-assistant/Resources/vellum-edit-animator.js:465", "shortDescription": {"text": "Insecure pattern 'domparser_html_parse' in clients/macos/vellum-assistant/Resources/vellum-edit-animator.js:465"}, "fullDescription": {"text": "Found a known-risky pattern (domparser_html_parse). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e0beb4fe80be52be", "name": "Insecure pattern 'direct_innerhtml_assignment' in clients/macos/vellum-assistant/Resources/vellum-widgets.js:78", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in clients/macos/vellum-assistant/Resources/vellum-widgets.js:78"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1b61a1038bf4b2e4", "name": "Insecure pattern 'new_function_used' in clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js:9", "shortDescription": {"text": "Insecure pattern 'new_function_used' in clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js:9"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3741ae51d062c75d", "name": "Insecure pattern 'direct_innerhtml_assignment' in clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js:9"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3eadc6b9ee903361", "name": "Insecure pattern 'direct_outerhtml_assignment' in clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js:9"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-afbacc403fd648f9", "name": "Insecure pattern 'insert_adjacent_html' in clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js:24", "shortDescription": {"text": "Insecure pattern 'insert_adjacent_html' in clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js:24"}, "fullDescription": {"text": "Found a known-risky pattern (insert_adjacent_html). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4851f4d3a1fd1630", "name": "Insecure pattern 'node_child_process' in assistant/scripts/build-plugin-api.ts:30", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/scripts/build-plugin-api.ts:30"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8a68d4a7ecde3c3e", "name": "Insecure pattern 'node_child_process' in assistant/scripts/check-circular-deps.ts:10", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/scripts/check-circular-deps.ts:10"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-978371f155e0efec", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/assistant-id-boundary-guard.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/assistant-id-boundary-guard.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6952a326927fce5f", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/log-export-workspace.test.ts:10", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/log-export-workspace.test.ts:10"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f0342cd99fbaa2c3", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/assistant-feature-flag-guardrails.test.ts:15", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/assistant-feature-flag-guardrails.test.ts:15"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d6df386289c1ae4", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/assistant-feature-flag-guard.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/assistant-feature-flag-guard.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-adaedf4c10812fb0", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/volume-security-guard.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/volume-security-guard.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9d36417d8a8d8785", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/openai-responses-cutover-guard.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/openai-responses-cutover-guard.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b4abefc0ac4d3627", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/skill-secret-handling-guard.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/skill-secret-handling-guard.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5618f0ed042d543c", "name": "Insecure pattern 'private_key_in_repo' in assistant/src/__tests__/secret-scanner.test.ts:273", "shortDescription": {"text": "Insecure pattern 'private_key_in_repo' in assistant/src/__tests__/secret-scanner.test.ts:273"}, "fullDescription": {"text": "Found a known-risky pattern (private_key_in_repo). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-fd09d34c1edfb62c", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/workspace-heartbeat-service.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/workspace-heartbeat-service.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f7de619ee0a8beaa", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/workspace-git-service.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/workspace-git-service.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b77845db53713c8e", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/gateway-only-guard.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/gateway-only-guard.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5e8baf9544728b80", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/turn-commit.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/turn-commit.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-16619102f845431c", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/app-dir-path-guard.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/app-dir-path-guard.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c9ea797753e70fba", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/service-contracts-import-guard.test.ts:20", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/service-contracts-import-guard.test.ts:20"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c80e6654e9e15fca", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/no-is-trusted-guard.test.ts:19", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/no-is-trusted-guard.test.ts:19"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9253821c2071f6a4", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/host-shell-tool.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/host-shell-tool.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-566489f73872521b", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/log-export-routes.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/log-export-routes.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cd2cb224e3b2b6fa", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/app-git-service.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/app-git-service.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-43c3f162dcdb1c31", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/no-direct-anthropic-sdk-imports.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/no-direct-anthropic-sdk-imports.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-14d003ff0899d326", "name": "Insecure pattern 'exec_used' in assistant/src/__tests__/tool-execution-abort-cleanup.test.ts:488", "shortDescription": {"text": "Insecure pattern 'exec_used' in assistant/src/__tests__/tool-execution-abort-cleanup.test.ts:488"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-256cc01f0d90f1ef", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/commit-message-enrichment-service.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/commit-message-enrichment-service.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ca1cfc65c0db4600", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/lifecycle-docs-guard.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/lifecycle-docs-guard.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-989cad146cc14fbf", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/workspace-lifecycle.test.ts:8", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/workspace-lifecycle.test.ts:8"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d7d92db495488232", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/commit-guarantee.test.ts:8", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/commit-guarantee.test.ts:8"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c2ef77dc402291d8", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/shell-tool-proxy-mode.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/shell-tool-proxy-mode.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0f35c8a8ffc4b1cc", "name": "Insecure pattern 'node_child_process' in assistant/src/__tests__/forbidden-legacy-symbols.test.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/forbidden-legacy-symbols.test.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cc08a9be17f14823", "name": "Insecure pattern 'eval_used' in assistant/src/bundler/bundle-scanner.ts:376", "shortDescription": {"text": "Insecure pattern 'eval_used' in assistant/src/bundler/bundle-scanner.ts:376"}, "fullDescription": {"text": "Found a known-risky pattern (eval_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4045ce18f9d21c2b", "name": "Insecure pattern 'node_child_process' in assistant/src/util/disk-usage.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/util/disk-usage.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e4255c60cf1e9b8e", "name": "Insecure pattern 'node_child_process' in assistant/src/cli/lib/install-from-github.ts:26", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/cli/lib/install-from-github.ts:26"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c81c778285b6ae04", "name": "Insecure pattern 'node_child_process' in assistant/src/agent/image-optimize.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/agent/image-optimize.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d4f31cdc4ea6a652", "name": "Insecure pattern 'node_child_process' in assistant/src/workspace/git-service.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/workspace/git-service.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7b97981b8e44c07b", "name": "Insecure pattern 'node_child_process' in assistant/src/workspace/migrations/010-app-dir-rename.ts:12", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/workspace/migrations/010-app-dir-rename.ts:12"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cf3b1b11a55d58f1", "name": "Insecure pattern 'node_child_process' in assistant/src/acp/agent-process.ts:8", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/acp/agent-process.ts:8"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0d0f69fee8ce527c", "name": "Insecure pattern 'node_child_process' in assistant/src/acp/client-handler.ts:9", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/acp/client-handler.ts:9"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-77119e04fd334363", "name": "Insecure pattern 'node_child_process' in assistant/src/acp/auto-install.ts:29", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/acp/auto-install.ts:29"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1432b6800e8bd16a", "name": "Insecure pattern 'node_child_process' in assistant/src/acp/__tests__/helpers/exec-file-stub.ts:20", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/acp/__tests__/helpers/exec-file-stub.ts:20"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-de2d3f7f77107679", "name": "Insecure pattern 'node_child_process' in assistant/src/daemon/orphan-reaper.test.ts:13", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/daemon/orphan-reaper.test.ts:13"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-95ce78eaa1dddec7", "name": "Insecure pattern 'node_child_process' in assistant/src/daemon/daemon-control.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/daemon/daemon-control.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a25cdd9a645cfc8b", "name": "Insecure pattern 'node_child_process' in assistant/src/daemon/install-symlink.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/daemon/install-symlink.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-19aeb8e8c78577bf", "name": "Insecure pattern 'exec_used' in assistant/src/memory/app-git-service.ts:326", "shortDescription": {"text": "Insecure pattern 'exec_used' in assistant/src/memory/app-git-service.ts:326"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9f60484d164811ae", "name": "Insecure pattern 'node_child_process' in assistant/src/memory/v2/__tests__/prompts-consolidation.test.ts:7", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/memory/v2/__tests__/prompts-consolidation.test.ts:7"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-047dc80cd39716ec", "name": "Insecure pattern 'node_child_process' in assistant/src/runtime/routes/debug-bash-routes.ts:13", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/runtime/routes/debug-bash-routes.ts:13"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-55282c8eb4471fbc", "name": "Insecure pattern 'node_child_process' in assistant/src/runtime/routes/archive-utils.ts:6", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/runtime/routes/archive-utils.ts:6"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fd8c22e72ec5205d", "name": "Insecure pattern 'direct_innerhtml_assignment' in assistant/src/runtime/routes/brain-graph/brain-graph.html:1120", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assistant/src/runtime/routes/brain-graph/brain-graph.html:1120"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9e1e67bfb48c5dd1", "name": "Insecure pattern 'node_child_process' in assistant/src/tools/host-terminal/host-shell.ts:16", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/tools/host-terminal/host-shell.ts:16"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9c9183fede78c2a4", "name": "Insecure pattern 'node_child_process' in assistant/src/tools/terminal/shell.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/tools/terminal/shell.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8f822279a5e6938c", "name": "Insecure pattern 'node_child_process' in assistant/src/tools/skills/sandbox-runner.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/tools/skills/sandbox-runner.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fe4fd42a332c8577", "name": "Insecure pattern 'node_child_process' in assistant/src/skills/inline-command-runner.ts:24", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/skills/inline-command-runner.ts:24"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-95964fbf43ab4829", "name": "Insecure pattern 'node_child_process' in assistant/src/skills/catalog-install.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in assistant/src/skills/catalog-install.ts:1"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7a82538bd6cfefac", "name": "Insecure pattern 'weak_hash' in gateway/README.md:152", "shortDescription": {"text": "Insecure pattern 'weak_hash' in gateway/README.md:152"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b6c1df546f3bd025", "name": "Insecure pattern 'weak_hash' in gateway/src/schema.ts:4657", "shortDescription": {"text": "Insecure pattern 'weak_hash' in gateway/src/schema.ts:4657"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a37414082729b8ae", "name": "Insecure pattern 'node_child_process' in gateway/src/__tests__/credential-watcher-managed-bootstrap.test.ts:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in gateway/src/__tests__/credential-watcher-managed-bootstrap.test.ts:3"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d342ff6e781ee2ca", "name": "Insecure pattern 'node_child_process' in gateway/src/__tests__/credential-watcher.test.ts:11", "shortDescription": {"text": "Insecure pattern 'node_child_process' in gateway/src/__tests__/credential-watcher.test.ts:11"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2ee1b991407ba419", "name": "Insecure pattern 'node_child_process' in gateway/src/http/routes/log-export.test.ts:26", "shortDescription": {"text": "Insecure pattern 'node_child_process' in gateway/src/http/routes/log-export.test.ts:26"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b70076bcee847a70", "name": "Insecure pattern 'node_child_process' in evals/src/commands/server.ts:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in evals/src/commands/server.ts:3"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-673bc8329d2e6897", "name": "Insecure pattern 'dangerous_innerhtml' in evals/src/lib/report-html.tsx:2027", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in evals/src/lib/report-html.tsx:2027"}, "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-3beeeaeaf1b919e6", "name": "Insecure pattern 'node_child_process' in evals/src/lib/ngrok.ts:30", "shortDescription": {"text": "Insecure pattern 'node_child_process' in evals/src/lib/ngrok.ts:30"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-61fdcf9ef7d2a1bb", "name": "Insecure pattern 'node_child_process' in evals/src/lib/runtime/command-runner.ts:2", "shortDescription": {"text": "Insecure pattern 'node_child_process' in evals/src/lib/runtime/command-runner.ts:2"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cdac82cd32639065", "name": "Insecure pattern 'node_child_process' in skills/vellum-github-app-setup/scripts/gh-app-token.mjs:20", "shortDescription": {"text": "Insecure pattern 'node_child_process' in skills/vellum-github-app-setup/scripts/gh-app-token.mjs:20"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-35784b9947658fc2", "name": "Insecure pattern 'eval_used' in skills/watch-together/scripts/process-chunk.sh:13", "shortDescription": {"text": "Insecure pattern 'eval_used' in skills/watch-together/scripts/process-chunk.sh:13"}, "fullDescription": {"text": "Found a known-risky pattern (eval_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0a067797547c7b12", "name": "Insecure pattern 'node_child_process' in skills/doordash/scripts/doordash-cli.ts:8", "shortDescription": {"text": "Insecure pattern 'node_child_process' in skills/doordash/scripts/doordash-cli.ts:8"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3ed5798e26f0fbcf", "name": "Insecure pattern 'node_child_process' in skills/doordash/scripts/lib/session.ts:6", "shortDescription": {"text": "Insecure pattern 'node_child_process' in skills/doordash/scripts/lib/session.ts:6"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f6dfcb4db59f0f02", "name": "Insecure pattern 'node_child_process' in skills/meet-join/__tests__/emit-manifest.test.ts:17", "shortDescription": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/__tests__/emit-manifest.test.ts:17"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0556701c93a8e758", "name": "Insecure pattern 'node_child_process' in skills/meet-join/bot/__tests__/boot.test.ts:2", "shortDescription": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/bot/__tests__/boot.test.ts:2"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-601790f62743fa83", "name": "Insecure pattern 'node_child_process' in skills/meet-join/bot/src/browser/chrome-launcher.ts:25", "shortDescription": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/bot/src/browser/chrome-launcher.ts:25"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c847d59c48f8bf32", "name": "Insecure pattern 'node_child_process' in skills/meet-join/bot/src/browser/xdotool-type.ts:25", "shortDescription": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/bot/src/browser/xdotool-type.ts:25"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-251e8d96b62284f2", "name": "Insecure pattern 'node_child_process' in skills/meet-join/bot/src/browser/xdotool-click.ts:24", "shortDescription": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/bot/src/browser/xdotool-click.ts:24"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-775c2aee3f4569f3", "name": "Insecure pattern 'direct_innerhtml_assignment' in skills/meet-join/meet-controller-ext/src/__tests__/participants.test.t", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in skills/meet-join/meet-controller-ext/src/__tests__/participants.test.ts:124"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1ec366c70eac958a", "name": "Insecure pattern 'node_child_process' in skills/meet-join/daemon/tts-bridge.ts:34", "shortDescription": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/daemon/tts-bridge.ts:34"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ef3748bc33389ae4", "name": "Insecure pattern 'node_child_process' in skills/meet-join/daemon/storage-writer.ts:40", "shortDescription": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/daemon/storage-writer.ts:40"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cbcf82a74ee941d0", "name": "Insecure pattern 'node_child_process' in skills/meet-join/daemon/__tests__/artifacts-on-disk.test.ts:24", "shortDescription": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/daemon/__tests__/artifacts-on-disk.test.ts:24"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6685b9d1e2512381", "name": "Insecure pattern 'node_child_process' in skills/meet-join/daemon/__tests__/tts-bridge.test.ts:33", "shortDescription": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/daemon/__tests__/tts-bridge.test.ts:33"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-dcf5f5a620cde7a1", "name": "Insecure pattern 'cors_wildcard' in skills/deploy-fullstack-vercel/SKILL.md:177", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in skills/deploy-fullstack-vercel/SKILL.md:177"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4505506c6be7c4a3", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4ab4f36ab0b65e5b", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1838a141491ce38c", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d538cfaa506a71af", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ba56235aeaef7f86", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-37ae3001ac056bb3", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-447018ee7762b093", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-878357cdc8b567d8", "name": "package.json defines install-time lifecycle scripts", "shortDescription": {"text": "package.json defines install-time lifecycle scripts"}, "fullDescription": {"text": "preinstall/install/postinstall/prepare scripts execute during dependency installation. Review them carefully for network calls, obfuscation, shell execution, or credential access."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e4d160522292d719", "name": "package.json defines install-time lifecycle scripts", "shortDescription": {"text": "package.json defines install-time lifecycle scripts"}, "fullDescription": {"text": "preinstall/install/postinstall/prepare scripts execute during dependency installation. Review them carefully for network calls, obfuscation, shell execution, or credential access."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bf278668dedec30a", "name": "package.json defines install-time lifecycle scripts", "shortDescription": {"text": "package.json defines install-time lifecycle scripts"}, "fullDescription": {"text": "preinstall/install/postinstall/prepare scripts execute during dependency installation. Review them carefully for network calls, obfuscation, shell execution, or credential access."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-73575bbdd6765774", "name": "package.json defines install-time lifecycle scripts", "shortDescription": {"text": "package.json defines install-time lifecycle scripts"}, "fullDescription": {"text": "preinstall/install/postinstall/prepare scripts execute during dependency installation. Review them carefully for network calls, obfuscation, shell execution, or credential access."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cc212118d5ae0b3d", "name": "package.json defines install-time lifecycle scripts", "shortDescription": {"text": "package.json defines install-time lifecycle scripts"}, "fullDescription": {"text": "preinstall/install/postinstall/prepare scripts execute during dependency installation. Review them carefully for network calls, obfuscation, shell execution, or credential access."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-eae2e896525bb0c3", "name": "Very large file: credential-executor/src/__tests__/command-executor.test.ts (1870 lines)", "shortDescription": {"text": "Very large file: credential-executor/src/__tests__/command-executor.test.ts (1870 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-2a657274bb76e572", "name": "Very large file: apps/web/src/lib/streaming/event-parser.test.ts (3559 lines)", "shortDescription": {"text": "Very large file: apps/web/src/lib/streaming/event-parser.test.ts (3559 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-b5d2558f7d543530", "name": "Very large file: apps/web/src/domains/chat/turn-store.test.ts (1557 lines)", "shortDescription": {"text": "Very large file: apps/web/src/domains/chat/turn-store.test.ts (1557 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-51b66645eafb0001", "name": "Very large file: apps/web/src/domains/chat/components/chat-composer/emoji-catalog-data.ts (1992 lines)", "shortDescription": {"text": "Very large file: apps/web/src/domains/chat/components/chat-composer/emoji-catalog-data.ts (1992 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-7cd7456046d468be", "name": "Very large file: cli/src/__tests__/teleport.test.ts (2695 lines)", "shortDescription": {"text": "Very large file: cli/src/__tests__/teleport.test.ts (2695 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-47dff464362b9563", "name": "Very large file: cli/src/commands/teleport.ts (1548 lines)", "shortDescription": {"text": "Very large file: cli/src/commands/teleport.ts (1548 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-ee8d81acfb57b577", "name": "Very large file: cli/src/components/DefaultMainScreen.tsx (2602 lines)", "shortDescription": {"text": "Very large file: cli/src/components/DefaultMainScreen.tsx (2602 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-2f0493c89e6e4e72", "name": "Very large file: cli/src/lib/docker.ts (1692 lines)", "shortDescription": {"text": "Very large file: cli/src/lib/docker.ts (1692 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-7228556cdc8b9893", "name": "Very large file: clients/chrome-extension/background/worker.ts (1560 lines)", "shortDescription": {"text": "Very large file: clients/chrome-extension/background/worker.ts (1560 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-7f6e65597647c40e", "name": "Very large file: clients/chrome-extension/background/__tests__/host-browser-dispatcher.test.ts (2389 lines)", "shortDescription": {"text": "Very large file: clients/chrome-extension/background/__tests__/host-browser-dispatcher.test.ts (2389 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-3d4185df68cd3f08", "name": "Very large file: clients/macos/build.sh (2804 lines)", "shortDescription": {"text": "Very large file: clients/macos/build.sh (2804 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-554735d4488c4112", "name": "Very large file: assistant/src/__tests__/heartbeat-service.test.ts (1709 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/heartbeat-service.test.ts (1709 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-42bc03bc34ca85c8", "name": "Very large file: assistant/src/__tests__/checker.test.ts (1877 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/checker.test.ts (1877 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-ce92e075e69c1892", "name": "Very large file: assistant/src/__tests__/system-prompt.test.ts (1681 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/system-prompt.test.ts (1681 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-654b5133208d254b", "name": "Very large file: assistant/src/__tests__/llm-usage-store.test.ts (1738 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/llm-usage-store.test.ts (1738 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-a13e1b2c77e514b4", "name": "Very large file: assistant/src/__tests__/web-fetch.test.ts (1714 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/web-fetch.test.ts (1714 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-10a309744e28827e", "name": "Very large file: assistant/src/__tests__/openai-responses-provider.test.ts (1766 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/openai-responses-provider.test.ts (1766 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-b0c99dbaae4611f4", "name": "Very large file: assistant/src/__tests__/conversation-queue.test.ts (2907 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/conversation-queue.test.ts (2907 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-1e8d1f8a2a281d0d", "name": "Very large file: assistant/src/__tests__/conversation-runtime-assembly.test.ts (5947 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/conversation-runtime-assembly.test.ts (5947 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-f9a35c3a7c3177d7", "name": "Very large file: assistant/src/__tests__/channel-approval-routes.test.ts (3111 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/channel-approval-routes.test.ts (3111 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-15b9fccf9ef5fa38", "name": "Very large file: assistant/src/__tests__/migration-cross-version-compatibility.test.ts (1741 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/migration-cross-version-compatibility.test.ts (1741 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-3157abb16a405bf6", "name": "Very large file: assistant/src/__tests__/conversation-agent-loop.test.ts (3248 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/conversation-agent-loop.test.ts (3248 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-50cca4aab8974972", "name": "Very large file: assistant/src/__tests__/call-controller.test.ts (3042 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/call-controller.test.ts (3042 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-a12726655ebbfcda", "name": "Very large file: assistant/src/__tests__/conversation-skill-tools.test.ts (2886 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/conversation-skill-tools.test.ts (2886 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-f136c564b327aa0b", "name": "Very large file: assistant/src/__tests__/conversation-agent-loop-overflow.test.ts (1736 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/conversation-agent-loop-overflow.test.ts (1736 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1814d9104d0486a5", "name": "Very large file: assistant/src/__tests__/guardian-routing-invariants.test.ts (2081 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/guardian-routing-invariants.test.ts (2081 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-fdea1b322c455956", "name": "Very large file: assistant/src/__tests__/agent-loop.test.ts (2764 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/agent-loop.test.ts (2764 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-cb5507e79f0924cb", "name": "Very large file: assistant/src/__tests__/migration-parity-persistence.test.ts (1891 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/migration-parity-persistence.test.ts (1891 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-0f90248f74ba0cb2", "name": "Very large file: assistant/src/__tests__/thread-backfill.test.ts (2729 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/thread-backfill.test.ts (2729 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-8b9e874f6fdee5c3", "name": "Very large file: assistant/src/__tests__/anthropic-provider.test.ts (3059 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/anthropic-provider.test.ts (3059 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-95feb4f8dee09d07", "name": "Very large file: assistant/src/__tests__/channel-guardian.test.ts (3776 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/channel-guardian.test.ts (3776 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-29fbb4fbdf3a70ed", "name": "Very large file: assistant/src/__tests__/oauth-store.test.ts (2375 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/oauth-store.test.ts (2375 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-14d1dda90d57def5", "name": "Very large file: assistant/src/__tests__/openai-provider.test.ts (1957 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/openai-provider.test.ts (1957 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-5327afae64fe3b72", "name": "Very large file: assistant/src/__tests__/schedule-routes.test.ts (1613 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/schedule-routes.test.ts (1613 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-fccc554ac2d049bb", "name": "Very large file: assistant/src/__tests__/db-migration-rollback.test.ts (2994 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/db-migration-rollback.test.ts (2994 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-53fe80614540fa84", "name": "Very large file: assistant/src/__tests__/credential-vault.test.ts (1706 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/credential-vault.test.ts (1706 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-dececaa39f3a9562", "name": "Very large file: assistant/src/__tests__/config-schema.test.ts (2402 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/config-schema.test.ts (2402 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-671270ff8995c84d", "name": "Very large file: assistant/src/__tests__/relay-server.test.ts (4857 lines)", "shortDescription": {"text": "Very large file: assistant/src/__tests__/relay-server.test.ts (4857 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-6926c7336f07d6df", "name": "Very large file: assistant/src/agent/loop.ts (2416 lines)", "shortDescription": {"text": "Very large file: assistant/src/agent/loop.ts (2416 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-2d755d75e4671d2e", "name": "Very large file: assistant/src/providers/anthropic/client.ts (1889 lines)", "shortDescription": {"text": "Very large file: assistant/src/providers/anthropic/client.ts (1889 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-e88356de40ea385f", "name": "Very large file: assistant/src/calls/call-controller.ts (1506 lines)", "shortDescription": {"text": "Very large file: assistant/src/calls/call-controller.ts (1506 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a7e9e4fb91ac8dc1", "name": "Very large file: assistant/src/calls/relay-server.ts (2218 lines)", "shortDescription": {"text": "Very large file: assistant/src/calls/relay-server.ts (2218 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-5ec766adb937de8d", "name": "Very large file: assistant/src/daemon/conversation-surfaces.ts (2911 lines)", "shortDescription": {"text": "Very large file: assistant/src/daemon/conversation-surfaces.ts (2911 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-6899dda68aed3e8e", "name": "Very large file: assistant/src/daemon/lifecycle.ts (1409 lines)", "shortDescription": {"text": "Very large file: assistant/src/daemon/lifecycle.ts (1409 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-faa7745700fe724c", "name": "Very large file: assistant/src/daemon/conversation-agent-loop.ts (1683 lines)", "shortDescription": {"text": "Very large file: assistant/src/daemon/conversation-agent-loop.ts (1683 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-125e25cafaa31efd", "name": "Very large file: assistant/src/daemon/conversation.ts (1928 lines)", "shortDescription": {"text": "Very large file: assistant/src/daemon/conversation.ts (1928 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-e1103918a52cd804", "name": "Very large file: assistant/src/daemon/conversation-runtime-assembly.ts (2381 lines)", "shortDescription": {"text": "Very large file: assistant/src/daemon/conversation-runtime-assembly.ts (2381 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-a687b54ee2459619", "name": "Very large file: assistant/src/daemon/conversation-agent-loop-handlers.ts (2458 lines)", "shortDescription": {"text": "Very large file: assistant/src/daemon/conversation-agent-loop-handlers.ts (2458 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-f4be14d60a50fb08", "name": "Very large file: assistant/src/daemon/conversation-process.ts (1875 lines)", "shortDescription": {"text": "Very large file: assistant/src/daemon/conversation-process.ts (1875 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-5e521e39ecf0552a", "name": "Very large file: assistant/src/daemon/handlers/skills.ts (1763 lines)", "shortDescription": {"text": "Very large file: assistant/src/daemon/handlers/skills.ts (1763 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-64b1301c2c4b54ca", "name": "Very large file: assistant/src/messaging/providers/slack/render-transcript.test.ts (1643 lines)", "shortDescription": {"text": "Very large file: assistant/src/messaging/providers/slack/render-transcript.test.ts (1643 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-1cca664002e6d5a4", "name": "Very large file: assistant/src/memory/conversation-crud.ts (3009 lines)", "shortDescription": {"text": "Very large file: assistant/src/memory/conversation-crud.ts (3009 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-726f0e048340b1a5", "name": "Very large file: assistant/src/memory/__tests__/memory-retrospective-job.test.ts (1614 lines)", "shortDescription": {"text": "Very large file: assistant/src/memory/__tests__/memory-retrospective-job.test.ts (1614 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-0110f2d0124fffa6", "name": "Very large file: assistant/src/memory/v2/__tests__/injection.test.ts (2301 lines)", "shortDescription": {"text": "Very large file: assistant/src/memory/v2/__tests__/injection.test.ts (2301 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-8427492b684bdee7", "name": "Very large file: assistant/src/memory/v2/prompts/consolidation.ts (926 lines)", "shortDescription": {"text": "Very large file: assistant/src/memory/v2/prompts/consolidation.ts (926 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-47157d6545ddf208", "name": "Very large file: assistant/src/memory/graph/extraction.ts (1462 lines)", "shortDescription": {"text": "Very large file: assistant/src/memory/graph/extraction.ts (1462 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-dedb957c016b79c4", "name": "Very large file: assistant/src/runtime/agent-wake.ts (1285 lines)", "shortDescription": {"text": "Very large file: assistant/src/runtime/agent-wake.ts (1285 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-0b5b96bf7418215c", "name": "Very large file: assistant/src/runtime/__tests__/agent-wake.test.ts (2399 lines)", "shortDescription": {"text": "Very large file: assistant/src/runtime/__tests__/agent-wake.test.ts (2399 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-5e9d71a470726c09", "name": "Very large file: assistant/src/runtime/routes/conversation-query-routes.ts (1667 lines)", "shortDescription": {"text": "Very large file: assistant/src/runtime/routes/conversation-query-routes.ts (1667 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-ab53c39a0f8bbb93", "name": "Very large file: assistant/src/runtime/routes/inbound-message-handler.ts (2575 lines)", "shortDescription": {"text": "Very large file: assistant/src/runtime/routes/inbound-message-handler.ts (2575 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-b4cf02b9d9068018", "name": "Very large file: assistant/src/runtime/routes/conversation-routes.ts (2802 lines)", "shortDescription": {"text": "Very large file: assistant/src/runtime/routes/conversation-routes.ts (2802 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-50df545d3a6cce06", "name": "Very large file: assistant/src/runtime/routes/migration-routes.ts (2044 lines)", "shortDescription": {"text": "Very large file: assistant/src/runtime/routes/migration-routes.ts (2044 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-8c94788eb94a0b45", "name": "Very large file: assistant/src/runtime/migrations/vbundle-streaming-importer.ts (2805 lines)", "shortDescription": {"text": "Very large file: assistant/src/runtime/migrations/vbundle-streaming-importer.ts (2805 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-2aaa0da02fc7e848", "name": "Very large file: assistant/src/runtime/migrations/__tests__/vbundle-streaming-importer.test.ts (1756 lines)", "shortDescription": {"text": "Very large file: assistant/src/runtime/migrations/__tests__/vbundle-streaming-importer.test.ts (1756 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-d038ada8c5e2f958", "name": "Very large file: assistant/src/tools/browser/browser-execution.ts (2708 lines)", "shortDescription": {"text": "Very large file: assistant/src/tools/browser/browser-execution.ts (2708 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-5168591a1ff74739", "name": "Very large file: assistant/src/tools/browser/cdp-client/__tests__/factory.test.ts (2789 lines)", "shortDescription": {"text": "Very large file: assistant/src/tools/browser/cdp-client/__tests__/factory.test.ts (2789 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-001ad9a71b7010f8", "name": "Very large file: assistant/src/context/compactor.ts (1452 lines)", "shortDescription": {"text": "Very large file: assistant/src/context/compactor.ts (1452 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-db88ef7c0f607290", "name": "Very large file: assistant/src/telemetry/usage-telemetry-reporter.test.ts (1875 lines)", "shortDescription": {"text": "Very large file: assistant/src/telemetry/usage-telemetry-reporter.test.ts (1875 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-cfea3162cc1c714d", "name": "Very large file: gateway/src/schema.ts (4676 lines)", "shortDescription": {"text": "Very large file: gateway/src/schema.ts (4676 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-b4839a789001172d", "name": "Very large file: gateway/src/index.ts (2469 lines)", "shortDescription": {"text": "Very large file: gateway/src/index.ts (2469 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-bcc6a899768ec125", "name": "Very large file: gateway/src/__tests__/slack-socket-mode-thread-tracking.test.ts (1646 lines)", "shortDescription": {"text": "Very large file: gateway/src/__tests__/slack-socket-mode-thread-tracking.test.ts (1646 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-28a1faf383e11a44", "name": "Very large file: gateway/src/risk/bash-risk-classifier.test.ts (1886 lines)", "shortDescription": {"text": "Very large file: gateway/src/risk/bash-risk-classifier.test.ts (1886 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-635d473c6df451e1", "name": "Very large file: gateway/src/slack/normalize.test.ts (1480 lines)", "shortDescription": {"text": "Very large file: gateway/src/slack/normalize.test.ts (1480 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-e2ae884954384946", "name": "Very large file: gateway/src/slack/socket-mode.ts (1861 lines)", "shortDescription": {"text": "Very large file: gateway/src/slack/socket-mode.ts (1861 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-b2cd51164685574a", "name": "Very large file: evals/src/lib/report-html.tsx (2055 lines)", "shortDescription": {"text": "Very large file: evals/src/lib/report-html.tsx (2055 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-05f7701465d6e3bb", "name": "Very large file: evals/src/lib/__tests__/vellum-adapter.test.ts (1416 lines)", "shortDescription": {"text": "Very large file: evals/src/lib/__tests__/vellum-adapter.test.ts (1416 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-775bbc17a68392ae", "name": "Very large file: skills/meet-join/bot/__tests__/main.test.ts (1625 lines)", "shortDescription": {"text": "Very large file: skills/meet-join/bot/__tests__/main.test.ts (1625 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-457ef46dac4fc77d", "name": "Very large file: skills/meet-join/bot/src/main.ts (1432 lines)", "shortDescription": {"text": "Very large file: skills/meet-join/bot/src/main.ts (1432 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-91e5cc152bce8384", "name": "Very large file: skills/meet-join/daemon/session-manager.ts (2996 lines)", "shortDescription": {"text": "Very large file: skills/meet-join/daemon/session-manager.ts (2996 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-3b0a9b06381ecea2", "name": "Very large file: skills/meet-join/daemon/__tests__/session-manager.test.ts (2477 lines)", "shortDescription": {"text": "Very large file: skills/meet-join/daemon/__tests__/session-manager.test.ts (2477 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-aba2095ac97be57e", "name": "50 TODO/FIXME markers", "shortDescription": {"text": "50 TODO/FIXME markers"}, "fullDescription": {"text": "High count of TODO/FIXME/HACK markers \u2014 track them as issues so they're not forgotten."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-19e5e4bcdc411698", "name": "Node manifest has dependencies but no lockfile: meta/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: meta/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bea1c3d87ca67716", "name": "Node manifest has dependencies but no lockfile: assistant/examples/plugins/echo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: assistant/examples/plugins/echo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 1657 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 711 placeholder/mock markers across 281 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9d79c4077342a7d0", "name": "Runtime service client appears to use placeholder configuration", "shortDescription": {"text": "Runtime service client appears to use placeholder configuration"}, "fullDescription": {"text": "A runtime source file appears to wire Supabase/Firebase/AI/payment-style clients to placeholder URLs, keys, or fallback values. In the Fable corpus this often means the UI/API shape is present while the backend service is not actually configured."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-749d4bc1bd66df5f", "name": "Agent instructions exist but release-hardening basics are missing", "shortDescription": {"text": "Agent instructions exist but release-hardening basics are missing"}, "fullDescription": {"text": "AI-coder instruction files were found, but the repo is missing lockfile. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-469b1f530dbde9e5", "name": "Agent authority lacks a verifier contract: cli/AGENTS.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: cli/AGENTS.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-32ee1b26d9245902", "name": "Agent authority lacks a verifier contract: meta/feature-flags/AGENTS.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: meta/feature-flags/AGENTS.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-78c6b3bd59439e66", "name": "Agent authority lacks a verifier contract: .claude/README.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/README.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-c0360931af4640a6", "name": "Agent authority lacks a verifier contract: assistant/src/notifications/AGENTS.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: assistant/src/notifications/AGENTS.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-57856d2717256274", "name": "Agent authority lacks a verifier contract: assistant/src/config/bundled-skills/computer-use/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: assistant/src/config/bundled-skills/computer-use/SKILL.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-1b1aab7496d6828f", "name": "Agent authority lacks a verifier contract: assistant/src/config/bundled-skills/playbooks/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: assistant/src/config/bundled-skills/playbooks/SKILL.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-c89fc8a3d425e46b", "name": "Agent authority lacks a verifier contract: assistant/src/config/bundled-skills/acp/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: assistant/src/config/bundled-skills/acp/SKILL.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-a86014590fa763e5", "name": "Agent authority lacks a verifier contract: assistant/src/workspace/migrations/AGENTS.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: assistant/src/workspace/migrations/AGENTS.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-ec9f35039c3ea4e7", "name": "Agent authority lacks a verifier contract: assistant/src/tools/AGENTS.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: assistant/src/tools/AGENTS.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-e3affbea73c2305d", "name": "Agent instruction/config may expose a secret: gateway/src/risk/command-registry/AGENTS.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: gateway/src/risk/command-registry/AGENTS.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ff2d4e09ff918097", "name": "Agent authority lacks a verifier contract: skills/AGENTS.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/AGENTS.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-cd09138cc566d63d", "name": "Agent authority lacks a verifier contract: skills/notifications/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/notifications/SKILL.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-6010cf08623b9436", "name": "Agent authority lacks a verifier contract: skills/watch-together/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/watch-together/SKILL.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-9d2fd85fe0d4d426", "name": "Agent authority lacks a verifier contract: skills/vellum-oauth-integrations/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/vellum-oauth-integrations/SKILL.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-e0e085ba59c87973", "name": "Agent authority lacks a verifier contract: skills/assistant-migration/references/claude.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/assistant-migration/references/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-9f0629d860a28ade", "name": "Agent authority lacks a verifier contract: skills/vellum-heartbeat/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/vellum-heartbeat/SKILL.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-5264beba7c71d1d7", "name": "Agent authority lacks a verifier contract: skills/conversation-launcher/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/conversation-launcher/SKILL.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-b8d092dbd9ae21c2", "name": "Agent authority lacks a verifier contract: skills/vellum-skills-catalog/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/vellum-skills-catalog/SKILL.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-7fbbe120de99d795", "name": "Agent authority lacks a verifier contract: skills/weather/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/weather/SKILL.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-44d3d818580b9f2e", "name": "Agent authority lacks a verifier contract: skills/chatgpt-import/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/chatgpt-import/SKILL.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-cdf69a4648db08a5", "name": "Agent authority lacks a verifier contract: skills/macos-automation/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/macos-automation/SKILL.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-ab6761d825be8c06", "name": "Agent authority lacks a verifier contract: skills/tasks/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/tasks/SKILL.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-2c037dde6ad623db", "name": "Agent authority lacks a verifier contract: skills/screen-recording/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/screen-recording/SKILL.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-60c17943614a010e", "name": "Agent authority lacks a verifier contract: skills/vellum-self-knowledge/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/vellum-self-knowledge/SKILL.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-26016bfa20a73d97", "name": "Agent authority lacks a verifier contract: skills/meet-join/AGENTS.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/meet-join/AGENTS.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-98be033152fd4b0b", "name": "Agent authority lacks a verifier contract: skills/mcp-setup/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/mcp-setup/SKILL.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-a77c987857523893", "name": "Agent authority lacks a verifier contract: skills/cli-discover/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/cli-discover/SKILL.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-bbb90c090e7e2e94", "name": "Agent authority lacks a verifier contract: skills/inbox-management/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/inbox-management/SKILL.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-98fd0ca3b2edc893", "name": "Agent instruction/config may expose a secret: skills/oura/SKILL.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: skills/oura/SKILL.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d94de8fac2db649c", "name": "Agent instruction/config may expose a secret: skills/deploy-fullstack-vercel/SKILL.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: skills/deploy-fullstack-vercel/SKILL.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-88f5ad5577569fb4", "name": "Agent authority lacks a verifier contract: skills/watcher/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/watcher/SKILL.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-fbdcdb3635399145", "name": "Agent authority lacks a verifier contract: skills/vellum-conversation-management/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/vellum-conversation-management/SKILL.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-9a4f448660afdbf1", "name": "Agent authority lacks a verifier contract: skills/geo-writing/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/geo-writing/SKILL.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-f98bd3645fd57c5d", "name": "Commented-code block (8 lines) in credential-executor/src/cli.ts:34", "shortDescription": {"text": "Commented-code block (8 lines) in credential-executor/src/cli.ts:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-27ef7d0bdbe5a22c", "name": "Commented-code block (7 lines) in credential-executor/src/managed-main.ts:140", "shortDescription": {"text": "Commented-code block (7 lines) in credential-executor/src/managed-main.ts:140"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b3d73cbed6a3b011", "name": "Commented-code block (5 lines) in credential-executor/src/__tests__/http-policy.test.ts:356", "shortDescription": {"text": "Commented-code block (5 lines) in credential-executor/src/__tests__/http-policy.test.ts:356"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-67106f99db3f6bec", "name": "Commented-code block (7 lines) in credential-executor/src/__tests__/local-secure-key-backend.test.ts:160", "shortDescription": {"text": "Commented-code block (7 lines) in credential-executor/src/__tests__/local-secure-key-backend.test.ts:160"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-87e5c8c190006c4f", "name": "Commented-code block (5 lines) in credential-executor/src/__tests__/command-workspace.test.ts:941", "shortDescription": {"text": "Commented-code block (5 lines) in credential-executor/src/__tests__/command-workspace.test.ts:941"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-820d4ba0c02799eb", "name": "Commented-code block (5 lines) in credential-executor/src/__tests__/ces-migrations-runner.test.ts:32", "shortDescription": {"text": "Commented-code block (5 lines) in credential-executor/src/__tests__/ces-migrations-runner.test.ts:32"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b108d3477465cb19", "name": "Commented-code block (5 lines) in credential-executor/src/__tests__/command-executor.test.ts:1783", "shortDescription": {"text": "Commented-code block (5 lines) in credential-executor/src/__tests__/command-executor.test.ts:1783"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7c6c17c371044cb0", "name": "Legacy-named symbol `ast_old` in credential-executor/src/__tests__/managed-lazy-getters.test.ts:25", "shortDescription": {"text": "Legacy-named symbol `ast_old` in credential-executor/src/__tests__/managed-lazy-getters.test.ts:25"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-591ef6fc18d2ba76", "name": "`fetch()` without try/.catch or AbortSignal \u2014 credential-executor/src/__tests__/managed-reconnect.test.ts:66", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 credential-executor/src/__tests__/managed-reconnect.test.ts:66"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-52f631ea30cf4a67", "name": "Commented-code block (5 lines) in credential-executor/src/__tests__/managed-integration.test.ts:368", "shortDescription": {"text": "Commented-code block (5 lines) in credential-executor/src/__tests__/managed-integration.test.ts:368"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-62df476004cf7ab7", "name": "`fetch()` without try/.catch or AbortSignal \u2014 credential-executor/src/__tests__/managed-integration.test.ts:388", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 credential-executor/src/__tests__/managed-integration.test.ts:388"}, "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-333008f4da501ee4", "name": "Commented-code block (5 lines) in credential-executor/src/commands/executor.ts:708", "shortDescription": {"text": "Commented-code block (5 lines) in credential-executor/src/commands/executor.ts:708"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eca6701a30e691ad", "name": "Commented-code block (5 lines) in credential-executor/src/commands/validator.ts:436", "shortDescription": {"text": "Commented-code block (5 lines) in credential-executor/src/commands/validator.ts:436"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6412c0c739aacaba", "name": "Commented-code block (6 lines) in credential-executor/src/commands/workspace.ts:187", "shortDescription": {"text": "Commented-code block (6 lines) in credential-executor/src/commands/workspace.ts:187"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-14e4107a7d8786a0", "name": "Commented-code block (5 lines) in credential-executor/src/http/path-template.ts:209", "shortDescription": {"text": "Commented-code block (5 lines) in credential-executor/src/http/path-template.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-765649a756db4ae6", "name": "Commented-code block (6 lines) in credential-executor/src/materializers/local-secure-key-backend.ts:370", "shortDescription": {"text": "Commented-code block (6 lines) in credential-executor/src/materializers/local-secure-key-backend.ts:370"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-85a7de0d6176332f", "name": "Commented-code block (13 lines) in apps/web/vite.config.ts:83", "shortDescription": {"text": "Commented-code block (13 lines) in apps/web/vite.config.ts:83"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1b0e9c66376326ac", "name": "Commented-code block (6 lines) in apps/web/test-setup.ts:17", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/test-setup.ts:17"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4a5941dba492f866", "name": "Commented-code block (5 lines) in apps/web/capacitor.config.ts:27", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/capacitor.config.ts:27"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0bda481f5ee656c2", "name": "Commented-code block (6 lines) in apps/web/vite-plugin-local-mode.ts:580", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/vite-plugin-local-mode.ts:580"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ff6332088cc715ec", "name": "Commented-code block (5 lines) in apps/web/eslint.config.mjs:52", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/eslint.config.mjs:52"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-78d9d83cc16d8240", "name": "Commented-code block (6 lines) in apps/web/scripts/postinstall.ts:75", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/scripts/postinstall.ts:75"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eee22f4732397e02", "name": "Commented-code block (10 lines) in apps/web/src/routes.tsx:44", "shortDescription": {"text": "Commented-code block (10 lines) in apps/web/src/routes.tsx:44"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f4d38f86eaa94b28", "name": "Commented-code block (6 lines) in apps/web/src/root-layout.tsx:134", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/root-layout.tsx:134"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-98cd08b42249f07f", "name": "Commented-code block (5 lines) in apps/web/src/types/interaction-ui-types.ts:70", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/types/interaction-ui-types.ts:70"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-60ae6d029737910f", "name": "Commented-code block (5 lines) in apps/web/src/stores/viewer-store.ts:290", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/stores/viewer-store.ts:290"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-53abc125524fd015", "name": "Commented-code block (6 lines) in apps/web/src/stores/auth-store.test.ts:209", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/stores/auth-store.test.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-ee14e11f98db60cc", "name": "Commented-code block (6 lines) in apps/web/src/stores/auth-store.ts:287", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/stores/auth-store.ts:287"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c5225ff0bc6de93e", "name": "Commented-code block (7 lines) in apps/web/src/stores/viewer-store.test.ts:441", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/stores/viewer-store.test.ts:441"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a4aabad8a9db96f0", "name": "Commented-code block (5 lines) in apps/web/src/stores/resolved-assistants-store.ts:181", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/stores/resolved-assistants-store.ts:181"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8b7cddb251fb50fb", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/utils/is-transient-network-error.test.ts:15", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/utils/is-transient-network-error.test.ts:15"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-91b4fd15b872a268", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/utils/is-transient-network-error.ts:13", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/utils/is-transient-network-error.ts:13"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-464602b7c34b5565", "name": "Commented-code block (5 lines) in apps/web/src/utils/typed-storage.ts:145", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/utils/typed-storage.ts:145"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d5fcc9f197796dee", "name": "Commented-code block (5 lines) in apps/web/src/utils/local-settings.ts:109", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/utils/local-settings.ts:109"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2ab37062291b78d5", "name": "Commented-code block (5 lines) in apps/web/src/utils/use-bundled-avatar-components.ts:16", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/utils/use-bundled-avatar-components.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-de22205c70f67d35", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/utils/sandbox-bridge.ts:11", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/utils/sandbox-bridge.ts:11"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-44b4a6f13a1646eb", "name": "Legacy-named symbol `nudgeLegacy` in apps/web/src/utils/storage-migration.ts:260", "shortDescription": {"text": "Legacy-named symbol `nudgeLegacy` in apps/web/src/utils/storage-migration.ts:260"}, "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-e13896e88a1d9843", "name": "Commented-code block (9 lines) in apps/web/src/utils/conversation-list-fetchers.ts:261", "shortDescription": {"text": "Commented-code block (9 lines) in apps/web/src/utils/conversation-list-fetchers.ts:261"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-492d07c95ae80f9d", "name": "Legacy-named symbol `nudgeLegacy` in apps/web/src/utils/storage-migration.test.ts:343", "shortDescription": {"text": "Legacy-named symbol `nudgeLegacy` in apps/web/src/utils/storage-migration.test.ts:343"}, "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-fe1d0b6751539be9", "name": "Commented-code block (6 lines) in apps/web/src/components/file-markdown.tsx:243", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/components/file-markdown.tsx:243"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f7562f78c9acc3c9", "name": "Legacy-named symbol `restoring_backup` in apps/web/src/components/status-banner.tsx:50", "shortDescription": {"text": "Legacy-named symbol `restoring_backup` in apps/web/src/components/status-banner.tsx:50"}, "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-befe47dd90cea0f1", "name": "Commented-code block (5 lines) in apps/web/src/components/profile-card.test.tsx:54", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/components/profile-card.test.tsx:54"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-82a52b4c01246ac7", "name": "Commented-code block (5 lines) in apps/web/src/components/timezone-sync.test.tsx:194", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/components/timezone-sync.test.tsx:194"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d70e528abb240efb", "name": "Commented-code block (6 lines) in apps/web/src/components/about-page.tsx:51", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/components/about-page.tsx:51"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0fec4482c73658f9", "name": "Commented-code block (5 lines) in apps/web/src/components/profile-card.tsx:194", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/components/profile-card.tsx:194"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cd5ccff8e255a1dd", "name": "Commented-code block (6 lines) in apps/web/src/components/profile-quick-add-provider.tsx:103", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/components/profile-quick-add-provider.tsx:103"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5fa2a9a10cf4c3e1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/components/profile-quick-add-provider.tsx:23", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/components/profile-quick-add-provider.tsx:23"}, "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-bf86d0fd52a3b658", "name": "Commented-code block (7 lines) in apps/web/src/components/sidebar-shell.tsx:38", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/components/sidebar-shell.tsx:38"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ffe7994564221a92", "name": "Commented-code block (6 lines) in apps/web/src/components/share-feedback-modal.tsx:205", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/components/share-feedback-modal.tsx:205"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a255815a88d7d0d1", "name": "Commented-code block (5 lines) in apps/web/src/components/integrations/integration-icon.tsx:14", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/components/integrations/integration-icon.tsx:14"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-936da8bfa371f076", "name": "Commented-code block (9 lines) in apps/web/src/components/charts/format-date-label.ts:41", "shortDescription": {"text": "Commented-code block (9 lines) in apps/web/src/components/charts/format-date-label.ts:41"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f1c20d05021f1f93", "name": "Commented-code block (5 lines) in apps/web/src/components/avatar/subagent-avatar-chip.tsx:34", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/components/avatar/subagent-avatar-chip.tsx:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c3459f353a9b77e3", "name": "Commented-code block (7 lines) in apps/web/src/components/avatar/animated-avatar.tsx:161", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/components/avatar/animated-avatar.tsx:161"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fbf8f29f129ec357", "name": "Commented-code block (5 lines) in apps/web/src/components/command-palette/command-palette-window-page.tsx:97", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/components/command-palette/command-palette-window-page.tsx:97"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f73ad3419aed6758", "name": "Commented-code block (5 lines) in apps/web/src/lib/api-interceptors.test.ts:180", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/lib/api-interceptors.test.ts:180"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d13f10f22d7bbdaa", "name": "Commented-code block (6 lines) in apps/web/src/lib/event-bus.ts:163", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/lib/event-bus.ts:163"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a67beb378a5fdb73", "name": "Commented-code block (11 lines) in apps/web/src/lib/diagnostics-platform.test.ts:16", "shortDescription": {"text": "Commented-code block (11 lines) in apps/web/src/lib/diagnostics-platform.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-155c73e793a325aa", "name": "Commented-code block (5 lines) in apps/web/src/lib/local-mode-repair.test.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/lib/local-mode-repair.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-7469caaf1438d3c3", "name": "Commented-code block (5 lines) in apps/web/src/lib/diagnostics.test.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/lib/diagnostics.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-d33812b5f8f710df", "name": "Commented-code block (5 lines) in apps/web/src/lib/api-interceptors.ts:144", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/lib/api-interceptors.ts:144"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2ee0594ccc191952", "name": "Commented-code block (5 lines) in apps/web/src/lib/threshold-api.ts:91", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/lib/threshold-api.ts:91"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9635c668d1706801", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/tts-synthesize.ts:82", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/tts-synthesize.ts:82"}, "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-dc1d8fe95fd61d55", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/backwards-compat/utils.ts:88", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/backwards-compat/utils.ts:88"}, "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-5375b8323e39e3e5", "name": "Commented-code block (7 lines) in apps/web/src/lib/backwards-compat/impersonate-version-flag.ts:9", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/lib/backwards-compat/impersonate-version-flag.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-f141d0562ae2902b", "name": "Commented-code block (5 lines) in apps/web/src/lib/backwards-compat/conversation-processing-state.test.ts:64", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/lib/backwards-compat/conversation-processing-state.test.ts:64"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-95b08e829044a76b", "name": "Commented-code block (6 lines) in apps/web/src/lib/navigation/navigation-resolver.ts:278", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/lib/navigation/navigation-resolver.ts:278"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6dbd95be7f057520", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/auth/request-headers.ts:4", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/auth/request-headers.ts:4"}, "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-24369997eda8467e", "name": "Commented-code block (6 lines) in apps/web/src/lib/sentry/sentry-init.ts:33", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/lib/sentry/sentry-init.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-ecf56489002f07b7", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/sentry/sentry-init.ts:35", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/sentry/sentry-init.ts:35"}, "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-cf8ae87f61d83e00", "name": "Commented-code block (5 lines) in apps/web/src/lib/billing/machine-sizes.ts:39", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/lib/billing/machine-sizes.ts:39"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cd479244188da262", "name": "Commented-code block (7 lines) in apps/web/src/lib/streaming/stream-transport.ts:125", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/lib/streaming/stream-transport.ts:125"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c89ee316dc919012", "name": "Commented-code block (6 lines) in apps/web/src/lib/streaming/stream-transport.test.ts:93", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/lib/streaming/stream-transport.test.ts:93"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7e1617d05a008f46", "name": "Commented-code block (9 lines) in apps/web/src/lib/streaming/event-parser.test.ts:3479", "shortDescription": {"text": "Commented-code block (9 lines) in apps/web/src/lib/streaming/event-parser.test.ts:3479"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a9d5abb80c73ae63", "name": "Commented-code block (5 lines) in apps/web/src/lib/streaming/cold-anchor.ts:65", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/lib/streaming/cold-anchor.ts:65"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a6ee44f5dbb7b9c0", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/streaming/cold-anchor.ts:5", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/streaming/cold-anchor.ts:5"}, "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-242b48c3a98a03ce", "name": "Commented-code block (5 lines) in apps/web/src/lib/streaming/stream-watchdog.ts:102", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/lib/streaming/stream-watchdog.ts:102"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b6d20a7f75691e06", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/runtime/local-mode-host.ts:133", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/runtime/local-mode-host.ts:133"}, "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-5fb47583885eb9b1", "name": "Commented-code block (7 lines) in apps/web/src/runtime/is-electron.ts:88", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/runtime/is-electron.ts:88"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eb4588f398e3e350", "name": "Commented-code block (5 lines) in apps/web/src/runtime/notifications.ts:368", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/runtime/notifications.ts:368"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-963005fd4f73022d", "name": "Commented-code block (5 lines) in apps/web/src/runtime/native-auth.ts:118", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/runtime/native-auth.ts:118"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4148a382fac0f4c1", "name": "Commented-code block (5 lines) in apps/web/src/runtime/session-token.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/runtime/session-token.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-3ed09b94b72d2876", "name": "Commented-code block (5 lines) in apps/web/src/runtime/event-sources/electron-deep-links.test.ts:31", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/runtime/event-sources/electron-deep-links.test.ts:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-81a61cd848dacea7", "name": "Commented-code block (5 lines) in apps/web/src/runtime/event-sources/capacitor-app-state.test.ts:39", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/runtime/event-sources/capacitor-app-state.test.ts:39"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b857d73c08c66149", "name": "Commented-code block (7 lines) in apps/web/src/assistant/api.ts:475", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/assistant/api.ts:475"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a659856739cb9001", "name": "Commented-code block (7 lines) in apps/web/src/assistant/sse-service.ts:58", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/assistant/sse-service.ts:58"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5d020a716f454792", "name": "Commented-code block (5 lines) in apps/web/src/assistant/sse-service.test.ts:64", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/assistant/sse-service.test.ts:64"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-21c701fa7e99acf0", "name": "Commented-code block (5 lines) in apps/web/src/assistant/lifecycle-service.test.ts:484", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/assistant/lifecycle-service.test.ts:484"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-588a043b62992bad", "name": "Commented-code block (5 lines) in apps/web/src/assistant/llm-model-catalog.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/assistant/llm-model-catalog.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-2e1ce0c2a7d32e21", "name": "Legacy-named symbol `restoring_backup` in apps/web/src/assistant/operational-status.ts:24", "shortDescription": {"text": "Legacy-named symbol `restoring_backup` in apps/web/src/assistant/operational-status.ts:24"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-deda0a8b054d6a9e", "name": "Commented-code block (5 lines) in apps/web/src/assistant/use-lifecycle.ts:44", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/assistant/use-lifecycle.ts:44"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-79d865fcffb3270c", "name": "Legacy-named symbol `uploadAvatarImageLegacy` in apps/web/src/assistant/avatar-api.ts:126", "shortDescription": {"text": "Legacy-named symbol `uploadAvatarImageLegacy` in apps/web/src/assistant/avatar-api.ts:126"}, "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-884a68a7a7b039e1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/assistant/queries.ts:7", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/assistant/queries.ts:7"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-29d2fa3ae6342d32", "name": "Commented-code block (10 lines) in apps/web/src/assistant/lifecycle-service.ts:158", "shortDescription": {"text": "Commented-code block (10 lines) in apps/web/src/assistant/lifecycle-service.ts:158"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c2f69e7f8dde0fbf", "name": "Commented-code block (6 lines) in apps/web/src/assistant/llm-model-catalog.test.ts:86", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/assistant/llm-model-catalog.test.ts:86"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ac4d8765cb7c8ce6", "name": "Commented-code block (5 lines) in apps/web/src/hooks/use-conversation-sync.ts:204", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/hooks/use-conversation-sync.ts:204"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-681dcd2413d3a991", "name": "Commented-code block (5 lines) in apps/web/src/hooks/use-assistant-identity-init.ts:48", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/hooks/use-assistant-identity-init.ts:48"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-74d67dcbf2dcbb4c", "name": "Commented-code block (8 lines) in apps/web/src/hooks/use-platform-gate.ts:159", "shortDescription": {"text": "Commented-code block (8 lines) in apps/web/src/hooks/use-platform-gate.ts:159"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f2d2eace7db52fcd", "name": "Commented-code block (7 lines) in apps/web/src/hooks/use-event-bus-init.ts:48", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/hooks/use-event-bus-init.ts:48"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1c92267a3059387a", "name": "Commented-code block (5 lines) in apps/web/src/hooks/use-platform-gate.test.ts:189", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/hooks/use-platform-gate.test.ts:189"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2d415bf684cf2e1a", "name": "Commented-code block (6 lines) in apps/web/src/hooks/use-bus-subscription.ts:33", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/hooks/use-bus-subscription.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-7348eb55d906e7c1", "name": "Commented-code block (5 lines) in apps/web/src/hooks/use-client-feature-flag-sync.ts:67", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/hooks/use-client-feature-flag-sync.ts:67"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ed2b124dda8d9707", "name": "Commented-code block (6 lines) in apps/web/src/hooks/use-event-bus-init.test.tsx:37", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/hooks/use-event-bus-init.test.tsx:37"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-052d5b5d8bb8d45f", "name": "Commented-code block (5 lines) in apps/web/src/hooks/use-assistant-avatar.ts:33", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/hooks/use-assistant-avatar.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-885bf85c2b542041", "name": "Commented-code block (6 lines) in apps/web/src/hooks/use-visible-viewport.ts:33", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/hooks/use-visible-viewport.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-857fd02d5589a620", "name": "Commented-code block (11 lines) in apps/web/src/domains/settings/ai/email-managed-content.tsx:67", "shortDescription": {"text": "Commented-code block (11 lines) in apps/web/src/domains/settings/ai/email-managed-content.tsx:67"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e3d5c08291ccef9a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/settings/ai/email-managed-content.tsx:71", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/settings/ai/email-managed-content.tsx:71"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7247e6ed9ce35a4d", "name": "Commented-code block (6 lines) in apps/web/src/domains/settings/ai/provider-create-form.tsx:38", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/settings/ai/provider-create-form.tsx:38"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-97e02657ebc376d5", "name": "Commented-code block (8 lines) in apps/web/src/domains/settings/ai/speech-to-text-card.tsx:40", "shortDescription": {"text": "Commented-code block (8 lines) in apps/web/src/domains/settings/ai/speech-to-text-card.tsx: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-c29e569b57a9d4a4", "name": "Commented-code block (5 lines) in apps/web/src/domains/settings/ai/profile-editor-provider-section.tsx:127", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/ai/profile-editor-provider-section.tsx:127"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-49099d01dcc4bfbe", "name": "Commented-code block (7 lines) in apps/web/src/domains/settings/ai/profile-advanced-params.tsx:269", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/ai/profile-advanced-params.tsx:269"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f9bb9028e73e657e", "name": "Commented-code block (7 lines) in apps/web/src/domains/settings/ai/profile-editor-modal.tsx:154", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/ai/profile-editor-modal.tsx:154"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b4ac18899e595946", "name": "Commented-code block (5 lines) in apps/web/src/domains/settings/ai/manage-providers-modal.tsx:90", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/ai/manage-providers-modal.tsx:90"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3c7b30764861e5bd", "name": "Commented-code block (8 lines) in apps/web/src/domains/settings/ai/provider-editor-modal.tsx:33", "shortDescription": {"text": "Commented-code block (8 lines) in apps/web/src/domains/settings/ai/provider-editor-modal.tsx:33"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-03ab01a3c9747db0", "name": "Legacy-named symbol `credits_legacy` in apps/web/src/domains/settings/components/adjust-plan-modal.test.tsx:373", "shortDescription": {"text": "Legacy-named symbol `credits_legacy` in apps/web/src/domains/settings/components/adjust-plan-modal.test.tsx:373"}, "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-c3bd4016c82fb7c6", "name": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/adjust-plan-modal.test.tsx:185", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/adjust-plan-modal.test.tsx:185"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ad6d530e7ac3103b", "name": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/access-consent-setting.tsx:25", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/access-consent-setting.tsx:25"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cc60caaa0040942a", "name": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/auto-top-up-payment-method-modal.tsx:19", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/auto-top-up-payment-method-modal.tsx:19"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a1dd5807708aefa4", "name": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/payment-methods-card.tsx:60", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/payment-methods-card.tsx:60"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-938171a67416238d", "name": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/resize-card.tsx:87", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/resize-card.tsx:87"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8e4ca354124dc9de", "name": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/auto-top-up-payment-method-modal.test.tsx:76", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/auto-top-up-payment-method-modal.test.tsx:76"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-afe134723e0f558c", "name": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/billing-panel.tsx:65", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/billing-panel.tsx:65"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-63a14d9e710a0070", "name": "Commented-code block (8 lines) in apps/web/src/domains/settings/components/auto-top-up-card.tsx:177", "shortDescription": {"text": "Commented-code block (8 lines) in apps/web/src/domains/settings/components/auto-top-up-card.tsx:177"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-828f7ec7298d18ff", "name": "Commented-code block (6 lines) in apps/web/src/domains/settings/components/assistant-status-panel.tsx:131", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/settings/components/assistant-status-panel.tsx:131"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4748846a0dd9c20c", "name": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/auto-top-up-card.test.tsx:66", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/auto-top-up-card.test.tsx:66"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cae50fed9d28c9b4", "name": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/adjust-plan-modal.tsx:82", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/adjust-plan-modal.tsx:82"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-021f871a67149a26", "name": "Legacy-named symbol `restore_backup` in apps/web/src/domains/settings/components/preview-release-channel.tsx:90", "shortDescription": {"text": "Legacy-named symbol `restore_backup` in apps/web/src/domains/settings/components/preview-release-channel.tsx:90"}, "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-5a8090319230d9c4", "name": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/recovery-mode-controls.tsx:34", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/recovery-mode-controls.tsx:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8fa6057cac35cde0", "name": "Commented-code block (10 lines) in apps/web/src/domains/settings/components/delete-account-section.tsx:25", "shortDescription": {"text": "Commented-code block (10 lines) in apps/web/src/domains/settings/components/delete-account-section.tsx:25"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e01e769f486f77ab", "name": "Legacy-named symbol `skip_backup` in apps/web/src/domains/settings/components/panels/doctor-chat-blocks.tsx:352", "shortDescription": {"text": "Legacy-named symbol `skip_backup` in apps/web/src/domains/settings/components/panels/doctor-chat-blocks.tsx:352"}, "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-797de46a431ef29e", "name": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/panels/assistant-lifecycle-panel.tsx:48", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/panels/assistant-lifecycle-panel.tsx:48"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c9aa04d941d3e8d4", "name": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/panels/assistant-terminal-panel.tsx:32", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/panels/assistant-terminal-panel.tsx:32"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b0d8ab85a84f5bb2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/settings/components/panels/use-doctor-sse.ts:121", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/settings/components/panels/use-doctor-sse.ts:121"}, "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-235893b4ba53d4ab", "name": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/panels/feature-flags-panel.tsx:67", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/panels/feature-flags-panel.tsx:67"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ea0e2c284e7f6177", "name": "Commented-code block (6 lines) in apps/web/src/domains/settings/components/panels/feature-flags-panel.test.tsx:5", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/settings/components/panels/feature-flags-panel.test.tsx:5"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-386ff28a5d9c1347", "name": "Commented-code block (6 lines) in apps/web/src/domains/settings/components/billing-usage/billing-usage-panel.tsx:65", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/settings/components/billing-usage/billing-usage-panel.tsx:65"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2fc92df7f3b122cb", "name": "Commented-code block (7 lines) in apps/web/src/domains/settings/billing/upgrade-cancel-page.tsx:27", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/billing/upgrade-cancel-page.tsx:27"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-56161605b4d14230", "name": "Commented-code block (7 lines) in apps/web/src/domains/settings/billing/upgrade-success-page.tsx:40", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/billing/upgrade-success-page.tsx: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-7461649f669b7b9a", "name": "Commented-code block (6 lines) in apps/web/src/domains/settings/billing/pro-onboarding/billing-onboarding-modal.tsx:163", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/settings/billing/pro-onboarding/billing-onboarding-modal.tsx:163"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f5eab61e9337f7cd", "name": "Commented-code block (8 lines) in apps/web/src/domains/settings/pages/notifications-page.tsx:406", "shortDescription": {"text": "Commented-code block (8 lines) in apps/web/src/domains/settings/pages/notifications-page.tsx:406"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5b2187e5d791e09f", "name": "Commented-code block (6 lines) in apps/web/src/domains/settings/hooks/use-billing-portal-session.ts:127", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/settings/hooks/use-billing-portal-session.ts:127"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a25817030b8794d1", "name": "Commented-code block (6 lines) in apps/web/src/domains/library/library-page.tsx:15", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/library/library-page.tsx:15"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-620377f8d5d3ec40", "name": "Commented-code block (5 lines) in apps/web/src/domains/intelligence/plugin-detail-page.upgrade.test.tsx:73", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/intelligence/plugin-detail-page.upgrade.test.tsx:73"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dbd8f5714a74aa30", "name": "Commented-code block (6 lines) in apps/web/src/domains/intelligence/intelligence-layout.tsx:71", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/intelligence/intelligence-layout.tsx:71"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bd34d32fd0b4c684", "name": "Commented-code block (6 lines) in apps/web/src/domains/intelligence/components/plugins/plugins-tab.tsx:31", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/intelligence/components/plugins/plugins-tab.tsx:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cefb9dccf9769d21", "name": "Commented-code block (5 lines) in apps/web/src/domains/intelligence/components/plugins/plugins-tab.test.tsx:285", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/intelligence/components/plugins/plugins-tab.test.tsx:285"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d816acca1ec252e4", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/turn-coordinator.test.ts:96", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/turn-coordinator.test.ts:96"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1dc4da982f21dcac", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/chat-layout.tsx:185", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/chat-layout.tsx:185"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-424ea617f5cbdacc", "name": "Commented-code block (10 lines) in apps/web/src/domains/chat/turn-store.test.ts:124", "shortDescription": {"text": "Commented-code block (10 lines) in apps/web/src/domains/chat/turn-store.test.ts:124"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a3887ff5e110d2ba", "name": "Commented-code block (9 lines) in apps/web/src/domains/chat/use-sidebar-state.ts:133", "shortDescription": {"text": "Commented-code block (9 lines) in apps/web/src/domains/chat/use-sidebar-state.ts:133"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2b60ca990f27531b", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/subagent-store.test.ts:920", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/subagent-store.test.ts:920"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4ecf2e13033a9f9e", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/turn-store.ts:319", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/turn-store.ts:319"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d726b9ad98c7f80c", "name": "Commented-code block (8 lines) in apps/web/src/domains/chat/chat-layout-header.tsx:16", "shortDescription": {"text": "Commented-code block (8 lines) in apps/web/src/domains/chat/chat-layout-header.tsx:16"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-afd0c83344fad863", "name": "Commented-code block (10 lines) in apps/web/src/domains/chat/turn-coordinator.ts:68", "shortDescription": {"text": "Commented-code block (10 lines) in apps/web/src/domains/chat/turn-coordinator.ts:68"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4540f72d623aa34d", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/active-chat-view.tsx:117", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/active-chat-view.tsx: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-6d9537c2458912a4", "name": "Commented-code block (8 lines) in apps/web/src/domains/chat/api/interactions.ts:190", "shortDescription": {"text": "Commented-code block (8 lines) in apps/web/src/domains/chat/api/interactions.ts:190"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-95b9e238f5cb0c05", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/api/messages.ts:438", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/api/messages.ts:438"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4d1f88b1a8d987d6", "name": "Commented-code block (8 lines) in apps/web/src/domains/chat/api/post-chat-message.test.ts:202", "shortDescription": {"text": "Commented-code block (8 lines) in apps/web/src/domains/chat/api/post-chat-message.test.ts:202"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-39e647da67f1d950", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/api/messages.test.ts:399", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/api/messages.test.ts:399"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d4ca9cdbeced3f66", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/message-sorting.ts:66", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/message-sorting.ts:66"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1334fc10332de54c", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/message-merge.ts:193", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/message-merge.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-653e73b92317c53f", "name": "Commented-code block (11 lines) in apps/web/src/domains/chat/utils/sanitize-display-messages.ts:34", "shortDescription": {"text": "Commented-code block (11 lines) in apps/web/src/domains/chat/utils/sanitize-display-messages.ts:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7081a710298b8e42", "name": "Legacy-named symbol `patchedOld` in apps/web/src/domains/chat/utils/sanitize-display-messages.test.ts:406", "shortDescription": {"text": "Legacy-named symbol `patchedOld` in apps/web/src/domains/chat/utils/sanitize-display-messages.test.ts:406"}, "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-7996c5c9b236c228", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/sanitize-display-messages.test.ts:671", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/sanitize-display-messages.test.ts:671"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9818a6da8fa31d68", "name": "Commented-code block (8 lines) in apps/web/src/domains/chat/utils/chat.ts:42", "shortDescription": {"text": "Commented-code block (8 lines) in apps/web/src/domains/chat/utils/chat.ts:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-96338e4b46f347c9", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/utils/reconcile-with-seq.ts:131", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/utils/reconcile-with-seq.ts:131"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-536be1d34a8d2259", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/dismissed-surfaces-storage.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/dismissed-surfaces-storage.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-bdcc08161ccb5260", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/message-sorting.test.ts:81", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/message-sorting.test.ts:81"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9ed69e4d58d62288", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/debug-api.ts:686", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/debug-api.ts:686"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2b33cb65b3f37d63", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/tool-call-card-utils.ts:760", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/tool-call-card-utils.ts:760"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-52b340724a74a749", "name": "Legacy-named symbol `pageOld` in apps/web/src/domains/chat/utils/message-merge.test.ts:394", "shortDescription": {"text": "Legacy-named symbol `pageOld` in apps/web/src/domains/chat/utils/message-merge.test.ts:394"}, "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-8e8d0d1040493718", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/message-merge.test.ts:187", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/message-merge.test.ts:187"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6f1a1c2fcf93b6d2", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/stream-updaters/stream-updaters.test.ts:125", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/stream-updaters/stream-updaters.test.ts:125"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ef3d14655c592017", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/stream-handlers/tool-call-handlers.ts:47", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/stream-handlers/tool-call-handlers.ts:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7b001474ee1cb7fa", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/stream-handlers/message-handlers.ts:229", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/stream-handlers/message-handlers.ts:229"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c70eea3188af4b8e", "name": "Commented-code block (14 lines) in apps/web/src/domains/chat/components/chat-content-layout.tsx:114", "shortDescription": {"text": "Commented-code block (14 lines) in apps/web/src/domains/chat/components/chat-content-layout.tsx:114"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4617d2b0bbeee770", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/composer-settings-menu.tsx:126", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/composer-settings-menu.tsx:126"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d06b597c994b11b9", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/chat-route-content.tsx:160", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/chat-route-content.tsx:160"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4a07cd518c398327", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/components/chat-body.tsx:200", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/components/chat-body.tsx:200"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-faf83913c32756d2", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/chat-rule-editor-modal.tsx:195", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/chat-rule-editor-modal.tsx:195"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-14bbd00147f95574", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/question-prompt-card.tsx:206", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/question-prompt-card.tsx:206"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-73dbf4fa4fb32dae", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/composer-settings-menu.test.tsx:116", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/composer-settings-menu.test.tsx:116"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-801235015cc9db6a", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/voice-input-button.tsx:306", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/voice-input-button.tsx:306"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-564f581aabb42347", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/maintenance-mode-banner.tsx:26", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/maintenance-mode-banner.tsx:26"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-267e2cd348d88a82", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/multi-activity-group/multi-activity-group.tsx:382", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/multi-activity-group/multi-activity-group.tsx:382"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-be717ce8432ea172", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/multi-activity-group/multi-activity-group.stories", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/multi-activity-group/multi-activity-group.stories.tsx:185"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d3a38002fd4655d6", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/multi-activity-group/multi-activity-group.test.ts", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/multi-activity-group/multi-activity-group.test.tsx:381"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fcb4a31395aea005", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/subagent-inline-progress-card/subagent-inline-pro", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/subagent-inline-progress-card/subagent-inline-progress-card.tsx:76"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e7ce29753d5d1c98", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/message-hover-actions/message-hover-actions.tsx:9", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/message-hover-actions/message-hover-actions.tsx:98"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0b8537ec88f045cb", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/chat-composer/chat-composer.tsx:214", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/chat-composer/chat-composer.tsx:214"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-58cd300d13e9e0e3", "name": "Commented-code block (8 lines) in apps/web/src/domains/chat/components/chat-composer/chat-composer.test.tsx:40", "shortDescription": {"text": "Commented-code block (8 lines) in apps/web/src/domains/chat/components/chat-composer/chat-composer.test.tsx: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-1f85d472dc32f535", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/tool-progress-card/tool-progress-card-shell.test.", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/tool-progress-card/tool-progress-card-shell.test.tsx:334"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4aff82f3005a4e82", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/tool-progress-card/derive-step-label.ts:164", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/tool-progress-card/derive-step-label.ts:164"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e0ca33f0daec1950", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/components/tool-progress-card/tool-step-pill.tsx:182", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/components/tool-progress-card/tool-step-pill.tsx:182"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0a19dd32aec30cff", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/tool-progress-card/phase-grouped-step-list.tsx:29", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/tool-progress-card/phase-grouped-step-list.tsx:297"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4ae12dda4246e013", "name": "Commented-code block (9 lines) in apps/web/src/domains/chat/components/tool-progress-card/tool-progress-card-shell.tsx:2", "shortDescription": {"text": "Commented-code block (9 lines) in apps/web/src/domains/chat/components/tool-progress-card/tool-progress-card-shell.tsx:252"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-961c48112bdc6cfa", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/tool-progress-card/header-step-carousel.tsx:164", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/tool-progress-card/header-step-carousel.tsx:164"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e1cfeddc1636d6e3", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/single-activity/single-activity.tsx:109", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/single-activity/single-activity.tsx:109"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-32a4a5f77b012d24", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/web-search/website-carousel.tsx:63", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/web-search/website-carousel.tsx:63"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7d61a5486bf4b14e", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/web-search/website-carousel.test.tsx:238", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/web-search/website-carousel.test.tsx:238"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-99eb4a5516425d1a", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/components/surfaces/table-surface.tsx:91", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/components/surfaces/table-surface.tsx:91"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bdda60608725f283", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/voice/global-push-to-talk-bridge.tsx:67", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/voice/global-push-to-talk-bridge.tsx:67"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-31d3735b7b5fff80", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/voice/stt-api.ts:264", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/voice/stt-api.ts:264"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6d8a0ace005d524d", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/voice/live-voice/pcm-capture.ts:26", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/voice/live-voice/pcm-capture.ts:26"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d4b5c873066f74d5", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/voice/live-voice/pcm-downsample-worklet.ts:55", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/voice/live-voice/pcm-downsample-worklet.ts:55"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2cfffdac9167c937", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/voice/live-voice/live-voice-client.test.ts:28", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/voice/live-voice/live-voice-client.test.ts:28"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-47510b769c93a25d", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/voice/live-voice/tts-playback.ts:342", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/voice/live-voice/tts-playback.ts:342"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-217c613914921273", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-conversation-history.ts:116", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-conversation-history.ts:116"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-48ff70dab3253d93", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/hooks/use-conversation-history.ts:118", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/hooks/use-conversation-history.ts:118"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c6115ad478fb4714", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-open-app-from-chat.test.ts:30", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-open-app-from-chat.test.ts:30"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-571eab0db95fa777", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-conversation-actions.ts:100", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-conversation-actions.ts:100"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f27bcbea4077a362", "name": "Commented-code block (9 lines) in apps/web/src/domains/chat/hooks/use-ghost-text-suggestion.ts:85", "shortDescription": {"text": "Commented-code block (9 lines) in apps/web/src/domains/chat/hooks/use-ghost-text-suggestion.ts:85"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5cf676433be1ef8b", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-attention-tracking-graduation.test.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-attention-tracking-graduation.test.ts:8"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-656bc1fe41382cea", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-conversation-history-reconnect-refetch.test.tsx:10", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-conversation-history-reconnect-refetch.test.tsx:10"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-016ffc4bd3c583a5", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/hooks/use-message-reconciliation.test.tsx:48", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/hooks/use-message-reconciliation.test.tsx:48"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bc9e7cf5f3869e63", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/hooks/use-message-reconciliation.test.tsx:361", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/hooks/use-message-reconciliation.test.tsx:361"}, "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-0048ede3ec17344f", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-dictation-overlay-sync.ts:73", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-dictation-overlay-sync.ts:73"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-93956d8aa3381909", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-message-reconciliation.ts:195", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-message-reconciliation.ts:195"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3bc3783d209b1a48", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/hooks/use-message-reconciliation.ts:466", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/hooks/use-message-reconciliation.ts:466"}, "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-a9813911d8260397", "name": "Commented-code block (10 lines) in apps/web/src/domains/chat/hooks/use-conversation-secondary-actions.ts:152", "shortDescription": {"text": "Commented-code block (10 lines) in apps/web/src/domains/chat/hooks/use-conversation-secondary-actions.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-4b74a86a06e05a0c", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/hooks/use-event-stream-rapid-switch.test.tsx:127", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/hooks/use-event-stream-rapid-switch.test.tsx:127"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1c6b64b2424e5fc6", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-onboarding-orchestrator.ts:54", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-onboarding-orchestrator.ts:54"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-20aa6ed7afa83f26", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/hooks/use-stream-event-handler.ts:154", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/hooks/use-stream-event-handler.ts:154"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-60686e0c73616a00", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-event-stream-resume-reconcile.test.tsx:149", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-event-stream-resume-reconcile.test.tsx:149"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-40b7a5a4932d7adc", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/hooks/use-event-stream-resume-reconcile.test.tsx", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/hooks/use-event-stream-resume-reconcile.test.tsx:125"}, "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-69802b5a124922b2", "name": "Commented-code block (9 lines) in apps/web/src/domains/chat/hooks/use-send-message.ts:156", "shortDescription": {"text": "Commented-code block (9 lines) in apps/web/src/domains/chat/hooks/use-send-message.ts:156"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a55d610aa89b754f", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-attention-tracking.ts:130", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-attention-tracking.ts:130"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2f2e6b140fc90ba5", "name": "Commented-code block (9 lines) in apps/web/src/domains/chat/hooks/use-conversation-loader.ts:144", "shortDescription": {"text": "Commented-code block (9 lines) in apps/web/src/domains/chat/hooks/use-conversation-loader.ts:144"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-acb9d579f4c37112", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-attention-tracking-reconnect-sweep.test.tsx:56", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-attention-tracking-reconnect-sweep.test.tsx:56"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-65fdb7e6419d845d", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-subagent-card-data.ts:208", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-subagent-card-data.ts:208"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c36133ed81d119f6", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-event-stream.ts:87", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-event-stream.ts:87"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-50f9cbc190f1076a", "name": "Commented-code block (9 lines) in apps/web/src/domains/chat/transcript/transcript.test.tsx:282", "shortDescription": {"text": "Commented-code block (9 lines) in apps/web/src/domains/chat/transcript/transcript.test.tsx:282"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-676f7e60f68cadad", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/transcript/use-transcript-scroll.ts:14", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/transcript/use-transcript-scroll.ts:14"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0797bb7a1a1a4848", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/transcript/message-content.ts:1", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/transcript/message-content.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-c665c0e5007f16ed", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/transcript/use-pull-to-refresh.ts:4", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/transcript/use-pull-to-refresh.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-0f655d4d54d31e8c", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/transcript/transcript-message-body.test.tsx:93", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/transcript/transcript-message-body.test.tsx:93"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-257f3f7423b9be18", "name": "Commented-code block (10 lines) in apps/web/src/domains/chat/transcript/use-history-pagination.ts:152", "shortDescription": {"text": "Commented-code block (10 lines) in apps/web/src/domains/chat/transcript/use-history-pagination.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-5c76b642921ff14d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/transcript/use-history-pagination.ts:76", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/transcript/use-history-pagination.ts:76"}, "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-378f8cfe904db6e2", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/transcript/use-transcript-scroll.test.ts:270", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/transcript/use-transcript-scroll.test.ts:270"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b15bf508809524b2", "name": "Commented-code block (15 lines) in apps/web/src/domains/chat/transcript/use-transcript-scroll.burst.test.tsx:321", "shortDescription": {"text": "Commented-code block (15 lines) in apps/web/src/domains/chat/transcript/use-transcript-scroll.burst.test.tsx:321"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f73b58977808f741", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/transcript/transcript-subagent-inline.test.tsx:407", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/transcript/transcript-subagent-inline.test.tsx:407"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-125c8becc7c4754c", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/streaming/sse-event-consumer.ts:197", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/streaming/sse-event-consumer.ts:197"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e689a70fed3b5e49", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/streaming/sse-event-consumer.test.ts:44", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/streaming/sse-event-consumer.test.ts:44"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5c6d7a7bbf1e1c04", "name": "Commented-code block (8 lines) in apps/web/src/domains/chat/streaming/reconcile-on-reopen.ts:85", "shortDescription": {"text": "Commented-code block (8 lines) in apps/web/src/domains/chat/streaming/reconcile-on-reopen.ts:85"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e1a7fe08d1423fcd", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/inspector/inspect-page.tsx:162", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/inspector/inspect-page.tsx:162"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7a413511eca68c06", "name": "Commented-code block (6 lines) in apps/web/src/domains/chat/inspector/inspect-page.test.tsx:96", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/inspector/inspect-page.test.tsx:96"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-19716cd51dcf699e", "name": "Commented-code block (7 lines) in apps/web/src/domains/chat/inspector/inspector-api.ts:199", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/inspector/inspector-api.ts:199"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f87f4dba5d33a847", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/inspector/components/mobile-call-selector.test.tsx:84", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/inspector/components/mobile-call-selector.test.tsx:84"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f8346b1f6c9aea0d", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/inspector/components/mobile-call-selector.tsx:44", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/inspector/components/mobile-call-selector.tsx:44"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6df2ea62164664f2", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/inspector/components/call-rail.tsx:116", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/inspector/components/call-rail.tsx:116"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fea03682edeb79bc", "name": "Commented-code block (5 lines) in apps/web/src/domains/chat/inspector/components/tabs/prompt-tab.tsx:171", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/inspector/components/tabs/prompt-tab.tsx:171"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4de6ce23c9a16ec2", "name": "Commented-code block (5 lines) in apps/web/src/domains/logs/components/usage-tab.tsx:110", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/logs/components/usage-tab.tsx:110"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dabec29eb29c1de4", "name": "Commented-code block (7 lines) in apps/web/src/domains/home/home-feed-list.tsx:60", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/home/home-feed-list.tsx:60"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ef2a17587d807dd2", "name": "Commented-code block (5 lines) in apps/web/src/domains/home/home-suggestion-pill-bar.tsx:57", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/home/home-suggestion-pill-bar.tsx:57"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-320c4c616df77310", "name": "Commented-code block (5 lines) in apps/web/src/domains/home/detail-panel/home-markdown-content.tsx:15", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/home/detail-panel/home-markdown-content.tsx:15"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-722ba049bbef4c51", "name": "Commented-code block (5 lines) in apps/web/src/domains/onboarding/prechat.ts:291", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/onboarding/prechat.ts:291"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4668a78b8ea8c5c5", "name": "Commented-code block (7 lines) in apps/web/src/domains/onboarding/onboarding-lifecycle-sync.test.tsx:282", "shortDescription": {"text": "Commented-code block (7 lines) in apps/web/src/domains/onboarding/onboarding-lifecycle-sync.test.tsx:282"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e7af8dd698fe223e", "name": "Commented-code block (5 lines) in apps/web/src/domains/onboarding/provider-catalog.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/onboarding/provider-catalog.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-da561e117c4b295b", "name": "Commented-code block (5 lines) in apps/web/src/domains/onboarding/funnel-events.ts:37", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/onboarding/funnel-events.ts:37"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9a706e12f280b6d3", "name": "Commented-code block (9 lines) in apps/web/src/domains/onboarding/cast/cast-onboarding-flow.tsx:451", "shortDescription": {"text": "Commented-code block (9 lines) in apps/web/src/domains/onboarding/cast/cast-onboarding-flow.tsx:451"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-369bf2cb24beaf18", "name": "Commented-code block (6 lines) in apps/web/src/domains/onboarding/cast/use-background-hatch.ts:22", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/onboarding/cast/use-background-hatch.ts:22"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-44480997f37e4b05", "name": "Commented-code block (6 lines) in apps/web/src/domains/onboarding/cast/screens/dialogue-screen.tsx:31", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/onboarding/cast/screens/dialogue-screen.tsx:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-73ef0529cd07543c", "name": "Commented-code block (11 lines) in apps/web/src/domains/onboarding/pages/hatching-screen.tsx:163", "shortDescription": {"text": "Commented-code block (11 lines) in apps/web/src/domains/onboarding/pages/hatching-screen.tsx:163"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d122d552596f50d8", "name": "Commented-code block (5 lines) in apps/web/src/domains/onboarding/pages/privacy-screen.tsx:63", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/onboarding/pages/privacy-screen.tsx:63"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9ce7ff3511fd310f", "name": "Commented-code block (6 lines) in apps/web/src/domains/account/handle.test.ts:158", "shortDescription": {"text": "Commented-code block (6 lines) in apps/web/src/domains/account/handle.test.ts:158"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8c4f5529fe18b66c", "name": "Commented-code block (8 lines) in apps/web/src/domains/account/components/personal-page-signup-screen.tsx:75", "shortDescription": {"text": "Commented-code block (8 lines) in apps/web/src/domains/account/components/personal-page-signup-screen.tsx:75"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c41ad755987f2c03", "name": "Commented-code block (5 lines) in apps/web/src/domains/account/pages/provider-signup-page.tsx:157", "shortDescription": {"text": "Commented-code block (5 lines) in apps/web/src/domains/account/pages/provider-signup-page.tsx:157"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c0f99381b07d5608", "name": "Commented-code block (5 lines) in apps/macos/electron.vite.config.ts:14", "shortDescription": {"text": "Commented-code block (5 lines) in apps/macos/electron.vite.config.ts:14"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6878a5c14b5f15ec", "name": "Commented-code block (5 lines) in apps/macos/scripts/install-file-deps.ts:46", "shortDescription": {"text": "Commented-code block (5 lines) in apps/macos/scripts/install-file-deps.ts:46"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-172ee157d5d11bd7", "name": "Commented-code block (5 lines) in apps/macos/scripts/dev.ts:26", "shortDescription": {"text": "Commented-code block (5 lines) in apps/macos/scripts/dev.ts:26"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0e084ead0779aaeb", "name": "Commented-code block (7 lines) in apps/macos/scripts/prepare-electron-dev-app.ts:20", "shortDescription": {"text": "Commented-code block (7 lines) in apps/macos/scripts/prepare-electron-dev-app.ts:20"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0227b46885e71ae6", "name": "Commented-code block (5 lines) in apps/macos/src/main/deep-links.test.ts:82", "shortDescription": {"text": "Commented-code block (5 lines) in apps/macos/src/main/deep-links.test.ts:82"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-57a2ec77c92084ad", "name": "Commented-code block (9 lines) in apps/macos/src/main/app-protocol.ts:62", "shortDescription": {"text": "Commented-code block (9 lines) in apps/macos/src/main/app-protocol.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-4e8359b1bb223e20", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/native-auth.test.ts:153", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/native-auth.test.ts:153"}, "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-0adee12d974b489b", "name": "Commented-code block (6 lines) in apps/macos/src/main/status.ts:155", "shortDescription": {"text": "Commented-code block (6 lines) in apps/macos/src/main/status.ts:155"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-faa7f755bab58abe", "name": "Commented-code block (6 lines) in apps/macos/src/main/dock.test.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in apps/macos/src/main/dock.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-cfca72581a6e788f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/vellumapp-protocol.ts:95", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/vellumapp-protocol.ts:95"}, "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-b3136f910b2fadc0", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/bundle-flow.ts:68", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/bundle-flow.ts:68"}, "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-1ff2e81b59344a2f", "name": "Commented-code block (7 lines) in apps/macos/src/main/app-protocol.test.ts:43", "shortDescription": {"text": "Commented-code block (7 lines) in apps/macos/src/main/app-protocol.test.ts:43"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9e87f5cd44bb4bb6", "name": "Commented-code block (9 lines) in apps/macos/src/main/deep-links.ts:140", "shortDescription": {"text": "Commented-code block (9 lines) in apps/macos/src/main/deep-links.ts:140"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-640dd83ff4143b03", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/workos-pkce.test.ts:162", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/workos-pkce.test.ts:162"}, "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-eaa6417cb8fb079c", "name": "Commented-code block (5 lines) in apps/macos/src/main/about.ts:63", "shortDescription": {"text": "Commented-code block (5 lines) in apps/macos/src/main/about.ts:63"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e9a3ebc0431ee3bd", "name": "Commented-code block (5 lines) in apps/macos/src/main/window-state.ts:24", "shortDescription": {"text": "Commented-code block (5 lines) in apps/macos/src/main/window-state.ts:24"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0b21f0776fff6bb6", "name": "Commented-code block (6 lines) in apps/macos/src/main/index.ts:75", "shortDescription": {"text": "Commented-code block (6 lines) in apps/macos/src/main/index.ts:75"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2100289e5edaa98e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/index.ts:257", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/index.ts:257"}, "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-ef134e07b6c9d294", "name": "Commented-code block (9 lines) in apps/macos/src/main/main-window.ts:17", "shortDescription": {"text": "Commented-code block (9 lines) in apps/macos/src/main/main-window.ts:17"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-457b89b1ff2fd6e1", "name": "Commented-code block (6 lines) in apps/macos/src/main/local-mode.test.ts:15", "shortDescription": {"text": "Commented-code block (6 lines) in apps/macos/src/main/local-mode.test.ts:15"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-91a4f5209c5644d7", "name": "Commented-code block (6 lines) in apps/macos/src/main/dock.ts:77", "shortDescription": {"text": "Commented-code block (6 lines) in apps/macos/src/main/dock.ts:77"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e667ddea81b348a2", "name": "Commented-code block (5 lines) in apps/macos/src/main/popout-window.ts:81", "shortDescription": {"text": "Commented-code block (5 lines) in apps/macos/src/main/popout-window.ts:81"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c7fa8c48cda387f0", "name": "Commented-code block (7 lines) in apps/macos/src/main/csp.ts:8", "shortDescription": {"text": "Commented-code block (7 lines) in apps/macos/src/main/csp.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-17ebe552f15cd796", "name": "Commented-code block (5 lines) in apps/macos/src/main/session-token-store.ts:9", "shortDescription": {"text": "Commented-code block (5 lines) in apps/macos/src/main/session-token-store.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-afbb6cd4bca91e26", "name": "Commented-code block (5 lines) in apps/macos/src/main/status-icon.ts:35", "shortDescription": {"text": "Commented-code block (5 lines) in apps/macos/src/main/status-icon.ts:35"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ed0e39562a785248", "name": "Commented-code block (13 lines) in apps/macos/src/main/commands.test.ts:5", "shortDescription": {"text": "Commented-code block (13 lines) in apps/macos/src/main/commands.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-2bf9d77b57846c8b", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/workos-pkce.ts:88", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/workos-pkce.ts:88"}, "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-3d260ac431dcc090", "name": "Commented-code block (5 lines) in apps/macos/src/main/vellumapp-protocol.test.ts:50", "shortDescription": {"text": "Commented-code block (5 lines) in apps/macos/src/main/vellumapp-protocol.test.ts:50"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f7a845aca940b70e", "name": "Commented-code block (5 lines) in apps/macos/src/main/tray.ts:213", "shortDescription": {"text": "Commented-code block (5 lines) in apps/macos/src/main/tray.ts:213"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-151c98f846943b92", "name": "Commented-code block (5 lines) in apps/macos/src/main/windows.ts:69", "shortDescription": {"text": "Commented-code block (5 lines) in apps/macos/src/main/windows.ts:69"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a279fb5a7c803cea", "name": "Commented-code block (5 lines) in scripts/check-generic-examples.ts:235", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/check-generic-examples.ts:235"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bd4b5271f78af9c0", "name": "Commented-code block (6 lines) in scripts/generate-emoji-catalog.ts:13", "shortDescription": {"text": "Commented-code block (6 lines) in scripts/generate-emoji-catalog.ts:13"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ec19003488c93728", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/generate-emoji-catalog.ts:320", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/generate-emoji-catalog.ts:320"}, "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-27423669042043d9", "name": "Commented-code block (5 lines) in cli/src/__tests__/assistant-config.test.ts:669", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/__tests__/assistant-config.test.ts:669"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-79fe171a2c555ca7", "name": "Commented-code block (5 lines) in cli/src/__tests__/client-token.test.ts:17", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/__tests__/client-token.test.ts:17"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e67b25469a254ff5", "name": "Commented-code block (9 lines) in cli/src/__tests__/orphan-detection.test.ts:264", "shortDescription": {"text": "Commented-code block (9 lines) in cli/src/__tests__/orphan-detection.test.ts:264"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-58ee946b753549a6", "name": "Commented-code block (7 lines) in cli/src/__tests__/guardian-token.test.ts:481", "shortDescription": {"text": "Commented-code block (7 lines) in cli/src/__tests__/guardian-token.test.ts:481"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4411c798b92d3668", "name": "Commented-code block (5 lines) in cli/src/__tests__/backup.test.ts:82", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/__tests__/backup.test.ts:82"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9de301608f16d145", "name": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/__tests__/devices.test.ts:37", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/__tests__/devices.test.ts:37"}, "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-129113dbc5621389", "name": "Commented-code block (6 lines) in cli/src/__tests__/teleport.test.ts:25", "shortDescription": {"text": "Commented-code block (6 lines) in cli/src/__tests__/teleport.test.ts:25"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dac34593cbda16e7", "name": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/__tests__/login-loopback.test.ts:27", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/__tests__/login-loopback.test.ts:27"}, "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-f734f72e0e88f690", "name": "Commented-code block (5 lines) in cli/src/__tests__/input-history.test.ts:45", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/__tests__/input-history.test.ts:45"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-153d494c146e248d", "name": "Commented-code block (7 lines) in cli/src/commands/login.ts:418", "shortDescription": {"text": "Commented-code block (7 lines) in cli/src/commands/login.ts:418"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8008583c90510267", "name": "Commented-code block (7 lines) in cli/src/commands/sleep.ts:138", "shortDescription": {"text": "Commented-code block (7 lines) in cli/src/commands/sleep.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-5bd1b75c4a90b416", "name": "Commented-code block (5 lines) in cli/src/commands/recover.ts:86", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/commands/recover.ts:86"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7c5db4481d9257c4", "name": "Commented-code block (6 lines) in cli/src/commands/wake.ts:54", "shortDescription": {"text": "Commented-code block (6 lines) in cli/src/commands/wake.ts:54"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8de24239272a9abd", "name": "Commented-code block (5 lines) in cli/src/commands/backup.ts:202", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/commands/backup.ts:202"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4f893ea0e98d7579", "name": "Commented-code block (5 lines) in cli/src/commands/client.ts:745", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/commands/client.ts:745"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-34ce432716b0849b", "name": "Commented-code block (5 lines) in cli/src/commands/retire.ts:105", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/commands/retire.ts:105"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a25092a432d18fce", "name": "Commented-code block (6 lines) in cli/src/commands/upgrade.ts:990", "shortDescription": {"text": "Commented-code block (6 lines) in cli/src/commands/upgrade.ts:990"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c0630b23af1add5e", "name": "Commented-code block (7 lines) in cli/src/commands/teleport.ts:385", "shortDescription": {"text": "Commented-code block (7 lines) in cli/src/commands/teleport.ts:385"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cee84ef9a5d359ef", "name": "Commented-code block (7 lines) in cli/src/commands/restore.ts:188", "shortDescription": {"text": "Commented-code block (7 lines) in cli/src/commands/restore.ts:188"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6c6d7aeb8ec74306", "name": "Commented-code block (5 lines) in cli/src/commands/connect/import.ts:49", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/commands/connect/import.ts:49"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4a5098ca6bc6bfe4", "name": "Commented-code block (5 lines) in cli/src/components/DefaultMainScreen.tsx:269", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/components/DefaultMainScreen.tsx:269"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-56a4fe21af6d26cd", "name": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/components/DefaultMainScreen.tsx:298", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/components/DefaultMainScreen.tsx:298"}, "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-d60c3fc94c094d26", "name": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/lib/loopback-fetch.ts:26", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/lib/loopback-fetch.ts:26"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a673279eaa18e503", "name": "Commented-code block (5 lines) in cli/src/lib/guardian-token.ts:46", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/lib/guardian-token.ts:46"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0ee0d33f44950df2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/lib/guardian-token.ts:456", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/lib/guardian-token.ts:456"}, "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-a8bda97d0f43c61f", "name": "Commented-code block (10 lines) in cli/src/lib/docker.ts:529", "shortDescription": {"text": "Commented-code block (10 lines) in cli/src/lib/docker.ts:529"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4de63ebb6199e430", "name": "Commented-code block (5 lines) in cli/src/lib/__tests__/docker.test.ts:88", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/lib/__tests__/docker.test.ts:88"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1a6d1cc7691a1258", "name": "Commented-code block (5 lines) in cli/src/lib/__tests__/local-runtime-client.test.ts:15", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/lib/__tests__/local-runtime-client.test.ts:15"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-644fae57890c8bd7", "name": "Commented-code block (5 lines) in cli/src/lib/environments/resolve.ts:89", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/lib/environments/resolve.ts:89"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-654258c1741c2496", "name": "Commented-code block (5 lines) in cli/src/lib/environments/__tests__/paths.test.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in cli/src/lib/environments/__tests__/paths.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-9f7a3048185e0a8a", "name": "Commented-code block (5 lines) in packages/skill-host-contracts/src/tool-types.ts:125", "shortDescription": {"text": "Commented-code block (5 lines) in packages/skill-host-contracts/src/tool-types.ts:125"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f4d2a532e670736a", "name": "Commented-code block (5 lines) in packages/skill-host-contracts/src/client.ts:569", "shortDescription": {"text": "Commented-code block (5 lines) in packages/skill-host-contracts/src/client.ts:569"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b5d9de835f4637ab", "name": "Commented-code block (6 lines) in packages/local-mode/src/wake.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in packages/local-mode/src/wake.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-b77904ac98e08dbc", "name": "Legacy-named symbol `asst_legacy` in packages/local-mode/src/lockfile.test.ts:68", "shortDescription": {"text": "Legacy-named symbol `asst_legacy` in packages/local-mode/src/lockfile.test.ts:68"}, "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-1c6a785504206482", "name": "Commented-code block (9 lines) in packages/credential-storage/src/oauth-runtime.ts:74", "shortDescription": {"text": "Commented-code block (9 lines) in packages/credential-storage/src/oauth-runtime.ts:74"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0791b5b68b6b3223", "name": "Commented-code block (5 lines) in packages/ipc-server-utils/src/socket-watchdog.ts:114", "shortDescription": {"text": "Commented-code block (5 lines) in packages/ipc-server-utils/src/socket-watchdog.ts:114"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8907386a41cd662a", "name": "Commented-code block (6 lines) in packages/design-library/src/components/button.tsx:286", "shortDescription": {"text": "Commented-code block (6 lines) in packages/design-library/src/components/button.tsx:286"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c2b9b34f7b18e6f0", "name": "Commented-code block (9 lines) in packages/design-library/src/components/panel-item/panel-item.tsx:347", "shortDescription": {"text": "Commented-code block (9 lines) in packages/design-library/src/components/panel-item/panel-item.tsx:347"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e09e6cf732ef0f1f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 clients/chrome-extension/background/cloud-api.ts:68", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 clients/chrome-extension/background/cloud-api.ts:68"}, "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-2b11c0d4615899fe", "name": "Commented-code block (15 lines) in clients/chrome-extension/background/host-browser-dispatcher.ts:207", "shortDescription": {"text": "Commented-code block (15 lines) in clients/chrome-extension/background/host-browser-dispatcher.ts:207"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-27d13c86cdb40fb9", "name": "Commented-code block (7 lines) in clients/chrome-extension/background/cdp-proxy.ts:248", "shortDescription": {"text": "Commented-code block (7 lines) in clients/chrome-extension/background/cdp-proxy.ts:248"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2d5a9097e4a854a3", "name": "Commented-code block (7 lines) in clients/chrome-extension/background/feedback.ts:316", "shortDescription": {"text": "Commented-code block (7 lines) in clients/chrome-extension/background/feedback.ts:316"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5a4cbb63521ac00f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 clients/chrome-extension/background/workos-pkce.ts:141", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 clients/chrome-extension/background/workos-pkce.ts:141"}, "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-1677b580475aab11", "name": "Commented-code block (9 lines) in clients/chrome-extension/background/worker.ts:240", "shortDescription": {"text": "Commented-code block (9 lines) in clients/chrome-extension/background/worker.ts:240"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-949fe22a81fdd2f2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 clients/chrome-extension/background/worker.ts:449", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 clients/chrome-extension/background/worker.ts:449"}, "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-8a1ce3ac8f7aa16c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 clients/chrome-extension/background/sse-connection.ts:7", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 clients/chrome-extension/background/sse-connection.ts:7"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c0d46cdacefdc39b", "name": "Commented-code block (5 lines) in clients/chrome-extension/background/__tests__/cdp-proxy.test.ts:181", "shortDescription": {"text": "Commented-code block (5 lines) in clients/chrome-extension/background/__tests__/cdp-proxy.test.ts:181"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8919e27438d6324b", "name": "Commented-code block (9 lines) in clients/chrome-extension/background/__tests__/host-browser-dispatcher.test.ts:208", "shortDescription": {"text": "Commented-code block (9 lines) in clients/chrome-extension/background/__tests__/host-browser-dispatcher.test.ts:208"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-05f1398440c7f360", "name": "Commented-code block (8 lines) in assistant/scripts/generate-openapi.ts:160", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/scripts/generate-openapi.ts:160"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c4bc6db53fb872a8", "name": "Commented-code block (10 lines) in assistant/scripts/memory-inspect.ts:4", "shortDescription": {"text": "Commented-code block (10 lines) in assistant/scripts/memory-inspect.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-753db020bc8ff02f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/scripts/capture-x-graphql.ts:228", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/scripts/capture-x-graphql.ts:228"}, "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-edd5f3ae2f5d95ae", "name": "Commented-code block (6 lines) in assistant/eslint-rules/cli-no-daemon-internals.js:140", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/eslint-rules/cli-no-daemon-internals.js:140"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f7aa69d8c769566f", "name": "Commented-code block (5 lines) in assistant/eslint-rules/__tests__/cli-no-daemon-internals.test.ts:144", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/eslint-rules/__tests__/cli-no-daemon-internals.test.ts:144"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b57c612e6a64ebe1", "name": "Commented-code block (5 lines) in assistant/src/instrument.ts:149", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/instrument.ts:149"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9d3bf2aa3c359b5f", "name": "Commented-code block (6 lines) in assistant/src/sequence/store.ts:243", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/sequence/store.ts:243"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4ec3741bfaf1bd0e", "name": "Commented-code block (7 lines) in assistant/src/sequence/reply-matcher.ts:80", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/sequence/reply-matcher.ts:80"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1bd627d6dd830c2e", "name": "Commented-code block (5 lines) in assistant/src/__tests__/openrouter-token-estimation.test.ts:79", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/openrouter-token-estimation.test.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-0bc0f369a34601bb", "name": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-crud-inference-profile.test.ts:93", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-crud-inference-profile.test.ts:93"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c67f4dafab266357", "name": "Commented-code block (6 lines) in assistant/src/__tests__/heartbeat-service.test.ts:88", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/heartbeat-service.test.ts:88"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-94400516de580d88", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-list-source.test.ts:80", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-list-source.test.ts:80"}, "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-10f8d1bb22d844b9", "name": "Commented-code block (7 lines) in assistant/src/__tests__/model-intents.test.ts:54", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/model-intents.test.ts:54"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-68bf68c83ee58838", "name": "Commented-code block (7 lines) in assistant/src/__tests__/browser-fill-credential.test.ts:221", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/browser-fill-credential.test.ts:221"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a3fa12237926dc84", "name": "Commented-code block (6 lines) in assistant/src/__tests__/skill-projection-feature-flag.test.ts:46", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/skill-projection-feature-flag.test.ts:46"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-50bc41a8a71f0937", "name": "Commented-code block (8 lines) in assistant/src/__tests__/media-stream-server-integration.test.ts:735", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/media-stream-server-integration.test.ts:735"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-84ad05f4313bf0a7", "name": "Commented-code block (5 lines) in assistant/src/__tests__/schedule-routes-workflow-validation.test.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/schedule-routes-workflow-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-6da43e2e0a69a362", "name": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-history-web-search.test.ts:117", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-history-web-search.test.ts:117"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-73bc624510bda6cf", "name": "Commented-code block (5 lines) in assistant/src/__tests__/host-browser-event-routes.test.ts:254", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/host-browser-event-routes.test.ts:254"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b207ac3aac3e702d", "name": "Commented-code block (6 lines) in assistant/src/__tests__/scheduler-reuse-conversation.test.ts:19", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/scheduler-reuse-conversation.test.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-eac4685063a926ae", "name": "Commented-code block (5 lines) in assistant/src/__tests__/estimator-calibration-integration.test.ts:129", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/estimator-calibration-integration.test.ts:129"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eab45be8c75648d4", "name": "Commented-code block (5 lines) in assistant/src/__tests__/assistant-id-boundary-guard.test.ts:201", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/assistant-id-boundary-guard.test.ts:201"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8a1a0a839095c627", "name": "Commented-code block (5 lines) in assistant/src/__tests__/credential-token-resolver.test.ts:145", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/credential-token-resolver.test.ts:145"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-094fd802878572a4", "name": "Commented-code block (5 lines) in assistant/src/__tests__/memory-v2-static-injector.test.ts:168", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/memory-v2-static-injector.test.ts:168"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fe41e4ecef4704a8", "name": "Commented-code block (5 lines) in assistant/src/__tests__/workspace-migrations-runner.test.ts:339", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/workspace-migrations-runner.test.ts:339"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4d4c2346865595d5", "name": "Commented-code block (5 lines) in assistant/src/__tests__/config-loader-backfill.test.ts:299", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/config-loader-backfill.test.ts:299"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2af6ad234e787c7d", "name": "Commented-code block (7 lines) in assistant/src/__tests__/context-search-agent-runner.test.ts:853", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/context-search-agent-runner.test.ts:853"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-87658b9ff9fceacc", "name": "Commented-code block (7 lines) in assistant/src/__tests__/checker.test.ts:88", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/checker.test.ts:88"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6d909813ad4ecb2e", "name": "Commented-code block (8 lines) in assistant/src/__tests__/system-prompt.test.ts:72", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/system-prompt.test.ts:72"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-af5b49bdfba42d38", "name": "Commented-code block (6 lines) in assistant/src/__tests__/llm-usage-store.test.ts:223", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/llm-usage-store.test.ts:223"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3bbe19211139e32e", "name": "Commented-code block (5 lines) in assistant/src/__tests__/trust-context-guards.test.ts:152", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/trust-context-guards.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-c46eb3599b15514d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/script-proxy-http-forwarder.test.ts:87", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/script-proxy-http-forwarder.test.ts:87"}, "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-b1d7c574d358f228", "name": "Commented-code block (6 lines) in assistant/src/__tests__/list-messages-hidden-metadata.test.ts:230", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/list-messages-hidden-metadata.test.ts:230"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8253ee5ea68c6c24", "name": "Commented-code block (5 lines) in assistant/src/__tests__/get-skill-detail-audit.test.ts:85", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/get-skill-detail-audit.test.ts:85"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2a8b3bce4c591bdd", "name": "Commented-code block (7 lines) in assistant/src/__tests__/channel-reply-delivery.test.ts:802", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/channel-reply-delivery.test.ts:802"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6f60090bb2bae9ef", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/http-conversation-lineage.test.ts:76", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/http-conversation-lineage.test.ts:76"}, "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-ff5c7d86211aba1b", "name": "Commented-code block (5 lines) in assistant/src/__tests__/filing-service.test.ts:423", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/filing-service.test.ts:423"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-220a22d2d690082f", "name": "Commented-code block (5 lines) in assistant/src/__tests__/config-loader-platform-defaults.test.ts:239", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/config-loader-platform-defaults.test.ts:239"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d063cfd30ddccf06", "name": "Commented-code block (5 lines) in assistant/src/__tests__/migration-export-to-gcs.test.ts:116", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/migration-export-to-gcs.test.ts:116"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d8e5fa6dab21f016", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-unread-route.test.ts:86", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-unread-route.test.ts:86"}, "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-15a0888458c73071", "name": "Legacy-named symbol `gateway_service_v1` in assistant/src/__tests__/conversation-routes-disk-view.test.ts:101", "shortDescription": {"text": "Legacy-named symbol `gateway_service_v1` in assistant/src/__tests__/conversation-routes-disk-view.test.ts:101"}, "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-e0f856f01741071a", "name": "Commented-code block (6 lines) in assistant/src/__tests__/conversation-routes-disk-view.test.ts:357", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/conversation-routes-disk-view.test.ts:357"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-16a0b644563de337", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/web-fetch.test.ts:41", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/web-fetch.test.ts:41"}, "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-4a74031db4c5a394", "name": "Commented-code block (5 lines) in assistant/src/__tests__/openai-responses-provider.test.ts:143", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/openai-responses-provider.test.ts:143"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e21242250922fa57", "name": "Commented-code block (7 lines) in assistant/src/__tests__/catalog-files.test.ts:285", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/catalog-files.test.ts:285"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-50b52d1b718de9a6", "name": "Commented-code block (5 lines) in assistant/src/__tests__/assert-not-live-db.ts:36", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/assert-not-live-db.ts:36"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-57d1e2f1e04d708d", "name": "Commented-code block (6 lines) in assistant/src/__tests__/plugin-bootstrap.test.ts:195", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/plugin-bootstrap.test.ts:195"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ee05484fee615a57", "name": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-lifecycle.test.ts:113", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-lifecycle.test.ts:113"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8b55d8c3504340d5", "name": "Commented-code block (8 lines) in assistant/src/__tests__/host-browser-proxy.test.ts:473", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/host-browser-proxy.test.ts:473"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5ede5f419fd11e6a", "name": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-queue.test.ts:315", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-queue.test.ts:315"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-95d22ab919c9d7f2", "name": "Commented-code block (6 lines) in assistant/src/__tests__/daemon-credential-client.test.ts:129", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/daemon-credential-client.test.ts:129"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-967c73793cc33d4d", "name": "Commented-code block (5 lines) in assistant/src/__tests__/migration-validate-http.test.ts:307", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/migration-validate-http.test.ts:307"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-956821e2467413c1", "name": "Commented-code block (7 lines) in assistant/src/__tests__/agent-loop-regrowth-guard.test.ts:337", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/agent-loop-regrowth-guard.test.ts:337"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-48b1a4edf07d6709", "name": "Commented-code block (5 lines) in assistant/src/__tests__/auto-analysis-end-to-end.test.ts:88", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/auto-analysis-end-to-end.test.ts:88"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7628f558b2ff6136", "name": "Commented-code block (5 lines) in assistant/src/__tests__/runtime-events-sse-reconnect.test.ts:109", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/runtime-events-sse-reconnect.test.ts:109"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-842a7bde73456664", "name": "Legacy-named symbol `migration_drop_capability_card_state_v1` in assistant/src/__tests__/drop-capability-card-state-migr", "shortDescription": {"text": "Legacy-named symbol `migration_drop_capability_card_state_v1` in assistant/src/__tests__/drop-capability-card-state-migration.test.ts:120"}, "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-cc649bd36de84dc5", "name": "Commented-code block (11 lines) in assistant/src/__tests__/conversation-agent-loop-inference-profile.test.ts:24", "shortDescription": {"text": "Commented-code block (11 lines) in assistant/src/__tests__/conversation-agent-loop-inference-profile.test.ts:24"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b4d70a87bf86364d", "name": "Commented-code block (6 lines) in assistant/src/__tests__/agent-loop-exit-reason.test.ts:46", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/agent-loop-exit-reason.test.ts:46"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-34fe41af8e4a97bb", "name": "Commented-code block (5 lines) in assistant/src/__tests__/plugin-registry.test.ts:58", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/plugin-registry.test.ts:58"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-26478279d0c0a62f", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/conversation-routes-slash-commands.test.ts:209", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/conversation-routes-slash-commands.test.ts:209"}, "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-d6220ba70783937d", "name": "Commented-code block (6 lines) in assistant/src/__tests__/llm-resolver.test.ts:207", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/llm-resolver.test.ts:207"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7fd34f0f664f4234", "name": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-process-app-control-preactivation.test.ts:20", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-process-app-control-preactivation.test.ts:20"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e96e7b2ed40f930f", "name": "Legacy-named symbol `migration_backfill_usage_cache_accounting_v1` in assistant/src/__tests__/usage-cache-backfill-migra", "shortDescription": {"text": "Legacy-named symbol `migration_backfill_usage_cache_accounting_v1` in assistant/src/__tests__/usage-cache-backfill-migration.test.ts:37"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d1d144116a6bf723", "name": "Commented-code block (5 lines) in assistant/src/__tests__/prechat-onboarding-contract.test.ts:374", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/prechat-onboarding-contract.test.ts:374"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fb704ed194a17f22", "name": "Commented-code block (7 lines) in assistant/src/__tests__/schedule-retry.test.ts:11", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/schedule-retry.test.ts:11"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-529a67a2dbd620be", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/send-endpoint-busy.test.ts:386", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/send-endpoint-busy.test.ts:386"}, "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-97ecdc03efba43b3", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/secret-ingress-http.test.ts:151", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/secret-ingress-http.test.ts:151"}, "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-be04dd6c4f5eb4c6", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/conversation-fork-route.test.ts:68", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/conversation-fork-route.test.ts:68"}, "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-4ba1311809e5adae", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-fork-route.test.ts:126", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-fork-route.test.ts:126"}, "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-619b15c92cf319a3", "name": "Commented-code block (9 lines) in assistant/src/__tests__/conversation-sync-tags.test.ts:79", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/__tests__/conversation-sync-tags.test.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-a8d22eb671d3d973", "name": "Commented-code block (5 lines) in assistant/src/__tests__/cu-unified-flow.test.ts:617", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/cu-unified-flow.test.ts:617"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cdd04d1eeaf5bbe3", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/gateway-only-enforcement.test.ts:133", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/gateway-only-enforcement.test.ts:133"}, "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-1eb82179cb1c684e", "name": "Commented-code block (5 lines) in assistant/src/__tests__/gateway-only-enforcement.test.ts:99", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/gateway-only-enforcement.test.ts:99"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7c09c9594bd1331a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/gateway-only-enforcement.test.ts:181", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/gateway-only-enforcement.test.ts:181"}, "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-e29c67c99272d73f", "name": "Commented-code block (6 lines) in assistant/src/__tests__/assistant-feature-flag-guardrails.test.ts:83", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/assistant-feature-flag-guardrails.test.ts:83"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8960b9344f12958c", "name": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-runtime-assembly.test.ts:128", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-runtime-assembly.test.ts:128"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-90160611e1ab5585", "name": "Commented-code block (5 lines) in assistant/src/__tests__/host-proxy-preactivation.test.ts:33", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/host-proxy-preactivation.test.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-fce1edc434852fd2", "name": "Commented-code block (6 lines) in assistant/src/__tests__/host-cu-proxy.test.ts:1000", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/host-cu-proxy.test.ts:1000"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-505b1e790f38b0c3", "name": "Commented-code block (5 lines) in assistant/src/__tests__/verification-control-plane-policy.test.ts:107", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/verification-control-plane-policy.test.ts:107"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-021c1337a80d8f11", "name": "Commented-code block (7 lines) in assistant/src/__tests__/schedule-store.test.ts:12", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/schedule-store.test.ts:12"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a614d4773eef6762", "name": "Commented-code block (6 lines) in assistant/src/__tests__/migration-cross-version-compatibility.test.ts:493", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/migration-cross-version-compatibility.test.ts:493"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7cb4639bb209e044", "name": "Commented-code block (5 lines) in assistant/src/__tests__/headless-browser-navigate.test.ts:14", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/headless-browser-navigate.test.ts:14"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8225fedec2e114c0", "name": "Commented-code block (8 lines) in assistant/src/__tests__/trusted-contact-lifecycle-notifications.test.ts:375", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/trusted-contact-lifecycle-notifications.test.ts:375"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7626c23945f01367", "name": "Commented-code block (6 lines) in assistant/src/__tests__/migration-import-from-gcs.test.ts:424", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/migration-import-from-gcs.test.ts:424"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-050677d69424234c", "name": "Commented-code block (5 lines) in assistant/src/__tests__/credential-execution-api-key-propagation.test.ts:285", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/credential-execution-api-key-propagation.test.ts:285"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4b99c416a88f4e52", "name": "Commented-code block (6 lines) in assistant/src/__tests__/credential-health-service.test.ts:628", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/credential-health-service.test.ts:628"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dbbb7946cff00def", "name": "Commented-code block (6 lines) in assistant/src/__tests__/conversation-agent-loop.test.ts:95", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/conversation-agent-loop.test.ts:95"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6f4ea3a85038fd54", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/http-user-message-parity.test.ts:185", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/http-user-message-parity.test.ts:185"}, "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-14efe66488147235", "name": "Commented-code block (5 lines) in assistant/src/__tests__/suggestion-routes.test.ts:567", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/suggestion-routes.test.ts:567"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9b1f9c2b10977277", "name": "Commented-code block (6 lines) in assistant/src/__tests__/memory-retrieval-hook.test.ts:345", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/memory-retrieval-hook.test.ts:345"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8e4577f24b6ec36d", "name": "Commented-code block (5 lines) in assistant/src/__tests__/openai-responses-cutover-guard.test.ts:93", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/openai-responses-cutover-guard.test.ts:93"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eab5c0c027722ade", "name": "Commented-code block (11 lines) in assistant/src/__tests__/workspace-migration-unify-llm-callsite-configs.test.ts:122", "shortDescription": {"text": "Commented-code block (11 lines) in assistant/src/__tests__/workspace-migration-unify-llm-callsite-configs.test.ts:122"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-16d74c3c8d634d31", "name": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-runtime-workspace.test.ts:67", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-runtime-workspace.test.ts:67"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-14d2e71bacbd14cd", "name": "Commented-code block (8 lines) in assistant/src/__tests__/provider-error-scenarios.test.ts:764", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/provider-error-scenarios.test.ts:764"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-64f4b5222d6578db", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/provider-error-scenarios.test.ts:500", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/provider-error-scenarios.test.ts:500"}, "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-217ae0e48b822af9", "name": "Legacy-named symbol `migration_normalize_user_file_by_principal_v1` in assistant/src/__tests__/contact-store-user-file.t", "shortDescription": {"text": "Legacy-named symbol `migration_normalize_user_file_by_principal_v1` in assistant/src/__tests__/contact-store-user-file.test.ts:25"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-48ff3e6fbed01c90", "name": "Commented-code block (5 lines) in assistant/src/__tests__/contact-store-user-file.test.ts:423", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/contact-store-user-file.test.ts:423"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-227efcc019c9b471", "name": "Legacy-named symbol `migration_scrub_corrupted_image_attachments_v1` in assistant/src/__tests__/scrub-corrupted-image-at", "shortDescription": {"text": "Legacy-named symbol `migration_scrub_corrupted_image_attachments_v1` in assistant/src/__tests__/scrub-corrupted-image-attachments.test.ts:252"}, "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-7b9717975e82a0c8", "name": "Commented-code block (5 lines) in assistant/src/__tests__/call-controller.test.ts:2526", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/call-controller.test.ts:2526"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-175197f44b73101d", "name": "Commented-code block (5 lines) in assistant/src/__tests__/handlers-skills-memory-v2-reseed.test.ts:44", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/handlers-skills-memory-v2-reseed.test.ts:44"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-46a990a804f9af67", "name": "Commented-code block (7 lines) in assistant/src/__tests__/conversation-skill-tools.test.ts:1426", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/conversation-skill-tools.test.ts:1426"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d05f8c0165ad2e50", "name": "Commented-code block (7 lines) in assistant/src/__tests__/conversation-agent-loop-overflow.test.ts:114", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/conversation-agent-loop-overflow.test.ts:114"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3cca669a4f126904", "name": "Commented-code block (6 lines) in assistant/src/__tests__/guardian-routing-invariants.test.ts:1347", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/guardian-routing-invariants.test.ts:1347"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d1117b9ea199a7d1", "name": "Commented-code block (5 lines) in assistant/src/__tests__/headless-browser-read-tools.test.ts:56", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/headless-browser-read-tools.test.ts:56"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-15562ec80d1740fc", "name": "Commented-code block (8 lines) in assistant/src/__tests__/agent-wake-override-profile.test.ts:266", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/agent-wake-override-profile.test.ts:266"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-aa1725050cd0b101", "name": "Commented-code block (7 lines) in assistant/src/__tests__/managed-profile-guard.test.ts:162", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/managed-profile-guard.test.ts:162"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-60e95839d85d0c86", "name": "Commented-code block (5 lines) in assistant/src/__tests__/compact-event-conversation-id-guard.test.ts:27", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/compact-event-conversation-id-guard.test.ts:27"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-804cbd7768ad6fa2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/oauth2-gateway-transport.test.ts:246", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/oauth2-gateway-transport.test.ts:246"}, "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-8e40e438eeeaf5db", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/runtime-events-sse.test.ts:44", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/runtime-events-sse.test.ts:44"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-493437a64acaec76", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/runtime-events-sse.test.ts:79", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/runtime-events-sse.test.ts:79"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ef20e856dbb67038", "name": "Commented-code block (5 lines) in assistant/src/__tests__/script-proxy-policy-runtime.test.ts:224", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/script-proxy-policy-runtime.test.ts:224"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c0dafc9025fc8b1e", "name": "Commented-code block (6 lines) in assistant/src/__tests__/agent-loop.test.ts:484", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/agent-loop.test.ts:484"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c514de7d1401571d", "name": "Legacy-named symbol `browser_fill_credential_v2` in assistant/src/__tests__/tool-policy.test.ts:65", "shortDescription": {"text": "Legacy-named symbol `browser_fill_credential_v2` in assistant/src/__tests__/tool-policy.test.ts:65"}, "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-9def8cfa978d30e7", "name": "Commented-code block (6 lines) in assistant/src/__tests__/conversation-init.benchmark.test.ts:319", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/conversation-init.benchmark.test.ts:319"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-accc3c1b8d28d3a4", "name": "Commented-code block (5 lines) in assistant/src/__tests__/skill-load-inline-command.test.ts:256", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/skill-load-inline-command.test.ts:256"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-da2930819b58883a", "name": "Commented-code block (6 lines) in assistant/src/__tests__/plugin-route-contribution.test.ts:199", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/plugin-route-contribution.test.ts:199"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-27520fd5d97cd320", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/mock-signup-server.test.ts:51", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/mock-signup-server.test.ts:51"}, "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-37a4ceb475d1e4cf", "name": "Commented-code block (6 lines) in assistant/src/__tests__/migration-import-commit-http.test.ts:663", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/migration-import-commit-http.test.ts:663"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9e56ef72dbb6edea", "name": "Commented-code block (5 lines) in assistant/src/__tests__/headless-browser-interactions.test.ts:232", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/headless-browser-interactions.test.ts:232"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-787329d3bb5b3f7b", "name": "Commented-code block (11 lines) in assistant/src/__tests__/media-stream-stt-session.test.ts:451", "shortDescription": {"text": "Commented-code block (11 lines) in assistant/src/__tests__/media-stream-stt-session.test.ts:451"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5553ac3c735537d3", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/call-routes-http.test.ts:184", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/call-routes-http.test.ts:184"}, "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-b87ee39b6d341e89", "name": "Commented-code block (6 lines) in assistant/src/__tests__/injector-chain.test.ts:110", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/injector-chain.test.ts:110"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b25d77f211476d7a", "name": "Legacy-named symbol `ghp_legacy` in assistant/src/__tests__/credential-broker-browser-fill.test.ts:634", "shortDescription": {"text": "Legacy-named symbol `ghp_legacy` in assistant/src/__tests__/credential-broker-browser-fill.test.ts:634"}, "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-492333c63d5f13bd", "name": "Commented-code block (5 lines) in assistant/src/__tests__/thread-backfill.test.ts:25", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/thread-backfill.test.ts:25"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-48fb321a403a50d1", "name": "Commented-code block (7 lines) in assistant/src/__tests__/anthropic-provider.test.ts:2069", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/anthropic-provider.test.ts:2069"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8ca699399ab07659", "name": "Commented-code block (7 lines) in assistant/src/__tests__/context-token-estimator.test.ts:286", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/context-token-estimator.test.ts:286"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8ee392d5f6330c79", "name": "Commented-code block (7 lines) in assistant/src/__tests__/app-control-flow.test.ts:26", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/app-control-flow.test.ts:26"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-68fcc6758a3b47e6", "name": "Commented-code block (6 lines) in assistant/src/__tests__/logger.test.ts:29", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/logger.test.ts:29"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0e2083911ae933f8", "name": "Commented-code block (6 lines) in assistant/src/__tests__/cli-memory-v2-reembed-skills.test.ts:22", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/cli-memory-v2-reembed-skills.test.ts:22"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2af3fa10faa71916", "name": "Commented-code block (7 lines) in assistant/src/__tests__/host-shell-tool.test.ts:264", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/host-shell-tool.test.ts:264"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-940d67002d1c7952", "name": "Legacy-named symbol `eleven_turbo_v2` in assistant/src/__tests__/voice-quality.test.ts:146", "shortDescription": {"text": "Legacy-named symbol `eleven_turbo_v2` in assistant/src/__tests__/voice-quality.test.ts:146"}, "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-a7f63c14b9f9a65d", "name": "Commented-code block (7 lines) in assistant/src/__tests__/outbound-slack-persistence.test.ts:313", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/outbound-slack-persistence.test.ts:313"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f8f1d4f8748362c6", "name": "Commented-code block (7 lines) in assistant/src/__tests__/migration-import-from-url.test.ts:51", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/migration-import-from-url.test.ts:51"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2fa332c89a935aaa", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/migration-import-from-url.test.ts:559", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/migration-import-from-url.test.ts:559"}, "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-90897b5bed7f4c40", "name": "Commented-code block (5 lines) in assistant/src/__tests__/llm-catalog-parity.test.ts:147", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/llm-catalog-parity.test.ts:147"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-128f2dfcc501e3a1", "name": "Commented-code block (7 lines) in assistant/src/__tests__/injector-disk-pressure.test.ts:83", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/injector-disk-pressure.test.ts:83"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6ba97e976cf7b541", "name": "Legacy-named symbol `nOld` in assistant/src/__tests__/task-memory-cleanup.test.ts:200", "shortDescription": {"text": "Legacy-named symbol `nOld` in assistant/src/__tests__/task-memory-cleanup.test.ts:200"}, "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-c264b27b58fd953f", "name": "Commented-code block (6 lines) in assistant/src/__tests__/call-site-routing-provider.test.ts:454", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/call-site-routing-provider.test.ts:454"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-86f4c0ac6136643a", "name": "Commented-code block (6 lines) in assistant/src/__tests__/host-app-control-proxy.test.ts:875", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/host-app-control-proxy.test.ts:875"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-83276249c81c266e", "name": "Commented-code block (9 lines) in assistant/src/__tests__/oauth-store.test.ts:2162", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/__tests__/oauth-store.test.ts:2162"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-11d315c6f224669d", "name": "Commented-code block (6 lines) in assistant/src/__tests__/subagent-call-site-routing.test.ts:210", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/subagent-call-site-routing.test.ts:210"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a0f20aed6b39a10a", "name": "Commented-code block (8 lines) in assistant/src/__tests__/secure-keys.test.ts:302", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/secure-keys.test.ts:302"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7a1d6f9f5dd46174", "name": "Commented-code block (7 lines) in assistant/src/__tests__/tool-preview-lifecycle.test.ts:42", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/tool-preview-lifecycle.test.ts:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-431e4442cb46903c", "name": "Commented-code block (7 lines) in assistant/src/__tests__/turn-events-store.test.ts:206", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/turn-events-store.test.ts:206"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-68de240c63695b41", "name": "Commented-code block (6 lines) in assistant/src/__tests__/tool-execution-abort-cleanup.test.ts:218", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/tool-execution-abort-cleanup.test.ts:218"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a66bd395b885516e", "name": "Commented-code block (6 lines) in assistant/src/__tests__/llm-schema.test.ts:66", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/llm-schema.test.ts:66"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f6bddb8271a00ae6", "name": "Commented-code block (5 lines) in assistant/src/__tests__/tool-side-effects-slack-dm.test.ts:83", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/tool-side-effects-slack-dm.test.ts:83"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d7fd00efcae3e7de", "name": "Commented-code block (6 lines) in assistant/src/__tests__/commit-message-enrichment-service.test.ts:472", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/commit-message-enrichment-service.test.ts:472"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-44dfe82518951230", "name": "Legacy-named symbol `gateway_service_v1` in assistant/src/__tests__/docker-signing-key-bootstrap.test.ts:205", "shortDescription": {"text": "Legacy-named symbol `gateway_service_v1` in assistant/src/__tests__/docker-signing-key-bootstrap.test.ts:205"}, "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-128a97f719c04712", "name": "Commented-code block (5 lines) in assistant/src/__tests__/require-fresh-approval.test.ts:410", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/require-fresh-approval.test.ts:410"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e6d2c5f3c851580f", "name": "Commented-code block (6 lines) in assistant/src/__tests__/workspace-migration-082-backfill-managed-profile-labels.test.t", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/workspace-migration-082-backfill-managed-profile-labels.test.ts:239"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5cef8cb67c62a34a", "name": "Legacy-named symbol `migration_acp_session_history_cwd_v1` in assistant/src/__tests__/db-acp-history.test.ts:326", "shortDescription": {"text": "Legacy-named symbol `migration_acp_session_history_cwd_v1` in assistant/src/__tests__/db-acp-history.test.ts:326"}, "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-30cde7bb9a65dc6f", "name": "Commented-code block (5 lines) in assistant/src/__tests__/skill-script-runner-host.test.ts:533", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/skill-script-runner-host.test.ts:533"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-81beffceefca2166", "name": "Commented-code block (5 lines) in assistant/src/__tests__/lifecycle-docs-guard.test.ts:158", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/lifecycle-docs-guard.test.ts:158"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-06d95f2acdedff42", "name": "Commented-code block (5 lines) in assistant/src/__tests__/post-turn-tool-result-truncation.test.ts:456", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/post-turn-tool-result-truncation.test.ts:456"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c6cd1da3e107fff3", "name": "Legacy-named symbol `local_v1` in assistant/src/__tests__/actor-token-service.test.ts:89", "shortDescription": {"text": "Legacy-named symbol `local_v1` in assistant/src/__tests__/actor-token-service.test.ts:89"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-895870e328869b67", "name": "Commented-code block (6 lines) in assistant/src/__tests__/history-repair.test.ts:364", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/history-repair.test.ts:364"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-334bc5f3e90bd254", "name": "Commented-code block (6 lines) in assistant/src/__tests__/scheduler-recurrence.test.ts:458", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/scheduler-recurrence.test.ts:458"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dca6730b172c1f0d", "name": "Commented-code block (5 lines) in assistant/src/__tests__/plugin-api-tool-definition.test.ts:67", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/plugin-api-tool-definition.test.ts:67"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0cd175fc6bd70dae", "name": "Commented-code block (5 lines) in assistant/src/__tests__/provider-platform-proxy-integration.test.ts:95", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/provider-platform-proxy-integration.test.ts:95"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-048fe87e2668f82e", "name": "Legacy-named symbol `local_v1` in assistant/src/__tests__/handlers-user-message-approval-consumption.test.ts:120", "shortDescription": {"text": "Legacy-named symbol `local_v1` in assistant/src/__tests__/handlers-user-message-approval-consumption.test.ts:120"}, "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-cf95b84f76064921", "name": "Commented-code block (7 lines) in assistant/src/__tests__/credential-security-invariants.test.ts:349", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/credential-security-invariants.test.ts:349"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9c843c605195ca79", "name": "Commented-code block (5 lines) in assistant/src/__tests__/migration-export-http.test.ts:402", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/migration-export-http.test.ts:402"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d377ebb84106a273", "name": "Commented-code block (7 lines) in assistant/src/__tests__/shell-observability.test.ts:115", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/shell-observability.test.ts:115"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-914075c35f9dfd20", "name": "Legacy-named symbol `migration_memory_entity_relations_dedup_v1` in assistant/src/__tests__/db-migration-rollback.test.t", "shortDescription": {"text": "Legacy-named symbol `migration_memory_entity_relations_dedup_v1` in assistant/src/__tests__/db-migration-rollback.test.ts:383"}, "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-e1faf627dcec2cef", "name": "Commented-code block (6 lines) in assistant/src/__tests__/db-migration-rollback.test.ts:161", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/db-migration-rollback.test.ts:161"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-018d0f4df7ab1522", "name": "Commented-code block (6 lines) in assistant/src/__tests__/workspace-lifecycle.test.ts:293", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/workspace-lifecycle.test.ts:293"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1899318b3f178170", "name": "Commented-code block (8 lines) in assistant/src/__tests__/config-loader-corrupt.test.ts:150", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/config-loader-corrupt.test.ts:150"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cedc63410911c9da", "name": "Commented-code block (10 lines) in assistant/src/__tests__/web-search-backend-failure.test.ts:4", "shortDescription": {"text": "Commented-code block (10 lines) in assistant/src/__tests__/web-search-backend-failure.test.ts:4"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c6a4bf47f81797f3", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/runtime-attachment-metadata.test.ts:113", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/runtime-attachment-metadata.test.ts:113"}, "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-b028507877990c4f", "name": "Commented-code block (5 lines) in assistant/src/__tests__/compaction-trail-store.test.ts:70", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/compaction-trail-store.test.ts:70"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d0a8ef6351151c72", "name": "Commented-code block (7 lines) in assistant/src/__tests__/app-store-dir-names.test.ts:289", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/app-store-dir-names.test.ts:289"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-592bb9728a930a61", "name": "Commented-code block (5 lines) in assistant/src/__tests__/config-schema-cmd.test.ts:273", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/config-schema-cmd.test.ts:273"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1ad58884d93bdf9d", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/conversation-routes-guardian-reply.test.ts:116", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/conversation-routes-guardian-reply.test.ts:116"}, "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-c466bc463a046542", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/approval-routes-http.test.ts:373", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/approval-routes-http.test.ts:373"}, "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-b1b38108d3619aa5", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/conversation-clear-safety.test.ts:72", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/conversation-clear-safety.test.ts:72"}, "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-907a4cad8a2b7240", "name": "Commented-code block (6 lines) in assistant/src/__tests__/memory-jobs-worker-lanes.test.ts:30", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/memory-jobs-worker-lanes.test.ts:30"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c7460b1ed52e27e6", "name": "Commented-code block (7 lines) in assistant/src/__tests__/plugin-tool-contribution.test.ts:154", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/plugin-tool-contribution.test.ts:154"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a6612088710d209c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/provider-streaming.benchmark.test.ts:232", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/provider-streaming.benchmark.test.ts:232"}, "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-eac2d902f78e5d13", "name": "Legacy-named symbol `nOld` in assistant/src/__tests__/conversation-fork-crud.test.ts:1004", "shortDescription": {"text": "Legacy-named symbol `nOld` in assistant/src/__tests__/conversation-fork-crud.test.ts:1004"}, "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-bb12782e61c9b5ff", "name": "Commented-code block (6 lines) in assistant/src/__tests__/conversation-fork-crud.test.ts:216", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/conversation-fork-crud.test.ts:216"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6212b2c89e727670", "name": "Commented-code block (8 lines) in assistant/src/__tests__/llm-request-log-source-clickhouse.test.ts:196", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/llm-request-log-source-clickhouse.test.ts:196"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2f2016760d1abab8", "name": "Commented-code block (6 lines) in assistant/src/__tests__/registry.test.ts:430", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/registry.test.ts:430"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0113cc9ec57c83b8", "name": "Commented-code block (5 lines) in assistant/src/__tests__/assistant-event-hub.test.ts:475", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/assistant-event-hub.test.ts:475"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dd4cfe05469608f2", "name": "Commented-code block (6 lines) in assistant/src/__tests__/strip-memory-injections.test.ts:222", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/strip-memory-injections.test.ts:222"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-222ed6f8d9c5c9b8", "name": "Legacy-named symbol `T_old` in assistant/src/__tests__/channel-readiness-slack-remote.test.ts:141", "shortDescription": {"text": "Legacy-named symbol `T_old` in assistant/src/__tests__/channel-readiness-slack-remote.test.ts:141"}, "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-7c64442ef65d3296", "name": "Commented-code block (7 lines) in assistant/src/__tests__/injector-v3-suppression.test.ts:257", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/injector-v3-suppression.test.ts:257"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7414211a16c329a0", "name": "Legacy-named symbol `actualOld` in assistant/src/__tests__/filesystem-tools.test.ts:234", "shortDescription": {"text": "Legacy-named symbol `actualOld` in assistant/src/__tests__/filesystem-tools.test.ts:234"}, "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-f1b2fda02e1be443", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-inference-profile-list.test.ts:79", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-inference-profile-list.test.ts:79"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d1414ffe77776955", "name": "Commented-code block (5 lines) in assistant/src/__tests__/notification-deep-link.test.ts:486", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/notification-deep-link.test.ts:486"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-90b0c71cca7103fc", "name": "Commented-code block (5 lines) in assistant/src/__tests__/workspace-migration-drop-user-md.test.ts:78", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/workspace-migration-drop-user-md.test.ts:78"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ad8a19a33c45a60d", "name": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-surfaces-app-control.test.ts:539", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-surfaces-app-control.test.ts:539"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1c53dc29992bb400", "name": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-surfaces-standalone-payloads.test.ts:513", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-surfaces-standalone-payloads.test.ts:513"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d26f6be6ff2e752d", "name": "Commented-code block (6 lines) in assistant/src/__tests__/compaction-events.test.ts:447", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/compaction-events.test.ts:447"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-61150b79ceb4f64d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-error.test.ts:87", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-error.test.ts:87"}, "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-0875583b8a46ce44", "name": "Legacy-named symbol `eleven_multilingual_v2` in assistant/src/__tests__/config-schema.test.ts:1623", "shortDescription": {"text": "Legacy-named symbol `eleven_multilingual_v2` in assistant/src/__tests__/config-schema.test.ts:1623"}, "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-337942b2c99447a9", "name": "Commented-code block (5 lines) in assistant/src/__tests__/config-schema.test.ts:295", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/config-schema.test.ts:295"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a1d4f9528ed6050e", "name": "Commented-code block (5 lines) in assistant/src/__tests__/compaction-circuit.test.ts:148", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/compaction-circuit.test.ts:148"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ee3f708a6299e1f9", "name": "Commented-code block (5 lines) in assistant/src/__tests__/config-set-platform-guard.test.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/config-set-platform-guard.test.ts:8"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3f780aa6a462b925", "name": "Commented-code block (5 lines) in assistant/src/__tests__/tool-executor-lifecycle-events.test.ts:143", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/tool-executor-lifecycle-events.test.ts:143"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a9aafe9be6ef60bb", "name": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-abort-tool-results.test.ts:234", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-abort-tool-results.test.ts:234"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d96f10931480d39c", "name": "Commented-code block (7 lines) in assistant/src/__tests__/helpers/channel-test-adapter.ts:27", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/helpers/channel-test-adapter.ts:27"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c8b6100fab8d21e6", "name": "Commented-code block (5 lines) in assistant/src/__tests__/test-support/tool-invocation-seed.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/test-support/tool-invocation-seed.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-508abe1d17489abf", "name": "Commented-code block (5 lines) in assistant/src/security/secure-keys.ts:201", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/security/secure-keys.ts:201"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b29acd6049a9ca99", "name": "Commented-code block (5 lines) in assistant/src/security/oauth2.ts:217", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/security/oauth2.ts:217"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-abf5a5557e0ba2cc", "name": "Commented-code block (7 lines) in assistant/src/security/token-manager.ts:144", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/security/token-manager.ts:144"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8aca39ee82e377f6", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/schedule/integration-status.ts:58", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/schedule/integration-status.ts:58"}, "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-f06e80ab24e6faa1", "name": "Commented-code block (7 lines) in assistant/src/schedule/scheduler.ts:453", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/schedule/scheduler.ts:453"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7fbc2711eb873def", "name": "Commented-code block (5 lines) in assistant/src/schedule/recurrence-engine.ts:21", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/schedule/recurrence-engine.ts:21"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9df52e4ea90111c5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/bundler/bundle-scanner.ts:346", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/bundler/bundle-scanner.ts:346"}, "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-b712400d7ebf0450", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/bundler/compiler-tools.ts:65", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/bundler/compiler-tools.ts:65"}, "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-e169962235faa713", "name": "Legacy-named symbol `isLegacy` in assistant/src/ipc/ipc-framing.ts:142", "shortDescription": {"text": "Legacy-named symbol `isLegacy` in assistant/src/ipc/ipc-framing.ts:142"}, "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-0c5189475411eee0", "name": "Legacy-named symbol `isLegacy` in assistant/src/ipc/assistant-server.ts:452", "shortDescription": {"text": "Legacy-named symbol `isLegacy` in assistant/src/ipc/assistant-server.ts:452"}, "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-4e3a4782ae73c308", "name": "Commented-code block (5 lines) in assistant/src/ipc/assistant-server.ts:175", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/ipc/assistant-server.ts:175"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f1530bac99e66610", "name": "Commented-code block (5 lines) in assistant/src/ipc/__tests__/skill-server-bidirectional.test.ts:181", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/ipc/__tests__/skill-server-bidirectional.test.ts:181"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-44e9c7e5ffee3cef", "name": "Legacy-named symbol `isLegacy` in assistant/src/ipc/__tests__/streaming-framing.test.ts:140", "shortDescription": {"text": "Legacy-named symbol `isLegacy` in assistant/src/ipc/__tests__/streaming-framing.test.ts:140"}, "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-fff1df053f8ae5c9", "name": "Commented-code block (5 lines) in assistant/src/ipc/routes/db-proxy-transaction.ts:136", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/ipc/routes/db-proxy-transaction.ts:136"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8e8cf20a55a80fd3", "name": "Legacy-named symbol `memory_v2` in assistant/src/ipc/routes/__tests__/memory-v2-backfill.test.ts:2", "shortDescription": {"text": "Legacy-named symbol `memory_v2` in assistant/src/ipc/routes/__tests__/memory-v2-backfill.test.ts:2"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ed93edb261ef0140", "name": "Commented-code block (5 lines) in assistant/src/ipc/routes/__tests__/memory-v2-backfill.test.ts:22", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/ipc/routes/__tests__/memory-v2-backfill.test.ts:22"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b7087e3518958f63", "name": "Commented-code block (7 lines) in assistant/src/ipc/skill-routes/registries.ts:34", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/ipc/skill-routes/registries.ts:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-037cb0a08d0db9e0", "name": "Commented-code block (8 lines) in assistant/src/notifications/emit-signal.ts:378", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/notifications/emit-signal.ts:378"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-56322d4061dc240a", "name": "Commented-code block (7 lines) in assistant/src/notifications/conversation-seed-composer.ts:162", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/notifications/conversation-seed-composer.ts:162"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-63875f53b98fd5de", "name": "Commented-code block (5 lines) in assistant/src/notifications/home-feed-side-effect.ts:214", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/notifications/home-feed-side-effect.ts:214"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9d105cd9f5aacb84", "name": "Commented-code block (7 lines) in assistant/src/notifications/broadcaster.ts:312", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/notifications/broadcaster.ts:312"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6a81396ce8415247", "name": "Commented-code block (10 lines) in assistant/src/notifications/conversation-pairing.ts:119", "shortDescription": {"text": "Commented-code block (10 lines) in assistant/src/notifications/conversation-pairing.ts:119"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-268b09b04e5acf14", "name": "Commented-code block (5 lines) in assistant/src/notifications/copy-composer.ts:383", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/notifications/copy-composer.ts:383"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-374cb4a1faeb9ec9", "name": "Commented-code block (5 lines) in assistant/src/notifications/decision-engine.ts:827", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/notifications/decision-engine.ts:827"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-714175e0c978cfa3", "name": "Commented-code block (6 lines) in assistant/src/notifications/__tests__/home-feed-side-effect.test.ts:170", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/notifications/__tests__/home-feed-side-effect.test.ts:170"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f068222ef616a1dd", "name": "Commented-code block (5 lines) in assistant/src/notifications/__tests__/deterministic-checks.test.ts:199", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/notifications/__tests__/deterministic-checks.test.ts:199"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-09c23c4190e744a6", "name": "Commented-code block (9 lines) in assistant/src/config/seed-inference-profiles.ts:200", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/config/seed-inference-profiles.ts:200"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2fd12ec93194809a", "name": "Commented-code block (5 lines) in assistant/src/config/assistant-feature-flags.ts:60", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/config/assistant-feature-flags.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-c03c84daa13f0f2d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/config/assistant-feature-flags.ts:279", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/config/assistant-feature-flags.ts:279"}, "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-2a70698acaca65b1", "name": "Commented-code block (5 lines) in assistant/src/config/schema.ts:83", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/config/schema.ts:83"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7bd8110d3f92be6b", "name": "Commented-code block (7 lines) in assistant/src/config/sanitize-for-transfer.ts:60", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/config/sanitize-for-transfer.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-4b51885d96f4540a", "name": "Commented-code block (5 lines) in assistant/src/config/loader.ts:643", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/config/loader.ts:643"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f2ddecc92c236cfe", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/config/feature-flag-cache.ts:54", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/config/feature-flag-cache.ts:54"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9b7a3e07492f57ec", "name": "Commented-code block (7 lines) in assistant/src/config/llm-resolver.ts:102", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/config/llm-resolver.ts:102"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-097e8f968bd9e2db", "name": "Commented-code block (6 lines) in assistant/src/config/skills.ts:720", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/config/skills.ts:720"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-80f52158bd268d82", "name": "Commented-code block (5 lines) in assistant/src/config/schemas/llm-request-logs.ts:61", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/config/schemas/llm-request-logs.ts:61"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e17e312177465f40", "name": "Commented-code block (5 lines) in assistant/src/config/schemas/compaction-logs.ts:59", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/config/schemas/compaction-logs.ts:59"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8bca1b3298a8840e", "name": "Commented-code block (6 lines) in assistant/src/config/schemas/heartbeat.ts:91", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/config/schemas/heartbeat.ts:91"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-13816ca2c22476e5", "name": "Commented-code block (6 lines) in assistant/src/config/schemas/llm.ts:119", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/config/schemas/llm.ts:119"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7adf2b5d4199a09e", "name": "Commented-code block (5 lines) in assistant/src/util/logger.ts:142", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/util/logger.ts:142"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a27726cea84596ee", "name": "Legacy-named symbol `eleven_multilingual_v2` in assistant/src/tts/providers/elevenlabs-provider.ts:213", "shortDescription": {"text": "Legacy-named symbol `eleven_multilingual_v2` in assistant/src/tts/providers/elevenlabs-provider.ts:213"}, "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-bbc98547ea0fbee2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/media/gemini-image-service.ts:80", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/media/gemini-image-service.ts:80"}, "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-e9c75ea842762654", "name": "Commented-code block (5 lines) in assistant/src/plugin-api/index.ts:99", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/plugin-api/index.ts:99"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0914c24fd1a8abcb", "name": "Commented-code block (6 lines) in assistant/src/mcp/mcp-auth-orchestrator.ts:136", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/mcp/mcp-auth-orchestrator.ts:136"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8b62de3f73682764", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/live-voice/__tests__/live-voice-tts.test.ts:291", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/live-voice/__tests__/live-voice-tts.test.ts:291"}, "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-f0c5ace1949c4743", "name": "Legacy-named symbol `gateway_ingress_v1` in assistant/src/live-voice/__tests__/runtime-websocket-shell.test.ts:106", "shortDescription": {"text": "Legacy-named symbol `gateway_ingress_v1` in assistant/src/live-voice/__tests__/runtime-websocket-shell.test.ts:106"}, "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-01b632bf1471679b", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/live-voice/__tests__/runtime-websocket-shell.test.ts:279", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/live-voice/__tests__/runtime-websocket-shell.test.ts:279"}, "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-174ac4d85e196741", "name": "Commented-code block (5 lines) in assistant/src/credential-execution/managed-catalog.ts:70", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/credential-execution/managed-catalog.ts:70"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a8229a5def7a6fdc", "name": "Commented-code block (7 lines) in assistant/src/credential-execution/process-manager.ts:357", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/credential-execution/process-manager.ts:357"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-79feaa8498eb2206", "name": "Commented-code block (5 lines) in assistant/src/credential-execution/executable-discovery.ts:81", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/credential-execution/executable-discovery.ts:81"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8413dced01a13a2f", "name": "Commented-code block (10 lines) in assistant/src/cli/program.ts:159", "shortDescription": {"text": "Commented-code block (10 lines) in assistant/src/cli/program.ts:159"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ad14b7928f816ab5", "name": "Commented-code block (9 lines) in assistant/src/cli/commands/notifications.ts:404", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/cli/commands/notifications.ts:404"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b47261e90f9edf43", "name": "Commented-code block (5 lines) in assistant/src/cli/commands/skills.ts:408", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/cli/commands/skills.ts:408"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3b52a0ac2e6d0a3b", "name": "Commented-code block (6 lines) in assistant/src/cli/commands/memory-v2.ts:477", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/cli/commands/memory-v2.ts:477"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-245c90dd7627ca93", "name": "Legacy-named symbol `memory_v2` in assistant/src/cli/commands/__tests__/memory-v2.test.ts:179", "shortDescription": {"text": "Legacy-named symbol `memory_v2` in assistant/src/cli/commands/__tests__/memory-v2.test.ts:179"}, "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-5675e7253e77486c", "name": "Commented-code block (7 lines) in assistant/src/cli/commands/__tests__/cache.test.ts:19", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/cli/commands/__tests__/cache.test.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-e5012e3f53e20579", "name": "Commented-code block (5 lines) in assistant/src/cli/commands/__tests__/skills.test.ts:338", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/cli/commands/__tests__/skills.test.ts:338"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-af511b80728c1cb9", "name": "Commented-code block (5 lines) in assistant/src/cli/commands/db/status.ts:173", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/cli/commands/db/status.ts:173"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-36d072028a214635", "name": "Commented-code block (5 lines) in assistant/src/cli/commands/db/repair-step-integrity.ts:35", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/cli/commands/db/repair-step-integrity.ts:35"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dbecaed9ce8a9a1f", "name": "Legacy-named symbol `migration_older_v1` in assistant/src/cli/commands/db/__tests__/status.test.ts:83", "shortDescription": {"text": "Legacy-named symbol `migration_older_v1` in assistant/src/cli/commands/db/__tests__/status.test.ts:83"}, "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-3e100f3000cbe19b", "name": "Commented-code block (10 lines) in assistant/src/cli/lib/install-from-github.ts:357", "shortDescription": {"text": "Commented-code block (10 lines) in assistant/src/cli/lib/install-from-github.ts:357"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8633e66743b3b20f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/cli/lib/plugin-marketplace.ts:190", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/cli/lib/plugin-marketplace.ts:190"}, "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-ff8ba616ba8290d7", "name": "Commented-code block (5 lines) in assistant/src/cli/lib/__tests__/search-plugins.test.ts:286", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/cli/lib/__tests__/search-plugins.test.ts:286"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c235c75176c8ac79", "name": "Commented-code block (5 lines) in assistant/src/cli/lib/__tests__/install-from-github.test.ts:595", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/cli/lib/__tests__/install-from-github.test.ts:595"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f7e2d3b03d42d1c7", "name": "Commented-code block (9 lines) in assistant/src/agent/loop.ts:804", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/agent/loop.ts:804"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cf2b9d830c54ae98", "name": "Commented-code block (9 lines) in assistant/src/workspace/provider-commit-message-generator.ts:108", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/workspace/provider-commit-message-generator.ts:108"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9836c08622b696c5", "name": "Commented-code block (5 lines) in assistant/src/workspace/turn-commit.ts:71", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/turn-commit.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-c532a49e234e3971", "name": "Commented-code block (5 lines) in assistant/src/workspace/heartbeat-service.ts:257", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/heartbeat-service.ts:257"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-39a5b96dbe5ce5e1", "name": "Commented-code block (5 lines) in assistant/src/workspace/commit-message-enrichment-service.ts:201", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/commit-message-enrichment-service.ts:201"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-624329fd00205054", "name": "Commented-code block (8 lines) in assistant/src/workspace/adaptive-thinking-repair.ts:9", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/workspace/adaptive-thinking-repair.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-61f19fd534c04d56", "name": "Commented-code block (5 lines) in assistant/src/workspace/git-service.ts:388", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/git-service.ts:388"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b0385eb8a334982c", "name": "Commented-code block (8 lines) in assistant/src/workspace/migrations/017-seed-persona-dirs.ts:20", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/workspace/migrations/017-seed-persona-dirs.ts:20"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-02cbc2a3363f5edd", "name": "Commented-code block (11 lines) in assistant/src/workspace/migrations/038-unify-llm-callsite-configs.ts:63", "shortDescription": {"text": "Commented-code block (11 lines) in assistant/src/workspace/migrations/038-unify-llm-callsite-configs.ts:63"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2cdb658b398e9174", "name": "Commented-code block (5 lines) in assistant/src/workspace/migrations/086-revert-stale-gemini-mis-rewrites.ts:55", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/086-revert-stale-gemini-mis-rewrites.ts:55"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ef299f838cf697d5", "name": "Commented-code block (5 lines) in assistant/src/workspace/migrations/031-drop-user-md.ts:28", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/031-drop-user-md.ts:28"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-46522fe9abd0b70a", "name": "Commented-code block (7 lines) in assistant/src/workspace/migrations/101-upgrade-balanced-economy-to-minimax-m3.ts:8", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/workspace/migrations/101-upgrade-balanced-economy-to-minimax-m3.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-739b0291738a4e9c", "name": "Commented-code block (5 lines) in assistant/src/workspace/migrations/069-seed-onboarding-threads.ts:18", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/069-seed-onboarding-threads.ts:18"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d0f697cbb8a05f06", "name": "Commented-code block (8 lines) in assistant/src/workspace/migrations/034-remove-calls-voice-transcription-provider.ts:68", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/workspace/migrations/034-remove-calls-voice-transcription-provider.ts:68"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-55038f325dcd2030", "name": "Commented-code block (5 lines) in assistant/src/workspace/migrations/006-services-config.ts:38", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/006-services-config.ts:38"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8b7e815a20baa8ea", "name": "Commented-code block (5 lines) in assistant/src/workspace/migrations/091-retighten-migration-onboarding-thread.ts:23", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/091-retighten-migration-onboarding-thread.ts:23"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fcbcacba21868ab1", "name": "Commented-code block (5 lines) in assistant/src/workspace/migrations/079-home-feed-notification-only.ts:137", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/079-home-feed-notification-only.ts:137"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eb6d7ce2299e081a", "name": "Commented-code block (6 lines) in assistant/src/workspace/migrations/094-seed-avatar-manifest.ts:137", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/workspace/migrations/094-seed-avatar-manifest.ts:137"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d93c0a73caf263a4", "name": "Commented-code block (6 lines) in assistant/src/workspace/migrations/096-reduce-quality-profile-effort.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/workspace/migrations/096-reduce-quality-profile-effort.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-0d922db793d2ccfd", "name": "Commented-code block (8 lines) in assistant/src/workspace/migrations/097-enable-adaptive-thinking-managed-profiles.ts:9", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/workspace/migrations/097-enable-adaptive-thinking-managed-profiles.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-901ecc8bbcf62c14", "name": "Commented-code block (8 lines) in assistant/src/workspace/migrations/044-bump-stale-provider-stream-timeout.ts:42", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/workspace/migrations/044-bump-stale-provider-stream-timeout.ts:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a23edd3fe74a2f68", "name": "Commented-code block (5 lines) in assistant/src/workspace/migrations/runner.ts:90", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/runner.ts:90"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-87392c2333d1cb3b", "name": "Commented-code block (5 lines) in assistant/src/workspace/migrations/087-memory-router-balanced-profile.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/087-memory-router-balanced-profile.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-9a28d90c542626b4", "name": "Commented-code block (6 lines) in assistant/src/workspace/migrations/090-memory-router-cost-optimized-profile.ts:10", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/workspace/migrations/090-memory-router-cost-optimized-profile.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-8a5a2f9718a67694", "name": "Commented-code block (5 lines) in assistant/src/workspace/migrations/migrate-to-workspace-volume.ts:95", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/migrate-to-workspace-volume.ts:95"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b2f116b4e8ab3151", "name": "Commented-code block (11 lines) in assistant/src/workspace/migrations/104-recheck-adaptive-thinking-model-implied-anthro", "shortDescription": {"text": "Commented-code block (11 lines) in assistant/src/workspace/migrations/104-recheck-adaptive-thinking-model-implied-anthropic.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-71196a5f817d7879", "name": "Commented-code block (8 lines) in assistant/src/workspace/migrations/100-upgrade-quality-profile-to-fable-5.ts:8", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/workspace/migrations/100-upgrade-quality-profile-to-fable-5.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-a3bd8769642ab804", "name": "Commented-code block (5 lines) in assistant/src/workspace/migrations/054-seed-recall-callsite.ts:41", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/054-seed-recall-callsite.ts:41"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8b8387d74e214782", "name": "Commented-code block (5 lines) in assistant/src/workspace/migrations/057-repair-stale-gemini-model-ids.ts:144", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/057-repair-stale-gemini-model-ids.ts:144"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d15df6ae5378326f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/platform/client.ts:104", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/platform/client.ts:104"}, "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-d3c96c24b4a8fbe5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/platform/client.test.ts:122", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/platform/client.test.ts:122"}, "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-bceee7c27d247111", "name": "Commented-code block (10 lines) in assistant/src/acp/session-manager.ts:388", "shortDescription": {"text": "Commented-code block (10 lines) in assistant/src/acp/session-manager.ts:388"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b97ed9d92bfd2cbb", "name": "Commented-code block (5 lines) in assistant/src/acp/__tests__/session-manager.test.ts:11", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/acp/__tests__/session-manager.test.ts:11"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e648bde063d668ca", "name": "Commented-code block (6 lines) in assistant/src/acp/__tests__/agent-process.test.ts:164", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/acp/__tests__/agent-process.test.ts:164"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f453670d60b88e79", "name": "Commented-code block (7 lines) in assistant/src/acp/__tests__/session-manager-resume.test.ts:127", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/acp/__tests__/session-manager-resume.test.ts:127"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eb94bf3febc7202f", "name": "Commented-code block (6 lines) in assistant/src/backup/paths.ts:157", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/backup/paths.ts:157"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-49203a7c55273fd4", "name": "Commented-code block (5 lines) in assistant/src/backup/snapshot-lock.ts:265", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/backup/snapshot-lock.ts:265"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e8529e34013e8e33", "name": "Commented-code block (7 lines) in assistant/src/backup/__tests__/snapshot-lock.test.ts:147", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/backup/__tests__/snapshot-lock.test.ts:147"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d3a2d02aea6b7a05", "name": "Commented-code block (8 lines) in assistant/src/heartbeat/heartbeat-service.ts:477", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/heartbeat/heartbeat-service.ts:477"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0c8b3cfa63f69290", "name": "Commented-code block (5 lines) in assistant/src/heartbeat/__tests__/heartbeat-service.test.ts:364", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/heartbeat/__tests__/heartbeat-service.test.ts:364"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8297fb7fdd1fcef6", "name": "Commented-code block (5 lines) in assistant/src/providers/registry.ts:184", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/registry.ts:184"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f32ae2b9065f531d", "name": "Commented-code block (5 lines) in assistant/src/providers/call-site-routing.ts:47", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/call-site-routing.ts:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-12b73fb112830684", "name": "Commented-code block (5 lines) in assistant/src/providers/retry.ts:147", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/retry.ts:147"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e314df98062393fe", "name": "Commented-code block (5 lines) in assistant/src/providers/connection-resolution.ts:117", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/connection-resolution.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-8d6c1848e76e2b8c", "name": "Commented-code block (6 lines) in assistant/src/providers/provider-send-message.ts:118", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/providers/provider-send-message.ts:118"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cbbba568d87529cd", "name": "Commented-code block (6 lines) in assistant/src/providers/placeholder-sentinels.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/providers/placeholder-sentinels.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-52edb1d100020215", "name": "Commented-code block (5 lines) in assistant/src/providers/__tests__/retry-callsite.test.ts:49", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/__tests__/retry-callsite.test.ts:49"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6499e2801524f888", "name": "Commented-code block (6 lines) in assistant/src/providers/__tests__/dispatch-connection-routing.test.ts:199", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/providers/__tests__/dispatch-connection-routing.test.ts:199"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c537ff88e8727f05", "name": "Commented-code block (5 lines) in assistant/src/providers/__tests__/satellite-connection-routing.test.ts:420", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/__tests__/satellite-connection-routing.test.ts:420"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e9b628314137d01b", "name": "Commented-code block (5 lines) in assistant/src/providers/openai/responses-provider.ts:307", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/openai/responses-provider.ts:307"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c14e4a2b6533e881", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/providers/openai/responses-provider.ts:174", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/providers/openai/responses-provider.ts:174"}, "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-985a1e48524458f1", "name": "Commented-code block (6 lines) in assistant/src/providers/openai/chat-completions-provider.ts:554", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/providers/openai/chat-completions-provider.ts:554"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-00f2a087b96fc7e7", "name": "Commented-code block (8 lines) in assistant/src/providers/speech-to-text/xai-realtime.ts:239", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/providers/speech-to-text/xai-realtime.ts:239"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-79ecfe4ca44994b7", "name": "Commented-code block (6 lines) in assistant/src/providers/speech-to-text/google-gemini-live-stream.ts:185", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/providers/speech-to-text/google-gemini-live-stream.ts:185"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-51028b68db8a6ff3", "name": "Commented-code block (6 lines) in assistant/src/providers/speech-to-text/openai-whisper-stream.ts:235", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/providers/speech-to-text/openai-whisper-stream.ts:235"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f6067b6cacb46e80", "name": "Commented-code block (5 lines) in assistant/src/providers/speech-to-text/deepgram-realtime.test.ts:661", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/speech-to-text/deepgram-realtime.test.ts:661"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c574c56752a05f7e", "name": "Commented-code block (5 lines) in assistant/src/providers/speech-to-text/google-gemini-live-stream.test.ts:549", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/speech-to-text/google-gemini-live-stream.test.ts:549"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cf557b3bf3969a46", "name": "Commented-code block (5 lines) in assistant/src/providers/speech-to-text/xai-realtime.test.ts:439", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/speech-to-text/xai-realtime.test.ts:439"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bf3bf8c8d462262d", "name": "Commented-code block (5 lines) in assistant/src/providers/speech-to-text/__tests__/resolve.test.ts:118", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/speech-to-text/__tests__/resolve.test.ts:118"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9c8e51d4641994fc", "name": "Commented-code block (5 lines) in assistant/src/providers/minimax/client.ts:104", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/minimax/client.ts:104"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-630779c90ec2601e", "name": "Commented-code block (5 lines) in assistant/src/providers/inference/adapter-factory.ts:205", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/inference/adapter-factory.ts:205"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e7424a82f70ac787", "name": "Commented-code block (5 lines) in assistant/src/providers/inference/__tests__/connections-label.test.ts:132", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/providers/inference/__tests__/connections-label.test.ts:132"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e276602eb486f6d3", "name": "Commented-code block (6 lines) in assistant/src/providers/anthropic/client.ts:797", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/providers/anthropic/client.ts:797"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-caa9f4642a22d778", "name": "Commented-code block (8 lines) in assistant/src/providers/openrouter/client.ts:30", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/providers/openrouter/client.ts:30"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3aeec12d61d3fe5c", "name": "Commented-code block (6 lines) in assistant/src/oauth/token-persistence.ts:148", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/oauth/token-persistence.ts:148"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5590f03abdc2cbb7", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/oauth/platform-connection.ts:99", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/oauth/platform-connection.ts:99"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7eb2013f8fe74c32", "name": "Commented-code block (5 lines) in assistant/src/oauth/identity-verifier.ts:146", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/oauth/identity-verifier.ts:146"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cbf30babff81b5ec", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/oauth/identity-verifier.ts:97", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/oauth/identity-verifier.ts:97"}, "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-cab91f2a84b4093f", "name": "Commented-code block (5 lines) in assistant/src/oauth/oauth-store.ts:1075", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/oauth/oauth-store.ts:1075"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d7eddf7f43e90bf5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/oauth/connection-resolver.ts:216", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/oauth/connection-resolver.ts:216"}, "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-81de23011dcef86b", "name": "Commented-code block (5 lines) in assistant/src/oauth/revoke.ts:42", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/oauth/revoke.ts:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0b858b5ef207d604", "name": "Commented-code block (6 lines) in assistant/src/oauth/provider-serializer.ts:63", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/oauth/provider-serializer.ts:63"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9f98661186b8bc79", "name": "Commented-code block (8 lines) in assistant/src/browser-session/manager.ts:66", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/browser-session/manager.ts:66"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-32c6a9fe4f7cd8cd", "name": "Commented-code block (5 lines) in assistant/src/browser-session/__tests__/manager.test.ts:259", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/browser-session/__tests__/manager.test.ts:259"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5b4463f701504a72", "name": "Commented-code block (10 lines) in assistant/src/home/relationship-state-writer.ts:155", "shortDescription": {"text": "Commented-code block (10 lines) in assistant/src/home/relationship-state-writer.ts:155"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f172c3e12538942b", "name": "Commented-code block (5 lines) in assistant/src/home/__tests__/relationship-state-writer.test.ts:203", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/home/__tests__/relationship-state-writer.test.ts:203"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a3c1598fb673944c", "name": "Commented-code block (5 lines) in assistant/src/calls/call-controller.ts:779", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/calls/call-controller.ts:779"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4e787f9fc4c5deff", "name": "Commented-code block (6 lines) in assistant/src/calls/media-stream-server.ts:331", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/calls/media-stream-server.ts:331"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9703f3b8d3ddebc6", "name": "Commented-code block (5 lines) in assistant/src/calls/relay-setup-router.ts:244", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/calls/relay-setup-router.ts:244"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-91969df77ce89b64", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/calls/twilio-provider.ts:19", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/calls/twilio-provider.ts:19"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ddc5cff20939a7dd", "name": "Commented-code block (5 lines) in assistant/src/calls/call-speech-output.ts:97", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/calls/call-speech-output.ts:97"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-401c290c9e2584d9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/calls/fish-audio-client.ts:67", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/calls/fish-audio-client.ts:67"}, "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-4680904e419bf4e6", "name": "Commented-code block (5 lines) in assistant/src/calls/voice-session-bridge.ts:319", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/calls/voice-session-bridge.ts:319"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4c1d57f399321d31", "name": "Commented-code block (5 lines) in assistant/src/calls/tts-text-sanitizer.ts:10", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/calls/tts-text-sanitizer.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-ac28cb34b2770fe0", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/calls/twilio-rest.ts:6", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/calls/twilio-rest.ts:6"}, "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-ce41ba14f161a7d1", "name": "Commented-code block (5 lines) in assistant/src/calls/media-stream-output.ts:415", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/calls/media-stream-output.ts:415"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1f507b13a21fe17d", "name": "Commented-code block (5 lines) in assistant/src/calls/voice-quality.ts:85", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/calls/voice-quality.ts:85"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6b6f2e73f2ab52d0", "name": "Commented-code block (6 lines) in assistant/src/daemon/external-plugins-bootstrap.ts:220", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/daemon/external-plugins-bootstrap.ts:220"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d5056035039dec1e", "name": "Commented-code block (6 lines) in assistant/src/daemon/conversation-surfaces.ts:1356", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/daemon/conversation-surfaces.ts:1356"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-55b200847880501f", "name": "Commented-code block (6 lines) in assistant/src/daemon/conversation-tool-setup.ts:165", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/daemon/conversation-tool-setup.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-29bbfccb39b4044b", "name": "Commented-code block (6 lines) in assistant/src/daemon/shutdown-handlers.ts:45", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/daemon/shutdown-handlers.ts:45"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-96918ea31a1c3a98", "name": "Commented-code block (5 lines) in assistant/src/daemon/providers-setup.ts:39", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/providers-setup.ts:39"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-74711b8ef38331e9", "name": "Commented-code block (5 lines) in assistant/src/daemon/config-watcher.ts:195", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/config-watcher.ts:195"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ce73602d259a2156", "name": "Commented-code block (7 lines) in assistant/src/daemon/conversation-lifecycle.ts:151", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/daemon/conversation-lifecycle.ts:151"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-edcfdb7df000b07f", "name": "Commented-code block (5 lines) in assistant/src/daemon/pkb-context-tracker.ts:109", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/pkb-context-tracker.ts:109"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dafca241aa96a165", "name": "Commented-code block (5 lines) in assistant/src/daemon/wake-conversation-ops.ts:152", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/wake-conversation-ops.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-94d3a70bc6ba256d", "name": "Commented-code block (13 lines) in assistant/src/daemon/host-proxy-base.ts:201", "shortDescription": {"text": "Commented-code block (13 lines) in assistant/src/daemon/host-proxy-base.ts:201"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a45990d1ae9ee315", "name": "Commented-code block (5 lines) in assistant/src/daemon/meet-manifest-loader.ts:355", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/meet-manifest-loader.ts:355"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-650608be45e8d782", "name": "Commented-code block (9 lines) in assistant/src/daemon/lifecycle.ts:294", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/daemon/lifecycle.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-841bdae7b5851db1", "name": "Commented-code block (5 lines) in assistant/src/daemon/host-transfer-proxy.ts:550", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/host-transfer-proxy.ts:550"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-637d6e446a17ff87", "name": "Commented-code block (6 lines) in assistant/src/daemon/conversation-agent-loop.ts:224", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/daemon/conversation-agent-loop.ts:224"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6c1cfa78225e7e94", "name": "Commented-code block (11 lines) in assistant/src/daemon/conversation-skill-tools.ts:377", "shortDescription": {"text": "Commented-code block (11 lines) in assistant/src/daemon/conversation-skill-tools.ts:377"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-86d531223115f473", "name": "Commented-code block (5 lines) in assistant/src/daemon/host-bash-proxy.ts:96", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/host-bash-proxy.ts:96"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8686c96604df1ee9", "name": "Commented-code block (8 lines) in assistant/src/daemon/conversation-error.ts:317", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/daemon/conversation-error.ts:317"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-88118546dcec3011", "name": "Commented-code block (5 lines) in assistant/src/daemon/conversation.ts:879", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/conversation.ts:879"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c8517eca6a755ea2", "name": "Commented-code block (5 lines) in assistant/src/daemon/meet-host-supervisor.ts:375", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/meet-host-supervisor.ts:375"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4e22f111414dfef1", "name": "Commented-code block (7 lines) in assistant/src/daemon/conversation-registry.ts:112", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/daemon/conversation-registry.ts:112"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c88bc10850aee823", "name": "Commented-code block (5 lines) in assistant/src/daemon/host-browser-proxy.ts:259", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/host-browser-proxy.ts:259"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b731615b2be68104", "name": "Legacy-named symbol `allowFlatLegacy` in assistant/src/daemon/conversation-runtime-assembly.ts:910", "shortDescription": {"text": "Legacy-named symbol `allowFlatLegacy` in assistant/src/daemon/conversation-runtime-assembly.ts:910"}, "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-55aa09f1dd1870c2", "name": "Commented-code block (5 lines) in assistant/src/daemon/conversation-runtime-assembly.ts:1034", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/conversation-runtime-assembly.ts:1034"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-92b1204afeb81def", "name": "Commented-code block (5 lines) in assistant/src/daemon/server.ts:116", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/server.ts:116"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7b47e8e642464587", "name": "Commented-code block (5 lines) in assistant/src/daemon/workspace-tools-watcher.ts:272", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/workspace-tools-watcher.ts:272"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bfb5250cd9d3a97f", "name": "Commented-code block (5 lines) in assistant/src/daemon/host-app-control-proxy.ts:348", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/host-app-control-proxy.ts:348"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-864481029d9a64cc", "name": "Commented-code block (5 lines) in assistant/src/daemon/conversation-messaging.ts:494", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/conversation-messaging.ts:494"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a917b9d604832d2a", "name": "Commented-code block (5 lines) in assistant/src/daemon/assistant-attachments.ts:330", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/assistant-attachments.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-8b21dff11dff33f9", "name": "Commented-code block (6 lines) in assistant/src/daemon/first-greeting.ts:86", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/daemon/first-greeting.ts:86"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-02576c9d3cecabed", "name": "Commented-code block (6 lines) in assistant/src/daemon/conversation-agent-loop-handlers.ts:407", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/daemon/conversation-agent-loop-handlers.ts:407"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-40a67be6b1d4d772", "name": "Commented-code block (5 lines) in assistant/src/daemon/conversation-store.ts:134", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/conversation-store.ts:134"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a270830ec80891c0", "name": "Commented-code block (5 lines) in assistant/src/daemon/approval-generators.ts:85", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/approval-generators.ts:85"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3199e5323a6e8ae0", "name": "Commented-code block (8 lines) in assistant/src/daemon/daemon-skill-host.ts:217", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/daemon/daemon-skill-host.ts:217"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5b16f9647166d130", "name": "Commented-code block (6 lines) in assistant/src/daemon/disk-pressure-guard.ts:20", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/daemon/disk-pressure-guard.ts:20"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4e9ed4632fdb7655", "name": "Commented-code block (5 lines) in assistant/src/daemon/conversation-process.ts:412", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/conversation-process.ts:412"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ea733311cb71b125", "name": "Commented-code block (6 lines) in assistant/src/daemon/conversation-history.ts:47", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/daemon/conversation-history.ts:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c40b69b143898796", "name": "Commented-code block (5 lines) in assistant/src/daemon/__tests__/conversation-tool-setup.test.ts:423", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/__tests__/conversation-tool-setup.test.ts:423"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9ee28ab7eaff8af0", "name": "Commented-code block (10 lines) in assistant/src/daemon/__tests__/conversation-lifecycle-auto-analyze.test.ts:253", "shortDescription": {"text": "Commented-code block (10 lines) in assistant/src/daemon/__tests__/conversation-lifecycle-auto-analyze.test.ts:253"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1d55040637f2af06", "name": "Commented-code block (6 lines) in assistant/src/daemon/__tests__/conversation-surfaces-launch.test.ts:387", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/daemon/__tests__/conversation-surfaces-launch.test.ts:387"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bc89cd60ec0be8f5", "name": "Commented-code block (5 lines) in assistant/src/daemon/message-types/host-app-control.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/message-types/host-app-control.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-7bbce5fafe3fa8f0", "name": "Commented-code block (5 lines) in assistant/src/daemon/handlers/config-channels.ts:200", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/handlers/config-channels.ts:200"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ec5e03b1faecda71", "name": "Commented-code block (5 lines) in assistant/src/daemon/handlers/config-slack-channel.ts:252", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/handlers/config-slack-channel.ts:252"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-608e7844f7e71eb9", "name": "Commented-code block (5 lines) in assistant/src/daemon/handlers/skills.ts:810", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/handlers/skills.ts:810"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7b81352ae5c5ea90", "name": "Commented-code block (5 lines) in assistant/src/daemon/handlers/shared.ts:444", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/daemon/handlers/shared.ts:444"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8ee02298b7036669", "name": "Commented-code block (8 lines) in assistant/src/daemon/handlers/recording.ts:641", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/daemon/handlers/recording.ts:641"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-968fe315b9cdd6be", "name": "Commented-code block (5 lines) in assistant/src/subagent/manager.ts:192", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/subagent/manager.ts:192"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f6b891def7fd8e23", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/messaging/providers/whatsapp/api.ts:204", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/messaging/providers/whatsapp/api.ts:204"}, "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-7e6058abd023a66a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/messaging/providers/slack/api.ts:128", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/messaging/providers/slack/api.ts:128"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e4adaaa810f2782a", "name": "Commented-code block (6 lines) in assistant/src/messaging/providers/slack/render-transcript.test.ts:1117", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/messaging/providers/slack/render-transcript.test.ts:1117"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a4373dbb36893182", "name": "Legacy-named symbol `allowFlatLegacy` in assistant/src/messaging/providers/slack/message-metadata.ts:237", "shortDescription": {"text": "Legacy-named symbol `allowFlatLegacy` in assistant/src/messaging/providers/slack/message-metadata.ts:237"}, "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-a8ed5ebf07a0517b", "name": "Commented-code block (5 lines) in assistant/src/messaging/providers/slack/adapter.ts:112", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/messaging/providers/slack/adapter.ts:112"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-02f7233b069007ba", "name": "Legacy-named symbol `allowFlatLegacy` in assistant/src/messaging/providers/slack/message-metadata.test.ts:214", "shortDescription": {"text": "Legacy-named symbol `allowFlatLegacy` in assistant/src/messaging/providers/slack/message-metadata.test.ts:214"}, "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-122608e10f53bd8b", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/messaging/providers/slack/client.ts:101", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/messaging/providers/slack/client.ts:101"}, "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-d0292ad195861bbe", "name": "Commented-code block (5 lines) in assistant/src/messaging/providers/slack/__tests__/adapter-token-routing.test.ts:300", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/messaging/providers/slack/__tests__/adapter-token-routing.test.ts:300"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0eab9ddcbe6b3012", "name": "Commented-code block (5 lines) in assistant/src/messaging/providers/telegram-bot/api.ts:207", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/messaging/providers/telegram-bot/api.ts:207"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-923583abc0b105de", "name": "Commented-code block (5 lines) in assistant/src/avatar/resvg-lazy.test.ts:40", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/avatar/resvg-lazy.test.ts:40"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ebfdcce335e1aa19", "name": "Commented-code block (5 lines) in assistant/src/approvals/guardian-request-resolvers.ts:200", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/approvals/guardian-request-resolvers.ts:200"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bc4d77ca27a165a0", "name": "Commented-code block (6 lines) in assistant/src/memory/app-store.ts:930", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/app-store.ts:930"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4bc57a781c9cbfaa", "name": "Commented-code block (5 lines) in assistant/src/memory/memory-v2-activation-log-store.ts:143", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/memory-v2-activation-log-store.ts:143"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-72689d5374671547", "name": "Commented-code block (5 lines) in assistant/src/memory/group-crud.ts:27", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/group-crud.ts:27"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1c974f7b31095b3f", "name": "Commented-code block (6 lines) in assistant/src/memory/llm-request-log-store.ts:572", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/llm-request-log-store.ts:572"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bf1cf0406a5f1982", "name": "Commented-code block (6 lines) in assistant/src/memory/llm-usage-store.ts:209", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/llm-usage-store.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-febea29c331eb849", "name": "Commented-code block (5 lines) in assistant/src/memory/embedding-backend.ts:119", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/embedding-backend.ts:119"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d3e5ddedb46bbc8a", "name": "Legacy-named symbol `includeFlatLegacy` in assistant/src/memory/conversation-crud.ts:1426", "shortDescription": {"text": "Legacy-named symbol `includeFlatLegacy` in assistant/src/memory/conversation-crud.ts:1426"}, "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-5cc3b7db590da2dc", "name": "Commented-code block (8 lines) in assistant/src/memory/conversation-crud.ts:596", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/memory/conversation-crud.ts:596"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ff7aa6e218a81484", "name": "Commented-code block (5 lines) in assistant/src/memory/embedding-runtime-manager.ts:181", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/embedding-runtime-manager.ts:181"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cb2ca6e34063a062", "name": "Commented-code block (5 lines) in assistant/src/memory/compaction-log-store-clickhouse.ts:374", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/compaction-log-store-clickhouse.ts:374"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7b80c3622884ad2e", "name": "Commented-code block (5 lines) in assistant/src/memory/memory-retrospective-fork-boundary.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/memory-retrospective-fork-boundary.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-c3a44fe03eb10ed4", "name": "Commented-code block (7 lines) in assistant/src/memory/anisotropy.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/anisotropy.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-684a09e8c9f4604d", "name": "Commented-code block (6 lines) in assistant/src/memory/qdrant-manager.ts:272", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/qdrant-manager.ts:272"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6413d136b1df8b23", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/memory/qdrant-manager.ts:201", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/memory/qdrant-manager.ts:201"}, "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-4518949806e1f815", "name": "Commented-code block (7 lines) in assistant/src/memory/conversation-attention-store.ts:155", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/conversation-attention-store.ts:155"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d9493ea29f7d4d10", "name": "Legacy-named symbol `includeFlatLegacy` in assistant/src/memory/delivery-crud.ts:101", "shortDescription": {"text": "Legacy-named symbol `includeFlatLegacy` in assistant/src/memory/delivery-crud.ts:101"}, "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-e02f81f25786460d", "name": "Commented-code block (6 lines) in assistant/src/memory/task-memory-cleanup.ts:12", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/task-memory-cleanup.ts:12"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-75a2e1f8d3faf256", "name": "Commented-code block (5 lines) in assistant/src/memory/conversation-title-service.ts:196", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/conversation-title-service.ts:196"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7e6b086d1bfe3f01", "name": "Commented-code block (6 lines) in assistant/src/memory/db-maintenance.ts:60", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/db-maintenance.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-f3b9f25c6032a603", "name": "Commented-code block (5 lines) in assistant/src/memory/sparse-tokenize.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/sparse-tokenize.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-bbf2d17969fe6272", "name": "Commented-code block (5 lines) in assistant/src/memory/jobs-worker.ts:703", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/jobs-worker.ts:703"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ec0394e1e0362fc5", "name": "Commented-code block (7 lines) in assistant/src/memory/memory-retrospective-state.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/memory-retrospective-state.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-2f6ad8365df233a6", "name": "Commented-code block (5 lines) in assistant/src/memory/conversation-queries.ts:29", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/conversation-queries.ts:29"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0ae2c064fe438cf8", "name": "Commented-code block (6 lines) in assistant/src/memory/indexer.ts:202", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/indexer.ts:202"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0f1399995a695c6d", "name": "Commented-code block (6 lines) in assistant/src/memory/memory-retrospective-startup-cleanup.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/memory-retrospective-startup-cleanup.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-795eac700f26bcc8", "name": "Commented-code block (12 lines) in assistant/src/memory/memory-retrospective-job.ts:10", "shortDescription": {"text": "Commented-code block (12 lines) in assistant/src/memory/memory-retrospective-job.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-b059dd0143d5ae49", "name": "Commented-code block (5 lines) in assistant/src/memory/llm-request-log-source-clickhouse.ts:293", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/llm-request-log-source-clickhouse.ts:293"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-265d5ca99aeac829", "name": "Commented-code block (6 lines) in assistant/src/memory/jobs-store.ts:536", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/jobs-store.ts:536"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1666e95fc14435ca", "name": "Commented-code block (5 lines) in assistant/src/memory/delivery-channels.ts:118", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/delivery-channels.ts:118"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2e51a9f71e314caa", "name": "Commented-code block (10 lines) in assistant/src/memory/db-async-query.ts:185", "shortDescription": {"text": "Commented-code block (10 lines) in assistant/src/memory/db-async-query.ts:185"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d9b64ef81699eb3b", "name": "Commented-code block (6 lines) in assistant/src/memory/memory-retrospective-trigger-check.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/memory-retrospective-trigger-check.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-7b60062912fd7b4b", "name": "Commented-code block (5 lines) in assistant/src/memory/conversation-analyze-job.ts:42", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/conversation-analyze-job.ts:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fc642525271cf685", "name": "Commented-code block (5 lines) in assistant/src/memory/memory-retrospective-enqueue.ts:10", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/memory-retrospective-enqueue.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-fda4d07f51433a1c", "name": "Commented-code block (6 lines) in assistant/src/memory/embedding-gemini.ts:66", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/embedding-gemini.ts:66"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bd440c3112a72caf", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/memory/embedding-gemini.ts:84", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/memory/embedding-gemini.ts:84"}, "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-03e0b73a3f63f162", "name": "Commented-code block (6 lines) in assistant/src/memory/attachments-store.ts:276", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/attachments-store.ts:276"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-899be4aa32c0f6d6", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/memory/embedding-ollama.ts:42", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/memory/embedding-ollama.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-ec471f6f20124b39", "name": "Commented-code block (5 lines) in assistant/src/memory/conversation-group-migration.ts:112", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/conversation-group-migration.ts:112"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-53daf20595029768", "name": "Legacy-named symbol `pruneOld` in assistant/src/memory/__tests__/db-async-query.test.ts:77", "shortDescription": {"text": "Legacy-named symbol `pruneOld` in assistant/src/memory/__tests__/db-async-query.test.ts:77"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ae7aaedc70d58957", "name": "Commented-code block (7 lines) in assistant/src/memory/__tests__/db-async-query.test.ts:72", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/__tests__/db-async-query.test.ts:72"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-377f2651cda8a632", "name": "Commented-code block (5 lines) in assistant/src/memory/__tests__/conversation-group-migration.test.ts:15", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/__tests__/conversation-group-migration.test.ts:15"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ff71dc87b0bbaea4", "name": "Commented-code block (8 lines) in assistant/src/memory/__tests__/jobs-store-enqueue-gate.test.ts:3", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/memory/__tests__/jobs-store-enqueue-gate.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-626e2b681ffdfd1b", "name": "Commented-code block (5 lines) in assistant/src/memory/__tests__/memory-retrospective-job.test.ts:38", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/__tests__/memory-retrospective-job.test.ts:38"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ea8917fcc2d84cb0", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/now-text.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/now-text.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-57fb3d16fad1991a", "name": "Commented-code block (7 lines) in assistant/src/memory/v2/cli-command-store.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/v2/cli-command-store.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-c0375b7d5935efe5", "name": "Commented-code block (7 lines) in assistant/src/memory/v2/sweep-job.ts:127", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/v2/sweep-job.ts:127"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fbaae99c4dca8b3d", "name": "Commented-code block (6 lines) in assistant/src/memory/v2/backfill-jobs.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/backfill-jobs.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-429db9ca0ae00355", "name": "Commented-code block (6 lines) in assistant/src/memory/v2/consolidation-job.ts:191", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/consolidation-job.ts:191"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cc4926de212fbe5a", "name": "Commented-code block (9 lines) in assistant/src/memory/v2/frontmatter-sweep.ts:5", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/memory/v2/frontmatter-sweep.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-f27f68ca55c50460", "name": "Commented-code block (6 lines) in assistant/src/memory/v2/page-index.ts:22", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/page-index.ts:22"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1847a2f98d94906a", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/skill-store.ts:199", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/skill-store.ts:199"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1bc6d35124db84f7", "name": "Commented-code block (6 lines) in assistant/src/memory/v2/sparse-bm25.ts:20", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/sparse-bm25.ts:20"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0761048c8186decf", "name": "Commented-code block (8 lines) in assistant/src/memory/v2/migration.ts:109", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/memory/v2/migration.ts:109"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2d5572686de2bdb4", "name": "Commented-code block (6 lines) in assistant/src/memory/v2/router.ts:347", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/router.ts:347"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-10945e9bb43deefa", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/types.ts:44", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/types.ts:44"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-300dc040e6a8a293", "name": "Commented-code block (6 lines) in assistant/src/memory/v2/static-context.ts:9", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/static-context.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-4d940a7a1dd3d8a1", "name": "Commented-code block (13 lines) in assistant/src/memory/v2/injection.ts:8", "shortDescription": {"text": "Commented-code block (13 lines) in assistant/src/memory/v2/injection.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-20e6fbaa03fd50fa", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/sim.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/sim.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-82ac2ca42f90407f", "name": "Commented-code block (6 lines) in assistant/src/memory/v2/activation.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/activation.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-ddc45bc6b1acdfbc", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/qdrant.ts:10", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/qdrant.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-147732fadaad1091", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/sim.test.ts:31", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/sim.test.ts:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-26a6c7c92334ef8b", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/activation.test.ts:179", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/activation.test.ts:179"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7482a54dbd8d8e1f", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/skill-store.test.ts:737", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/skill-store.test.ts:737"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5da8686d6be16778", "name": "Commented-code block (8 lines) in assistant/src/memory/v2/__tests__/page-index.test.ts:451", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/memory/v2/__tests__/page-index.test.ts:451"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d52c5f19668720d0", "name": "Commented-code block (6 lines) in assistant/src/memory/v2/__tests__/router.test.ts:37", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/__tests__/router.test.ts:37"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9ca9c60cd0acabc7", "name": "Commented-code block (7 lines) in assistant/src/memory/v2/__tests__/injection.test.ts:134", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/v2/__tests__/injection.test.ts:134"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ac1674425a52d562", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/qdrant.test.ts:381", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/qdrant.test.ts:381"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-aa2e3b4bacd53f99", "name": "Commented-code block (7 lines) in assistant/src/memory/v2/__tests__/page-store.test.ts:390", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/v2/__tests__/page-store.test.ts:390"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-16a0c2c032cf3789", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/sweep-job.test.ts:446", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/sweep-job.test.ts:446"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c10d609f178a5f63", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/backfill-jobs.test.ts:221", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/backfill-jobs.test.ts:221"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9fb08214493b1eee", "name": "Legacy-named symbol `migration_memory_v2_injection_events_v1` in assistant/src/memory/v2/__tests__/injection-events.test", "shortDescription": {"text": "Legacy-named symbol `migration_memory_v2_injection_events_v1` in assistant/src/memory/v2/__tests__/injection-events.test.ts:182"}, "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-5484ab696f67a609", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/consolidation-job.test.ts:45", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/consolidation-job.test.ts:45"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-244521942c4bbccd", "name": "Commented-code block (5 lines) in assistant/src/memory/v2/prompts/router.ts:120", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/prompts/router.ts:120"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4e779b049baf9cab", "name": "Commented-code block (9 lines) in assistant/src/memory/v2/harness/replay-input.ts:177", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/memory/v2/harness/replay-input.ts:177"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bf16b52bc99d27f2", "name": "Commented-code block (6 lines) in assistant/src/memory/context-search/agent-runner.ts:295", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/context-search/agent-runner.ts:295"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3d52f126682d3ee4", "name": "Commented-code block (9 lines) in assistant/src/memory/context-search/sources/memory-v2.ts:9", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/memory/context-search/sources/memory-v2.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-091bdf8df419c6c2", "name": "Commented-code block (7 lines) in assistant/src/memory/pkb/pkb-search.ts:119", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/pkb/pkb-search.ts:119"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d9df2ede9b8316c7", "name": "Commented-code block (6 lines) in assistant/src/memory/pkb/pkb-reconcile.ts:46", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/pkb/pkb-reconcile.ts:46"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4bd45a7f76f2953b", "name": "Legacy-named symbol `migration_conversation_cleaned_at_v1` in assistant/src/memory/migrations/259-conversation-cleaned-a", "shortDescription": {"text": "Legacy-named symbol `migration_conversation_cleaned_at_v1` in assistant/src/memory/migrations/259-conversation-cleaned-at.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d0bc47d323916a89", "name": "Legacy-named symbol `migration_notification_tables_schema_v1` in assistant/src/memory/migrations/019-notification-tables", "shortDescription": {"text": "Legacy-named symbol `migration_notification_tables_schema_v1` in assistant/src/memory/migrations/019-notification-tables-schema-migration.ts:20"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-edee98f0587cdce0", "name": "Legacy-named symbol `migration_memory_items_scope_salted_fingerprints_v1` in assistant/src/memory/migrations/006-scope-s", "shortDescription": {"text": "Legacy-named symbol `migration_memory_items_scope_salted_fingerprints_v1` in assistant/src/memory/migrations/006-scope-salted-fingerprints.ts:20"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-30bd1a5b376055d6", "name": "Commented-code block (6 lines) in assistant/src/memory/migrations/119-schema-indexes-and-columns.ts:27", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/migrations/119-schema-indexes-and-columns.ts:27"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-45c36403c581a509", "name": "Legacy-named symbol `migration_rename_guardian_verification_values_v1` in assistant/src/memory/migrations/143-rename-gua", "shortDescription": {"text": "Legacy-named symbol `migration_rename_guardian_verification_values_v1` in assistant/src/memory/migrations/143-rename-guardian-verification-values.ts:53"}, "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-8f762bb6bf52955c", "name": "Legacy-named symbol `migration_memory_entity_relations_dedup_v1` in assistant/src/memory/migrations/registry.ts:95", "shortDescription": {"text": "Legacy-named symbol `migration_memory_entity_relations_dedup_v1` in assistant/src/memory/migrations/registry.ts:95"}, "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-57a4c9e7ec0720cb", "name": "Commented-code block (5 lines) in assistant/src/memory/migrations/registry.ts:75", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/registry.ts:75"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9795a376e34d772c", "name": "Legacy-named symbol `migration_trace_events_created_at_index_v1` in assistant/src/memory/migrations/239-trace-events-cre", "shortDescription": {"text": "Legacy-named symbol `migration_trace_events_created_at_index_v1` in assistant/src/memory/migrations/239-trace-events-created-at-index.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a8d0764a6904714b", "name": "Legacy-named symbol `migration_slack_compaction_watermark_v1` in assistant/src/memory/migrations/235-slack-compaction-wa", "shortDescription": {"text": "Legacy-named symbol `migration_slack_compaction_watermark_v1` in assistant/src/memory/migrations/235-slack-compaction-watermark.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4ebcbc42cc8f0907", "name": "Legacy-named symbol `migration_create_memory_recall_logs_v1` in assistant/src/memory/migrations/194-memory-recall-logs.t", "shortDescription": {"text": "Legacy-named symbol `migration_create_memory_recall_logs_v1` in assistant/src/memory/migrations/194-memory-recall-logs.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be4d82903faf796a", "name": "Legacy-named symbol `migration_heartbeat_runs_v1` in assistant/src/memory/migrations/237-heartbeat-runs.ts:6", "shortDescription": {"text": "Legacy-named symbol `migration_heartbeat_runs_v1` in assistant/src/memory/migrations/237-heartbeat-runs.ts:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-76c346d02731270f", "name": "Legacy-named symbol `migration_message_bookmarks_v1` in assistant/src/memory/migrations/242-message-bookmarks.ts:5", "shortDescription": {"text": "Legacy-named symbol `migration_message_bookmarks_v1` in assistant/src/memory/migrations/242-message-bookmarks.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7f219eee54e52077", "name": "Legacy-named symbol `migration_guardian_request_enrichment_columns_v1` in assistant/src/memory/migrations/199-guardian-r", "shortDescription": {"text": "Legacy-named symbol `migration_guardian_request_enrichment_columns_v1` in assistant/src/memory/migrations/199-guardian-request-enrichment-columns.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-49f6bd96ad077495", "name": "Legacy-named symbol `migration_acp_session_history_cwd_v1` in assistant/src/memory/migrations/272-acp-session-history-cw", "shortDescription": {"text": "Legacy-named symbol `migration_acp_session_history_cwd_v1` in assistant/src/memory/migrations/272-acp-session-history-cwd.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f79ff2b35a22e14a", "name": "Legacy-named symbol `migration_normalize_slack_external_content_v1` in assistant/src/memory/migrations/249-normalize-sla", "shortDescription": {"text": "Legacy-named symbol `migration_normalize_slack_external_content_v1` in assistant/src/memory/migrations/249-normalize-slack-external-content.ts:12"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-241369a82fbf7869", "name": "Commented-code block (5 lines) in assistant/src/memory/migrations/249-normalize-slack-external-content.ts:199", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/249-normalize-slack-external-content.ts:199"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5ba12416af5f7444", "name": "Legacy-named symbol `migration_repair_memory_graph_event_dates_v1` in assistant/src/memory/migrations/231-repair-memory-", "shortDescription": {"text": "Legacy-named symbol `migration_repair_memory_graph_event_dates_v1` in assistant/src/memory/migrations/231-repair-memory-graph-event-dates.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0bc2da89be9b3154", "name": "Legacy-named symbol `migration_embeddings_nullable_vector_json_v1` in assistant/src/memory/migrations/026a-embeddings-nu", "shortDescription": {"text": "Legacy-named symbol `migration_embeddings_nullable_vector_json_v1` in assistant/src/memory/migrations/026a-embeddings-nullable-vector-json.ts:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e31011003f1be7e5", "name": "Legacy-named symbol `migration_normalize_user_file_by_principal_v1` in assistant/src/memory/migrations/220-normalize-use", "shortDescription": {"text": "Legacy-named symbol `migration_normalize_user_file_by_principal_v1` in assistant/src/memory/migrations/220-normalize-user-file-by-principal.ts:90"}, "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-d18750a8fb4ea6b2", "name": "Legacy-named symbol `migration_memory_items_fingerprint_scope_unique_v1` in assistant/src/memory/migrations/005-fingerpr", "shortDescription": {"text": "Legacy-named symbol `migration_memory_items_fingerprint_scope_unique_v1` in assistant/src/memory/migrations/005-fingerprint-scope-unique.ts:12"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cc71010438a85eec", "name": "Legacy-named symbol `migration_remove_assistant_id_lue_v1` in assistant/src/memory/migrations/009-llm-usage-events-drop-", "shortDescription": {"text": "Legacy-named symbol `migration_remove_assistant_id_lue_v1` in assistant/src/memory/migrations/009-llm-usage-events-drop-assistant-id.ts:17"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ee8888f84055ef9e", "name": "Legacy-named symbol `migration_rename_memory_graph_type_values_v1` in assistant/src/memory/migrations/204-rename-memory-", "shortDescription": {"text": "Legacy-named symbol `migration_rename_memory_graph_type_values_v1` in assistant/src/memory/migrations/204-rename-memory-graph-type-values.ts:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3462ea111977c693", "name": "Legacy-named symbol `migration_memory_v2_injection_events_v1` in assistant/src/memory/migrations/256-memory-v2-injection", "shortDescription": {"text": "Legacy-named symbol `migration_memory_v2_injection_events_v1` in assistant/src/memory/migrations/256-memory-v2-injection-events.ts:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-11ee29c477663608", "name": "Legacy-named symbol `migration_channel_inbound_delivery_attempts_v1` in assistant/src/memory/migrations/255-channel-inbo", "shortDescription": {"text": "Legacy-named symbol `migration_channel_inbound_delivery_attempts_v1` in assistant/src/memory/migrations/255-channel-inbound-delivery-attempts.ts:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c0ace7f90a07363f", "name": "Legacy-named symbol `migration_rename_gmail_provider_key_to_google_v1` in assistant/src/memory/migrations/169-rename-gma", "shortDescription": {"text": "Legacy-named symbol `migration_rename_gmail_provider_key_to_google_v1` in assistant/src/memory/migrations/169-rename-gmail-provider-key-to-google.ts:23"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0a39eacb57678bb1", "name": "Legacy-named symbol `migration_normalize_assistant_id_to_self_v1` in assistant/src/memory/migrations/007-assistant-id-to", "shortDescription": {"text": "Legacy-named symbol `migration_normalize_assistant_id_to_self_v1` in assistant/src/memory/migrations/007-assistant-id-to-self.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-b218cb77ed4a2ff8", "name": "Commented-code block (5 lines) in assistant/src/memory/migrations/007-assistant-id-to-self.ts:38", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/007-assistant-id-to-self.ts:38"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9251d6cd7bab274f", "name": "Legacy-named symbol `migration_rename_cleaned_at_v1` in assistant/src/memory/migrations/260-rename-cleaned-at.ts:5", "shortDescription": {"text": "Legacy-named symbol `migration_rename_cleaned_at_v1` in assistant/src/memory/migrations/260-rename-cleaned-at.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c8b50a5cc1836155", "name": "Commented-code block (5 lines) in assistant/src/memory/migrations/validate-migration-state.ts:222", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/validate-migration-state.ts:222"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d90011f2f6d221a2", "name": "Legacy-named symbol `migration_create_trace_events_table_v1` in assistant/src/memory/migrations/177-create-trace-events-", "shortDescription": {"text": "Legacy-named symbol `migration_create_trace_events_table_v1` in assistant/src/memory/migrations/177-create-trace-events-table.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-63547140fa3e7ec2", "name": "Legacy-named symbol `migration_llm_request_logs_created_at_index_v1` in assistant/src/memory/migrations/212-llm-request-", "shortDescription": {"text": "Legacy-named symbol `migration_llm_request_logs_created_at_index_v1` in assistant/src/memory/migrations/212-llm-request-logs-created-at-index.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-42b0dc259bbffd2c", "name": "Legacy-named symbol `migration_acp_session_history_v1` in assistant/src/memory/migrations/230-acp-session-history.ts:5", "shortDescription": {"text": "Legacy-named symbol `migration_acp_session_history_v1` in assistant/src/memory/migrations/230-acp-session-history.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a1676f8c502c5b8b", "name": "Legacy-named symbol `migration_contacts_notes_column_v1` in assistant/src/memory/migrations/134-contacts-notes-column.ts", "shortDescription": {"text": "Legacy-named symbol `migration_contacts_notes_column_v1` in assistant/src/memory/migrations/134-contacts-notes-column.ts:21"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9b0eb9e2328f4891", "name": "Commented-code block (7 lines) in assistant/src/memory/migrations/105-contacts-and-triage.ts:7", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/migrations/105-contacts-and-triage.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-36458e31fd802b30", "name": "Legacy-named symbol `migration_schedule_description_backfill_v1` in assistant/src/memory/migrations/270-schedule-descrip", "shortDescription": {"text": "Legacy-named symbol `migration_schedule_description_backfill_v1` in assistant/src/memory/migrations/270-schedule-description.ts:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7cf538a569ec53fb", "name": "Legacy-named symbol `migration_strip_thinking_from_consolidated_v1` in assistant/src/memory/migrations/209-strip-thinkin", "shortDescription": {"text": "Legacy-named symbol `migration_strip_thinking_from_consolidated_v1` in assistant/src/memory/migrations/209-strip-thinking-from-consolidated.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-85b461a2d441f3ca", "name": "Legacy-named symbol `migration_strip_placeholder_sentinels_from_messages_v1` in assistant/src/memory/migrations/222-stri", "shortDescription": {"text": "Legacy-named symbol `migration_strip_placeholder_sentinels_from_messages_v1` in assistant/src/memory/migrations/222-strip-placeholder-sentinels-from-messages.ts:30"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-63ed951488fb0d25", "name": "Legacy-named symbol `migration_drop_reminders_table_v1` in assistant/src/memory/migrations/148-drop-reminders-table.ts:1", "shortDescription": {"text": "Legacy-named symbol `migration_drop_reminders_table_v1` in assistant/src/memory/migrations/148-drop-reminders-table.ts:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5cdd61917a344d67", "name": "Legacy-named symbol `migration_rename_verification_table_v1` in assistant/src/memory/migrations/141-rename-verification-", "shortDescription": {"text": "Legacy-named symbol `migration_rename_verification_table_v1` in assistant/src/memory/migrations/141-rename-verification-table.ts:64"}, "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-d98670da13c07555", "name": "Legacy-named symbol `migration_rename_verification_session_id_column_v1` in assistant/src/memory/migrations/142-rename-v", "shortDescription": {"text": "Legacy-named symbol `migration_rename_verification_session_id_column_v1` in assistant/src/memory/migrations/142-rename-verification-session-id-column.ts:39"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8bf5e42e80edabd4", "name": "Legacy-named symbol `migration_oauth_apps_client_secret_path_v1` in assistant/src/memory/migrations/150-oauth-apps-clien", "shortDescription": {"text": "Legacy-named symbol `migration_oauth_apps_client_secret_path_v1` in assistant/src/memory/migrations/150-oauth-apps-client-secret-path.ts:20"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7d0b20d5e9e86549", "name": "Legacy-named symbol `migration_activation_state_v1` in assistant/src/memory/migrations/232-activation-state.ts:5", "shortDescription": {"text": "Legacy-named symbol `migration_activation_state_v1` in assistant/src/memory/migrations/232-activation-state.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-59a6fb8b8a53574d", "name": "Legacy-named symbol `migration_memory_recall_logs_query_context_v1` in assistant/src/memory/migrations/211-memory-recall", "shortDescription": {"text": "Legacy-named symbol `migration_memory_recall_logs_query_context_v1` in assistant/src/memory/migrations/211-memory-recall-logs-query-context.ts:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e0a64de2ec14519e", "name": "Legacy-named symbol `migration_rename_thread_starters_table_v1` in assistant/src/memory/migrations/174-rename-thread-sta", "shortDescription": {"text": "Legacy-named symbol `migration_rename_thread_starters_table_v1` in assistant/src/memory/migrations/174-rename-thread-starters-table.ts:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2e8210f0abecd7ac", "name": "Legacy-named symbol `migration_conversation_host_access_v1` in assistant/src/memory/migrations/217-conversation-host-acc", "shortDescription": {"text": "Legacy-named symbol `migration_conversation_host_access_v1` in assistant/src/memory/migrations/217-conversation-host-access.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cd6150ac44111eb4", "name": "Legacy-named symbol `migration_external_conversation_binding_chat_name_v1` in assistant/src/memory/migrations/254-extern", "shortDescription": {"text": "Legacy-named symbol `migration_external_conversation_binding_chat_name_v1` in assistant/src/memory/migrations/254-external-conversation-binding-chat-name.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b1788512f5f6c851", "name": "Legacy-named symbol `migration_add_source_type_columns_v1` in assistant/src/memory/migrations/193-add-source-type-column", "shortDescription": {"text": "Legacy-named symbol `migration_add_source_type_columns_v1` in assistant/src/memory/migrations/193-add-source-type-columns.ts:19"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-01c8bdae858f3b68", "name": "Legacy-named symbol `migration_drop_accounts_table_v1` in assistant/src/memory/migrations/145-drop-accounts-table.ts:12", "shortDescription": {"text": "Legacy-named symbol `migration_drop_accounts_table_v1` in assistant/src/memory/migrations/145-drop-accounts-table.ts:12"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3886c86e039887fe", "name": "Legacy-named symbol `migration_reminders_to_schedules_v1` in assistant/src/memory/migrations/147-migrate-reminders-to-sc", "shortDescription": {"text": "Legacy-named symbol `migration_reminders_to_schedules_v1` in assistant/src/memory/migrations/147-migrate-reminders-to-schedules.ts:34"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-686b40c1dc33b450", "name": "Legacy-named symbol `migration_backfill_inline_attachments_v1` in assistant/src/memory/migrations/180-backfill-inline-at", "shortDescription": {"text": "Legacy-named symbol `migration_backfill_inline_attachments_v1` in assistant/src/memory/migrations/180-backfill-inline-attachments-to-disk.ts:21"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5192493dbfb72278", "name": "Legacy-named symbol `migration_memory_retrospective_state_v1` in assistant/src/memory/migrations/245-memory-retrospectiv", "shortDescription": {"text": "Legacy-named symbol `migration_memory_retrospective_state_v1` in assistant/src/memory/migrations/245-memory-retrospective-state.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-aae8b9adea249987", "name": "Legacy-named symbol `migration_normalize_phone_identities_v1` in assistant/src/memory/migrations/036-normalize-phone-ide", "shortDescription": {"text": "Legacy-named symbol `migration_normalize_phone_identities_v1` in assistant/src/memory/migrations/036-normalize-phone-identities.ts:30"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9744fd024a67939e", "name": "Commented-code block (5 lines) in assistant/src/memory/migrations/036-normalize-phone-identities.ts:150", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/036-normalize-phone-identities.ts:150"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2e673b6d2f71fb68", "name": "Legacy-named symbol `migration_contacts_user_file_column_v1` in assistant/src/memory/migrations/192-contacts-user-file-c", "shortDescription": {"text": "Legacy-named symbol `migration_contacts_user_file_column_v1` in assistant/src/memory/migrations/192-contacts-user-file-column.ts:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4da9ea809440e351", "name": "Legacy-named symbol `migration_rename_macos_ios_channel_to_vellum_v1` in assistant/src/memory/migrations/020-rename-maco", "shortDescription": {"text": "Legacy-named symbol `migration_rename_macos_ios_channel_to_vellum_v1` in assistant/src/memory/migrations/020-rename-macos-ios-channel-to-vellum.ts:11"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b516b59eba1760cc", "name": "Commented-code block (5 lines) in assistant/src/memory/migrations/104-core-indexes.ts:97", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/104-core-indexes.ts:97"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-057299df3c36381d", "name": "Legacy-named symbol `migration_rename_thread_starters_table_v1` in assistant/src/memory/migrations/181-rename-thread-sta", "shortDescription": {"text": "Legacy-named symbol `migration_rename_thread_starters_table_v1` in assistant/src/memory/migrations/181-rename-thread-starters-checkpoints.ts:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-24de1ebd5131b312", "name": "Legacy-named symbol `migration_memory_retrospective_remembered_log_v1` in assistant/src/memory/migrations/281-memory-ret", "shortDescription": {"text": "Legacy-named symbol `migration_memory_retrospective_remembered_log_v1` in assistant/src/memory/migrations/281-memory-retrospective-remembered-log.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cddfe7572f4ff1df", "name": "Legacy-named symbol `migration_memory_entity_relations_dedup_v1` in assistant/src/memory/migrations/004-entity-relation-", "shortDescription": {"text": "Legacy-named symbol `migration_memory_entity_relations_dedup_v1` in assistant/src/memory/migrations/004-entity-relation-dedup.ts: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-d43af17bae10df15", "name": "Commented-code block (6 lines) in assistant/src/memory/migrations/004-entity-relation-dedup.ts:15", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/migrations/004-entity-relation-dedup.ts:15"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-33b0318107a735eb", "name": "Legacy-named symbol `migration_strip_integration_prefix_from_provider_keys_v1` in assistant/src/memory/migrations/196-st", "shortDescription": {"text": "Legacy-named symbol `migration_strip_integration_prefix_from_provider_keys_v1` in assistant/src/memory/migrations/196-strip-integration-prefix-from-provider-keys.ts:28"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1c16f687ff80ccbf", "name": "Legacy-named symbol `migration_remove_assistant_id_columns_v1` in assistant/src/memory/migrations/008-remove-assistant-i", "shortDescription": {"text": "Legacy-named symbol `migration_remove_assistant_id_columns_v1` in assistant/src/memory/migrations/008-remove-assistant-id-columns.ts:23"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0b5d5324e6d22c7a", "name": "Legacy-named symbol `migration_invite_contact_id_v1` in assistant/src/memory/migrations/157-invite-contact-id.ts:16", "shortDescription": {"text": "Legacy-named symbol `migration_invite_contact_id_v1` in assistant/src/memory/migrations/157-invite-contact-id.ts:16"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ace1ccd41572c410", "name": "Commented-code block (5 lines) in assistant/src/memory/migrations/126-backfill-guardian-principal-id.ts:250", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/126-backfill-guardian-principal-id.ts:250"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-27cd51395b4301c5", "name": "Legacy-named symbol `migration_a2a_tasks_v1` in assistant/src/memory/migrations/251-a2a-tasks.ts:6", "shortDescription": {"text": "Legacy-named symbol `migration_a2a_tasks_v1` in assistant/src/memory/migrations/251-a2a-tasks.ts:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-05cce61f0a0cc466", "name": "Legacy-named symbol `migration_guardian_timestamps_epoch_ms_v1` in assistant/src/memory/migrations/162-guardian-timestam", "shortDescription": {"text": "Legacy-named symbol `migration_guardian_timestamps_epoch_ms_v1` in assistant/src/memory/migrations/162-guardian-timestamps-epoch-ms.ts:23"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-279995ac2fc12a81", "name": "Legacy-named symbol `migration_memory_v2_activation_logs_v1` in assistant/src/memory/migrations/234-memory-v2-activation", "shortDescription": {"text": "Legacy-named symbol `migration_memory_v2_activation_logs_v1` in assistant/src/memory/migrations/234-memory-v2-activation-logs.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2db7b5e0955cfbcb", "name": "Legacy-named symbol `migration_backfill_audio_attachment_mime_types_v1` in assistant/src/memory/migrations/191-backfill-", "shortDescription": {"text": "Legacy-named symbol `migration_backfill_audio_attachment_mime_types_v1` in assistant/src/memory/migrations/191-backfill-audio-attachment-mime-types.ts:28"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3be4e6c38fa61bef", "name": "Legacy-named symbol `migration_drop_capability_card_state_v1` in assistant/src/memory/migrations/176-drop-capability-car", "shortDescription": {"text": "Legacy-named symbol `migration_drop_capability_card_state_v1` in assistant/src/memory/migrations/176-drop-capability-card-state.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-99a7f4ac94534cd6", "name": "Legacy-named symbol `migration_tool_invocations_matched_trust_rule_id_v1` in assistant/src/memory/migrations/236-tool-in", "shortDescription": {"text": "Legacy-named symbol `migration_tool_invocations_matched_trust_rule_id_v1` in assistant/src/memory/migrations/236-tool-invocations-matched-rule-id.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-01d4261c5cf9f742", "name": "Legacy-named symbol `migration_drop_assistant_id_columns_v1` in assistant/src/memory/migrations/136-drop-assistant-id-co", "shortDescription": {"text": "Legacy-named symbol `migration_drop_assistant_id_columns_v1` in assistant/src/memory/migrations/136-drop-assistant-id-columns.ts:71"}, "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-d95638a863585f1f", "name": "Legacy-named symbol `migration_document_conversations_v1` in assistant/src/memory/migrations/233-document-conversations.", "shortDescription": {"text": "Legacy-named symbol `migration_document_conversations_v1` in assistant/src/memory/migrations/233-document-conversations.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-baeb824b0d759cc5", "name": "Legacy-named symbol `migration_backfill_usage_cache_accounting_v1` in assistant/src/memory/migrations/140-backfill-usage", "shortDescription": {"text": "Legacy-named symbol `migration_backfill_usage_cache_accounting_v1` in assistant/src/memory/migrations/140-backfill-usage-cache-accounting.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-4eec436ff229167b", "name": "Legacy-named symbol `migration_rename_voice_to_phone_v1` in assistant/src/memory/migrations/144-rename-voice-to-phone.ts", "shortDescription": {"text": "Legacy-named symbol `migration_rename_voice_to_phone_v1` in assistant/src/memory/migrations/144-rename-voice-to-phone.ts:148"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-65f22e389356034b", "name": "Legacy-named symbol `migration_embedding_vector_blob_v1` in assistant/src/memory/migrations/024-embedding-vector-blob.ts", "shortDescription": {"text": "Legacy-named symbol `migration_embedding_vector_blob_v1` in assistant/src/memory/migrations/024-embedding-vector-blob.ts:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4df710029b0a9544", "name": "Legacy-named symbol `migration_guardian_principal_id_not_null_v1` in assistant/src/memory/migrations/127-guardian-princi", "shortDescription": {"text": "Legacy-named symbol `migration_guardian_principal_id_not_null_v1` in assistant/src/memory/migrations/127-guardian-principal-id-not-null.ts:99"}, "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-e42e20716b6b6354", "name": "Legacy-named symbol `migration_llm_usage_add_raw_usage_v1` in assistant/src/memory/migrations/261-llm-usage-add-raw-usag", "shortDescription": {"text": "Legacy-named symbol `migration_llm_usage_add_raw_usage_v1` in assistant/src/memory/migrations/261-llm-usage-add-raw-usage.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-da948f042477f0db", "name": "Legacy-named symbol `migration_scrub_corrupted_image_attachments_v1` in assistant/src/memory/migrations/206-scrub-corrup", "shortDescription": {"text": "Legacy-named symbol `migration_scrub_corrupted_image_attachments_v1` in assistant/src/memory/migrations/206-scrub-corrupted-image-attachments.ts:29"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bbf3e4de7af762fa", "name": "Legacy-named symbol `migration_memory_v3_auto_edges_v1` in assistant/src/memory/migrations/263-memory-v3-auto-edges.ts:5", "shortDescription": {"text": "Legacy-named symbol `migration_memory_v3_auto_edges_v1` in assistant/src/memory/migrations/263-memory-v3-auto-edges.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-82904dc75463bf72", "name": "Legacy-named symbol `migration_memory_v3_coactivation_v1` in assistant/src/memory/migrations/262-memory-v3-coactivation.", "shortDescription": {"text": "Legacy-named symbol `migration_memory_v3_coactivation_v1` in assistant/src/memory/migrations/262-memory-v3-coactivation.ts:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fab086d14eddd413", "name": "Commented-code block (7 lines) in assistant/src/memory/jobs/embed-concept-page.ts:11", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/jobs/embed-concept-page.ts:11"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1512581dc69f822c", "name": "Commented-code block (7 lines) in assistant/src/memory/job-handlers/cleanup.ts:45", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/job-handlers/cleanup.ts:45"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-706a937835467dde", "name": "Commented-code block (5 lines) in assistant/src/memory/graph/decay.ts:4", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/graph/decay.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-3a65112a5a5f7d52", "name": "Commented-code block (6 lines) in assistant/src/memory/graph/capability-seed.ts:118", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/graph/capability-seed.ts:118"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dcacf81b6ff9dc5f", "name": "Legacy-named symbol `memory_graph_nodes_backup` in assistant/src/memory/graph/bootstrap.test.ts:129", "shortDescription": {"text": "Legacy-named symbol `memory_graph_nodes_backup` in assistant/src/memory/graph/bootstrap.test.ts:129"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0c47e078736cffb5", "name": "Commented-code block (5 lines) in assistant/src/memory/graph/retriever.ts:422", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/graph/retriever.ts:422"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-27583e3dd332c840", "name": "Commented-code block (6 lines) in assistant/src/memory/graph/retriever.test.ts:4", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/graph/retriever.test.ts:4"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-db57270185eddaff", "name": "Commented-code block (5 lines) in assistant/src/memory/graph/extraction.ts:723", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/graph/extraction.ts:723"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1939e1c2e5605899", "name": "Commented-code block (6 lines) in assistant/src/memory/graph/injection.ts:190", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/memory/graph/injection.ts:190"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2dfd99ab2ed1976e", "name": "Commented-code block (7 lines) in assistant/src/memory/graph/conversation-graph-memory.ts:712", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/memory/graph/conversation-graph-memory.ts:712"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-04f1f4ae464b3ff7", "name": "Commented-code block (5 lines) in assistant/src/memory/graph/__tests__/conversation-graph-memory-v2-routing.test.ts:185", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/memory/graph/__tests__/conversation-graph-memory-v2-routing.test.ts:185"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-47af3276c9bc4337", "name": "Legacy-named symbol `local_v1` in assistant/src/runtime/local-actor-identity.ts:41", "shortDescription": {"text": "Legacy-named symbol `local_v1` in assistant/src/runtime/local-actor-identity.ts:41"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d216d1a6207e6a9f", "name": "Commented-code block (6 lines) in assistant/src/runtime/channel-verification-service.ts:228", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/channel-verification-service.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-ac01babc0700e0ec", "name": "Commented-code block (6 lines) in assistant/src/runtime/assistant-stream-state.ts:230", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/assistant-stream-state.ts:230"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d520fd65362250df", "name": "Commented-code block (7 lines) in assistant/src/runtime/pending-interactions.ts:216", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/runtime/pending-interactions.ts:216"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-70c45bfad5e0ca9c", "name": "Commented-code block (10 lines) in assistant/src/runtime/slack-block-formatting.ts:95", "shortDescription": {"text": "Commented-code block (10 lines) in assistant/src/runtime/slack-block-formatting.ts:95"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-60af800c6d6e1a73", "name": "Commented-code block (8 lines) in assistant/src/runtime/actor-trust-resolver.ts:208", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/runtime/actor-trust-resolver.ts:208"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0ac6881aa08e9c28", "name": "Commented-code block (5 lines) in assistant/src/runtime/background-job-runner.ts:191", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/background-job-runner.ts:191"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bb7aa80079369aae", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/verification-outbound-actions.ts:545", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/verification-outbound-actions.ts:545"}, "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-3da4b19c1cb1630d", "name": "Commented-code block (6 lines) in assistant/src/runtime/http-server.ts:535", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/http-server.ts:535"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-16050d48df6e4215", "name": "Commented-code block (5 lines) in assistant/src/runtime/agent-wake.ts:306", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/agent-wake.ts:306"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-61732797725bdba3", "name": "Commented-code block (8 lines) in assistant/src/runtime/access-request-helper.ts:204", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/runtime/access-request-helper.ts:204"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-30b67864351e577b", "name": "Commented-code block (5 lines) in assistant/src/runtime/guardian-reply-router.ts:304", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/guardian-reply-router.ts:304"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7c364e0d2ee4e8ff", "name": "Commented-code block (5 lines) in assistant/src/runtime/channel-retry-sweep.ts:164", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/channel-retry-sweep.ts:164"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-646ab2b23ef54f20", "name": "Commented-code block (9 lines) in assistant/src/runtime/channel-reply-delivery.ts:313", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/runtime/channel-reply-delivery.ts:313"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-183c93b099f63b97", "name": "Commented-code block (7 lines) in assistant/src/runtime/assistant-event-hub.ts:613", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/runtime/assistant-event-hub.ts:613"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2b406e80485f3143", "name": "Commented-code block (7 lines) in assistant/src/runtime/__tests__/slack-block-formatting.test.ts:258", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/runtime/__tests__/slack-block-formatting.test.ts:258"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9c28457792ccdf35", "name": "Commented-code block (9 lines) in assistant/src/runtime/__tests__/agent-wake.test.ts:111", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/runtime/__tests__/agent-wake.test.ts:111"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2c5f91308809d485", "name": "Commented-code block (8 lines) in assistant/src/runtime/sync/resource-sync-events.ts:131", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/runtime/sync/resource-sync-events.ts:131"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0e862bfd9ddba404", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/scopes.ts:16", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/scopes.ts:16"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ace737cb4f01869d", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/middleware.ts:59", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/middleware.ts:59"}, "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-2dbb68f1e6bb2b4f", "name": "Commented-code block (7 lines) in assistant/src/runtime/auth/middleware.ts:113", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/runtime/auth/middleware.ts:113"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-16b1e40c0d5949f8", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/types.ts:13", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/types.ts:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-229d317061b14b40", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/scopes.test.ts:19", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/scopes.test.ts:19"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-546567436d4d5c84", "name": "Legacy-named symbol `local_v1` in assistant/src/runtime/auth/__tests__/local-auth-context.test.ts:30", "shortDescription": {"text": "Legacy-named symbol `local_v1` in assistant/src/runtime/auth/__tests__/local-auth-context.test.ts:30"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-38947475f294c2e5", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/route-policy.test.ts:50", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/route-policy.test.ts:50"}, "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-542210dd969706b3", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/token-service.test.ts:29", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/token-service.test.ts:29"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ac1e4e216d342a23", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/middleware.test.ts:63", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/middleware.test.ts:63"}, "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-05f925dd2b749662", "name": "Commented-code block (5 lines) in assistant/src/runtime/auth/__tests__/middleware.test.ts:193", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/auth/__tests__/middleware.test.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-c7d73435e6d1b4a3", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/context.test.ts:12", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/context.test.ts:12"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cb7088b4889d5a53", "name": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/guard-tests.test.ts:238", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/guard-tests.test.ts:238"}, "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-8ef73eb3d0019b2c", "name": "Commented-code block (7 lines) in assistant/src/runtime/auth/__tests__/guard-tests.test.ts:71", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/runtime/auth/__tests__/guard-tests.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-539d1b38598efcbc", "name": "Commented-code block (5 lines) in assistant/src/runtime/middleware/request-logger.ts:36", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/middleware/request-logger.ts:36"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-82a2a928b80f7d47", "name": "Commented-code block (6 lines) in assistant/src/runtime/middleware/rate-limiter.ts:15", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/middleware/rate-limiter.ts:15"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-87ed0fd5e863b8e0", "name": "Commented-code block (5 lines) in assistant/src/runtime/middleware/__tests__/request-logger.test.ts:18", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/middleware/__tests__/request-logger.test.ts:18"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d8ea9dc46f2551d7", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/identity-routes.ts:131", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/identity-routes.ts:131"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-68bcdf010941a998", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/avatar-routes.ts:68", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/avatar-routes.ts:68"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5c0ca059bea99ed2", "name": "Commented-code block (6 lines) in assistant/src/runtime/routes/browser-tabs-routes.ts:116", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/browser-tabs-routes.ts:116"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-47884c4bdab38533", "name": "Commented-code block (9 lines) in assistant/src/runtime/routes/schedule-routes.ts:434", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/runtime/routes/schedule-routes.ts:434"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dd3e58199f82ae4e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/sanity-routes.ts:55", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/sanity-routes.ts:55"}, "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-507810d3ce11724c", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/inference-profile-session-handler.ts:102", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/inference-profile-session-handler.ts:102"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7a0ba3a82b9937b2", "name": "Commented-code block (6 lines) in assistant/src/runtime/routes/acp-routes.test.ts:51", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/acp-routes.test.ts:51"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-961ba7f1db64a4bb", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/skills-routes.ts:435", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/skills-routes.ts:435"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-236b2a170b58c9f9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/email-routes.ts:79", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/email-routes.ts:79"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-42e098d1666473e9", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/conversation-query-routes.ts:295", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/conversation-query-routes.ts:295"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a9a7b19be62019ec", "name": "Commented-code block (8 lines) in assistant/src/runtime/routes/conversation-compaction-routes.ts:295", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/runtime/routes/conversation-compaction-routes.ts:295"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-65ea347d47632c2c", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/conversation-list-routes.ts:191", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/conversation-list-routes.ts:191"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dc51e5ff6174fc7e", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/access-request-decision.ts:71", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/access-request-decision.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-8c811f270579aecc", "name": "Commented-code block (7 lines) in assistant/src/runtime/routes/guardian-approval-interception.ts:127", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/runtime/routes/guardian-approval-interception.ts:127"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2d752fe2476e56d0", "name": "Commented-code block (10 lines) in assistant/src/runtime/routes/inbound-message-handler.ts:404", "shortDescription": {"text": "Commented-code block (10 lines) in assistant/src/runtime/routes/inbound-message-handler.ts:404"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-85b54360f72b5294", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/acp-routes.ts:238", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/acp-routes.ts:238"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-024079aa583cbceb", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/events-routes.ts:285", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/events-routes.ts:285"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-89b8265787e3498c", "name": "Commented-code block (7 lines) in assistant/src/runtime/routes/plugins-routes.ts:675", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/runtime/routes/plugins-routes.ts:675"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3607b0ee95c3ba4a", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/guardian-action-routes.ts:73", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/guardian-action-routes.ts:73"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-12b1a289e67ff494", "name": "Commented-code block (8 lines) in assistant/src/runtime/routes/client-routes.ts:51", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/runtime/routes/client-routes.ts:51"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a101365f6bb7f701", "name": "Commented-code block (8 lines) in assistant/src/runtime/routes/workflow-routes.ts:202", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/runtime/routes/workflow-routes.ts:202"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cf215720a275718d", "name": "Commented-code block (6 lines) in assistant/src/runtime/routes/attachment-routes.ts:726", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/attachment-routes.ts:726"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ac18a0075584395d", "name": "Commented-code block (7 lines) in assistant/src/runtime/routes/conversation-routes.ts:297", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/runtime/routes/conversation-routes.ts:297"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4f96f20c75a1b8aa", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/memory-v2-routes.ts:125", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/memory-v2-routes.ts:125"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-319db45f33e1eda6", "name": "Legacy-named symbol `resolvedOld` in assistant/src/runtime/routes/workspace-routes.ts:483", "shortDescription": {"text": "Legacy-named symbol `resolvedOld` in assistant/src/runtime/routes/workspace-routes.ts:483"}, "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-6f96da5885db4a3d", "name": "Commented-code block (9 lines) in assistant/src/runtime/routes/workspace-routes.ts:54", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/runtime/routes/workspace-routes.ts:54"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-63467dc6af225f9c", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/inference-provider-connection-routes.ts:320", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/inference-provider-connection-routes.ts:320"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3742b0635d9ea1bb", "name": "Commented-code block (6 lines) in assistant/src/runtime/routes/redact-staged-export.ts:221", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/redact-staged-export.ts:221"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-09a5274b45d218ea", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/oauth-commands-routes.ts:100", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/oauth-commands-routes.ts:100"}, "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-f8e5016e4b03e742", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/btw-routes.ts:84", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/btw-routes.ts:84"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f1b4f40d294fb019", "name": "Commented-code block (8 lines) in assistant/src/runtime/routes/log-export-routes.ts:298", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/runtime/routes/log-export-routes.ts:298"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-55687930e983c049", "name": "Commented-code block (9 lines) in assistant/src/runtime/routes/migration-routes.ts:362", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/runtime/routes/migration-routes.ts:362"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ba84660e0d9b7afa", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/migration-routes.ts:1205", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/migration-routes.ts:1205"}, "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-34cc395068c37dc9", "name": "Commented-code block (6 lines) in assistant/src/runtime/routes/__tests__/conversation-query-routes.test.ts:35", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/__tests__/conversation-query-routes.test.ts:35"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e2f6e11573e950de", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/__tests__/plugins-routes.test.ts:501", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/__tests__/plugins-routes.test.ts:501"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c462da6407c30223", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/__tests__/memory-v2-simulate-route.test.ts:55", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/__tests__/memory-v2-simulate-route.test.ts:55"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-70fcb0bfc0ac30e4", "name": "Commented-code block (6 lines) in assistant/src/runtime/routes/__tests__/acp-routes.test.ts:36", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/__tests__/acp-routes.test.ts:36"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b3ce8eb1e21f12a1", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/__tests__/retrospective-routes.test.ts:237", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/__tests__/retrospective-routes.test.ts:237"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-41d3cde7cf1dc298", "name": "Commented-code block (6 lines) in assistant/src/runtime/routes/__tests__/consolidation-routes.test.ts:272", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/__tests__/consolidation-routes.test.ts:272"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-928cad8ba970cdef", "name": "Commented-code block (6 lines) in assistant/src/runtime/routes/inbound-stages/background-dispatch.ts:201", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/inbound-stages/background-dispatch.ts:201"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ce4c7f1cec4ffc4d", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/inbound-stages/acl-enforcement.ts:504", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/inbound-stages/acl-enforcement.ts:504"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5d8b2229dbf18d83", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/inbound-stages/guardian-activation-intercept.ts:107", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/inbound-stages/guardian-activation-intercept.ts:107"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b082445de05c240a", "name": "Commented-code block (8 lines) in assistant/src/runtime/routes/inbound-stages/guardian-reply-intercept.ts:105", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/runtime/routes/inbound-stages/guardian-reply-intercept.ts:105"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b3ea0e0b62af0efd", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/approval-strategies/guardian-callback-strategy.ts:531", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/approval-strategies/guardian-callback-strategy.ts:531"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-28e0076e95a16ddf", "name": "Commented-code block (6 lines) in assistant/src/runtime/routes/log-export/workspace-allowlist.ts:103", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/log-export/workspace-allowlist.ts:103"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7de7b5208032d7f9", "name": "Commented-code block (6 lines) in assistant/src/runtime/routes/log-export/__tests__/workspace-allowlist.test.ts:400", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/log-export/__tests__/workspace-allowlist.test.ts:400"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-281cc4d1e34593d6", "name": "Commented-code block (5 lines) in assistant/src/runtime/routes/log-export/__tests__/workspace-allowlist-error-contract.t", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/log-export/__tests__/workspace-allowlist-error-contract.test.ts:24"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-47b8b2a3825d2ed3", "name": "Commented-code block (7 lines) in assistant/src/runtime/services/analyze-conversation.ts:120", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/runtime/services/analyze-conversation.ts:120"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f64ac9ecc7399962", "name": "Commented-code block (5 lines) in assistant/src/runtime/migrations/gcs-signed-url.ts:77", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/gcs-signed-url.ts:77"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-45a340d257bebe5b", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/migrations/gcs-signed-url.ts:5", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/migrations/gcs-signed-url.ts:5"}, "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-f5765704c07b35be", "name": "Commented-code block (6 lines) in assistant/src/runtime/migrations/vbundle-streaming-importer.ts:79", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/migrations/vbundle-streaming-importer.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-996c57575f60bfd2", "name": "Commented-code block (7 lines) in assistant/src/runtime/migrations/vbundle-import-policy.ts:105", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/runtime/migrations/vbundle-import-policy.ts:105"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-07cb0f1567dcf4c4", "name": "Commented-code block (6 lines) in assistant/src/runtime/migrations/job-registry.ts:63", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/migrations/job-registry.ts:63"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ad3d9c444c61ef76", "name": "Commented-code block (6 lines) in assistant/src/runtime/migrations/vbundle-import-analyzer.ts:172", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/migrations/vbundle-import-analyzer.ts:172"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-41332400062ea8de", "name": "Commented-code block (5 lines) in assistant/src/runtime/migrations/vbundle-validator.ts:94", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/vbundle-validator.ts:94"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d62738b2c0497a91", "name": "Commented-code block (5 lines) in assistant/src/runtime/migrations/vbundle-importer.ts:206", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/vbundle-importer.ts:206"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9e3a7dbe4ff9dbb2", "name": "Legacy-named symbol `computedLegacy` in assistant/src/runtime/migrations/vbundle-streaming-validator.ts:179", "shortDescription": {"text": "Legacy-named symbol `computedLegacy` in assistant/src/runtime/migrations/vbundle-streaming-validator.ts:179"}, "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-5774c3f6de7d920b", "name": "Commented-code block (5 lines) in assistant/src/runtime/migrations/vbundle-streaming-validator.ts:112", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/vbundle-streaming-validator.ts:112"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-55b83deb5297b249", "name": "Commented-code block (5 lines) in assistant/src/runtime/migrations/vbundle-builder.ts:537", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/vbundle-builder.ts:537"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-39b79fc6d6cf5c16", "name": "Commented-code block (6 lines) in assistant/src/runtime/migrations/__tests__/vbundle-validator-v1-schema.test.ts:235", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/migrations/__tests__/vbundle-validator-v1-schema.test.ts:235"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-13ad368263994d01", "name": "Commented-code block (5 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-walker.test.ts:223", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-walker.test.ts:223"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-032f49a8dc3e9b86", "name": "Legacy-named symbol `badLegacy` in assistant/src/runtime/migrations/__tests__/vbundle-streaming-validator.test.ts:543", "shortDescription": {"text": "Legacy-named symbol `badLegacy` in assistant/src/runtime/migrations/__tests__/vbundle-streaming-validator.test.ts:543"}, "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-cb676a47755f9635", "name": "Commented-code block (7 lines) in assistant/src/runtime/migrations/__tests__/vbundle-streaming-importer.test.ts:453", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/runtime/migrations/__tests__/vbundle-streaming-importer.test.ts:453"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fcad843ba944d36d", "name": "Commented-code block (6 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-tar.test.ts:171", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-tar.test.ts:171"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b630a960c7916565", "name": "Commented-code block (5 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-streaming.test.ts:255", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-streaming.test.ts:255"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1a7f30a26f7c5861", "name": "Commented-code block (5 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-importer.test.ts:297", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-importer.test.ts:297"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-96f2106ba907aea9", "name": "Commented-code block (5 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-streaming-importer.test.ts:", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-streaming-importer.test.ts:236"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f5e7b3f2d13d77fa", "name": "Commented-code block (7 lines) in assistant/src/stt/stt-stream-session.ts:156", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/stt/stt-stream-session.ts:156"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8c809de75639cab9", "name": "Commented-code block (6 lines) in assistant/src/stt/__tests__/types.test.ts:14", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/stt/__tests__/types.test.ts:14"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9a11425f2f4a7be9", "name": "Commented-code block (5 lines) in assistant/src/permissions/checker.test.ts:484", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/permissions/checker.test.ts:484"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5001a1286ba46fb2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/permissions/checker.test.ts:337", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/permissions/checker.test.ts:337"}, "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-d25780cf3f3976af", "name": "Commented-code block (6 lines) in assistant/src/permissions/question-prompter.test.ts:69", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/permissions/question-prompter.test.ts:69"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-91be80b8413982f7", "name": "Commented-code block (8 lines) in assistant/src/permissions/question-prompter.ts:204", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/permissions/question-prompter.ts:204"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7911dbf903710f3e", "name": "Commented-code block (6 lines) in assistant/src/permissions/approval-policy.ts:151", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/permissions/approval-policy.ts:151"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f218c79a5761506e", "name": "Commented-code block (5 lines) in assistant/src/permissions/gateway-threshold-reader.ts:47", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/permissions/gateway-threshold-reader.ts:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b87f04f4cbbe163d", "name": "Commented-code block (7 lines) in assistant/src/permissions/checker.ts:45", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/permissions/checker.ts:45"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ac212990fb285f3c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/services/vercel-deploy.ts:31", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/services/vercel-deploy.ts:31"}, "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-87f51ef8bd87d7b8", "name": "Commented-code block (7 lines) in assistant/src/workflows/sandbox.ts:164", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/workflows/sandbox.ts:164"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b233b2354f1f70e7", "name": "Commented-code block (7 lines) in assistant/src/workflows/capabilities.ts:305", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/workflows/capabilities.ts:305"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cc3c8ebe4b8023e7", "name": "Commented-code block (7 lines) in assistant/src/workflows/leaf-runner.ts:265", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/workflows/leaf-runner.ts:265"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ededa1db699e5482", "name": "Commented-code block (9 lines) in assistant/src/workflows/run-manager.ts:213", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/workflows/run-manager.ts:213"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2ff00584beff5281", "name": "Commented-code block (6 lines) in assistant/src/workflows/engine.test.ts:857", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/workflows/engine.test.ts:857"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bca0b6b710a64763", "name": "Commented-code block (5 lines) in assistant/src/workflows/sandbox-escape.test.ts:195", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workflows/sandbox-escape.test.ts:195"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f108e5c1174a4d2a", "name": "Commented-code block (5 lines) in assistant/src/workflows/capabilities.test.ts:181", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workflows/capabilities.test.ts:181"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c85b1aef50b6813c", "name": "Commented-code block (5 lines) in assistant/src/workflows/leaf-runner.test.ts:661", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/workflows/leaf-runner.test.ts:661"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-559f4a18bd23ace3", "name": "Commented-code block (6 lines) in assistant/src/workflows/engine-integration.test.ts:525", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/workflows/engine-integration.test.ts:525"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3d30d24355ff0a40", "name": "Commented-code block (6 lines) in assistant/src/workflows/sandbox.test.ts:223", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/workflows/sandbox.test.ts:223"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-be4144fe2ceab6f0", "name": "Commented-code block (9 lines) in assistant/src/workflows/engine.ts:568", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/workflows/engine.ts:568"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-02921d7d8cb13713", "name": "Commented-code block (11 lines) in assistant/src/tools/executor.ts:146", "shortDescription": {"text": "Commented-code block (11 lines) in assistant/src/tools/executor.ts:146"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8023428b5c28e11c", "name": "Commented-code block (7 lines) in assistant/src/tools/registry.ts:20", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/tools/registry.ts:20"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0ec3766144e27146", "name": "Commented-code block (5 lines) in assistant/src/tools/side-effects.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/side-effects.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-0bb3b5c54bc1c732", "name": "Commented-code block (6 lines) in assistant/src/tools/tool-approval-handler.ts:248", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/tools/tool-approval-handler.ts:248"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-238c67d4b2f335b5", "name": "Commented-code block (6 lines) in assistant/src/tools/tool-manifest.ts:36", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/tools/tool-manifest.ts:36"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6cf1355afd5027ce", "name": "Commented-code block (5 lines) in assistant/src/tools/permission-checker.ts:167", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/permission-checker.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-e8270a2e60bc4447", "name": "Commented-code block (17 lines) in assistant/src/tools/types.ts:44", "shortDescription": {"text": "Commented-code block (17 lines) in assistant/src/tools/types.ts:44"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-86359a492e3adbc0", "name": "Legacy-named symbol `actualOld` in assistant/src/tools/filesystem/edit.ts:132", "shortDescription": {"text": "Legacy-named symbol `actualOld` in assistant/src/tools/filesystem/edit.ts:132"}, "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-79f71ddba1975575", "name": "Commented-code block (6 lines) in assistant/src/tools/schedule/update.ts:208", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/tools/schedule/update.ts:208"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-42ada893cbfca8fc", "name": "Commented-code block (5 lines) in assistant/src/tools/network/web-search.ts:874", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/network/web-search.ts:874"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-32cc19b8da754d6c", "name": "Commented-code block (6 lines) in assistant/src/tools/network/web-search-error.ts:4", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/tools/network/web-search-error.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-bb7e3facbf451f2a", "name": "Commented-code block (6 lines) in assistant/src/tools/network/web-fetch.ts:155", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/tools/network/web-fetch.ts:155"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9f43540240b6100b", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/network/web-fetch.ts:252", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/network/web-fetch.ts:252"}, "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-5f311344d2c35c9a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/network/managed-search-proxy.ts:88", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/network/managed-search-proxy.ts:88"}, "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-04d60b5219176441", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/network/__tests__/web-fetch-metadata.test.ts:27", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/network/__tests__/web-fetch-metadata.test.ts:27"}, "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-c9899405cdcdcb37", "name": "Commented-code block (6 lines) in assistant/src/tools/network/script-proxy/__tests__/policy.test.ts:308", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/tools/network/script-proxy/__tests__/policy.test.ts:308"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9196fc46247aa0e1", "name": "Legacy-named symbol `actualOld` in assistant/src/tools/shared/filesystem/edit-engine.ts:18", "shortDescription": {"text": "Legacy-named symbol `actualOld` in assistant/src/tools/shared/filesystem/edit-engine.ts:18"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-08c4b5094d1ccc0a", "name": "Legacy-named symbol `actualOld` in assistant/src/tools/shared/filesystem/file-ops-service.ts:247", "shortDescription": {"text": "Legacy-named symbol `actualOld` in assistant/src/tools/shared/filesystem/file-ops-service.ts:247"}, "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-8c35d38f8c77d134", "name": "Legacy-named symbol `actualOld` in assistant/src/tools/shared/filesystem/types.ts:73", "shortDescription": {"text": "Legacy-named symbol `actualOld` in assistant/src/tools/shared/filesystem/types.ts:73"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-157de1f3e2dbcfed", "name": "Commented-code block (6 lines) in assistant/src/tools/host-terminal/host-shell.ts:197", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/tools/host-terminal/host-shell.ts:197"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8cdbbcc2a0132e65", "name": "Commented-code block (11 lines) in assistant/src/tools/acp/spawn.test.ts:443", "shortDescription": {"text": "Commented-code block (11 lines) in assistant/src/tools/acp/spawn.test.ts:443"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d32fe9350fdbd0ba", "name": "Commented-code block (5 lines) in assistant/src/tools/acp/steer.ts:30", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/acp/steer.ts:30"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1992053861ad8dd2", "name": "Commented-code block (5 lines) in assistant/src/tools/ask-question/ask-question-tool.ts:11", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/ask-question/ask-question-tool.ts:11"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c71dfd69fedaa216", "name": "Commented-code block (5 lines) in assistant/src/tools/tasks/work-item-enqueue.ts:125", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/tasks/work-item-enqueue.ts:125"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d0c45c0219edb67a", "name": "Commented-code block (5 lines) in assistant/src/tools/workspace-tools/loader.ts:389", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/workspace-tools/loader.ts:389"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bd4489488b4ea6e5", "name": "Commented-code block (5 lines) in assistant/src/tools/terminal/shell.ts:279", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/terminal/shell.ts:279"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-669e2630af56f755", "name": "Commented-code block (9 lines) in assistant/src/tools/subagent/spawn.ts:78", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/tools/subagent/spawn.ts:78"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-effd3dba0b20456d", "name": "Commented-code block (5 lines) in assistant/src/tools/ui-surface/definitions.ts:86", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/ui-surface/definitions.ts:86"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a7f5b949c0f8affa", "name": "Commented-code block (9 lines) in assistant/src/tools/workflows/run-workflow.ts:150", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/tools/workflows/run-workflow.ts:150"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-091e6e50975df503", "name": "Commented-code block (7 lines) in assistant/src/tools/workflows/manage-workflows.ts:34", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/tools/workflows/manage-workflows.ts:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2d28ea2ad314ff45", "name": "Legacy-named symbol `actualOld` in assistant/src/tools/host-filesystem/edit.ts:208", "shortDescription": {"text": "Legacy-named symbol `actualOld` in assistant/src/tools/host-filesystem/edit.ts:208"}, "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-38348eb61e4e98d2", "name": "Commented-code block (11 lines) in assistant/src/tools/host-filesystem/edit.ts:128", "shortDescription": {"text": "Commented-code block (11 lines) in assistant/src/tools/host-filesystem/edit.ts:128"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-45c5586ef739cad1", "name": "Commented-code block (11 lines) in assistant/src/tools/host-filesystem/transfer.ts:133", "shortDescription": {"text": "Commented-code block (11 lines) in assistant/src/tools/host-filesystem/transfer.ts:133"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0ac43109dfb20d1f", "name": "Commented-code block (11 lines) in assistant/src/tools/host-filesystem/write.ts:98", "shortDescription": {"text": "Commented-code block (11 lines) in assistant/src/tools/host-filesystem/write.ts:98"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c96d1d68e319e63d", "name": "Commented-code block (11 lines) in assistant/src/tools/host-filesystem/read.ts:103", "shortDescription": {"text": "Commented-code block (11 lines) in assistant/src/tools/host-filesystem/read.ts:103"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f96e54c543cbab1d", "name": "Commented-code block (6 lines) in assistant/src/tools/host-filesystem/transfer.test.ts:412", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/tools/host-filesystem/transfer.test.ts:412"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-402b1c6fcb212fc1", "name": "Commented-code block (5 lines) in assistant/src/tools/host-filesystem/write.test.ts:109", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/host-filesystem/write.test.ts:109"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-64849a6956a7bbdb", "name": "Commented-code block (5 lines) in assistant/src/tools/host-filesystem/read.test.ts:104", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/host-filesystem/read.test.ts:104"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fa0c3bcaa473e1b5", "name": "Commented-code block (5 lines) in assistant/src/tools/host-filesystem/edit.test.ts:122", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/host-filesystem/edit.test.ts:122"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6a7ad575b4d45f06", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/browser/network-recorder.ts:147", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/browser/network-recorder.ts:147"}, "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-f8344ff1b431977e", "name": "Commented-code block (5 lines) in assistant/src/tools/browser/runtime-check.ts:77", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/runtime-check.ts:77"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4b9013ce5d8b91bf", "name": "Commented-code block (6 lines) in assistant/src/tools/browser/browser-execution.ts:491", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/tools/browser/browser-execution.ts:491"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fac7ccd585855c7d", "name": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/extension-cdp-client.ts:117", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/extension-cdp-client.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-aa034bb49ab6e271", "name": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/cdp-dom-helpers.ts:498", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/cdp-dom-helpers.ts:498"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-237693384bbea20e", "name": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect-client.ts:172", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect-client.ts:172"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-edc4ecfea3a7cd6d", "name": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/factory.ts:309", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/factory.ts:309"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-82a260f44489b545", "name": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/__tests__/cdp-inspect-client.test.ts:123", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/__tests__/cdp-inspect-client.test.ts:123"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c983856c48fa4ee2", "name": "Commented-code block (6 lines) in assistant/src/tools/browser/cdp-client/__tests__/factory.test.ts:101", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/tools/browser/cdp-client/__tests__/factory.test.ts:101"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3c7688549b29f6ea", "name": "Commented-code block (6 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect/ws-transport.ts:486", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect/ws-transport.ts:486"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0bfd44a444077b0c", "name": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect/discovery.ts:384", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect/discovery.ts:384"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d37dfadd36aea04c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/browser/cdp-client/cdp-inspect/discovery.ts:230", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/browser/cdp-client/cdp-inspect/discovery.ts:230"}, "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-062ab316a7bad0d0", "name": "Commented-code block (7 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect/__tests__/ws-transport.test.ts:81", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect/__tests__/ws-transport.test.ts:81"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d619402c7823cdfa", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/browser/cdp-client/cdp-inspect/__tests__/ws-transport.", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/browser/cdp-client/cdp-inspect/__tests__/ws-transport.test.ts:103"}, "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-0b13842d06edc4ea", "name": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect/__tests__/discovery.test.ts:400", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect/__tests__/discovery.test.ts:400"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5a9ffb5936cc3b78", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/browser/cdp-client/cdp-inspect/__tests__/discovery.tes", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/browser/cdp-client/cdp-inspect/__tests__/discovery.test.ts:40"}, "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-da2f3d433670ab4e", "name": "Commented-code block (5 lines) in assistant/src/contacts/contacts-write.ts:128", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/contacts/contacts-write.ts:128"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1e5c067ccc90b67c", "name": "Commented-code block (9 lines) in assistant/src/watcher/engine.ts:222", "shortDescription": {"text": "Commented-code block (9 lines) in assistant/src/watcher/engine.ts:222"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5c520ecf92a2dce5", "name": "Commented-code block (5 lines) in assistant/src/watcher/__tests__/engine.test.ts:203", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/watcher/__tests__/engine.test.ts:203"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-948c34af565c950d", "name": "Commented-code block (6 lines) in assistant/src/watcher/providers/linear.ts:548", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/watcher/providers/linear.ts:548"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-be2d7fcb1ac5f5a5", "name": "Commented-code block (8 lines) in assistant/src/context/compactor.ts:835", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/context/compactor.ts:835"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-892000dc564292fe", "name": "Commented-code block (8 lines) in assistant/src/context/strip-injections.ts:105", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/context/strip-injections.ts:105"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4f53975572085980", "name": "Commented-code block (7 lines) in assistant/src/context/token-estimator.ts:40", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/context/token-estimator.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-a04a4faf946cbf91", "name": "Commented-code block (8 lines) in assistant/src/prompts/sections.ts:168", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/prompts/sections.ts:168"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c21512276275059d", "name": "Commented-code block (5 lines) in assistant/src/prompts/system-prompt.ts:231", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/prompts/system-prompt.ts:231"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4d23cc23d5a7d39d", "name": "Commented-code block (5 lines) in assistant/src/prompts/persona-resolver.ts:20", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/prompts/persona-resolver.ts:20"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1ff270ae20cec466", "name": "Commented-code block (5 lines) in assistant/src/prompts/templates/system-sections.ts:346", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/prompts/templates/system-sections.ts:346"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-377b7bbaaf0dc76b", "name": "Commented-code block (6 lines) in assistant/src/skills/inline-command-runner.ts:174", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/skills/inline-command-runner.ts:174"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-72ce030ccfdf9218", "name": "Commented-code block (5 lines) in assistant/src/skills/validate-input.ts:145", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/skills/validate-input.ts:145"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c1d8febdb10d6c74", "name": "Commented-code block (5 lines) in assistant/src/credential-health/credential-health-service.ts:241", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/credential-health/credential-health-service.ts:241"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4ed0e4e052005f39", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/credential-health/credential-health-service.ts:389", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/credential-health/credential-health-service.ts:389"}, "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-06e96c6789b1e2df", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/background-wake/platform-client.ts:30", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/background-wake/platform-client.ts:30"}, "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-33e267483118763e", "name": "Commented-code block (7 lines) in assistant/src/telemetry/usage-telemetry-reporter.test.ts:558", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/telemetry/usage-telemetry-reporter.test.ts:558"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-018b75efbd3dff88", "name": "Commented-code block (15 lines) in assistant/src/telemetry/usage-telemetry-reporter.ts:127", "shortDescription": {"text": "Commented-code block (15 lines) in assistant/src/telemetry/usage-telemetry-reporter.ts:127"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-342e40d7896771da", "name": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/telemetry/usage-telemetry-reporter.ts:593", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/telemetry/usage-telemetry-reporter.ts:593"}, "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-154148c8f9465298", "name": "Commented-code block (5 lines) in assistant/src/plugins/registry.ts:87", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/plugins/registry.ts:87"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ff761382143a3070", "name": "Commented-code block (5 lines) in assistant/src/plugins/user-loader.ts:82", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/plugins/user-loader.ts:82"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-492567b8d6dae00e", "name": "Commented-code block (5 lines) in assistant/src/plugins/external-plugin-loader.ts:320", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/plugins/external-plugin-loader.ts:320"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-61d575ce4eea4843", "name": "Commented-code block (6 lines) in assistant/src/plugins/types.ts:319", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/plugins/types.ts:319"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fb3377f2145c044f", "name": "Commented-code block (8 lines) in assistant/src/plugins/defaults/history-repair/terminal.ts:85", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/plugins/defaults/history-repair/terminal.ts:85"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5601d3fa4d766a79", "name": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/orchestrate.ts:184", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/orchestrate.ts:184"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7f28dc4cac98ebf2", "name": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/section-dense-store.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/section-dense-store.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-bfdd07bd49aef959", "name": "Commented-code block (7 lines) in assistant/src/plugins/defaults/memory-v3-shadow/maintain-job.ts:502", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/plugins/defaults/memory-v3-shadow/maintain-job.ts:502"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-27c0adc1fd92f441", "name": "Commented-code block (8 lines) in assistant/src/plugins/defaults/memory-v3-shadow/dense.ts:5", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/plugins/defaults/memory-v3-shadow/dense.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-ccd28f5a5af8acd6", "name": "Commented-code block (8 lines) in assistant/src/plugins/defaults/memory-v3-shadow/injector.ts:251", "shortDescription": {"text": "Commented-code block (8 lines) in assistant/src/plugins/defaults/memory-v3-shadow/injector.ts:251"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8e2b88c8c132122c", "name": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/prune.test.ts:555", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/prune.test.ts:555"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cdc279cbd2b9387b", "name": "Commented-code block (5 lines) in assistant/src/plugins/defaults/memory-v3-shadow/shadow-plugin.ts:150", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/plugins/defaults/memory-v3-shadow/shadow-plugin.ts:150"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-39314bee3ab277ec", "name": "Commented-code block (5 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/shadow-integration.test.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/shadow-integration.test.ts:130"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4558f5c15aed1337", "name": "Commented-code block (5 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/live-integration.test.ts:312", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/live-integration.test.ts:312"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3c0265830452d501", "name": "Commented-code block (7 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/shadow-plugin.test.ts:43", "shortDescription": {"text": "Commented-code block (7 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/shadow-plugin.test.ts:43"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-97c7cce88ef4c6c3", "name": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/orchestrate.test.ts:54", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/orchestrate.test.ts:54"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6c88f3a4b82f4546", "name": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/pool-select.test.ts:231", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/pool-select.test.ts:231"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f778ff92a6f3e90c", "name": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/carry-integration.test.ts:22", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/carry-integration.test.ts:225"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9ce3da560f2d6374", "name": "Commented-code block (5 lines) in assistant/src/plugins/defaults/compaction/window-manager.ts:56", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/plugins/defaults/compaction/window-manager.ts:56"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9c8997a7f14f0244", "name": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-retrieval/injectors.ts:677", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-retrieval/injectors.ts:677"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-300e1612fda8b7e9", "name": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-retrieval/hooks/user-prompt-submit.ts:270", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-retrieval/hooks/user-prompt-submit.ts:270"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-867dd75aa675efe1", "name": "Commented-code block (5 lines) in assistant/src/plugins/defaults/title-generate/hooks/stop.ts:63", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/plugins/defaults/title-generate/hooks/stop.ts:63"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a3d984f05415b21a", "name": "Commented-code block (6 lines) in assistant/src/plugins/defaults/title-generate/hooks/user-prompt-submit.ts:22", "shortDescription": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/title-generate/hooks/user-prompt-submit.ts:22"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5f4ea967a4f6c533", "name": "Commented-code block (5 lines) in assistant/src/export/transcript-formatter.ts:172", "shortDescription": {"text": "Commented-code block (5 lines) in assistant/src/export/transcript-formatter.ts:172"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6599b8a5ce326ab8", "name": "Commented-code block (12 lines) in gateway/src/config.ts:137", "shortDescription": {"text": "Commented-code block (12 lines) in gateway/src/config.ts:137"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3d491498474f4979", "name": "Commented-code block (6 lines) in gateway/src/auth-fallback-count-tracker.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/auth-fallback-count-tracker.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-40d6227efd8337ff", "name": "Commented-code block (5 lines) in gateway/src/credential-watcher.ts:81", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/credential-watcher.ts:81"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d753635e4a4ed694", "name": "Commented-code block (6 lines) in gateway/src/dedup-cache.ts:67", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/dedup-cache.ts:67"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-20f3002b7def144a", "name": "Legacy-named symbol `ui_page_v1` in gateway/src/index.ts:1102", "shortDescription": {"text": "Legacy-named symbol `ui_page_v1` in gateway/src/index.ts:1102"}, "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-f3c42cba0a38f89e", "name": "Commented-code block (5 lines) in gateway/src/index.ts:300", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/index.ts:300"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a817685d287c565a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/index.ts:1617", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/index.ts:1617"}, "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-f97361e378f03c8d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/fetch.ts:12", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/fetch.ts:12"}, "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-7af90c5484ee76f5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/credential-cache.ts:49", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/credential-cache.ts:49"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6d62140e51fc432f", "name": "Commented-code block (6 lines) in gateway/src/auth-fallback-log-throttle.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/auth-fallback-log-throttle.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-8513aa75009dbe18", "name": "Commented-code block (8 lines) in gateway/src/remote-feature-flag-sync.ts:135", "shortDescription": {"text": "Commented-code block (8 lines) in gateway/src/remote-feature-flag-sync.ts:135"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a0a6f9db8a1fbe4d", "name": "Commented-code block (6 lines) in gateway/src/__tests__/auto-approve-conversation-thresholds.test.ts:64", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/__tests__/auto-approve-conversation-thresholds.test.ts:64"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-566f630b208e39a7", "name": "Commented-code block (6 lines) in gateway/src/__tests__/slack-socket-mode-catchup.test.ts:371", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/__tests__/slack-socket-mode-catchup.test.ts:371"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-61fce3e2a4e56973", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/edge-auth.test.ts:214", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/edge-auth.test.ts:214"}, "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-16c8d4c853c1c908", "name": "Commented-code block (7 lines) in gateway/src/__tests__/edge-auth.test.ts:418", "shortDescription": {"text": "Commented-code block (7 lines) in gateway/src/__tests__/edge-auth.test.ts:418"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6e658fb7a1f99d27", "name": "Commented-code block (5 lines) in gateway/src/__tests__/push-schema-no-prompt.test.ts:13", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/push-schema-no-prompt.test.ts:13"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b4f649d3e1006856", "name": "Commented-code block (5 lines) in gateway/src/__tests__/bash-risk-classifier.test.ts:35", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/bash-risk-classifier.test.ts:35"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9ae396131ed542b1", "name": "Commented-code block (5 lines) in gateway/src/__tests__/contacts-control-plane-proxy.test.ts:397", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/contacts-control-plane-proxy.test.ts:397"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0ddc183fce9865ba", "name": "Commented-code block (5 lines) in gateway/src/__tests__/auth-token-trust-proxy.test.ts:22", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/auth-token-trust-proxy.test.ts:22"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4de278819559ffb1", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/stt-stream-websocket.test.ts:19", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/stt-stream-websocket.test.ts:19"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-76d8df612ad5a98b", "name": "Commented-code block (8 lines) in gateway/src/__tests__/logger-retention.test.ts:18", "shortDescription": {"text": "Commented-code block (8 lines) in gateway/src/__tests__/logger-retention.test.ts:18"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c2d34a688e9995ba", "name": "Legacy-named symbol `seedLegacy` in gateway/src/__tests__/data-migration-m0001-guardian-init-lock.test.ts:23", "shortDescription": {"text": "Legacy-named symbol `seedLegacy` in gateway/src/__tests__/data-migration-m0001-guardian-init-lock.test.ts:23"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-919eea82b509a0d9", "name": "Commented-code block (5 lines) in gateway/src/__tests__/guardian-init-lockfile.test.ts:338", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/guardian-init-lockfile.test.ts:338"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a68d818c16de896a", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/actor-token-revocation.test.ts:112", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/actor-token-revocation.test.ts:112"}, "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-1810a7b6fbdafdc3", "name": "Commented-code block (5 lines) in gateway/src/__tests__/trust-rule-store.test.ts:9", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/trust-rule-store.test.ts:9"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8bfaea5c8f16ccfc", "name": "Commented-code block (5 lines) in gateway/src/__tests__/remote-feature-flag-sync.test.ts:42", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/remote-feature-flag-sync.test.ts:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6d927b967a6f98dc", "name": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/remote-feature-flag-sync.test.ts:837", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/remote-feature-flag-sync.test.ts:837"}, "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-ff85812cca0b65e6", "name": "Commented-code block (5 lines) in gateway/src/__tests__/ipc-server-watchdog.test.ts:12", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/ipc-server-watchdog.test.ts:12"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-291333816aae96d4", "name": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/route-schema-guard.test.ts:34", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/route-schema-guard.test.ts:34"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d36d11854518c895", "name": "Commented-code block (5 lines) in gateway/src/__tests__/feature-flags-route.test.ts:363", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/feature-flags-route.test.ts:363"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1f2a915e50d245b2", "name": "Legacy-named symbol `gateway_service_v1` in gateway/src/__tests__/twilio-relay-websocket.test.ts:22", "shortDescription": {"text": "Legacy-named symbol `gateway_service_v1` in gateway/src/__tests__/twilio-relay-websocket.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-10542358d5311ad4", "name": "Commented-code block (6 lines) in gateway/src/__tests__/nonbash-trust-rule-overrides.test.ts:449", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/__tests__/nonbash-trust-rule-overrides.test.ts:449"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d1357a46c5b0a807", "name": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/credential-watcher-managed-bootstrap.test.ts:164", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/credential-watcher-managed-bootstrap.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-d8a05b15f4ac9d4a", "name": "Commented-code block (5 lines) in gateway/src/__tests__/privacy-config-route.test.ts:562", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/privacy-config-route.test.ts:562"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7d09d0876e8bacdd", "name": "Commented-code block (5 lines) in gateway/src/__tests__/pair-device-bound.test.ts:145", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/pair-device-bound.test.ts:145"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9e8db3133e2b2720", "name": "Commented-code block (5 lines) in gateway/src/__tests__/slack-socket-mode-thread-tracking.test.ts:715", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/slack-socket-mode-thread-tracking.test.ts:715"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-273591437197a18a", "name": "Legacy-named symbol `resolveOld` in gateway/src/__tests__/credential-cache.test.ts:277", "shortDescription": {"text": "Legacy-named symbol `resolveOld` in gateway/src/__tests__/credential-cache.test.ts:277"}, "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-26fdda677757846d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/credential-cache.test.ts:332", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/credential-cache.test.ts:332"}, "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-11f3306c2e9d03af", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/live-voice-websocket.test.ts:34", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/live-voice-websocket.test.ts:34"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2234baf05cc51a75", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/edge-guardian-auth.test.ts:213", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/edge-guardian-auth.test.ts:213"}, "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-f909fe8a7d7ec420", "name": "Legacy-named symbol `gateway_service_v1` in gateway/src/__tests__/twilio-media-websocket.test.ts:23", "shortDescription": {"text": "Legacy-named symbol `gateway_service_v1` in gateway/src/__tests__/twilio-media-websocket.test.ts:23"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b9e70e6530d32ee1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/credential-watcher.test.ts:298", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/credential-watcher.test.ts:298"}, "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-8cc058d2e2db82fb", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/runtime-proxy-auth.test.ts:29", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/runtime-proxy-auth.test.ts:29"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e3dfec6606ba4a7a", "name": "Commented-code block (5 lines) in gateway/src/ipc/risk-classification-handlers.test.ts:602", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/ipc/risk-classification-handlers.test.ts:602"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d6ca1d1080666f8a", "name": "Commented-code block (6 lines) in gateway/src/ipc/risk-classification-handlers.ts:235", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/ipc/risk-classification-handlers.ts:235"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-01e2d0562d2489b6", "name": "Commented-code block (5 lines) in gateway/src/ipc/server.ts:117", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/ipc/server.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-d0675c33be6451d0", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/auth/scopes.ts:16", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/auth/scopes.ts:16"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bd982812f0666cef", "name": "Legacy-named symbol `gateway_ingress_v1` in gateway/src/auth/token-exchange.ts:103", "shortDescription": {"text": "Legacy-named symbol `gateway_ingress_v1` in gateway/src/auth/token-exchange.ts:103"}, "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-b585e100cdc48ffa", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/auth/guardian-refresh.ts:135", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/auth/guardian-refresh.ts:135"}, "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-f8b50cc0add8f0df", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/auth/guardian-bootstrap.ts:472", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/auth/guardian-bootstrap.ts:472"}, "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-6b58fb79a48b9de2", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/auth/types.ts:13", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/auth/types.ts:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ee260d026efac641", "name": "Commented-code block (6 lines) in gateway/src/verification/outbound-voice-verification-sync.ts:87", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/verification/outbound-voice-verification-sync.ts:87"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d43ec41e3b63ab0a", "name": "Commented-code block (9 lines) in gateway/src/http/middleware/auth.ts:37", "shortDescription": {"text": "Commented-code block (9 lines) in gateway/src/http/middleware/auth.ts:37"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ccc8336b6db81110", "name": "Commented-code block (6 lines) in gateway/src/http/routes/channel-verification-session-proxy.ts:169", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/http/routes/channel-verification-session-proxy.ts:169"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6c7e6fad7aebdd07", "name": "Commented-code block (7 lines) in gateway/src/http/routes/ipc-runtime-proxy.ts:108", "shortDescription": {"text": "Commented-code block (7 lines) in gateway/src/http/routes/ipc-runtime-proxy.ts:108"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6ca77ee5bc23ba3d", "name": "Commented-code block (5 lines) in gateway/src/http/routes/telegram-webhook.ts:261", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/telegram-webhook.ts:261"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-74c5f504c2e44d6f", "name": "Commented-code block (5 lines) in gateway/src/http/routes/contact-prompt.ts:180", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/contact-prompt.ts:180"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ef4ffc8b973d45ed", "name": "Commented-code block (8 lines) in gateway/src/http/routes/auto-approve-thresholds.ts:158", "shortDescription": {"text": "Commented-code block (8 lines) in gateway/src/http/routes/auto-approve-thresholds.ts:158"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7a4f6b65337f5b57", "name": "Commented-code block (7 lines) in gateway/src/http/routes/contacts-control-plane-proxy.ts:329", "shortDescription": {"text": "Commented-code block (7 lines) in gateway/src/http/routes/contacts-control-plane-proxy.ts:329"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5182268b79ce89b9", "name": "Commented-code block (5 lines) in gateway/src/http/routes/runtime-proxy.ts:55", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/runtime-proxy.ts:55"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6f03111a554f4cf5", "name": "Commented-code block (7 lines) in gateway/src/http/routes/migration-proxy.ts:270", "shortDescription": {"text": "Commented-code block (7 lines) in gateway/src/http/routes/migration-proxy.ts:270"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-120c17bbf4a56eb4", "name": "Commented-code block (5 lines) in gateway/src/http/routes/mailgun-webhook.ts:448", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/mailgun-webhook.ts:448"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-879f0336a7b95676", "name": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/http/routes/mailgun-webhook.ts:402", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/http/routes/mailgun-webhook.ts:402"}, "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-3452f62951f23f98", "name": "Commented-code block (6 lines) in gateway/src/http/routes/oauth-callback.ts:109", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/http/routes/oauth-callback.ts:109"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fa834c1018cae6e6", "name": "Commented-code block (7 lines) in gateway/src/http/routes/guardian-channel-create.ts:99", "shortDescription": {"text": "Commented-code block (7 lines) in gateway/src/http/routes/guardian-channel-create.ts:99"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-536dc1e57ba8f2f3", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/http/routes/pair.ts:20", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/http/routes/pair.ts:20"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f65afe27a97d7a0b", "name": "Commented-code block (6 lines) in gateway/src/http/routes/pair.ts:246", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/http/routes/pair.ts:246"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d22ac400ceaa7ea2", "name": "Commented-code block (5 lines) in gateway/src/http/routes/resend-webhook.ts:531", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/resend-webhook.ts:531"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b89447dbbdc522f5", "name": "Commented-code block (5 lines) in gateway/src/http/routes/whatsapp-webhook.ts:320", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/whatsapp-webhook.ts:320"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ef59d10d5056f962", "name": "Commented-code block (12 lines) in gateway/src/http/routes/log-tail.test.ts:280", "shortDescription": {"text": "Commented-code block (12 lines) in gateway/src/http/routes/log-tail.test.ts:280"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-027122421f1d7735", "name": "Commented-code block (5 lines) in gateway/src/http/routes/log-tail.ts:27", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/log-tail.ts:27"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2e2db98c48b8f02a", "name": "Commented-code block (6 lines) in gateway/src/http/routes/twilio-voice-webhook.ts:147", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/http/routes/twilio-voice-webhook.ts:147"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d54abd99756908cf", "name": "Commented-code block (7 lines) in gateway/src/http/routes/privacy-config.ts:206", "shortDescription": {"text": "Commented-code block (7 lines) in gateway/src/http/routes/privacy-config.ts:206"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-066ef5f1135aa99e", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/http/routes/ipc-runtime-proxy.test.ts:371", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/http/routes/ipc-runtime-proxy.test.ts:371"}, "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-84c15d6a1f8625b3", "name": "Legacy-named symbol `actor_client_v1` in gateway/src/http/routes/auth-token.ts:122", "shortDescription": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/http/routes/auth-token.ts:122"}, "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-5a05a31f2fa2ad6e", "name": "Commented-code block (6 lines) in gateway/src/http/routes/live-voice-websocket.ts:22", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/http/routes/live-voice-websocket.ts:22"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b40e804f26ee75c3", "name": "Commented-code block (6 lines) in gateway/src/backup/paths.ts:86", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/backup/paths.ts:86"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-273b34a0a3783abc", "name": "Commented-code block (5 lines) in gateway/src/risk/web-risk-classifier.test.ts:126", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/risk/web-risk-classifier.test.ts:126"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-43f5806217259bdd", "name": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/risk/web-risk-classifier.test.ts:44", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/risk/web-risk-classifier.test.ts:44"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9ce1fd641a28c5f8", "name": "Commented-code block (7 lines) in gateway/src/risk/directory-scope.test.ts:144", "shortDescription": {"text": "Commented-code block (7 lines) in gateway/src/risk/directory-scope.test.ts:144"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9cec95f533713f3d", "name": "Commented-code block (17 lines) in gateway/src/risk/directory-scope.ts:39", "shortDescription": {"text": "Commented-code block (17 lines) in gateway/src/risk/directory-scope.ts:39"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0e1f8bab7bd0ea45", "name": "Commented-code block (5 lines) in gateway/src/risk/skill-risk-classifier.ts:180", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/risk/skill-risk-classifier.ts:180"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f4f274a99117f9cb", "name": "Commented-code block (6 lines) in gateway/src/risk/risk-classifier-parity.test.ts:100", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/risk/risk-classifier-parity.test.ts:100"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1d85e94a6043eeef", "name": "Commented-code block (5 lines) in gateway/src/risk/shell-parser.test.ts:716", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/risk/shell-parser.test.ts:716"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b4ef67d4247bc9da", "name": "Commented-code block (5 lines) in gateway/src/risk/schedule-risk-classifier.ts:52", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/risk/schedule-risk-classifier.ts:52"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2c9c6a82e1975a7d", "name": "Commented-code block (6 lines) in gateway/src/risk/file-risk-classifier.ts:26", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/risk/file-risk-classifier.ts:26"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0ee31d540b87058c", "name": "Commented-code block (5 lines) in gateway/src/risk/shell-parser.ts:126", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/risk/shell-parser.ts:126"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e3dab00e0eb48dcc", "name": "Commented-code block (5 lines) in gateway/src/risk/shell-identity.ts:139", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/risk/shell-identity.ts:139"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b61f03aa0ed31a9b", "name": "Commented-code block (9 lines) in gateway/src/risk/bash-risk-classifier.ts:420", "shortDescription": {"text": "Commented-code block (9 lines) in gateway/src/risk/bash-risk-classifier.ts:420"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b6eec04bf79736ea", "name": "Commented-code block (8 lines) in gateway/src/risk/web-risk-classifier.ts:40", "shortDescription": {"text": "Commented-code block (8 lines) in gateway/src/risk/web-risk-classifier.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-00ab809cfe2e9032", "name": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/risk/web-risk-classifier.ts:78", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/risk/web-risk-classifier.ts:78"}, "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-e427c791d4f62c88", "name": "Commented-code block (5 lines) in gateway/src/runtime/client.ts:467", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/runtime/client.ts:467"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c0310690fe16135a", "name": "Commented-code block (5 lines) in gateway/src/db/schema.ts:24", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/db/schema.ts:24"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2d33aace11694887", "name": "Commented-code block (5 lines) in gateway/src/db/data-migrations/m0001-guardian-init-lock.ts:29", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/db/data-migrations/m0001-guardian-init-lock.ts:29"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-15c8c205cb523ae3", "name": "Commented-code block (5 lines) in gateway/src/slack/normalize.ts:810", "shortDescription": {"text": "Commented-code block (5 lines) in gateway/src/slack/normalize.ts:810"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-36c5b29029ff0ea7", "name": "Commented-code block (6 lines) in gateway/src/slack/socket-mode.ts:631", "shortDescription": {"text": "Commented-code block (6 lines) in gateway/src/slack/socket-mode.ts:631"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-53a9784c91584e4b", "name": "Commented-code block (6 lines) in evals/benchmarks/longmemeval-v2/src/run.ts:117", "shortDescription": {"text": "Commented-code block (6 lines) in evals/benchmarks/longmemeval-v2/src/run.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-46c37192e6ad2424", "name": "Commented-code block (5 lines) in evals/benchmarks/longmemeval-v2/src/trajectory-reader.ts:226", "shortDescription": {"text": "Commented-code block (5 lines) in evals/benchmarks/longmemeval-v2/src/trajectory-reader.ts:226"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6e5cee71e6f4a8ec", "name": "Commented-code block (5 lines) in evals/benchmarks/longmemeval-v2/src/runner.ts:345", "shortDescription": {"text": "Commented-code block (5 lines) in evals/benchmarks/longmemeval-v2/src/runner.ts:345"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d27a119060bc3797", "name": "Commented-code block (5 lines) in evals/benchmarks/longmemeval-v2/src/__tests__/loader.test.ts:159", "shortDescription": {"text": "Commented-code block (5 lines) in evals/benchmarks/longmemeval-v2/src/__tests__/loader.test.ts:159"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7bd5f8bd3f192aee", "name": "Commented-code block (7 lines) in evals/benchmarks/longmemeval-v2/src/__tests__/trajectory-reader.test.ts:145", "shortDescription": {"text": "Commented-code block (7 lines) in evals/benchmarks/longmemeval-v2/src/__tests__/trajectory-reader.test.ts:145"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-93d3b2b5d04c83d6", "name": "Commented-code block (5 lines) in evals/benchmarks/longmemeval-v2/src/__tests__/runner.test.ts:31", "shortDescription": {"text": "Commented-code block (5 lines) in evals/benchmarks/longmemeval-v2/src/__tests__/runner.test.ts:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-45dc7917ea1d66b9", "name": "Commented-code block (5 lines) in evals/benchmarks/personal-intelligence/tests/timeline-recall/metrics/assistant-cost.ts", "shortDescription": {"text": "Commented-code block (5 lines) in evals/benchmarks/personal-intelligence/tests/timeline-recall/metrics/assistant-cost.ts:29"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c06877e909729b51", "name": "Commented-code block (12 lines) in evals/benchmarks/personal-intelligence/src/run.ts:125", "shortDescription": {"text": "Commented-code block (12 lines) in evals/benchmarks/personal-intelligence/src/run.ts:125"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-70349a5c5bd33bcb", "name": "Commented-code block (6 lines) in evals/src/commands/run.ts:116", "shortDescription": {"text": "Commented-code block (6 lines) in evals/src/commands/run.ts:116"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ec70124721587754", "name": "Commented-code block (6 lines) in evals/src/commands/__tests__/server.test.ts:195", "shortDescription": {"text": "Commented-code block (6 lines) in evals/src/commands/__tests__/server.test.ts:195"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7f8529c6eb85a9b0", "name": "Commented-code block (5 lines) in evals/src/lib/report-data.ts:542", "shortDescription": {"text": "Commented-code block (5 lines) in evals/src/lib/report-data.ts:542"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d3f2c13f293ff34a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 evals/src/lib/llm-judge.ts:63", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 evals/src/lib/llm-judge.ts:63"}, "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-f779b7104125e121", "name": "Commented-code block (6 lines) in evals/src/lib/pricing.ts:103", "shortDescription": {"text": "Commented-code block (6 lines) in evals/src/lib/pricing.ts:103"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-590d2c009483c366", "name": "Commented-code block (6 lines) in evals/src/lib/adapters/vellum.ts:278", "shortDescription": {"text": "Commented-code block (6 lines) in evals/src/lib/adapters/vellum.ts:278"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ed4e692410dd3705", "name": "Commented-code block (10 lines) in evals/src/lib/adapters/hermes.ts:569", "shortDescription": {"text": "Commented-code block (10 lines) in evals/src/lib/adapters/hermes.ts:569"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2cd32d9445b03b58", "name": "Commented-code block (7 lines) in evals/src/lib/adapters/__tests__/vellum-app-page.test.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in evals/src/lib/adapters/__tests__/vellum-app-page.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-930cf82dd0fa9229", "name": "Commented-code block (6 lines) in evals/src/lib/__tests__/report-data.test.ts:339", "shortDescription": {"text": "Commented-code block (6 lines) in evals/src/lib/__tests__/report-data.test.ts:339"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2d0efa406908c73e", "name": "Commented-code block (8 lines) in evals/src/lib/__tests__/vellum-adapter.test.ts:60", "shortDescription": {"text": "Commented-code block (8 lines) in evals/src/lib/__tests__/vellum-adapter.test.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-e7803a8e9f3a2bbe", "name": "Commented-code block (7 lines) in evals/src/lib/__tests__/docker-jail.test.ts:236", "shortDescription": {"text": "Commented-code block (7 lines) in evals/src/lib/__tests__/docker-jail.test.ts:236"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1a0e15b1129a2f38", "name": "Commented-code block (6 lines) in evals/src/lib/__tests__/user-simulator.test.ts:207", "shortDescription": {"text": "Commented-code block (6 lines) in evals/src/lib/__tests__/user-simulator.test.ts:207"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-caedf81088caa6ea", "name": "Commented-code block (7 lines) in evals/src/lib/__tests__/hermes-adapter.test.ts:334", "shortDescription": {"text": "Commented-code block (7 lines) in evals/src/lib/__tests__/hermes-adapter.test.ts:334"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-98bc2fdd73f68bbf", "name": "Commented-code block (5 lines) in evals/src/lib/__tests__/pricing.test.ts:201", "shortDescription": {"text": "Commented-code block (5 lines) in evals/src/lib/__tests__/pricing.test.ts:201"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b3e3b748a722f690", "name": "Commented-code block (6 lines) in evals/src/lib/__tests__/benchmark.test.ts:44", "shortDescription": {"text": "Commented-code block (6 lines) in evals/src/lib/__tests__/benchmark.test.ts:44"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1f03cc34752b07da", "name": "Commented-code block (5 lines) in evals/src/lib/__tests__/report-html.test.ts:668", "shortDescription": {"text": "Commented-code block (5 lines) in evals/src/lib/__tests__/report-html.test.ts:668"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-834150802d4e9675", "name": "Commented-code block (7 lines) in evals/src/lib/runner/run-once.ts:382", "shortDescription": {"text": "Commented-code block (7 lines) in evals/src/lib/runner/run-once.ts:382"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c55e8825f57b9473", "name": "Commented-code block (9 lines) in evals/src/lib/runner/progress-lifecycle.ts:113", "shortDescription": {"text": "Commented-code block (9 lines) in evals/src/lib/runner/progress-lifecycle.ts:113"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-52cd5845b567aff1", "name": "Commented-code block (5 lines) in evals/src/lib/runner/event-collector.ts:51", "shortDescription": {"text": "Commented-code block (5 lines) in evals/src/lib/runner/event-collector.ts:51"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3000ee6bb3067916", "name": "Commented-code block (5 lines) in evals/src/lib/runner/run-ingest-ask.ts:261", "shortDescription": {"text": "Commented-code block (5 lines) in evals/src/lib/runner/run-ingest-ask.ts:261"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6d6f180d5c8c6578", "name": "Commented-code block (5 lines) in evals/src/lib/runner/__tests__/run-once.test.ts:20", "shortDescription": {"text": "Commented-code block (5 lines) in evals/src/lib/runner/__tests__/run-once.test.ts:20"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-21a3fff3f60aa291", "name": "Commented-code block (5 lines) in evals/src/lib/simulator/user-simulator.ts:165", "shortDescription": {"text": "Commented-code block (5 lines) in evals/src/lib/simulator/user-simulator.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-97ba60b46774946f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 evals/src/lib/simulator/user-simulator.ts:446", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 evals/src/lib/simulator/user-simulator.ts:446"}, "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-e4021c19e273a91c", "name": "Commented-code block (5 lines) in evals/src/lib/egress/docker-jail.ts:378", "shortDescription": {"text": "Commented-code block (5 lines) in evals/src/lib/egress/docker-jail.ts:378"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bf6a894598da4ce1", "name": "Commented-code block (6 lines) in evals/src/lib/egress/recording/addon.py:80", "shortDescription": {"text": "Commented-code block (6 lines) in evals/src/lib/egress/recording/addon.py:80"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2e4163fb51effce4", "name": "Commented-code block (6 lines) in evals/src/lib/egress/recording/test_mock_github_handler.py:131", "shortDescription": {"text": "Commented-code block (6 lines) in evals/src/lib/egress/recording/test_mock_github_handler.py:131"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9ecdceb8c251c12c", "name": "Commented-code block (9 lines) in evals/src/lib/egress/recording/usage_parser.py:224", "shortDescription": {"text": "Commented-code block (9 lines) in evals/src/lib/egress/recording/usage_parser.py:224"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-237d906ec1af0a87", "name": "Commented-code block (5 lines) in evals/src/lib/egress/recording/__tests__/apply-recording-jail.test.ts:104", "shortDescription": {"text": "Commented-code block (5 lines) in evals/src/lib/egress/recording/__tests__/apply-recording-jail.test.ts:104"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ce322eddeb94db08", "name": "Network/subprocess call without timeout or try/except \u2014 evals/src/lib/egress/connection-telemetry/connection_tailer.py:1", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 evals/src/lib/egress/connection-telemetry/connection_tailer.py:169"}, "fullDescription": {"text": "`subprocess.Popen(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-709cbdc9c4df412e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/outlook/scripts/outlook-manage.ts:744", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/outlook/scripts/outlook-manage.ts:744"}, "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-a323538578ed3772", "name": "Commented-code block (6 lines) in skills/outlook-calendar/scripts/outlook-cal.ts:242", "shortDescription": {"text": "Commented-code block (6 lines) in skills/outlook-calendar/scripts/outlook-cal.ts:242"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a9221766b4336e2d", "name": "Network/subprocess call without timeout or try/except \u2014 skills/vellum-github-app-setup/scripts/create-github-app.py:432", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 skills/vellum-github-app-setup/scripts/create-github-app.py:432"}, "fullDescription": {"text": "`urllib.request.urlopen(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5d8f0da45a349128", "name": "Stub function `log_message` (body is just `pass`/`return`) \u2014 skills/vellum-github-app-setup/scripts/create-github-app.py", "shortDescription": {"text": "Stub function `log_message` (body is just `pass`/`return`) \u2014 skills/vellum-github-app-setup/scripts/create-github-app.py:480"}, "fullDescription": {"text": "Likely an AI scaffold that was never filled in. Remove or implement."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-affc445555c74358", "name": "Commented-code block (5 lines) in skills/doordash/scripts/doordash-cli.ts:40", "shortDescription": {"text": "Commented-code block (5 lines) in skills/doordash/scripts/doordash-cli.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-5d5f0138f81cb390", "name": "Commented-code block (5 lines) in skills/doordash/scripts/__tests__/doordash-client.test.ts:110", "shortDescription": {"text": "Commented-code block (5 lines) in skills/doordash/scripts/__tests__/doordash-client.test.ts:110"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-10ee5909a9df20f4", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/doordash/scripts/lib/client.ts:108", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/doordash/scripts/lib/client.ts:108"}, "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-fee99c3bfa92db92", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/doordash/scripts/lib/shared/network-recorder.ts:127", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/doordash/scripts/lib/shared/network-recorder.ts:127"}, "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-7b3197206732032a", "name": "Commented-code block (5 lines) in skills/meet-join/entrypoint.ts:156", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/entrypoint.ts:156"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7096e88775bad921", "name": "Commented-code block (6 lines) in skills/meet-join/register.ts:74", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/register.ts:74"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-39dd3bdc505aff99", "name": "Commented-code block (6 lines) in skills/meet-join/__tests__/entrypoint.test.ts:302", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/__tests__/entrypoint.test.ts:302"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b343c1a68983f589", "name": "Commented-code block (5 lines) in skills/meet-join/__tests__/register.test.ts:30", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/__tests__/register.test.ts:30"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7bc92874a9f9f7f3", "name": "Commented-code block (5 lines) in skills/meet-join/__tests__/build-test-host.ts:266", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/__tests__/build-test-host.ts:266"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-59e7a019ed48de0c", "name": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/nmh-shim.test.ts:294", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/nmh-shim.test.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-b938c899bc33cb10", "name": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/avatar-http-server.test.ts:502", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/avatar-http-server.test.ts:502"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-30122365eca4e81e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/avatar-http-server.test.ts:113", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/avatar-http-server.test.ts:113"}, "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-806228f29e1526df", "name": "Commented-code block (6 lines) in skills/meet-join/bot/__tests__/socket-server.test.ts:499", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/bot/__tests__/socket-server.test.ts:499"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6a5ca56c62b92889", "name": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/chrome-launcher-avatar-flag.test.ts:266", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/chrome-launcher-avatar-flag.test.ts:266"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8463a3aa1b943fa9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/voice-loopback.test.ts:194", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/voice-loopback.test.ts:194"}, "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-396c44a6078a0365", "name": "Commented-code block (7 lines) in skills/meet-join/bot/__tests__/main.test.ts:727", "shortDescription": {"text": "Commented-code block (7 lines) in skills/meet-join/bot/__tests__/main.test.ts:727"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-523f8f0a4f2bc7fd", "name": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/audio-playback.test.ts:424", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/audio-playback.test.ts:424"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b6336a957f685118", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/audio-playback.test.ts:275", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/audio-playback.test.ts:275"}, "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-8a35482dd3dd76fe", "name": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/avatar-lipsync.test.ts:185", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/avatar-lipsync.test.ts:185"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-16ee9f49e03fd7db", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/send-chat-endpoint.test.ts:66", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/send-chat-endpoint.test.ts:66"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b803dbc5a8377692", "name": "Commented-code block (7 lines) in skills/meet-join/bot/__tests__/xdotool-type.test.ts:93", "shortDescription": {"text": "Commented-code block (7 lines) in skills/meet-join/bot/__tests__/xdotool-type.test.ts:93"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6309efa857762692", "name": "Commented-code block (6 lines) in skills/meet-join/bot/__tests__/avatar-registry.test.ts:245", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/bot/__tests__/avatar-registry.test.ts:245"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-453d5588f89ff5ac", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/http-server.test.ts:80", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/http-server.test.ts:80"}, "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-a0a311bbd2044a17", "name": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/play-audio-teardown.test.ts:308", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/play-audio-teardown.test.ts:308"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9b249804df35e9bc", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/play-audio-teardown.test.ts:224", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/play-audio-teardown.test.ts:224"}, "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-866ca198b83856f1", "name": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/avatar-teardown.test.ts:216", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/avatar-teardown.test.ts:216"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7ee385a560e4a7c7", "name": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/talking-head-renderer.test.ts:162", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/talking-head-renderer.test.ts:162"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e1b7fadf9c04209a", "name": "Commented-code block (5 lines) in skills/meet-join/bot/src/main.ts:444", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/src/main.ts:444"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1cf9b2c8ccc73b90", "name": "Commented-code block (8 lines) in skills/meet-join/bot/src/media/audio-capture.ts:347", "shortDescription": {"text": "Commented-code block (8 lines) in skills/meet-join/bot/src/media/audio-capture.ts:347"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1a8363731287da54", "name": "Commented-code block (7 lines) in skills/meet-join/bot/src/media/audio-playback.ts:235", "shortDescription": {"text": "Commented-code block (7 lines) in skills/meet-join/bot/src/media/audio-playback.ts:235"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-716cdd7f85fb1cf4", "name": "Commented-code block (5 lines) in skills/meet-join/bot/src/media/avatar/device-writer.ts:129", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/src/media/avatar/device-writer.ts:129"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b3fb997d08a6db0a", "name": "Commented-code block (5 lines) in skills/meet-join/bot/src/media/avatar/noop-renderer.ts:90", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/src/media/avatar/noop-renderer.ts:90"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3ecefd0c7d466e40", "name": "Commented-code block (5 lines) in skills/meet-join/bot/src/media/avatar/index.ts:48", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/src/media/avatar/index.ts:48"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7bf60df8ff5f5928", "name": "Commented-code block (6 lines) in skills/meet-join/bot/src/media/avatar/talking-head/renderer.ts:260", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/bot/src/media/avatar/talking-head/renderer.ts:260"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9467262f53e7edf7", "name": "Commented-code block (5 lines) in skills/meet-join/bot/src/native-messaging/camera-channel.ts:107", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/src/native-messaging/camera-channel.ts:107"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b0467c13315bafff", "name": "Commented-code block (7 lines) in skills/meet-join/bot/src/control/http-server.ts:338", "shortDescription": {"text": "Commented-code block (7 lines) in skills/meet-join/bot/src/control/http-server.ts:338"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3d351741a97eb3cd", "name": "Commented-code block (5 lines) in skills/meet-join/bot/src/browser/chrome-launcher.ts:204", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/src/browser/chrome-launcher.ts:204"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c14c3dbebfbeb06e", "name": "Commented-code block (7 lines) in skills/meet-join/bot/src/browser/xdotool-type.ts:93", "shortDescription": {"text": "Commented-code block (7 lines) in skills/meet-join/bot/src/browser/xdotool-type.ts:93"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-731d947d57b91217", "name": "Commented-code block (5 lines) in skills/meet-join/scripts/emit-manifest.ts:89", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/scripts/emit-manifest.ts:89"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2b0e8a0c936fab2f", "name": "Commented-code block (8 lines) in skills/meet-join/meet-controller-ext/src/handle-send-chat.ts:49", "shortDescription": {"text": "Commented-code block (8 lines) in skills/meet-join/meet-controller-ext/src/handle-send-chat.ts:49"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fa154cb98ed5bf41", "name": "Commented-code block (7 lines) in skills/meet-join/meet-controller-ext/src/content.ts:265", "shortDescription": {"text": "Commented-code block (7 lines) in skills/meet-join/meet-controller-ext/src/content.ts:265"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6311ed2e9d42d658", "name": "Commented-code block (7 lines) in skills/meet-join/meet-controller-ext/src/background.ts:39", "shortDescription": {"text": "Commented-code block (7 lines) in skills/meet-join/meet-controller-ext/src/background.ts:39"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-829fef56ba6f5f0e", "name": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/content-bridge.test.ts:174", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/content-bridge.test.ts:174"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-70f7fb8b9e2a490c", "name": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/content-camera.test.ts:108", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/content-camera.test.ts:108"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6f726b9a0f4c2a5a", "name": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/content-send-chat.test.ts:260", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/content-send-chat.test.ts:260"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3fb6dc61bff513fe", "name": "Commented-code block (11 lines) in skills/meet-join/meet-controller-ext/src/__tests__/join.test.ts:80", "shortDescription": {"text": "Commented-code block (11 lines) in skills/meet-join/meet-controller-ext/src/__tests__/join.test.ts:80"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7f2566d1bd9fe8be", "name": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/participants.test.ts:269", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/participants.test.ts:269"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b72cf68d08a6e6d4", "name": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/camera-feature.test.ts:196", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/camera-feature.test.ts:196"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e72128016c871a1f", "name": "Commented-code block (6 lines) in skills/meet-join/meet-controller-ext/src/__tests__/chat.test.ts:84", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/meet-controller-ext/src/__tests__/chat.test.ts:84"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-49da3a11b7ff5d84", "name": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/messaging/content-bridge.ts:34", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/messaging/content-bridge.ts:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-589fa308e6b05a6f", "name": "Commented-code block (7 lines) in skills/meet-join/meet-controller-ext/src/avatar/avatar.ts:243", "shortDescription": {"text": "Commented-code block (7 lines) in skills/meet-join/meet-controller-ext/src/avatar/avatar.ts:243"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-81bb5d793833b93b", "name": "Commented-code block (6 lines) in skills/meet-join/meet-controller-ext/src/dom/selectors.ts:342", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/meet-controller-ext/src/dom/selectors.ts:342"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d976d20943017dbf", "name": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/dom/__tests__/selectors.test.ts:177", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/dom/__tests__/selectors.test.ts:177"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c7705f1674519f13", "name": "Commented-code block (6 lines) in skills/meet-join/meet-controller-ext/src/features/camera.ts:192", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/meet-controller-ext/src/features/camera.ts:192"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4ab4cbd3f1379720", "name": "Commented-code block (6 lines) in skills/meet-join/meet-controller-ext/src/features/participants.ts:174", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/meet-controller-ext/src/features/participants.ts:174"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e46cb54cfe0a56d6", "name": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/features/join.ts:189", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/features/join.ts:189"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-14800193966f06af", "name": "Commented-code block (9 lines) in skills/meet-join/meet-controller-ext/src/features/chat.ts:192", "shortDescription": {"text": "Commented-code block (9 lines) in skills/meet-join/meet-controller-ext/src/features/chat.ts:192"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8c86b715782bef9a", "name": "Commented-code block (5 lines) in skills/meet-join/routes/meet-internal.ts:59", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/routes/meet-internal.ts:59"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f5f1b62e9d32ca18", "name": "Commented-code block (6 lines) in skills/meet-join/daemon/speaker-resolver.ts:84", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/speaker-resolver.ts:84"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a304ccd708c32eea", "name": "Commented-code block (6 lines) in skills/meet-join/daemon/tts-bridge.ts:45", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/tts-bridge.ts:45"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3e49c083d9de0d1d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/daemon/tts-bridge.ts:497", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/daemon/tts-bridge.ts:497"}, "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-bdcf1e26ffae3fb4", "name": "Commented-code block (5 lines) in skills/meet-join/daemon/barge-in-watcher.ts:336", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/barge-in-watcher.ts:336"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9cf0de3321db7f00", "name": "Commented-code block (6 lines) in skills/meet-join/daemon/docker-runner.ts:548", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/docker-runner.ts:548"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b3ad0d2b0dd292ce", "name": "Commented-code block (5 lines) in skills/meet-join/daemon/chat-opportunity-detector.ts:428", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/chat-opportunity-detector.ts:428"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-273543d34d5bb7b1", "name": "Commented-code block (5 lines) in skills/meet-join/daemon/consent-monitor.ts:458", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/consent-monitor.ts:458"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7bcf1c972081c8e1", "name": "Commented-code block (6 lines) in skills/meet-join/daemon/modules-registry.ts:82", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/modules-registry.ts:82"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c3f8e8eb505a2080", "name": "Commented-code block (6 lines) in skills/meet-join/daemon/audio-ingest.ts:941", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/audio-ingest.ts:941"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-131520b66eb19aa6", "name": "Commented-code block (6 lines) in skills/meet-join/daemon/session-manager.ts:63", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/session-manager.ts:63"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3770c53f9e6dc553", "name": "Commented-code block (5 lines) in skills/meet-join/daemon/event-publisher.ts:383", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/event-publisher.ts:383"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b50224badf049afd", "name": "Commented-code block (5 lines) in skills/meet-join/daemon/tts-lipsync.ts:45", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/tts-lipsync.ts:45"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-aa23f10e2351c11e", "name": "Commented-code block (9 lines) in skills/meet-join/daemon/__tests__/e2e-smoke.test.ts:390", "shortDescription": {"text": "Commented-code block (9 lines) in skills/meet-join/daemon/__tests__/e2e-smoke.test.ts:390"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-185cc9abb6484b2c", "name": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/docker-mode-e2e.test.ts:67", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/docker-mode-e2e.test.ts:67"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-72ce2f56258ae7cb", "name": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/dind-e2e.test.ts:69", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/dind-e2e.test.ts:69"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a01c63f8813bbb91", "name": "Commented-code block (6 lines) in skills/meet-join/daemon/__tests__/audio-ingest.test.ts:920", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/__tests__/audio-ingest.test.ts:920"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c89d85a6f40a2923", "name": "Commented-code block (8 lines) in skills/meet-join/daemon/__tests__/session-manager.test.ts:103", "shortDescription": {"text": "Commented-code block (8 lines) in skills/meet-join/daemon/__tests__/session-manager.test.ts:103"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1394f90b9f58af32", "name": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/tts-bridge.test.ts:374", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/tts-bridge.test.ts:374"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a8aaaec848829926", "name": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/speaker-resolver.test.ts:815", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/speaker-resolver.test.ts:815"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-40571cc52668fe38", "name": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/chat-send-e2e.test.ts:196", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/chat-send-e2e.test.ts:196"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f9e8c75d24d89407", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/daemon/__tests__/chat-send-e2e.test.ts:15", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/daemon/__tests__/chat-send-e2e.test.ts:15"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7c96b80386bb5c03", "name": "Commented-code block (7 lines) in skills/meet-join/daemon/__tests__/voice-e2e.test.ts:412", "shortDescription": {"text": "Commented-code block (7 lines) in skills/meet-join/daemon/__tests__/voice-e2e.test.ts:412"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8fc2ad090ff764b2", "name": "Commented-code block (11 lines) in skills/meet-join/daemon/__tests__/avatar-e2e.test.ts:75", "shortDescription": {"text": "Commented-code block (11 lines) in skills/meet-join/daemon/__tests__/avatar-e2e.test.ts:75"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9775779d75816697", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/daemon/__tests__/avatar-e2e.test.ts:248", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/daemon/__tests__/avatar-e2e.test.ts:248"}, "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-63b5d77ebef67522", "name": "Commented-code block (9 lines) in skills/meet-join/daemon/__tests__/consent-monitor.test.ts:1282", "shortDescription": {"text": "Commented-code block (9 lines) in skills/meet-join/daemon/__tests__/consent-monitor.test.ts:1282"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-daec18a9dcd71df3", "name": "Commented-code block (8 lines) in skills/meet-join/daemon/__tests__/proactive-chat-e2e.test.ts:78", "shortDescription": {"text": "Commented-code block (8 lines) in skills/meet-join/daemon/__tests__/proactive-chat-e2e.test.ts:78"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-aa257b71bdfb20aa", "name": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/daemon/__tests__/proactive-chat-e2e.test.ts:24", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/daemon/__tests__/proactive-chat-e2e.test.ts:24"}, "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-2a4514ac507588e3", "name": "Commented-code block (7 lines) in skills/meet-join/daemon/__tests__/docker-runner.test.ts:370", "shortDescription": {"text": "Commented-code block (7 lines) in skills/meet-join/daemon/__tests__/docker-runner.test.ts:370"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-77e1a71a7b865bf0", "name": "Commented-code block (6 lines) in skills/meet-join/daemon/__tests__/tts-lipsync.test.ts:316", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/__tests__/tts-lipsync.test.ts:316"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1dd813ac52808eae", "name": "Commented-code block (5 lines) in skills/meet-join/tools/meet-send-chat-tool.ts:49", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/tools/meet-send-chat-tool.ts:49"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f3e16de7f96029d0", "name": "Commented-code block (5 lines) in skills/meet-join/tools/meet-join-tool.ts:135", "shortDescription": {"text": "Commented-code block (5 lines) in skills/meet-join/tools/meet-join-tool.ts:135"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1b89be6203638fbb", "name": "Commented-code block (6 lines) in skills/meet-join/tools/meet-avatar-tool.ts:85", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/tools/meet-avatar-tool.ts:85"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7c9872f4b4ceb609", "name": "Commented-code block (6 lines) in skills/meet-join/tools/meet-speak-tool.ts:103", "shortDescription": {"text": "Commented-code block (6 lines) in skills/meet-join/tools/meet-speak-tool.ts:103"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f1ba75a6b0b9e73d", "name": "Commented-code block (9 lines) in skills/meet-join/contracts/native-messaging.ts:196", "shortDescription": {"text": "Commented-code block (9 lines) in skills/meet-join/contracts/native-messaging.ts:196"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-419aa5428e04834b", "name": "154 env vars used in code but missing from .env.example", "shortDescription": {"text": "154 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `ACTOR_TOKEN_SIGNING_KEY`, `ANTHROPIC_BASE_URL`, `APPLE_SIGNING_IDENTITY`, `APP_VERSION`, `ASSISTANT_API_KEY`, `ASSISTANT_GIT_USER_EMAIL`, `ASSISTANT_GIT_USER_NAME`, `ASSISTANT_HOST` + 146 more. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be46ea126aa5d8dc", "name": "Near-duplicate function bodies in 3 places", "shortDescription": {"text": "Near-duplicate function bodies in 3 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nevals/src/lib/egress/recording/mock_github_handler.py:handle_contents_api, evals/src/lib/egress/recording/mock_github_handler.py:handle_raw_api, evals/src/lib/egress/recording/mock_github_handler.py:handle\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-814277a6bba5ebff", "name": "Frontend route `/assistant/plugins/:name` has no Link/navigate to it \u2014 apps/web/src/domains/intelligence/plugin-detail-p", "shortDescription": {"text": "Frontend route `/assistant/plugins/:name` has no Link/navigate to it \u2014 apps/web/src/domains/intelligence/plugin-detail-page.test.tsx"}, "fullDescription": {"text": "The route is registered but no `<Link to=\u2026>` or `navigate(\u2026)` in the codebase navigates here. Either it's reachable only via direct URL (intentional), it's dead, or the link broke during a refactor."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4ab5c9e47c7a1cdb", "name": "Dangling fetch: GET http://127.0.0.1:${port}/healthz (credential-executor/src/__tests__/managed-reconnect.test.ts:54)", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/healthz (credential-executor/src/__tests__/managed-reconnect.test.ts:54)"}, "fullDescription": {"text": "`credential-executor/src/__tests__/managed-reconnect.test.ts:54` calls `GET http://127.0.0.1:${port}/healthz` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/healthz`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-346571ae45a2bd2a", "name": "Dangling fetch: GET http://127.0.0.1:${port}/readyz (credential-executor/src/__tests__/managed-reconnect.test.ts:66)", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/readyz (credential-executor/src/__tests__/managed-reconnect.test.ts:66)"}, "fullDescription": {"text": "`credential-executor/src/__tests__/managed-reconnect.test.ts:66` calls `GET http://127.0.0.1:${port}/readyz` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/readyz`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1c51dd8658c27e6a", "name": "Dangling fetch: GET http://127.0.0.1:${healthPort}/healthz (credential-executor/src/__tests__/managed-reconnect.test.ts:", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${healthPort}/healthz (credential-executor/src/__tests__/managed-reconnect.test.ts:219)"}, "fullDescription": {"text": "`credential-executor/src/__tests__/managed-reconnect.test.ts:219` calls `GET http://127.0.0.1:${healthPort}/healthz` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/healthz`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2287f1d0f45d0f99", "name": "Dangling fetch: GET http://localhost:${healthPort}/healthz (credential-executor/src/__tests__/managed-integration.test.t", "shortDescription": {"text": "Dangling fetch: GET http://localhost:${healthPort}/healthz (credential-executor/src/__tests__/managed-integration.test.ts:503)"}, "fullDescription": {"text": "`credential-executor/src/__tests__/managed-integration.test.ts:503` calls `GET http://localhost:${healthPort}/healthz` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/localhost:/<p>/healthz`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e4882eb544b5fade", "name": "Dangling fetch: GET http://localhost:${healthPort}/readyz (credential-executor/src/__tests__/managed-integration.test.ts", "shortDescription": {"text": "Dangling fetch: GET http://localhost:${healthPort}/readyz (credential-executor/src/__tests__/managed-integration.test.ts:508)"}, "fullDescription": {"text": "`credential-executor/src/__tests__/managed-integration.test.ts:508` calls `GET http://localhost:${healthPort}/readyz` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/localhost:/<p>/readyz`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f2060bc165eb8843", "name": "Dangling fetch: POST https://api.elevenlabs.io/v1/text-to-speech/${encodeURIComponent(\n      trimmedVoiceId,\n    )}?outp", "shortDescription": {"text": "Dangling fetch: POST https://api.elevenlabs.io/v1/text-to-speech/${encodeURIComponent(\n      trimmedVoiceId,\n    )}?output_format=mp3_44100_128 (apps/web/src/lib/tts-synthesize.ts:82)"}, "fullDescription": {"text": "`apps/web/src/lib/tts-synthesize.ts:82` calls `POST https://api.elevenlabs.io/v1/text-to-speech/${encodeURIComponent(\n      trimmedVoiceId,\n    )}?output_format=mp3_44100_128` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.elevenlabs.io/v1/text-to-speech/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-263c533f5bb68d99", "name": "Dangling fetch: POST https://api.deepgram.com/v1/speak?model=aura-2-thalia-en (apps/web/src/lib/tts-synthesize.ts:115)", "shortDescription": {"text": "Dangling fetch: POST https://api.deepgram.com/v1/speak?model=aura-2-thalia-en (apps/web/src/lib/tts-synthesize.ts:115)"}, "fullDescription": {"text": "`apps/web/src/lib/tts-synthesize.ts:115` calls `POST https://api.deepgram.com/v1/speak?model=aura-2-thalia-en` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.deepgram.com/v1/speak`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-fbce42cee010d42b", "name": "Dangling fetch: POST /assistant/__local/hatch (apps/web/src/runtime/local-mode-host.ts:133)", "shortDescription": {"text": "Dangling fetch: POST /assistant/__local/hatch (apps/web/src/runtime/local-mode-host.ts:133)"}, "fullDescription": {"text": "`apps/web/src/runtime/local-mode-host.ts:133` calls `POST /assistant/__local/hatch` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/assistant/__local/hatch`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-40f906bd29d35ac5", "name": "Dangling fetch: GET /assistant/__local/lockfile (apps/web/src/runtime/local-mode-host.ts:152)", "shortDescription": {"text": "Dangling fetch: GET /assistant/__local/lockfile (apps/web/src/runtime/local-mode-host.ts:152)"}, "fullDescription": {"text": "`apps/web/src/runtime/local-mode-host.ts:152` calls `GET /assistant/__local/lockfile` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/assistant/__local/lockfile`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7a0fffb05e356ca3", "name": "Dangling fetch: POST /assistant/__local/lockfile (apps/web/src/runtime/local-mode-host.ts:173)", "shortDescription": {"text": "Dangling fetch: POST /assistant/__local/lockfile (apps/web/src/runtime/local-mode-host.ts:173)"}, "fullDescription": {"text": "`apps/web/src/runtime/local-mode-host.ts:173` calls `POST /assistant/__local/lockfile` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/assistant/__local/lockfile`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-185efc50cbc9016e", "name": "Dangling fetch: POST /assistant/__local/lockfile (apps/web/src/runtime/local-mode-host.ts:199)", "shortDescription": {"text": "Dangling fetch: POST /assistant/__local/lockfile (apps/web/src/runtime/local-mode-host.ts:199)"}, "fullDescription": {"text": "`apps/web/src/runtime/local-mode-host.ts:199` calls `POST /assistant/__local/lockfile` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/assistant/__local/lockfile`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f56d89a5cf568f6e", "name": "Dangling fetch: POST /assistant/__local/retire (apps/web/src/runtime/local-mode-host.ts:218)", "shortDescription": {"text": "Dangling fetch: POST /assistant/__local/retire (apps/web/src/runtime/local-mode-host.ts:218)"}, "fullDescription": {"text": "`apps/web/src/runtime/local-mode-host.ts:218` calls `POST /assistant/__local/retire` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/assistant/__local/retire`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ff5ffdef6cbae8f5", "name": "Dangling fetch: POST /assistant/__local/sleep (apps/web/src/runtime/local-mode-host.ts:242)", "shortDescription": {"text": "Dangling fetch: POST /assistant/__local/sleep (apps/web/src/runtime/local-mode-host.ts:242)"}, "fullDescription": {"text": "`apps/web/src/runtime/local-mode-host.ts:242` calls `POST /assistant/__local/sleep` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/assistant/__local/sleep`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4e5267f7095a2f04", "name": "Dangling fetch: POST /assistant/__local/wake (apps/web/src/runtime/local-mode-host.ts:280)", "shortDescription": {"text": "Dangling fetch: POST /assistant/__local/wake (apps/web/src/runtime/local-mode-host.ts:280)"}, "fullDescription": {"text": "`apps/web/src/runtime/local-mode-host.ts:280` calls `POST /assistant/__local/wake` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/assistant/__local/wake`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-422cb374aa29712c", "name": "Dangling fetch: POST /v1/telemetry/ingest/ (apps/web/src/domains/onboarding/funnel-events.ts:171)", "shortDescription": {"text": "Dangling fetch: POST /v1/telemetry/ingest/ (apps/web/src/domains/onboarding/funnel-events.ts:171)"}, "fullDescription": {"text": "`apps/web/src/domains/onboarding/funnel-events.ts:171` calls `POST /v1/telemetry/ingest/` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/telemetry/ingest`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2d8ccdca1a9f5453", "name": "Dangling fetch: GET /assistant/assets/app.js (apps/macos/src/main/platform-forward.test.ts:30)", "shortDescription": {"text": "Dangling fetch: GET /assistant/assets/app.js (apps/macos/src/main/platform-forward.test.ts:30)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:30` calls `GET /assistant/assets/app.js` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistant/assets/app.js`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e9bfe845ff09ec04", "name": "Dangling fetch: GET /__gateway/8080/v1/foo (apps/macos/src/main/platform-forward.test.ts:36)", "shortDescription": {"text": "Dangling fetch: GET /__gateway/8080/v1/foo (apps/macos/src/main/platform-forward.test.ts:36)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:36` calls `GET /__gateway/8080/v1/foo` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/__gateway/<p>/v1/foo`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0d38e95a9739f393", "name": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:42)", "shortDescription": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:42)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:42` calls `GET /v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-88f034e221bacf0c", "name": "Dangling fetch: GET /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:54)", "shortDescription": {"text": "Dangling fetch: GET /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:54)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:54` calls `GET /_allauth/browser/v1/auth/session` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/_allauth/browser/v1/auth/session`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-84f6ffc394f70857", "name": "Dangling fetch: GET /accounts/login (apps/macos/src/main/platform-forward.test.ts:65)", "shortDescription": {"text": "Dangling fetch: GET /accounts/login (apps/macos/src/main/platform-forward.test.ts:65)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:65` calls `GET /accounts/login` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/accounts/login`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a7eaff9970d58c79", "name": "Dangling fetch: GET /v1 (apps/macos/src/main/platform-forward.test.ts:73)", "shortDescription": {"text": "Dangling fetch: GET /v1 (apps/macos/src/main/platform-forward.test.ts:73)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:73` calls `GET /v1` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c1bc1f3d0f0b779b", "name": "Dangling fetch: GET /v1/assistants?page=2&limit=10 (apps/macos/src/main/platform-forward.test.ts:80)", "shortDescription": {"text": "Dangling fetch: GET /v1/assistants?page=2&limit=10 (apps/macos/src/main/platform-forward.test.ts:80)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:80` calls `GET /v1/assistants?page=2&limit=10` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-929d00d131088387", "name": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:91)", "shortDescription": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:91)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:91` calls `GET /v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3c47d2ffd406ff9c", "name": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:99)", "shortDescription": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:99)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:99` calls `GET /v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e255fdbdda67bda6", "name": "Dangling fetch: POST /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:106)", "shortDescription": {"text": "Dangling fetch: POST /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:106)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:106` calls `POST /_allauth/browser/v1/auth/session` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/_allauth/browser/v1/auth/session`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8f2185d662baea78", "name": "Dangling fetch: POST /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:119)", "shortDescription": {"text": "Dangling fetch: POST /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:119)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:119` calls `POST /_allauth/browser/v1/auth/session` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/_allauth/browser/v1/auth/session`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a13c71d8b121df40", "name": "Dangling fetch: POST /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:136)", "shortDescription": {"text": "Dangling fetch: POST /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:136)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:136` calls `POST /_allauth/browser/v1/auth/session` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/_allauth/browser/v1/auth/session`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3dcaed683532cf14", "name": "Dangling fetch: POST /v1/assistants (apps/macos/src/main/platform-forward.test.ts:149)", "shortDescription": {"text": "Dangling fetch: POST /v1/assistants (apps/macos/src/main/platform-forward.test.ts:149)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:149` calls `POST /v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a530014f74b0f555", "name": "Dangling fetch: POST /v1/assistants (apps/macos/src/main/platform-forward.test.ts:164)", "shortDescription": {"text": "Dangling fetch: POST /v1/assistants (apps/macos/src/main/platform-forward.test.ts:164)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:164` calls `POST /v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d29aa0ccd97e002a", "name": "Dangling fetch: POST /v1/assistants (apps/macos/src/main/platform-forward.test.ts:177)", "shortDescription": {"text": "Dangling fetch: POST /v1/assistants (apps/macos/src/main/platform-forward.test.ts:177)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:177` calls `POST /v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e6490de67f8d61ca", "name": "Dangling fetch: POST /v1/assistants (apps/macos/src/main/platform-forward.test.ts:190)", "shortDescription": {"text": "Dangling fetch: POST /v1/assistants (apps/macos/src/main/platform-forward.test.ts:190)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:190` calls `POST /v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-96d3afb755f468f9", "name": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:216)", "shortDescription": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:216)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:216` calls `GET /v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2452d910177ea045", "name": "Dangling fetch: POST /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:226)", "shortDescription": {"text": "Dangling fetch: POST /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:226)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:226` calls `POST /_allauth/browser/v1/auth/session` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/_allauth/browser/v1/auth/session`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d4ef719269daa651", "name": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:246)", "shortDescription": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:246)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:246` calls `GET /v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a8706cd202c2d52e", "name": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:254)", "shortDescription": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:254)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:254` calls `GET /v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-94e14767a641cc28", "name": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:264)", "shortDescription": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:264)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:264` calls `GET /v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f1c23330f0297b16", "name": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:278)", "shortDescription": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:278)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:278` calls `GET /v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f5835ed83376b7d9", "name": "Dangling fetch: GET /v1something/else (apps/macos/src/main/platform-forward.test.ts:288)", "shortDescription": {"text": "Dangling fetch: GET /v1something/else (apps/macos/src/main/platform-forward.test.ts:288)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:288` calls `GET /v1something/else` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/v1something/else`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-03064386c3198e79", "name": "Dangling fetch: GET /accountsettings (apps/macos/src/main/platform-forward.test.ts:292)", "shortDescription": {"text": "Dangling fetch: GET /accountsettings (apps/macos/src/main/platform-forward.test.ts:292)"}, "fullDescription": {"text": "`apps/macos/src/main/platform-forward.test.ts:292` calls `GET /accountsettings` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/accountsettings`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-45e571d074414b7a", "name": "Dangling fetch: GET /assistant/assets/app.js (apps/macos/src/main/gateway-forward.test.ts:24)", "shortDescription": {"text": "Dangling fetch: GET /assistant/assets/app.js (apps/macos/src/main/gateway-forward.test.ts:24)"}, "fullDescription": {"text": "`apps/macos/src/main/gateway-forward.test.ts:24` calls `GET /assistant/assets/app.js` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistant/assets/app.js`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b56dd2d5e3f3584f", "name": "Dangling fetch: GET /__gateway/80/v1 (apps/macos/src/main/gateway-forward.test.ts:29)", "shortDescription": {"text": "Dangling fetch: GET /__gateway/80/v1 (apps/macos/src/main/gateway-forward.test.ts:29)"}, "fullDescription": {"text": "`apps/macos/src/main/gateway-forward.test.ts:29` calls `GET /__gateway/80/v1` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/__gateway/<p>/v1`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6868035b3959d415", "name": "Dangling fetch: GET /__gateway/9999/v1 (apps/macos/src/main/gateway-forward.test.ts:38)", "shortDescription": {"text": "Dangling fetch: GET /__gateway/9999/v1 (apps/macos/src/main/gateway-forward.test.ts:38)"}, "fullDescription": {"text": "`apps/macos/src/main/gateway-forward.test.ts:38` calls `GET /__gateway/9999/v1` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/__gateway/<p>/v1`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1a238b793afb74e7", "name": "Dangling fetch: GET /assistant/__gateway/8080/v1/assistants (apps/macos/src/main/gateway-forward.test.ts:48)", "shortDescription": {"text": "Dangling fetch: GET /assistant/__gateway/8080/v1/assistants (apps/macos/src/main/gateway-forward.test.ts:48)"}, "fullDescription": {"text": "`apps/macos/src/main/gateway-forward.test.ts:48` calls `GET /assistant/__gateway/8080/v1/assistants` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistant/__gateway/<p>/v1/assistants`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b2bf5bf6fae9e68c", "name": "Dangling fetch: POST /assistant/__gateway/8080/auth/token (apps/macos/src/main/gateway-forward.test.ts:62)", "shortDescription": {"text": "Dangling fetch: POST /assistant/__gateway/8080/auth/token (apps/macos/src/main/gateway-forward.test.ts:62)"}, "fullDescription": {"text": "`apps/macos/src/main/gateway-forward.test.ts:62` calls `POST /assistant/__gateway/8080/auth/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistant/__gateway/<p>/auth/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0d763db4757049dc", "name": "Dangling fetch: GET /__gateway/8080/v1/stream (apps/macos/src/main/gateway-forward.test.ts:75)", "shortDescription": {"text": "Dangling fetch: GET /__gateway/8080/v1/stream (apps/macos/src/main/gateway-forward.test.ts:75)"}, "fullDescription": {"text": "`apps/macos/src/main/gateway-forward.test.ts:75` calls `GET /__gateway/8080/v1/stream` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/__gateway/<p>/v1/stream`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d084476554f45c9a", "name": "Dangling fetch: GET /assistant/__gateway/{port}/* (apps/macos/src/main/index.ts:237)", "shortDescription": {"text": "Dangling fetch: GET /assistant/__gateway/{port}/* (apps/macos/src/main/index.ts:237)"}, "fullDescription": {"text": "`apps/macos/src/main/index.ts:237` calls `GET /assistant/__gateway/{port}/*` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/assistant/__gateway/<p>/*`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bec9326b0267fd27", "name": "Dangling fetch: GET http://169.254.169.254/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip", "shortDescription": {"text": "Dangling fetch: GET http://169.254.169.254/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip (cli/src/lib/local.ts:713)"}, "fullDescription": {"text": "`cli/src/lib/local.ts:713` calls `GET http://169.254.169.254/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/169.254.169.254/computemetadata/v1/instance/network-interfaces/<p>/access-configs/<p>/external-ip`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1dd7911b48c9ef85", "name": "Dangling fetch: PUT http://169.254.169.254/latest/api/token (cli/src/lib/local.ts:729)", "shortDescription": {"text": "Dangling fetch: PUT http://169.254.169.254/latest/api/token (cli/src/lib/local.ts:729)"}, "fullDescription": {"text": "`cli/src/lib/local.ts:729` calls `PUT http://169.254.169.254/latest/api/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/169.254.169.254/latest/api/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b60a0cc80671f537", "name": "Dangling fetch: GET http://169.254.169.254/latest/meta-data/public-ipv4 (cli/src/lib/local.ts:736)", "shortDescription": {"text": "Dangling fetch: GET http://169.254.169.254/latest/meta-data/public-ipv4 (cli/src/lib/local.ts:736)"}, "fullDescription": {"text": "`cli/src/lib/local.ts:736` calls `GET http://169.254.169.254/latest/meta-data/public-ipv4` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/169.254.169.254/latest/meta-data/public-ipv4`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-736a593bdb02c7b5", "name": "Dangling fetch: POST https://api.perplexity.ai/chat/completions (assistant/src/__tests__/web-search.test.ts:866)", "shortDescription": {"text": "Dangling fetch: POST https://api.perplexity.ai/chat/completions (assistant/src/__tests__/web-search.test.ts:866)"}, "fullDescription": {"text": "`assistant/src/__tests__/web-search.test.ts:866` calls `POST https://api.perplexity.ai/chat/completions` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.perplexity.ai/chat/completions`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a8a70786ceba6ddb", "name": "Dangling fetch: POST https://api.tavily.com/search (assistant/src/__tests__/web-search.test.ts:988)", "shortDescription": {"text": "Dangling fetch: POST https://api.tavily.com/search (assistant/src/__tests__/web-search.test.ts:988)"}, "fullDescription": {"text": "`assistant/src/__tests__/web-search.test.ts:988` calls `POST https://api.tavily.com/search` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.tavily.com/search`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d66ca2f1658fa4ed", "name": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/telegram (assistant/src/__tests__/gateway-only-enforcement.test.t", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/telegram (assistant/src/__tests__/gateway-only-enforcement.test.ts:181)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:181` calls `POST http://127.0.0.1:${port}/webhooks/telegram` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/webhooks/telegram`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7933125e11bd9cfd", "name": "Dangling fetch: GET http://127.0.0.1:${port}/webhooks/telegram (assistant/src/__tests__/gateway-only-enforcement.test.ts", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/webhooks/telegram (assistant/src/__tests__/gateway-only-enforcement.test.ts:193)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:193` calls `GET http://127.0.0.1:${port}/webhooks/telegram` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/webhooks/telegram`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a0cbfe32588caa24", "name": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/telegram/test (assistant/src/__tests__/gateway-only-enforcement.t", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/telegram/test (assistant/src/__tests__/gateway-only-enforcement.test.ts:198)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:198` calls `POST http://127.0.0.1:${port}/webhooks/telegram/test` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/webhooks/telegram/test`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0c58eb3e24dfc746", "name": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/telegram (assistant/src/__tests__/gateway-only-enforcement.test.t", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/telegram (assistant/src/__tests__/gateway-only-enforcement.test.ts:210)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:210` calls `POST http://127.0.0.1:${port}/webhooks/telegram` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/webhooks/telegram`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3b2eb33b0b80f873", "name": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/telegram/test (assistant/src/__tests__/gateway-only-enforcement.t", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/telegram/test (assistant/src/__tests__/gateway-only-enforcement.test.ts:221)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:221` calls `POST http://127.0.0.1:${port}/webhooks/telegram/test` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/webhooks/telegram/test`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a4d26850f3f557c4", "name": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/twilio/voice (assistant/src/__tests__/gateway-only-enforcement.te", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/twilio/voice (assistant/src/__tests__/gateway-only-enforcement.test.ts:239)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:239` calls `POST http://127.0.0.1:${port}/webhooks/twilio/voice` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/webhooks/twilio/voice`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-83f5cb135f115fd8", "name": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/twilio/status (assistant/src/__tests__/gateway-only-enforcement.t", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/twilio/status (assistant/src/__tests__/gateway-only-enforcement.test.ts:256)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:256` calls `POST http://127.0.0.1:${port}/webhooks/twilio/status` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/webhooks/twilio/status`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-50399ff8677f7da7", "name": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/twilio/connect-action (assistant/src/__tests__/gateway-only-enfor", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/twilio/connect-action (assistant/src/__tests__/gateway-only-enforcement.test.ts:272)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:272` calls `POST http://127.0.0.1:${port}/webhooks/twilio/connect-action` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/webhooks/twilio/connect-action`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0d67d0a79d318486", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/calls/twilio/voice-webhook (assistant/src/__tests__/gateway-only-enforc", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/calls/twilio/voice-webhook (assistant/src/__tests__/gateway-only-enforcement.test.ts:288)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:288` calls `POST http://127.0.0.1:${port}/v1/calls/twilio/voice-webhook` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/calls/twilio/voice-webhook`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9659632da7d012da", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/calls/twilio/status (assistant/src/__tests__/gateway-only-enforcement.t", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/calls/twilio/status (assistant/src/__tests__/gateway-only-enforcement.test.ts:304)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:304` calls `POST http://127.0.0.1:${port}/v1/calls/twilio/status` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/calls/twilio/status`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-74f42b4040849a6d", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/internal/twilio/voice-webhook (assistant/src/__tests__/gateway-only-enf", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/internal/twilio/voice-webhook (assistant/src/__tests__/gateway-only-enforcement.test.ts:324)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:324` calls `POST http://127.0.0.1:${port}/v1/internal/twilio/voice-webhook` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/internal/twilio/voice-webhook`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b7c861fdd02845ec", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/internal/twilio/status (assistant/src/__tests__/gateway-only-enforcemen", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/internal/twilio/status (assistant/src/__tests__/gateway-only-enforcement.test.ts:344)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:344` calls `POST http://127.0.0.1:${port}/v1/internal/twilio/status` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/internal/twilio/status`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-aeff68d84e0e3a81", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/internal/twilio/connect-action (assistant/src/__tests__/gateway-only-en", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/internal/twilio/connect-action (assistant/src/__tests__/gateway-only-enforcement.test.ts:361)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:361` calls `POST http://127.0.0.1:${port}/v1/internal/twilio/connect-action` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/internal/twilio/connect-action`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-5ff7ca0c729a8780", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/internal/oauth/callback (assistant/src/__tests__/gateway-only-enforceme", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/internal/oauth/callback (assistant/src/__tests__/gateway-only-enforcement.test.ts:378)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:378` calls `POST http://127.0.0.1:${port}/v1/internal/oauth/callback` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/internal/oauth/callback`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-60dd1869da92b71f", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/relay?callSessionId=sess-123 (assistant/src/__tests__/gateway-only", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/relay?callSessionId=sess-123 (assistant/src/__tests__/gateway-only-enforcement.test.ts:403)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:403` calls `GET http://127.0.0.1:${port}/v1/calls/relay?callSessionId=sess-123` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/calls/relay`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ed259847edae9f63", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/relay?callSessionId=sess-123 (assistant/src/__tests__/gateway-only", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/relay?callSessionId=sess-123 (assistant/src/__tests__/gateway-only-enforcement.test.ts:426)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:426` calls `GET http://127.0.0.1:${port}/v1/calls/relay?callSessionId=sess-123` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/calls/relay`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7f18ade36ec74fda", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/relay?callSessionId=sess-123 (assistant/src/__tests__/gateway-only", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/relay?callSessionId=sess-123 (assistant/src/__tests__/gateway-only-enforcement.test.ts:443)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:443` calls `GET http://127.0.0.1:${port}/v1/calls/relay?callSessionId=sess-123` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/calls/relay`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-35e9467e7d19453c", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/media-stream?callSessionId=sess-123 (assistant/src/__tests__/gatew", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/media-stream?callSessionId=sess-123 (assistant/src/__tests__/gateway-only-enforcement.test.ts:466)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:466` calls `GET http://127.0.0.1:${port}/v1/calls/media-stream?callSessionId=sess-123` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/calls/media-stream`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d285f2ac47961373", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/media-stream?callSessionId=sess-123 (assistant/src/__tests__/gatew", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/media-stream?callSessionId=sess-123 (assistant/src/__tests__/gateway-only-enforcement.test.ts:491)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:491` calls `GET http://127.0.0.1:${port}/v1/calls/media-stream?callSessionId=sess-123` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/calls/media-stream`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-92e44ed2c9bc12c6", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/media-stream?callSessionId=sess-123 (assistant/src/__tests__/gatew", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/media-stream?callSessionId=sess-123 (assistant/src/__tests__/gateway-only-enforcement.test.ts:508)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:508` calls `GET http://127.0.0.1:${port}/v1/calls/media-stream?callSessionId=sess-123` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/calls/media-stream`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8b85a737fbb169b8", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/media-stream (assistant/src/__tests__/gateway-only-enforcement.tes", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/media-stream (assistant/src/__tests__/gateway-only-enforcement.test.ts:525)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:525` calls `GET http://127.0.0.1:${port}/v1/calls/media-stream` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/calls/media-stream`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-66a515b7535df1c5", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test.ts:620)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:620` calls `POST http://127.0.0.1:${port}/v1/channels/inbound` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/channels/inbound`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-80bbf4926f73168a", "name": "Dangling fetch: DELETE http://127.0.0.1:${port}/v1/channels/conversation (assistant/src/__tests__/gateway-only-enforceme", "shortDescription": {"text": "Dangling fetch: DELETE http://127.0.0.1:${port}/v1/channels/conversation (assistant/src/__tests__/gateway-only-enforcement.test.ts:634)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:634` calls `DELETE http://127.0.0.1:${port}/v1/channels/conversation` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/channels/conversation`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f6c01d2741f31dc1", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/delivery-ack (assistant/src/__tests__/gateway-only-enforcement", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/delivery-ack (assistant/src/__tests__/gateway-only-enforcement.test.ts:649)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:649` calls `POST http://127.0.0.1:${port}/v1/channels/delivery-ack` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/channels/delivery-ack`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ac831d7fb722b848", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test.ts:672)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:672` calls `POST http://127.0.0.1:${port}/v1/channels/inbound` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/channels/inbound`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-071e653e0ab84bc4", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test.ts:693)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:693` calls `POST http://127.0.0.1:${port}/v1/channels/inbound` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/channels/inbound`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f939052cddd5e77f", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test.ts:713)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:713` calls `POST http://127.0.0.1:${port}/v1/channels/inbound` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/channels/inbound`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d2030e99da53ae1b", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test.ts:731)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:731` calls `POST http://127.0.0.1:${port}/v1/channels/inbound` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/channels/inbound`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8b3047adb7bd288b", "name": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test.ts:753)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:753` calls `POST http://127.0.0.1:${port}/v1/channels/inbound` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/channels/inbound`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9665a9ae716f1313", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?provider=deepgram&mimeType=audio/webm (assistant/src/__tests_", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?provider=deepgram&mimeType=audio/webm (assistant/src/__tests__/gateway-only-enforcement.test.ts:775)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:775` calls `GET http://127.0.0.1:${port}/v1/stt/stream?provider=deepgram&mimeType=audio/webm` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/stt/stream`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-fc2165dc832eb8cb", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?provider=deepgram&mimeType=audio/webm (assistant/src/__tests_", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?provider=deepgram&mimeType=audio/webm (assistant/src/__tests__/gateway-only-enforcement.test.ts:796)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:796` calls `GET http://127.0.0.1:${port}/v1/stt/stream?provider=deepgram&mimeType=audio/webm` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/stt/stream`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d2c258484549f339", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${TEST_JWT}&provider=deepgram&mimeType=audio/webm (assi", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${TEST_JWT}&provider=deepgram&mimeType=audio/webm (assistant/src/__tests__/gateway-only-enforcement.test.ts:811)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:811` calls `GET http://127.0.0.1:${port}/v1/stt/stream?token=${TEST_JWT}&provider=deepgram&mimeType=audio/webm` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/stt/stream`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-41b09b47c1707ad5", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}&provider=deepgram&mimeType=audio/webm (a", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}&provider=deepgram&mimeType=audio/webm (assistant/src/__tests__/gateway-only-enforcement.test.ts:827)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:827` calls `GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}&provider=deepgram&mimeType=audio/webm` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/stt/stream`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-61d87409bcb65dcd", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}&mimeType=audio/webm (assistant/src/__tes", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}&mimeType=audio/webm (assistant/src/__tests__/gateway-only-enforcement.test.ts:845)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:845` calls `GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}&mimeType=audio/webm` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/stt/stream`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-34fba7bd01ad3055", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}&provider=deepgram (assistant/src/__tests", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}&provider=deepgram (assistant/src/__tests__/gateway-only-enforcement.test.ts:861)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:861` calls `GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}&provider=deepgram` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/stt/stream`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-55dce4807459b69f", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT} (assistant/src/__tests__/gateway-only-en", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT} (assistant/src/__tests__/gateway-only-enforcement.test.ts:876)"}, "fullDescription": {"text": "`assistant/src/__tests__/gateway-only-enforcement.test.ts:876` calls `GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/stt/stream`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-5e307f1222859c9f", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/messages?conversationKey=${conversationKey} (assistant/src/__tests__/run", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/messages?conversationKey=${conversationKey} (assistant/src/__tests__/runtime-attachment-metadata.test.ts:113)"}, "fullDescription": {"text": "`assistant/src/__tests__/runtime-attachment-metadata.test.ts:113` calls `GET http://127.0.0.1:${port}/v1/messages?conversationKey=${conversationKey}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/messages`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-768dc80a9d22f83d", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/messages?conversationKey=${conversationKey} (assistant/src/__tests__/run", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/messages?conversationKey=${conversationKey} (assistant/src/__tests__/runtime-attachment-metadata.test.ts:160)"}, "fullDescription": {"text": "`assistant/src/__tests__/runtime-attachment-metadata.test.ts:160` calls `GET http://127.0.0.1:${port}/v1/messages?conversationKey=${conversationKey}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/messages`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-05db21a7187f5dbc", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/attachments/${stored.id} (assistant/src/__tests__/runtime-attachment-met", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/attachments/${stored.id} (assistant/src/__tests__/runtime-attachment-metadata.test.ts:181)"}, "fullDescription": {"text": "`assistant/src/__tests__/runtime-attachment-metadata.test.ts:181` calls `GET http://127.0.0.1:${port}/v1/attachments/${stored.id}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/attachments/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-fbe246c8c6252e28", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/attachments/${stored.id} (assistant/src/__tests__/runtime-attachment-met", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/attachments/${stored.id} (assistant/src/__tests__/runtime-attachment-metadata.test.ts:206)"}, "fullDescription": {"text": "`assistant/src/__tests__/runtime-attachment-metadata.test.ts:206` calls `GET http://127.0.0.1:${port}/v1/attachments/${stored.id}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/attachments/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b6ad0a435553d30b", "name": "Dangling fetch: GET http://127.0.0.1:${port}/v1/attachments/nonexistent-id (assistant/src/__tests__/runtime-attachment-m", "shortDescription": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/attachments/nonexistent-id (assistant/src/__tests__/runtime-attachment-metadata.test.ts:218)"}, "fullDescription": {"text": "`assistant/src/__tests__/runtime-attachment-metadata.test.ts:218` calls `GET http://127.0.0.1:${port}/v1/attachments/nonexistent-id` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/attachments/nonexistent-id`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-cb550b05e068b6f1", "name": "Dangling fetch: POST http://127.0.0.1:${ingressPort}/v1/channels/inbound (assistant/src/__tests__/runtime-attachment-met", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${ingressPort}/v1/channels/inbound (assistant/src/__tests__/runtime-attachment-metadata.test.ts:321)"}, "fullDescription": {"text": "`assistant/src/__tests__/runtime-attachment-metadata.test.ts:321` calls `POST http://127.0.0.1:${ingressPort}/v1/channels/inbound` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/channels/inbound`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e13e6e7aa5988303", "name": "Dangling fetch: POST http://127.0.0.1:${ingressPort}/v1/channels/inbound (assistant/src/__tests__/runtime-attachment-met", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${ingressPort}/v1/channels/inbound (assistant/src/__tests__/runtime-attachment-metadata.test.ts:342)"}, "fullDescription": {"text": "`assistant/src/__tests__/runtime-attachment-metadata.test.ts:342` calls `POST http://127.0.0.1:${ingressPort}/v1/channels/inbound` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/channels/inbound`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-dd21c36f2bcbfd0a", "name": "Dangling fetch: POST http://127.0.0.1:${ingressPort}/v1/channels/inbound (assistant/src/__tests__/runtime-attachment-met", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${ingressPort}/v1/channels/inbound (assistant/src/__tests__/runtime-attachment-metadata.test.ts:368)"}, "fullDescription": {"text": "`assistant/src/__tests__/runtime-attachment-metadata.test.ts:368` calls `POST http://127.0.0.1:${ingressPort}/v1/channels/inbound` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/v1/channels/inbound`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9b52221ed861af7d", "name": "Dangling fetch: GET http://localhost:${server.port} (assistant/src/__tests__/provider-streaming.benchmark.test.ts:266)", "shortDescription": {"text": "Dangling fetch: GET http://localhost:${server.port} (assistant/src/__tests__/provider-streaming.benchmark.test.ts:266)"}, "fullDescription": {"text": "`assistant/src/__tests__/provider-streaming.benchmark.test.ts:266` calls `GET http://localhost:${server.port}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/localhost:/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bf7bfba8f779833e", "name": "Dangling fetch: PATCH /v1/assistants/${encodeURIComponent(assistantId)}/ (assistant/src/platform/sync-identity.ts:81)", "shortDescription": {"text": "Dangling fetch: PATCH /v1/assistants/${encodeURIComponent(assistantId)}/ (assistant/src/platform/sync-identity.ts:81)"}, "fullDescription": {"text": "`assistant/src/platform/sync-identity.ts:81` calls `PATCH /v1/assistants/${encodeURIComponent(assistantId)}/` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/assistants/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ced16a5618cc052e", "name": "Dangling fetch: GET /v1/some/endpoint/ (assistant/src/platform/client.test.ts:132)", "shortDescription": {"text": "Dangling fetch: GET /v1/some/endpoint/ (assistant/src/platform/client.test.ts:132)"}, "fullDescription": {"text": "`assistant/src/platform/client.test.ts:132` calls `GET /v1/some/endpoint/` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/some/endpoint`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-70529e66302d718c", "name": "Dangling fetch: GET /v1/test/ (assistant/src/platform/client.test.ts:145)", "shortDescription": {"text": "Dangling fetch: GET /v1/test/ (assistant/src/platform/client.test.ts:145)"}, "fullDescription": {"text": "`assistant/src/platform/client.test.ts:145` calls `GET /v1/test/` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/test`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8294a4d1bfa6b42f", "name": "Dangling fetch: POST /v1/test/ (assistant/src/platform/client.test.ts:159)", "shortDescription": {"text": "Dangling fetch: POST /v1/test/ (assistant/src/platform/client.test.ts:159)"}, "fullDescription": {"text": "`assistant/src/platform/client.test.ts:159` calls `POST /v1/test/` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/test`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-df493bdc0ad3ad7b", "name": "Dangling fetch: POST /v1/test/ (assistant/src/platform/client.test.ts:175)", "shortDescription": {"text": "Dangling fetch: POST /v1/test/ (assistant/src/platform/client.test.ts:175)"}, "fullDescription": {"text": "`assistant/src/platform/client.test.ts:175` calls `POST /v1/test/` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/test`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0917e5debf25b5c4", "name": "Dangling fetch: POST https://api.fish.audio/v1/tts (assistant/src/calls/fish-audio-client.ts:67)", "shortDescription": {"text": "Dangling fetch: POST https://api.fish.audio/v1/tts (assistant/src/calls/fish-audio-client.ts:67)"}, "fullDescription": {"text": "`assistant/src/calls/fish-audio-client.ts:67` calls `POST https://api.fish.audio/v1/tts` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.fish.audio/v1/tts`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6d17e8affc0aedd8", "name": "Dangling fetch: GET http://${host}:${port}/healthz (assistant/src/daemon/daemon-control.ts:155)", "shortDescription": {"text": "Dangling fetch: GET http://${host}:${port}/healthz (assistant/src/daemon/daemon-control.ts:155)"}, "fullDescription": {"text": "`assistant/src/daemon/daemon-control.ts:155` calls `GET http://${host}:${port}/healthz` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/<p>:/<p>/healthz`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a8bcafb04ec77081", "name": "Dangling fetch: GET https://api.telegram.org/bot${botToken}/deleteWebhook (assistant/src/daemon/handlers/config-telegram", "shortDescription": {"text": "Dangling fetch: GET https://api.telegram.org/bot${botToken}/deleteWebhook (assistant/src/daemon/handlers/config-telegram.ts:276)"}, "fullDescription": {"text": "`assistant/src/daemon/handlers/config-telegram.ts:276` calls `GET https://api.telegram.org/bot${botToken}/deleteWebhook` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.telegram.org/bot/<p>/deletewebhook`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f42cb24533eac344", "name": "Dangling fetch: POST https://api.telegram.org/bot${storedToken}/setMyCommands (assistant/src/daemon/handlers/config-tele", "shortDescription": {"text": "Dangling fetch: POST https://api.telegram.org/bot${storedToken}/setMyCommands (assistant/src/daemon/handlers/config-telegram.ts:351)"}, "fullDescription": {"text": "`assistant/src/daemon/handlers/config-telegram.ts:351` calls `POST https://api.telegram.org/bot${storedToken}/setMyCommands` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.telegram.org/bot/<p>/setmycommands`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-38350248554e4ba1", "name": "Dangling fetch: POST https://slack.com/api/auth.test (assistant/src/daemon/handlers/config-slack-channel.ts:191)", "shortDescription": {"text": "Dangling fetch: POST https://slack.com/api/auth.test (assistant/src/daemon/handlers/config-slack-channel.ts:191)"}, "fullDescription": {"text": "`assistant/src/daemon/handlers/config-slack-channel.ts:191` calls `POST https://slack.com/api/auth.test` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/slack.com/api/auth.test`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bc1331fc866b1119", "name": "Dangling fetch: POST https://slack.com/api/auth.test (assistant/src/daemon/handlers/config-slack-channel.ts:264)", "shortDescription": {"text": "Dangling fetch: POST https://slack.com/api/auth.test (assistant/src/daemon/handlers/config-slack-channel.ts:264)"}, "fullDescription": {"text": "`assistant/src/daemon/handlers/config-slack-channel.ts:264` calls `POST https://slack.com/api/auth.test` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/slack.com/api/auth.test`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d6f90f3f1eb32f90", "name": "Dangling fetch: POST https://slack.com/api/auth.test (assistant/src/daemon/handlers/config-slack-channel.ts:350)", "shortDescription": {"text": "Dangling fetch: POST https://slack.com/api/auth.test (assistant/src/daemon/handlers/config-slack-channel.ts:350)"}, "fullDescription": {"text": "`assistant/src/daemon/handlers/config-slack-channel.ts:350` calls `POST https://slack.com/api/auth.test` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/slack.com/api/auth.test`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-459263f7193264aa", "name": "Dangling fetch: POST /v1/runtime-proxy/email/send/ (assistant/src/runtime/verification-outbound-actions.ts:567)", "shortDescription": {"text": "Dangling fetch: POST /v1/runtime-proxy/email/send/ (assistant/src/runtime/verification-outbound-actions.ts:567)"}, "fullDescription": {"text": "`assistant/src/runtime/verification-outbound-actions.ts:567` calls `POST /v1/runtime-proxy/email/send/` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/runtime-proxy/email/send`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c879cbe71bcf9327", "name": "Dangling fetch: POST https://slack.com/api/auth.test (assistant/src/runtime/channel-readiness-service.ts:299)", "shortDescription": {"text": "Dangling fetch: POST https://slack.com/api/auth.test (assistant/src/runtime/channel-readiness-service.ts:299)"}, "fullDescription": {"text": "`assistant/src/runtime/channel-readiness-service.ts:299` calls `POST https://slack.com/api/auth.test` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/slack.com/api/auth.test`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f68cfcf116f6a990", "name": "Dangling fetch: POST /v1/assistants/${client.platformAssistantId}/domains/ (assistant/src/runtime/routes/domain-routes.t", "shortDescription": {"text": "Dangling fetch: POST /v1/assistants/${client.platformAssistantId}/domains/ (assistant/src/runtime/routes/domain-routes.ts:107)"}, "fullDescription": {"text": "`assistant/src/runtime/routes/domain-routes.ts:107` calls `POST /v1/assistants/${client.platformAssistantId}/domains/` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/assistants/<p>/domains`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-33194170076dbfcd", "name": "Dangling fetch: GET https://api.sanity.io/v2021-06-07/projects (assistant/src/runtime/routes/sanity-routes.ts:55)", "shortDescription": {"text": "Dangling fetch: GET https://api.sanity.io/v2021-06-07/projects (assistant/src/runtime/routes/sanity-routes.ts:55)"}, "fullDescription": {"text": "`assistant/src/runtime/routes/sanity-routes.ts:55` calls `GET https://api.sanity.io/v2021-06-07/projects` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.sanity.io/v2021-06-07/projects`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6f568ae05a2fc832", "name": "Dangling fetch: GET https://api.sanity.io/v2021-06-07/projects/${projectId}/datasets (assistant/src/runtime/routes/sanit", "shortDescription": {"text": "Dangling fetch: GET https://api.sanity.io/v2021-06-07/projects/${projectId}/datasets (assistant/src/runtime/routes/sanity-routes.ts:79)"}, "fullDescription": {"text": "`assistant/src/runtime/routes/sanity-routes.ts:79` calls `GET https://api.sanity.io/v2021-06-07/projects/${projectId}/datasets` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.sanity.io/v2021-06-07/projects/<p>/datasets`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6c3805be619979d0", "name": "Dangling fetch: POST /v1/assistants/${client.platformAssistantId}/email-addresses/ (assistant/src/runtime/routes/email-r", "shortDescription": {"text": "Dangling fetch: POST /v1/assistants/${client.platformAssistantId}/email-addresses/ (assistant/src/runtime/routes/email-routes.ts:44)"}, "fullDescription": {"text": "`assistant/src/runtime/routes/email-routes.ts:44` calls `POST /v1/assistants/${client.platformAssistantId}/email-addresses/` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/assistants/<p>/email-addresses`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e73d695f122ff4d9", "name": "Dangling fetch: DELETE /v1/assistants/${client.platformAssistantId}/email-addresses/${target.id}/ (assistant/src/runtime", "shortDescription": {"text": "Dangling fetch: DELETE /v1/assistants/${client.platformAssistantId}/email-addresses/${target.id}/ (assistant/src/runtime/routes/email-routes.ts:102)"}, "fullDescription": {"text": "`assistant/src/runtime/routes/email-routes.ts:102` calls `DELETE /v1/assistants/${client.platformAssistantId}/email-addresses/${target.id}/` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/assistants/<p>/email-addresses/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b1b39ed229ed70c1", "name": "Dangling fetch: POST /v1/runtime-proxy/email/send/ (assistant/src/runtime/routes/email-routes.ts:298)", "shortDescription": {"text": "Dangling fetch: POST /v1/runtime-proxy/email/send/ (assistant/src/runtime/routes/email-routes.ts:298)"}, "fullDescription": {"text": "`assistant/src/runtime/routes/email-routes.ts:298` calls `POST /v1/runtime-proxy/email/send/` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/runtime-proxy/email/send`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f48b507c5b66b178", "name": "Dangling fetch: GET https://api.twilio.com/2010-04-01/Accounts/${accountSid}.json (assistant/src/runtime/routes/integrat", "shortDescription": {"text": "Dangling fetch: GET https://api.twilio.com/2010-04-01/Accounts/${accountSid}.json (assistant/src/runtime/routes/integrations/twilio.ts:138)"}, "fullDescription": {"text": "`assistant/src/runtime/routes/integrations/twilio.ts:138` calls `GET https://api.twilio.com/2010-04-01/Accounts/${accountSid}.json` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.twilio.com/2010-04-01/accounts/<p>.json`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f025245f7320756b", "name": "Dangling fetch: GET https://api.telegram.org/bot${token}/getMe (assistant/src/runtime/channel-invite-transports/telegram", "shortDescription": {"text": "Dangling fetch: GET https://api.telegram.org/bot${token}/getMe (assistant/src/runtime/channel-invite-transports/telegram.ts:55)"}, "fullDescription": {"text": "`assistant/src/runtime/channel-invite-transports/telegram.ts:55` calls `GET https://api.telegram.org/bot${token}/getMe` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.telegram.org/bot/<p>/getme`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a8fff1156d5a9461", "name": "Dangling fetch: POST https://api.vercel.com/v13/deployments (assistant/src/services/vercel-deploy.ts:31)", "shortDescription": {"text": "Dangling fetch: POST https://api.vercel.com/v13/deployments (assistant/src/services/vercel-deploy.ts:31)"}, "fullDescription": {"text": "`assistant/src/services/vercel-deploy.ts:31` calls `POST https://api.vercel.com/v13/deployments` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.vercel.com/v13/deployments`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9c273c78bf013d6f", "name": "Dangling fetch: GET https://example.com (assistant/src/workflows/sandbox-escape.test.ts:49)", "shortDescription": {"text": "Dangling fetch: GET https://example.com (assistant/src/workflows/sandbox-escape.test.ts:49)"}, "fullDescription": {"text": "`assistant/src/workflows/sandbox-escape.test.ts:49` calls `GET https://example.com` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/example.com`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d82826f8b9354c47", "name": "Dangling fetch: GET http://localhost:${gatewayPort}/healthz (gateway/src/__tests__/credential-watcher-managed-bootstrap.", "shortDescription": {"text": "Dangling fetch: GET http://localhost:${gatewayPort}/healthz (gateway/src/__tests__/credential-watcher-managed-bootstrap.test.ts:140)"}, "fullDescription": {"text": "`gateway/src/__tests__/credential-watcher-managed-bootstrap.test.ts:140` calls `GET http://localhost:${gatewayPort}/healthz` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/localhost:/<p>/healthz`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6cfba89410078909", "name": "Dangling fetch: GET http://localhost:${port}/healthz (gateway/src/__tests__/credential-watcher.test.ts:245)", "shortDescription": {"text": "Dangling fetch: GET http://localhost:${port}/healthz (gateway/src/__tests__/credential-watcher.test.ts:245)"}, "fullDescription": {"text": "`gateway/src/__tests__/credential-watcher.test.ts:245` calls `GET http://localhost:${port}/healthz` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/localhost:/<p>/healthz`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c93347cf654023a3", "name": "Dangling fetch: GET https://api.resend.com/domains (gateway/src/http/routes/resend-identity.ts:24)", "shortDescription": {"text": "Dangling fetch: GET https://api.resend.com/domains (gateway/src/http/routes/resend-identity.ts:24)"}, "fullDescription": {"text": "`gateway/src/http/routes/resend-identity.ts:24` calls `GET https://api.resend.com/domains` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.resend.com/domains`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-27758d6f5fb4cc91", "name": "Dangling fetch: POST https://api.mailgun.net/v3/${mailgunDomainForVerify}/messages (gateway/src/http/routes/mailgun-webh", "shortDescription": {"text": "Dangling fetch: POST https://api.mailgun.net/v3/${mailgunDomainForVerify}/messages (gateway/src/http/routes/mailgun-webhook.ts:402)"}, "fullDescription": {"text": "`gateway/src/http/routes/mailgun-webhook.ts:402` calls `POST https://api.mailgun.net/v3/${mailgunDomainForVerify}/messages` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.mailgun.net/v3/<p>/messages`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bc2bb3978778f8ea", "name": "Dangling fetch: POST https://api.mailgun.net/v3/${mailgunDomain}/messages (gateway/src/http/routes/mailgun-webhook.ts:47", "shortDescription": {"text": "Dangling fetch: POST https://api.mailgun.net/v3/${mailgunDomain}/messages (gateway/src/http/routes/mailgun-webhook.ts:476)"}, "fullDescription": {"text": "`gateway/src/http/routes/mailgun-webhook.ts:476` calls `POST https://api.mailgun.net/v3/${mailgunDomain}/messages` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.mailgun.net/v3/<p>/messages`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f2485c79d21baaa2", "name": "Dangling fetch: GET https://api.resend.com/emails/receiving/${emailId} (gateway/src/http/routes/resend-webhook.ts:130)", "shortDescription": {"text": "Dangling fetch: GET https://api.resend.com/emails/receiving/${emailId} (gateway/src/http/routes/resend-webhook.ts:130)"}, "fullDescription": {"text": "`gateway/src/http/routes/resend-webhook.ts:130` calls `GET https://api.resend.com/emails/receiving/${emailId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.resend.com/emails/receiving/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9608195d31436d3a", "name": "Dangling fetch: POST https://api.resend.com/emails (gateway/src/http/routes/resend-webhook.ts:460)", "shortDescription": {"text": "Dangling fetch: POST https://api.resend.com/emails (gateway/src/http/routes/resend-webhook.ts:460)"}, "fullDescription": {"text": "`gateway/src/http/routes/resend-webhook.ts:460` calls `POST https://api.resend.com/emails` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.resend.com/emails`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-271a3884588ca3d5", "name": "Dangling fetch: POST https://api.resend.com/emails (gateway/src/http/routes/resend-webhook.ts:545)", "shortDescription": {"text": "Dangling fetch: POST https://api.resend.com/emails (gateway/src/http/routes/resend-webhook.ts:545)"}, "fullDescription": {"text": "`gateway/src/http/routes/resend-webhook.ts:545` calls `POST https://api.resend.com/emails` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.resend.com/emails`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0075d4a53b5d3c75", "name": "Dangling fetch: POST https://api.anthropic.com/v1/messages (evals/src/lib/simulator/user-simulator.ts:446)", "shortDescription": {"text": "Dangling fetch: POST https://api.anthropic.com/v1/messages (evals/src/lib/simulator/user-simulator.ts:446)"}, "fullDescription": {"text": "`evals/src/lib/simulator/user-simulator.ts:446` calls `POST https://api.anthropic.com/v1/messages` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.anthropic.com/v1/messages`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-5c625a20e7b9c782", "name": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=loopback-1 (skills/meet-join/bot/__tests__/voice-loop", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=loopback-1 (skills/meet-join/bot/__tests__/voice-loopback.test.ts:194)"}, "fullDescription": {"text": "`skills/meet-join/bot/__tests__/voice-loopback.test.ts:194` calls `POST http://127.0.0.1:${port}/play_audio?stream_id=loopback-1` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/play_audio`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3af4859a53aa9eae", "name": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=loopback-cancel (skills/meet-join/bot/__tests__/voice", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=loopback-cancel (skills/meet-join/bot/__tests__/voice-loopback.test.ts:265)"}, "fullDescription": {"text": "`skills/meet-join/bot/__tests__/voice-loopback.test.ts:265` calls `POST http://127.0.0.1:${port}/play_audio?stream_id=loopback-cancel` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/play_audio`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-64830d4894d787fb", "name": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=s-1 (skills/meet-join/bot/__tests__/audio-playback.te", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=s-1 (skills/meet-join/bot/__tests__/audio-playback.test.ts:275)"}, "fullDescription": {"text": "`skills/meet-join/bot/__tests__/audio-playback.test.ts:275` calls `POST http://127.0.0.1:${port}/play_audio?stream_id=s-1` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/play_audio`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0171d0064fe11b08", "name": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=cancel-me (skills/meet-join/bot/__tests__/audio-playb", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=cancel-me (skills/meet-join/bot/__tests__/audio-playback.test.ts:337)"}, "fullDescription": {"text": "`skills/meet-join/bot/__tests__/audio-playback.test.ts:337` calls `POST http://127.0.0.1:${port}/play_audio?stream_id=cancel-me` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/play_audio`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e181ab4bb8b99bf7", "name": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio (skills/meet-join/bot/__tests__/audio-playback.test.ts:394)", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio (skills/meet-join/bot/__tests__/audio-playback.test.ts:394)"}, "fullDescription": {"text": "`skills/meet-join/bot/__tests__/audio-playback.test.ts:394` calls `POST http://127.0.0.1:${port}/play_audio` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/play_audio`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-968f49abda1d73aa", "name": "Dangling fetch: DELETE http://127.0.0.1:${port}/play_audio/nonexistent (skills/meet-join/bot/__tests__/audio-playback.te", "shortDescription": {"text": "Dangling fetch: DELETE http://127.0.0.1:${port}/play_audio/nonexistent (skills/meet-join/bot/__tests__/audio-playback.test.ts:416)"}, "fullDescription": {"text": "`skills/meet-join/bot/__tests__/audio-playback.test.ts:416` calls `DELETE http://127.0.0.1:${port}/play_audio/nonexistent` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/play_audio/nonexistent`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f0dad8bc89d8bc51", "name": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=a (skills/meet-join/bot/__tests__/audio-playback.test", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=a (skills/meet-join/bot/__tests__/audio-playback.test.ts:460)"}, "fullDescription": {"text": "`skills/meet-join/bot/__tests__/audio-playback.test.ts:460` calls `POST http://127.0.0.1:${port}/play_audio?stream_id=a` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/play_audio`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a384630fd537ed5a", "name": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=b (skills/meet-join/bot/__tests__/audio-playback.test", "shortDescription": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=b (skills/meet-join/bot/__tests__/audio-playback.test.ts:479)"}, "fullDescription": {"text": "`skills/meet-join/bot/__tests__/audio-playback.test.ts:479` calls `POST http://127.0.0.1:${port}/play_audio?stream_id=b` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/http:/127.0.0.1:/<p>/play_audio`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-800ebdb9f4fed2b0", "name": "Unused endpoint: POST /leave", "shortDescription": {"text": "Unused endpoint: POST /leave"}, "fullDescription": {"text": "`skills/meet-join/bot/src/control/http-server.ts` declares `POST /leave` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7ed94fea3820e14a", "name": "Unused endpoint: POST /send_chat", "shortDescription": {"text": "Unused endpoint: POST /send_chat"}, "fullDescription": {"text": "`skills/meet-join/bot/src/control/http-server.ts` declares `POST /send_chat` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b45b22a28ccb1481", "name": "Unused endpoint: POST /play_audio", "shortDescription": {"text": "Unused endpoint: POST /play_audio"}, "fullDescription": {"text": "`skills/meet-join/bot/src/control/http-server.ts` declares `POST /play_audio` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0d3acbf1b7157110", "name": "Unused endpoint: DELETE /play_audio/:streamId", "shortDescription": {"text": "Unused endpoint: DELETE /play_audio/:streamId"}, "fullDescription": {"text": "`skills/meet-join/bot/src/control/http-server.ts` declares `DELETE /play_audio/:streamId` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f03e54843bf47915", "name": "Unused endpoint: POST /avatar/viseme", "shortDescription": {"text": "Unused endpoint: POST /avatar/viseme"}, "fullDescription": {"text": "`skills/meet-join/bot/src/control/http-server.ts` declares `POST /avatar/viseme` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d775a4c09c2ac235", "name": "Unused endpoint: POST /avatar/enable", "shortDescription": {"text": "Unused endpoint: POST /avatar/enable"}, "fullDescription": {"text": "`skills/meet-join/bot/src/control/http-server.ts` declares `POST /avatar/enable` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-311426870b947388", "name": "Unused endpoint: POST /avatar/disable", "shortDescription": {"text": "Unused endpoint: POST /avatar/disable"}, "fullDescription": {"text": "`skills/meet-join/bot/src/control/http-server.ts` declares `POST /avatar/disable` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/22186"}, "properties": {"repository": "vellum-ai/vellum-assistant", "repoUrl": "https://github.com/vellum-ai/vellum-assistant", "branch": "main"}, "results": [{"ruleId": "scanner-20e436d4618428a7", "level": "note", "message": {"text": "Possibly dead Python function: drain_stderr"}, "properties": {"repobilityId": "3bfd5e9176f2c4dd", "scanner": "scanner-primary", "fingerprint": "20e436d4618428a7", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "evals/src/lib/egress/connection-telemetry/connection_tailer.py:179"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5da9ecae6aad8bf2", "level": "note", "message": {"text": "Possibly dead Python function: check_robots"}, "properties": {"repobilityId": "84fb57b4bfb5c0d3", "scanner": "scanner-primary", "fingerprint": "5da9ecae6aad8bf2", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/geo-audit/scripts/audit.py:148"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cfe5210bccd336fe", "level": "note", "message": {"text": "Possibly dead Python function: check_llms_txt"}, "properties": {"repobilityId": "35faf491776f9433", "scanner": "scanner-primary", "fingerprint": "cfe5210bccd336fe", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/geo-audit/scripts/audit.py:230"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0fb286c87dd00fcc", "level": "note", "message": {"text": "Possibly dead Python function: check_ssr"}, "properties": {"repobilityId": "2c96b93c54b34dc9", "scanner": "scanner-primary", "fingerprint": "0fb286c87dd00fcc", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/geo-audit/scripts/audit.py:276"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e488d15f4b2218da", "level": "note", "message": {"text": "Possibly dead Python function: check_sitemap"}, "properties": {"repobilityId": "4b56de8cc481bd6c", "scanner": "scanner-primary", "fingerprint": "e488d15f4b2218da", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/geo-audit/scripts/audit.py:337"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4e34b757c597dc70", "level": "note", "message": {"text": "Possibly dead Python function: check_schema"}, "properties": {"repobilityId": "7e411f52f1e815e8", "scanner": "scanner-primary", "fingerprint": "4e34b757c597dc70", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/geo-audit/scripts/audit.py:386"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d77ba306d031b790", "level": "note", "message": {"text": "Possibly dead Python function: check_links"}, "properties": {"repobilityId": "ffc3ff8d24a0511a", "scanner": "scanner-primary", "fingerprint": "d77ba306d031b790", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/geo-audit/scripts/audit.py:461"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e9131baf6a9499e9", "level": "note", "message": {"text": "Possibly dead Python function: do_GET"}, "properties": {"repobilityId": "2d943bb45e4f13bd", "scanner": "scanner-primary", "fingerprint": "e9131baf6a9499e9", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/vellum-github-app-setup/scripts/create-github-app.py:410"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-017cf43a10ba1a69", "level": "note", "message": {"text": "Possibly dead Python function: log_message"}, "properties": {"repobilityId": "965f3150b4af5b2e", "scanner": "scanner-primary", "fingerprint": "017cf43a10ba1a69", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/vellum-github-app-setup/scripts/create-github-app.py:480"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1561a204676c5a4d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 credential-executor/src/cli.ts:72"}, "properties": {"repobilityId": "fb7647a0760e63bf", "scanner": "scanner-primary", "fingerprint": "1561a204676c5a4d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-03bbd7f36fe8a0cb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 credential-executor/src/__tests__/transport.test.ts:212"}, "properties": {"repobilityId": "bc852f3afcd7f14d", "scanner": "scanner-primary", "fingerprint": "03bbd7f36fe8a0cb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-933dbf7f9885bd39", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 benchmarking/gateway/bench-proxy.ts:57"}, "properties": {"repobilityId": "e7aa9235922d640f", "scanner": "scanner-primary", "fingerprint": "933dbf7f9885bd39", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c00f038b52e9f321", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 benchmarking/gateway/bench-webhook.ts:73"}, "properties": {"repobilityId": "3326c5deb7378f49", "scanner": "scanner-primary", "fingerprint": "c00f038b52e9f321", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3b0fec112c8198a4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/scripts/transform-daemon-spec.ts:227"}, "properties": {"repobilityId": "70a24364987872db", "scanner": "scanner-primary", "fingerprint": "3b0fec112c8198a4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-59a9c9f570d70912", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/scripts/ensure-fresh-vite.ts:69"}, "properties": {"repobilityId": "44f8c916e700a46c", "scanner": "scanner-primary", "fingerprint": "59a9c9f570d70912", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fe4cf7ff45d916b2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/scripts/run-tests.ts:67"}, "properties": {"repobilityId": "c4684d2447c53eb6", "scanner": "scanner-primary", "fingerprint": "fe4cf7ff45d916b2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4057c05128c358a3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/scripts/transform-gateway-spec.ts:91"}, "properties": {"repobilityId": "6415530d503aace8", "scanner": "scanner-primary", "fingerprint": "4057c05128c358a3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e633089d7a8df7f3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/src/utils/sandbox-bridge.test.ts:55"}, "properties": {"repobilityId": "4fcca6391f256331", "scanner": "scanner-primary", "fingerprint": "e633089d7a8df7f3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-311536755b41cbc3", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/collapsible-nav-section.tsx:119"}, "properties": {"repobilityId": "c78b16f798e9df91", "scanner": "scanner-primary", "fingerprint": "311536755b41cbc3", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-67f9b7e72e3b08cd", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/dictation-overlay-page.tsx:54"}, "properties": {"repobilityId": "1deed62132c5258e", "scanner": "scanner-primary", "fingerprint": "67f9b7e72e3b08cd", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-25ed565fd592e78c", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/components/avatar-renderer.tsx:40"}, "properties": {"repobilityId": "9b8924e99c727661", "scanner": "scanner-primary", "fingerprint": "25ed565fd592e78c", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-4b3c8c4c4c989fcf", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/sidebar-shell.tsx:94"}, "properties": {"repobilityId": "b496a13f1d1f7e80", "scanner": "scanner-primary", "fingerprint": "4b3c8c4c4c989fcf", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-9bb11d8f3d06ab23", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/app-card.tsx:68"}, "properties": {"repobilityId": "2ded471bcf9bf8b4", "scanner": "scanner-primary", "fingerprint": "9bb11d8f3d06ab23", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-d42de03d4726b0a8", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/components/command-palette/command-palette-item.tsx:58"}, "properties": {"repobilityId": "e796a133d353563b", "scanner": "scanner-primary", "fingerprint": "d42de03d4726b0a8", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-c5cbb7cbf49a6dd1", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/pages/BundleConfirmPage.tsx:62"}, "properties": {"repobilityId": "4d34df84df137616", "scanner": "scanner-primary", "fingerprint": "c5cbb7cbf49a6dd1", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-0b3bc04ff0645e74", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/managed-oauth-tab.tsx:97"}, "properties": {"repobilityId": "a8ee43b514084fb1", "scanner": "scanner-primary", "fingerprint": "0b3bc04ff0645e74", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-5400eabafb8134ac", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/system-tasks-section.tsx:62"}, "properties": {"repobilityId": "f81a7d9de79eee57", "scanner": "scanner-primary", "fingerprint": "5400eabafb8134ac", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-530e8dc114edc45d", "level": "note", "message": {"text": "\"active\" state uses light bg in a dark theme \u2014 apps/web/src/domains/settings/components/integration-detail-modal.tsx:276"}, "properties": {"repobilityId": "89ab2235d355bab0", "scanner": "scanner-primary", "fingerprint": "530e8dc114edc45d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.active-light-bg"]}}, {"ruleId": "scanner-02afd6de1df55d87", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/schedule-row.tsx:74"}, "properties": {"repobilityId": "3d0d12c82a9a25cd", "scanner": "scanner-primary", "fingerprint": "02afd6de1df55d87", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-0ec9eef05ecf8291", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/recent-runs-card.tsx:69"}, "properties": {"repobilityId": "fe9ba7cef770b76f", "scanner": "scanner-primary", "fingerprint": "0ec9eef05ecf8291", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-e6ec5f90df289e58", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/assistant-picker.tsx:48"}, "properties": {"repobilityId": "de36fbff472058b7", "scanner": "scanner-primary", "fingerprint": "e6ec5f90df289e58", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-03d02e1fa58c6eee", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/your-own-oauth-tab.tsx:365"}, "properties": {"repobilityId": "ed1b5ad2a9a64be7", "scanner": "scanner-primary", "fingerprint": "03d02e1fa58c6eee", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-75e555dbb7497260", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/timezone-picker.tsx:265"}, "properties": {"repobilityId": "23254b3db129dec8", "scanner": "scanner-primary", "fingerprint": "75e555dbb7497260", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-680b77bf5f1fe5b9", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/integration-row.tsx:117"}, "properties": {"repobilityId": "416c818e0947808b", "scanner": "scanner-primary", "fingerprint": "680b77bf5f1fe5b9", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-e0935aeb7c3b0fe2", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/device-row.tsx:32"}, "properties": {"repobilityId": "daf07e6a3aeaa5e3", "scanner": "scanner-primary", "fingerprint": "e0935aeb7c3b0fe2", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-4b03da6b97a6dc37", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/trust-rules/trust-rules-modal.tsx:225"}, "properties": {"repobilityId": "48adbb3044cf5eb5", "scanner": "scanner-primary", "fingerprint": "4b03da6b97a6dc37", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-391feb0b26fc2b7a", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/components/panels/assistant-lifecycle-panel.tsx:252"}, "properties": {"repobilityId": "e3573c4590c6c9ea", "scanner": "scanner-primary", "fingerprint": "391feb0b26fc2b7a", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-d4eccb07ca8a5d36", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/src/domains/settings/components/billing-usage/billing-usage-chart.stories.tsx:127"}, "properties": {"repobilityId": "2fc6102e1486a428", "scanner": "scanner-primary", "fingerprint": "d4eccb07ca8a5d36", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e6341427b0f41753", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/keyboard-shortcuts/keyboard-shortcuts-page.tsx:69"}, "properties": {"repobilityId": "2336cac82a372c52", "scanner": "scanner-primary", "fingerprint": "e6341427b0f41753", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-0af79250d1581b59", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/pages/archive-page.tsx:73"}, "properties": {"repobilityId": "10784cc14fa5e6b8", "scanner": "scanner-primary", "fingerprint": "0af79250d1581b59", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-7c305751218f6242", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/pages/bookmarks-page.tsx:82"}, "properties": {"repobilityId": "e97787d4fe7d66ea", "scanner": "scanner-primary", "fingerprint": "7c305751218f6242", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-642121c192ef81c1", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/settings/pages/notifications-page.tsx:224"}, "properties": {"repobilityId": "737388a98d5f91c5", "scanner": "scanner-primary", "fingerprint": "642121c192ef81c1", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-3561256085f9dc60", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/library/library-page.tsx:15"}, "properties": {"repobilityId": "28a70ee189568b2f", "scanner": "scanner-primary", "fingerprint": "3561256085f9dc60", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-1d2512e9a3d27d56", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/library/components/library-document-card.tsx:39"}, "properties": {"repobilityId": "e769c3b8c83fb5ac", "scanner": "scanner-primary", "fingerprint": "1d2512e9a3d27d56", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-b1c3cbd01c52d1b7", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/library/components/library-app-card.tsx:121"}, "properties": {"repobilityId": "d9ccc31bfbc08e0a", "scanner": "scanner-primary", "fingerprint": "b1c3cbd01c52d1b7", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-981d6f1feea1e825", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/intelligence-layout.tsx:58"}, "properties": {"repobilityId": "48e4875d114afdf3", "scanner": "scanner-primary", "fingerprint": "981d6f1feea1e825", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-2ce0b54bdf39a31e", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/plugin-detail-page.tsx:303"}, "properties": {"repobilityId": "8603e117009f49d0", "scanner": "scanner-primary", "fingerprint": "2ce0b54bdf39a31e", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-01ec275b9a7d9482", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/constellation-view/node-popover.tsx:51"}, "properties": {"repobilityId": "995b0fdb5ae0c448", "scanner": "scanner-primary", "fingerprint": "01ec275b9a7d9482", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-6b3d8ae983119712", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/skills/skill-detail-mobile.tsx:125"}, "properties": {"repobilityId": "d4ed5dc75b384594", "scanner": "scanner-primary", "fingerprint": "6b3d8ae983119712", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-a6084e0d8519e2c7", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/skills/skill-row.tsx:55"}, "properties": {"repobilityId": "1dd519a06ef491a4", "scanner": "scanner-primary", "fingerprint": "a6084e0d8519e2c7", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-2bd4981032153004", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/skills/skill-detail.tsx:209"}, "properties": {"repobilityId": "da012b249c13516b", "scanner": "scanner-primary", "fingerprint": "2bd4981032153004", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-80dace493f24e7fb", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/plugins/catalog-row.tsx:31"}, "properties": {"repobilityId": "0214deec110b5179", "scanner": "scanner-primary", "fingerprint": "80dace493f24e7fb", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-fa173e8b17a597d5", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/intelligence/components/plugins/plugin-row.tsx:39"}, "properties": {"repobilityId": "c56a54f4ecb92950", "scanner": "scanner-primary", "fingerprint": "fa173e8b17a597d5", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-3e2a86e912b2f237", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/workspace/components/workspace-file-viewer.tsx:163"}, "properties": {"repobilityId": "30a2bb1c1c2399eb", "scanner": "scanner-primary", "fingerprint": "3e2a86e912b2f237", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-5a6dbc98982151b5", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/workspace/components/workspace-tree.tsx:290"}, "properties": {"repobilityId": "6b3b6257f7bdc3c9", "scanner": "scanner-primary", "fingerprint": "5a6dbc98982151b5", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-06c2bafd4f365565", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/chat-conversation-header.tsx:112"}, "properties": {"repobilityId": "ca68d58a19091329", "scanner": "scanner-primary", "fingerprint": "06c2bafd4f365565", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-bf68865181ffbc2c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/src/domains/chat/api/debug-api.ts:67"}, "properties": {"repobilityId": "506594278342faf7", "scanner": "scanner-primary", "fingerprint": "bf68865181ffbc2c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c7a0ca2767152ac2", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/chat/utils/sanitize-display-messages.ts:35"}, "properties": {"repobilityId": "3d09123ec1f6728a", "scanner": "scanner-primary", "fingerprint": "c7a0ca2767152ac2", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-27407714551400d1", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/chat/utils/sanitize-display-messages.test.ts:60"}, "properties": {"repobilityId": "a20e874aabca1f04", "scanner": "scanner-primary", "fingerprint": "27407714551400d1", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-3ce24cc9e94e6750", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/web/src/domains/chat/utils/debug-api.ts:875"}, "properties": {"repobilityId": "72663104fdeb3345", "scanner": "scanner-primary", "fingerprint": "3ce24cc9e94e6750", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-53bfd1af406a201c", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/tool-detail-panel.tsx:149"}, "properties": {"repobilityId": "f7b65ce63a624a1f", "scanner": "scanner-primary", "fingerprint": "53bfd1af406a201c", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-98d4c64b16aa6ea3", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/subagent-detail-panel.tsx:170"}, "properties": {"repobilityId": "c89b30333e1d926f", "scanner": "scanner-primary", "fingerprint": "98d4c64b16aa6ea3", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-f466c94ef5cb2c08", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/document-viewer-container.tsx:304"}, "properties": {"repobilityId": "771fa6781c562382", "scanner": "scanner-primary", "fingerprint": "f466c94ef5cb2c08", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-77c3ed8a6c750e2d", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/queued-messages-drawer.tsx:60"}, "properties": {"repobilityId": "5b0691a243c66c97", "scanner": "scanner-primary", "fingerprint": "77c3ed8a6c750e2d", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-2cb8a0e4c3bfa633", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/document-comment-thread.tsx:107"}, "properties": {"repobilityId": "c1d4127186c17ee5", "scanner": "scanner-primary", "fingerprint": "2cb8a0e4c3bfa633", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-dde55d50bcc53298", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-rule-editor-modal.tsx:429"}, "properties": {"repobilityId": "98484e9ab078cbb6", "scanner": "scanner-primary", "fingerprint": "dde55d50bcc53298", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-2300e374868e9a4d", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/slack-channel-footer.tsx:37"}, "properties": {"repobilityId": "9cf703e3e6627012", "scanner": "scanner-primary", "fingerprint": "2300e374868e9a4d", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-9ced9ecfc9cd9cdd", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/multi-activity-group/multi-activity-group.tsx:418"}, "properties": {"repobilityId": "be6b70ba7ff42813", "scanner": "scanner-primary", "fingerprint": "9ced9ecfc9cd9cdd", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-e065de81e9da8805", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/tool-call-chip/tool-call-chip.tsx:350"}, "properties": {"repobilityId": "9dce8d9420c0147c", "scanner": "scanner-primary", "fingerprint": "e065de81e9da8805", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-16b2e829fe1ec9bc", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-composer/chat-composer.tsx:558"}, "properties": {"repobilityId": "e48ca59ef3c710f7", "scanner": "scanner-primary", "fingerprint": "16b2e829fe1ec9bc", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-b927df7871637c34", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/tool-progress-card/tool-step-pill.tsx:160"}, "properties": {"repobilityId": "c66f2c471e052919", "scanner": "scanner-primary", "fingerprint": "b927df7871637c34", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-14ca2bebbe2ea858", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/tool-progress-card/phase-grouped-step-list.tsx:643"}, "properties": {"repobilityId": "9f78b84a6e378bd4", "scanner": "scanner-primary", "fingerprint": "14ca2bebbe2ea858", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-5d83819c854c06d0", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/single-activity/single-activity.tsx:184"}, "properties": {"repobilityId": "1ec1c53b7cecccf2", "scanner": "scanner-primary", "fingerprint": "5d83819c854c06d0", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-3086eaadbeae9595", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/web-search/web-search-step-row.tsx:74"}, "properties": {"repobilityId": "ea65b1cfcbd90733", "scanner": "scanner-primary", "fingerprint": "3086eaadbeae9595", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-6cdbcdafed228717", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/web-search/favicon-chip.tsx:95"}, "properties": {"repobilityId": "d2cd1134b2e3e8f6", "scanner": "scanner-primary", "fingerprint": "6cdbcdafed228717", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-a9ce18d3a65f3f08", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/surfaces/copy-block-surface.tsx:37"}, "properties": {"repobilityId": "4ed7a31a0b23d86f", "scanner": "scanner-primary", "fingerprint": "a9ce18d3a65f3f08", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-f92cfa9cca9f23c8", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/surfaces/work-result-surface.tsx:282"}, "properties": {"repobilityId": "51aa6086cf3f81dd", "scanner": "scanner-primary", "fingerprint": "f92cfa9cca9f23c8", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-3c6c967518c0afe7", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/surfaces/file-upload-surface.tsx:325"}, "properties": {"repobilityId": "09b6a52ad840726f", "scanner": "scanner-primary", "fingerprint": "3c6c967518c0afe7", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-8645514ce6bbd3cd", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/chat-attachments.tsx:57"}, "properties": {"repobilityId": "bb7aea5f08b8ea48", "scanner": "scanner-primary", "fingerprint": "8645514ce6bbd3cd", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-7dfa650b984bfb9e", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/attachment-loading-chip.tsx:34"}, "properties": {"repobilityId": "50ae7ce30b1941d7", "scanner": "scanner-primary", "fingerprint": "7dfa650b984bfb9e", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-35af0b7095562be2", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/attachment-chip.tsx:97"}, "properties": {"repobilityId": "062578a9eb879e9b", "scanner": "scanner-primary", "fingerprint": "35af0b7095562be2", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-1a582c01c05fb3bf", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/attachment-preview-modal.tsx:334"}, "properties": {"repobilityId": "10a6dfc5abaed656", "scanner": "scanner-primary", "fingerprint": "1a582c01c05fb3bf", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-d87861772103f959", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/components/chat-attachments/message-attachment-square.tsx:96"}, "properties": {"repobilityId": "95b1af91c0d8028c", "scanner": "scanner-primary", "fingerprint": "d87861772103f959", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-b429520fc1a0b197", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/chat/components/chat-attachments/text-preview.tsx:195"}, "properties": {"repobilityId": "9266c812eb8cb838", "scanner": "scanner-primary", "fingerprint": "b429520fc1a0b197", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-8518bf2e8adc89f1", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/chat/hooks/use-stream-event-handler.ts:334"}, "properties": {"repobilityId": "755bcb9abd33fd32", "scanner": "scanner-primary", "fingerprint": "8518bf2e8adc89f1", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-cac5544ac048d813", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 apps/web/src/domains/chat/transcript/use-transcript-scroll.ts:94"}, "properties": {"repobilityId": "e81c6f994f306678", "scanner": "scanner-primary", "fingerprint": "cac5544ac048d813", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-16b12194da745301", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/inspect-page.tsx:335"}, "properties": {"repobilityId": "9772fe8f34bc91de", "scanner": "scanner-primary", "fingerprint": "16b12194da745301", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-3ba3965790a14cdc", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/components/cache-breakpoint-map-card.tsx:105"}, "properties": {"repobilityId": "5e20d196d1417194", "scanner": "scanner-primary", "fingerprint": "3ba3965790a14cdc", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-42a2f6dc1013a6fc", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/components/tool-definitions-content.tsx:58"}, "properties": {"repobilityId": "81f266eec82dd486", "scanner": "scanner-primary", "fingerprint": "42a2f6dc1013a6fc", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-f72a9c4fc1370f98", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/components/tabs/memory-tab.tsx:287"}, "properties": {"repobilityId": "0a5ed003720e6d4b", "scanner": "scanner-primary", "fingerprint": "f72a9c4fc1370f98", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-770ab6a1b06e0cd9", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/chat/inspector/components/tabs/prompt-tab.tsx:192"}, "properties": {"repobilityId": "61e9843da6b5814a", "scanner": "scanner-primary", "fingerprint": "770ab6a1b06e0cd9", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-b38c0b6e4131668e", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/logs/components/emails-tab.tsx:164"}, "properties": {"repobilityId": "97df8407248ffcbb", "scanner": "scanner-primary", "fingerprint": "b38c0b6e4131668e", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-dffa84d7aed30d13", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/logs/components/usage-trend-chart.tsx:189"}, "properties": {"repobilityId": "22e3d347e1323bed", "scanner": "scanner-primary", "fingerprint": "dffa84d7aed30d13", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-4cab7806962336b7", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/home/home-greeting-header.tsx:45"}, "properties": {"repobilityId": "39322787773c94b3", "scanner": "scanner-primary", "fingerprint": "4cab7806962336b7", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-9b8b6f4f3be4e310", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/home/detail-panel/home-detail-panel.tsx:193"}, "properties": {"repobilityId": "c3f82ff6f9795378", "scanner": "scanner-primary", "fingerprint": "9b8b6f4f3be4e310", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-a7c392ebe8251048", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/terminal/components/terminal-toolbar.tsx:48"}, "properties": {"repobilityId": "5d29a9ada28bb0bd", "scanner": "scanner-primary", "fingerprint": "a7c392ebe8251048", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-bf5a9ca92d29c465", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/onboarding/cast/cast-starter.tsx:306"}, "properties": {"repobilityId": "3f0f4e4a833a8d33", "scanner": "scanner-primary", "fingerprint": "bf5a9ca92d29c465", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-ee1254e8c9211a8f", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/onboarding/cast/cast-avatar.tsx:43"}, "properties": {"repobilityId": "170312d1cda9bb08", "scanner": "scanner-primary", "fingerprint": "ee1254e8c9211a8f", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-9d5f0db6e76409bd", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/account/pages/oauth-complete-page.tsx:257"}, "properties": {"repobilityId": "d40355cc6a476423", "scanner": "scanner-primary", "fingerprint": "9d5f0db6e76409bd", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-909a2d1ed59f23ac", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/web/src/domains/account/pages/oauth-popup-complete-page.tsx:261"}, "properties": {"repobilityId": "84c0ee770749ed58", "scanner": "scanner-primary", "fingerprint": "909a2d1ed59f23ac", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-5c3e476d82a9e685", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/contacts/components/contact-channels-section.tsx:297"}, "properties": {"repobilityId": "7a40349b57335b3d", "scanner": "scanner-primary", "fingerprint": "5c3e476d82a9e685", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-a32cdf955eb87b1f", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/contacts/components/contacts-list.tsx:187"}, "properties": {"repobilityId": "5376056d574fe597", "scanner": "scanner-primary", "fingerprint": "a32cdf955eb87b1f", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-081f9bddf64a52a3", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/web/src/domains/contacts/components/contact-merge-dialog.tsx:202"}, "properties": {"repobilityId": "556e029985e89516", "scanner": "scanner-primary", "fingerprint": "081f9bddf64a52a3", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-bad6c46a188858d5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/install-file-deps.ts:71"}, "properties": {"repobilityId": "35506429208531d5", "scanner": "scanner-primary", "fingerprint": "bad6c46a188858d5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cef9e7df9c62e94a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/reclaim-dev-port.ts:72"}, "properties": {"repobilityId": "dcca0eda456c949e", "scanner": "scanner-primary", "fingerprint": "cef9e7df9c62e94a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0a7a28dfa93af2bf", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/afterSign.js:130"}, "properties": {"repobilityId": "fa82a5a2cf61d5b6", "scanner": "scanner-primary", "fingerprint": "0a7a28dfa93af2bf", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-850b332eb67eee9f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/dev.ts:64"}, "properties": {"repobilityId": "79ff55c8c025b150", "scanner": "scanner-primary", "fingerprint": "850b332eb67eee9f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fcfa59a19f1832c6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/prepare-electron-dev-app.ts:111"}, "properties": {"repobilityId": "c135771975868a79", "scanner": "scanner-primary", "fingerprint": "fcfa59a19f1832c6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-01191f9d2936476f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/afterPack.js:71"}, "properties": {"repobilityId": "5672752294e5424b", "scanner": "scanner-primary", "fingerprint": "01191f9d2936476f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8fe2333640d23c8c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/macos/scripts/run-tests.ts:75"}, "properties": {"repobilityId": "54a0c71312b900d0", "scanner": "scanner-primary", "fingerprint": "8fe2333640d23c8c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-eac00f3e41c94c94", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-release-notes.ts:99"}, "properties": {"repobilityId": "642fe9c01e63044f", "scanner": "scanner-primary", "fingerprint": "eac00f3e41c94c94", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2d14283b46950ade", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/create-hotfix-branch.ts:48"}, "properties": {"repobilityId": "499861b1202a0de2", "scanner": "scanner-primary", "fingerprint": "2d14283b46950ade", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-26884ed9630eab10", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/docker-login-with-retry.ts:31"}, "properties": {"repobilityId": "74079900322e2270", "scanner": "scanner-primary", "fingerprint": "26884ed9630eab10", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2f2a7ffc1c512f30", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/staging-docker-upload.ts:186"}, "properties": {"repobilityId": "4f8a38c3895d9f21", "scanner": "scanner-primary", "fingerprint": "2f2a7ffc1c512f30", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-81f1173b4d50a3fe", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/gcr-publish.ts:158"}, "properties": {"repobilityId": "2c04df6cf7c7a744", "scanner": "scanner-primary", "fingerprint": "81f1173b4d50a3fe", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-59f2286bc96ea674", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-emoji-catalog.ts:319"}, "properties": {"repobilityId": "36d446467d32fc5f", "scanner": "scanner-primary", "fingerprint": "59f2286bc96ea674", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1cb8a7999d921a66", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/service-communication/generate-matrix.ts:137"}, "properties": {"repobilityId": "01760c717568db8b", "scanner": "scanner-primary", "fingerprint": "1cb8a7999d921a66", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-334cb74068221b6c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/index.ts:84"}, "properties": {"repobilityId": "6be0a382ee9892de", "scanner": "scanner-primary", "fingerprint": "334cb74068221b6c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-94c895a82b47fcc9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/adapters/openclaw-http-server.ts:35"}, "properties": {"repobilityId": "ef1fee29de2e6c14", "scanner": "scanner-primary", "fingerprint": "94c895a82b47fcc9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-796a087e7fbbd89d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/login.ts:297"}, "properties": {"repobilityId": "c080d6676113fb78", "scanner": "scanner-primary", "fingerprint": "796a087e7fbbd89d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3113b080d82d81e9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/use.ts:14"}, "properties": {"repobilityId": "320a8b5a36ea46aa", "scanner": "scanner-primary", "fingerprint": "3113b080d82d81e9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-20873e5e376914c3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/hatch.ts:215"}, "properties": {"repobilityId": "20fadcdb577506b9", "scanner": "scanner-primary", "fingerprint": "20873e5e376914c3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9ae3e9ed0e7427f5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/sleep.ts:52"}, "properties": {"repobilityId": "8cf05c9b4d33ddaf", "scanner": "scanner-primary", "fingerprint": "9ae3e9ed0e7427f5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-acbd6e9682236c6f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/rollback.ts:46"}, "properties": {"repobilityId": "5bbc23cd18105e0c", "scanner": "scanner-primary", "fingerprint": "acbd6e9682236c6f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b9646f24e9d652dd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/confirm.ts:16"}, "properties": {"repobilityId": "2ec862d184a6f798", "scanner": "scanner-primary", "fingerprint": "b9646f24e9d652dd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c72937a08f11e031", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/recover.ts:24"}, "properties": {"repobilityId": "8a5bf80e5974282f", "scanner": "scanner-primary", "fingerprint": "c72937a08f11e031", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-26e46a122155d435", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/wake.ts:28"}, "properties": {"repobilityId": "666f86490168084d", "scanner": "scanner-primary", "fingerprint": "26e46a122155d435", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d39dd926daf36827", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/env.ts:10"}, "properties": {"repobilityId": "69e7d7562e37b28f", "scanner": "scanner-primary", "fingerprint": "d39dd926daf36827", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0311663363a2c5f6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/terminal.ts:31"}, "properties": {"repobilityId": "635c48a36468fbb1", "scanner": "scanner-primary", "fingerprint": "0311663363a2c5f6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-afa1943e4fb6bdfd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/message.ts:15"}, "properties": {"repobilityId": "64f3e3d0ca04cb25", "scanner": "scanner-primary", "fingerprint": "afa1943e4fb6bdfd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c6886354db52cd3f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/flags.ts:53"}, "properties": {"repobilityId": "74f4f35518d5e39b", "scanner": "scanner-primary", "fingerprint": "c6886354db52cd3f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4ba087160cd33f35", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/ssh.ts:27"}, "properties": {"repobilityId": "dd1e5f1ee19ab953", "scanner": "scanner-primary", "fingerprint": "4ba087160cd33f35", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6744b8009e4b294f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/nginx-ingress.ts:34"}, "properties": {"repobilityId": "b4a3b798b55f3c0f", "scanner": "scanner-primary", "fingerprint": "6744b8009e4b294f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d54d3b791e42d643", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/backup.ts:25"}, "properties": {"repobilityId": "0a9558d7be6822bd", "scanner": "scanner-primary", "fingerprint": "d54d3b791e42d643", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-dc89786b5253256e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/clean.ts:7"}, "properties": {"repobilityId": "765d56ad7a460185", "scanner": "scanner-primary", "fingerprint": "dc89786b5253256e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9a9e94bb1e39084f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/connect.ts:4"}, "properties": {"repobilityId": "f8cd5ab2a12f99e4", "scanner": "scanner-primary", "fingerprint": "9a9e94bb1e39084f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7a3398c6b9bfb6cf", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/devices.ts:42"}, "properties": {"repobilityId": "8ede9004ee3269aa", "scanner": "scanner-primary", "fingerprint": "7a3398c6b9bfb6cf", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f5d0d3c0afa31dcb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/client.ts:266"}, "properties": {"repobilityId": "9e56785aa6bbb27b", "scanner": "scanner-primary", "fingerprint": "f5d0d3c0afa31dcb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7d62f6e17e4ac88d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/exec.ts:64"}, "properties": {"repobilityId": "a1b3a35374ca078e", "scanner": "scanner-primary", "fingerprint": "7d62f6e17e4ac88d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-555525ba30b9a39c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/pair.ts:41"}, "properties": {"repobilityId": "2975076acf909b19", "scanner": "scanner-primary", "fingerprint": "555525ba30b9a39c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-265f38da9ad5c94c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/gateway.ts:4"}, "properties": {"repobilityId": "7f77f8eb7e90eccd", "scanner": "scanner-primary", "fingerprint": "265f38da9ad5c94c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f72a0f0e09b99c1b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/retire.ts:54"}, "properties": {"repobilityId": "9f58b91ae8c228fd", "scanner": "scanner-primary", "fingerprint": "f72a0f0e09b99c1b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1a44f90fa2360a37", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/setup.ts:93"}, "properties": {"repobilityId": "dcb98c15e68bab32", "scanner": "scanner-primary", "fingerprint": "1a44f90fa2360a37", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0440d24a522b3d72", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/upgrade.ts:87"}, "properties": {"repobilityId": "eaec3c3c2337ccf9", "scanner": "scanner-primary", "fingerprint": "0440d24a522b3d72", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6fb9598cd8069fb4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/unpair.ts:27"}, "properties": {"repobilityId": "daf19a0ac9f9aaa0", "scanner": "scanner-primary", "fingerprint": "6fb9598cd8069fb4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8656c8f4af0dd151", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/roadmap.ts:5"}, "properties": {"repobilityId": "fad5df90eb128fae", "scanner": "scanner-primary", "fingerprint": "8656c8f4af0dd151", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-80e82a799f082396", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/logs.ts:30"}, "properties": {"repobilityId": "693d4a43bc4a8003", "scanner": "scanner-primary", "fingerprint": "80e82a799f082396", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3effff8b660ea42c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/events.ts:15"}, "properties": {"repobilityId": "69e9fb058b923909", "scanner": "scanner-primary", "fingerprint": "3effff8b660ea42c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b248532083b88484", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/workflows.ts:67"}, "properties": {"repobilityId": "74b418e29be8a56d", "scanner": "scanner-primary", "fingerprint": "b248532083b88484", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5373a329e0641ab0", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 cli/src/commands/teleport.ts:711"}, "properties": {"repobilityId": "109f4904ab2e756e", "scanner": "scanner-primary", "fingerprint": "5373a329e0641ab0", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-fc7b3d84b51b2cab", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/teleport.ts:59"}, "properties": {"repobilityId": "314f77db3a425da6", "scanner": "scanner-primary", "fingerprint": "fc7b3d84b51b2cab", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6a2dba35cc4f3590", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/restore.ts:22"}, "properties": {"repobilityId": "c0dd9bf58f835b82", "scanner": "scanner-primary", "fingerprint": "6a2dba35cc4f3590", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-437f13325ee3c2d9", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 cli/src/commands/ps.ts:512"}, "properties": {"repobilityId": "7d4a0e649435e498", "scanner": "scanner-primary", "fingerprint": "437f13325ee3c2d9", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-f85315a7e45d3e79", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/ps.ts:83"}, "properties": {"repobilityId": "d9e6567e91886b93", "scanner": "scanner-primary", "fingerprint": "f85315a7e45d3e79", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ab44bf57f762f8b4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/tunnel.ts:30"}, "properties": {"repobilityId": "7b30f08c3186da53", "scanner": "scanner-primary", "fingerprint": "ab44bf57f762f8b4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-99ad9d2b0dbd4b92", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/connect/import.ts:26"}, "properties": {"repobilityId": "05f2713ffd4e1527", "scanner": "scanner-primary", "fingerprint": "99ad9d2b0dbd4b92", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cfdc9f5087be1142", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/commands/gateway/token.ts:11"}, "properties": {"repobilityId": "25db9c1ebbee92a9", "scanner": "scanner-primary", "fingerprint": "cfdc9f5087be1142", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-89da2ff9275c822d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/components/DefaultMainScreen.tsx:961"}, "properties": {"repobilityId": "7c6a18e6317f6ae3", "scanner": "scanner-primary", "fingerprint": "89da2ff9275c822d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7f6748468b08a78d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/lifecycle-reporter.ts:28"}, "properties": {"repobilityId": "97fbd6cc59172915", "scanner": "scanner-primary", "fingerprint": "7f6748468b08a78d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e8928d63f7f38b6a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/local.ts:265"}, "properties": {"repobilityId": "3a3fe5ac1fe150fe", "scanner": "scanner-primary", "fingerprint": "e8928d63f7f38b6a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3918106bdf681ec6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/retire-apple-container.ts:16"}, "properties": {"repobilityId": "4357804c08faa136", "scanner": "scanner-primary", "fingerprint": "3918106bdf681ec6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4d12b8366eaa2e3e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/aws.ts:391"}, "properties": {"repobilityId": "22acd98f3a096114", "scanner": "scanner-primary", "fingerprint": "4d12b8366eaa2e3e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1a4015a657d78293", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/ngrok.ts:276"}, "properties": {"repobilityId": "3a22254f9a3ba330", "scanner": "scanner-primary", "fingerprint": "1a4015a657d78293", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2d4a94a0ac24c63e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/upgrade-lifecycle.ts:258"}, "properties": {"repobilityId": "5d0deda72b708b80", "scanner": "scanner-primary", "fingerprint": "2d4a94a0ac24c63e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-64f0f4277daf2f32", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/cloudflare-tunnel.ts:201"}, "properties": {"repobilityId": "88bbac978921b44e", "scanner": "scanner-primary", "fingerprint": "64f0f4277daf2f32", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-abca371a97a073ca", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/gcp.ts:179"}, "properties": {"repobilityId": "fdadaad92867f8dc", "scanner": "scanner-primary", "fingerprint": "abca371a97a073ca", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d2517a20e75d096c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/ssh-apple-container.ts:32"}, "properties": {"repobilityId": "11c1328b2f67956b", "scanner": "scanner-primary", "fingerprint": "d2517a20e75d096c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-09e77824f5f95164", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/process.ts:125"}, "properties": {"repobilityId": "c2f3078ec06d4902", "scanner": "scanner-primary", "fingerprint": "09e77824f5f95164", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fc387b567f4446f1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/hatch-local.ts:107"}, "properties": {"repobilityId": "6bc660ae06e5b6ee", "scanner": "scanner-primary", "fingerprint": "fc387b567f4446f1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-16834753a298fb44", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 cli/src/lib/docker.ts:126"}, "properties": {"repobilityId": "827d6268c506ffff", "scanner": "scanner-primary", "fingerprint": "16834753a298fb44", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8503cbd3e74eb978", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 meta/feature-flags/sync-bundled-copies.ts:24"}, "properties": {"repobilityId": "55b520145a148c21", "scanner": "scanner-primary", "fingerprint": "8503cbd3e74eb978", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-394aa3c8e01229ad", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/bottom-sheet.tsx:131"}, "properties": {"repobilityId": "85b42725773a28c8", "scanner": "scanner-primary", "fingerprint": "394aa3c8e01229ad", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-92fee8ebf7f09439", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/menu.tsx:128"}, "properties": {"repobilityId": "75c566e25aebad91", "scanner": "scanner-primary", "fingerprint": "92fee8ebf7f09439", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-58bdb97dcaa52bcd", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/context-menu.tsx:106"}, "properties": {"repobilityId": "3c96cf18ffd9cffe", "scanner": "scanner-primary", "fingerprint": "58bdb97dcaa52bcd", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-bb16c6c533fbede4", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/dropdown.tsx:352"}, "properties": {"repobilityId": "b5c5c934347d8f1d", "scanner": "scanner-primary", "fingerprint": "bb16c6c533fbede4", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-cdc206296c030454", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/modal.tsx:163"}, "properties": {"repobilityId": "bcc61d5cef3dd219", "scanner": "scanner-primary", "fingerprint": "cdc206296c030454", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-7128f46634562c9f", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/side-menu/side-menu.tsx:585"}, "properties": {"repobilityId": "4b6c2ef27fb7fb1b", "scanner": "scanner-primary", "fingerprint": "7128f46634562c9f", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-9df2486c18d62791", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 packages/design-library/src/components/panel-item/marquee-text.tsx:78"}, "properties": {"repobilityId": "e8bcce5e962b589a", "scanner": "scanner-primary", "fingerprint": "9df2486c18d62791", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-51e0a001801c187b", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 clients/chrome-extension/popup/screens/ActivityScreen.tsx:94"}, "properties": {"repobilityId": "8c1476dbf19bdaf6", "scanner": "scanner-primary", "fingerprint": "51e0a001801c187b", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-784eca28422ee6fe", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 clients/chrome-extension/popup/screens/main/AssistantInfoBar.tsx:19"}, "properties": {"repobilityId": "8112695128a46066", "scanner": "scanner-primary", "fingerprint": "784eca28422ee6fe", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-5edf6ab8a7f84691", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 clients/chrome-extension/background/worker.ts:670"}, "properties": {"repobilityId": "fe190e785c048e33", "scanner": "scanner-primary", "fingerprint": "5edf6ab8a7f84691", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ffa39e4d68bf674f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/generate-openapi.ts:607"}, "properties": {"repobilityId": "a112e5eeb7f1d998", "scanner": "scanner-primary", "fingerprint": "ffa39e4d68bf674f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-613efaee6ed2a022", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/build-plugin-api.ts:175"}, "properties": {"repobilityId": "ede48f7827f6ea54", "scanner": "scanner-primary", "fingerprint": "613efaee6ed2a022", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c8b08d7516d3b8bc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/sync-llm-catalog.ts:144"}, "properties": {"repobilityId": "0f3bc933d2712414", "scanner": "scanner-primary", "fingerprint": "c8b08d7516d3b8bc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-68fa1a51af1ccbbe", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/memory-inspect.ts:88"}, "properties": {"repobilityId": "8deabfc0aea7faa7", "scanner": "scanner-primary", "fingerprint": "68fa1a51af1ccbbe", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-08792045c47628d0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/generate-bundled-tool-registry.ts:214"}, "properties": {"repobilityId": "0c42fcfcf5174b1c", "scanner": "scanner-primary", "fingerprint": "08792045c47628d0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c7a48a583dd11d1d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/sync-web-search-catalog.ts:117"}, "properties": {"repobilityId": "76b7aa41dc4d56f4", "scanner": "scanner-primary", "fingerprint": "c7a48a583dd11d1d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2358742191780b17", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/check-circular-deps.ts:43"}, "properties": {"repobilityId": "85de9cbc99622441", "scanner": "scanner-primary", "fingerprint": "2358742191780b17", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b69aac74b8aedc57", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/scripts/capture-x-graphql.ts:245"}, "properties": {"repobilityId": "f05ff26398727850", "scanner": "scanner-primary", "fingerprint": "b69aac74b8aedc57", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ee76ff7a38fb3509", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/app-bundler.test.ts:77"}, "properties": {"repobilityId": "3a6b59c207406211", "scanner": "scanner-primary", "fingerprint": "ee76ff7a38fb3509", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-33b4b06589e25f0e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/skill-projection.benchmark.test.ts:292"}, "properties": {"repobilityId": "ba4fed098195b07d", "scanner": "scanner-primary", "fingerprint": "33b4b06589e25f0e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5c6edfe927667fb1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/token-estimator-accuracy.benchmark.test.ts:1271"}, "properties": {"repobilityId": "ac8dea96a1a21296", "scanner": "scanner-primary", "fingerprint": "5c6edfe927667fb1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0af4626f380b7a07", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/email-html-renderer.test.ts:33"}, "properties": {"repobilityId": "e02c28aa053c8c7b", "scanner": "scanner-primary", "fingerprint": "0af4626f380b7a07", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f4ce6056ddf342c8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/file-list-tool.test.ts:78"}, "properties": {"repobilityId": "5779747f350fcdc6", "scanner": "scanner-primary", "fingerprint": "f4ce6056ddf342c8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d143e7e0a2841f6e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/edit-engine.test.ts:148"}, "properties": {"repobilityId": "e029d8c432c62e29", "scanner": "scanner-primary", "fingerprint": "d143e7e0a2841f6e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-704dcc5b74cae8ec", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/turn-commit.test.ts:165"}, "properties": {"repobilityId": "90bd11c16987a88b", "scanner": "scanner-primary", "fingerprint": "704dcc5b74cae8ec", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1b35650b8a307e2e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/workspace-lifecycle.test.ts:179"}, "properties": {"repobilityId": "99bb468b365dc208", "scanner": "scanner-primary", "fingerprint": "1b35650b8a307e2e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cb87f87784a9b7c0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/__tests__/app-compiler.test.ts:101"}, "properties": {"repobilityId": "c5f4fac9f1d4d630", "scanner": "scanner-primary", "fingerprint": "cb87f87784a9b7c0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-004ce0559fd60d82", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/mcp/manager.ts:20"}, "properties": {"repobilityId": "670516838c35c85f", "scanner": "scanner-primary", "fingerprint": "004ce0559fd60d82", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-13abbcff2755b57f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/mcp/mcp-oauth-provider.ts:304"}, "properties": {"repobilityId": "0d01f012e3d39380", "scanner": "scanner-primary", "fingerprint": "13abbcff2755b57f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-55cd826111e60e7a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/plugins.ts:105"}, "properties": {"repobilityId": "a97cff47f031d85e", "scanner": "scanner-primary", "fingerprint": "55cd826111e60e7a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0c50f1a103edeffd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/skills.ts:36"}, "properties": {"repobilityId": "aaf0b468aaa92fea", "scanner": "scanner-primary", "fingerprint": "0c50f1a103edeffd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d9153649516dacfd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/pending.ts:77"}, "properties": {"repobilityId": "975cd0a88bc34026", "scanner": "scanner-primary", "fingerprint": "d9153649516dacfd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d47e3c7d9cb69f8e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/audit.ts:58"}, "properties": {"repobilityId": "252b4e95663d16f5", "scanner": "scanner-primary", "fingerprint": "d47e3c7d9cb69f8e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-493d50ab26b69c06", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/tools.ts:81"}, "properties": {"repobilityId": "a3b7aea19e5ef476", "scanner": "scanner-primary", "fingerprint": "493d50ab26b69c06", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-07aec8ad4ca6348c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/routes.ts:99"}, "properties": {"repobilityId": "b5b76100cbfcebc4", "scanner": "scanner-primary", "fingerprint": "07aec8ad4ca6348c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-01f196be60ded691", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/cli/commands/sequence.ts:118"}, "properties": {"repobilityId": "2de62142ec700458", "scanner": "scanner-primary", "fingerprint": "01f196be60ded691", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fec691b73564e632", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/memory/migrations/180-backfill-inline-attachments-to-disk.ts:62"}, "properties": {"repobilityId": "c408ff14b31b08f0", "scanner": "scanner-primary", "fingerprint": "fec691b73564e632", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-388bcb06809439f3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/memory/migrations/191-backfill-audio-attachment-mime-types.ts:44"}, "properties": {"repobilityId": "84c0aabf209c0630", "scanner": "scanner-primary", "fingerprint": "388bcb06809439f3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bbf77dafaffb00cd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/memory/migrations/206-scrub-corrupted-image-attachments.ts:50"}, "properties": {"repobilityId": "46e44793e76d2186", "scanner": "scanner-primary", "fingerprint": "bbf77dafaffb00cd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-34fcf864e0aa7bd0", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 assistant/src/memory/graph/extraction.ts:1098"}, "properties": {"repobilityId": "80c7f80d0cd383ed", "scanner": "scanner-primary", "fingerprint": "34fcf864e0aa7bd0", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-9d90c7a189ca2b2c", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 assistant/src/runtime/assistant-event-hub.ts:649"}, "properties": {"repobilityId": "7758aae24a7569ad", "scanner": "scanner-primary", "fingerprint": "9d90c7a189ca2b2c", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-c1a9df778d74766e", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 assistant/src/runtime/routes/identity-routes.ts:370"}, "properties": {"repobilityId": "e42fe5955857069f", "scanner": "scanner-primary", "fingerprint": "c1a9df778d74766e", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-8b0ad9870e963036", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/workflows/journal-store.test.ts:48"}, "properties": {"repobilityId": "b8fa9b6eed7ca6dc", "scanner": "scanner-primary", "fingerprint": "8b0ad9870e963036", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-dde2930b9fc27c7d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/workflows/sandbox.test.ts:137"}, "properties": {"repobilityId": "8b87d6f21149cb71", "scanner": "scanner-primary", "fingerprint": "dde2930b9fc27c7d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d8a952b8991e5383", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/tools/skills/sandbox-runner.ts:24"}, "properties": {"repobilityId": "08b8a41dd4d99686", "scanner": "scanner-primary", "fingerprint": "d8a952b8991e5383", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bdbfd8a1fa200fa2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assistant/src/plugins/defaults/memory-v3-shadow/__tests__/carry-integration.test.ts:1159"}, "properties": {"repobilityId": "edacf9203bcd4c31", "scanner": "scanner-primary", "fingerprint": "bdbfd8a1fa200fa2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d7bc292f4363a6d5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 gateway/scripts/generate-openapi.ts:135"}, "properties": {"repobilityId": "e99562763b1f80ec", "scanner": "scanner-primary", "fingerprint": "d7bc292f4363a6d5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-83807c025b9df027", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 gateway/src/__tests__/text-to-blocks.test.ts:152"}, "properties": {"repobilityId": "037fac70eb2674ec", "scanner": "scanner-primary", "fingerprint": "83807c025b9df027", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3672d429e35823f9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 gateway/src/cli/schema.ts:8"}, "properties": {"repobilityId": "2695983b3a13d9df", "scanner": "scanner-primary", "fingerprint": "3672d429e35823f9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3655ec5a66fc1a38", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 gateway/src/cli/enable-proxy.ts:35"}, "properties": {"repobilityId": "8ad57588bfa2f159", "scanner": "scanner-primary", "fingerprint": "3655ec5a66fc1a38", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5d3f1255a0edcae4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 gateway/src/risk/risk-classifier-parity.test.ts:187"}, "properties": {"repobilityId": "f70da0d7b8a992ec", "scanner": "scanner-primary", "fingerprint": "5d3f1255a0edcae4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8f82322f510b3920", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 gateway/src/risk/bash-risk-classifier.ts:287"}, "properties": {"repobilityId": "b85e0e3828ac49fb", "scanner": "scanner-primary", "fingerprint": "8f82322f510b3920", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-633cc8158b18bffe", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/commands/run.ts:150"}, "properties": {"repobilityId": "aaaa4493786cbd7e", "scanner": "scanner-primary", "fingerprint": "633cc8158b18bffe", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d1bccf217f522a7f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/commands/export.ts:85"}, "properties": {"repobilityId": "1cb551b726291b4d", "scanner": "scanner-primary", "fingerprint": "d1bccf217f522a7f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-554241811f466b70", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/commands/server.ts:510"}, "properties": {"repobilityId": "eeddce4ee38624cd", "scanner": "scanner-primary", "fingerprint": "554241811f466b70", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f5153148d73270c0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/commands/list.ts:20"}, "properties": {"repobilityId": "00928aed005963fc", "scanner": "scanner-primary", "fingerprint": "f5153148d73270c0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6015c8267016bdfd", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 evals/src/lib/report-html.tsx:2027"}, "properties": {"repobilityId": "64330aac62c0fc85", "scanner": "scanner-primary", "fingerprint": "6015c8267016bdfd", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-5673a605086fa3bd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/lib/adapters/__tests__/vellum-app-page.test.ts:26"}, "properties": {"repobilityId": "23a882b35266a653", "scanner": "scanner-primary", "fingerprint": "5673a605086fa3bd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-109c6b06943ce8f6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/lib/__tests__/vellum-adapter.test.ts:943"}, "properties": {"repobilityId": "04024a76b5e7d147", "scanner": "scanner-primary", "fingerprint": "109c6b06943ce8f6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8130fb75200e4412", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/lib/runner/run-once.ts:712"}, "properties": {"repobilityId": "9dd0d47ebab1fc68", "scanner": "scanner-primary", "fingerprint": "8130fb75200e4412", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-18350a08939be75b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 evals/src/lib/runner/progress.ts:12"}, "properties": {"repobilityId": "00648e9d538b5bc0", "scanner": "scanner-primary", "fingerprint": "18350a08939be75b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ca8f90e4c37ec55d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/outlook/scripts/outlook-email.ts:80"}, "properties": {"repobilityId": "dce28c53e697017d", "scanner": "scanner-primary", "fingerprint": "ca8f90e4c37ec55d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c2dd7b6d26c3dc12", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/outlook-calendar/scripts/outlook-cal.ts:69"}, "properties": {"repobilityId": "7dd6fcca3bd0d1b5", "scanner": "scanner-primary", "fingerprint": "c2dd7b6d26c3dc12", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f181c3262907e84a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/resend-setup/scripts/check-config.ts:22"}, "properties": {"repobilityId": "d5e099709f84465b", "scanner": "scanner-primary", "fingerprint": "f181c3262907e84a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fab754a3eed71a37", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/resend-setup/scripts/setup-webhook.ts:74"}, "properties": {"repobilityId": "cd450c24dc8aa81a", "scanner": "scanner-primary", "fingerprint": "fab754a3eed71a37", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ef62a23e76b13764", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/mailgun-setup/scripts/check-config.ts:22"}, "properties": {"repobilityId": "44decd7eae5730ec", "scanner": "scanner-primary", "fingerprint": "ef62a23e76b13764", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a1406d0aa37b6a49", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/mailgun-setup/scripts/setup-webhook.ts:87"}, "properties": {"repobilityId": "dd3499718bd94547", "scanner": "scanner-primary", "fingerprint": "a1406d0aa37b6a49", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-804d2cf103eb41fa", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/bot/scripts/build-bot.ts:14"}, "properties": {"repobilityId": "ebfeb29252346a32", "scanner": "scanner-primary", "fingerprint": "804d2cf103eb41fa", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3351339d64c86d23", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/bot/src/main.ts:370"}, "properties": {"repobilityId": "85c6af82269020fb", "scanner": "scanner-primary", "fingerprint": "3351339d64c86d23", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-780466a22c44eaa7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/scripts/emit-manifest.ts:356"}, "properties": {"repobilityId": "9903eed1324e523a", "scanner": "scanner-primary", "fingerprint": "780466a22c44eaa7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-11c5d4e2539fb1c0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/meet-controller-ext/scripts/build.ts:42"}, "properties": {"repobilityId": "b799ac19b0320c27", "scanner": "scanner-primary", "fingerprint": "11c5d4e2539fb1c0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-413db66df7857fc6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/meet-controller-ext/src/content.ts:44"}, "properties": {"repobilityId": "9aede2e0857b914f", "scanner": "scanner-primary", "fingerprint": "413db66df7857fc6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3b165003b4a6b2a3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/meet-controller-ext/src/background.ts:11"}, "properties": {"repobilityId": "19481601fe1f970a", "scanner": "scanner-primary", "fingerprint": "3b165003b4a6b2a3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-21bf9c5b9d70aa3a", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 skills/meet-join/meet-controller-ext/src/dom/selectors.ts:26"}, "properties": {"repobilityId": "ee950e3c6e54c72d", "scanner": "scanner-primary", "fingerprint": "21bf9c5b9d70aa3a", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-8aa8a1d9cf675aed", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 skills/meet-join/meet-controller-ext/src/features/participants.ts:199"}, "properties": {"repobilityId": "e7536cad0a1dbfd3", "scanner": "scanner-primary", "fingerprint": "8aa8a1d9cf675aed", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-dcafec0ebe52361d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/meet-controller-ext/src/features/avatar.ts:167"}, "properties": {"repobilityId": "ab0bc51e47f8f915", "scanner": "scanner-primary", "fingerprint": "dcafec0ebe52361d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3528ab946d6ef39e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/meet-join/daemon/__tests__/consent-monitor-live.test.ts:277"}, "properties": {"repobilityId": "8d6432dc40b5d485", "scanner": "scanner-primary", "fingerprint": "3528ab946d6ef39e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-81d85deca1d4df4e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/stripe-app-setup/scripts/check-config.ts:22"}, "properties": {"repobilityId": "fae7c732cfdd4958", "scanner": "scanner-primary", "fingerprint": "81d85deca1d4df4e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e3a25251e38b39f9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/sentry-app-setup/scripts/check-config.ts:23"}, "properties": {"repobilityId": "6a53950be443657d", "scanner": "scanner-primary", "fingerprint": "e3a25251e38b39f9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-50c6f70fa51d8047", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/slack-app-setup/scripts/build-manifest-url.ts:130"}, "properties": {"repobilityId": "638369e005ee7c64", "scanner": "scanner-primary", "fingerprint": "50c6f70fa51d8047", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-84876da2cdbfd25e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/gmail/scripts/gmail-email.ts:116"}, "properties": {"repobilityId": "12294e6f06c06387", "scanner": "scanner-primary", "fingerprint": "84876da2cdbfd25e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-df63f0e8ebdf5eb1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/google-calendar/scripts/gcal.ts:335"}, "properties": {"repobilityId": "b33c5bbeb6d7e783", "scanner": "scanner-primary", "fingerprint": "df63f0e8ebdf5eb1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-845140bd8130871a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/discord-app-setup/scripts/check-config.ts:34"}, "properties": {"repobilityId": "d65fd417e745758d", "scanner": "scanner-primary", "fingerprint": "845140bd8130871a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d50937cfb9552e33", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/discord-app-setup/scripts/validate-token.ts:85"}, "properties": {"repobilityId": "7dd961f55adfe677", "scanner": "scanner-primary", "fingerprint": "d50937cfb9552e33", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d2564d7d73cdbbb3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 skills/discord-app-setup/scripts/print-invite-url.ts:103"}, "properties": {"repobilityId": "7b38b4ec5b0b7ecb", "scanner": "scanner-primary", "fingerprint": "d2564d7d73cdbbb3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ba60f17ce4de1d8a", "level": "warning", "message": {"text": "Privileged port 256 in use"}, "properties": {"repobilityId": "0ec1f2d0c9e6da94", "scanner": "scanner-primary", "fingerprint": "ba60f17ce4de1d8a", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "credential-executor/Dockerfile"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-74f2e038947cadd1", "level": "warning", "message": {"text": "Privileged port 1001 in use"}, "properties": {"repobilityId": "eb126d41479634e4", "scanner": "scanner-primary", "fingerprint": "74f2e038947cadd1", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "packages/block-volume-bootstrap/scripts/vellum-block-volume-init.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c6d9600a6eede061", "level": "warning", "message": {"text": "Privileged port 733 in use"}, "properties": {"repobilityId": "717c693b07bf8de5", "scanner": "scanner-primary", "fingerprint": "c6d9600a6eede061", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "gateway/Dockerfile"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3d658c9586e620c8", "level": "warning", "message": {"text": "Privileged port 11 in use"}, "properties": {"repobilityId": "5b3038c67fabb4c8", "scanner": "scanner-primary", "fingerprint": "3d658c9586e620c8", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "evals/src/lib/egress/recording/apply-recording-jail.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8a4b26195a1acd01", "level": "error", "message": {"text": "Dockerfile pipes a remote installer into a shell"}, "properties": {"repobilityId": "49b8a4d99513e793", "scanner": "scanner-primary", "fingerprint": "8a4b26195a1acd01", "layer": "hardware", "severity": "high", "confidence": 1.0, "tags": ["supply-chain", "docker", "remote-installer"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "credential-executor/Dockerfile"}, "region": {"startLine": 13}}}]}, {"ruleId": "scanner-f8f447c8899e0125", "level": "warning", "message": {"text": "Dockerfile runs as root: assistant/Dockerfile"}, "properties": {"repobilityId": "1455680b7acc51ac", "scanner": "scanner-primary", "fingerprint": "f8f447c8899e0125", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-3c713e67723783f7", "level": "error", "message": {"text": "Dockerfile pipes a remote installer into a shell"}, "properties": {"repobilityId": "1eb818c250e73b1c", "scanner": "scanner-primary", "fingerprint": "3c713e67723783f7", "layer": "hardware", "severity": "high", "confidence": 1.0, "tags": ["supply-chain", "docker", "remote-installer"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/Dockerfile"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-5567a681b28df273", "level": "warning", "message": {"text": "Dockerfile runs as root: evals/src/lib/adapters/hermes-image/Dockerfile"}, "properties": {"repobilityId": "7a049478f38a49b6", "scanner": "scanner-primary", "fingerprint": "5567a681b28df273", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-31ba561e1e5a1a4e", "level": "warning", "message": {"text": "Dockerfile runs as root: evals/src/lib/egress/recording/Dockerfile"}, "properties": {"repobilityId": "14ba78a9d0983ce3", "scanner": "scanner-primary", "fingerprint": "31ba561e1e5a1a4e", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-66a0585390bbd893", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: mitmproxy/mitmproxy:11.0.2"}, "properties": {"repobilityId": "cc467d5acd81b016", "scanner": "scanner-primary", "fingerprint": "66a0585390bbd893", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "evals/src/lib/egress/recording/Dockerfile"}, "region": {"startLine": 17}}}]}, {"ruleId": "scanner-4cfd0e36e1300ee5", "level": "warning", "message": {"text": "Dockerfile runs as root: evals/src/lib/egress/connection-telemetry/Dockerfile"}, "properties": {"repobilityId": "f4b6b7cb95390215", "scanner": "scanner-primary", "fingerprint": "4cfd0e36e1300ee5", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-0b35634df9b92c62", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: python:3.12-alpine"}, "properties": {"repobilityId": "989bf9b1b756e703", "scanner": "scanner-primary", "fingerprint": "0b35634df9b92c62", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "evals/src/lib/egress/connection-telemetry/Dockerfile"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-59b186ce129c2dd9", "level": "warning", "message": {"text": "Dockerfile runs as root: skills/meet-join/bot/Dockerfile"}, "properties": {"repobilityId": "e6581188e3df0ac3", "scanner": "scanner-primary", "fingerprint": "59b186ce129c2dd9", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"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-e557a571f62c8585", "level": "error", "message": {"text": "Insecure pattern 'private_key_in_repo' in credential-executor/src/__tests__/command-workspace.test.ts:794"}, "properties": {"repobilityId": "0ebe97948aaffe15", "scanner": "scanner-primary", "fingerprint": "e557a571f62c8585", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["owasp", "private_key_in_repo"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "credential-executor/src/__tests__/command-workspace.test.ts"}, "region": {"startLine": 794}}}]}, {"ruleId": "scanner-2daa1bca2cbc490d", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in credential-executor/src/http/log-export-routes.test.ts:23"}, "properties": {"repobilityId": "dac1dd9f7fbe5f4b", "scanner": "scanner-primary", "fingerprint": "2daa1bca2cbc490d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "credential-executor/src/http/log-export-routes.test.ts"}, "region": {"startLine": 23}}}]}, {"ruleId": "scanner-c11bfe754eeffd98", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in credential-executor/src/http/log-export-routes.ts:13"}, "properties": {"repobilityId": "2281abf238cf6303", "scanner": "scanner-primary", "fingerprint": "c11bfe754eeffd98", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "credential-executor/src/http/log-export-routes.ts"}, "region": {"startLine": 13}}}]}, {"ruleId": "scanner-2c119ee7bee52d51", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/web/scripts/postinstall.ts:33"}, "properties": {"repobilityId": "a9ae71893d7974a8", "scanner": "scanner-primary", "fingerprint": "2c119ee7bee52d51", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/scripts/postinstall.ts"}, "region": {"startLine": 33}}}]}, {"ruleId": "scanner-8ae94a81141400f3", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in apps/web/src/stores/auth-store.ts:747"}, "properties": {"repobilityId": "4934ed1f96ad1748", "scanner": "scanner-primary", "fingerprint": "8ae94a81141400f3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/stores/auth-store.ts"}, "region": {"startLine": 747}}}]}, {"ruleId": "scanner-1092c5a25bd267b9", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in apps/web/src/utils/storage-migration.test.ts:217"}, "properties": {"repobilityId": "d8c3b9693ea71d1a", "scanner": "scanner-primary", "fingerprint": "1092c5a25bd267b9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/utils/storage-migration.test.ts"}, "region": {"startLine": 217}}}]}, {"ruleId": "scanner-9080c9ad7349ea17", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/components/avatar-renderer.tsx:40"}, "properties": {"repobilityId": "0f10002e810d2e59", "scanner": "scanner-primary", "fingerprint": "9080c9ad7349ea17", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/components/avatar-renderer.tsx"}, "region": {"startLine": 40}}}]}, {"ruleId": "scanner-21ceae64a4560203", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in apps/web/src/lib/api-interceptors.test.ts:51"}, "properties": {"repobilityId": "20d202843c939753", "scanner": "scanner-primary", "fingerprint": "21ceae64a4560203", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/lib/api-interceptors.test.ts"}, "region": {"startLine": 51}}}]}, {"ruleId": "scanner-36a2d22a8561fed0", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in apps/web/src/lib/auth/session-cleanup.test.ts:18"}, "properties": {"repobilityId": "6933e266b454bf58", "scanner": "scanner-primary", "fingerprint": "36a2d22a8561fed0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/lib/auth/session-cleanup.test.ts"}, "region": {"startLine": 18}}}]}, {"ruleId": "scanner-05b43031f4368020", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in apps/web/src/runtime/native-auth.ts:204"}, "properties": {"repobilityId": "1d356e20232217e2", "scanner": "scanner-primary", "fingerprint": "05b43031f4368020", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/runtime/native-auth.ts"}, "region": {"startLine": 204}}}]}, {"ruleId": "scanner-893721067f418a0d", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/chat/components/chat-attachments/text-preview.tsx:195"}, "properties": {"repobilityId": "6316a54776764a0e", "scanner": "scanner-primary", "fingerprint": "893721067f418a0d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/domains/chat/components/chat-attachments/text-preview.tsx"}, "region": {"startLine": 195}}}]}, {"ruleId": "scanner-50ec782c21337f8e", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/web/src/domains/chat/voice/use-push-to-talk.test.tsx:41"}, "properties": {"repobilityId": "1fee647580258d95", "scanner": "scanner-primary", "fingerprint": "50ec782c21337f8e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/domains/chat/voice/use-push-to-talk.test.tsx"}, "region": {"startLine": 41}}}]}, {"ruleId": "scanner-8513c42e9d8e4cf8", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/web/src/domains/chat/transcript/use-transcript-scroll.burst.test.tsx:95"}, "properties": {"repobilityId": "400e17121eb68a18", "scanner": "scanner-primary", "fingerprint": "8513c42e9d8e4cf8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/domains/chat/transcript/use-transcript-scroll.burst.test.tsx"}, "region": {"startLine": 95}}}]}, {"ruleId": "scanner-fe12cb465a0916e2", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/onboarding/cast/cast-starter.tsx:306"}, "properties": {"repobilityId": "0d4b3e2fff05ca7b", "scanner": "scanner-primary", "fingerprint": "fe12cb465a0916e2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/domains/onboarding/cast/cast-starter.tsx"}, "region": {"startLine": 306}}}]}, {"ruleId": "scanner-95aaa542c163473f", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/onboarding/cast/cast-avatar.tsx:43"}, "properties": {"repobilityId": "8288491c3294e66d", "scanner": "scanner-primary", "fingerprint": "95aaa542c163473f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/domains/onboarding/cast/cast-avatar.tsx"}, "region": {"startLine": 43}}}]}, {"ruleId": "scanner-b08255c564f87198", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in apps/web/src/domains/account/pages/platform-loopback-page.tsx:56"}, "properties": {"repobilityId": "bcb875fb0c15454c", "scanner": "scanner-primary", "fingerprint": "b08255c564f87198", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/domains/account/pages/platform-loopback-page.tsx"}, "region": {"startLine": 56}}}]}, {"ruleId": "scanner-1b12e059210ffd01", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/account/pages/oauth-complete-page.tsx:257"}, "properties": {"repobilityId": "f5bfa5818f244cd2", "scanner": "scanner-primary", "fingerprint": "1b12e059210ffd01", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/domains/account/pages/oauth-complete-page.tsx"}, "region": {"startLine": 257}}}]}, {"ruleId": "scanner-eb3ae34b61e7c2a2", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/web/src/domains/account/pages/oauth-popup-complete-page.tsx:261"}, "properties": {"repobilityId": "ef00112dfea10a3f", "scanner": "scanner-primary", "fingerprint": "eb3ae34b61e7c2a2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/src/domains/account/pages/oauth-popup-complete-page.tsx"}, "region": {"startLine": 261}}}]}, {"ruleId": "scanner-1ce5caa2b9c0a167", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/electron.vite.config.ts:1"}, "properties": {"repobilityId": "4cbe1c0d94ed481a", "scanner": "scanner-primary", "fingerprint": "1ce5caa2b9c0a167", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/electron.vite.config.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b35eeafa386d6330", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/scripts/install-file-deps.ts:21"}, "properties": {"repobilityId": "5daaff6a0bd9a518", "scanner": "scanner-primary", "fingerprint": "b35eeafa386d6330", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/scripts/install-file-deps.ts"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-5f1be641c03f9df2", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/scripts/reclaim-dev-port.ts:22"}, "properties": {"repobilityId": "d54239d874903078", "scanner": "scanner-primary", "fingerprint": "5f1be641c03f9df2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/scripts/reclaim-dev-port.ts"}, "region": {"startLine": 22}}}]}, {"ruleId": "scanner-0417f80c1eff1fed", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/scripts/afterSign.js:7"}, "properties": {"repobilityId": "b0eeba5f14b255d2", "scanner": "scanner-primary", "fingerprint": "0417f80c1eff1fed", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/scripts/afterSign.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-e32b43788d37867b", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/scripts/dev.ts:24"}, "properties": {"repobilityId": "6464b687b4be0730", "scanner": "scanner-primary", "fingerprint": "e32b43788d37867b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/scripts/dev.ts"}, "region": {"startLine": 24}}}]}, {"ruleId": "scanner-2198b2e42eb496c0", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/scripts/prepare-electron-dev-app.ts:2"}, "properties": {"repobilityId": "b70a214d5278c211", "scanner": "scanner-primary", "fingerprint": "2198b2e42eb496c0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/scripts/prepare-electron-dev-app.ts"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-5bda2e76752273df", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/scripts/afterPack.js:10"}, "properties": {"repobilityId": "3e37f508222ad022", "scanner": "scanner-primary", "fingerprint": "5bda2e76752273df", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/scripts/afterPack.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-add5e1ca29bc3b1f", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/shell-path.ts:1"}, "properties": {"repobilityId": "83585ab23c89da3f", "scanner": "scanner-primary", "fingerprint": "add5e1ca29bc3b1f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/src/main/shell-path.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d3c7b629ba851a36", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/appleScriptExecutor.ts:1"}, "properties": {"repobilityId": "e41b910fb03b74f2", "scanner": "scanner-primary", "fingerprint": "d3c7b629ba851a36", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/src/main/appleScriptExecutor.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2a01dbf95e3dfd13", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/cli-installer.ts:2"}, "properties": {"repobilityId": "0f5dcc316ca264d1", "scanner": "scanner-primary", "fingerprint": "2a01dbf95e3dfd13", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/src/main/cli-installer.ts"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-734c99cfa7ec73af", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/hotkey-helper.ts:2"}, "properties": {"repobilityId": "ba54bc1f54296fd2", "scanner": "scanner-primary", "fingerprint": "734c99cfa7ec73af", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/src/main/hotkey-helper.ts"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-62274e70fdaae489", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/executors/host-bash-executor.ts:8"}, "properties": {"repobilityId": "08f71d5409852673", "scanner": "scanner-primary", "fingerprint": "62274e70fdaae489", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/src/main/executors/host-bash-executor.ts"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-4020fedbca2ecb83", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/sidecar/supervisor.ts:1"}, "properties": {"repobilityId": "d3bb7a1d40d17e26", "scanner": "scanner-primary", "fingerprint": "4020fedbca2ecb83", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/src/main/sidecar/supervisor.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8a3abdcb9940fc99", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in apps/macos/src/main/sidecar/mac-helper.ts:1"}, "properties": {"repobilityId": "03a200702d29d6cf", "scanner": "scanner-primary", "fingerprint": "8a3abdcb9940fc99", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/src/main/sidecar/mac-helper.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6242cd4c203f7a06", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/generate-release-notes.ts:14"}, "properties": {"repobilityId": "29474dbd38bb187b", "scanner": "scanner-primary", "fingerprint": "6242cd4c203f7a06", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/generate-release-notes.ts"}, "region": {"startLine": 14}}}]}, {"ruleId": "scanner-4cacaefc4cfc91cb", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/create-hotfix-branch.ts:13"}, "properties": {"repobilityId": "55c20710ed0ed097", "scanner": "scanner-primary", "fingerprint": "4cacaefc4cfc91cb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/create-hotfix-branch.ts"}, "region": {"startLine": 13}}}]}, {"ruleId": "scanner-9db0543012c568aa", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/docker-login-with-retry.ts:15"}, "properties": {"repobilityId": "ad300652a1269813", "scanner": "scanner-primary", "fingerprint": "9db0543012c568aa", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/docker-login-with-retry.ts"}, "region": {"startLine": 15}}}]}, {"ruleId": "scanner-278f4b2f86f5fc54", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/staging-docker-upload.ts:28"}, "properties": {"repobilityId": "0a514f63c2a9427c", "scanner": "scanner-primary", "fingerprint": "278f4b2f86f5fc54", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/staging-docker-upload.ts"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-dac39ad5c571d2f4", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/gcr-publish.ts:26"}, "properties": {"repobilityId": "6ebdead270462edb", "scanner": "scanner-primary", "fingerprint": "dac39ad5c571d2f4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/gcr-publish.ts"}, "region": {"startLine": 26}}}]}, {"ruleId": "scanner-db141945629dc7fe", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/skills/generate-catalog.mjs:13"}, "properties": {"repobilityId": "cd0558244eaa9bec", "scanner": "scanner-primary", "fingerprint": "db141945629dc7fe", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/skills/generate-catalog.mjs"}, "region": {"startLine": 13}}}]}, {"ruleId": "scanner-4f299cedd0ee67d1", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/skills/check-catalog.mjs:15"}, "properties": {"repobilityId": "85b651c8f78c3aa2", "scanner": "scanner-primary", "fingerprint": "4f299cedd0ee67d1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/skills/check-catalog.mjs"}, "region": {"startLine": 15}}}]}, {"ruleId": "scanner-242ece72187eba8e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/adapters/openclaw-http-server.ts:2"}, "properties": {"repobilityId": "4dd916c9dca89a73", "scanner": "scanner-primary", "fingerprint": "242ece72187eba8e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/adapters/openclaw-http-server.ts"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-4b9b6d3a02eb44b8", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/__tests__/nginx-ingress.test.ts:1"}, "properties": {"repobilityId": "fad5d51f9c8cb173", "scanner": "scanner-primary", "fingerprint": "4b9b6d3a02eb44b8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/__tests__/nginx-ingress.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0f09faa080931d10", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/__tests__/cloudflare-tunnel.test.ts:3"}, "properties": {"repobilityId": "66aa961e06e59443", "scanner": "scanner-primary", "fingerprint": "0f09faa080931d10", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/__tests__/cloudflare-tunnel.test.ts"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-c6dcad67e22c1f7f", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/commands/login.ts:1"}, "properties": {"repobilityId": "afcda4feef0a3468", "scanner": "scanner-primary", "fingerprint": "c6dcad67e22c1f7f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/commands/login.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a3cf4df5dbc697a3", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in cli/src/commands/recover.ts:102"}, "properties": {"repobilityId": "ac7e4c349ddd912c", "scanner": "scanner-primary", "fingerprint": "a3cf4df5dbc697a3", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/commands/recover.ts"}, "region": {"startLine": 102}}}]}, {"ruleId": "scanner-bdd6f39fd80d3cd3", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/commands/ssh.ts:1"}, "properties": {"repobilityId": "4ba16c01223d5d50", "scanner": "scanner-primary", "fingerprint": "bdd6f39fd80d3cd3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/commands/ssh.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-549841b3fa2a2fe5", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/commands/client.ts:1"}, "properties": {"repobilityId": "482e4115848a901c", "scanner": "scanner-primary", "fingerprint": "549841b3fa2a2fe5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/commands/client.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f9341a2fb8283246", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/commands/exec.ts:1"}, "properties": {"repobilityId": "4e61e6a27e79d663", "scanner": "scanner-primary", "fingerprint": "f9341a2fb8283246", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/commands/exec.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f40c941a3b111362", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in cli/src/commands/retire.ts:63"}, "properties": {"repobilityId": "f46164feb2dcd357", "scanner": "scanner-primary", "fingerprint": "f40c941a3b111362", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/commands/retire.ts"}, "region": {"startLine": 63}}}]}, {"ruleId": "scanner-bb00ac1c00ad6e9d", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in cli/src/commands/upgrade.ts:393"}, "properties": {"repobilityId": "8bc4c8e3485cdf99", "scanner": "scanner-primary", "fingerprint": "bb00ac1c00ad6e9d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/commands/upgrade.ts"}, "region": {"startLine": 393}}}]}, {"ruleId": "scanner-e874ef72bec42eaa", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/commands/upgrade.ts:1"}, "properties": {"repobilityId": "368a6058efa844d3", "scanner": "scanner-primary", "fingerprint": "e874ef72bec42eaa", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/commands/upgrade.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c16f6a204eb22beb", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/commands/logs.ts:1"}, "properties": {"repobilityId": "3454ecd4dee2d5dc", "scanner": "scanner-primary", "fingerprint": "c16f6a204eb22beb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/commands/logs.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0af0a89dfb71c6fb", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/local.ts:1"}, "properties": {"repobilityId": "3d07f5f4d5c96231", "scanner": "scanner-primary", "fingerprint": "0af0a89dfb71c6fb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/local.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1479e531f789f0eb", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in cli/src/lib/aws.ts:97"}, "properties": {"repobilityId": "291b44de7aa30de1", "scanner": "scanner-primary", "fingerprint": "1479e531f789f0eb", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/aws.ts"}, "region": {"startLine": 97}}}]}, {"ruleId": "scanner-d428fc5ce11a33f0", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/ngrok.ts:1"}, "properties": {"repobilityId": "01c93061467bbe8e", "scanner": "scanner-primary", "fingerprint": "d428fc5ce11a33f0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/ngrok.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2b7b418718b009f7", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in cli/src/lib/upgrade-lifecycle.ts:703"}, "properties": {"repobilityId": "e2634ca3d5cb4673", "scanner": "scanner-primary", "fingerprint": "2b7b418718b009f7", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/upgrade-lifecycle.ts"}, "region": {"startLine": 703}}}]}, {"ruleId": "scanner-deeb6b4ab0e9a26d", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/upgrade-lifecycle.ts:2"}, "properties": {"repobilityId": "d391edb3551a4b4f", "scanner": "scanner-primary", "fingerprint": "deeb6b4ab0e9a26d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/upgrade-lifecycle.ts"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-16498bc647e07f01", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/cloudflare-tunnel.ts:1"}, "properties": {"repobilityId": "ea67bde1709de559", "scanner": "scanner-primary", "fingerprint": "16498bc647e07f01", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/cloudflare-tunnel.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7b98227ed5719729", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/guardian-token.ts:2"}, "properties": {"repobilityId": "5f96fe17655e0bb8", "scanner": "scanner-primary", "fingerprint": "7b98227ed5719729", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/guardian-token.ts"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-1ea24a0f156a17d2", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/nginx-ingress.ts:6"}, "properties": {"repobilityId": "394a9efdd50dbf0c", "scanner": "scanner-primary", "fingerprint": "1ea24a0f156a17d2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/nginx-ingress.ts"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-a8d0d73773224a4c", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in cli/src/lib/gcp.ts:127"}, "properties": {"repobilityId": "dc1aa8c1d20fe925", "scanner": "scanner-primary", "fingerprint": "a8d0d73773224a4c", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/gcp.ts"}, "region": {"startLine": 127}}}]}, {"ruleId": "scanner-ac4674eaf1892fe5", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/provider-secrets.ts:1"}, "properties": {"repobilityId": "0dd772de674c0a4e", "scanner": "scanner-primary", "fingerprint": "ac4674eaf1892fe5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/provider-secrets.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-89f5d70798b8dab7", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/process.ts:1"}, "properties": {"repobilityId": "15fdfa01f15ddcb3", "scanner": "scanner-primary", "fingerprint": "89f5d70798b8dab7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/process.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-19b19b017e3bf61f", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in cli/src/lib/docker.ts:127"}, "properties": {"repobilityId": "1ca916c9688a18c4", "scanner": "scanner-primary", "fingerprint": "19b19b017e3bf61f", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/docker.ts"}, "region": {"startLine": 127}}}]}, {"ruleId": "scanner-0f1ce005802a5b1b", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/step-runner.ts:1"}, "properties": {"repobilityId": "e57f8d8556fd098e", "scanner": "scanner-primary", "fingerprint": "0f1ce005802a5b1b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/step-runner.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-13a0cba752babaad", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/xdg-log.ts:1"}, "properties": {"repobilityId": "c704a6a03f57ddf3", "scanner": "scanner-primary", "fingerprint": "13a0cba752babaad", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/xdg-log.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8aea45f110afbd89", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in cli/src/lib/retire-local.ts:1"}, "properties": {"repobilityId": "dcfb47f4bcdf4c67", "scanner": "scanner-primary", "fingerprint": "8aea45f110afbd89", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/retire-local.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ffbaa7c75d0bd6ea", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in cli/src/lib/__tests__/step-runner.test.ts:58"}, "properties": {"repobilityId": "9c4acc2a1fce1673", "scanner": "scanner-primary", "fingerprint": "ffbaa7c75d0bd6ea", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/src/lib/__tests__/step-runner.test.ts"}, "region": {"startLine": 58}}}]}, {"ruleId": "scanner-73cc46e62e5f2c70", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in meta/__tests__/install.test.ts:12"}, "properties": {"repobilityId": "e0e196605ce8524f", "scanner": "scanner-primary", "fingerprint": "73cc46e62e5f2c70", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "meta/__tests__/install.test.ts"}, "region": {"startLine": 12}}}]}, {"ruleId": "scanner-3ea75e0c61454c79", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in packages/local-mode/src/hatch.ts:1"}, "properties": {"repobilityId": "058ce27cf3f548fb", "scanner": "scanner-primary", "fingerprint": "3ea75e0c61454c79", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "packages/local-mode/src/hatch.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c0e3038f6068d66d", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in packages/local-mode/src/sleep.ts:1"}, "properties": {"repobilityId": "624ffd379aba87f0", "scanner": "scanner-primary", "fingerprint": "c0e3038f6068d66d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "packages/local-mode/src/sleep.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b73eba1b24c7b4d7", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in packages/local-mode/src/wake.ts:1"}, "properties": {"repobilityId": "28bf65b0a99a90ad", "scanner": "scanner-primary", "fingerprint": "b73eba1b24c7b4d7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "packages/local-mode/src/wake.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b6bbca741f11403f", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in packages/local-mode/src/guardian-token.ts:1"}, "properties": {"repobilityId": "04a27a120891972b", "scanner": "scanner-primary", "fingerprint": "b6bbca741f11403f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "packages/local-mode/src/guardian-token.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ee844a0c4012ac72", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in packages/local-mode/src/retire.ts:1"}, "properties": {"repobilityId": "57eea4a3e1b2fe6f", "scanner": "scanner-primary", "fingerprint": "ee844a0c4012ac72", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "packages/local-mode/src/retire.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-35478c85ed9014cf", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in clients/macos/build.sh:353"}, "properties": {"repobilityId": "0855741c41a7a3e2", "scanner": "scanner-primary", "fingerprint": "35478c85ed9014cf", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "clients/macos/build.sh"}, "region": {"startLine": 353}}}]}, {"ruleId": "scanner-d969a9f56440abfb", "level": "warning", "message": {"text": "Insecure pattern 'domparser_html_parse' in clients/macos/vellum-assistant/Resources/vellum-edit-animator.js:465"}, "properties": {"repobilityId": "a05a4a25453e9091", "scanner": "scanner-primary", "fingerprint": "d969a9f56440abfb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "domparser_html_parse"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "clients/macos/vellum-assistant/Resources/vellum-edit-animator.js"}, "region": {"startLine": 465}}}]}, {"ruleId": "scanner-e0beb4fe80be52be", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in clients/macos/vellum-assistant/Resources/vellum-widgets.js:78"}, "properties": {"repobilityId": "fbc78f2be3edde71", "scanner": "scanner-primary", "fingerprint": "e0beb4fe80be52be", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "clients/macos/vellum-assistant/Resources/vellum-widgets.js"}, "region": {"startLine": 78}}}]}, {"ruleId": "scanner-1b61a1038bf4b2e4", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js:9"}, "properties": {"repobilityId": "0433dd48382b42ed", "scanner": "scanner-primary", "fingerprint": "1b61a1038bf4b2e4", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-3741ae51d062c75d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js:9"}, "properties": {"repobilityId": "ebd314b6e6b9c354", "scanner": "scanner-primary", "fingerprint": "3741ae51d062c75d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-3eadc6b9ee903361", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js:9"}, "properties": {"repobilityId": "41277eda4bcecd21", "scanner": "scanner-primary", "fingerprint": "3eadc6b9ee903361", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-afbacc403fd648f9", "level": "warning", "message": {"text": "Insecure pattern 'insert_adjacent_html' in clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js:24"}, "properties": {"repobilityId": "416bb558cd74a965", "scanner": "scanner-primary", "fingerprint": "afbacc403fd648f9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "insert_adjacent_html"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "clients/macos/vellum-assistant/Resources/editor/toastui-editor-all.min.js"}, "region": {"startLine": 24}}}]}, {"ruleId": "scanner-4851f4d3a1fd1630", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/scripts/build-plugin-api.ts:30"}, "properties": {"repobilityId": "b91defed59d534e2", "scanner": "scanner-primary", "fingerprint": "4851f4d3a1fd1630", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/scripts/build-plugin-api.ts"}, "region": {"startLine": 30}}}]}, {"ruleId": "scanner-8a68d4a7ecde3c3e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/scripts/check-circular-deps.ts:10"}, "properties": {"repobilityId": "4e365502f6aab1db", "scanner": "scanner-primary", "fingerprint": "8a68d4a7ecde3c3e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/scripts/check-circular-deps.ts"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-978371f155e0efec", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/assistant-id-boundary-guard.test.ts:1"}, "properties": {"repobilityId": "94f3d2606705fff8", "scanner": "scanner-primary", "fingerprint": "978371f155e0efec", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/assistant-id-boundary-guard.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6952a326927fce5f", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/log-export-workspace.test.ts:10"}, "properties": {"repobilityId": "21f24907873a50d5", "scanner": "scanner-primary", "fingerprint": "6952a326927fce5f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/log-export-workspace.test.ts"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-f0342cd99fbaa2c3", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/assistant-feature-flag-guardrails.test.ts:15"}, "properties": {"repobilityId": "cb1f3b804ea7c440", "scanner": "scanner-primary", "fingerprint": "f0342cd99fbaa2c3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/assistant-feature-flag-guardrails.test.ts"}, "region": {"startLine": 15}}}]}, {"ruleId": "scanner-2d6df386289c1ae4", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/assistant-feature-flag-guard.test.ts:1"}, "properties": {"repobilityId": "57df1bd62513b9f5", "scanner": "scanner-primary", "fingerprint": "2d6df386289c1ae4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/assistant-feature-flag-guard.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-adaedf4c10812fb0", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/volume-security-guard.test.ts:1"}, "properties": {"repobilityId": "61975c2e53996a2c", "scanner": "scanner-primary", "fingerprint": "adaedf4c10812fb0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/volume-security-guard.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9d36417d8a8d8785", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/openai-responses-cutover-guard.test.ts:1"}, "properties": {"repobilityId": "ac04db4712e0303f", "scanner": "scanner-primary", "fingerprint": "9d36417d8a8d8785", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/openai-responses-cutover-guard.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b4abefc0ac4d3627", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/skill-secret-handling-guard.test.ts:1"}, "properties": {"repobilityId": "17a631c00307dce9", "scanner": "scanner-primary", "fingerprint": "b4abefc0ac4d3627", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/skill-secret-handling-guard.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5618f0ed042d543c", "level": "error", "message": {"text": "Insecure pattern 'private_key_in_repo' in assistant/src/__tests__/secret-scanner.test.ts:273"}, "properties": {"repobilityId": "ebf578aba6f587b7", "scanner": "scanner-primary", "fingerprint": "5618f0ed042d543c", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["owasp", "private_key_in_repo"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/secret-scanner.test.ts"}, "region": {"startLine": 273}}}]}, {"ruleId": "scanner-fd09d34c1edfb62c", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/workspace-heartbeat-service.test.ts:1"}, "properties": {"repobilityId": "d8277d8a0d21a15e", "scanner": "scanner-primary", "fingerprint": "fd09d34c1edfb62c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/workspace-heartbeat-service.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f7de619ee0a8beaa", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/workspace-git-service.test.ts:1"}, "properties": {"repobilityId": "4ca93690ac781362", "scanner": "scanner-primary", "fingerprint": "f7de619ee0a8beaa", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/workspace-git-service.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b77845db53713c8e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/gateway-only-guard.test.ts:1"}, "properties": {"repobilityId": "974e2a15bf075f00", "scanner": "scanner-primary", "fingerprint": "b77845db53713c8e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/gateway-only-guard.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5e8baf9544728b80", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/turn-commit.test.ts:1"}, "properties": {"repobilityId": "0a1abad2a7f01a94", "scanner": "scanner-primary", "fingerprint": "5e8baf9544728b80", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/turn-commit.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-16619102f845431c", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/app-dir-path-guard.test.ts:1"}, "properties": {"repobilityId": "488304d97f197549", "scanner": "scanner-primary", "fingerprint": "16619102f845431c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/app-dir-path-guard.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c9ea797753e70fba", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/service-contracts-import-guard.test.ts:20"}, "properties": {"repobilityId": "49add03a6f975750", "scanner": "scanner-primary", "fingerprint": "c9ea797753e70fba", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/service-contracts-import-guard.test.ts"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-c80e6654e9e15fca", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/no-is-trusted-guard.test.ts:19"}, "properties": {"repobilityId": "405bd77a7f380ea7", "scanner": "scanner-primary", "fingerprint": "c80e6654e9e15fca", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/no-is-trusted-guard.test.ts"}, "region": {"startLine": 19}}}]}, {"ruleId": "scanner-9253821c2071f6a4", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/host-shell-tool.test.ts:1"}, "properties": {"repobilityId": "8d1865e18f0d889f", "scanner": "scanner-primary", "fingerprint": "9253821c2071f6a4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/host-shell-tool.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-566489f73872521b", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/log-export-routes.test.ts:1"}, "properties": {"repobilityId": "38f88f252f8b7dd8", "scanner": "scanner-primary", "fingerprint": "566489f73872521b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/log-export-routes.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cd2cb224e3b2b6fa", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/app-git-service.test.ts:1"}, "properties": {"repobilityId": "47ba9e56d7bfaa4f", "scanner": "scanner-primary", "fingerprint": "cd2cb224e3b2b6fa", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/app-git-service.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-43c3f162dcdb1c31", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/no-direct-anthropic-sdk-imports.test.ts:1"}, "properties": {"repobilityId": "608c29376573b6d7", "scanner": "scanner-primary", "fingerprint": "43c3f162dcdb1c31", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/no-direct-anthropic-sdk-imports.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-14d003ff0899d326", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in assistant/src/__tests__/tool-execution-abort-cleanup.test.ts:488"}, "properties": {"repobilityId": "919a01f3b4be4dcd", "scanner": "scanner-primary", "fingerprint": "14d003ff0899d326", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/tool-execution-abort-cleanup.test.ts"}, "region": {"startLine": 488}}}]}, {"ruleId": "scanner-256cc01f0d90f1ef", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/commit-message-enrichment-service.test.ts:1"}, "properties": {"repobilityId": "495ebf1dc149e811", "scanner": "scanner-primary", "fingerprint": "256cc01f0d90f1ef", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/commit-message-enrichment-service.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ca1cfc65c0db4600", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/lifecycle-docs-guard.test.ts:1"}, "properties": {"repobilityId": "4fdb076da82556a3", "scanner": "scanner-primary", "fingerprint": "ca1cfc65c0db4600", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/lifecycle-docs-guard.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-989cad146cc14fbf", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/workspace-lifecycle.test.ts:8"}, "properties": {"repobilityId": "428068bb8f13e9d6", "scanner": "scanner-primary", "fingerprint": "989cad146cc14fbf", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/workspace-lifecycle.test.ts"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-d7d92db495488232", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/commit-guarantee.test.ts:8"}, "properties": {"repobilityId": "5a3c28878724c743", "scanner": "scanner-primary", "fingerprint": "d7d92db495488232", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/commit-guarantee.test.ts"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-c2ef77dc402291d8", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/shell-tool-proxy-mode.test.ts:1"}, "properties": {"repobilityId": "e7a242fd5de7ec99", "scanner": "scanner-primary", "fingerprint": "c2ef77dc402291d8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/shell-tool-proxy-mode.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0f35c8a8ffc4b1cc", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/__tests__/forbidden-legacy-symbols.test.ts:1"}, "properties": {"repobilityId": "5f67b977caae12b9", "scanner": "scanner-primary", "fingerprint": "0f35c8a8ffc4b1cc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/__tests__/forbidden-legacy-symbols.test.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cc08a9be17f14823", "level": "error", "message": {"text": "Insecure pattern 'eval_used' in assistant/src/bundler/bundle-scanner.ts:376"}, "properties": {"repobilityId": "567df5a4785d7844", "scanner": "scanner-primary", "fingerprint": "cc08a9be17f14823", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "eval_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/bundler/bundle-scanner.ts"}, "region": {"startLine": 376}}}]}, {"ruleId": "scanner-4045ce18f9d21c2b", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/util/disk-usage.ts:1"}, "properties": {"repobilityId": "bc3b18480efbdd61", "scanner": "scanner-primary", "fingerprint": "4045ce18f9d21c2b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/util/disk-usage.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e4255c60cf1e9b8e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/cli/lib/install-from-github.ts:26"}, "properties": {"repobilityId": "b90bf88ea4cb51b7", "scanner": "scanner-primary", "fingerprint": "e4255c60cf1e9b8e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/cli/lib/install-from-github.ts"}, "region": {"startLine": 26}}}]}, {"ruleId": "scanner-c81c778285b6ae04", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/agent/image-optimize.ts:1"}, "properties": {"repobilityId": "d0d03b02e6fd5256", "scanner": "scanner-primary", "fingerprint": "c81c778285b6ae04", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/agent/image-optimize.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d4f31cdc4ea6a652", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/workspace/git-service.ts:1"}, "properties": {"repobilityId": "e2ecba736c4cd420", "scanner": "scanner-primary", "fingerprint": "d4f31cdc4ea6a652", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/workspace/git-service.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7b97981b8e44c07b", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/workspace/migrations/010-app-dir-rename.ts:12"}, "properties": {"repobilityId": "4144147475278fec", "scanner": "scanner-primary", "fingerprint": "7b97981b8e44c07b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/workspace/migrations/010-app-dir-rename.ts"}, "region": {"startLine": 12}}}]}, {"ruleId": "scanner-cf3b1b11a55d58f1", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/acp/agent-process.ts:8"}, "properties": {"repobilityId": "b5df50f547ae7257", "scanner": "scanner-primary", "fingerprint": "cf3b1b11a55d58f1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/acp/agent-process.ts"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-0d0f69fee8ce527c", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/acp/client-handler.ts:9"}, "properties": {"repobilityId": "582a1730e51ac6f9", "scanner": "scanner-primary", "fingerprint": "0d0f69fee8ce527c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/acp/client-handler.ts"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-77119e04fd334363", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/acp/auto-install.ts:29"}, "properties": {"repobilityId": "3d4593109d8dee65", "scanner": "scanner-primary", "fingerprint": "77119e04fd334363", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/acp/auto-install.ts"}, "region": {"startLine": 29}}}]}, {"ruleId": "scanner-1432b6800e8bd16a", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/acp/__tests__/helpers/exec-file-stub.ts:20"}, "properties": {"repobilityId": "fe69dc2811fde4df", "scanner": "scanner-primary", "fingerprint": "1432b6800e8bd16a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/acp/__tests__/helpers/exec-file-stub.ts"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-de2d3f7f77107679", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/daemon/orphan-reaper.test.ts:13"}, "properties": {"repobilityId": "e83ad58e913cfb23", "scanner": "scanner-primary", "fingerprint": "de2d3f7f77107679", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/daemon/orphan-reaper.test.ts"}, "region": {"startLine": 13}}}]}, {"ruleId": "scanner-95ce78eaa1dddec7", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/daemon/daemon-control.ts:1"}, "properties": {"repobilityId": "34d508fe816376e3", "scanner": "scanner-primary", "fingerprint": "95ce78eaa1dddec7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/daemon/daemon-control.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a25cdd9a645cfc8b", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/daemon/install-symlink.ts:1"}, "properties": {"repobilityId": "a5e2259275749993", "scanner": "scanner-primary", "fingerprint": "a25cdd9a645cfc8b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/daemon/install-symlink.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-19aeb8e8c78577bf", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in assistant/src/memory/app-git-service.ts:326"}, "properties": {"repobilityId": "6e92a8b071944817", "scanner": "scanner-primary", "fingerprint": "19aeb8e8c78577bf", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/memory/app-git-service.ts"}, "region": {"startLine": 326}}}]}, {"ruleId": "scanner-9f60484d164811ae", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/memory/v2/__tests__/prompts-consolidation.test.ts:7"}, "properties": {"repobilityId": "a8d38ccb3da1ba01", "scanner": "scanner-primary", "fingerprint": "9f60484d164811ae", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/memory/v2/__tests__/prompts-consolidation.test.ts"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-047dc80cd39716ec", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/runtime/routes/debug-bash-routes.ts:13"}, "properties": {"repobilityId": "6782358ce9350e98", "scanner": "scanner-primary", "fingerprint": "047dc80cd39716ec", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/runtime/routes/debug-bash-routes.ts"}, "region": {"startLine": 13}}}]}, {"ruleId": "scanner-55282c8eb4471fbc", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/runtime/routes/archive-utils.ts:6"}, "properties": {"repobilityId": "578ac3640a7e44fc", "scanner": "scanner-primary", "fingerprint": "55282c8eb4471fbc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/runtime/routes/archive-utils.ts"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-fd8c22e72ec5205d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assistant/src/runtime/routes/brain-graph/brain-graph.html:1120"}, "properties": {"repobilityId": "698a07660824570a", "scanner": "scanner-primary", "fingerprint": "fd8c22e72ec5205d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/runtime/routes/brain-graph/brain-graph.html"}, "region": {"startLine": 1120}}}]}, {"ruleId": "scanner-9e1e67bfb48c5dd1", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/tools/host-terminal/host-shell.ts:16"}, "properties": {"repobilityId": "13984335472e1417", "scanner": "scanner-primary", "fingerprint": "9e1e67bfb48c5dd1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/tools/host-terminal/host-shell.ts"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-9c9183fede78c2a4", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/tools/terminal/shell.ts:1"}, "properties": {"repobilityId": "95a1354381ba654a", "scanner": "scanner-primary", "fingerprint": "9c9183fede78c2a4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/tools/terminal/shell.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8f822279a5e6938c", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/tools/skills/sandbox-runner.ts:1"}, "properties": {"repobilityId": "8e25319590f84ba8", "scanner": "scanner-primary", "fingerprint": "8f822279a5e6938c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/tools/skills/sandbox-runner.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-fe4fd42a332c8577", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/skills/inline-command-runner.ts:24"}, "properties": {"repobilityId": "1378d90284147de3", "scanner": "scanner-primary", "fingerprint": "fe4fd42a332c8577", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/skills/inline-command-runner.ts"}, "region": {"startLine": 24}}}]}, {"ruleId": "scanner-95964fbf43ab4829", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in assistant/src/skills/catalog-install.ts:1"}, "properties": {"repobilityId": "505547c0e44a2779", "scanner": "scanner-primary", "fingerprint": "95964fbf43ab4829", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/skills/catalog-install.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7a82538bd6cfefac", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in gateway/README.md:152"}, "properties": {"repobilityId": "4259c25e3000eee9", "scanner": "scanner-primary", "fingerprint": "7a82538bd6cfefac", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "gateway/README.md"}, "region": {"startLine": 152}}}]}, {"ruleId": "scanner-b6c1df546f3bd025", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in gateway/src/schema.ts:4657"}, "properties": {"repobilityId": "075dc3d03e66c0bd", "scanner": "scanner-primary", "fingerprint": "b6c1df546f3bd025", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "gateway/src/schema.ts"}, "region": {"startLine": 4657}}}]}, {"ruleId": "scanner-a37414082729b8ae", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in gateway/src/__tests__/credential-watcher-managed-bootstrap.test.ts:3"}, "properties": {"repobilityId": "e1d1a493ccb43785", "scanner": "scanner-primary", "fingerprint": "a37414082729b8ae", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "gateway/src/__tests__/credential-watcher-managed-bootstrap.test.ts"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-d342ff6e781ee2ca", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in gateway/src/__tests__/credential-watcher.test.ts:11"}, "properties": {"repobilityId": "835d986b9d788c9e", "scanner": "scanner-primary", "fingerprint": "d342ff6e781ee2ca", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "gateway/src/__tests__/credential-watcher.test.ts"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-2ee1b991407ba419", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in gateway/src/http/routes/log-export.test.ts:26"}, "properties": {"repobilityId": "980f137a1cd5ada4", "scanner": "scanner-primary", "fingerprint": "2ee1b991407ba419", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "gateway/src/http/routes/log-export.test.ts"}, "region": {"startLine": 26}}}]}, {"ruleId": "scanner-b70076bcee847a70", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in evals/src/commands/server.ts:3"}, "properties": {"repobilityId": "0b674ff0566041c4", "scanner": "scanner-primary", "fingerprint": "b70076bcee847a70", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "evals/src/commands/server.ts"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-673bc8329d2e6897", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in evals/src/lib/report-html.tsx:2027"}, "properties": {"repobilityId": "6368d374df9801e0", "scanner": "scanner-primary", "fingerprint": "673bc8329d2e6897", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "evals/src/lib/report-html.tsx"}, "region": {"startLine": 2027}}}]}, {"ruleId": "scanner-3beeeaeaf1b919e6", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in evals/src/lib/ngrok.ts:30"}, "properties": {"repobilityId": "dfbca1c00101a91f", "scanner": "scanner-primary", "fingerprint": "3beeeaeaf1b919e6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "evals/src/lib/ngrok.ts"}, "region": {"startLine": 30}}}]}, {"ruleId": "scanner-61fdcf9ef7d2a1bb", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in evals/src/lib/runtime/command-runner.ts:2"}, "properties": {"repobilityId": "7c206d30416fa2d7", "scanner": "scanner-primary", "fingerprint": "61fdcf9ef7d2a1bb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "evals/src/lib/runtime/command-runner.ts"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-cdac82cd32639065", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in skills/vellum-github-app-setup/scripts/gh-app-token.mjs:20"}, "properties": {"repobilityId": "ad5f6c5637b639e2", "scanner": "scanner-primary", "fingerprint": "cdac82cd32639065", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/vellum-github-app-setup/scripts/gh-app-token.mjs"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-35784b9947658fc2", "level": "error", "message": {"text": "Insecure pattern 'eval_used' in skills/watch-together/scripts/process-chunk.sh:13"}, "properties": {"repobilityId": "bd9bcf5fd1a6cc75", "scanner": "scanner-primary", "fingerprint": "35784b9947658fc2", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "eval_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/watch-together/scripts/process-chunk.sh"}, "region": {"startLine": 13}}}]}, {"ruleId": "scanner-0a067797547c7b12", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in skills/doordash/scripts/doordash-cli.ts:8"}, "properties": {"repobilityId": "5056bb14dc3c2d56", "scanner": "scanner-primary", "fingerprint": "0a067797547c7b12", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/doordash/scripts/doordash-cli.ts"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-3ed5798e26f0fbcf", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in skills/doordash/scripts/lib/session.ts:6"}, "properties": {"repobilityId": "a5b5a67968c05ab1", "scanner": "scanner-primary", "fingerprint": "3ed5798e26f0fbcf", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/doordash/scripts/lib/session.ts"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-f6dfcb4db59f0f02", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/__tests__/emit-manifest.test.ts:17"}, "properties": {"repobilityId": "a2d52c68ebf6c173", "scanner": "scanner-primary", "fingerprint": "f6dfcb4db59f0f02", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/meet-join/__tests__/emit-manifest.test.ts"}, "region": {"startLine": 17}}}]}, {"ruleId": "scanner-0556701c93a8e758", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/bot/__tests__/boot.test.ts:2"}, "properties": {"repobilityId": "625b0f5fdf121814", "scanner": "scanner-primary", "fingerprint": "0556701c93a8e758", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/meet-join/bot/__tests__/boot.test.ts"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-601790f62743fa83", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/bot/src/browser/chrome-launcher.ts:25"}, "properties": {"repobilityId": "a48bce8dc16f82bb", "scanner": "scanner-primary", "fingerprint": "601790f62743fa83", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/meet-join/bot/src/browser/chrome-launcher.ts"}, "region": {"startLine": 25}}}]}, {"ruleId": "scanner-c847d59c48f8bf32", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/bot/src/browser/xdotool-type.ts:25"}, "properties": {"repobilityId": "d402c0f72db49f29", "scanner": "scanner-primary", "fingerprint": "c847d59c48f8bf32", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/meet-join/bot/src/browser/xdotool-type.ts"}, "region": {"startLine": 25}}}]}, {"ruleId": "scanner-251e8d96b62284f2", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/bot/src/browser/xdotool-click.ts:24"}, "properties": {"repobilityId": "9405162bafd5a88a", "scanner": "scanner-primary", "fingerprint": "251e8d96b62284f2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/meet-join/bot/src/browser/xdotool-click.ts"}, "region": {"startLine": 24}}}]}, {"ruleId": "scanner-775c2aee3f4569f3", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in skills/meet-join/meet-controller-ext/src/__tests__/participants.test.ts:124"}, "properties": {"repobilityId": "781b8733bef458df", "scanner": "scanner-primary", "fingerprint": "775c2aee3f4569f3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/meet-join/meet-controller-ext/src/__tests__/participants.test.ts"}, "region": {"startLine": 124}}}]}, {"ruleId": "scanner-1ec366c70eac958a", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/daemon/tts-bridge.ts:34"}, "properties": {"repobilityId": "f08200713d4410f1", "scanner": "scanner-primary", "fingerprint": "1ec366c70eac958a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/meet-join/daemon/tts-bridge.ts"}, "region": {"startLine": 34}}}]}, {"ruleId": "scanner-ef3748bc33389ae4", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/daemon/storage-writer.ts:40"}, "properties": {"repobilityId": "fa06716148b82e98", "scanner": "scanner-primary", "fingerprint": "ef3748bc33389ae4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/meet-join/daemon/storage-writer.ts"}, "region": {"startLine": 40}}}]}, {"ruleId": "scanner-cbcf82a74ee941d0", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/daemon/__tests__/artifacts-on-disk.test.ts:24"}, "properties": {"repobilityId": "5c0801e66da48b47", "scanner": "scanner-primary", "fingerprint": "cbcf82a74ee941d0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/meet-join/daemon/__tests__/artifacts-on-disk.test.ts"}, "region": {"startLine": 24}}}]}, {"ruleId": "scanner-6685b9d1e2512381", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in skills/meet-join/daemon/__tests__/tts-bridge.test.ts:33"}, "properties": {"repobilityId": "262bd8f8247e8f15", "scanner": "scanner-primary", "fingerprint": "6685b9d1e2512381", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/meet-join/daemon/__tests__/tts-bridge.test.ts"}, "region": {"startLine": 33}}}]}, {"ruleId": "scanner-dcf5f5a620cde7a1", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in skills/deploy-fullstack-vercel/SKILL.md:177"}, "properties": {"repobilityId": "aa8d5fe6b629bb07", "scanner": "scanner-primary", "fingerprint": "dcf5f5a620cde7a1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/deploy-fullstack-vercel/SKILL.md"}, "region": {"startLine": 177}}}]}, {"ruleId": "scanner-4505506c6be7c4a3", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "5b4351d6b1d2f6fc", "scanner": "scanner-primary", "fingerprint": "4505506c6be7c4a3", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/ci-main-storybook.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4ab4f36ab0b65e5b", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "0c4457e1107b0f99", "scanner": "scanner-primary", "fingerprint": "4ab4f36ab0b65e5b", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/socket-autofix.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1838a141491ce38c", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "b8fd4f5048f96576", "scanner": "scanner-primary", "fingerprint": "1838a141491ce38c", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d538cfaa506a71af", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "713017a564ea29d0", "scanner": "scanner-primary", "fingerprint": "d538cfaa506a71af", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/upload-skill-assets.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ba56235aeaef7f86", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "ddad6e96625842bc", "scanner": "scanner-primary", "fingerprint": "ba56235aeaef7f86", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/dev-release.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-37ae3001ac056bb3", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "8c01e43621fef56d", "scanner": "scanner-primary", "fingerprint": "37ae3001ac056bb3", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy-platform-web-spa.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-447018ee7762b093", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "b7245f395c97dc88", "scanner": "scanner-primary", "fingerprint": "447018ee7762b093", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/ci-main-web.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-878357cdc8b567d8", "level": "note", "message": {"text": "package.json defines install-time lifecycle scripts"}, "properties": {"repobilityId": "6c86d46fe43be8ea", "scanner": "scanner-primary", "fingerprint": "878357cdc8b567d8", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "npm", "install-scripts"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/web/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e4d160522292d719", "level": "note", "message": {"text": "package.json defines install-time lifecycle scripts"}, "properties": {"repobilityId": "e5fa93998b4fd153", "scanner": "scanner-primary", "fingerprint": "e4d160522292d719", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "npm", "install-scripts"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/macos/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-bf278668dedec30a", "level": "note", "message": {"text": "package.json defines install-time lifecycle scripts"}, "properties": {"repobilityId": "a323a2c6fdf10230", "scanner": "scanner-primary", "fingerprint": "bf278668dedec30a", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "npm", "install-scripts"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-73575bbdd6765774", "level": "note", "message": {"text": "package.json defines install-time lifecycle scripts"}, "properties": {"repobilityId": "e1cb0c246ae11a73", "scanner": "scanner-primary", "fingerprint": "73575bbdd6765774", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "npm", "install-scripts"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "gateway/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cc212118d5ae0b3d", "level": "note", "message": {"text": "package.json defines install-time lifecycle scripts"}, "properties": {"repobilityId": "5130fc370da187bb", "scanner": "scanner-primary", "fingerprint": "cc212118d5ae0b3d", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "npm", "install-scripts"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "plugins/caveman/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-eae2e896525bb0c3", "level": "note", "message": {"text": "Very large file: credential-executor/src/__tests__/command-executor.test.ts (1870 lines)"}, "properties": {"repobilityId": "efa23db704e86b3d", "scanner": "scanner-primary", "fingerprint": "eae2e896525bb0c3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2a657274bb76e572", "level": "note", "message": {"text": "Very large file: apps/web/src/lib/streaming/event-parser.test.ts (3559 lines)"}, "properties": {"repobilityId": "5f15d91ee66f682d", "scanner": "scanner-primary", "fingerprint": "2a657274bb76e572", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b5d2558f7d543530", "level": "note", "message": {"text": "Very large file: apps/web/src/domains/chat/turn-store.test.ts (1557 lines)"}, "properties": {"repobilityId": "4bf875894572cadd", "scanner": "scanner-primary", "fingerprint": "b5d2558f7d543530", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-51b66645eafb0001", "level": "note", "message": {"text": "Very large file: apps/web/src/domains/chat/components/chat-composer/emoji-catalog-data.ts (1992 lines)"}, "properties": {"repobilityId": "e7f1d0f2d9f5fd31", "scanner": "scanner-primary", "fingerprint": "51b66645eafb0001", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7cd7456046d468be", "level": "note", "message": {"text": "Very large file: cli/src/__tests__/teleport.test.ts (2695 lines)"}, "properties": {"repobilityId": "fac556911149d2cc", "scanner": "scanner-primary", "fingerprint": "7cd7456046d468be", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-47dff464362b9563", "level": "note", "message": {"text": "Very large file: cli/src/commands/teleport.ts (1548 lines)"}, "properties": {"repobilityId": "8c1c9543ee5b70db", "scanner": "scanner-primary", "fingerprint": "47dff464362b9563", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ee8d81acfb57b577", "level": "note", "message": {"text": "Very large file: cli/src/components/DefaultMainScreen.tsx (2602 lines)"}, "properties": {"repobilityId": "f493307a70374203", "scanner": "scanner-primary", "fingerprint": "ee8d81acfb57b577", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2f0493c89e6e4e72", "level": "note", "message": {"text": "Very large file: cli/src/lib/docker.ts (1692 lines)"}, "properties": {"repobilityId": "c17a032a342e0558", "scanner": "scanner-primary", "fingerprint": "2f0493c89e6e4e72", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7228556cdc8b9893", "level": "note", "message": {"text": "Very large file: clients/chrome-extension/background/worker.ts (1560 lines)"}, "properties": {"repobilityId": "9c12012f85444a65", "scanner": "scanner-primary", "fingerprint": "7228556cdc8b9893", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7f6e65597647c40e", "level": "note", "message": {"text": "Very large file: clients/chrome-extension/background/__tests__/host-browser-dispatcher.test.ts (2389 lines)"}, "properties": {"repobilityId": "2d04e9496c3d0c42", "scanner": "scanner-primary", "fingerprint": "7f6e65597647c40e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3d4185df68cd3f08", "level": "note", "message": {"text": "Very large file: clients/macos/build.sh (2804 lines)"}, "properties": {"repobilityId": "7592334fd5565285", "scanner": "scanner-primary", "fingerprint": "3d4185df68cd3f08", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-554735d4488c4112", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/heartbeat-service.test.ts (1709 lines)"}, "properties": {"repobilityId": "236be04eb69d26a0", "scanner": "scanner-primary", "fingerprint": "554735d4488c4112", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-42bc03bc34ca85c8", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/checker.test.ts (1877 lines)"}, "properties": {"repobilityId": "3031e09dcf2d369c", "scanner": "scanner-primary", "fingerprint": "42bc03bc34ca85c8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ce92e075e69c1892", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/system-prompt.test.ts (1681 lines)"}, "properties": {"repobilityId": "4e85207e33ac2e28", "scanner": "scanner-primary", "fingerprint": "ce92e075e69c1892", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-654b5133208d254b", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/llm-usage-store.test.ts (1738 lines)"}, "properties": {"repobilityId": "338a0e38cc4dcdf2", "scanner": "scanner-primary", "fingerprint": "654b5133208d254b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a13e1b2c77e514b4", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/web-fetch.test.ts (1714 lines)"}, "properties": {"repobilityId": "26850f37392f1f01", "scanner": "scanner-primary", "fingerprint": "a13e1b2c77e514b4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-10a309744e28827e", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/openai-responses-provider.test.ts (1766 lines)"}, "properties": {"repobilityId": "cdedd4ed53faa26c", "scanner": "scanner-primary", "fingerprint": "10a309744e28827e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b0c99dbaae4611f4", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/conversation-queue.test.ts (2907 lines)"}, "properties": {"repobilityId": "528a73f987987c23", "scanner": "scanner-primary", "fingerprint": "b0c99dbaae4611f4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-1e8d1f8a2a281d0d", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/conversation-runtime-assembly.test.ts (5947 lines)"}, "properties": {"repobilityId": "bb886a5f14b6ebbe", "scanner": "scanner-primary", "fingerprint": "1e8d1f8a2a281d0d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f9a35c3a7c3177d7", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/channel-approval-routes.test.ts (3111 lines)"}, "properties": {"repobilityId": "232b90e5df72e5c5", "scanner": "scanner-primary", "fingerprint": "f9a35c3a7c3177d7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-15b9fccf9ef5fa38", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/migration-cross-version-compatibility.test.ts (1741 lines)"}, "properties": {"repobilityId": "a9b1d99c77dbb2bb", "scanner": "scanner-primary", "fingerprint": "15b9fccf9ef5fa38", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3157abb16a405bf6", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/conversation-agent-loop.test.ts (3248 lines)"}, "properties": {"repobilityId": "2a03c9414c931b9f", "scanner": "scanner-primary", "fingerprint": "3157abb16a405bf6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-50cca4aab8974972", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/call-controller.test.ts (3042 lines)"}, "properties": {"repobilityId": "31d3db6b02cdad81", "scanner": "scanner-primary", "fingerprint": "50cca4aab8974972", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a12726655ebbfcda", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/conversation-skill-tools.test.ts (2886 lines)"}, "properties": {"repobilityId": "5e22974de57293e1", "scanner": "scanner-primary", "fingerprint": "a12726655ebbfcda", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f136c564b327aa0b", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/conversation-agent-loop-overflow.test.ts (1736 lines)"}, "properties": {"repobilityId": "21eb7a1cb98be4f5", "scanner": "scanner-primary", "fingerprint": "f136c564b327aa0b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-1814d9104d0486a5", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/guardian-routing-invariants.test.ts (2081 lines)"}, "properties": {"repobilityId": "7468608406ae6000", "scanner": "scanner-primary", "fingerprint": "1814d9104d0486a5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fdea1b322c455956", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/agent-loop.test.ts (2764 lines)"}, "properties": {"repobilityId": "7933a98cdd412cc8", "scanner": "scanner-primary", "fingerprint": "fdea1b322c455956", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cb5507e79f0924cb", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/migration-parity-persistence.test.ts (1891 lines)"}, "properties": {"repobilityId": "238362d26f4095e8", "scanner": "scanner-primary", "fingerprint": "cb5507e79f0924cb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0f90248f74ba0cb2", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/thread-backfill.test.ts (2729 lines)"}, "properties": {"repobilityId": "28bb042a6899bb27", "scanner": "scanner-primary", "fingerprint": "0f90248f74ba0cb2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8b9e874f6fdee5c3", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/anthropic-provider.test.ts (3059 lines)"}, "properties": {"repobilityId": "c917685f26a7c11f", "scanner": "scanner-primary", "fingerprint": "8b9e874f6fdee5c3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-95feb4f8dee09d07", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/channel-guardian.test.ts (3776 lines)"}, "properties": {"repobilityId": "c6206824348a50d2", "scanner": "scanner-primary", "fingerprint": "95feb4f8dee09d07", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-29fbb4fbdf3a70ed", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/oauth-store.test.ts (2375 lines)"}, "properties": {"repobilityId": "25c3a35054fe3579", "scanner": "scanner-primary", "fingerprint": "29fbb4fbdf3a70ed", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-14d1dda90d57def5", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/openai-provider.test.ts (1957 lines)"}, "properties": {"repobilityId": "9e2cbdb8909e3707", "scanner": "scanner-primary", "fingerprint": "14d1dda90d57def5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5327afae64fe3b72", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/schedule-routes.test.ts (1613 lines)"}, "properties": {"repobilityId": "7da77a1311f584d4", "scanner": "scanner-primary", "fingerprint": "5327afae64fe3b72", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fccc554ac2d049bb", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/db-migration-rollback.test.ts (2994 lines)"}, "properties": {"repobilityId": "be54376c9c5948b7", "scanner": "scanner-primary", "fingerprint": "fccc554ac2d049bb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-53fe80614540fa84", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/credential-vault.test.ts (1706 lines)"}, "properties": {"repobilityId": "f59ce171b747f0e5", "scanner": "scanner-primary", "fingerprint": "53fe80614540fa84", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-dececaa39f3a9562", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/config-schema.test.ts (2402 lines)"}, "properties": {"repobilityId": "2d5393871f71e25b", "scanner": "scanner-primary", "fingerprint": "dececaa39f3a9562", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-671270ff8995c84d", "level": "note", "message": {"text": "Very large file: assistant/src/__tests__/relay-server.test.ts (4857 lines)"}, "properties": {"repobilityId": "8017765ebec1e88e", "scanner": "scanner-primary", "fingerprint": "671270ff8995c84d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6926c7336f07d6df", "level": "note", "message": {"text": "Very large file: assistant/src/agent/loop.ts (2416 lines)"}, "properties": {"repobilityId": "8b925317ab1a83b3", "scanner": "scanner-primary", "fingerprint": "6926c7336f07d6df", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2d755d75e4671d2e", "level": "note", "message": {"text": "Very large file: assistant/src/providers/anthropic/client.ts (1889 lines)"}, "properties": {"repobilityId": "876945d38f1c96a1", "scanner": "scanner-primary", "fingerprint": "2d755d75e4671d2e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e88356de40ea385f", "level": "note", "message": {"text": "Very large file: assistant/src/calls/call-controller.ts (1506 lines)"}, "properties": {"repobilityId": "ab3efbbf82c5aea2", "scanner": "scanner-primary", "fingerprint": "e88356de40ea385f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a7e9e4fb91ac8dc1", "level": "note", "message": {"text": "Very large file: assistant/src/calls/relay-server.ts (2218 lines)"}, "properties": {"repobilityId": "ba9e4f103747bf5a", "scanner": "scanner-primary", "fingerprint": "a7e9e4fb91ac8dc1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5ec766adb937de8d", "level": "note", "message": {"text": "Very large file: assistant/src/daemon/conversation-surfaces.ts (2911 lines)"}, "properties": {"repobilityId": "dbcf4f559b00c8fd", "scanner": "scanner-primary", "fingerprint": "5ec766adb937de8d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6899dda68aed3e8e", "level": "note", "message": {"text": "Very large file: assistant/src/daemon/lifecycle.ts (1409 lines)"}, "properties": {"repobilityId": "d8ea43678f69b948", "scanner": "scanner-primary", "fingerprint": "6899dda68aed3e8e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-faa7745700fe724c", "level": "note", "message": {"text": "Very large file: assistant/src/daemon/conversation-agent-loop.ts (1683 lines)"}, "properties": {"repobilityId": "23d5c852f2075e5c", "scanner": "scanner-primary", "fingerprint": "faa7745700fe724c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-125e25cafaa31efd", "level": "note", "message": {"text": "Very large file: assistant/src/daemon/conversation.ts (1928 lines)"}, "properties": {"repobilityId": "867bc8a965f5f8b9", "scanner": "scanner-primary", "fingerprint": "125e25cafaa31efd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e1103918a52cd804", "level": "note", "message": {"text": "Very large file: assistant/src/daemon/conversation-runtime-assembly.ts (2381 lines)"}, "properties": {"repobilityId": "e564bda24388f862", "scanner": "scanner-primary", "fingerprint": "e1103918a52cd804", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a687b54ee2459619", "level": "note", "message": {"text": "Very large file: assistant/src/daemon/conversation-agent-loop-handlers.ts (2458 lines)"}, "properties": {"repobilityId": "c2afd4d6d7b7d92b", "scanner": "scanner-primary", "fingerprint": "a687b54ee2459619", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f4be14d60a50fb08", "level": "note", "message": {"text": "Very large file: assistant/src/daemon/conversation-process.ts (1875 lines)"}, "properties": {"repobilityId": "7e195195e1e8e43d", "scanner": "scanner-primary", "fingerprint": "f4be14d60a50fb08", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5e521e39ecf0552a", "level": "note", "message": {"text": "Very large file: assistant/src/daemon/handlers/skills.ts (1763 lines)"}, "properties": {"repobilityId": "56017a47ae5b6cc4", "scanner": "scanner-primary", "fingerprint": "5e521e39ecf0552a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-64b1301c2c4b54ca", "level": "note", "message": {"text": "Very large file: assistant/src/messaging/providers/slack/render-transcript.test.ts (1643 lines)"}, "properties": {"repobilityId": "8ee7c7585169ffbb", "scanner": "scanner-primary", "fingerprint": "64b1301c2c4b54ca", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-1cca664002e6d5a4", "level": "note", "message": {"text": "Very large file: assistant/src/memory/conversation-crud.ts (3009 lines)"}, "properties": {"repobilityId": "54bfb45ffb216467", "scanner": "scanner-primary", "fingerprint": "1cca664002e6d5a4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-726f0e048340b1a5", "level": "note", "message": {"text": "Very large file: assistant/src/memory/__tests__/memory-retrospective-job.test.ts (1614 lines)"}, "properties": {"repobilityId": "d5110b924cf58092", "scanner": "scanner-primary", "fingerprint": "726f0e048340b1a5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0110f2d0124fffa6", "level": "note", "message": {"text": "Very large file: assistant/src/memory/v2/__tests__/injection.test.ts (2301 lines)"}, "properties": {"repobilityId": "f6e3cda1759dd89f", "scanner": "scanner-primary", "fingerprint": "0110f2d0124fffa6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8427492b684bdee7", "level": "note", "message": {"text": "Very large file: assistant/src/memory/v2/prompts/consolidation.ts (926 lines)"}, "properties": {"repobilityId": "d54ac4b5355454a4", "scanner": "scanner-primary", "fingerprint": "8427492b684bdee7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-47157d6545ddf208", "level": "note", "message": {"text": "Very large file: assistant/src/memory/graph/extraction.ts (1462 lines)"}, "properties": {"repobilityId": "7cea5439d2a21017", "scanner": "scanner-primary", "fingerprint": "47157d6545ddf208", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-dedb957c016b79c4", "level": "note", "message": {"text": "Very large file: assistant/src/runtime/agent-wake.ts (1285 lines)"}, "properties": {"repobilityId": "accb3d82e083750e", "scanner": "scanner-primary", "fingerprint": "dedb957c016b79c4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0b5b96bf7418215c", "level": "note", "message": {"text": "Very large file: assistant/src/runtime/__tests__/agent-wake.test.ts (2399 lines)"}, "properties": {"repobilityId": "26f195d5308ae0b0", "scanner": "scanner-primary", "fingerprint": "0b5b96bf7418215c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5e9d71a470726c09", "level": "note", "message": {"text": "Very large file: assistant/src/runtime/routes/conversation-query-routes.ts (1667 lines)"}, "properties": {"repobilityId": "d904ada6aefcdc98", "scanner": "scanner-primary", "fingerprint": "5e9d71a470726c09", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ab53c39a0f8bbb93", "level": "note", "message": {"text": "Very large file: assistant/src/runtime/routes/inbound-message-handler.ts (2575 lines)"}, "properties": {"repobilityId": "7c7d7ef2a72d32ef", "scanner": "scanner-primary", "fingerprint": "ab53c39a0f8bbb93", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b4cf02b9d9068018", "level": "note", "message": {"text": "Very large file: assistant/src/runtime/routes/conversation-routes.ts (2802 lines)"}, "properties": {"repobilityId": "0253e64ca5f3baec", "scanner": "scanner-primary", "fingerprint": "b4cf02b9d9068018", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-50df545d3a6cce06", "level": "note", "message": {"text": "Very large file: assistant/src/runtime/routes/migration-routes.ts (2044 lines)"}, "properties": {"repobilityId": "51f35ac09cf7eab0", "scanner": "scanner-primary", "fingerprint": "50df545d3a6cce06", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8c94788eb94a0b45", "level": "note", "message": {"text": "Very large file: assistant/src/runtime/migrations/vbundle-streaming-importer.ts (2805 lines)"}, "properties": {"repobilityId": "5949834edcf62b48", "scanner": "scanner-primary", "fingerprint": "8c94788eb94a0b45", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2aaa0da02fc7e848", "level": "note", "message": {"text": "Very large file: assistant/src/runtime/migrations/__tests__/vbundle-streaming-importer.test.ts (1756 lines)"}, "properties": {"repobilityId": "cc43185d2cd904a7", "scanner": "scanner-primary", "fingerprint": "2aaa0da02fc7e848", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d038ada8c5e2f958", "level": "note", "message": {"text": "Very large file: assistant/src/tools/browser/browser-execution.ts (2708 lines)"}, "properties": {"repobilityId": "c5acd6f47c702b96", "scanner": "scanner-primary", "fingerprint": "d038ada8c5e2f958", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5168591a1ff74739", "level": "note", "message": {"text": "Very large file: assistant/src/tools/browser/cdp-client/__tests__/factory.test.ts (2789 lines)"}, "properties": {"repobilityId": "dd6e18ff91fcd5dc", "scanner": "scanner-primary", "fingerprint": "5168591a1ff74739", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-001ad9a71b7010f8", "level": "note", "message": {"text": "Very large file: assistant/src/context/compactor.ts (1452 lines)"}, "properties": {"repobilityId": "224851cd1f85416b", "scanner": "scanner-primary", "fingerprint": "001ad9a71b7010f8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-db88ef7c0f607290", "level": "note", "message": {"text": "Very large file: assistant/src/telemetry/usage-telemetry-reporter.test.ts (1875 lines)"}, "properties": {"repobilityId": "824e3359b4644938", "scanner": "scanner-primary", "fingerprint": "db88ef7c0f607290", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cfea3162cc1c714d", "level": "note", "message": {"text": "Very large file: gateway/src/schema.ts (4676 lines)"}, "properties": {"repobilityId": "4318523147119fd7", "scanner": "scanner-primary", "fingerprint": "cfea3162cc1c714d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b4839a789001172d", "level": "note", "message": {"text": "Very large file: gateway/src/index.ts (2469 lines)"}, "properties": {"repobilityId": "727511d9c55cf653", "scanner": "scanner-primary", "fingerprint": "b4839a789001172d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-bcc6a899768ec125", "level": "note", "message": {"text": "Very large file: gateway/src/__tests__/slack-socket-mode-thread-tracking.test.ts (1646 lines)"}, "properties": {"repobilityId": "e698d299198401c6", "scanner": "scanner-primary", "fingerprint": "bcc6a899768ec125", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-28a1faf383e11a44", "level": "note", "message": {"text": "Very large file: gateway/src/risk/bash-risk-classifier.test.ts (1886 lines)"}, "properties": {"repobilityId": "34383d951d2f8db7", "scanner": "scanner-primary", "fingerprint": "28a1faf383e11a44", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-635d473c6df451e1", "level": "note", "message": {"text": "Very large file: gateway/src/slack/normalize.test.ts (1480 lines)"}, "properties": {"repobilityId": "56a08f8af78bcc84", "scanner": "scanner-primary", "fingerprint": "635d473c6df451e1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e2ae884954384946", "level": "note", "message": {"text": "Very large file: gateway/src/slack/socket-mode.ts (1861 lines)"}, "properties": {"repobilityId": "e3b4a4d231de53df", "scanner": "scanner-primary", "fingerprint": "e2ae884954384946", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b2cd51164685574a", "level": "note", "message": {"text": "Very large file: evals/src/lib/report-html.tsx (2055 lines)"}, "properties": {"repobilityId": "10f03476eb21528b", "scanner": "scanner-primary", "fingerprint": "b2cd51164685574a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-05f7701465d6e3bb", "level": "note", "message": {"text": "Very large file: evals/src/lib/__tests__/vellum-adapter.test.ts (1416 lines)"}, "properties": {"repobilityId": "a3195e4c3729c0de", "scanner": "scanner-primary", "fingerprint": "05f7701465d6e3bb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-775bbc17a68392ae", "level": "note", "message": {"text": "Very large file: skills/meet-join/bot/__tests__/main.test.ts (1625 lines)"}, "properties": {"repobilityId": "7460df211bc0bd5b", "scanner": "scanner-primary", "fingerprint": "775bbc17a68392ae", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-457ef46dac4fc77d", "level": "note", "message": {"text": "Very large file: skills/meet-join/bot/src/main.ts (1432 lines)"}, "properties": {"repobilityId": "cf7182386f635fc4", "scanner": "scanner-primary", "fingerprint": "457ef46dac4fc77d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-91e5cc152bce8384", "level": "note", "message": {"text": "Very large file: skills/meet-join/daemon/session-manager.ts (2996 lines)"}, "properties": {"repobilityId": "624bef0b438966e5", "scanner": "scanner-primary", "fingerprint": "91e5cc152bce8384", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3b0a9b06381ecea2", "level": "note", "message": {"text": "Very large file: skills/meet-join/daemon/__tests__/session-manager.test.ts (2477 lines)"}, "properties": {"repobilityId": "3ff955db3bbdd5f1", "scanner": "scanner-primary", "fingerprint": "3b0a9b06381ecea2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-aba2095ac97be57e", "level": "note", "message": {"text": "50 TODO/FIXME markers"}, "properties": {"repobilityId": "4b38c118003e07d2", "scanner": "scanner-primary", "fingerprint": "aba2095ac97be57e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["maintenance"]}}, {"ruleId": "scanner-19e5e4bcdc411698", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: meta/package.json"}, "properties": {"repobilityId": "531c067afb41cb25", "scanner": "scanner-primary", "fingerprint": "19e5e4bcdc411698", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "meta/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-bea1c3d87ca67716", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: assistant/examples/plugins/echo/package.json"}, "properties": {"repobilityId": "cb8733a98e040e16", "scanner": "scanner-primary", "fingerprint": "bea1c3d87ca67716", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/examples/plugins/echo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "a57bc18e9920b7f4", "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": "027f4229a325ae9c", "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": "43aabcbf7364b906", "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": "3a92fe93e6cc0e6b", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "c6fcafea64fd5596", "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": "dbc545df3073b643", "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": "ef4a4cf6646beef6", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-469b1f530dbde9e5", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: cli/AGENTS.md"}, "properties": {"repobilityId": "6a9ee78837ca9fe6", "scanner": "scanner-primary", "fingerprint": "469b1f530dbde9e5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "agents_md"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "cli/AGENTS.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-32ee1b26d9245902", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: meta/feature-flags/AGENTS.md"}, "properties": {"repobilityId": "f3bb4ed0dbf324b0", "scanner": "scanner-primary", "fingerprint": "32ee1b26d9245902", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "agents_md"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "meta/feature-flags/AGENTS.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-78c6b3bd59439e66", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/README.md"}, "properties": {"repobilityId": "1e197d304574f4d9", "scanner": "scanner-primary", "fingerprint": "78c6b3bd59439e66", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/README.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c0360931af4640a6", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: assistant/src/notifications/AGENTS.md"}, "properties": {"repobilityId": "0cd8ca5807f44e0b", "scanner": "scanner-primary", "fingerprint": "c0360931af4640a6", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "agents_md"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/notifications/AGENTS.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-57856d2717256274", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: assistant/src/config/bundled-skills/computer-use/SKILL.md"}, "properties": {"repobilityId": "f808d9d27aadceb1", "scanner": "scanner-primary", "fingerprint": "57856d2717256274", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/config/bundled-skills/computer-use/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1b1aab7496d6828f", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: assistant/src/config/bundled-skills/playbooks/SKILL.md"}, "properties": {"repobilityId": "2de571350acaf06b", "scanner": "scanner-primary", "fingerprint": "1b1aab7496d6828f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/config/bundled-skills/playbooks/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c89fc8a3d425e46b", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: assistant/src/config/bundled-skills/acp/SKILL.md"}, "properties": {"repobilityId": "4ccb167251185c67", "scanner": "scanner-primary", "fingerprint": "c89fc8a3d425e46b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/config/bundled-skills/acp/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a86014590fa763e5", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: assistant/src/workspace/migrations/AGENTS.md"}, "properties": {"repobilityId": "9666b5eacb244563", "scanner": "scanner-primary", "fingerprint": "a86014590fa763e5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "agents_md"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/workspace/migrations/AGENTS.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ec9f35039c3ea4e7", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: assistant/src/tools/AGENTS.md"}, "properties": {"repobilityId": "58d91cfa18582763", "scanner": "scanner-primary", "fingerprint": "ec9f35039c3ea4e7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "agents_md"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assistant/src/tools/AGENTS.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e3affbea73c2305d", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: gateway/src/risk/command-registry/AGENTS.md"}, "properties": {"repobilityId": "3a57b7f0368c4fc2", "scanner": "scanner-primary", "fingerprint": "e3affbea73c2305d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "agents_md"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "gateway/src/risk/command-registry/AGENTS.md"}, "region": {"startLine": 57}}}]}, {"ruleId": "scanner-ff2d4e09ff918097", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/AGENTS.md"}, "properties": {"repobilityId": "44311e4b06948a6e", "scanner": "scanner-primary", "fingerprint": "ff2d4e09ff918097", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "agents_md"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/AGENTS.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cd09138cc566d63d", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/notifications/SKILL.md"}, "properties": {"repobilityId": "9c7d64310b9f76f2", "scanner": "scanner-primary", "fingerprint": "cd09138cc566d63d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/notifications/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6010cf08623b9436", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/watch-together/SKILL.md"}, "properties": {"repobilityId": "5763f7037db5acb3", "scanner": "scanner-primary", "fingerprint": "6010cf08623b9436", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/watch-together/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9d2fd85fe0d4d426", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/vellum-oauth-integrations/SKILL.md"}, "properties": {"repobilityId": "6a75ced7c8c924a6", "scanner": "scanner-primary", "fingerprint": "9d2fd85fe0d4d426", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/vellum-oauth-integrations/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e0e085ba59c87973", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/assistant-migration/references/claude.md"}, "properties": {"repobilityId": "f377c1466ff7da8f", "scanner": "scanner-primary", "fingerprint": "e0e085ba59c87973", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/assistant-migration/references/claude.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9f0629d860a28ade", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/vellum-heartbeat/SKILL.md"}, "properties": {"repobilityId": "88d1f0f5fd8b6fe2", "scanner": "scanner-primary", "fingerprint": "9f0629d860a28ade", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/vellum-heartbeat/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5264beba7c71d1d7", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/conversation-launcher/SKILL.md"}, "properties": {"repobilityId": "de0c376117ba13a5", "scanner": "scanner-primary", "fingerprint": "5264beba7c71d1d7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/conversation-launcher/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b8d092dbd9ae21c2", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/vellum-skills-catalog/SKILL.md"}, "properties": {"repobilityId": "f8f17ae4347b8fcf", "scanner": "scanner-primary", "fingerprint": "b8d092dbd9ae21c2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/vellum-skills-catalog/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7fbbe120de99d795", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/weather/SKILL.md"}, "properties": {"repobilityId": "3e1cd97e0d7dbb54", "scanner": "scanner-primary", "fingerprint": "7fbbe120de99d795", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/weather/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-44d3d818580b9f2e", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/chatgpt-import/SKILL.md"}, "properties": {"repobilityId": "e6fd6672942d58ea", "scanner": "scanner-primary", "fingerprint": "44d3d818580b9f2e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/chatgpt-import/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cdf69a4648db08a5", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/macos-automation/SKILL.md"}, "properties": {"repobilityId": "784de3891421bfdd", "scanner": "scanner-primary", "fingerprint": "cdf69a4648db08a5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/macos-automation/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ab6761d825be8c06", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/tasks/SKILL.md"}, "properties": {"repobilityId": "f0b5f2b758aa9d0e", "scanner": "scanner-primary", "fingerprint": "ab6761d825be8c06", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/tasks/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2c037dde6ad623db", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/screen-recording/SKILL.md"}, "properties": {"repobilityId": "20894eb9d0ce269f", "scanner": "scanner-primary", "fingerprint": "2c037dde6ad623db", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/screen-recording/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-60c17943614a010e", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/vellum-self-knowledge/SKILL.md"}, "properties": {"repobilityId": "337ecafbf469e1a1", "scanner": "scanner-primary", "fingerprint": "60c17943614a010e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/vellum-self-knowledge/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-26016bfa20a73d97", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/meet-join/AGENTS.md"}, "properties": {"repobilityId": "111f931ff09953ed", "scanner": "scanner-primary", "fingerprint": "26016bfa20a73d97", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "agents_md"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/meet-join/AGENTS.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-98be033152fd4b0b", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/mcp-setup/SKILL.md"}, "properties": {"repobilityId": "4977d2cf53f4370b", "scanner": "scanner-primary", "fingerprint": "98be033152fd4b0b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/mcp-setup/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a77c987857523893", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/cli-discover/SKILL.md"}, "properties": {"repobilityId": "f87f6493af13e2a9", "scanner": "scanner-primary", "fingerprint": "a77c987857523893", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/cli-discover/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-bbb90c090e7e2e94", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/inbox-management/SKILL.md"}, "properties": {"repobilityId": "9e13d189cd90bd71", "scanner": "scanner-primary", "fingerprint": "bbb90c090e7e2e94", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/inbox-management/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-98fd0ca3b2edc893", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: skills/oura/SKILL.md"}, "properties": {"repobilityId": "b915ec6f1fa859c0", "scanner": "scanner-primary", "fingerprint": "98fd0ca3b2edc893", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/oura/SKILL.md"}, "region": {"startLine": 103}}}]}, {"ruleId": "scanner-d94de8fac2db649c", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: skills/deploy-fullstack-vercel/SKILL.md"}, "properties": {"repobilityId": "17f3a71e9724d037", "scanner": "scanner-primary", "fingerprint": "d94de8fac2db649c", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/deploy-fullstack-vercel/SKILL.md"}, "region": {"startLine": 196}}}]}, {"ruleId": "scanner-88f5ad5577569fb4", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/watcher/SKILL.md"}, "properties": {"repobilityId": "695260664da958a0", "scanner": "scanner-primary", "fingerprint": "88f5ad5577569fb4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/watcher/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-fbdcdb3635399145", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/vellum-conversation-management/SKILL.md"}, "properties": {"repobilityId": "c6e1de3b79fe16c6", "scanner": "scanner-primary", "fingerprint": "fbdcdb3635399145", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/vellum-conversation-management/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9a4f448660afdbf1", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/geo-writing/SKILL.md"}, "properties": {"repobilityId": "5b80a2a6c5a11940", "scanner": "scanner-primary", "fingerprint": "9a4f448660afdbf1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/geo-writing/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f98bd3645fd57c5d", "level": "none", "message": {"text": "Commented-code block (8 lines) in credential-executor/src/cli.ts:34"}, "properties": {"repobilityId": "ee05a739771a1bec", "scanner": "scanner-primary", "fingerprint": "f98bd3645fd57c5d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-27ef7d0bdbe5a22c", "level": "none", "message": {"text": "Commented-code block (7 lines) in credential-executor/src/managed-main.ts:140"}, "properties": {"repobilityId": "7022182554c9ef34", "scanner": "scanner-primary", "fingerprint": "27ef7d0bdbe5a22c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b3d73cbed6a3b011", "level": "none", "message": {"text": "Commented-code block (5 lines) in credential-executor/src/__tests__/http-policy.test.ts:356"}, "properties": {"repobilityId": "3a3adf7230416dd5", "scanner": "scanner-primary", "fingerprint": "b3d73cbed6a3b011", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-67106f99db3f6bec", "level": "none", "message": {"text": "Commented-code block (7 lines) in credential-executor/src/__tests__/local-secure-key-backend.test.ts:160"}, "properties": {"repobilityId": "87101ed82554e338", "scanner": "scanner-primary", "fingerprint": "67106f99db3f6bec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-87e5c8c190006c4f", "level": "none", "message": {"text": "Commented-code block (5 lines) in credential-executor/src/__tests__/command-workspace.test.ts:941"}, "properties": {"repobilityId": "08da867fe7b92ce4", "scanner": "scanner-primary", "fingerprint": "87e5c8c190006c4f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-820d4ba0c02799eb", "level": "none", "message": {"text": "Commented-code block (5 lines) in credential-executor/src/__tests__/ces-migrations-runner.test.ts:32"}, "properties": {"repobilityId": "a0923a6422c7095d", "scanner": "scanner-primary", "fingerprint": "820d4ba0c02799eb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b108d3477465cb19", "level": "none", "message": {"text": "Commented-code block (5 lines) in credential-executor/src/__tests__/command-executor.test.ts:1783"}, "properties": {"repobilityId": "207ff272f65caf75", "scanner": "scanner-primary", "fingerprint": "b108d3477465cb19", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7c6c17c371044cb0", "level": "note", "message": {"text": "Legacy-named symbol `ast_old` in credential-executor/src/__tests__/managed-lazy-getters.test.ts:25"}, "properties": {"repobilityId": "2c421ec26b1ec51d", "scanner": "scanner-primary", "fingerprint": "7c6c17c371044cb0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-591ef6fc18d2ba76", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 credential-executor/src/__tests__/managed-reconnect.test.ts:66"}, "properties": {"repobilityId": "5d7e2f68dd277364", "scanner": "scanner-primary", "fingerprint": "591ef6fc18d2ba76", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-52f631ea30cf4a67", "level": "none", "message": {"text": "Commented-code block (5 lines) in credential-executor/src/__tests__/managed-integration.test.ts:368"}, "properties": {"repobilityId": "612adb7c94a174d9", "scanner": "scanner-primary", "fingerprint": "52f631ea30cf4a67", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-62df476004cf7ab7", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 credential-executor/src/__tests__/managed-integration.test.ts:388"}, "properties": {"repobilityId": "ea323d00b3fe3de4", "scanner": "scanner-primary", "fingerprint": "62df476004cf7ab7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-333008f4da501ee4", "level": "none", "message": {"text": "Commented-code block (5 lines) in credential-executor/src/commands/executor.ts:708"}, "properties": {"repobilityId": "ed983829269cda8e", "scanner": "scanner-primary", "fingerprint": "333008f4da501ee4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eca6701a30e691ad", "level": "none", "message": {"text": "Commented-code block (5 lines) in credential-executor/src/commands/validator.ts:436"}, "properties": {"repobilityId": "814ea4d1485d9792", "scanner": "scanner-primary", "fingerprint": "eca6701a30e691ad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6412c0c739aacaba", "level": "none", "message": {"text": "Commented-code block (6 lines) in credential-executor/src/commands/workspace.ts:187"}, "properties": {"repobilityId": "a225dd112af77518", "scanner": "scanner-primary", "fingerprint": "6412c0c739aacaba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-14e4107a7d8786a0", "level": "none", "message": {"text": "Commented-code block (5 lines) in credential-executor/src/http/path-template.ts:209"}, "properties": {"repobilityId": "e16921ea15789f71", "scanner": "scanner-primary", "fingerprint": "14e4107a7d8786a0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-765649a756db4ae6", "level": "none", "message": {"text": "Commented-code block (6 lines) in credential-executor/src/materializers/local-secure-key-backend.ts:370"}, "properties": {"repobilityId": "44cbadc25a56c673", "scanner": "scanner-primary", "fingerprint": "765649a756db4ae6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-85a7de0d6176332f", "level": "none", "message": {"text": "Commented-code block (13 lines) in apps/web/vite.config.ts:83"}, "properties": {"repobilityId": "e8504c67777284ec", "scanner": "scanner-primary", "fingerprint": "85a7de0d6176332f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1b0e9c66376326ac", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/test-setup.ts:17"}, "properties": {"repobilityId": "8c25fe847e59901b", "scanner": "scanner-primary", "fingerprint": "1b0e9c66376326ac", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4a5941dba492f866", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/capacitor.config.ts:27"}, "properties": {"repobilityId": "01e87eee1bf601f1", "scanner": "scanner-primary", "fingerprint": "4a5941dba492f866", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0bda481f5ee656c2", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/vite-plugin-local-mode.ts:580"}, "properties": {"repobilityId": "16935036db148914", "scanner": "scanner-primary", "fingerprint": "0bda481f5ee656c2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ff6332088cc715ec", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/eslint.config.mjs:52"}, "properties": {"repobilityId": "d458542151b4be1c", "scanner": "scanner-primary", "fingerprint": "ff6332088cc715ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-78d9d83cc16d8240", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/scripts/postinstall.ts:75"}, "properties": {"repobilityId": "2a02298b55b27e68", "scanner": "scanner-primary", "fingerprint": "78d9d83cc16d8240", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eee22f4732397e02", "level": "none", "message": {"text": "Commented-code block (10 lines) in apps/web/src/routes.tsx:44"}, "properties": {"repobilityId": "ff20f884badad3d1", "scanner": "scanner-primary", "fingerprint": "eee22f4732397e02", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f4d38f86eaa94b28", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/root-layout.tsx:134"}, "properties": {"repobilityId": "9d458810d840af4a", "scanner": "scanner-primary", "fingerprint": "f4d38f86eaa94b28", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-98cd08b42249f07f", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/types/interaction-ui-types.ts:70"}, "properties": {"repobilityId": "3857a1f46d6958eb", "scanner": "scanner-primary", "fingerprint": "98cd08b42249f07f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-60ae6d029737910f", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/stores/viewer-store.ts:290"}, "properties": {"repobilityId": "8557ca6a09a7d5a9", "scanner": "scanner-primary", "fingerprint": "60ae6d029737910f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-53abc125524fd015", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/stores/auth-store.test.ts:209"}, "properties": {"repobilityId": "c9abaf8ec4a14959", "scanner": "scanner-primary", "fingerprint": "53abc125524fd015", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ee14e11f98db60cc", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/stores/auth-store.ts:287"}, "properties": {"repobilityId": "ddf6d298fa6cfcf5", "scanner": "scanner-primary", "fingerprint": "ee14e11f98db60cc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c5225ff0bc6de93e", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/stores/viewer-store.test.ts:441"}, "properties": {"repobilityId": "a063ff28286c88b3", "scanner": "scanner-primary", "fingerprint": "c5225ff0bc6de93e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a4aabad8a9db96f0", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/stores/resolved-assistants-store.ts:181"}, "properties": {"repobilityId": "64041cec6de3eaf5", "scanner": "scanner-primary", "fingerprint": "a4aabad8a9db96f0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8b7cddb251fb50fb", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/utils/is-transient-network-error.test.ts:15"}, "properties": {"repobilityId": "907146abb16bad31", "scanner": "scanner-primary", "fingerprint": "8b7cddb251fb50fb", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-91b4fd15b872a268", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/utils/is-transient-network-error.ts:13"}, "properties": {"repobilityId": "bd6736fb2940c0b2", "scanner": "scanner-primary", "fingerprint": "91b4fd15b872a268", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-464602b7c34b5565", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/utils/typed-storage.ts:145"}, "properties": {"repobilityId": "56e8b1ca46cbd465", "scanner": "scanner-primary", "fingerprint": "464602b7c34b5565", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d5fcc9f197796dee", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/utils/local-settings.ts:109"}, "properties": {"repobilityId": "010d39bec6393155", "scanner": "scanner-primary", "fingerprint": "d5fcc9f197796dee", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2ab37062291b78d5", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/utils/use-bundled-avatar-components.ts:16"}, "properties": {"repobilityId": "9da7a4afefc495c1", "scanner": "scanner-primary", "fingerprint": "2ab37062291b78d5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-de22205c70f67d35", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/utils/sandbox-bridge.ts:11"}, "properties": {"repobilityId": "0d3edf593efb980f", "scanner": "scanner-primary", "fingerprint": "de22205c70f67d35", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-44b4a6f13a1646eb", "level": "note", "message": {"text": "Legacy-named symbol `nudgeLegacy` in apps/web/src/utils/storage-migration.ts:260"}, "properties": {"repobilityId": "83860faf3e526f4b", "scanner": "scanner-primary", "fingerprint": "44b4a6f13a1646eb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e13896e88a1d9843", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/web/src/utils/conversation-list-fetchers.ts:261"}, "properties": {"repobilityId": "e74a5bd29c8e695b", "scanner": "scanner-primary", "fingerprint": "e13896e88a1d9843", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-492d07c95ae80f9d", "level": "note", "message": {"text": "Legacy-named symbol `nudgeLegacy` in apps/web/src/utils/storage-migration.test.ts:343"}, "properties": {"repobilityId": "4edab461649a37e0", "scanner": "scanner-primary", "fingerprint": "492d07c95ae80f9d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-fe1d0b6751539be9", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/components/file-markdown.tsx:243"}, "properties": {"repobilityId": "97b665d6ccfd2ae3", "scanner": "scanner-primary", "fingerprint": "fe1d0b6751539be9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f7562f78c9acc3c9", "level": "note", "message": {"text": "Legacy-named symbol `restoring_backup` in apps/web/src/components/status-banner.tsx:50"}, "properties": {"repobilityId": "2124e28f729b2cbe", "scanner": "scanner-primary", "fingerprint": "f7562f78c9acc3c9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-befe47dd90cea0f1", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/components/profile-card.test.tsx:54"}, "properties": {"repobilityId": "af856a0b5946a384", "scanner": "scanner-primary", "fingerprint": "befe47dd90cea0f1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-82a52b4c01246ac7", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/components/timezone-sync.test.tsx:194"}, "properties": {"repobilityId": "42b6a5b2282a7de3", "scanner": "scanner-primary", "fingerprint": "82a52b4c01246ac7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d70e528abb240efb", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/components/about-page.tsx:51"}, "properties": {"repobilityId": "8e54cdd232422931", "scanner": "scanner-primary", "fingerprint": "d70e528abb240efb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0fec4482c73658f9", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/components/profile-card.tsx:194"}, "properties": {"repobilityId": "b7c9e609e481c545", "scanner": "scanner-primary", "fingerprint": "0fec4482c73658f9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cd5ccff8e255a1dd", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/components/profile-quick-add-provider.tsx:103"}, "properties": {"repobilityId": "297bc66ee707a9c8", "scanner": "scanner-primary", "fingerprint": "cd5ccff8e255a1dd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5fa2a9a10cf4c3e1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/components/profile-quick-add-provider.tsx:23"}, "properties": {"repobilityId": "30b2e7cf99720b05", "scanner": "scanner-primary", "fingerprint": "5fa2a9a10cf4c3e1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-bf86d0fd52a3b658", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/components/sidebar-shell.tsx:38"}, "properties": {"repobilityId": "cf098013cc7c66ed", "scanner": "scanner-primary", "fingerprint": "bf86d0fd52a3b658", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ffe7994564221a92", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/components/share-feedback-modal.tsx:205"}, "properties": {"repobilityId": "f3f4bcb05d2351b2", "scanner": "scanner-primary", "fingerprint": "ffe7994564221a92", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a255815a88d7d0d1", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/components/integrations/integration-icon.tsx:14"}, "properties": {"repobilityId": "4d735284727fa900", "scanner": "scanner-primary", "fingerprint": "a255815a88d7d0d1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-936da8bfa371f076", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/web/src/components/charts/format-date-label.ts:41"}, "properties": {"repobilityId": "89f75cf27ecca67d", "scanner": "scanner-primary", "fingerprint": "936da8bfa371f076", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f1c20d05021f1f93", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/components/avatar/subagent-avatar-chip.tsx:34"}, "properties": {"repobilityId": "56a100833c6f5f2b", "scanner": "scanner-primary", "fingerprint": "f1c20d05021f1f93", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c3459f353a9b77e3", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/components/avatar/animated-avatar.tsx:161"}, "properties": {"repobilityId": "e964a90e6782c417", "scanner": "scanner-primary", "fingerprint": "c3459f353a9b77e3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fbf8f29f129ec357", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/components/command-palette/command-palette-window-page.tsx:97"}, "properties": {"repobilityId": "8875cc1e9ae6448b", "scanner": "scanner-primary", "fingerprint": "fbf8f29f129ec357", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f73ad3419aed6758", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/lib/api-interceptors.test.ts:180"}, "properties": {"repobilityId": "f9a77aad46d7e1e0", "scanner": "scanner-primary", "fingerprint": "f73ad3419aed6758", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d13f10f22d7bbdaa", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/lib/event-bus.ts:163"}, "properties": {"repobilityId": "b8d6e265a06d36e3", "scanner": "scanner-primary", "fingerprint": "d13f10f22d7bbdaa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a67beb378a5fdb73", "level": "none", "message": {"text": "Commented-code block (11 lines) in apps/web/src/lib/diagnostics-platform.test.ts:16"}, "properties": {"repobilityId": "50f398d1837c173e", "scanner": "scanner-primary", "fingerprint": "a67beb378a5fdb73", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-155c73e793a325aa", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/lib/local-mode-repair.test.ts:6"}, "properties": {"repobilityId": "ecaac3eda0592dfe", "scanner": "scanner-primary", "fingerprint": "155c73e793a325aa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7469caaf1438d3c3", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/lib/diagnostics.test.ts:6"}, "properties": {"repobilityId": "db618e66f0e55f4c", "scanner": "scanner-primary", "fingerprint": "7469caaf1438d3c3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d33812b5f8f710df", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/lib/api-interceptors.ts:144"}, "properties": {"repobilityId": "44522fe8c1caaf22", "scanner": "scanner-primary", "fingerprint": "d33812b5f8f710df", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2ee0594ccc191952", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/lib/threshold-api.ts:91"}, "properties": {"repobilityId": "4691035e154a646b", "scanner": "scanner-primary", "fingerprint": "2ee0594ccc191952", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9635c668d1706801", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/tts-synthesize.ts:82"}, "properties": {"repobilityId": "f15cabdbc67af60c", "scanner": "scanner-primary", "fingerprint": "9635c668d1706801", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-dc1d8fe95fd61d55", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/backwards-compat/utils.ts:88"}, "properties": {"repobilityId": "3ab5290d350fa554", "scanner": "scanner-primary", "fingerprint": "dc1d8fe95fd61d55", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5375b8323e39e3e5", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/lib/backwards-compat/impersonate-version-flag.ts:9"}, "properties": {"repobilityId": "349d60b1dbd0802b", "scanner": "scanner-primary", "fingerprint": "5375b8323e39e3e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f141d0562ae2902b", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/lib/backwards-compat/conversation-processing-state.test.ts:64"}, "properties": {"repobilityId": "f9e696d59d57db09", "scanner": "scanner-primary", "fingerprint": "f141d0562ae2902b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-95b08e829044a76b", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/lib/navigation/navigation-resolver.ts:278"}, "properties": {"repobilityId": "f807d12430e7b048", "scanner": "scanner-primary", "fingerprint": "95b08e829044a76b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6dbd95be7f057520", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/auth/request-headers.ts:4"}, "properties": {"repobilityId": "a7046fdb58aabcaf", "scanner": "scanner-primary", "fingerprint": "6dbd95be7f057520", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-24369997eda8467e", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/lib/sentry/sentry-init.ts:33"}, "properties": {"repobilityId": "3502c1bc09a8acdb", "scanner": "scanner-primary", "fingerprint": "24369997eda8467e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ecf56489002f07b7", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/sentry/sentry-init.ts:35"}, "properties": {"repobilityId": "129aba5016ae5555", "scanner": "scanner-primary", "fingerprint": "ecf56489002f07b7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-cf8ae87f61d83e00", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/lib/billing/machine-sizes.ts:39"}, "properties": {"repobilityId": "cec9e94108bb40bf", "scanner": "scanner-primary", "fingerprint": "cf8ae87f61d83e00", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cd479244188da262", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/lib/streaming/stream-transport.ts:125"}, "properties": {"repobilityId": "d0e2adbb45596985", "scanner": "scanner-primary", "fingerprint": "cd479244188da262", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c89ee316dc919012", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/lib/streaming/stream-transport.test.ts:93"}, "properties": {"repobilityId": "3d45c502150bf485", "scanner": "scanner-primary", "fingerprint": "c89ee316dc919012", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7e1617d05a008f46", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/web/src/lib/streaming/event-parser.test.ts:3479"}, "properties": {"repobilityId": "526c0d11ff9bd785", "scanner": "scanner-primary", "fingerprint": "7e1617d05a008f46", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a9d5abb80c73ae63", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/lib/streaming/cold-anchor.ts:65"}, "properties": {"repobilityId": "04c45d8ba084a65f", "scanner": "scanner-primary", "fingerprint": "a9d5abb80c73ae63", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a6ee44f5dbb7b9c0", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/lib/streaming/cold-anchor.ts:5"}, "properties": {"repobilityId": "500cb4cc9ca7b658", "scanner": "scanner-primary", "fingerprint": "a6ee44f5dbb7b9c0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-242b48c3a98a03ce", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/lib/streaming/stream-watchdog.ts:102"}, "properties": {"repobilityId": "e13139c72fd370ce", "scanner": "scanner-primary", "fingerprint": "242b48c3a98a03ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b6d20a7f75691e06", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/runtime/local-mode-host.ts:133"}, "properties": {"repobilityId": "d4135c401127e6d9", "scanner": "scanner-primary", "fingerprint": "b6d20a7f75691e06", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5fb47583885eb9b1", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/runtime/is-electron.ts:88"}, "properties": {"repobilityId": "9d83b00725a9fb94", "scanner": "scanner-primary", "fingerprint": "5fb47583885eb9b1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb4588f398e3e350", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/runtime/notifications.ts:368"}, "properties": {"repobilityId": "79a6f76e0e00c40f", "scanner": "scanner-primary", "fingerprint": "eb4588f398e3e350", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-963005fd4f73022d", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/runtime/native-auth.ts:118"}, "properties": {"repobilityId": "67c7814aea9b5b13", "scanner": "scanner-primary", "fingerprint": "963005fd4f73022d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4148a382fac0f4c1", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/runtime/session-token.ts:3"}, "properties": {"repobilityId": "a4f4dc4fb809cfe2", "scanner": "scanner-primary", "fingerprint": "4148a382fac0f4c1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ed09b94b72d2876", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/runtime/event-sources/electron-deep-links.test.ts:31"}, "properties": {"repobilityId": "19f150eb4a92cb3c", "scanner": "scanner-primary", "fingerprint": "3ed09b94b72d2876", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-81a61cd848dacea7", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/runtime/event-sources/capacitor-app-state.test.ts:39"}, "properties": {"repobilityId": "a737f2d548e8ca3d", "scanner": "scanner-primary", "fingerprint": "81a61cd848dacea7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b857d73c08c66149", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/assistant/api.ts:475"}, "properties": {"repobilityId": "50bf451a72054156", "scanner": "scanner-primary", "fingerprint": "b857d73c08c66149", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a659856739cb9001", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/assistant/sse-service.ts:58"}, "properties": {"repobilityId": "c564be250fe9f740", "scanner": "scanner-primary", "fingerprint": "a659856739cb9001", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5d020a716f454792", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/assistant/sse-service.test.ts:64"}, "properties": {"repobilityId": "6a2222f3cb558ee1", "scanner": "scanner-primary", "fingerprint": "5d020a716f454792", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-21c701fa7e99acf0", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/assistant/lifecycle-service.test.ts:484"}, "properties": {"repobilityId": "73eaeacaf3e0c43c", "scanner": "scanner-primary", "fingerprint": "21c701fa7e99acf0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-588a043b62992bad", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/assistant/llm-model-catalog.ts:3"}, "properties": {"repobilityId": "b84d89dc9876f1e8", "scanner": "scanner-primary", "fingerprint": "588a043b62992bad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2e1ce0c2a7d32e21", "level": "note", "message": {"text": "Legacy-named symbol `restoring_backup` in apps/web/src/assistant/operational-status.ts:24"}, "properties": {"repobilityId": "3e60201d6ff5ba6d", "scanner": "scanner-primary", "fingerprint": "2e1ce0c2a7d32e21", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-deda0a8b054d6a9e", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/assistant/use-lifecycle.ts:44"}, "properties": {"repobilityId": "1be272389df4c1b1", "scanner": "scanner-primary", "fingerprint": "deda0a8b054d6a9e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-79d865fcffb3270c", "level": "note", "message": {"text": "Legacy-named symbol `uploadAvatarImageLegacy` in apps/web/src/assistant/avatar-api.ts:126"}, "properties": {"repobilityId": "da0300f51e880e00", "scanner": "scanner-primary", "fingerprint": "79d865fcffb3270c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-884a68a7a7b039e1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/assistant/queries.ts:7"}, "properties": {"repobilityId": "b98ddefe5d072dbd", "scanner": "scanner-primary", "fingerprint": "884a68a7a7b039e1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-29d2fa3ae6342d32", "level": "none", "message": {"text": "Commented-code block (10 lines) in apps/web/src/assistant/lifecycle-service.ts:158"}, "properties": {"repobilityId": "86d8e49c02b6ecab", "scanner": "scanner-primary", "fingerprint": "29d2fa3ae6342d32", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c2f69e7f8dde0fbf", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/assistant/llm-model-catalog.test.ts:86"}, "properties": {"repobilityId": "238a607fb13284b1", "scanner": "scanner-primary", "fingerprint": "c2f69e7f8dde0fbf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac4d8765cb7c8ce6", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/hooks/use-conversation-sync.ts:204"}, "properties": {"repobilityId": "9811454f894f5a66", "scanner": "scanner-primary", "fingerprint": "ac4d8765cb7c8ce6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-681dcd2413d3a991", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/hooks/use-assistant-identity-init.ts:48"}, "properties": {"repobilityId": "6448112c2b887534", "scanner": "scanner-primary", "fingerprint": "681dcd2413d3a991", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-74d67dcbf2dcbb4c", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/web/src/hooks/use-platform-gate.ts:159"}, "properties": {"repobilityId": "57d2ce86dda23b5f", "scanner": "scanner-primary", "fingerprint": "74d67dcbf2dcbb4c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f2d2eace7db52fcd", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/hooks/use-event-bus-init.ts:48"}, "properties": {"repobilityId": "5d888f04934cf9ed", "scanner": "scanner-primary", "fingerprint": "f2d2eace7db52fcd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1c92267a3059387a", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/hooks/use-platform-gate.test.ts:189"}, "properties": {"repobilityId": "dcf9c740cfc61d27", "scanner": "scanner-primary", "fingerprint": "1c92267a3059387a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2d415bf684cf2e1a", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/hooks/use-bus-subscription.ts:33"}, "properties": {"repobilityId": "11581339ff06e0eb", "scanner": "scanner-primary", "fingerprint": "2d415bf684cf2e1a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7348eb55d906e7c1", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/hooks/use-client-feature-flag-sync.ts:67"}, "properties": {"repobilityId": "afb973d416f75362", "scanner": "scanner-primary", "fingerprint": "7348eb55d906e7c1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ed2b124dda8d9707", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/hooks/use-event-bus-init.test.tsx:37"}, "properties": {"repobilityId": "ab1f90991ff8fe47", "scanner": "scanner-primary", "fingerprint": "ed2b124dda8d9707", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-052d5b5d8bb8d45f", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/hooks/use-assistant-avatar.ts:33"}, "properties": {"repobilityId": "9ae0d5e5891c638b", "scanner": "scanner-primary", "fingerprint": "052d5b5d8bb8d45f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-885bf85c2b542041", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/hooks/use-visible-viewport.ts:33"}, "properties": {"repobilityId": "062faab6025e6531", "scanner": "scanner-primary", "fingerprint": "885bf85c2b542041", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-857fd02d5589a620", "level": "none", "message": {"text": "Commented-code block (11 lines) in apps/web/src/domains/settings/ai/email-managed-content.tsx:67"}, "properties": {"repobilityId": "217fd8445747e672", "scanner": "scanner-primary", "fingerprint": "857fd02d5589a620", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e3d5c08291ccef9a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/settings/ai/email-managed-content.tsx:71"}, "properties": {"repobilityId": "b5114708e0c02997", "scanner": "scanner-primary", "fingerprint": "e3d5c08291ccef9a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7247e6ed9ce35a4d", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/settings/ai/provider-create-form.tsx:38"}, "properties": {"repobilityId": "a92754d9105783f9", "scanner": "scanner-primary", "fingerprint": "7247e6ed9ce35a4d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-97e02657ebc376d5", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/web/src/domains/settings/ai/speech-to-text-card.tsx:40"}, "properties": {"repobilityId": "1f5ac13014a5b450", "scanner": "scanner-primary", "fingerprint": "97e02657ebc376d5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c29e569b57a9d4a4", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/ai/profile-editor-provider-section.tsx:127"}, "properties": {"repobilityId": "3631de77b3e2a35f", "scanner": "scanner-primary", "fingerprint": "c29e569b57a9d4a4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-49099d01dcc4bfbe", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/ai/profile-advanced-params.tsx:269"}, "properties": {"repobilityId": "e0b8bc8095e6574c", "scanner": "scanner-primary", "fingerprint": "49099d01dcc4bfbe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f9bb9028e73e657e", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/ai/profile-editor-modal.tsx:154"}, "properties": {"repobilityId": "76bff14409db673c", "scanner": "scanner-primary", "fingerprint": "f9bb9028e73e657e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b4ac18899e595946", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/ai/manage-providers-modal.tsx:90"}, "properties": {"repobilityId": "abc65bb720e7d6b2", "scanner": "scanner-primary", "fingerprint": "b4ac18899e595946", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3c7b30764861e5bd", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/web/src/domains/settings/ai/provider-editor-modal.tsx:33"}, "properties": {"repobilityId": "9da856f093defb93", "scanner": "scanner-primary", "fingerprint": "3c7b30764861e5bd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-03ab01a3c9747db0", "level": "note", "message": {"text": "Legacy-named symbol `credits_legacy` in apps/web/src/domains/settings/components/adjust-plan-modal.test.tsx:373"}, "properties": {"repobilityId": "235785c520d30f97", "scanner": "scanner-primary", "fingerprint": "03ab01a3c9747db0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c3bd4016c82fb7c6", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/adjust-plan-modal.test.tsx:185"}, "properties": {"repobilityId": "adc059dc84719d7a", "scanner": "scanner-primary", "fingerprint": "c3bd4016c82fb7c6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad6d530e7ac3103b", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/access-consent-setting.tsx:25"}, "properties": {"repobilityId": "c5ffc186392028dc", "scanner": "scanner-primary", "fingerprint": "ad6d530e7ac3103b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cc60caaa0040942a", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/auto-top-up-payment-method-modal.tsx:19"}, "properties": {"repobilityId": "1676213133b68a1a", "scanner": "scanner-primary", "fingerprint": "cc60caaa0040942a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a1dd5807708aefa4", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/payment-methods-card.tsx:60"}, "properties": {"repobilityId": "c957de5272cf2a72", "scanner": "scanner-primary", "fingerprint": "a1dd5807708aefa4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-938171a67416238d", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/resize-card.tsx:87"}, "properties": {"repobilityId": "f93c9b40228fe9ef", "scanner": "scanner-primary", "fingerprint": "938171a67416238d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8e4ca354124dc9de", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/auto-top-up-payment-method-modal.test.tsx:76"}, "properties": {"repobilityId": "6dacda7518bef775", "scanner": "scanner-primary", "fingerprint": "8e4ca354124dc9de", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-afe134723e0f558c", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/billing-panel.tsx:65"}, "properties": {"repobilityId": "32afa2c04fefc0ea", "scanner": "scanner-primary", "fingerprint": "afe134723e0f558c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-63a14d9e710a0070", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/web/src/domains/settings/components/auto-top-up-card.tsx:177"}, "properties": {"repobilityId": "5f7beb3628058ed5", "scanner": "scanner-primary", "fingerprint": "63a14d9e710a0070", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-828f7ec7298d18ff", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/settings/components/assistant-status-panel.tsx:131"}, "properties": {"repobilityId": "dc2d47e582d6783c", "scanner": "scanner-primary", "fingerprint": "828f7ec7298d18ff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4748846a0dd9c20c", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/auto-top-up-card.test.tsx:66"}, "properties": {"repobilityId": "70fcaabcdc0c2b40", "scanner": "scanner-primary", "fingerprint": "4748846a0dd9c20c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cae50fed9d28c9b4", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/settings/components/adjust-plan-modal.tsx:82"}, "properties": {"repobilityId": "72682b2ae1c914d7", "scanner": "scanner-primary", "fingerprint": "cae50fed9d28c9b4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-021f871a67149a26", "level": "note", "message": {"text": "Legacy-named symbol `restore_backup` in apps/web/src/domains/settings/components/preview-release-channel.tsx:90"}, "properties": {"repobilityId": "5cf6a404733233a1", "scanner": "scanner-primary", "fingerprint": "021f871a67149a26", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5a8090319230d9c4", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/recovery-mode-controls.tsx:34"}, "properties": {"repobilityId": "6e18df3b46dc88ee", "scanner": "scanner-primary", "fingerprint": "5a8090319230d9c4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8fa6057cac35cde0", "level": "none", "message": {"text": "Commented-code block (10 lines) in apps/web/src/domains/settings/components/delete-account-section.tsx:25"}, "properties": {"repobilityId": "12992d56aebc4689", "scanner": "scanner-primary", "fingerprint": "8fa6057cac35cde0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e01e769f486f77ab", "level": "note", "message": {"text": "Legacy-named symbol `skip_backup` in apps/web/src/domains/settings/components/panels/doctor-chat-blocks.tsx:352"}, "properties": {"repobilityId": "abc8e3da7efe6dde", "scanner": "scanner-primary", "fingerprint": "e01e769f486f77ab", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-797de46a431ef29e", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/panels/assistant-lifecycle-panel.tsx:48"}, "properties": {"repobilityId": "d7d64ca0528e7f6e", "scanner": "scanner-primary", "fingerprint": "797de46a431ef29e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c9aa04d941d3e8d4", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/panels/assistant-terminal-panel.tsx:32"}, "properties": {"repobilityId": "45d0d22b2cd3e517", "scanner": "scanner-primary", "fingerprint": "c9aa04d941d3e8d4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b0d8ab85a84f5bb2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/settings/components/panels/use-doctor-sse.ts:121"}, "properties": {"repobilityId": "31f2148e0d4e98ea", "scanner": "scanner-primary", "fingerprint": "b0d8ab85a84f5bb2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-235893b4ba53d4ab", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/components/panels/feature-flags-panel.tsx:67"}, "properties": {"repobilityId": "3436c11522289946", "scanner": "scanner-primary", "fingerprint": "235893b4ba53d4ab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ea0e2c284e7f6177", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/settings/components/panels/feature-flags-panel.test.tsx:5"}, "properties": {"repobilityId": "7d83dad688e3750f", "scanner": "scanner-primary", "fingerprint": "ea0e2c284e7f6177", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-386ff28a5d9c1347", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/settings/components/billing-usage/billing-usage-panel.tsx:65"}, "properties": {"repobilityId": "f94569899faa5d31", "scanner": "scanner-primary", "fingerprint": "386ff28a5d9c1347", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2fc92df7f3b122cb", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/billing/upgrade-cancel-page.tsx:27"}, "properties": {"repobilityId": "ebf24e86889195da", "scanner": "scanner-primary", "fingerprint": "2fc92df7f3b122cb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-56161605b4d14230", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/settings/billing/upgrade-success-page.tsx:40"}, "properties": {"repobilityId": "439dad5676510cfe", "scanner": "scanner-primary", "fingerprint": "56161605b4d14230", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7461649f669b7b9a", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/settings/billing/pro-onboarding/billing-onboarding-modal.tsx:163"}, "properties": {"repobilityId": "2af9f19ae2456ec7", "scanner": "scanner-primary", "fingerprint": "7461649f669b7b9a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5eab61e9337f7cd", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/web/src/domains/settings/pages/notifications-page.tsx:406"}, "properties": {"repobilityId": "0d16b9c307e32c72", "scanner": "scanner-primary", "fingerprint": "f5eab61e9337f7cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5b2187e5d791e09f", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/settings/hooks/use-billing-portal-session.ts:127"}, "properties": {"repobilityId": "801717a92def1ad1", "scanner": "scanner-primary", "fingerprint": "5b2187e5d791e09f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a25817030b8794d1", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/library/library-page.tsx:15"}, "properties": {"repobilityId": "20f15ebbb4b44927", "scanner": "scanner-primary", "fingerprint": "a25817030b8794d1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-620377f8d5d3ec40", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/intelligence/plugin-detail-page.upgrade.test.tsx:73"}, "properties": {"repobilityId": "7f4079f98af6b663", "scanner": "scanner-primary", "fingerprint": "620377f8d5d3ec40", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dbd8f5714a74aa30", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/intelligence/intelligence-layout.tsx:71"}, "properties": {"repobilityId": "a83dcd6dd385312e", "scanner": "scanner-primary", "fingerprint": "dbd8f5714a74aa30", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bd34d32fd0b4c684", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/intelligence/components/plugins/plugins-tab.tsx:31"}, "properties": {"repobilityId": "5bac7bad92334aa1", "scanner": "scanner-primary", "fingerprint": "bd34d32fd0b4c684", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cefb9dccf9769d21", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/intelligence/components/plugins/plugins-tab.test.tsx:285"}, "properties": {"repobilityId": "830abfa004f0dcff", "scanner": "scanner-primary", "fingerprint": "cefb9dccf9769d21", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d816acca1ec252e4", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/turn-coordinator.test.ts:96"}, "properties": {"repobilityId": "28507b827fc1bd62", "scanner": "scanner-primary", "fingerprint": "d816acca1ec252e4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1dc4da982f21dcac", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/chat-layout.tsx:185"}, "properties": {"repobilityId": "eb22b3ea8209d4c7", "scanner": "scanner-primary", "fingerprint": "1dc4da982f21dcac", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-424ea617f5cbdacc", "level": "none", "message": {"text": "Commented-code block (10 lines) in apps/web/src/domains/chat/turn-store.test.ts:124"}, "properties": {"repobilityId": "0973f4528dd3e8d5", "scanner": "scanner-primary", "fingerprint": "424ea617f5cbdacc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a3887ff5e110d2ba", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/web/src/domains/chat/use-sidebar-state.ts:133"}, "properties": {"repobilityId": "ecd35eb41925dbda", "scanner": "scanner-primary", "fingerprint": "a3887ff5e110d2ba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2b60ca990f27531b", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/subagent-store.test.ts:920"}, "properties": {"repobilityId": "377fd1c0707e71e4", "scanner": "scanner-primary", "fingerprint": "2b60ca990f27531b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4ecf2e13033a9f9e", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/turn-store.ts:319"}, "properties": {"repobilityId": "0c10314d6e6aeba1", "scanner": "scanner-primary", "fingerprint": "4ecf2e13033a9f9e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d726b9ad98c7f80c", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/web/src/domains/chat/chat-layout-header.tsx:16"}, "properties": {"repobilityId": "97be76d4189d8efa", "scanner": "scanner-primary", "fingerprint": "d726b9ad98c7f80c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-afd0c83344fad863", "level": "none", "message": {"text": "Commented-code block (10 lines) in apps/web/src/domains/chat/turn-coordinator.ts:68"}, "properties": {"repobilityId": "65175e14d019da64", "scanner": "scanner-primary", "fingerprint": "afd0c83344fad863", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4540f72d623aa34d", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/active-chat-view.tsx:117"}, "properties": {"repobilityId": "60998c722e4c956f", "scanner": "scanner-primary", "fingerprint": "4540f72d623aa34d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6d9537c2458912a4", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/web/src/domains/chat/api/interactions.ts:190"}, "properties": {"repobilityId": "c0e3bb354ec4252f", "scanner": "scanner-primary", "fingerprint": "6d9537c2458912a4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-95b9e238f5cb0c05", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/api/messages.ts:438"}, "properties": {"repobilityId": "aa7c4ef0ec526f39", "scanner": "scanner-primary", "fingerprint": "95b9e238f5cb0c05", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4d1f88b1a8d987d6", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/web/src/domains/chat/api/post-chat-message.test.ts:202"}, "properties": {"repobilityId": "66ffc18f14eda700", "scanner": "scanner-primary", "fingerprint": "4d1f88b1a8d987d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-39e647da67f1d950", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/api/messages.test.ts:399"}, "properties": {"repobilityId": "25e25ced2d79251e", "scanner": "scanner-primary", "fingerprint": "39e647da67f1d950", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d4ca9cdbeced3f66", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/message-sorting.ts:66"}, "properties": {"repobilityId": "abad10c63d5ed467", "scanner": "scanner-primary", "fingerprint": "d4ca9cdbeced3f66", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1334fc10332de54c", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/message-merge.ts:193"}, "properties": {"repobilityId": "c3de4f704d99bd44", "scanner": "scanner-primary", "fingerprint": "1334fc10332de54c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-653e73b92317c53f", "level": "none", "message": {"text": "Commented-code block (11 lines) in apps/web/src/domains/chat/utils/sanitize-display-messages.ts:34"}, "properties": {"repobilityId": "9ac3ace8cd9994e7", "scanner": "scanner-primary", "fingerprint": "653e73b92317c53f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7081a710298b8e42", "level": "note", "message": {"text": "Legacy-named symbol `patchedOld` in apps/web/src/domains/chat/utils/sanitize-display-messages.test.ts:406"}, "properties": {"repobilityId": "817dc4150a7c371e", "scanner": "scanner-primary", "fingerprint": "7081a710298b8e42", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7996c5c9b236c228", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/sanitize-display-messages.test.ts:671"}, "properties": {"repobilityId": "37a8c16cedb746da", "scanner": "scanner-primary", "fingerprint": "7996c5c9b236c228", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9818a6da8fa31d68", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/web/src/domains/chat/utils/chat.ts:42"}, "properties": {"repobilityId": "f6e56afb4341e7c4", "scanner": "scanner-primary", "fingerprint": "9818a6da8fa31d68", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-96338e4b46f347c9", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/utils/reconcile-with-seq.ts:131"}, "properties": {"repobilityId": "73369ff04b3f9e57", "scanner": "scanner-primary", "fingerprint": "96338e4b46f347c9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-536be1d34a8d2259", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/dismissed-surfaces-storage.ts:5"}, "properties": {"repobilityId": "d222cee614d28725", "scanner": "scanner-primary", "fingerprint": "536be1d34a8d2259", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bdcc08161ccb5260", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/message-sorting.test.ts:81"}, "properties": {"repobilityId": "697ed5df0c8bb46d", "scanner": "scanner-primary", "fingerprint": "bdcc08161ccb5260", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ed69e4d58d62288", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/debug-api.ts:686"}, "properties": {"repobilityId": "25e68e7203ac595b", "scanner": "scanner-primary", "fingerprint": "9ed69e4d58d62288", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2b33cb65b3f37d63", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/tool-call-card-utils.ts:760"}, "properties": {"repobilityId": "00e587d7c20d4b95", "scanner": "scanner-primary", "fingerprint": "2b33cb65b3f37d63", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-52b340724a74a749", "level": "note", "message": {"text": "Legacy-named symbol `pageOld` in apps/web/src/domains/chat/utils/message-merge.test.ts:394"}, "properties": {"repobilityId": "8e929fecffeaa115", "scanner": "scanner-primary", "fingerprint": "52b340724a74a749", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8e8d0d1040493718", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/message-merge.test.ts:187"}, "properties": {"repobilityId": "be1c343c0b95548a", "scanner": "scanner-primary", "fingerprint": "8e8d0d1040493718", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6f1a1c2fcf93b6d2", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/stream-updaters/stream-updaters.test.ts:125"}, "properties": {"repobilityId": "4386fbe99ceb2038", "scanner": "scanner-primary", "fingerprint": "6f1a1c2fcf93b6d2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ef3d14655c592017", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/utils/stream-handlers/tool-call-handlers.ts:47"}, "properties": {"repobilityId": "c8428233290ad0c2", "scanner": "scanner-primary", "fingerprint": "ef3d14655c592017", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7b001474ee1cb7fa", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/utils/stream-handlers/message-handlers.ts:229"}, "properties": {"repobilityId": "fe11c324dd2007c5", "scanner": "scanner-primary", "fingerprint": "7b001474ee1cb7fa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c70eea3188af4b8e", "level": "none", "message": {"text": "Commented-code block (14 lines) in apps/web/src/domains/chat/components/chat-content-layout.tsx:114"}, "properties": {"repobilityId": "cb3bdd4cab77d586", "scanner": "scanner-primary", "fingerprint": "c70eea3188af4b8e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4617d2b0bbeee770", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/composer-settings-menu.tsx:126"}, "properties": {"repobilityId": "8d5b79a60038fa90", "scanner": "scanner-primary", "fingerprint": "4617d2b0bbeee770", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d06b597c994b11b9", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/chat-route-content.tsx:160"}, "properties": {"repobilityId": "236600151980a2b0", "scanner": "scanner-primary", "fingerprint": "d06b597c994b11b9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4a07cd518c398327", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/components/chat-body.tsx:200"}, "properties": {"repobilityId": "066698141c9d00a8", "scanner": "scanner-primary", "fingerprint": "4a07cd518c398327", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-faf83913c32756d2", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/chat-rule-editor-modal.tsx:195"}, "properties": {"repobilityId": "370e1df04305ff57", "scanner": "scanner-primary", "fingerprint": "faf83913c32756d2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-14bbd00147f95574", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/question-prompt-card.tsx:206"}, "properties": {"repobilityId": "9c5fadf928acb8dc", "scanner": "scanner-primary", "fingerprint": "14bbd00147f95574", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-73dbf4fa4fb32dae", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/composer-settings-menu.test.tsx:116"}, "properties": {"repobilityId": "fb10538c3eb4b403", "scanner": "scanner-primary", "fingerprint": "73dbf4fa4fb32dae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-801235015cc9db6a", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/voice-input-button.tsx:306"}, "properties": {"repobilityId": "e32bb0bafb704156", "scanner": "scanner-primary", "fingerprint": "801235015cc9db6a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-564f581aabb42347", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/maintenance-mode-banner.tsx:26"}, "properties": {"repobilityId": "bd8c8fc5cefec281", "scanner": "scanner-primary", "fingerprint": "564f581aabb42347", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-267e2cd348d88a82", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/multi-activity-group/multi-activity-group.tsx:382"}, "properties": {"repobilityId": "52c1e09fa415560d", "scanner": "scanner-primary", "fingerprint": "267e2cd348d88a82", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-be717ce8432ea172", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/multi-activity-group/multi-activity-group.stories.tsx:185"}, "properties": {"repobilityId": "1c90f3eee93291df", "scanner": "scanner-primary", "fingerprint": "be717ce8432ea172", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d3a38002fd4655d6", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/multi-activity-group/multi-activity-group.test.tsx:381"}, "properties": {"repobilityId": "6dbae98e2fa49007", "scanner": "scanner-primary", "fingerprint": "d3a38002fd4655d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fcb4a31395aea005", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/subagent-inline-progress-card/subagent-inline-progress-card.tsx:76"}, "properties": {"repobilityId": "83779ba3c16be5e2", "scanner": "scanner-primary", "fingerprint": "fcb4a31395aea005", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e7ce29753d5d1c98", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/message-hover-actions/message-hover-actions.tsx:98"}, "properties": {"repobilityId": "cd26088d31d0e0a5", "scanner": "scanner-primary", "fingerprint": "e7ce29753d5d1c98", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0b8537ec88f045cb", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/chat-composer/chat-composer.tsx:214"}, "properties": {"repobilityId": "3731c8e3851df075", "scanner": "scanner-primary", "fingerprint": "0b8537ec88f045cb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-58cd300d13e9e0e3", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/web/src/domains/chat/components/chat-composer/chat-composer.test.tsx:40"}, "properties": {"repobilityId": "3e337181d011a9ef", "scanner": "scanner-primary", "fingerprint": "58cd300d13e9e0e3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1f85d472dc32f535", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/tool-progress-card/tool-progress-card-shell.test.tsx:334"}, "properties": {"repobilityId": "314818bb4369b6db", "scanner": "scanner-primary", "fingerprint": "1f85d472dc32f535", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4aff82f3005a4e82", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/tool-progress-card/derive-step-label.ts:164"}, "properties": {"repobilityId": "2aa0137194b00c65", "scanner": "scanner-primary", "fingerprint": "4aff82f3005a4e82", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e0ca33f0daec1950", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/components/tool-progress-card/tool-step-pill.tsx:182"}, "properties": {"repobilityId": "121933a6a6ae7ac6", "scanner": "scanner-primary", "fingerprint": "e0ca33f0daec1950", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0a19dd32aec30cff", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/tool-progress-card/phase-grouped-step-list.tsx:297"}, "properties": {"repobilityId": "26a22f4ebd3c147f", "scanner": "scanner-primary", "fingerprint": "0a19dd32aec30cff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4ae12dda4246e013", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/web/src/domains/chat/components/tool-progress-card/tool-progress-card-shell.tsx:252"}, "properties": {"repobilityId": "573c54764c0bc17a", "scanner": "scanner-primary", "fingerprint": "4ae12dda4246e013", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-961c48112bdc6cfa", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/components/tool-progress-card/header-step-carousel.tsx:164"}, "properties": {"repobilityId": "700fe656411fa910", "scanner": "scanner-primary", "fingerprint": "961c48112bdc6cfa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e1cfeddc1636d6e3", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/single-activity/single-activity.tsx:109"}, "properties": {"repobilityId": "1d2c826e2e176550", "scanner": "scanner-primary", "fingerprint": "e1cfeddc1636d6e3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-32a4a5f77b012d24", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/web-search/website-carousel.tsx:63"}, "properties": {"repobilityId": "8211e958b2bec92c", "scanner": "scanner-primary", "fingerprint": "32a4a5f77b012d24", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7d61a5486bf4b14e", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/components/web-search/website-carousel.test.tsx:238"}, "properties": {"repobilityId": "f354c027d20a9dd3", "scanner": "scanner-primary", "fingerprint": "7d61a5486bf4b14e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-99eb4a5516425d1a", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/components/surfaces/table-surface.tsx:91"}, "properties": {"repobilityId": "b19d0807b3e6a7f7", "scanner": "scanner-primary", "fingerprint": "99eb4a5516425d1a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bdda60608725f283", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/voice/global-push-to-talk-bridge.tsx:67"}, "properties": {"repobilityId": "9c91c55b72b1df4a", "scanner": "scanner-primary", "fingerprint": "bdda60608725f283", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-31d3735b7b5fff80", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/voice/stt-api.ts:264"}, "properties": {"repobilityId": "a83b2529539cac53", "scanner": "scanner-primary", "fingerprint": "31d3735b7b5fff80", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6d8a0ace005d524d", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/voice/live-voice/pcm-capture.ts:26"}, "properties": {"repobilityId": "042d553ec951d741", "scanner": "scanner-primary", "fingerprint": "6d8a0ace005d524d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d4b5c873066f74d5", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/voice/live-voice/pcm-downsample-worklet.ts:55"}, "properties": {"repobilityId": "882805f581a518b5", "scanner": "scanner-primary", "fingerprint": "d4b5c873066f74d5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2cfffdac9167c937", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/voice/live-voice/live-voice-client.test.ts:28"}, "properties": {"repobilityId": "9bd335a1ffd68f9e", "scanner": "scanner-primary", "fingerprint": "2cfffdac9167c937", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-47510b769c93a25d", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/voice/live-voice/tts-playback.ts:342"}, "properties": {"repobilityId": "97a9ac648a3f90e6", "scanner": "scanner-primary", "fingerprint": "47510b769c93a25d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-217c613914921273", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-conversation-history.ts:116"}, "properties": {"repobilityId": "0076b2a1a817cb23", "scanner": "scanner-primary", "fingerprint": "217c613914921273", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-48ff70dab3253d93", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/hooks/use-conversation-history.ts:118"}, "properties": {"repobilityId": "ab4a1ac3c8f88f4d", "scanner": "scanner-primary", "fingerprint": "48ff70dab3253d93", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c6115ad478fb4714", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-open-app-from-chat.test.ts:30"}, "properties": {"repobilityId": "68c493196326e974", "scanner": "scanner-primary", "fingerprint": "c6115ad478fb4714", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-571eab0db95fa777", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-conversation-actions.ts:100"}, "properties": {"repobilityId": "e316a9d05d8db521", "scanner": "scanner-primary", "fingerprint": "571eab0db95fa777", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f27bcbea4077a362", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/web/src/domains/chat/hooks/use-ghost-text-suggestion.ts:85"}, "properties": {"repobilityId": "e2bd4ad9fdb3007e", "scanner": "scanner-primary", "fingerprint": "f27bcbea4077a362", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5cf676433be1ef8b", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-attention-tracking-graduation.test.ts:8"}, "properties": {"repobilityId": "0892218540640daf", "scanner": "scanner-primary", "fingerprint": "5cf676433be1ef8b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-656bc1fe41382cea", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-conversation-history-reconnect-refetch.test.tsx:10"}, "properties": {"repobilityId": "90070875e930efd1", "scanner": "scanner-primary", "fingerprint": "656bc1fe41382cea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-016ffc4bd3c583a5", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/hooks/use-message-reconciliation.test.tsx:48"}, "properties": {"repobilityId": "fe8a01074e6cf70b", "scanner": "scanner-primary", "fingerprint": "016ffc4bd3c583a5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bc9e7cf5f3869e63", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/hooks/use-message-reconciliation.test.tsx:361"}, "properties": {"repobilityId": "8e3552bbd1a306a1", "scanner": "scanner-primary", "fingerprint": "bc9e7cf5f3869e63", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0048ede3ec17344f", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-dictation-overlay-sync.ts:73"}, "properties": {"repobilityId": "e510ef3b7c9edb47", "scanner": "scanner-primary", "fingerprint": "0048ede3ec17344f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-93956d8aa3381909", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-message-reconciliation.ts:195"}, "properties": {"repobilityId": "769015a0db40ac6b", "scanner": "scanner-primary", "fingerprint": "93956d8aa3381909", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3bc3783d209b1a48", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/hooks/use-message-reconciliation.ts:466"}, "properties": {"repobilityId": "238dbf9981daa34e", "scanner": "scanner-primary", "fingerprint": "3bc3783d209b1a48", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a9813911d8260397", "level": "none", "message": {"text": "Commented-code block (10 lines) in apps/web/src/domains/chat/hooks/use-conversation-secondary-actions.ts:152"}, "properties": {"repobilityId": "d9e5b67c0afa2b94", "scanner": "scanner-primary", "fingerprint": "a9813911d8260397", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4b74a86a06e05a0c", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/hooks/use-event-stream-rapid-switch.test.tsx:127"}, "properties": {"repobilityId": "d8e4a2b4ddebaa9c", "scanner": "scanner-primary", "fingerprint": "4b74a86a06e05a0c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1c6b64b2424e5fc6", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-onboarding-orchestrator.ts:54"}, "properties": {"repobilityId": "9c2acd3e2a44627d", "scanner": "scanner-primary", "fingerprint": "1c6b64b2424e5fc6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-20aa6ed7afa83f26", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/hooks/use-stream-event-handler.ts:154"}, "properties": {"repobilityId": "b13bcc49ef601f7b", "scanner": "scanner-primary", "fingerprint": "20aa6ed7afa83f26", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-60686e0c73616a00", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-event-stream-resume-reconcile.test.tsx:149"}, "properties": {"repobilityId": "e77792e60d94d885", "scanner": "scanner-primary", "fingerprint": "60686e0c73616a00", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-40b7a5a4932d7adc", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/hooks/use-event-stream-resume-reconcile.test.tsx:125"}, "properties": {"repobilityId": "888d07cc7af22d64", "scanner": "scanner-primary", "fingerprint": "40b7a5a4932d7adc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-69802b5a124922b2", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/web/src/domains/chat/hooks/use-send-message.ts:156"}, "properties": {"repobilityId": "d5357c117aa00c81", "scanner": "scanner-primary", "fingerprint": "69802b5a124922b2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a55d610aa89b754f", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-attention-tracking.ts:130"}, "properties": {"repobilityId": "d66e99068777e519", "scanner": "scanner-primary", "fingerprint": "a55d610aa89b754f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2f2e6b140fc90ba5", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/web/src/domains/chat/hooks/use-conversation-loader.ts:144"}, "properties": {"repobilityId": "bb528b238fc1b28d", "scanner": "scanner-primary", "fingerprint": "2f2e6b140fc90ba5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-acb9d579f4c37112", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-attention-tracking-reconnect-sweep.test.tsx:56"}, "properties": {"repobilityId": "5743d48cea4c9603", "scanner": "scanner-primary", "fingerprint": "acb9d579f4c37112", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-65fdb7e6419d845d", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/hooks/use-subagent-card-data.ts:208"}, "properties": {"repobilityId": "13f1cf520f122829", "scanner": "scanner-primary", "fingerprint": "65fdb7e6419d845d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c36133ed81d119f6", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/hooks/use-event-stream.ts:87"}, "properties": {"repobilityId": "cbb5a3ba4f674837", "scanner": "scanner-primary", "fingerprint": "c36133ed81d119f6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-50f9cbc190f1076a", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/web/src/domains/chat/transcript/transcript.test.tsx:282"}, "properties": {"repobilityId": "95d35093ff13091d", "scanner": "scanner-primary", "fingerprint": "50f9cbc190f1076a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-676f7e60f68cadad", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/transcript/use-transcript-scroll.ts:14"}, "properties": {"repobilityId": "439452f8c7dc0886", "scanner": "scanner-primary", "fingerprint": "676f7e60f68cadad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0797bb7a1a1a4848", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/transcript/message-content.ts:1"}, "properties": {"repobilityId": "53cd82b8aec1e0a2", "scanner": "scanner-primary", "fingerprint": "0797bb7a1a1a4848", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c665c0e5007f16ed", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/transcript/use-pull-to-refresh.ts:4"}, "properties": {"repobilityId": "8e807c99eaec6871", "scanner": "scanner-primary", "fingerprint": "c665c0e5007f16ed", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0f655d4d54d31e8c", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/transcript/transcript-message-body.test.tsx:93"}, "properties": {"repobilityId": "4364a63b8071dded", "scanner": "scanner-primary", "fingerprint": "0f655d4d54d31e8c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-257f3f7423b9be18", "level": "none", "message": {"text": "Commented-code block (10 lines) in apps/web/src/domains/chat/transcript/use-history-pagination.ts:152"}, "properties": {"repobilityId": "54b51822dd084664", "scanner": "scanner-primary", "fingerprint": "257f3f7423b9be18", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5c76b642921ff14d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/web/src/domains/chat/transcript/use-history-pagination.ts:76"}, "properties": {"repobilityId": "2f1a1c492d57bf37", "scanner": "scanner-primary", "fingerprint": "5c76b642921ff14d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-378f8cfe904db6e2", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/transcript/use-transcript-scroll.test.ts:270"}, "properties": {"repobilityId": "e90697d92d5038d0", "scanner": "scanner-primary", "fingerprint": "378f8cfe904db6e2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b15bf508809524b2", "level": "none", "message": {"text": "Commented-code block (15 lines) in apps/web/src/domains/chat/transcript/use-transcript-scroll.burst.test.tsx:321"}, "properties": {"repobilityId": "1673161be6bde4ba", "scanner": "scanner-primary", "fingerprint": "b15bf508809524b2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f73b58977808f741", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/transcript/transcript-subagent-inline.test.tsx:407"}, "properties": {"repobilityId": "40d84fe3edbbe8f1", "scanner": "scanner-primary", "fingerprint": "f73b58977808f741", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-125c8becc7c4754c", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/streaming/sse-event-consumer.ts:197"}, "properties": {"repobilityId": "b817e989ce860046", "scanner": "scanner-primary", "fingerprint": "125c8becc7c4754c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e689a70fed3b5e49", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/streaming/sse-event-consumer.test.ts:44"}, "properties": {"repobilityId": "f88568af47cb23e7", "scanner": "scanner-primary", "fingerprint": "e689a70fed3b5e49", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5c6d7a7bbf1e1c04", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/web/src/domains/chat/streaming/reconcile-on-reopen.ts:85"}, "properties": {"repobilityId": "4f6ec451b8eed775", "scanner": "scanner-primary", "fingerprint": "5c6d7a7bbf1e1c04", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e1a7fe08d1423fcd", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/inspector/inspect-page.tsx:162"}, "properties": {"repobilityId": "0e7b3870ff85cd5a", "scanner": "scanner-primary", "fingerprint": "e1a7fe08d1423fcd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7a413511eca68c06", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/chat/inspector/inspect-page.test.tsx:96"}, "properties": {"repobilityId": "67d463b04a99ce0e", "scanner": "scanner-primary", "fingerprint": "7a413511eca68c06", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-19716cd51dcf699e", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/chat/inspector/inspector-api.ts:199"}, "properties": {"repobilityId": "927906b888972426", "scanner": "scanner-primary", "fingerprint": "19716cd51dcf699e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f87f4dba5d33a847", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/inspector/components/mobile-call-selector.test.tsx:84"}, "properties": {"repobilityId": "0cc17b07d7384d91", "scanner": "scanner-primary", "fingerprint": "f87f4dba5d33a847", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f8346b1f6c9aea0d", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/inspector/components/mobile-call-selector.tsx:44"}, "properties": {"repobilityId": "75d2cca57809b6ee", "scanner": "scanner-primary", "fingerprint": "f8346b1f6c9aea0d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6df2ea62164664f2", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/inspector/components/call-rail.tsx:116"}, "properties": {"repobilityId": "8f265c7fa8af4cc2", "scanner": "scanner-primary", "fingerprint": "6df2ea62164664f2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fea03682edeb79bc", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/chat/inspector/components/tabs/prompt-tab.tsx:171"}, "properties": {"repobilityId": "05c9929cf36cc5eb", "scanner": "scanner-primary", "fingerprint": "fea03682edeb79bc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4de6ce23c9a16ec2", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/logs/components/usage-tab.tsx:110"}, "properties": {"repobilityId": "54953cb714c62d2c", "scanner": "scanner-primary", "fingerprint": "4de6ce23c9a16ec2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dabec29eb29c1de4", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/home/home-feed-list.tsx:60"}, "properties": {"repobilityId": "d49224695ce660a6", "scanner": "scanner-primary", "fingerprint": "dabec29eb29c1de4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ef2a17587d807dd2", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/home/home-suggestion-pill-bar.tsx:57"}, "properties": {"repobilityId": "97331c8887017151", "scanner": "scanner-primary", "fingerprint": "ef2a17587d807dd2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-320c4c616df77310", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/home/detail-panel/home-markdown-content.tsx:15"}, "properties": {"repobilityId": "1b70d81eed2a5520", "scanner": "scanner-primary", "fingerprint": "320c4c616df77310", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-722ba049bbef4c51", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/onboarding/prechat.ts:291"}, "properties": {"repobilityId": "9bce09af2a6ada63", "scanner": "scanner-primary", "fingerprint": "722ba049bbef4c51", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4668a78b8ea8c5c5", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/web/src/domains/onboarding/onboarding-lifecycle-sync.test.tsx:282"}, "properties": {"repobilityId": "86d65f399d298f7e", "scanner": "scanner-primary", "fingerprint": "4668a78b8ea8c5c5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e7af8dd698fe223e", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/onboarding/provider-catalog.ts:1"}, "properties": {"repobilityId": "b1d3694ba3e1c540", "scanner": "scanner-primary", "fingerprint": "e7af8dd698fe223e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-da561e117c4b295b", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/onboarding/funnel-events.ts:37"}, "properties": {"repobilityId": "25d9f5d359664fd8", "scanner": "scanner-primary", "fingerprint": "da561e117c4b295b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9a706e12f280b6d3", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/web/src/domains/onboarding/cast/cast-onboarding-flow.tsx:451"}, "properties": {"repobilityId": "89d26cad9d4f2361", "scanner": "scanner-primary", "fingerprint": "9a706e12f280b6d3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-369bf2cb24beaf18", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/onboarding/cast/use-background-hatch.ts:22"}, "properties": {"repobilityId": "f7f3b6055bc1a30f", "scanner": "scanner-primary", "fingerprint": "369bf2cb24beaf18", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-44480997f37e4b05", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/onboarding/cast/screens/dialogue-screen.tsx:31"}, "properties": {"repobilityId": "a40767231f10b886", "scanner": "scanner-primary", "fingerprint": "44480997f37e4b05", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-73ef0529cd07543c", "level": "none", "message": {"text": "Commented-code block (11 lines) in apps/web/src/domains/onboarding/pages/hatching-screen.tsx:163"}, "properties": {"repobilityId": "e0fd1bd6811820ff", "scanner": "scanner-primary", "fingerprint": "73ef0529cd07543c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d122d552596f50d8", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/onboarding/pages/privacy-screen.tsx:63"}, "properties": {"repobilityId": "1460241bc4c568db", "scanner": "scanner-primary", "fingerprint": "d122d552596f50d8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ce7ff3511fd310f", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/web/src/domains/account/handle.test.ts:158"}, "properties": {"repobilityId": "271d1a7be538b8d6", "scanner": "scanner-primary", "fingerprint": "9ce7ff3511fd310f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8c4f5529fe18b66c", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/web/src/domains/account/components/personal-page-signup-screen.tsx:75"}, "properties": {"repobilityId": "806a2b0e2fa0550a", "scanner": "scanner-primary", "fingerprint": "8c4f5529fe18b66c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c41ad755987f2c03", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/web/src/domains/account/pages/provider-signup-page.tsx:157"}, "properties": {"repobilityId": "2dc821a8bdab41f4", "scanner": "scanner-primary", "fingerprint": "c41ad755987f2c03", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c0f99381b07d5608", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/macos/electron.vite.config.ts:14"}, "properties": {"repobilityId": "7634fa28f00047b9", "scanner": "scanner-primary", "fingerprint": "c0f99381b07d5608", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6878a5c14b5f15ec", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/macos/scripts/install-file-deps.ts:46"}, "properties": {"repobilityId": "4ac84d4ba0daa190", "scanner": "scanner-primary", "fingerprint": "6878a5c14b5f15ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-172ee157d5d11bd7", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/macos/scripts/dev.ts:26"}, "properties": {"repobilityId": "28275d30814b7bfb", "scanner": "scanner-primary", "fingerprint": "172ee157d5d11bd7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0e084ead0779aaeb", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/macos/scripts/prepare-electron-dev-app.ts:20"}, "properties": {"repobilityId": "786a1b0296fffb34", "scanner": "scanner-primary", "fingerprint": "0e084ead0779aaeb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0227b46885e71ae6", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/macos/src/main/deep-links.test.ts:82"}, "properties": {"repobilityId": "37902e6161ad9639", "scanner": "scanner-primary", "fingerprint": "0227b46885e71ae6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-57a2ec77c92084ad", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/macos/src/main/app-protocol.ts:62"}, "properties": {"repobilityId": "ed3bd4cbedecf2d9", "scanner": "scanner-primary", "fingerprint": "57a2ec77c92084ad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e8359b1bb223e20", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/native-auth.test.ts:153"}, "properties": {"repobilityId": "b397295796eae044", "scanner": "scanner-primary", "fingerprint": "4e8359b1bb223e20", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0adee12d974b489b", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/macos/src/main/status.ts:155"}, "properties": {"repobilityId": "6287d16c510c782e", "scanner": "scanner-primary", "fingerprint": "0adee12d974b489b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-faa7f755bab58abe", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/macos/src/main/dock.test.ts:5"}, "properties": {"repobilityId": "8cf5153fa8a22cc5", "scanner": "scanner-primary", "fingerprint": "faa7f755bab58abe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cfca72581a6e788f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/vellumapp-protocol.ts:95"}, "properties": {"repobilityId": "fbec5fd15af65b90", "scanner": "scanner-primary", "fingerprint": "cfca72581a6e788f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b3136f910b2fadc0", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/bundle-flow.ts:68"}, "properties": {"repobilityId": "57fc7b249d5e678e", "scanner": "scanner-primary", "fingerprint": "b3136f910b2fadc0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1ff2e81b59344a2f", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/macos/src/main/app-protocol.test.ts:43"}, "properties": {"repobilityId": "60f274a725796ea6", "scanner": "scanner-primary", "fingerprint": "1ff2e81b59344a2f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9e87f5cd44bb4bb6", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/macos/src/main/deep-links.ts:140"}, "properties": {"repobilityId": "6e395bf6b12d9218", "scanner": "scanner-primary", "fingerprint": "9e87f5cd44bb4bb6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-640dd83ff4143b03", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/workos-pkce.test.ts:162"}, "properties": {"repobilityId": "579094acdc673876", "scanner": "scanner-primary", "fingerprint": "640dd83ff4143b03", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-eaa6417cb8fb079c", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/macos/src/main/about.ts:63"}, "properties": {"repobilityId": "e032871abd0bcd68", "scanner": "scanner-primary", "fingerprint": "eaa6417cb8fb079c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e9a3ebc0431ee3bd", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/macos/src/main/window-state.ts:24"}, "properties": {"repobilityId": "d24493da3de45666", "scanner": "scanner-primary", "fingerprint": "e9a3ebc0431ee3bd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0b21f0776fff6bb6", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/macos/src/main/index.ts:75"}, "properties": {"repobilityId": "4fcaacb14ae5ae78", "scanner": "scanner-primary", "fingerprint": "0b21f0776fff6bb6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2100289e5edaa98e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/index.ts:257"}, "properties": {"repobilityId": "43a0d7e89cb140cd", "scanner": "scanner-primary", "fingerprint": "2100289e5edaa98e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ef134e07b6c9d294", "level": "none", "message": {"text": "Commented-code block (9 lines) in apps/macos/src/main/main-window.ts:17"}, "properties": {"repobilityId": "de5b59d77fc720c3", "scanner": "scanner-primary", "fingerprint": "ef134e07b6c9d294", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-457b89b1ff2fd6e1", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/macos/src/main/local-mode.test.ts:15"}, "properties": {"repobilityId": "f1f1f075912f8bea", "scanner": "scanner-primary", "fingerprint": "457b89b1ff2fd6e1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91a4f5209c5644d7", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/macos/src/main/dock.ts:77"}, "properties": {"repobilityId": "8b88c0646ec2fa0e", "scanner": "scanner-primary", "fingerprint": "91a4f5209c5644d7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e667ddea81b348a2", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/macos/src/main/popout-window.ts:81"}, "properties": {"repobilityId": "be90b5c39aef30b2", "scanner": "scanner-primary", "fingerprint": "e667ddea81b348a2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c7fa8c48cda387f0", "level": "none", "message": {"text": "Commented-code block (7 lines) in apps/macos/src/main/csp.ts:8"}, "properties": {"repobilityId": "5fea23a3f3bdef92", "scanner": "scanner-primary", "fingerprint": "c7fa8c48cda387f0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-17ebe552f15cd796", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/macos/src/main/session-token-store.ts:9"}, "properties": {"repobilityId": "9bcb070925ebb03a", "scanner": "scanner-primary", "fingerprint": "17ebe552f15cd796", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-afbb6cd4bca91e26", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/macos/src/main/status-icon.ts:35"}, "properties": {"repobilityId": "16d8337288d6bebd", "scanner": "scanner-primary", "fingerprint": "afbb6cd4bca91e26", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ed0e39562a785248", "level": "none", "message": {"text": "Commented-code block (13 lines) in apps/macos/src/main/commands.test.ts:5"}, "properties": {"repobilityId": "f697109def8aa2c7", "scanner": "scanner-primary", "fingerprint": "ed0e39562a785248", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2bf9d77b57846c8b", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/macos/src/main/workos-pkce.ts:88"}, "properties": {"repobilityId": "aa0a5d1198dd8c1e", "scanner": "scanner-primary", "fingerprint": "2bf9d77b57846c8b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3d260ac431dcc090", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/macos/src/main/vellumapp-protocol.test.ts:50"}, "properties": {"repobilityId": "bf939a53d45b660d", "scanner": "scanner-primary", "fingerprint": "3d260ac431dcc090", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f7a845aca940b70e", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/macos/src/main/tray.ts:213"}, "properties": {"repobilityId": "6c9b3595f7f03c1b", "scanner": "scanner-primary", "fingerprint": "f7a845aca940b70e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-151c98f846943b92", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/macos/src/main/windows.ts:69"}, "properties": {"repobilityId": "f855c5a4dbc65879", "scanner": "scanner-primary", "fingerprint": "151c98f846943b92", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a279fb5a7c803cea", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/check-generic-examples.ts:235"}, "properties": {"repobilityId": "3d3d33197da30314", "scanner": "scanner-primary", "fingerprint": "a279fb5a7c803cea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bd4b5271f78af9c0", "level": "none", "message": {"text": "Commented-code block (6 lines) in scripts/generate-emoji-catalog.ts:13"}, "properties": {"repobilityId": "cb2de0155fd66a81", "scanner": "scanner-primary", "fingerprint": "bd4b5271f78af9c0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec19003488c93728", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/generate-emoji-catalog.ts:320"}, "properties": {"repobilityId": "87b668240bebce86", "scanner": "scanner-primary", "fingerprint": "ec19003488c93728", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-27423669042043d9", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/__tests__/assistant-config.test.ts:669"}, "properties": {"repobilityId": "b8fe9700b97b680c", "scanner": "scanner-primary", "fingerprint": "27423669042043d9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-79fe171a2c555ca7", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/__tests__/client-token.test.ts:17"}, "properties": {"repobilityId": "cf6abdca5ce4808e", "scanner": "scanner-primary", "fingerprint": "79fe171a2c555ca7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e67b25469a254ff5", "level": "none", "message": {"text": "Commented-code block (9 lines) in cli/src/__tests__/orphan-detection.test.ts:264"}, "properties": {"repobilityId": "749ed0273f8ca02d", "scanner": "scanner-primary", "fingerprint": "e67b25469a254ff5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-58ee946b753549a6", "level": "none", "message": {"text": "Commented-code block (7 lines) in cli/src/__tests__/guardian-token.test.ts:481"}, "properties": {"repobilityId": "5ca431f72033dc48", "scanner": "scanner-primary", "fingerprint": "58ee946b753549a6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4411c798b92d3668", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/__tests__/backup.test.ts:82"}, "properties": {"repobilityId": "75a1f271de67ed1d", "scanner": "scanner-primary", "fingerprint": "4411c798b92d3668", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9de301608f16d145", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/__tests__/devices.test.ts:37"}, "properties": {"repobilityId": "3a3b571e11631ae1", "scanner": "scanner-primary", "fingerprint": "9de301608f16d145", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-129113dbc5621389", "level": "none", "message": {"text": "Commented-code block (6 lines) in cli/src/__tests__/teleport.test.ts:25"}, "properties": {"repobilityId": "2c5f36c3f4866267", "scanner": "scanner-primary", "fingerprint": "129113dbc5621389", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dac34593cbda16e7", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/__tests__/login-loopback.test.ts:27"}, "properties": {"repobilityId": "809b7d156e2eafcf", "scanner": "scanner-primary", "fingerprint": "dac34593cbda16e7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f734f72e0e88f690", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/__tests__/input-history.test.ts:45"}, "properties": {"repobilityId": "f84d65217b8af42a", "scanner": "scanner-primary", "fingerprint": "f734f72e0e88f690", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-153d494c146e248d", "level": "none", "message": {"text": "Commented-code block (7 lines) in cli/src/commands/login.ts:418"}, "properties": {"repobilityId": "380632012a236692", "scanner": "scanner-primary", "fingerprint": "153d494c146e248d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8008583c90510267", "level": "none", "message": {"text": "Commented-code block (7 lines) in cli/src/commands/sleep.ts:138"}, "properties": {"repobilityId": "e0f06307c6d6de47", "scanner": "scanner-primary", "fingerprint": "8008583c90510267", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5bd1b75c4a90b416", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/commands/recover.ts:86"}, "properties": {"repobilityId": "827743f8d8bd08ac", "scanner": "scanner-primary", "fingerprint": "5bd1b75c4a90b416", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7c5db4481d9257c4", "level": "none", "message": {"text": "Commented-code block (6 lines) in cli/src/commands/wake.ts:54"}, "properties": {"repobilityId": "42227adb711148d5", "scanner": "scanner-primary", "fingerprint": "7c5db4481d9257c4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8de24239272a9abd", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/commands/backup.ts:202"}, "properties": {"repobilityId": "d884471fbe2d4283", "scanner": "scanner-primary", "fingerprint": "8de24239272a9abd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4f893ea0e98d7579", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/commands/client.ts:745"}, "properties": {"repobilityId": "54a3698c8b0b9974", "scanner": "scanner-primary", "fingerprint": "4f893ea0e98d7579", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-34ce432716b0849b", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/commands/retire.ts:105"}, "properties": {"repobilityId": "11129122dacf5ceb", "scanner": "scanner-primary", "fingerprint": "34ce432716b0849b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a25092a432d18fce", "level": "none", "message": {"text": "Commented-code block (6 lines) in cli/src/commands/upgrade.ts:990"}, "properties": {"repobilityId": "22e15f5ee0b1824e", "scanner": "scanner-primary", "fingerprint": "a25092a432d18fce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c0630b23af1add5e", "level": "none", "message": {"text": "Commented-code block (7 lines) in cli/src/commands/teleport.ts:385"}, "properties": {"repobilityId": "06dbfdb9b56b06a5", "scanner": "scanner-primary", "fingerprint": "c0630b23af1add5e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cee84ef9a5d359ef", "level": "none", "message": {"text": "Commented-code block (7 lines) in cli/src/commands/restore.ts:188"}, "properties": {"repobilityId": "f3cdf669e717b194", "scanner": "scanner-primary", "fingerprint": "cee84ef9a5d359ef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6c6d7aeb8ec74306", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/commands/connect/import.ts:49"}, "properties": {"repobilityId": "d70f5ecaaed671fa", "scanner": "scanner-primary", "fingerprint": "6c6d7aeb8ec74306", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4a5098ca6bc6bfe4", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/components/DefaultMainScreen.tsx:269"}, "properties": {"repobilityId": "4a1509210968454c", "scanner": "scanner-primary", "fingerprint": "4a5098ca6bc6bfe4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-56a4fe21af6d26cd", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/components/DefaultMainScreen.tsx:298"}, "properties": {"repobilityId": "20b330dce9aeccf4", "scanner": "scanner-primary", "fingerprint": "56a4fe21af6d26cd", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d60c3fc94c094d26", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/lib/loopback-fetch.ts:26"}, "properties": {"repobilityId": "0068d4920c12859a", "scanner": "scanner-primary", "fingerprint": "d60c3fc94c094d26", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a673279eaa18e503", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/lib/guardian-token.ts:46"}, "properties": {"repobilityId": "725f01f30fc193df", "scanner": "scanner-primary", "fingerprint": "a673279eaa18e503", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0ee0d33f44950df2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 cli/src/lib/guardian-token.ts:456"}, "properties": {"repobilityId": "1bed3226d88f6621", "scanner": "scanner-primary", "fingerprint": "0ee0d33f44950df2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a8bda97d0f43c61f", "level": "none", "message": {"text": "Commented-code block (10 lines) in cli/src/lib/docker.ts:529"}, "properties": {"repobilityId": "9803cdee64fa95b9", "scanner": "scanner-primary", "fingerprint": "a8bda97d0f43c61f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4de63ebb6199e430", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/lib/__tests__/docker.test.ts:88"}, "properties": {"repobilityId": "6d828fc59620ec4e", "scanner": "scanner-primary", "fingerprint": "4de63ebb6199e430", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1a6d1cc7691a1258", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/lib/__tests__/local-runtime-client.test.ts:15"}, "properties": {"repobilityId": "14f34c8e29b5434d", "scanner": "scanner-primary", "fingerprint": "1a6d1cc7691a1258", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-644fae57890c8bd7", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/lib/environments/resolve.ts:89"}, "properties": {"repobilityId": "2d1427ce1e931d48", "scanner": "scanner-primary", "fingerprint": "644fae57890c8bd7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-654258c1741c2496", "level": "none", "message": {"text": "Commented-code block (5 lines) in cli/src/lib/environments/__tests__/paths.test.ts:6"}, "properties": {"repobilityId": "baff1c521d2a8d41", "scanner": "scanner-primary", "fingerprint": "654258c1741c2496", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9f7a3048185e0a8a", "level": "none", "message": {"text": "Commented-code block (5 lines) in packages/skill-host-contracts/src/tool-types.ts:125"}, "properties": {"repobilityId": "04f70372e6897246", "scanner": "scanner-primary", "fingerprint": "9f7a3048185e0a8a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f4d2a532e670736a", "level": "none", "message": {"text": "Commented-code block (5 lines) in packages/skill-host-contracts/src/client.ts:569"}, "properties": {"repobilityId": "d05c398b6dbd5111", "scanner": "scanner-primary", "fingerprint": "f4d2a532e670736a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b5d9de835f4637ab", "level": "none", "message": {"text": "Commented-code block (6 lines) in packages/local-mode/src/wake.ts:5"}, "properties": {"repobilityId": "b6c42677b51a7e61", "scanner": "scanner-primary", "fingerprint": "b5d9de835f4637ab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b77904ac98e08dbc", "level": "note", "message": {"text": "Legacy-named symbol `asst_legacy` in packages/local-mode/src/lockfile.test.ts:68"}, "properties": {"repobilityId": "5ae022e0cfc9ecbd", "scanner": "scanner-primary", "fingerprint": "b77904ac98e08dbc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1c6a785504206482", "level": "none", "message": {"text": "Commented-code block (9 lines) in packages/credential-storage/src/oauth-runtime.ts:74"}, "properties": {"repobilityId": "806faf4b67b78845", "scanner": "scanner-primary", "fingerprint": "1c6a785504206482", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0791b5b68b6b3223", "level": "none", "message": {"text": "Commented-code block (5 lines) in packages/ipc-server-utils/src/socket-watchdog.ts:114"}, "properties": {"repobilityId": "7cbd6898b5be64e5", "scanner": "scanner-primary", "fingerprint": "0791b5b68b6b3223", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8907386a41cd662a", "level": "none", "message": {"text": "Commented-code block (6 lines) in packages/design-library/src/components/button.tsx:286"}, "properties": {"repobilityId": "be5ab169dc05902b", "scanner": "scanner-primary", "fingerprint": "8907386a41cd662a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c2b9b34f7b18e6f0", "level": "none", "message": {"text": "Commented-code block (9 lines) in packages/design-library/src/components/panel-item/panel-item.tsx:347"}, "properties": {"repobilityId": "48bce1bfc49c4d61", "scanner": "scanner-primary", "fingerprint": "c2b9b34f7b18e6f0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e09e6cf732ef0f1f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 clients/chrome-extension/background/cloud-api.ts:68"}, "properties": {"repobilityId": "88081c35d615c682", "scanner": "scanner-primary", "fingerprint": "e09e6cf732ef0f1f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2b11c0d4615899fe", "level": "none", "message": {"text": "Commented-code block (15 lines) in clients/chrome-extension/background/host-browser-dispatcher.ts:207"}, "properties": {"repobilityId": "25c3d3e01f026c3e", "scanner": "scanner-primary", "fingerprint": "2b11c0d4615899fe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-27d13c86cdb40fb9", "level": "none", "message": {"text": "Commented-code block (7 lines) in clients/chrome-extension/background/cdp-proxy.ts:248"}, "properties": {"repobilityId": "1b11dd2a26bc183a", "scanner": "scanner-primary", "fingerprint": "27d13c86cdb40fb9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2d5a9097e4a854a3", "level": "none", "message": {"text": "Commented-code block (7 lines) in clients/chrome-extension/background/feedback.ts:316"}, "properties": {"repobilityId": "cffb238264fa81d7", "scanner": "scanner-primary", "fingerprint": "2d5a9097e4a854a3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5a4cbb63521ac00f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 clients/chrome-extension/background/workos-pkce.ts:141"}, "properties": {"repobilityId": "5a6908bef091ec07", "scanner": "scanner-primary", "fingerprint": "5a4cbb63521ac00f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1677b580475aab11", "level": "none", "message": {"text": "Commented-code block (9 lines) in clients/chrome-extension/background/worker.ts:240"}, "properties": {"repobilityId": "32cf44d5b286deb8", "scanner": "scanner-primary", "fingerprint": "1677b580475aab11", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-949fe22a81fdd2f2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 clients/chrome-extension/background/worker.ts:449"}, "properties": {"repobilityId": "5c843e18ce9236bc", "scanner": "scanner-primary", "fingerprint": "949fe22a81fdd2f2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8a1ce3ac8f7aa16c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 clients/chrome-extension/background/sse-connection.ts:7"}, "properties": {"repobilityId": "f637c3fcfcf7bc02", "scanner": "scanner-primary", "fingerprint": "8a1ce3ac8f7aa16c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c0d46cdacefdc39b", "level": "none", "message": {"text": "Commented-code block (5 lines) in clients/chrome-extension/background/__tests__/cdp-proxy.test.ts:181"}, "properties": {"repobilityId": "ccc059fc1725990c", "scanner": "scanner-primary", "fingerprint": "c0d46cdacefdc39b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8919e27438d6324b", "level": "none", "message": {"text": "Commented-code block (9 lines) in clients/chrome-extension/background/__tests__/host-browser-dispatcher.test.ts:208"}, "properties": {"repobilityId": "5501902e15b6d3e0", "scanner": "scanner-primary", "fingerprint": "8919e27438d6324b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-05f1398440c7f360", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/scripts/generate-openapi.ts:160"}, "properties": {"repobilityId": "32829ef48fb30cb0", "scanner": "scanner-primary", "fingerprint": "05f1398440c7f360", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c4bc6db53fb872a8", "level": "none", "message": {"text": "Commented-code block (10 lines) in assistant/scripts/memory-inspect.ts:4"}, "properties": {"repobilityId": "88af68806a736f88", "scanner": "scanner-primary", "fingerprint": "c4bc6db53fb872a8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-753db020bc8ff02f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/scripts/capture-x-graphql.ts:228"}, "properties": {"repobilityId": "fac2d905090979f9", "scanner": "scanner-primary", "fingerprint": "753db020bc8ff02f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-edd5f3ae2f5d95ae", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/eslint-rules/cli-no-daemon-internals.js:140"}, "properties": {"repobilityId": "f17dbef65d6596d7", "scanner": "scanner-primary", "fingerprint": "edd5f3ae2f5d95ae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f7aa69d8c769566f", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/eslint-rules/__tests__/cli-no-daemon-internals.test.ts:144"}, "properties": {"repobilityId": "6707e006a6125027", "scanner": "scanner-primary", "fingerprint": "f7aa69d8c769566f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b57c612e6a64ebe1", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/instrument.ts:149"}, "properties": {"repobilityId": "947bc735ff11e649", "scanner": "scanner-primary", "fingerprint": "b57c612e6a64ebe1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9d3bf2aa3c359b5f", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/sequence/store.ts:243"}, "properties": {"repobilityId": "c4ac323273404fb9", "scanner": "scanner-primary", "fingerprint": "9d3bf2aa3c359b5f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4ec3741bfaf1bd0e", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/sequence/reply-matcher.ts:80"}, "properties": {"repobilityId": "edc99e4ed1770e90", "scanner": "scanner-primary", "fingerprint": "4ec3741bfaf1bd0e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1bd627d6dd830c2e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/openrouter-token-estimation.test.ts:79"}, "properties": {"repobilityId": "ca6648010d8f5195", "scanner": "scanner-primary", "fingerprint": "1bd627d6dd830c2e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0bc0f369a34601bb", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-crud-inference-profile.test.ts:93"}, "properties": {"repobilityId": "a77d6da373abf7a8", "scanner": "scanner-primary", "fingerprint": "0bc0f369a34601bb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c67f4dafab266357", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/heartbeat-service.test.ts:88"}, "properties": {"repobilityId": "a7b0039b7e79b362", "scanner": "scanner-primary", "fingerprint": "c67f4dafab266357", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-94400516de580d88", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-list-source.test.ts:80"}, "properties": {"repobilityId": "d82215aa536818c5", "scanner": "scanner-primary", "fingerprint": "94400516de580d88", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-10f8d1bb22d844b9", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/model-intents.test.ts:54"}, "properties": {"repobilityId": "406c7ad8f483ebcc", "scanner": "scanner-primary", "fingerprint": "10f8d1bb22d844b9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-68bf68c83ee58838", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/browser-fill-credential.test.ts:221"}, "properties": {"repobilityId": "2f6810345ccda4f1", "scanner": "scanner-primary", "fingerprint": "68bf68c83ee58838", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a3fa12237926dc84", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/skill-projection-feature-flag.test.ts:46"}, "properties": {"repobilityId": "583971f4da33903f", "scanner": "scanner-primary", "fingerprint": "a3fa12237926dc84", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-50bc41a8a71f0937", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/media-stream-server-integration.test.ts:735"}, "properties": {"repobilityId": "1c9cae159bbf42db", "scanner": "scanner-primary", "fingerprint": "50bc41a8a71f0937", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-84ad05f4313bf0a7", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/schedule-routes-workflow-validation.test.ts:3"}, "properties": {"repobilityId": "5b4fa76cc3ef277b", "scanner": "scanner-primary", "fingerprint": "84ad05f4313bf0a7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6da43e2e0a69a362", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-history-web-search.test.ts:117"}, "properties": {"repobilityId": "9eeb162f877d7e89", "scanner": "scanner-primary", "fingerprint": "6da43e2e0a69a362", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-73bc624510bda6cf", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/host-browser-event-routes.test.ts:254"}, "properties": {"repobilityId": "f691e8d6dc9ef383", "scanner": "scanner-primary", "fingerprint": "73bc624510bda6cf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b207ac3aac3e702d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/scheduler-reuse-conversation.test.ts:19"}, "properties": {"repobilityId": "8c5389ef2dafe597", "scanner": "scanner-primary", "fingerprint": "b207ac3aac3e702d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eac4685063a926ae", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/estimator-calibration-integration.test.ts:129"}, "properties": {"repobilityId": "1cc0f8bf4a07b836", "scanner": "scanner-primary", "fingerprint": "eac4685063a926ae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eab45be8c75648d4", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/assistant-id-boundary-guard.test.ts:201"}, "properties": {"repobilityId": "454dc9a5efec9466", "scanner": "scanner-primary", "fingerprint": "eab45be8c75648d4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8a1a0a839095c627", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/credential-token-resolver.test.ts:145"}, "properties": {"repobilityId": "8bb6f9b4c601e4d5", "scanner": "scanner-primary", "fingerprint": "8a1a0a839095c627", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-094fd802878572a4", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/memory-v2-static-injector.test.ts:168"}, "properties": {"repobilityId": "c7ca53b8e581018a", "scanner": "scanner-primary", "fingerprint": "094fd802878572a4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fe41e4ecef4704a8", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/workspace-migrations-runner.test.ts:339"}, "properties": {"repobilityId": "4117011954a81a2e", "scanner": "scanner-primary", "fingerprint": "fe41e4ecef4704a8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4d4c2346865595d5", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/config-loader-backfill.test.ts:299"}, "properties": {"repobilityId": "1a00615ac89b1046", "scanner": "scanner-primary", "fingerprint": "4d4c2346865595d5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2af6ad234e787c7d", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/context-search-agent-runner.test.ts:853"}, "properties": {"repobilityId": "106d6b2882bc9e93", "scanner": "scanner-primary", "fingerprint": "2af6ad234e787c7d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-87658b9ff9fceacc", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/checker.test.ts:88"}, "properties": {"repobilityId": "82bfcca62f94e2b9", "scanner": "scanner-primary", "fingerprint": "87658b9ff9fceacc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6d909813ad4ecb2e", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/system-prompt.test.ts:72"}, "properties": {"repobilityId": "a097457f146175f4", "scanner": "scanner-primary", "fingerprint": "6d909813ad4ecb2e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-af5b49bdfba42d38", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/llm-usage-store.test.ts:223"}, "properties": {"repobilityId": "2d8ccc8b6cfdf928", "scanner": "scanner-primary", "fingerprint": "af5b49bdfba42d38", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3bbe19211139e32e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/trust-context-guards.test.ts:152"}, "properties": {"repobilityId": "ba7f72aafae0f2af", "scanner": "scanner-primary", "fingerprint": "3bbe19211139e32e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c46eb3599b15514d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/script-proxy-http-forwarder.test.ts:87"}, "properties": {"repobilityId": "d063f06f93245203", "scanner": "scanner-primary", "fingerprint": "c46eb3599b15514d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b1d7c574d358f228", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/list-messages-hidden-metadata.test.ts:230"}, "properties": {"repobilityId": "76a58f70ee00d354", "scanner": "scanner-primary", "fingerprint": "b1d7c574d358f228", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8253ee5ea68c6c24", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/get-skill-detail-audit.test.ts:85"}, "properties": {"repobilityId": "e3500bce2f5fa138", "scanner": "scanner-primary", "fingerprint": "8253ee5ea68c6c24", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2a8b3bce4c591bdd", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/channel-reply-delivery.test.ts:802"}, "properties": {"repobilityId": "115ac9a9e6f4d74f", "scanner": "scanner-primary", "fingerprint": "2a8b3bce4c591bdd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6f60090bb2bae9ef", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/http-conversation-lineage.test.ts:76"}, "properties": {"repobilityId": "0e182301a1c2d74a", "scanner": "scanner-primary", "fingerprint": "6f60090bb2bae9ef", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ff5c7d86211aba1b", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/filing-service.test.ts:423"}, "properties": {"repobilityId": "dc78fe1e6bed3c4e", "scanner": "scanner-primary", "fingerprint": "ff5c7d86211aba1b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-220a22d2d690082f", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/config-loader-platform-defaults.test.ts:239"}, "properties": {"repobilityId": "ac9d1556ef50c04f", "scanner": "scanner-primary", "fingerprint": "220a22d2d690082f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d063cfd30ddccf06", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/migration-export-to-gcs.test.ts:116"}, "properties": {"repobilityId": "fa8dbc2593dd79d4", "scanner": "scanner-primary", "fingerprint": "d063cfd30ddccf06", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d8e5fa6dab21f016", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-unread-route.test.ts:86"}, "properties": {"repobilityId": "5a1c70052e82cd72", "scanner": "scanner-primary", "fingerprint": "d8e5fa6dab21f016", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-15a0888458c73071", "level": "note", "message": {"text": "Legacy-named symbol `gateway_service_v1` in assistant/src/__tests__/conversation-routes-disk-view.test.ts:101"}, "properties": {"repobilityId": "56859ec35b9b139f", "scanner": "scanner-primary", "fingerprint": "15a0888458c73071", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e0f856f01741071a", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/conversation-routes-disk-view.test.ts:357"}, "properties": {"repobilityId": "35d3c132d8f8ac9c", "scanner": "scanner-primary", "fingerprint": "e0f856f01741071a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-16a0b644563de337", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/web-fetch.test.ts:41"}, "properties": {"repobilityId": "6db4edc856e1dae7", "scanner": "scanner-primary", "fingerprint": "16a0b644563de337", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-4a74031db4c5a394", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/openai-responses-provider.test.ts:143"}, "properties": {"repobilityId": "fd5fb564a23098a3", "scanner": "scanner-primary", "fingerprint": "4a74031db4c5a394", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e21242250922fa57", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/catalog-files.test.ts:285"}, "properties": {"repobilityId": "7b2eebc648ba3019", "scanner": "scanner-primary", "fingerprint": "e21242250922fa57", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-50b52d1b718de9a6", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/assert-not-live-db.ts:36"}, "properties": {"repobilityId": "3d20325710b0b9e5", "scanner": "scanner-primary", "fingerprint": "50b52d1b718de9a6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-57d1e2f1e04d708d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/plugin-bootstrap.test.ts:195"}, "properties": {"repobilityId": "dfde5a88fb63c691", "scanner": "scanner-primary", "fingerprint": "57d1e2f1e04d708d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ee05484fee615a57", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-lifecycle.test.ts:113"}, "properties": {"repobilityId": "54a3b77921c6e1ae", "scanner": "scanner-primary", "fingerprint": "ee05484fee615a57", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8b55d8c3504340d5", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/host-browser-proxy.test.ts:473"}, "properties": {"repobilityId": "bb381be28404def7", "scanner": "scanner-primary", "fingerprint": "8b55d8c3504340d5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5ede5f419fd11e6a", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-queue.test.ts:315"}, "properties": {"repobilityId": "cabc16754fce895e", "scanner": "scanner-primary", "fingerprint": "5ede5f419fd11e6a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-95d22ab919c9d7f2", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/daemon-credential-client.test.ts:129"}, "properties": {"repobilityId": "216187e6e31dcd0d", "scanner": "scanner-primary", "fingerprint": "95d22ab919c9d7f2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-967c73793cc33d4d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/migration-validate-http.test.ts:307"}, "properties": {"repobilityId": "9bce81252a1c0def", "scanner": "scanner-primary", "fingerprint": "967c73793cc33d4d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-956821e2467413c1", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/agent-loop-regrowth-guard.test.ts:337"}, "properties": {"repobilityId": "4678cf439dce69e5", "scanner": "scanner-primary", "fingerprint": "956821e2467413c1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-48b1a4edf07d6709", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/auto-analysis-end-to-end.test.ts:88"}, "properties": {"repobilityId": "e873a622f3c1e527", "scanner": "scanner-primary", "fingerprint": "48b1a4edf07d6709", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7628f558b2ff6136", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/runtime-events-sse-reconnect.test.ts:109"}, "properties": {"repobilityId": "082e666f31d798d5", "scanner": "scanner-primary", "fingerprint": "7628f558b2ff6136", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-842a7bde73456664", "level": "note", "message": {"text": "Legacy-named symbol `migration_drop_capability_card_state_v1` in assistant/src/__tests__/drop-capability-card-state-migration.test.ts:120"}, "properties": {"repobilityId": "87705825c1440e2a", "scanner": "scanner-primary", "fingerprint": "842a7bde73456664", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cc649bd36de84dc5", "level": "none", "message": {"text": "Commented-code block (11 lines) in assistant/src/__tests__/conversation-agent-loop-inference-profile.test.ts:24"}, "properties": {"repobilityId": "fbb33ece85aa2c3e", "scanner": "scanner-primary", "fingerprint": "cc649bd36de84dc5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b4d70a87bf86364d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/agent-loop-exit-reason.test.ts:46"}, "properties": {"repobilityId": "ae46b2a0af60f701", "scanner": "scanner-primary", "fingerprint": "b4d70a87bf86364d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-34fe41af8e4a97bb", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/plugin-registry.test.ts:58"}, "properties": {"repobilityId": "86f9ebc6d486b0ea", "scanner": "scanner-primary", "fingerprint": "34fe41af8e4a97bb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-26478279d0c0a62f", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/conversation-routes-slash-commands.test.ts:209"}, "properties": {"repobilityId": "2d08cc1fc9554cea", "scanner": "scanner-primary", "fingerprint": "26478279d0c0a62f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d6220ba70783937d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/llm-resolver.test.ts:207"}, "properties": {"repobilityId": "aa8db80bcec324af", "scanner": "scanner-primary", "fingerprint": "d6220ba70783937d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7fd34f0f664f4234", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-process-app-control-preactivation.test.ts:20"}, "properties": {"repobilityId": "f68f700c213cadb1", "scanner": "scanner-primary", "fingerprint": "7fd34f0f664f4234", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e96e7b2ed40f930f", "level": "note", "message": {"text": "Legacy-named symbol `migration_backfill_usage_cache_accounting_v1` in assistant/src/__tests__/usage-cache-backfill-migration.test.ts:37"}, "properties": {"repobilityId": "f9494c97278ad03b", "scanner": "scanner-primary", "fingerprint": "e96e7b2ed40f930f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d1d144116a6bf723", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/prechat-onboarding-contract.test.ts:374"}, "properties": {"repobilityId": "7d161bbe4a9fc891", "scanner": "scanner-primary", "fingerprint": "d1d144116a6bf723", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fb704ed194a17f22", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/schedule-retry.test.ts:11"}, "properties": {"repobilityId": "7e6c6825da7da728", "scanner": "scanner-primary", "fingerprint": "fb704ed194a17f22", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-529a67a2dbd620be", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/send-endpoint-busy.test.ts:386"}, "properties": {"repobilityId": "bbb68a0e2239a427", "scanner": "scanner-primary", "fingerprint": "529a67a2dbd620be", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-97ecdc03efba43b3", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/secret-ingress-http.test.ts:151"}, "properties": {"repobilityId": "5c08c40c26274f57", "scanner": "scanner-primary", "fingerprint": "97ecdc03efba43b3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-be04dd6c4f5eb4c6", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/conversation-fork-route.test.ts:68"}, "properties": {"repobilityId": "6a37102e5282dfec", "scanner": "scanner-primary", "fingerprint": "be04dd6c4f5eb4c6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4ba1311809e5adae", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-fork-route.test.ts:126"}, "properties": {"repobilityId": "5bd07cab4deac280", "scanner": "scanner-primary", "fingerprint": "4ba1311809e5adae", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-619b15c92cf319a3", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/__tests__/conversation-sync-tags.test.ts:79"}, "properties": {"repobilityId": "e99e314193d6d0b2", "scanner": "scanner-primary", "fingerprint": "619b15c92cf319a3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a8d22eb671d3d973", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/cu-unified-flow.test.ts:617"}, "properties": {"repobilityId": "e1827f4a03fb4383", "scanner": "scanner-primary", "fingerprint": "a8d22eb671d3d973", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cdd04d1eeaf5bbe3", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/gateway-only-enforcement.test.ts:133"}, "properties": {"repobilityId": "5bb518784d581bb1", "scanner": "scanner-primary", "fingerprint": "cdd04d1eeaf5bbe3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1eb82179cb1c684e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/gateway-only-enforcement.test.ts:99"}, "properties": {"repobilityId": "04e6276fd09197b2", "scanner": "scanner-primary", "fingerprint": "1eb82179cb1c684e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7c09c9594bd1331a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/gateway-only-enforcement.test.ts:181"}, "properties": {"repobilityId": "1dde934390c04264", "scanner": "scanner-primary", "fingerprint": "7c09c9594bd1331a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e29c67c99272d73f", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/assistant-feature-flag-guardrails.test.ts:83"}, "properties": {"repobilityId": "6d6cf097168e0c71", "scanner": "scanner-primary", "fingerprint": "e29c67c99272d73f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8960b9344f12958c", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-runtime-assembly.test.ts:128"}, "properties": {"repobilityId": "929c52ff01d707fb", "scanner": "scanner-primary", "fingerprint": "8960b9344f12958c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-90160611e1ab5585", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/host-proxy-preactivation.test.ts:33"}, "properties": {"repobilityId": "783bd3c8b2c7f435", "scanner": "scanner-primary", "fingerprint": "90160611e1ab5585", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fce1edc434852fd2", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/host-cu-proxy.test.ts:1000"}, "properties": {"repobilityId": "a55b86913e667ff9", "scanner": "scanner-primary", "fingerprint": "fce1edc434852fd2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-505b1e790f38b0c3", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/verification-control-plane-policy.test.ts:107"}, "properties": {"repobilityId": "b67b66e66f2c868b", "scanner": "scanner-primary", "fingerprint": "505b1e790f38b0c3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-021c1337a80d8f11", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/schedule-store.test.ts:12"}, "properties": {"repobilityId": "8bd5d664ac24f683", "scanner": "scanner-primary", "fingerprint": "021c1337a80d8f11", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a614d4773eef6762", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/migration-cross-version-compatibility.test.ts:493"}, "properties": {"repobilityId": "9195689c49f790b2", "scanner": "scanner-primary", "fingerprint": "a614d4773eef6762", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7cb4639bb209e044", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/headless-browser-navigate.test.ts:14"}, "properties": {"repobilityId": "85c46ff25d222cfb", "scanner": "scanner-primary", "fingerprint": "7cb4639bb209e044", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8225fedec2e114c0", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/trusted-contact-lifecycle-notifications.test.ts:375"}, "properties": {"repobilityId": "1120251924a80bd9", "scanner": "scanner-primary", "fingerprint": "8225fedec2e114c0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7626c23945f01367", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/migration-import-from-gcs.test.ts:424"}, "properties": {"repobilityId": "98c54d59b3b6b5cb", "scanner": "scanner-primary", "fingerprint": "7626c23945f01367", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-050677d69424234c", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/credential-execution-api-key-propagation.test.ts:285"}, "properties": {"repobilityId": "31c55434266f03ab", "scanner": "scanner-primary", "fingerprint": "050677d69424234c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4b99c416a88f4e52", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/credential-health-service.test.ts:628"}, "properties": {"repobilityId": "27ca8ba27e5dca92", "scanner": "scanner-primary", "fingerprint": "4b99c416a88f4e52", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dbbb7946cff00def", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/conversation-agent-loop.test.ts:95"}, "properties": {"repobilityId": "0ae8fa93c05504e9", "scanner": "scanner-primary", "fingerprint": "dbbb7946cff00def", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6f4ea3a85038fd54", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/http-user-message-parity.test.ts:185"}, "properties": {"repobilityId": "6242700028bb115d", "scanner": "scanner-primary", "fingerprint": "6f4ea3a85038fd54", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-14efe66488147235", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/suggestion-routes.test.ts:567"}, "properties": {"repobilityId": "721b3beb37f0e42a", "scanner": "scanner-primary", "fingerprint": "14efe66488147235", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9b1f9c2b10977277", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/memory-retrieval-hook.test.ts:345"}, "properties": {"repobilityId": "78f26d3514194fc5", "scanner": "scanner-primary", "fingerprint": "9b1f9c2b10977277", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8e4577f24b6ec36d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/openai-responses-cutover-guard.test.ts:93"}, "properties": {"repobilityId": "9698b758a7c82d2c", "scanner": "scanner-primary", "fingerprint": "8e4577f24b6ec36d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eab5c0c027722ade", "level": "none", "message": {"text": "Commented-code block (11 lines) in assistant/src/__tests__/workspace-migration-unify-llm-callsite-configs.test.ts:122"}, "properties": {"repobilityId": "d87902f548c5af3f", "scanner": "scanner-primary", "fingerprint": "eab5c0c027722ade", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-16d74c3c8d634d31", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-runtime-workspace.test.ts:67"}, "properties": {"repobilityId": "f807a3f72751bf67", "scanner": "scanner-primary", "fingerprint": "16d74c3c8d634d31", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-14d2e71bacbd14cd", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/provider-error-scenarios.test.ts:764"}, "properties": {"repobilityId": "7e4c26de5e1d8752", "scanner": "scanner-primary", "fingerprint": "14d2e71bacbd14cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-64f4b5222d6578db", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/provider-error-scenarios.test.ts:500"}, "properties": {"repobilityId": "b44f341563a1753c", "scanner": "scanner-primary", "fingerprint": "64f4b5222d6578db", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-217ae0e48b822af9", "level": "note", "message": {"text": "Legacy-named symbol `migration_normalize_user_file_by_principal_v1` in assistant/src/__tests__/contact-store-user-file.test.ts:25"}, "properties": {"repobilityId": "baf18c1251736a05", "scanner": "scanner-primary", "fingerprint": "217ae0e48b822af9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-48ff3e6fbed01c90", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/contact-store-user-file.test.ts:423"}, "properties": {"repobilityId": "f43de03e7a249863", "scanner": "scanner-primary", "fingerprint": "48ff3e6fbed01c90", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-227efcc019c9b471", "level": "note", "message": {"text": "Legacy-named symbol `migration_scrub_corrupted_image_attachments_v1` in assistant/src/__tests__/scrub-corrupted-image-attachments.test.ts:252"}, "properties": {"repobilityId": "f63b9e87b1b49180", "scanner": "scanner-primary", "fingerprint": "227efcc019c9b471", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7b9717975e82a0c8", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/call-controller.test.ts:2526"}, "properties": {"repobilityId": "35d03ec1c58aefc7", "scanner": "scanner-primary", "fingerprint": "7b9717975e82a0c8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-175197f44b73101d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/handlers-skills-memory-v2-reseed.test.ts:44"}, "properties": {"repobilityId": "9751f3e0a6d8a673", "scanner": "scanner-primary", "fingerprint": "175197f44b73101d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-46a990a804f9af67", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/conversation-skill-tools.test.ts:1426"}, "properties": {"repobilityId": "091821b4d275a891", "scanner": "scanner-primary", "fingerprint": "46a990a804f9af67", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d05f8c0165ad2e50", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/conversation-agent-loop-overflow.test.ts:114"}, "properties": {"repobilityId": "4ad00c2b4f6d91dd", "scanner": "scanner-primary", "fingerprint": "d05f8c0165ad2e50", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3cca669a4f126904", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/guardian-routing-invariants.test.ts:1347"}, "properties": {"repobilityId": "600d6dc23cbde511", "scanner": "scanner-primary", "fingerprint": "3cca669a4f126904", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d1117b9ea199a7d1", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/headless-browser-read-tools.test.ts:56"}, "properties": {"repobilityId": "03ee6e3e150420de", "scanner": "scanner-primary", "fingerprint": "d1117b9ea199a7d1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-15562ec80d1740fc", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/agent-wake-override-profile.test.ts:266"}, "properties": {"repobilityId": "1f820fb2414cfab7", "scanner": "scanner-primary", "fingerprint": "15562ec80d1740fc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa1725050cd0b101", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/managed-profile-guard.test.ts:162"}, "properties": {"repobilityId": "7a5ee8b50db429ed", "scanner": "scanner-primary", "fingerprint": "aa1725050cd0b101", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-60e95839d85d0c86", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/compact-event-conversation-id-guard.test.ts:27"}, "properties": {"repobilityId": "2c483cd6278c4f81", "scanner": "scanner-primary", "fingerprint": "60e95839d85d0c86", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-804cbd7768ad6fa2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/oauth2-gateway-transport.test.ts:246"}, "properties": {"repobilityId": "6524fac68288c47c", "scanner": "scanner-primary", "fingerprint": "804cbd7768ad6fa2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8e40e438eeeaf5db", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/runtime-events-sse.test.ts:44"}, "properties": {"repobilityId": "99edcf68361ae93d", "scanner": "scanner-primary", "fingerprint": "8e40e438eeeaf5db", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-493437a64acaec76", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/runtime-events-sse.test.ts:79"}, "properties": {"repobilityId": "13879bf07303968e", "scanner": "scanner-primary", "fingerprint": "493437a64acaec76", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ef20e856dbb67038", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/script-proxy-policy-runtime.test.ts:224"}, "properties": {"repobilityId": "a2f93b86c43d9cbc", "scanner": "scanner-primary", "fingerprint": "ef20e856dbb67038", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c0dafc9025fc8b1e", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/agent-loop.test.ts:484"}, "properties": {"repobilityId": "15b0e6a3a233dec6", "scanner": "scanner-primary", "fingerprint": "c0dafc9025fc8b1e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c514de7d1401571d", "level": "note", "message": {"text": "Legacy-named symbol `browser_fill_credential_v2` in assistant/src/__tests__/tool-policy.test.ts:65"}, "properties": {"repobilityId": "ccebc5b145a3f843", "scanner": "scanner-primary", "fingerprint": "c514de7d1401571d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9def8cfa978d30e7", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/conversation-init.benchmark.test.ts:319"}, "properties": {"repobilityId": "becf56841b2e59a7", "scanner": "scanner-primary", "fingerprint": "9def8cfa978d30e7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-accc3c1b8d28d3a4", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/skill-load-inline-command.test.ts:256"}, "properties": {"repobilityId": "d28c1bde8a096111", "scanner": "scanner-primary", "fingerprint": "accc3c1b8d28d3a4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-da2930819b58883a", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/plugin-route-contribution.test.ts:199"}, "properties": {"repobilityId": "f74aa5634bd18504", "scanner": "scanner-primary", "fingerprint": "da2930819b58883a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-27520fd5d97cd320", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/mock-signup-server.test.ts:51"}, "properties": {"repobilityId": "0e4fa5e56b57d65a", "scanner": "scanner-primary", "fingerprint": "27520fd5d97cd320", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-37a4ceb475d1e4cf", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/migration-import-commit-http.test.ts:663"}, "properties": {"repobilityId": "796ae761786ab9cd", "scanner": "scanner-primary", "fingerprint": "37a4ceb475d1e4cf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9e56ef72dbb6edea", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/headless-browser-interactions.test.ts:232"}, "properties": {"repobilityId": "7c50dd35ccdae4db", "scanner": "scanner-primary", "fingerprint": "9e56ef72dbb6edea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-787329d3bb5b3f7b", "level": "none", "message": {"text": "Commented-code block (11 lines) in assistant/src/__tests__/media-stream-stt-session.test.ts:451"}, "properties": {"repobilityId": "369be20046e04134", "scanner": "scanner-primary", "fingerprint": "787329d3bb5b3f7b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5553ac3c735537d3", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/call-routes-http.test.ts:184"}, "properties": {"repobilityId": "649da10f076afd1b", "scanner": "scanner-primary", "fingerprint": "5553ac3c735537d3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b87ee39b6d341e89", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/injector-chain.test.ts:110"}, "properties": {"repobilityId": "95c49afab9160d02", "scanner": "scanner-primary", "fingerprint": "b87ee39b6d341e89", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b25d77f211476d7a", "level": "note", "message": {"text": "Legacy-named symbol `ghp_legacy` in assistant/src/__tests__/credential-broker-browser-fill.test.ts:634"}, "properties": {"repobilityId": "22ea888db233f72e", "scanner": "scanner-primary", "fingerprint": "b25d77f211476d7a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-492333c63d5f13bd", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/thread-backfill.test.ts:25"}, "properties": {"repobilityId": "39bc94c4d4c9b37a", "scanner": "scanner-primary", "fingerprint": "492333c63d5f13bd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-48fb321a403a50d1", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/anthropic-provider.test.ts:2069"}, "properties": {"repobilityId": "68afa78e75d5a030", "scanner": "scanner-primary", "fingerprint": "48fb321a403a50d1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8ca699399ab07659", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/context-token-estimator.test.ts:286"}, "properties": {"repobilityId": "a6c206d3b5e13192", "scanner": "scanner-primary", "fingerprint": "8ca699399ab07659", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8ee392d5f6330c79", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/app-control-flow.test.ts:26"}, "properties": {"repobilityId": "8d75b337d996807f", "scanner": "scanner-primary", "fingerprint": "8ee392d5f6330c79", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-68fcc6758a3b47e6", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/logger.test.ts:29"}, "properties": {"repobilityId": "e729b9f27a00b9aa", "scanner": "scanner-primary", "fingerprint": "68fcc6758a3b47e6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0e2083911ae933f8", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/cli-memory-v2-reembed-skills.test.ts:22"}, "properties": {"repobilityId": "9a84ccbc1f1deada", "scanner": "scanner-primary", "fingerprint": "0e2083911ae933f8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2af3fa10faa71916", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/host-shell-tool.test.ts:264"}, "properties": {"repobilityId": "e7e493947791c999", "scanner": "scanner-primary", "fingerprint": "2af3fa10faa71916", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-940d67002d1c7952", "level": "note", "message": {"text": "Legacy-named symbol `eleven_turbo_v2` in assistant/src/__tests__/voice-quality.test.ts:146"}, "properties": {"repobilityId": "806a5c4d05ecef53", "scanner": "scanner-primary", "fingerprint": "940d67002d1c7952", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a7f63c14b9f9a65d", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/outbound-slack-persistence.test.ts:313"}, "properties": {"repobilityId": "571d3252f4eee101", "scanner": "scanner-primary", "fingerprint": "a7f63c14b9f9a65d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f8f1d4f8748362c6", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/migration-import-from-url.test.ts:51"}, "properties": {"repobilityId": "7a940c79b549f7b6", "scanner": "scanner-primary", "fingerprint": "f8f1d4f8748362c6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2fa332c89a935aaa", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/migration-import-from-url.test.ts:559"}, "properties": {"repobilityId": "58c72b2361e6a581", "scanner": "scanner-primary", "fingerprint": "2fa332c89a935aaa", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-90897b5bed7f4c40", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/llm-catalog-parity.test.ts:147"}, "properties": {"repobilityId": "6b78e75c32f2c8f3", "scanner": "scanner-primary", "fingerprint": "90897b5bed7f4c40", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-128f2dfcc501e3a1", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/injector-disk-pressure.test.ts:83"}, "properties": {"repobilityId": "9f20d660cd41f633", "scanner": "scanner-primary", "fingerprint": "128f2dfcc501e3a1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6ba97e976cf7b541", "level": "note", "message": {"text": "Legacy-named symbol `nOld` in assistant/src/__tests__/task-memory-cleanup.test.ts:200"}, "properties": {"repobilityId": "c7de5fd9e0556f17", "scanner": "scanner-primary", "fingerprint": "6ba97e976cf7b541", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c264b27b58fd953f", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/call-site-routing-provider.test.ts:454"}, "properties": {"repobilityId": "8d94ae517d7a768a", "scanner": "scanner-primary", "fingerprint": "c264b27b58fd953f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-86f4c0ac6136643a", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/host-app-control-proxy.test.ts:875"}, "properties": {"repobilityId": "d44da987256cbc4b", "scanner": "scanner-primary", "fingerprint": "86f4c0ac6136643a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-83276249c81c266e", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/__tests__/oauth-store.test.ts:2162"}, "properties": {"repobilityId": "e95dba20b8ddc28d", "scanner": "scanner-primary", "fingerprint": "83276249c81c266e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-11d315c6f224669d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/subagent-call-site-routing.test.ts:210"}, "properties": {"repobilityId": "8756ad946ebb771d", "scanner": "scanner-primary", "fingerprint": "11d315c6f224669d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a0f20aed6b39a10a", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/secure-keys.test.ts:302"}, "properties": {"repobilityId": "a699f92b0f0dc34f", "scanner": "scanner-primary", "fingerprint": "a0f20aed6b39a10a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7a1d6f9f5dd46174", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/tool-preview-lifecycle.test.ts:42"}, "properties": {"repobilityId": "178690352e638b72", "scanner": "scanner-primary", "fingerprint": "7a1d6f9f5dd46174", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-431e4442cb46903c", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/turn-events-store.test.ts:206"}, "properties": {"repobilityId": "70fa6e37dde65fc9", "scanner": "scanner-primary", "fingerprint": "431e4442cb46903c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-68de240c63695b41", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/tool-execution-abort-cleanup.test.ts:218"}, "properties": {"repobilityId": "9b135efff8040d4a", "scanner": "scanner-primary", "fingerprint": "68de240c63695b41", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a66bd395b885516e", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/llm-schema.test.ts:66"}, "properties": {"repobilityId": "270a9a8c6918a411", "scanner": "scanner-primary", "fingerprint": "a66bd395b885516e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f6bddb8271a00ae6", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/tool-side-effects-slack-dm.test.ts:83"}, "properties": {"repobilityId": "8174f35d904176c4", "scanner": "scanner-primary", "fingerprint": "f6bddb8271a00ae6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d7fd00efcae3e7de", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/commit-message-enrichment-service.test.ts:472"}, "properties": {"repobilityId": "7e5545f9f188e2cd", "scanner": "scanner-primary", "fingerprint": "d7fd00efcae3e7de", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-44dfe82518951230", "level": "note", "message": {"text": "Legacy-named symbol `gateway_service_v1` in assistant/src/__tests__/docker-signing-key-bootstrap.test.ts:205"}, "properties": {"repobilityId": "ec1ae1866f3f9c8d", "scanner": "scanner-primary", "fingerprint": "44dfe82518951230", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-128a97f719c04712", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/require-fresh-approval.test.ts:410"}, "properties": {"repobilityId": "9566cda9c2fd05a4", "scanner": "scanner-primary", "fingerprint": "128a97f719c04712", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e6d2c5f3c851580f", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/workspace-migration-082-backfill-managed-profile-labels.test.ts:239"}, "properties": {"repobilityId": "0536533fcbdb8394", "scanner": "scanner-primary", "fingerprint": "e6d2c5f3c851580f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5cef8cb67c62a34a", "level": "note", "message": {"text": "Legacy-named symbol `migration_acp_session_history_cwd_v1` in assistant/src/__tests__/db-acp-history.test.ts:326"}, "properties": {"repobilityId": "90af112ca1e23906", "scanner": "scanner-primary", "fingerprint": "5cef8cb67c62a34a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-30cde7bb9a65dc6f", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/skill-script-runner-host.test.ts:533"}, "properties": {"repobilityId": "836b7a9704a9e052", "scanner": "scanner-primary", "fingerprint": "30cde7bb9a65dc6f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-81beffceefca2166", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/lifecycle-docs-guard.test.ts:158"}, "properties": {"repobilityId": "566977327c6a2c89", "scanner": "scanner-primary", "fingerprint": "81beffceefca2166", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-06d95f2acdedff42", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/post-turn-tool-result-truncation.test.ts:456"}, "properties": {"repobilityId": "c55b62b4367311ae", "scanner": "scanner-primary", "fingerprint": "06d95f2acdedff42", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c6cd1da3e107fff3", "level": "note", "message": {"text": "Legacy-named symbol `local_v1` in assistant/src/__tests__/actor-token-service.test.ts:89"}, "properties": {"repobilityId": "ced25bee786169d1", "scanner": "scanner-primary", "fingerprint": "c6cd1da3e107fff3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-895870e328869b67", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/history-repair.test.ts:364"}, "properties": {"repobilityId": "83685a34be1e24d2", "scanner": "scanner-primary", "fingerprint": "895870e328869b67", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-334bc5f3e90bd254", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/scheduler-recurrence.test.ts:458"}, "properties": {"repobilityId": "a228b53a28c37c5b", "scanner": "scanner-primary", "fingerprint": "334bc5f3e90bd254", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dca6730b172c1f0d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/plugin-api-tool-definition.test.ts:67"}, "properties": {"repobilityId": "e25e774dc80ed724", "scanner": "scanner-primary", "fingerprint": "dca6730b172c1f0d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0cd175fc6bd70dae", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/provider-platform-proxy-integration.test.ts:95"}, "properties": {"repobilityId": "b4d12a37ccb17e79", "scanner": "scanner-primary", "fingerprint": "0cd175fc6bd70dae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-048fe87e2668f82e", "level": "note", "message": {"text": "Legacy-named symbol `local_v1` in assistant/src/__tests__/handlers-user-message-approval-consumption.test.ts:120"}, "properties": {"repobilityId": "38739d360fc38b39", "scanner": "scanner-primary", "fingerprint": "048fe87e2668f82e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cf95b84f76064921", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/credential-security-invariants.test.ts:349"}, "properties": {"repobilityId": "1ff0806bec408a0e", "scanner": "scanner-primary", "fingerprint": "cf95b84f76064921", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9c843c605195ca79", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/migration-export-http.test.ts:402"}, "properties": {"repobilityId": "94a819911bbee6ea", "scanner": "scanner-primary", "fingerprint": "9c843c605195ca79", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d377ebb84106a273", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/shell-observability.test.ts:115"}, "properties": {"repobilityId": "4ba7085685f80417", "scanner": "scanner-primary", "fingerprint": "d377ebb84106a273", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-914075c35f9dfd20", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_entity_relations_dedup_v1` in assistant/src/__tests__/db-migration-rollback.test.ts:383"}, "properties": {"repobilityId": "208f3cde5a1d49d9", "scanner": "scanner-primary", "fingerprint": "914075c35f9dfd20", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e1faf627dcec2cef", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/db-migration-rollback.test.ts:161"}, "properties": {"repobilityId": "161f933e2b80a770", "scanner": "scanner-primary", "fingerprint": "e1faf627dcec2cef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-018d0f4df7ab1522", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/workspace-lifecycle.test.ts:293"}, "properties": {"repobilityId": "22caa80bece4caca", "scanner": "scanner-primary", "fingerprint": "018d0f4df7ab1522", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1899318b3f178170", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/config-loader-corrupt.test.ts:150"}, "properties": {"repobilityId": "8cfa2dee1356df8f", "scanner": "scanner-primary", "fingerprint": "1899318b3f178170", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cedc63410911c9da", "level": "none", "message": {"text": "Commented-code block (10 lines) in assistant/src/__tests__/web-search-backend-failure.test.ts:4"}, "properties": {"repobilityId": "fdaa138fd396704c", "scanner": "scanner-primary", "fingerprint": "cedc63410911c9da", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c6a4bf47f81797f3", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/runtime-attachment-metadata.test.ts:113"}, "properties": {"repobilityId": "3827e61243955f5e", "scanner": "scanner-primary", "fingerprint": "c6a4bf47f81797f3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b028507877990c4f", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/compaction-trail-store.test.ts:70"}, "properties": {"repobilityId": "994bd8fa8c260229", "scanner": "scanner-primary", "fingerprint": "b028507877990c4f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d0a8ef6351151c72", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/app-store-dir-names.test.ts:289"}, "properties": {"repobilityId": "7852c64ed06a1ca7", "scanner": "scanner-primary", "fingerprint": "d0a8ef6351151c72", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-592bb9728a930a61", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/config-schema-cmd.test.ts:273"}, "properties": {"repobilityId": "11cdec95ccc0b000", "scanner": "scanner-primary", "fingerprint": "592bb9728a930a61", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1ad58884d93bdf9d", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/conversation-routes-guardian-reply.test.ts:116"}, "properties": {"repobilityId": "1165080defd6adf5", "scanner": "scanner-primary", "fingerprint": "1ad58884d93bdf9d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c466bc463a046542", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/approval-routes-http.test.ts:373"}, "properties": {"repobilityId": "30e68011051761cb", "scanner": "scanner-primary", "fingerprint": "c466bc463a046542", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b1b38108d3619aa5", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/__tests__/conversation-clear-safety.test.ts:72"}, "properties": {"repobilityId": "c6279d40721ccc94", "scanner": "scanner-primary", "fingerprint": "b1b38108d3619aa5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-907a4cad8a2b7240", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/memory-jobs-worker-lanes.test.ts:30"}, "properties": {"repobilityId": "95ee7366e82830f0", "scanner": "scanner-primary", "fingerprint": "907a4cad8a2b7240", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c7460b1ed52e27e6", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/plugin-tool-contribution.test.ts:154"}, "properties": {"repobilityId": "9d46c1ec424bf07d", "scanner": "scanner-primary", "fingerprint": "c7460b1ed52e27e6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a6612088710d209c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/provider-streaming.benchmark.test.ts:232"}, "properties": {"repobilityId": "e7436939626b746b", "scanner": "scanner-primary", "fingerprint": "a6612088710d209c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-eac2d902f78e5d13", "level": "note", "message": {"text": "Legacy-named symbol `nOld` in assistant/src/__tests__/conversation-fork-crud.test.ts:1004"}, "properties": {"repobilityId": "0da649212e1e3745", "scanner": "scanner-primary", "fingerprint": "eac2d902f78e5d13", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bb12782e61c9b5ff", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/conversation-fork-crud.test.ts:216"}, "properties": {"repobilityId": "3e785e2b74582863", "scanner": "scanner-primary", "fingerprint": "bb12782e61c9b5ff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6212b2c89e727670", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/__tests__/llm-request-log-source-clickhouse.test.ts:196"}, "properties": {"repobilityId": "a7fd774095eab736", "scanner": "scanner-primary", "fingerprint": "6212b2c89e727670", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2f2016760d1abab8", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/registry.test.ts:430"}, "properties": {"repobilityId": "8fff741aedbb2f68", "scanner": "scanner-primary", "fingerprint": "2f2016760d1abab8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0113cc9ec57c83b8", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/assistant-event-hub.test.ts:475"}, "properties": {"repobilityId": "e6e849faa0ca4aaa", "scanner": "scanner-primary", "fingerprint": "0113cc9ec57c83b8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dd4cfe05469608f2", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/strip-memory-injections.test.ts:222"}, "properties": {"repobilityId": "3071936fafca9616", "scanner": "scanner-primary", "fingerprint": "dd4cfe05469608f2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-222ed6f8d9c5c9b8", "level": "note", "message": {"text": "Legacy-named symbol `T_old` in assistant/src/__tests__/channel-readiness-slack-remote.test.ts:141"}, "properties": {"repobilityId": "8a97e632858df1f2", "scanner": "scanner-primary", "fingerprint": "222ed6f8d9c5c9b8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7c64442ef65d3296", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/injector-v3-suppression.test.ts:257"}, "properties": {"repobilityId": "078b4316f4e0401a", "scanner": "scanner-primary", "fingerprint": "7c64442ef65d3296", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7414211a16c329a0", "level": "note", "message": {"text": "Legacy-named symbol `actualOld` in assistant/src/__tests__/filesystem-tools.test.ts:234"}, "properties": {"repobilityId": "8bbdecc0d199d5c0", "scanner": "scanner-primary", "fingerprint": "7414211a16c329a0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f1b2fda02e1be443", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-inference-profile-list.test.ts:79"}, "properties": {"repobilityId": "7fcc87381e46850b", "scanner": "scanner-primary", "fingerprint": "f1b2fda02e1be443", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d1414ffe77776955", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/notification-deep-link.test.ts:486"}, "properties": {"repobilityId": "cbc71887bc88935c", "scanner": "scanner-primary", "fingerprint": "d1414ffe77776955", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-90b0c71cca7103fc", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/workspace-migration-drop-user-md.test.ts:78"}, "properties": {"repobilityId": "b31b51e2cbde6f3d", "scanner": "scanner-primary", "fingerprint": "90b0c71cca7103fc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad8a19a33c45a60d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-surfaces-app-control.test.ts:539"}, "properties": {"repobilityId": "644e3d39e4659703", "scanner": "scanner-primary", "fingerprint": "ad8a19a33c45a60d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1c53dc29992bb400", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-surfaces-standalone-payloads.test.ts:513"}, "properties": {"repobilityId": "e890befb6d58db7e", "scanner": "scanner-primary", "fingerprint": "1c53dc29992bb400", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d26f6be6ff2e752d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/__tests__/compaction-events.test.ts:447"}, "properties": {"repobilityId": "51907c8fb0fc5839", "scanner": "scanner-primary", "fingerprint": "d26f6be6ff2e752d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-61150b79ceb4f64d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/__tests__/conversation-error.test.ts:87"}, "properties": {"repobilityId": "4552a84ab1edc56d", "scanner": "scanner-primary", "fingerprint": "61150b79ceb4f64d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0875583b8a46ce44", "level": "note", "message": {"text": "Legacy-named symbol `eleven_multilingual_v2` in assistant/src/__tests__/config-schema.test.ts:1623"}, "properties": {"repobilityId": "57168c427f85fca0", "scanner": "scanner-primary", "fingerprint": "0875583b8a46ce44", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-337942b2c99447a9", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/config-schema.test.ts:295"}, "properties": {"repobilityId": "be62dee7b38488a9", "scanner": "scanner-primary", "fingerprint": "337942b2c99447a9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a1d4f9528ed6050e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/compaction-circuit.test.ts:148"}, "properties": {"repobilityId": "884dd582c2419190", "scanner": "scanner-primary", "fingerprint": "a1d4f9528ed6050e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ee3f708a6299e1f9", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/config-set-platform-guard.test.ts:8"}, "properties": {"repobilityId": "108607a091a040e2", "scanner": "scanner-primary", "fingerprint": "ee3f708a6299e1f9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3f780aa6a462b925", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/tool-executor-lifecycle-events.test.ts:143"}, "properties": {"repobilityId": "d3f9201dac7648e7", "scanner": "scanner-primary", "fingerprint": "3f780aa6a462b925", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a9aafe9be6ef60bb", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/conversation-abort-tool-results.test.ts:234"}, "properties": {"repobilityId": "6edf0cd5729b7c37", "scanner": "scanner-primary", "fingerprint": "a9aafe9be6ef60bb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d96f10931480d39c", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/__tests__/helpers/channel-test-adapter.ts:27"}, "properties": {"repobilityId": "b7ee169adecd268e", "scanner": "scanner-primary", "fingerprint": "d96f10931480d39c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c8b6100fab8d21e6", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/__tests__/test-support/tool-invocation-seed.ts:1"}, "properties": {"repobilityId": "962c084b5c682d82", "scanner": "scanner-primary", "fingerprint": "c8b6100fab8d21e6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-508abe1d17489abf", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/security/secure-keys.ts:201"}, "properties": {"repobilityId": "025946ad77a0ef69", "scanner": "scanner-primary", "fingerprint": "508abe1d17489abf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b29acd6049a9ca99", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/security/oauth2.ts:217"}, "properties": {"repobilityId": "d2deb0a3d323cf86", "scanner": "scanner-primary", "fingerprint": "b29acd6049a9ca99", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-abf5a5557e0ba2cc", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/security/token-manager.ts:144"}, "properties": {"repobilityId": "c82ce25209db4c52", "scanner": "scanner-primary", "fingerprint": "abf5a5557e0ba2cc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8aca39ee82e377f6", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/schedule/integration-status.ts:58"}, "properties": {"repobilityId": "74e1a7f3862d9cdb", "scanner": "scanner-primary", "fingerprint": "8aca39ee82e377f6", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f06e80ab24e6faa1", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/schedule/scheduler.ts:453"}, "properties": {"repobilityId": "38a2c9003abce7dc", "scanner": "scanner-primary", "fingerprint": "f06e80ab24e6faa1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7fbc2711eb873def", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/schedule/recurrence-engine.ts:21"}, "properties": {"repobilityId": "877dcfa5f9a56a62", "scanner": "scanner-primary", "fingerprint": "7fbc2711eb873def", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9df52e4ea90111c5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/bundler/bundle-scanner.ts:346"}, "properties": {"repobilityId": "40c3e93989992cf3", "scanner": "scanner-primary", "fingerprint": "9df52e4ea90111c5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b712400d7ebf0450", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/bundler/compiler-tools.ts:65"}, "properties": {"repobilityId": "dd21d0aedaa04c01", "scanner": "scanner-primary", "fingerprint": "b712400d7ebf0450", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e169962235faa713", "level": "note", "message": {"text": "Legacy-named symbol `isLegacy` in assistant/src/ipc/ipc-framing.ts:142"}, "properties": {"repobilityId": "5cbcf7a097ca8f3f", "scanner": "scanner-primary", "fingerprint": "e169962235faa713", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0c5189475411eee0", "level": "note", "message": {"text": "Legacy-named symbol `isLegacy` in assistant/src/ipc/assistant-server.ts:452"}, "properties": {"repobilityId": "d6b19ac533b0533c", "scanner": "scanner-primary", "fingerprint": "0c5189475411eee0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4e3a4782ae73c308", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/ipc/assistant-server.ts:175"}, "properties": {"repobilityId": "6434483ae4206d0d", "scanner": "scanner-primary", "fingerprint": "4e3a4782ae73c308", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f1530bac99e66610", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/ipc/__tests__/skill-server-bidirectional.test.ts:181"}, "properties": {"repobilityId": "f55ca4c15fbd0a45", "scanner": "scanner-primary", "fingerprint": "f1530bac99e66610", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-44e9c7e5ffee3cef", "level": "note", "message": {"text": "Legacy-named symbol `isLegacy` in assistant/src/ipc/__tests__/streaming-framing.test.ts:140"}, "properties": {"repobilityId": "33162ee081ba633a", "scanner": "scanner-primary", "fingerprint": "44e9c7e5ffee3cef", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-fff1df053f8ae5c9", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/ipc/routes/db-proxy-transaction.ts:136"}, "properties": {"repobilityId": "e3db3ba4a9bd5b4a", "scanner": "scanner-primary", "fingerprint": "fff1df053f8ae5c9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8e8cf20a55a80fd3", "level": "note", "message": {"text": "Legacy-named symbol `memory_v2` in assistant/src/ipc/routes/__tests__/memory-v2-backfill.test.ts:2"}, "properties": {"repobilityId": "fd54a335ec0f3adb", "scanner": "scanner-primary", "fingerprint": "8e8cf20a55a80fd3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ed93edb261ef0140", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/ipc/routes/__tests__/memory-v2-backfill.test.ts:22"}, "properties": {"repobilityId": "84e1c526e93a5a1b", "scanner": "scanner-primary", "fingerprint": "ed93edb261ef0140", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b7087e3518958f63", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/ipc/skill-routes/registries.ts:34"}, "properties": {"repobilityId": "5e8fe38a0b4b153d", "scanner": "scanner-primary", "fingerprint": "b7087e3518958f63", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-037cb0a08d0db9e0", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/notifications/emit-signal.ts:378"}, "properties": {"repobilityId": "89ec5965bb228b8c", "scanner": "scanner-primary", "fingerprint": "037cb0a08d0db9e0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-56322d4061dc240a", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/notifications/conversation-seed-composer.ts:162"}, "properties": {"repobilityId": "74d08240a11c9c3c", "scanner": "scanner-primary", "fingerprint": "56322d4061dc240a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-63875f53b98fd5de", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/notifications/home-feed-side-effect.ts:214"}, "properties": {"repobilityId": "d1c74b85cdb68bd8", "scanner": "scanner-primary", "fingerprint": "63875f53b98fd5de", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9d105cd9f5aacb84", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/notifications/broadcaster.ts:312"}, "properties": {"repobilityId": "9e1d5fdb509906d2", "scanner": "scanner-primary", "fingerprint": "9d105cd9f5aacb84", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6a81396ce8415247", "level": "none", "message": {"text": "Commented-code block (10 lines) in assistant/src/notifications/conversation-pairing.ts:119"}, "properties": {"repobilityId": "ef0cb10dbf61ad01", "scanner": "scanner-primary", "fingerprint": "6a81396ce8415247", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-268b09b04e5acf14", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/notifications/copy-composer.ts:383"}, "properties": {"repobilityId": "596877e0383ee074", "scanner": "scanner-primary", "fingerprint": "268b09b04e5acf14", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-374cb4a1faeb9ec9", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/notifications/decision-engine.ts:827"}, "properties": {"repobilityId": "815b95d83064fdfe", "scanner": "scanner-primary", "fingerprint": "374cb4a1faeb9ec9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-714175e0c978cfa3", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/notifications/__tests__/home-feed-side-effect.test.ts:170"}, "properties": {"repobilityId": "8aad7ec376c0a258", "scanner": "scanner-primary", "fingerprint": "714175e0c978cfa3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f068222ef616a1dd", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/notifications/__tests__/deterministic-checks.test.ts:199"}, "properties": {"repobilityId": "ee8f822b128123d3", "scanner": "scanner-primary", "fingerprint": "f068222ef616a1dd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-09c23c4190e744a6", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/config/seed-inference-profiles.ts:200"}, "properties": {"repobilityId": "1e6116ef58e0b381", "scanner": "scanner-primary", "fingerprint": "09c23c4190e744a6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2fd12ec93194809a", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/config/assistant-feature-flags.ts:60"}, "properties": {"repobilityId": "e86696ec7473f08e", "scanner": "scanner-primary", "fingerprint": "2fd12ec93194809a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c03c84daa13f0f2d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/config/assistant-feature-flags.ts:279"}, "properties": {"repobilityId": "51a38284bf2b4bb9", "scanner": "scanner-primary", "fingerprint": "c03c84daa13f0f2d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2a70698acaca65b1", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/config/schema.ts:83"}, "properties": {"repobilityId": "2c13a343c617d8d1", "scanner": "scanner-primary", "fingerprint": "2a70698acaca65b1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7bd8110d3f92be6b", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/config/sanitize-for-transfer.ts:60"}, "properties": {"repobilityId": "045a6b3c41a4877a", "scanner": "scanner-primary", "fingerprint": "7bd8110d3f92be6b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4b51885d96f4540a", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/config/loader.ts:643"}, "properties": {"repobilityId": "62fa37aa1df50db7", "scanner": "scanner-primary", "fingerprint": "4b51885d96f4540a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f2ddecc92c236cfe", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/config/feature-flag-cache.ts:54"}, "properties": {"repobilityId": "6ef6bbda9251610e", "scanner": "scanner-primary", "fingerprint": "f2ddecc92c236cfe", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9b7a3e07492f57ec", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/config/llm-resolver.ts:102"}, "properties": {"repobilityId": "03a24ebaedb6d115", "scanner": "scanner-primary", "fingerprint": "9b7a3e07492f57ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-097e8f968bd9e2db", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/config/skills.ts:720"}, "properties": {"repobilityId": "f30e306c3f7eea21", "scanner": "scanner-primary", "fingerprint": "097e8f968bd9e2db", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-80f52158bd268d82", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/config/schemas/llm-request-logs.ts:61"}, "properties": {"repobilityId": "1466438da56d0b40", "scanner": "scanner-primary", "fingerprint": "80f52158bd268d82", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e17e312177465f40", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/config/schemas/compaction-logs.ts:59"}, "properties": {"repobilityId": "3a9fa97efa96f0e9", "scanner": "scanner-primary", "fingerprint": "e17e312177465f40", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8bca1b3298a8840e", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/config/schemas/heartbeat.ts:91"}, "properties": {"repobilityId": "24db7bc86a299e87", "scanner": "scanner-primary", "fingerprint": "8bca1b3298a8840e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-13816ca2c22476e5", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/config/schemas/llm.ts:119"}, "properties": {"repobilityId": "29c1514f69c12f8d", "scanner": "scanner-primary", "fingerprint": "13816ca2c22476e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7adf2b5d4199a09e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/util/logger.ts:142"}, "properties": {"repobilityId": "5425e3446c9647fa", "scanner": "scanner-primary", "fingerprint": "7adf2b5d4199a09e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a27726cea84596ee", "level": "note", "message": {"text": "Legacy-named symbol `eleven_multilingual_v2` in assistant/src/tts/providers/elevenlabs-provider.ts:213"}, "properties": {"repobilityId": "78235a0fb16ca787", "scanner": "scanner-primary", "fingerprint": "a27726cea84596ee", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bbc98547ea0fbee2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/media/gemini-image-service.ts:80"}, "properties": {"repobilityId": "f3bf211cb533e243", "scanner": "scanner-primary", "fingerprint": "bbc98547ea0fbee2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e9c75ea842762654", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/plugin-api/index.ts:99"}, "properties": {"repobilityId": "55a4cad803ac994f", "scanner": "scanner-primary", "fingerprint": "e9c75ea842762654", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0914c24fd1a8abcb", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/mcp/mcp-auth-orchestrator.ts:136"}, "properties": {"repobilityId": "c68c33325f50379e", "scanner": "scanner-primary", "fingerprint": "0914c24fd1a8abcb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8b62de3f73682764", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/live-voice/__tests__/live-voice-tts.test.ts:291"}, "properties": {"repobilityId": "079e4ab3f2a00723", "scanner": "scanner-primary", "fingerprint": "8b62de3f73682764", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f0c5ace1949c4743", "level": "note", "message": {"text": "Legacy-named symbol `gateway_ingress_v1` in assistant/src/live-voice/__tests__/runtime-websocket-shell.test.ts:106"}, "properties": {"repobilityId": "da695d5c4bc8527a", "scanner": "scanner-primary", "fingerprint": "f0c5ace1949c4743", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-01b632bf1471679b", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/live-voice/__tests__/runtime-websocket-shell.test.ts:279"}, "properties": {"repobilityId": "ff3988ddaebb5023", "scanner": "scanner-primary", "fingerprint": "01b632bf1471679b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-174ac4d85e196741", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/credential-execution/managed-catalog.ts:70"}, "properties": {"repobilityId": "2cea12878a8a1fc3", "scanner": "scanner-primary", "fingerprint": "174ac4d85e196741", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a8229a5def7a6fdc", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/credential-execution/process-manager.ts:357"}, "properties": {"repobilityId": "75750330e4145a8a", "scanner": "scanner-primary", "fingerprint": "a8229a5def7a6fdc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-79feaa8498eb2206", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/credential-execution/executable-discovery.ts:81"}, "properties": {"repobilityId": "4c642ff1711eb145", "scanner": "scanner-primary", "fingerprint": "79feaa8498eb2206", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8413dced01a13a2f", "level": "none", "message": {"text": "Commented-code block (10 lines) in assistant/src/cli/program.ts:159"}, "properties": {"repobilityId": "2c633cc45307c113", "scanner": "scanner-primary", "fingerprint": "8413dced01a13a2f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad14b7928f816ab5", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/cli/commands/notifications.ts:404"}, "properties": {"repobilityId": "f0ee1e272f16e99d", "scanner": "scanner-primary", "fingerprint": "ad14b7928f816ab5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b47261e90f9edf43", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/cli/commands/skills.ts:408"}, "properties": {"repobilityId": "aaede440857ae0a8", "scanner": "scanner-primary", "fingerprint": "b47261e90f9edf43", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3b52a0ac2e6d0a3b", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/cli/commands/memory-v2.ts:477"}, "properties": {"repobilityId": "a1695b9afbfda92e", "scanner": "scanner-primary", "fingerprint": "3b52a0ac2e6d0a3b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-245c90dd7627ca93", "level": "note", "message": {"text": "Legacy-named symbol `memory_v2` in assistant/src/cli/commands/__tests__/memory-v2.test.ts:179"}, "properties": {"repobilityId": "c75b3a286c7f0be3", "scanner": "scanner-primary", "fingerprint": "245c90dd7627ca93", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5675e7253e77486c", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/cli/commands/__tests__/cache.test.ts:19"}, "properties": {"repobilityId": "9a11809df51e5d1f", "scanner": "scanner-primary", "fingerprint": "5675e7253e77486c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e5012e3f53e20579", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/cli/commands/__tests__/skills.test.ts:338"}, "properties": {"repobilityId": "a1e6f120a2576629", "scanner": "scanner-primary", "fingerprint": "e5012e3f53e20579", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-af511b80728c1cb9", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/cli/commands/db/status.ts:173"}, "properties": {"repobilityId": "1da836aafc418c72", "scanner": "scanner-primary", "fingerprint": "af511b80728c1cb9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-36d072028a214635", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/cli/commands/db/repair-step-integrity.ts:35"}, "properties": {"repobilityId": "65c0c9080657da6f", "scanner": "scanner-primary", "fingerprint": "36d072028a214635", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dbecaed9ce8a9a1f", "level": "note", "message": {"text": "Legacy-named symbol `migration_older_v1` in assistant/src/cli/commands/db/__tests__/status.test.ts:83"}, "properties": {"repobilityId": "e0803c84fca1e14c", "scanner": "scanner-primary", "fingerprint": "dbecaed9ce8a9a1f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3e100f3000cbe19b", "level": "none", "message": {"text": "Commented-code block (10 lines) in assistant/src/cli/lib/install-from-github.ts:357"}, "properties": {"repobilityId": "9ee086a0ee352d5e", "scanner": "scanner-primary", "fingerprint": "3e100f3000cbe19b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8633e66743b3b20f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/cli/lib/plugin-marketplace.ts:190"}, "properties": {"repobilityId": "8952930abc78d614", "scanner": "scanner-primary", "fingerprint": "8633e66743b3b20f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ff8ba616ba8290d7", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/cli/lib/__tests__/search-plugins.test.ts:286"}, "properties": {"repobilityId": "2b001b9480c847ee", "scanner": "scanner-primary", "fingerprint": "ff8ba616ba8290d7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c235c75176c8ac79", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/cli/lib/__tests__/install-from-github.test.ts:595"}, "properties": {"repobilityId": "ee741cd5f229f456", "scanner": "scanner-primary", "fingerprint": "c235c75176c8ac79", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f7e2d3b03d42d1c7", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/agent/loop.ts:804"}, "properties": {"repobilityId": "d8a02ca36ab27aeb", "scanner": "scanner-primary", "fingerprint": "f7e2d3b03d42d1c7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cf2b9d830c54ae98", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/workspace/provider-commit-message-generator.ts:108"}, "properties": {"repobilityId": "449c642ed468a2d7", "scanner": "scanner-primary", "fingerprint": "cf2b9d830c54ae98", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9836c08622b696c5", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/turn-commit.ts:71"}, "properties": {"repobilityId": "f9f5ece955aae0dc", "scanner": "scanner-primary", "fingerprint": "9836c08622b696c5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c532a49e234e3971", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/heartbeat-service.ts:257"}, "properties": {"repobilityId": "be65fc9a7dc2f801", "scanner": "scanner-primary", "fingerprint": "c532a49e234e3971", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-39a5b96dbe5ce5e1", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/commit-message-enrichment-service.ts:201"}, "properties": {"repobilityId": "3c03b8d65a65cf35", "scanner": "scanner-primary", "fingerprint": "39a5b96dbe5ce5e1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-624329fd00205054", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/workspace/adaptive-thinking-repair.ts:9"}, "properties": {"repobilityId": "5fabae87a6baa7a1", "scanner": "scanner-primary", "fingerprint": "624329fd00205054", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-61f19fd534c04d56", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/git-service.ts:388"}, "properties": {"repobilityId": "f5897f5b0b49693b", "scanner": "scanner-primary", "fingerprint": "61f19fd534c04d56", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b0385eb8a334982c", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/workspace/migrations/017-seed-persona-dirs.ts:20"}, "properties": {"repobilityId": "957bf4cb8e9a098a", "scanner": "scanner-primary", "fingerprint": "b0385eb8a334982c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-02cbc2a3363f5edd", "level": "none", "message": {"text": "Commented-code block (11 lines) in assistant/src/workspace/migrations/038-unify-llm-callsite-configs.ts:63"}, "properties": {"repobilityId": "5185c6c11ea527dc", "scanner": "scanner-primary", "fingerprint": "02cbc2a3363f5edd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2cdb658b398e9174", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/086-revert-stale-gemini-mis-rewrites.ts:55"}, "properties": {"repobilityId": "c76b2cf35d6f86b1", "scanner": "scanner-primary", "fingerprint": "2cdb658b398e9174", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ef299f838cf697d5", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/031-drop-user-md.ts:28"}, "properties": {"repobilityId": "7e70f76094c87f15", "scanner": "scanner-primary", "fingerprint": "ef299f838cf697d5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-46522fe9abd0b70a", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/workspace/migrations/101-upgrade-balanced-economy-to-minimax-m3.ts:8"}, "properties": {"repobilityId": "86c6f68e233e4879", "scanner": "scanner-primary", "fingerprint": "46522fe9abd0b70a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-739b0291738a4e9c", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/069-seed-onboarding-threads.ts:18"}, "properties": {"repobilityId": "d01410acf7eb5770", "scanner": "scanner-primary", "fingerprint": "739b0291738a4e9c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d0f697cbb8a05f06", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/workspace/migrations/034-remove-calls-voice-transcription-provider.ts:68"}, "properties": {"repobilityId": "f91f627bc860ae77", "scanner": "scanner-primary", "fingerprint": "d0f697cbb8a05f06", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-55038f325dcd2030", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/006-services-config.ts:38"}, "properties": {"repobilityId": "a236db1a29a49b7b", "scanner": "scanner-primary", "fingerprint": "55038f325dcd2030", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8b7e815a20baa8ea", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/091-retighten-migration-onboarding-thread.ts:23"}, "properties": {"repobilityId": "b04664b7b6997db8", "scanner": "scanner-primary", "fingerprint": "8b7e815a20baa8ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fcbcacba21868ab1", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/079-home-feed-notification-only.ts:137"}, "properties": {"repobilityId": "0ebe4104bbb9bfb2", "scanner": "scanner-primary", "fingerprint": "fcbcacba21868ab1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb6d7ce2299e081a", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/workspace/migrations/094-seed-avatar-manifest.ts:137"}, "properties": {"repobilityId": "2e9e876120d6a9f3", "scanner": "scanner-primary", "fingerprint": "eb6d7ce2299e081a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d93c0a73caf263a4", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/workspace/migrations/096-reduce-quality-profile-effort.ts:8"}, "properties": {"repobilityId": "dbd49d804a23f2e9", "scanner": "scanner-primary", "fingerprint": "d93c0a73caf263a4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0d922db793d2ccfd", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/workspace/migrations/097-enable-adaptive-thinking-managed-profiles.ts:9"}, "properties": {"repobilityId": "8b9b61a653a16c5e", "scanner": "scanner-primary", "fingerprint": "0d922db793d2ccfd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-901ecc8bbcf62c14", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/workspace/migrations/044-bump-stale-provider-stream-timeout.ts:42"}, "properties": {"repobilityId": "e039c277411289b9", "scanner": "scanner-primary", "fingerprint": "901ecc8bbcf62c14", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a23edd3fe74a2f68", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/runner.ts:90"}, "properties": {"repobilityId": "7e46ea734d02017b", "scanner": "scanner-primary", "fingerprint": "a23edd3fe74a2f68", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-87392c2333d1cb3b", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/087-memory-router-balanced-profile.ts:6"}, "properties": {"repobilityId": "d1e7c335ad94e9b4", "scanner": "scanner-primary", "fingerprint": "87392c2333d1cb3b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9a28d90c542626b4", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/workspace/migrations/090-memory-router-cost-optimized-profile.ts:10"}, "properties": {"repobilityId": "e211ab7bcc1206ba", "scanner": "scanner-primary", "fingerprint": "9a28d90c542626b4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8a5a2f9718a67694", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/migrate-to-workspace-volume.ts:95"}, "properties": {"repobilityId": "f83f6566c4bcd446", "scanner": "scanner-primary", "fingerprint": "8a5a2f9718a67694", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b2f116b4e8ab3151", "level": "none", "message": {"text": "Commented-code block (11 lines) in assistant/src/workspace/migrations/104-recheck-adaptive-thinking-model-implied-anthropic.ts:10"}, "properties": {"repobilityId": "3c43be7f8cab24b2", "scanner": "scanner-primary", "fingerprint": "b2f116b4e8ab3151", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-71196a5f817d7879", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/workspace/migrations/100-upgrade-quality-profile-to-fable-5.ts:8"}, "properties": {"repobilityId": "f6d4674c85a8b7fb", "scanner": "scanner-primary", "fingerprint": "71196a5f817d7879", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a3bd8769642ab804", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/054-seed-recall-callsite.ts:41"}, "properties": {"repobilityId": "9e5e678b65bcbb50", "scanner": "scanner-primary", "fingerprint": "a3bd8769642ab804", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8b8387d74e214782", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workspace/migrations/057-repair-stale-gemini-model-ids.ts:144"}, "properties": {"repobilityId": "ee61832d3f78f2bc", "scanner": "scanner-primary", "fingerprint": "8b8387d74e214782", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d15df6ae5378326f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/platform/client.ts:104"}, "properties": {"repobilityId": "6e8856949a070967", "scanner": "scanner-primary", "fingerprint": "d15df6ae5378326f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d3c96c24b4a8fbe5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/platform/client.test.ts:122"}, "properties": {"repobilityId": "6a6824eb63b2f400", "scanner": "scanner-primary", "fingerprint": "d3c96c24b4a8fbe5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-bceee7c27d247111", "level": "none", "message": {"text": "Commented-code block (10 lines) in assistant/src/acp/session-manager.ts:388"}, "properties": {"repobilityId": "91621f71408b2b42", "scanner": "scanner-primary", "fingerprint": "bceee7c27d247111", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b97ed9d92bfd2cbb", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/acp/__tests__/session-manager.test.ts:11"}, "properties": {"repobilityId": "ce2da5ae0146048f", "scanner": "scanner-primary", "fingerprint": "b97ed9d92bfd2cbb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e648bde063d668ca", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/acp/__tests__/agent-process.test.ts:164"}, "properties": {"repobilityId": "80dbb056df81ba0c", "scanner": "scanner-primary", "fingerprint": "e648bde063d668ca", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f453670d60b88e79", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/acp/__tests__/session-manager-resume.test.ts:127"}, "properties": {"repobilityId": "586f78531112eaa8", "scanner": "scanner-primary", "fingerprint": "f453670d60b88e79", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb94bf3febc7202f", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/backup/paths.ts:157"}, "properties": {"repobilityId": "02c16bf6c0397385", "scanner": "scanner-primary", "fingerprint": "eb94bf3febc7202f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-49203a7c55273fd4", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/backup/snapshot-lock.ts:265"}, "properties": {"repobilityId": "56f0bcbb1cf58d20", "scanner": "scanner-primary", "fingerprint": "49203a7c55273fd4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e8529e34013e8e33", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/backup/__tests__/snapshot-lock.test.ts:147"}, "properties": {"repobilityId": "64561003b8a8c8fa", "scanner": "scanner-primary", "fingerprint": "e8529e34013e8e33", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d3a2d02aea6b7a05", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/heartbeat/heartbeat-service.ts:477"}, "properties": {"repobilityId": "5346ba60a0834b5c", "scanner": "scanner-primary", "fingerprint": "d3a2d02aea6b7a05", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0c8b3cfa63f69290", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/heartbeat/__tests__/heartbeat-service.test.ts:364"}, "properties": {"repobilityId": "58174037ca567dd2", "scanner": "scanner-primary", "fingerprint": "0c8b3cfa63f69290", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8297fb7fdd1fcef6", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/registry.ts:184"}, "properties": {"repobilityId": "ad4a99ae3a1e3374", "scanner": "scanner-primary", "fingerprint": "8297fb7fdd1fcef6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f32ae2b9065f531d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/call-site-routing.ts:47"}, "properties": {"repobilityId": "ca5da14dace1e8bf", "scanner": "scanner-primary", "fingerprint": "f32ae2b9065f531d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-12b73fb112830684", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/retry.ts:147"}, "properties": {"repobilityId": "28126e1661dd7a09", "scanner": "scanner-primary", "fingerprint": "12b73fb112830684", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e314df98062393fe", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/connection-resolution.ts:117"}, "properties": {"repobilityId": "459cf238e56c7b90", "scanner": "scanner-primary", "fingerprint": "e314df98062393fe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8d6c1848e76e2b8c", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/providers/provider-send-message.ts:118"}, "properties": {"repobilityId": "a08b2bcf586efb13", "scanner": "scanner-primary", "fingerprint": "8d6c1848e76e2b8c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cbbba568d87529cd", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/providers/placeholder-sentinels.ts:1"}, "properties": {"repobilityId": "552721ba15979ec3", "scanner": "scanner-primary", "fingerprint": "cbbba568d87529cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-52edb1d100020215", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/__tests__/retry-callsite.test.ts:49"}, "properties": {"repobilityId": "f57f43e8d8abc8f6", "scanner": "scanner-primary", "fingerprint": "52edb1d100020215", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6499e2801524f888", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/providers/__tests__/dispatch-connection-routing.test.ts:199"}, "properties": {"repobilityId": "98f7392e3ec36ffa", "scanner": "scanner-primary", "fingerprint": "6499e2801524f888", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c537ff88e8727f05", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/__tests__/satellite-connection-routing.test.ts:420"}, "properties": {"repobilityId": "0ee44f96a328a373", "scanner": "scanner-primary", "fingerprint": "c537ff88e8727f05", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e9b628314137d01b", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/openai/responses-provider.ts:307"}, "properties": {"repobilityId": "e5d16e8fdbe635db", "scanner": "scanner-primary", "fingerprint": "e9b628314137d01b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c14e4a2b6533e881", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/providers/openai/responses-provider.ts:174"}, "properties": {"repobilityId": "997b148ec6fd83c2", "scanner": "scanner-primary", "fingerprint": "c14e4a2b6533e881", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-985a1e48524458f1", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/providers/openai/chat-completions-provider.ts:554"}, "properties": {"repobilityId": "d17f396922ab4daa", "scanner": "scanner-primary", "fingerprint": "985a1e48524458f1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-00f2a087b96fc7e7", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/providers/speech-to-text/xai-realtime.ts:239"}, "properties": {"repobilityId": "15c81608ef434418", "scanner": "scanner-primary", "fingerprint": "00f2a087b96fc7e7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-79ecfe4ca44994b7", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/providers/speech-to-text/google-gemini-live-stream.ts:185"}, "properties": {"repobilityId": "81459d1eee07dd7c", "scanner": "scanner-primary", "fingerprint": "79ecfe4ca44994b7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-51028b68db8a6ff3", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/providers/speech-to-text/openai-whisper-stream.ts:235"}, "properties": {"repobilityId": "14cf1464c94bf231", "scanner": "scanner-primary", "fingerprint": "51028b68db8a6ff3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f6067b6cacb46e80", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/speech-to-text/deepgram-realtime.test.ts:661"}, "properties": {"repobilityId": "6b257c7e67e88f03", "scanner": "scanner-primary", "fingerprint": "f6067b6cacb46e80", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c574c56752a05f7e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/speech-to-text/google-gemini-live-stream.test.ts:549"}, "properties": {"repobilityId": "808341adf460d925", "scanner": "scanner-primary", "fingerprint": "c574c56752a05f7e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cf557b3bf3969a46", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/speech-to-text/xai-realtime.test.ts:439"}, "properties": {"repobilityId": "821a3c53b6f6f12f", "scanner": "scanner-primary", "fingerprint": "cf557b3bf3969a46", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf3bf8c8d462262d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/speech-to-text/__tests__/resolve.test.ts:118"}, "properties": {"repobilityId": "a4f94aeb6aef33e8", "scanner": "scanner-primary", "fingerprint": "bf3bf8c8d462262d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9c8e51d4641994fc", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/minimax/client.ts:104"}, "properties": {"repobilityId": "266b2e38f55e8426", "scanner": "scanner-primary", "fingerprint": "9c8e51d4641994fc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-630779c90ec2601e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/inference/adapter-factory.ts:205"}, "properties": {"repobilityId": "1370e2b9a9531eb7", "scanner": "scanner-primary", "fingerprint": "630779c90ec2601e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e7424a82f70ac787", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/providers/inference/__tests__/connections-label.test.ts:132"}, "properties": {"repobilityId": "5a613a5095450825", "scanner": "scanner-primary", "fingerprint": "e7424a82f70ac787", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e276602eb486f6d3", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/providers/anthropic/client.ts:797"}, "properties": {"repobilityId": "9bbee62ab0a5169b", "scanner": "scanner-primary", "fingerprint": "e276602eb486f6d3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-caa9f4642a22d778", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/providers/openrouter/client.ts:30"}, "properties": {"repobilityId": "6431019e60042dc3", "scanner": "scanner-primary", "fingerprint": "caa9f4642a22d778", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3aeec12d61d3fe5c", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/oauth/token-persistence.ts:148"}, "properties": {"repobilityId": "e017f67a3dd18857", "scanner": "scanner-primary", "fingerprint": "3aeec12d61d3fe5c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5590f03abdc2cbb7", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/oauth/platform-connection.ts:99"}, "properties": {"repobilityId": "6ab45db69469f42d", "scanner": "scanner-primary", "fingerprint": "5590f03abdc2cbb7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7eb2013f8fe74c32", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/oauth/identity-verifier.ts:146"}, "properties": {"repobilityId": "2f6de47ce1d9ea49", "scanner": "scanner-primary", "fingerprint": "7eb2013f8fe74c32", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cbf30babff81b5ec", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/oauth/identity-verifier.ts:97"}, "properties": {"repobilityId": "74211ab5aff89585", "scanner": "scanner-primary", "fingerprint": "cbf30babff81b5ec", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-cab91f2a84b4093f", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/oauth/oauth-store.ts:1075"}, "properties": {"repobilityId": "33914491f8db53dc", "scanner": "scanner-primary", "fingerprint": "cab91f2a84b4093f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d7eddf7f43e90bf5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/oauth/connection-resolver.ts:216"}, "properties": {"repobilityId": "f79457dcbb9847b4", "scanner": "scanner-primary", "fingerprint": "d7eddf7f43e90bf5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-81de23011dcef86b", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/oauth/revoke.ts:42"}, "properties": {"repobilityId": "07f99f4ad2509093", "scanner": "scanner-primary", "fingerprint": "81de23011dcef86b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0b858b5ef207d604", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/oauth/provider-serializer.ts:63"}, "properties": {"repobilityId": "e19c8d7dd0009010", "scanner": "scanner-primary", "fingerprint": "0b858b5ef207d604", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9f98661186b8bc79", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/browser-session/manager.ts:66"}, "properties": {"repobilityId": "17fb56650aae851c", "scanner": "scanner-primary", "fingerprint": "9f98661186b8bc79", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-32c6a9fe4f7cd8cd", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/browser-session/__tests__/manager.test.ts:259"}, "properties": {"repobilityId": "05592dab9fc30e21", "scanner": "scanner-primary", "fingerprint": "32c6a9fe4f7cd8cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5b4463f701504a72", "level": "none", "message": {"text": "Commented-code block (10 lines) in assistant/src/home/relationship-state-writer.ts:155"}, "properties": {"repobilityId": "835cb99467b7b629", "scanner": "scanner-primary", "fingerprint": "5b4463f701504a72", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f172c3e12538942b", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/home/__tests__/relationship-state-writer.test.ts:203"}, "properties": {"repobilityId": "22630066ba0036cc", "scanner": "scanner-primary", "fingerprint": "f172c3e12538942b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a3c1598fb673944c", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/calls/call-controller.ts:779"}, "properties": {"repobilityId": "83a0ad948a294f34", "scanner": "scanner-primary", "fingerprint": "a3c1598fb673944c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e787f9fc4c5deff", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/calls/media-stream-server.ts:331"}, "properties": {"repobilityId": "38a0b8c2d42f79ff", "scanner": "scanner-primary", "fingerprint": "4e787f9fc4c5deff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9703f3b8d3ddebc6", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/calls/relay-setup-router.ts:244"}, "properties": {"repobilityId": "eb087e95eb9b0c0f", "scanner": "scanner-primary", "fingerprint": "9703f3b8d3ddebc6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91969df77ce89b64", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/calls/twilio-provider.ts:19"}, "properties": {"repobilityId": "a742a46bfbbfc0ef", "scanner": "scanner-primary", "fingerprint": "91969df77ce89b64", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ddc5cff20939a7dd", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/calls/call-speech-output.ts:97"}, "properties": {"repobilityId": "de5522bf256e2aca", "scanner": "scanner-primary", "fingerprint": "ddc5cff20939a7dd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-401c290c9e2584d9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/calls/fish-audio-client.ts:67"}, "properties": {"repobilityId": "e8b8bf3da3260ce9", "scanner": "scanner-primary", "fingerprint": "401c290c9e2584d9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-4680904e419bf4e6", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/calls/voice-session-bridge.ts:319"}, "properties": {"repobilityId": "fe4aef11ddc7e650", "scanner": "scanner-primary", "fingerprint": "4680904e419bf4e6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4c1d57f399321d31", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/calls/tts-text-sanitizer.ts:10"}, "properties": {"repobilityId": "8d26629e338eee73", "scanner": "scanner-primary", "fingerprint": "4c1d57f399321d31", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac28cb34b2770fe0", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/calls/twilio-rest.ts:6"}, "properties": {"repobilityId": "fbc57a1b460e77ee", "scanner": "scanner-primary", "fingerprint": "ac28cb34b2770fe0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ce41ba14f161a7d1", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/calls/media-stream-output.ts:415"}, "properties": {"repobilityId": "63d7b5eeca2415ae", "scanner": "scanner-primary", "fingerprint": "ce41ba14f161a7d1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1f507b13a21fe17d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/calls/voice-quality.ts:85"}, "properties": {"repobilityId": "edf3a3996eecfedf", "scanner": "scanner-primary", "fingerprint": "1f507b13a21fe17d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6b6f2e73f2ab52d0", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/daemon/external-plugins-bootstrap.ts:220"}, "properties": {"repobilityId": "cdb21cda10b2d7e2", "scanner": "scanner-primary", "fingerprint": "6b6f2e73f2ab52d0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d5056035039dec1e", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/daemon/conversation-surfaces.ts:1356"}, "properties": {"repobilityId": "77f9caf6e4c31d57", "scanner": "scanner-primary", "fingerprint": "d5056035039dec1e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-55b200847880501f", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/daemon/conversation-tool-setup.ts:165"}, "properties": {"repobilityId": "fe0e16051eefa1c2", "scanner": "scanner-primary", "fingerprint": "55b200847880501f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-29bbfccb39b4044b", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/daemon/shutdown-handlers.ts:45"}, "properties": {"repobilityId": "f3d225f910a1b875", "scanner": "scanner-primary", "fingerprint": "29bbfccb39b4044b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-96918ea31a1c3a98", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/providers-setup.ts:39"}, "properties": {"repobilityId": "748a83569b255f4b", "scanner": "scanner-primary", "fingerprint": "96918ea31a1c3a98", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-74711b8ef38331e9", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/config-watcher.ts:195"}, "properties": {"repobilityId": "9f30ad6580f7d05f", "scanner": "scanner-primary", "fingerprint": "74711b8ef38331e9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ce73602d259a2156", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/daemon/conversation-lifecycle.ts:151"}, "properties": {"repobilityId": "7fd73b0d8f57beb9", "scanner": "scanner-primary", "fingerprint": "ce73602d259a2156", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-edcfdb7df000b07f", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/pkb-context-tracker.ts:109"}, "properties": {"repobilityId": "c8a22cdf0db6cf7a", "scanner": "scanner-primary", "fingerprint": "edcfdb7df000b07f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dafca241aa96a165", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/wake-conversation-ops.ts:152"}, "properties": {"repobilityId": "2252d2c3e74c63b9", "scanner": "scanner-primary", "fingerprint": "dafca241aa96a165", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-94d3a70bc6ba256d", "level": "none", "message": {"text": "Commented-code block (13 lines) in assistant/src/daemon/host-proxy-base.ts:201"}, "properties": {"repobilityId": "085ab38f0e6537df", "scanner": "scanner-primary", "fingerprint": "94d3a70bc6ba256d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a45990d1ae9ee315", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/meet-manifest-loader.ts:355"}, "properties": {"repobilityId": "f02a5e06ca2b2ad4", "scanner": "scanner-primary", "fingerprint": "a45990d1ae9ee315", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-650608be45e8d782", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/daemon/lifecycle.ts:294"}, "properties": {"repobilityId": "e0b4a3e1550f5178", "scanner": "scanner-primary", "fingerprint": "650608be45e8d782", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-841bdae7b5851db1", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/host-transfer-proxy.ts:550"}, "properties": {"repobilityId": "99ef718f14423e15", "scanner": "scanner-primary", "fingerprint": "841bdae7b5851db1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-637d6e446a17ff87", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/daemon/conversation-agent-loop.ts:224"}, "properties": {"repobilityId": "5fb0c0e090a1669c", "scanner": "scanner-primary", "fingerprint": "637d6e446a17ff87", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6c1cfa78225e7e94", "level": "none", "message": {"text": "Commented-code block (11 lines) in assistant/src/daemon/conversation-skill-tools.ts:377"}, "properties": {"repobilityId": "867e9199f6c28095", "scanner": "scanner-primary", "fingerprint": "6c1cfa78225e7e94", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-86d531223115f473", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/host-bash-proxy.ts:96"}, "properties": {"repobilityId": "1cd46088df16a2c0", "scanner": "scanner-primary", "fingerprint": "86d531223115f473", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8686c96604df1ee9", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/daemon/conversation-error.ts:317"}, "properties": {"repobilityId": "e8056f80ffb4e983", "scanner": "scanner-primary", "fingerprint": "8686c96604df1ee9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-88118546dcec3011", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/conversation.ts:879"}, "properties": {"repobilityId": "29e8467d1a2470c6", "scanner": "scanner-primary", "fingerprint": "88118546dcec3011", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c8517eca6a755ea2", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/meet-host-supervisor.ts:375"}, "properties": {"repobilityId": "f3cf2bd760db4bd9", "scanner": "scanner-primary", "fingerprint": "c8517eca6a755ea2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e22f111414dfef1", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/daemon/conversation-registry.ts:112"}, "properties": {"repobilityId": "3200c22d13c39f75", "scanner": "scanner-primary", "fingerprint": "4e22f111414dfef1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c88bc10850aee823", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/host-browser-proxy.ts:259"}, "properties": {"repobilityId": "3320065cffe2aa0e", "scanner": "scanner-primary", "fingerprint": "c88bc10850aee823", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b731615b2be68104", "level": "note", "message": {"text": "Legacy-named symbol `allowFlatLegacy` in assistant/src/daemon/conversation-runtime-assembly.ts:910"}, "properties": {"repobilityId": "1a94ee10af7a3731", "scanner": "scanner-primary", "fingerprint": "b731615b2be68104", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-55aa09f1dd1870c2", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/conversation-runtime-assembly.ts:1034"}, "properties": {"repobilityId": "7fcfccacdf30cdbd", "scanner": "scanner-primary", "fingerprint": "55aa09f1dd1870c2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-92b1204afeb81def", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/server.ts:116"}, "properties": {"repobilityId": "1204493a00f93360", "scanner": "scanner-primary", "fingerprint": "92b1204afeb81def", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7b47e8e642464587", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/workspace-tools-watcher.ts:272"}, "properties": {"repobilityId": "763157bfe97981b0", "scanner": "scanner-primary", "fingerprint": "7b47e8e642464587", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bfb5250cd9d3a97f", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/host-app-control-proxy.ts:348"}, "properties": {"repobilityId": "058a44d9763a4c21", "scanner": "scanner-primary", "fingerprint": "bfb5250cd9d3a97f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-864481029d9a64cc", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/conversation-messaging.ts:494"}, "properties": {"repobilityId": "340b320495bcf7b4", "scanner": "scanner-primary", "fingerprint": "864481029d9a64cc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a917b9d604832d2a", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/assistant-attachments.ts:330"}, "properties": {"repobilityId": "a423f67fb8a50014", "scanner": "scanner-primary", "fingerprint": "a917b9d604832d2a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8b21dff11dff33f9", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/daemon/first-greeting.ts:86"}, "properties": {"repobilityId": "a2269fec4ee11a8a", "scanner": "scanner-primary", "fingerprint": "8b21dff11dff33f9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-02576c9d3cecabed", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/daemon/conversation-agent-loop-handlers.ts:407"}, "properties": {"repobilityId": "82645c850a6df6d9", "scanner": "scanner-primary", "fingerprint": "02576c9d3cecabed", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-40a67be6b1d4d772", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/conversation-store.ts:134"}, "properties": {"repobilityId": "5c929d55b1ee232e", "scanner": "scanner-primary", "fingerprint": "40a67be6b1d4d772", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a270830ec80891c0", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/approval-generators.ts:85"}, "properties": {"repobilityId": "a5e37b4e859aaf2c", "scanner": "scanner-primary", "fingerprint": "a270830ec80891c0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3199e5323a6e8ae0", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/daemon/daemon-skill-host.ts:217"}, "properties": {"repobilityId": "bb6d10ac2d33685c", "scanner": "scanner-primary", "fingerprint": "3199e5323a6e8ae0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5b16f9647166d130", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/daemon/disk-pressure-guard.ts:20"}, "properties": {"repobilityId": "7e06c1556c5343dd", "scanner": "scanner-primary", "fingerprint": "5b16f9647166d130", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e9ed4632fdb7655", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/conversation-process.ts:412"}, "properties": {"repobilityId": "9cc1d3e7e884ea75", "scanner": "scanner-primary", "fingerprint": "4e9ed4632fdb7655", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ea733311cb71b125", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/daemon/conversation-history.ts:47"}, "properties": {"repobilityId": "046104d049f50e53", "scanner": "scanner-primary", "fingerprint": "ea733311cb71b125", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c40b69b143898796", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/__tests__/conversation-tool-setup.test.ts:423"}, "properties": {"repobilityId": "407f7e2dace05c78", "scanner": "scanner-primary", "fingerprint": "c40b69b143898796", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ee28ab7eaff8af0", "level": "none", "message": {"text": "Commented-code block (10 lines) in assistant/src/daemon/__tests__/conversation-lifecycle-auto-analyze.test.ts:253"}, "properties": {"repobilityId": "0500a6ced8ce6d99", "scanner": "scanner-primary", "fingerprint": "9ee28ab7eaff8af0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1d55040637f2af06", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/daemon/__tests__/conversation-surfaces-launch.test.ts:387"}, "properties": {"repobilityId": "8218b1a696426d0a", "scanner": "scanner-primary", "fingerprint": "1d55040637f2af06", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bc89cd60ec0be8f5", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/message-types/host-app-control.ts:1"}, "properties": {"repobilityId": "771341bbe0af8512", "scanner": "scanner-primary", "fingerprint": "bc89cd60ec0be8f5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7bbce5fafe3fa8f0", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/handlers/config-channels.ts:200"}, "properties": {"repobilityId": "60d9fc1c9238aabb", "scanner": "scanner-primary", "fingerprint": "7bbce5fafe3fa8f0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec5e03b1faecda71", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/handlers/config-slack-channel.ts:252"}, "properties": {"repobilityId": "a6618d2d8355f3a0", "scanner": "scanner-primary", "fingerprint": "ec5e03b1faecda71", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-608e7844f7e71eb9", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/handlers/skills.ts:810"}, "properties": {"repobilityId": "38802961a53333a8", "scanner": "scanner-primary", "fingerprint": "608e7844f7e71eb9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7b81352ae5c5ea90", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/daemon/handlers/shared.ts:444"}, "properties": {"repobilityId": "a8f3203973c4007b", "scanner": "scanner-primary", "fingerprint": "7b81352ae5c5ea90", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8ee02298b7036669", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/daemon/handlers/recording.ts:641"}, "properties": {"repobilityId": "f54f483337cb1582", "scanner": "scanner-primary", "fingerprint": "8ee02298b7036669", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-968fe315b9cdd6be", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/subagent/manager.ts:192"}, "properties": {"repobilityId": "4471f94ea45a732a", "scanner": "scanner-primary", "fingerprint": "968fe315b9cdd6be", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f6b891def7fd8e23", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/messaging/providers/whatsapp/api.ts:204"}, "properties": {"repobilityId": "aa434648f9b80764", "scanner": "scanner-primary", "fingerprint": "f6b891def7fd8e23", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7e6058abd023a66a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/messaging/providers/slack/api.ts:128"}, "properties": {"repobilityId": "8bcc66b695c51dd6", "scanner": "scanner-primary", "fingerprint": "7e6058abd023a66a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e4adaaa810f2782a", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/messaging/providers/slack/render-transcript.test.ts:1117"}, "properties": {"repobilityId": "66bc870b9dcca50e", "scanner": "scanner-primary", "fingerprint": "e4adaaa810f2782a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a4373dbb36893182", "level": "note", "message": {"text": "Legacy-named symbol `allowFlatLegacy` in assistant/src/messaging/providers/slack/message-metadata.ts:237"}, "properties": {"repobilityId": "bec56b75e644646f", "scanner": "scanner-primary", "fingerprint": "a4373dbb36893182", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a8ed5ebf07a0517b", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/messaging/providers/slack/adapter.ts:112"}, "properties": {"repobilityId": "2e457660821f4be2", "scanner": "scanner-primary", "fingerprint": "a8ed5ebf07a0517b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-02f7233b069007ba", "level": "note", "message": {"text": "Legacy-named symbol `allowFlatLegacy` in assistant/src/messaging/providers/slack/message-metadata.test.ts:214"}, "properties": {"repobilityId": "ffe25197dd9a1b50", "scanner": "scanner-primary", "fingerprint": "02f7233b069007ba", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-122608e10f53bd8b", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/messaging/providers/slack/client.ts:101"}, "properties": {"repobilityId": "3345732868136b34", "scanner": "scanner-primary", "fingerprint": "122608e10f53bd8b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d0292ad195861bbe", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/messaging/providers/slack/__tests__/adapter-token-routing.test.ts:300"}, "properties": {"repobilityId": "4896221d757017e2", "scanner": "scanner-primary", "fingerprint": "d0292ad195861bbe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0eab9ddcbe6b3012", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/messaging/providers/telegram-bot/api.ts:207"}, "properties": {"repobilityId": "d1fc53fe00be336f", "scanner": "scanner-primary", "fingerprint": "0eab9ddcbe6b3012", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-923583abc0b105de", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/avatar/resvg-lazy.test.ts:40"}, "properties": {"repobilityId": "16010b72acf83b68", "scanner": "scanner-primary", "fingerprint": "923583abc0b105de", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ebfdcce335e1aa19", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/approvals/guardian-request-resolvers.ts:200"}, "properties": {"repobilityId": "527241694ba00981", "scanner": "scanner-primary", "fingerprint": "ebfdcce335e1aa19", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bc4d77ca27a165a0", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/app-store.ts:930"}, "properties": {"repobilityId": "96afb47097975633", "scanner": "scanner-primary", "fingerprint": "bc4d77ca27a165a0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4bc57a781c9cbfaa", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/memory-v2-activation-log-store.ts:143"}, "properties": {"repobilityId": "02c8d0f75413c3c0", "scanner": "scanner-primary", "fingerprint": "4bc57a781c9cbfaa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-72689d5374671547", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/group-crud.ts:27"}, "properties": {"repobilityId": "9633d0e642122ac0", "scanner": "scanner-primary", "fingerprint": "72689d5374671547", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1c974f7b31095b3f", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/llm-request-log-store.ts:572"}, "properties": {"repobilityId": "6c6c88041acec05f", "scanner": "scanner-primary", "fingerprint": "1c974f7b31095b3f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf1cf0406a5f1982", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/llm-usage-store.ts:209"}, "properties": {"repobilityId": "6e9a06a7444f8837", "scanner": "scanner-primary", "fingerprint": "bf1cf0406a5f1982", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-febea29c331eb849", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/embedding-backend.ts:119"}, "properties": {"repobilityId": "0a4731065000a0c4", "scanner": "scanner-primary", "fingerprint": "febea29c331eb849", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d3e5ddedb46bbc8a", "level": "note", "message": {"text": "Legacy-named symbol `includeFlatLegacy` in assistant/src/memory/conversation-crud.ts:1426"}, "properties": {"repobilityId": "7127ef5cddb06bf6", "scanner": "scanner-primary", "fingerprint": "d3e5ddedb46bbc8a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5cc3b7db590da2dc", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/memory/conversation-crud.ts:596"}, "properties": {"repobilityId": "63e7f154f26600d3", "scanner": "scanner-primary", "fingerprint": "5cc3b7db590da2dc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ff7aa6e218a81484", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/embedding-runtime-manager.ts:181"}, "properties": {"repobilityId": "1287699b29a902bf", "scanner": "scanner-primary", "fingerprint": "ff7aa6e218a81484", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cb2ca6e34063a062", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/compaction-log-store-clickhouse.ts:374"}, "properties": {"repobilityId": "5b6a3fb3898ff307", "scanner": "scanner-primary", "fingerprint": "cb2ca6e34063a062", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7b80c3622884ad2e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/memory-retrospective-fork-boundary.ts:5"}, "properties": {"repobilityId": "c4bd5e153d8b1fec", "scanner": "scanner-primary", "fingerprint": "7b80c3622884ad2e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c3a44fe03eb10ed4", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/anisotropy.ts:5"}, "properties": {"repobilityId": "16156785a06e4ad0", "scanner": "scanner-primary", "fingerprint": "c3a44fe03eb10ed4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-684a09e8c9f4604d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/qdrant-manager.ts:272"}, "properties": {"repobilityId": "bd1f4c4eac8be332", "scanner": "scanner-primary", "fingerprint": "684a09e8c9f4604d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6413d136b1df8b23", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/memory/qdrant-manager.ts:201"}, "properties": {"repobilityId": "3c9ec49bdac87051", "scanner": "scanner-primary", "fingerprint": "6413d136b1df8b23", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-4518949806e1f815", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/conversation-attention-store.ts:155"}, "properties": {"repobilityId": "f52bdb68dcb9ee5d", "scanner": "scanner-primary", "fingerprint": "4518949806e1f815", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d9493ea29f7d4d10", "level": "note", "message": {"text": "Legacy-named symbol `includeFlatLegacy` in assistant/src/memory/delivery-crud.ts:101"}, "properties": {"repobilityId": "8286fb72b9ad6b99", "scanner": "scanner-primary", "fingerprint": "d9493ea29f7d4d10", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e02f81f25786460d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/task-memory-cleanup.ts:12"}, "properties": {"repobilityId": "287b911445f71549", "scanner": "scanner-primary", "fingerprint": "e02f81f25786460d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-75a2e1f8d3faf256", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/conversation-title-service.ts:196"}, "properties": {"repobilityId": "47e17a325db176a1", "scanner": "scanner-primary", "fingerprint": "75a2e1f8d3faf256", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7e6b086d1bfe3f01", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/db-maintenance.ts:60"}, "properties": {"repobilityId": "f82c35d0ec0b06f1", "scanner": "scanner-primary", "fingerprint": "7e6b086d1bfe3f01", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f3b9f25c6032a603", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/sparse-tokenize.ts:8"}, "properties": {"repobilityId": "edd9b293c2105903", "scanner": "scanner-primary", "fingerprint": "f3b9f25c6032a603", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bbf2d17969fe6272", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/jobs-worker.ts:703"}, "properties": {"repobilityId": "a413f338f2705d80", "scanner": "scanner-primary", "fingerprint": "bbf2d17969fe6272", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec0394e1e0362fc5", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/memory-retrospective-state.ts:5"}, "properties": {"repobilityId": "8d0ad101da8fd8ab", "scanner": "scanner-primary", "fingerprint": "ec0394e1e0362fc5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2f6ad8365df233a6", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/conversation-queries.ts:29"}, "properties": {"repobilityId": "dc0d0d85aa205b27", "scanner": "scanner-primary", "fingerprint": "2f6ad8365df233a6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0ae2c064fe438cf8", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/indexer.ts:202"}, "properties": {"repobilityId": "aabf06b8369e93a2", "scanner": "scanner-primary", "fingerprint": "0ae2c064fe438cf8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0f1399995a695c6d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/memory-retrospective-startup-cleanup.ts:5"}, "properties": {"repobilityId": "eeea623197ebc7c3", "scanner": "scanner-primary", "fingerprint": "0f1399995a695c6d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-795eac700f26bcc8", "level": "none", "message": {"text": "Commented-code block (12 lines) in assistant/src/memory/memory-retrospective-job.ts:10"}, "properties": {"repobilityId": "408f8a0d382e4cec", "scanner": "scanner-primary", "fingerprint": "795eac700f26bcc8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b059dd0143d5ae49", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/llm-request-log-source-clickhouse.ts:293"}, "properties": {"repobilityId": "df23fd85d022e21e", "scanner": "scanner-primary", "fingerprint": "b059dd0143d5ae49", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-265d5ca99aeac829", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/jobs-store.ts:536"}, "properties": {"repobilityId": "517a61b0442d568b", "scanner": "scanner-primary", "fingerprint": "265d5ca99aeac829", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1666e95fc14435ca", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/delivery-channels.ts:118"}, "properties": {"repobilityId": "dbb76f8f74e219c9", "scanner": "scanner-primary", "fingerprint": "1666e95fc14435ca", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2e51a9f71e314caa", "level": "none", "message": {"text": "Commented-code block (10 lines) in assistant/src/memory/db-async-query.ts:185"}, "properties": {"repobilityId": "4160391fe63f4b76", "scanner": "scanner-primary", "fingerprint": "2e51a9f71e314caa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d9b64ef81699eb3b", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/memory-retrospective-trigger-check.ts:8"}, "properties": {"repobilityId": "bc77369f60062953", "scanner": "scanner-primary", "fingerprint": "d9b64ef81699eb3b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7b60062912fd7b4b", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/conversation-analyze-job.ts:42"}, "properties": {"repobilityId": "1f3591d445748996", "scanner": "scanner-primary", "fingerprint": "7b60062912fd7b4b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fc642525271cf685", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/memory-retrospective-enqueue.ts:10"}, "properties": {"repobilityId": "1611bc8ed74dea3b", "scanner": "scanner-primary", "fingerprint": "fc642525271cf685", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fda4d07f51433a1c", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/embedding-gemini.ts:66"}, "properties": {"repobilityId": "6168616892620072", "scanner": "scanner-primary", "fingerprint": "fda4d07f51433a1c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bd440c3112a72caf", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/memory/embedding-gemini.ts:84"}, "properties": {"repobilityId": "fb3dbfcbb144d870", "scanner": "scanner-primary", "fingerprint": "bd440c3112a72caf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-03e0b73a3f63f162", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/attachments-store.ts:276"}, "properties": {"repobilityId": "92c9323861f808b8", "scanner": "scanner-primary", "fingerprint": "03e0b73a3f63f162", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-899be4aa32c0f6d6", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/memory/embedding-ollama.ts:42"}, "properties": {"repobilityId": "ad529e0c04e45d82", "scanner": "scanner-primary", "fingerprint": "899be4aa32c0f6d6", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ec471f6f20124b39", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/conversation-group-migration.ts:112"}, "properties": {"repobilityId": "a537ca0d07cef61b", "scanner": "scanner-primary", "fingerprint": "ec471f6f20124b39", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-53daf20595029768", "level": "note", "message": {"text": "Legacy-named symbol `pruneOld` in assistant/src/memory/__tests__/db-async-query.test.ts:77"}, "properties": {"repobilityId": "8e5c00e2929ae6d1", "scanner": "scanner-primary", "fingerprint": "53daf20595029768", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ae7aaedc70d58957", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/__tests__/db-async-query.test.ts:72"}, "properties": {"repobilityId": "f1a38fb7a51a495a", "scanner": "scanner-primary", "fingerprint": "ae7aaedc70d58957", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-377f2651cda8a632", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/__tests__/conversation-group-migration.test.ts:15"}, "properties": {"repobilityId": "ef70b352b94144f6", "scanner": "scanner-primary", "fingerprint": "377f2651cda8a632", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ff71dc87b0bbaea4", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/memory/__tests__/jobs-store-enqueue-gate.test.ts:3"}, "properties": {"repobilityId": "a78f3041d11a2c86", "scanner": "scanner-primary", "fingerprint": "ff71dc87b0bbaea4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-626e2b681ffdfd1b", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/__tests__/memory-retrospective-job.test.ts:38"}, "properties": {"repobilityId": "13f2d45b34a5e33e", "scanner": "scanner-primary", "fingerprint": "626e2b681ffdfd1b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ea8917fcc2d84cb0", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/now-text.ts:5"}, "properties": {"repobilityId": "a4110d46c29ceae1", "scanner": "scanner-primary", "fingerprint": "ea8917fcc2d84cb0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-57fb3d16fad1991a", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/v2/cli-command-store.ts:5"}, "properties": {"repobilityId": "d024a6a3031e0ef1", "scanner": "scanner-primary", "fingerprint": "57fb3d16fad1991a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c0375b7d5935efe5", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/v2/sweep-job.ts:127"}, "properties": {"repobilityId": "1efd12e71ec02519", "scanner": "scanner-primary", "fingerprint": "c0375b7d5935efe5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fbaae99c4dca8b3d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/backfill-jobs.ts:8"}, "properties": {"repobilityId": "62d8b1aa663632d8", "scanner": "scanner-primary", "fingerprint": "fbaae99c4dca8b3d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-429db9ca0ae00355", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/consolidation-job.ts:191"}, "properties": {"repobilityId": "f114baee8defd154", "scanner": "scanner-primary", "fingerprint": "429db9ca0ae00355", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cc4926de212fbe5a", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/memory/v2/frontmatter-sweep.ts:5"}, "properties": {"repobilityId": "13f6689fdc119e4c", "scanner": "scanner-primary", "fingerprint": "cc4926de212fbe5a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f27f68ca55c50460", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/page-index.ts:22"}, "properties": {"repobilityId": "ccd120682ad2c8c5", "scanner": "scanner-primary", "fingerprint": "f27f68ca55c50460", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1847a2f98d94906a", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/skill-store.ts:199"}, "properties": {"repobilityId": "34acc12aaab5db0f", "scanner": "scanner-primary", "fingerprint": "1847a2f98d94906a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1bc6d35124db84f7", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/sparse-bm25.ts:20"}, "properties": {"repobilityId": "dfef77097c7926a6", "scanner": "scanner-primary", "fingerprint": "1bc6d35124db84f7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0761048c8186decf", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/memory/v2/migration.ts:109"}, "properties": {"repobilityId": "7a5950a973d57e30", "scanner": "scanner-primary", "fingerprint": "0761048c8186decf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2d5572686de2bdb4", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/router.ts:347"}, "properties": {"repobilityId": "4449533d9a8400f6", "scanner": "scanner-primary", "fingerprint": "2d5572686de2bdb4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-10945e9bb43deefa", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/types.ts:44"}, "properties": {"repobilityId": "5cb393f3a920a9b6", "scanner": "scanner-primary", "fingerprint": "10945e9bb43deefa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-300dc040e6a8a293", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/static-context.ts:9"}, "properties": {"repobilityId": "b3854cfebff1cb01", "scanner": "scanner-primary", "fingerprint": "300dc040e6a8a293", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4d940a7a1dd3d8a1", "level": "none", "message": {"text": "Commented-code block (13 lines) in assistant/src/memory/v2/injection.ts:8"}, "properties": {"repobilityId": "accf3d2b88a72fd8", "scanner": "scanner-primary", "fingerprint": "4d940a7a1dd3d8a1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-20e6fbaa03fd50fa", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/sim.ts:5"}, "properties": {"repobilityId": "0b89a68687944afc", "scanner": "scanner-primary", "fingerprint": "20e6fbaa03fd50fa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-82ac2ca42f90407f", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/activation.ts:8"}, "properties": {"repobilityId": "00940bb2583be8f9", "scanner": "scanner-primary", "fingerprint": "82ac2ca42f90407f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ddc45bc6b1acdfbc", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/qdrant.ts:10"}, "properties": {"repobilityId": "7f878e8b91697cae", "scanner": "scanner-primary", "fingerprint": "ddc45bc6b1acdfbc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-147732fadaad1091", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/sim.test.ts:31"}, "properties": {"repobilityId": "6726f1d07cddc0fb", "scanner": "scanner-primary", "fingerprint": "147732fadaad1091", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-26a6c7c92334ef8b", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/activation.test.ts:179"}, "properties": {"repobilityId": "c6bd967c84cd6c32", "scanner": "scanner-primary", "fingerprint": "26a6c7c92334ef8b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7482a54dbd8d8e1f", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/skill-store.test.ts:737"}, "properties": {"repobilityId": "bf859ac1f265b99e", "scanner": "scanner-primary", "fingerprint": "7482a54dbd8d8e1f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5da8686d6be16778", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/memory/v2/__tests__/page-index.test.ts:451"}, "properties": {"repobilityId": "fbf4b39cf5cc1b78", "scanner": "scanner-primary", "fingerprint": "5da8686d6be16778", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d52c5f19668720d0", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/v2/__tests__/router.test.ts:37"}, "properties": {"repobilityId": "02e8e471d02b8981", "scanner": "scanner-primary", "fingerprint": "d52c5f19668720d0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ca9c60cd0acabc7", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/v2/__tests__/injection.test.ts:134"}, "properties": {"repobilityId": "0d7d63672e0fc5b6", "scanner": "scanner-primary", "fingerprint": "9ca9c60cd0acabc7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac1674425a52d562", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/qdrant.test.ts:381"}, "properties": {"repobilityId": "e24407372329862d", "scanner": "scanner-primary", "fingerprint": "ac1674425a52d562", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa2e3b4bacd53f99", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/v2/__tests__/page-store.test.ts:390"}, "properties": {"repobilityId": "d4a54acee4d15528", "scanner": "scanner-primary", "fingerprint": "aa2e3b4bacd53f99", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-16a0c2c032cf3789", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/sweep-job.test.ts:446"}, "properties": {"repobilityId": "85860d6acfbaecbf", "scanner": "scanner-primary", "fingerprint": "16a0c2c032cf3789", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c10d609f178a5f63", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/backfill-jobs.test.ts:221"}, "properties": {"repobilityId": "ea728e9405328d0a", "scanner": "scanner-primary", "fingerprint": "c10d609f178a5f63", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9fb08214493b1eee", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_v2_injection_events_v1` in assistant/src/memory/v2/__tests__/injection-events.test.ts:182"}, "properties": {"repobilityId": "05b1549b2e63be86", "scanner": "scanner-primary", "fingerprint": "9fb08214493b1eee", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5484ab696f67a609", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/__tests__/consolidation-job.test.ts:45"}, "properties": {"repobilityId": "9ce49acd4f134e54", "scanner": "scanner-primary", "fingerprint": "5484ab696f67a609", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-244521942c4bbccd", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/v2/prompts/router.ts:120"}, "properties": {"repobilityId": "36c8bdd170b1c871", "scanner": "scanner-primary", "fingerprint": "244521942c4bbccd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e779b049baf9cab", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/memory/v2/harness/replay-input.ts:177"}, "properties": {"repobilityId": "6994dbc5eee9a232", "scanner": "scanner-primary", "fingerprint": "4e779b049baf9cab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf16b52bc99d27f2", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/context-search/agent-runner.ts:295"}, "properties": {"repobilityId": "443e0c97a276d556", "scanner": "scanner-primary", "fingerprint": "bf16b52bc99d27f2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3d52f126682d3ee4", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/memory/context-search/sources/memory-v2.ts:9"}, "properties": {"repobilityId": "491637d9544b9b65", "scanner": "scanner-primary", "fingerprint": "3d52f126682d3ee4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-091bdf8df419c6c2", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/pkb/pkb-search.ts:119"}, "properties": {"repobilityId": "9c29412af85316f3", "scanner": "scanner-primary", "fingerprint": "091bdf8df419c6c2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d9df2ede9b8316c7", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/pkb/pkb-reconcile.ts:46"}, "properties": {"repobilityId": "16ce5ec6f1334b3b", "scanner": "scanner-primary", "fingerprint": "d9df2ede9b8316c7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4bd45a7f76f2953b", "level": "note", "message": {"text": "Legacy-named symbol `migration_conversation_cleaned_at_v1` in assistant/src/memory/migrations/259-conversation-cleaned-at.ts:5"}, "properties": {"repobilityId": "c137cb3995ba4327", "scanner": "scanner-primary", "fingerprint": "4bd45a7f76f2953b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d0bc47d323916a89", "level": "note", "message": {"text": "Legacy-named symbol `migration_notification_tables_schema_v1` in assistant/src/memory/migrations/019-notification-tables-schema-migration.ts:20"}, "properties": {"repobilityId": "1fbee526fd362b9f", "scanner": "scanner-primary", "fingerprint": "d0bc47d323916a89", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-edee98f0587cdce0", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_items_scope_salted_fingerprints_v1` in assistant/src/memory/migrations/006-scope-salted-fingerprints.ts:20"}, "properties": {"repobilityId": "e4c9b79e7219628e", "scanner": "scanner-primary", "fingerprint": "edee98f0587cdce0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-30bd1a5b376055d6", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/migrations/119-schema-indexes-and-columns.ts:27"}, "properties": {"repobilityId": "b7885b60c0fb0350", "scanner": "scanner-primary", "fingerprint": "30bd1a5b376055d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-45c36403c581a509", "level": "note", "message": {"text": "Legacy-named symbol `migration_rename_guardian_verification_values_v1` in assistant/src/memory/migrations/143-rename-guardian-verification-values.ts:53"}, "properties": {"repobilityId": "9ff856cd355071f0", "scanner": "scanner-primary", "fingerprint": "45c36403c581a509", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8f762bb6bf52955c", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_entity_relations_dedup_v1` in assistant/src/memory/migrations/registry.ts:95"}, "properties": {"repobilityId": "64a1a50280795510", "scanner": "scanner-primary", "fingerprint": "8f762bb6bf52955c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-57a4c9e7ec0720cb", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/registry.ts:75"}, "properties": {"repobilityId": "c962f3236d32d09c", "scanner": "scanner-primary", "fingerprint": "57a4c9e7ec0720cb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9795a376e34d772c", "level": "note", "message": {"text": "Legacy-named symbol `migration_trace_events_created_at_index_v1` in assistant/src/memory/migrations/239-trace-events-created-at-index.ts:5"}, "properties": {"repobilityId": "c089f2ccabc60ab6", "scanner": "scanner-primary", "fingerprint": "9795a376e34d772c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a8d0764a6904714b", "level": "note", "message": {"text": "Legacy-named symbol `migration_slack_compaction_watermark_v1` in assistant/src/memory/migrations/235-slack-compaction-watermark.ts:5"}, "properties": {"repobilityId": "6dc6067649e0a49d", "scanner": "scanner-primary", "fingerprint": "a8d0764a6904714b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4ebcbc42cc8f0907", "level": "note", "message": {"text": "Legacy-named symbol `migration_create_memory_recall_logs_v1` in assistant/src/memory/migrations/194-memory-recall-logs.ts:5"}, "properties": {"repobilityId": "045da18bb98d1a6c", "scanner": "scanner-primary", "fingerprint": "4ebcbc42cc8f0907", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-be4d82903faf796a", "level": "note", "message": {"text": "Legacy-named symbol `migration_heartbeat_runs_v1` in assistant/src/memory/migrations/237-heartbeat-runs.ts:6"}, "properties": {"repobilityId": "bc021075e0922148", "scanner": "scanner-primary", "fingerprint": "be4d82903faf796a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-76c346d02731270f", "level": "note", "message": {"text": "Legacy-named symbol `migration_message_bookmarks_v1` in assistant/src/memory/migrations/242-message-bookmarks.ts:5"}, "properties": {"repobilityId": "95557f7b614a72e4", "scanner": "scanner-primary", "fingerprint": "76c346d02731270f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7f219eee54e52077", "level": "note", "message": {"text": "Legacy-named symbol `migration_guardian_request_enrichment_columns_v1` in assistant/src/memory/migrations/199-guardian-request-enrichment-columns.ts:22"}, "properties": {"repobilityId": "ac0b23ebcd979e69", "scanner": "scanner-primary", "fingerprint": "7f219eee54e52077", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-49f6bd96ad077495", "level": "note", "message": {"text": "Legacy-named symbol `migration_acp_session_history_cwd_v1` in assistant/src/memory/migrations/272-acp-session-history-cwd.ts:5"}, "properties": {"repobilityId": "77d5a03dbffa4045", "scanner": "scanner-primary", "fingerprint": "49f6bd96ad077495", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f79ff2b35a22e14a", "level": "note", "message": {"text": "Legacy-named symbol `migration_normalize_slack_external_content_v1` in assistant/src/memory/migrations/249-normalize-slack-external-content.ts:12"}, "properties": {"repobilityId": "0ec71c4bf52423b6", "scanner": "scanner-primary", "fingerprint": "f79ff2b35a22e14a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-241369a82fbf7869", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/249-normalize-slack-external-content.ts:199"}, "properties": {"repobilityId": "a99fa2bcf5dab058", "scanner": "scanner-primary", "fingerprint": "241369a82fbf7869", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5ba12416af5f7444", "level": "note", "message": {"text": "Legacy-named symbol `migration_repair_memory_graph_event_dates_v1` in assistant/src/memory/migrations/231-repair-memory-graph-event-dates.ts:5"}, "properties": {"repobilityId": "e4d4df1a02d2158c", "scanner": "scanner-primary", "fingerprint": "5ba12416af5f7444", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0bc2da89be9b3154", "level": "note", "message": {"text": "Legacy-named symbol `migration_embeddings_nullable_vector_json_v1` in assistant/src/memory/migrations/026a-embeddings-nullable-vector-json.ts:15"}, "properties": {"repobilityId": "167ef27e0ac609e8", "scanner": "scanner-primary", "fingerprint": "0bc2da89be9b3154", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e31011003f1be7e5", "level": "note", "message": {"text": "Legacy-named symbol `migration_normalize_user_file_by_principal_v1` in assistant/src/memory/migrations/220-normalize-user-file-by-principal.ts:90"}, "properties": {"repobilityId": "f5edbc7f00a6a0db", "scanner": "scanner-primary", "fingerprint": "e31011003f1be7e5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d18750a8fb4ea6b2", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_items_fingerprint_scope_unique_v1` in assistant/src/memory/migrations/005-fingerprint-scope-unique.ts:12"}, "properties": {"repobilityId": "b4770d1a557d9d5b", "scanner": "scanner-primary", "fingerprint": "d18750a8fb4ea6b2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cc71010438a85eec", "level": "note", "message": {"text": "Legacy-named symbol `migration_remove_assistant_id_lue_v1` in assistant/src/memory/migrations/009-llm-usage-events-drop-assistant-id.ts:17"}, "properties": {"repobilityId": "90572e7febd6d795", "scanner": "scanner-primary", "fingerprint": "cc71010438a85eec", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ee8888f84055ef9e", "level": "note", "message": {"text": "Legacy-named symbol `migration_rename_memory_graph_type_values_v1` in assistant/src/memory/migrations/204-rename-memory-graph-type-values.ts:15"}, "properties": {"repobilityId": "d3b0b305a73f4c2d", "scanner": "scanner-primary", "fingerprint": "ee8888f84055ef9e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3462ea111977c693", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_v2_injection_events_v1` in assistant/src/memory/migrations/256-memory-v2-injection-events.ts:6"}, "properties": {"repobilityId": "8a30feb60f3d9883", "scanner": "scanner-primary", "fingerprint": "3462ea111977c693", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-11ee29c477663608", "level": "note", "message": {"text": "Legacy-named symbol `migration_channel_inbound_delivery_attempts_v1` in assistant/src/memory/migrations/255-channel-inbound-delivery-attempts.ts:6"}, "properties": {"repobilityId": "80589772d0e45425", "scanner": "scanner-primary", "fingerprint": "11ee29c477663608", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c0ace7f90a07363f", "level": "note", "message": {"text": "Legacy-named symbol `migration_rename_gmail_provider_key_to_google_v1` in assistant/src/memory/migrations/169-rename-gmail-provider-key-to-google.ts:23"}, "properties": {"repobilityId": "7f4c0c3a7677675c", "scanner": "scanner-primary", "fingerprint": "c0ace7f90a07363f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0a39eacb57678bb1", "level": "note", "message": {"text": "Legacy-named symbol `migration_normalize_assistant_id_to_self_v1` in assistant/src/memory/migrations/007-assistant-id-to-self.ts:32"}, "properties": {"repobilityId": "ccaba8aabd6185f4", "scanner": "scanner-primary", "fingerprint": "0a39eacb57678bb1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b218cb77ed4a2ff8", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/007-assistant-id-to-self.ts:38"}, "properties": {"repobilityId": "3a15f05b5c72a85e", "scanner": "scanner-primary", "fingerprint": "b218cb77ed4a2ff8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9251d6cd7bab274f", "level": "note", "message": {"text": "Legacy-named symbol `migration_rename_cleaned_at_v1` in assistant/src/memory/migrations/260-rename-cleaned-at.ts:5"}, "properties": {"repobilityId": "888bab85f1ea7cbe", "scanner": "scanner-primary", "fingerprint": "9251d6cd7bab274f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c8b50a5cc1836155", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/validate-migration-state.ts:222"}, "properties": {"repobilityId": "70b8117810f2381e", "scanner": "scanner-primary", "fingerprint": "c8b50a5cc1836155", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d90011f2f6d221a2", "level": "note", "message": {"text": "Legacy-named symbol `migration_create_trace_events_table_v1` in assistant/src/memory/migrations/177-create-trace-events-table.ts:5"}, "properties": {"repobilityId": "d35eeb63280952f7", "scanner": "scanner-primary", "fingerprint": "d90011f2f6d221a2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-63547140fa3e7ec2", "level": "note", "message": {"text": "Legacy-named symbol `migration_llm_request_logs_created_at_index_v1` in assistant/src/memory/migrations/212-llm-request-logs-created-at-index.ts:5"}, "properties": {"repobilityId": "406cd31831ee8902", "scanner": "scanner-primary", "fingerprint": "63547140fa3e7ec2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-42b0dc259bbffd2c", "level": "note", "message": {"text": "Legacy-named symbol `migration_acp_session_history_v1` in assistant/src/memory/migrations/230-acp-session-history.ts:5"}, "properties": {"repobilityId": "b706bf671161c458", "scanner": "scanner-primary", "fingerprint": "42b0dc259bbffd2c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a1676f8c502c5b8b", "level": "note", "message": {"text": "Legacy-named symbol `migration_contacts_notes_column_v1` in assistant/src/memory/migrations/134-contacts-notes-column.ts:21"}, "properties": {"repobilityId": "3bd5b4fe2f2d7c12", "scanner": "scanner-primary", "fingerprint": "a1676f8c502c5b8b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9b0eb9e2328f4891", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/migrations/105-contacts-and-triage.ts:7"}, "properties": {"repobilityId": "958ecab49fa8a262", "scanner": "scanner-primary", "fingerprint": "9b0eb9e2328f4891", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-36458e31fd802b30", "level": "note", "message": {"text": "Legacy-named symbol `migration_schedule_description_backfill_v1` in assistant/src/memory/migrations/270-schedule-description.ts:4"}, "properties": {"repobilityId": "077b24e4fdf32f43", "scanner": "scanner-primary", "fingerprint": "36458e31fd802b30", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7cf538a569ec53fb", "level": "note", "message": {"text": "Legacy-named symbol `migration_strip_thinking_from_consolidated_v1` in assistant/src/memory/migrations/209-strip-thinking-from-consolidated.ts:22"}, "properties": {"repobilityId": "5c562425c82c9474", "scanner": "scanner-primary", "fingerprint": "7cf538a569ec53fb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-85b461a2d441f3ca", "level": "note", "message": {"text": "Legacy-named symbol `migration_strip_placeholder_sentinels_from_messages_v1` in assistant/src/memory/migrations/222-strip-placeholder-sentinels-from-messages.ts:30"}, "properties": {"repobilityId": "e6fcc005d18ecad0", "scanner": "scanner-primary", "fingerprint": "85b461a2d441f3ca", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-63ed951488fb0d25", "level": "note", "message": {"text": "Legacy-named symbol `migration_drop_reminders_table_v1` in assistant/src/memory/migrations/148-drop-reminders-table.ts:10"}, "properties": {"repobilityId": "4b8bd83eb5c674b7", "scanner": "scanner-primary", "fingerprint": "63ed951488fb0d25", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5cdd61917a344d67", "level": "note", "message": {"text": "Legacy-named symbol `migration_rename_verification_table_v1` in assistant/src/memory/migrations/141-rename-verification-table.ts:64"}, "properties": {"repobilityId": "e5c13cfabf2b40dc", "scanner": "scanner-primary", "fingerprint": "5cdd61917a344d67", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d98670da13c07555", "level": "note", "message": {"text": "Legacy-named symbol `migration_rename_verification_session_id_column_v1` in assistant/src/memory/migrations/142-rename-verification-session-id-column.ts:39"}, "properties": {"repobilityId": "4468f5bb561d16e8", "scanner": "scanner-primary", "fingerprint": "d98670da13c07555", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8bf5e42e80edabd4", "level": "note", "message": {"text": "Legacy-named symbol `migration_oauth_apps_client_secret_path_v1` in assistant/src/memory/migrations/150-oauth-apps-client-secret-path.ts:20"}, "properties": {"repobilityId": "f7b2b73c9e9b107c", "scanner": "scanner-primary", "fingerprint": "8bf5e42e80edabd4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7d0b20d5e9e86549", "level": "note", "message": {"text": "Legacy-named symbol `migration_activation_state_v1` in assistant/src/memory/migrations/232-activation-state.ts:5"}, "properties": {"repobilityId": "e0611b9b1a622aad", "scanner": "scanner-primary", "fingerprint": "7d0b20d5e9e86549", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-59a6fb8b8a53574d", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_recall_logs_query_context_v1` in assistant/src/memory/migrations/211-memory-recall-logs-query-context.ts:6"}, "properties": {"repobilityId": "f723368d18271a58", "scanner": "scanner-primary", "fingerprint": "59a6fb8b8a53574d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e0a64de2ec14519e", "level": "note", "message": {"text": "Legacy-named symbol `migration_rename_thread_starters_table_v1` in assistant/src/memory/migrations/174-rename-thread-starters-table.ts:13"}, "properties": {"repobilityId": "dcab05b30cf2eec7", "scanner": "scanner-primary", "fingerprint": "e0a64de2ec14519e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2e8210f0abecd7ac", "level": "note", "message": {"text": "Legacy-named symbol `migration_conversation_host_access_v1` in assistant/src/memory/migrations/217-conversation-host-access.ts:5"}, "properties": {"repobilityId": "fa1244245a4e0028", "scanner": "scanner-primary", "fingerprint": "2e8210f0abecd7ac", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cd6150ac44111eb4", "level": "note", "message": {"text": "Legacy-named symbol `migration_external_conversation_binding_chat_name_v1` in assistant/src/memory/migrations/254-external-conversation-binding-chat-name.ts:5"}, "properties": {"repobilityId": "27e96152d2879f90", "scanner": "scanner-primary", "fingerprint": "cd6150ac44111eb4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b1788512f5f6c851", "level": "note", "message": {"text": "Legacy-named symbol `migration_add_source_type_columns_v1` in assistant/src/memory/migrations/193-add-source-type-columns.ts:19"}, "properties": {"repobilityId": "67eb6ae780b9ad15", "scanner": "scanner-primary", "fingerprint": "b1788512f5f6c851", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-01c8bdae858f3b68", "level": "note", "message": {"text": "Legacy-named symbol `migration_drop_accounts_table_v1` in assistant/src/memory/migrations/145-drop-accounts-table.ts:12"}, "properties": {"repobilityId": "410f8781030ed583", "scanner": "scanner-primary", "fingerprint": "01c8bdae858f3b68", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3886c86e039887fe", "level": "note", "message": {"text": "Legacy-named symbol `migration_reminders_to_schedules_v1` in assistant/src/memory/migrations/147-migrate-reminders-to-schedules.ts:34"}, "properties": {"repobilityId": "c071a22956063b44", "scanner": "scanner-primary", "fingerprint": "3886c86e039887fe", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-686b40c1dc33b450", "level": "note", "message": {"text": "Legacy-named symbol `migration_backfill_inline_attachments_v1` in assistant/src/memory/migrations/180-backfill-inline-attachments-to-disk.ts:21"}, "properties": {"repobilityId": "ee3ba0f07a5250d8", "scanner": "scanner-primary", "fingerprint": "686b40c1dc33b450", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5192493dbfb72278", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_retrospective_state_v1` in assistant/src/memory/migrations/245-memory-retrospective-state.ts:5"}, "properties": {"repobilityId": "3357fa89b13baf4c", "scanner": "scanner-primary", "fingerprint": "5192493dbfb72278", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-aae8b9adea249987", "level": "note", "message": {"text": "Legacy-named symbol `migration_normalize_phone_identities_v1` in assistant/src/memory/migrations/036-normalize-phone-identities.ts:30"}, "properties": {"repobilityId": "61cdae0c700cfdc4", "scanner": "scanner-primary", "fingerprint": "aae8b9adea249987", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9744fd024a67939e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/036-normalize-phone-identities.ts:150"}, "properties": {"repobilityId": "214e87f62acfc56f", "scanner": "scanner-primary", "fingerprint": "9744fd024a67939e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2e673b6d2f71fb68", "level": "note", "message": {"text": "Legacy-named symbol `migration_contacts_user_file_column_v1` in assistant/src/memory/migrations/192-contacts-user-file-column.ts:6"}, "properties": {"repobilityId": "c6b08cb981a548a3", "scanner": "scanner-primary", "fingerprint": "2e673b6d2f71fb68", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4da9ea809440e351", "level": "note", "message": {"text": "Legacy-named symbol `migration_rename_macos_ios_channel_to_vellum_v1` in assistant/src/memory/migrations/020-rename-macos-ios-channel-to-vellum.ts:11"}, "properties": {"repobilityId": "165f265e1be04cd1", "scanner": "scanner-primary", "fingerprint": "4da9ea809440e351", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b516b59eba1760cc", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/104-core-indexes.ts:97"}, "properties": {"repobilityId": "d911a21053707ca0", "scanner": "scanner-primary", "fingerprint": "b516b59eba1760cc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-057299df3c36381d", "level": "note", "message": {"text": "Legacy-named symbol `migration_rename_thread_starters_table_v1` in assistant/src/memory/migrations/181-rename-thread-starters-checkpoints.ts:13"}, "properties": {"repobilityId": "7d8d466fdf7d8c5f", "scanner": "scanner-primary", "fingerprint": "057299df3c36381d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-24de1ebd5131b312", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_retrospective_remembered_log_v1` in assistant/src/memory/migrations/281-memory-retrospective-remembered-log.ts:5"}, "properties": {"repobilityId": "72243bbde150eb35", "scanner": "scanner-primary", "fingerprint": "24de1ebd5131b312", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cddfe7572f4ff1df", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_entity_relations_dedup_v1` in assistant/src/memory/migrations/004-entity-relation-dedup.ts:9"}, "properties": {"repobilityId": "6e3ce8ddfcd0aeab", "scanner": "scanner-primary", "fingerprint": "cddfe7572f4ff1df", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d43af17bae10df15", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/migrations/004-entity-relation-dedup.ts:15"}, "properties": {"repobilityId": "aad5afe7d0406b84", "scanner": "scanner-primary", "fingerprint": "d43af17bae10df15", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-33b0318107a735eb", "level": "note", "message": {"text": "Legacy-named symbol `migration_strip_integration_prefix_from_provider_keys_v1` in assistant/src/memory/migrations/196-strip-integration-prefix-from-provider-keys.ts:28"}, "properties": {"repobilityId": "091784f6fd053162", "scanner": "scanner-primary", "fingerprint": "33b0318107a735eb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1c16f687ff80ccbf", "level": "note", "message": {"text": "Legacy-named symbol `migration_remove_assistant_id_columns_v1` in assistant/src/memory/migrations/008-remove-assistant-id-columns.ts:23"}, "properties": {"repobilityId": "4dfba158e499c473", "scanner": "scanner-primary", "fingerprint": "1c16f687ff80ccbf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0b5d5324e6d22c7a", "level": "note", "message": {"text": "Legacy-named symbol `migration_invite_contact_id_v1` in assistant/src/memory/migrations/157-invite-contact-id.ts:16"}, "properties": {"repobilityId": "c3255b4d61325ce0", "scanner": "scanner-primary", "fingerprint": "0b5d5324e6d22c7a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ace1ccd41572c410", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/migrations/126-backfill-guardian-principal-id.ts:250"}, "properties": {"repobilityId": "1e23eac3ef418481", "scanner": "scanner-primary", "fingerprint": "ace1ccd41572c410", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-27cd51395b4301c5", "level": "note", "message": {"text": "Legacy-named symbol `migration_a2a_tasks_v1` in assistant/src/memory/migrations/251-a2a-tasks.ts:6"}, "properties": {"repobilityId": "5f6ba361b863c22d", "scanner": "scanner-primary", "fingerprint": "27cd51395b4301c5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-05cce61f0a0cc466", "level": "note", "message": {"text": "Legacy-named symbol `migration_guardian_timestamps_epoch_ms_v1` in assistant/src/memory/migrations/162-guardian-timestamps-epoch-ms.ts:23"}, "properties": {"repobilityId": "4dbfc584c837f6ca", "scanner": "scanner-primary", "fingerprint": "05cce61f0a0cc466", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-279995ac2fc12a81", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_v2_activation_logs_v1` in assistant/src/memory/migrations/234-memory-v2-activation-logs.ts:5"}, "properties": {"repobilityId": "ceb2bddc72037cd3", "scanner": "scanner-primary", "fingerprint": "279995ac2fc12a81", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2db7b5e0955cfbcb", "level": "note", "message": {"text": "Legacy-named symbol `migration_backfill_audio_attachment_mime_types_v1` in assistant/src/memory/migrations/191-backfill-audio-attachment-mime-types.ts:28"}, "properties": {"repobilityId": "ecfdd1cae1895be5", "scanner": "scanner-primary", "fingerprint": "2db7b5e0955cfbcb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3be4e6c38fa61bef", "level": "note", "message": {"text": "Legacy-named symbol `migration_drop_capability_card_state_v1` in assistant/src/memory/migrations/176-drop-capability-card-state.ts:5"}, "properties": {"repobilityId": "63026d17244b4365", "scanner": "scanner-primary", "fingerprint": "3be4e6c38fa61bef", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-99a7f4ac94534cd6", "level": "note", "message": {"text": "Legacy-named symbol `migration_tool_invocations_matched_trust_rule_id_v1` in assistant/src/memory/migrations/236-tool-invocations-matched-rule-id.ts:5"}, "properties": {"repobilityId": "4f96d9bdb68f8a44", "scanner": "scanner-primary", "fingerprint": "99a7f4ac94534cd6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-01d4261c5cf9f742", "level": "note", "message": {"text": "Legacy-named symbol `migration_drop_assistant_id_columns_v1` in assistant/src/memory/migrations/136-drop-assistant-id-columns.ts:71"}, "properties": {"repobilityId": "6e185039822ef52c", "scanner": "scanner-primary", "fingerprint": "01d4261c5cf9f742", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d95638a863585f1f", "level": "note", "message": {"text": "Legacy-named symbol `migration_document_conversations_v1` in assistant/src/memory/migrations/233-document-conversations.ts:5"}, "properties": {"repobilityId": "26684d7faa47f02e", "scanner": "scanner-primary", "fingerprint": "d95638a863585f1f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-baeb824b0d759cc5", "level": "note", "message": {"text": "Legacy-named symbol `migration_backfill_usage_cache_accounting_v1` in assistant/src/memory/migrations/140-backfill-usage-cache-accounting.ts:26"}, "properties": {"repobilityId": "ec10ec6bb65351b0", "scanner": "scanner-primary", "fingerprint": "baeb824b0d759cc5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4eec436ff229167b", "level": "note", "message": {"text": "Legacy-named symbol `migration_rename_voice_to_phone_v1` in assistant/src/memory/migrations/144-rename-voice-to-phone.ts:148"}, "properties": {"repobilityId": "fad92ac0277c7db0", "scanner": "scanner-primary", "fingerprint": "4eec436ff229167b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-65f22e389356034b", "level": "note", "message": {"text": "Legacy-named symbol `migration_embedding_vector_blob_v1` in assistant/src/memory/migrations/024-embedding-vector-blob.ts:15"}, "properties": {"repobilityId": "b8e1031f57aeccff", "scanner": "scanner-primary", "fingerprint": "65f22e389356034b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4df710029b0a9544", "level": "note", "message": {"text": "Legacy-named symbol `migration_guardian_principal_id_not_null_v1` in assistant/src/memory/migrations/127-guardian-principal-id-not-null.ts:99"}, "properties": {"repobilityId": "2c8bf315c7394d79", "scanner": "scanner-primary", "fingerprint": "4df710029b0a9544", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e42e20716b6b6354", "level": "note", "message": {"text": "Legacy-named symbol `migration_llm_usage_add_raw_usage_v1` in assistant/src/memory/migrations/261-llm-usage-add-raw-usage.ts:5"}, "properties": {"repobilityId": "2249d6bfc7ee0b32", "scanner": "scanner-primary", "fingerprint": "e42e20716b6b6354", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-da948f042477f0db", "level": "note", "message": {"text": "Legacy-named symbol `migration_scrub_corrupted_image_attachments_v1` in assistant/src/memory/migrations/206-scrub-corrupted-image-attachments.ts:29"}, "properties": {"repobilityId": "6a6b61faf9f54826", "scanner": "scanner-primary", "fingerprint": "da948f042477f0db", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bbf3e4de7af762fa", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_v3_auto_edges_v1` in assistant/src/memory/migrations/263-memory-v3-auto-edges.ts:5"}, "properties": {"repobilityId": "10045e85ba427378", "scanner": "scanner-primary", "fingerprint": "bbf3e4de7af762fa", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-82904dc75463bf72", "level": "note", "message": {"text": "Legacy-named symbol `migration_memory_v3_coactivation_v1` in assistant/src/memory/migrations/262-memory-v3-coactivation.ts:5"}, "properties": {"repobilityId": "ecaef3d65ead4ace", "scanner": "scanner-primary", "fingerprint": "82904dc75463bf72", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-fab086d14eddd413", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/jobs/embed-concept-page.ts:11"}, "properties": {"repobilityId": "821d5282f3a35481", "scanner": "scanner-primary", "fingerprint": "fab086d14eddd413", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1512581dc69f822c", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/job-handlers/cleanup.ts:45"}, "properties": {"repobilityId": "fc68d53a54b4b95b", "scanner": "scanner-primary", "fingerprint": "1512581dc69f822c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-706a937835467dde", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/graph/decay.ts:4"}, "properties": {"repobilityId": "73b894666e639507", "scanner": "scanner-primary", "fingerprint": "706a937835467dde", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3a65112a5a5f7d52", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/graph/capability-seed.ts:118"}, "properties": {"repobilityId": "48b397ea9a1e93bb", "scanner": "scanner-primary", "fingerprint": "3a65112a5a5f7d52", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dcacf81b6ff9dc5f", "level": "note", "message": {"text": "Legacy-named symbol `memory_graph_nodes_backup` in assistant/src/memory/graph/bootstrap.test.ts:129"}, "properties": {"repobilityId": "63abca084b7fe2b0", "scanner": "scanner-primary", "fingerprint": "dcacf81b6ff9dc5f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0c47e078736cffb5", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/graph/retriever.ts:422"}, "properties": {"repobilityId": "15fb19117d3cd06f", "scanner": "scanner-primary", "fingerprint": "0c47e078736cffb5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-27583e3dd332c840", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/graph/retriever.test.ts:4"}, "properties": {"repobilityId": "ec930475aadba1f9", "scanner": "scanner-primary", "fingerprint": "27583e3dd332c840", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-db57270185eddaff", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/graph/extraction.ts:723"}, "properties": {"repobilityId": "468148af1f414f28", "scanner": "scanner-primary", "fingerprint": "db57270185eddaff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1939e1c2e5605899", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/memory/graph/injection.ts:190"}, "properties": {"repobilityId": "daa03262fb52df9d", "scanner": "scanner-primary", "fingerprint": "1939e1c2e5605899", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2dfd99ab2ed1976e", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/memory/graph/conversation-graph-memory.ts:712"}, "properties": {"repobilityId": "1312d88b54f6ded8", "scanner": "scanner-primary", "fingerprint": "2dfd99ab2ed1976e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-04f1f4ae464b3ff7", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/memory/graph/__tests__/conversation-graph-memory-v2-routing.test.ts:185"}, "properties": {"repobilityId": "43169a656f027053", "scanner": "scanner-primary", "fingerprint": "04f1f4ae464b3ff7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-47af3276c9bc4337", "level": "note", "message": {"text": "Legacy-named symbol `local_v1` in assistant/src/runtime/local-actor-identity.ts:41"}, "properties": {"repobilityId": "6a3139aa8e038914", "scanner": "scanner-primary", "fingerprint": "47af3276c9bc4337", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d216d1a6207e6a9f", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/channel-verification-service.ts:228"}, "properties": {"repobilityId": "79e178d7e2b9cb20", "scanner": "scanner-primary", "fingerprint": "d216d1a6207e6a9f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac01babc0700e0ec", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/assistant-stream-state.ts:230"}, "properties": {"repobilityId": "f33a3db16fba3daa", "scanner": "scanner-primary", "fingerprint": "ac01babc0700e0ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d520fd65362250df", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/runtime/pending-interactions.ts:216"}, "properties": {"repobilityId": "3708f1712705698b", "scanner": "scanner-primary", "fingerprint": "d520fd65362250df", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-70c45bfad5e0ca9c", "level": "none", "message": {"text": "Commented-code block (10 lines) in assistant/src/runtime/slack-block-formatting.ts:95"}, "properties": {"repobilityId": "3085da2084952d14", "scanner": "scanner-primary", "fingerprint": "70c45bfad5e0ca9c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-60af800c6d6e1a73", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/runtime/actor-trust-resolver.ts:208"}, "properties": {"repobilityId": "63b3700c9f08e262", "scanner": "scanner-primary", "fingerprint": "60af800c6d6e1a73", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0ac6881aa08e9c28", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/background-job-runner.ts:191"}, "properties": {"repobilityId": "76bed59cf6c3d2c2", "scanner": "scanner-primary", "fingerprint": "0ac6881aa08e9c28", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bb7aa80079369aae", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/verification-outbound-actions.ts:545"}, "properties": {"repobilityId": "29e1237d9d6d6abf", "scanner": "scanner-primary", "fingerprint": "bb7aa80079369aae", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3da4b19c1cb1630d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/http-server.ts:535"}, "properties": {"repobilityId": "14c05340eb7dc8c5", "scanner": "scanner-primary", "fingerprint": "3da4b19c1cb1630d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-16050d48df6e4215", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/agent-wake.ts:306"}, "properties": {"repobilityId": "a1e51902ac62cff2", "scanner": "scanner-primary", "fingerprint": "16050d48df6e4215", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-61732797725bdba3", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/runtime/access-request-helper.ts:204"}, "properties": {"repobilityId": "4a2350a34c24dae0", "scanner": "scanner-primary", "fingerprint": "61732797725bdba3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-30b67864351e577b", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/guardian-reply-router.ts:304"}, "properties": {"repobilityId": "c913beba1325a3af", "scanner": "scanner-primary", "fingerprint": "30b67864351e577b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7c364e0d2ee4e8ff", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/channel-retry-sweep.ts:164"}, "properties": {"repobilityId": "bf624f93c07fe7e7", "scanner": "scanner-primary", "fingerprint": "7c364e0d2ee4e8ff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-646ab2b23ef54f20", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/runtime/channel-reply-delivery.ts:313"}, "properties": {"repobilityId": "fbb99aa7214880ac", "scanner": "scanner-primary", "fingerprint": "646ab2b23ef54f20", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-183c93b099f63b97", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/runtime/assistant-event-hub.ts:613"}, "properties": {"repobilityId": "5e0d085c7cf1802a", "scanner": "scanner-primary", "fingerprint": "183c93b099f63b97", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2b406e80485f3143", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/runtime/__tests__/slack-block-formatting.test.ts:258"}, "properties": {"repobilityId": "b35ed20aec80f54f", "scanner": "scanner-primary", "fingerprint": "2b406e80485f3143", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9c28457792ccdf35", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/runtime/__tests__/agent-wake.test.ts:111"}, "properties": {"repobilityId": "4b158a5c61842e32", "scanner": "scanner-primary", "fingerprint": "9c28457792ccdf35", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2c5f91308809d485", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/runtime/sync/resource-sync-events.ts:131"}, "properties": {"repobilityId": "8c1aeda965cb71b7", "scanner": "scanner-primary", "fingerprint": "2c5f91308809d485", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0e862bfd9ddba404", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/scopes.ts:16"}, "properties": {"repobilityId": "7b31c65a9a4f17cb", "scanner": "scanner-primary", "fingerprint": "0e862bfd9ddba404", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ace737cb4f01869d", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/middleware.ts:59"}, "properties": {"repobilityId": "18285d6b61f607e0", "scanner": "scanner-primary", "fingerprint": "ace737cb4f01869d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2dbb68f1e6bb2b4f", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/runtime/auth/middleware.ts:113"}, "properties": {"repobilityId": "a39b4b9e77e83ade", "scanner": "scanner-primary", "fingerprint": "2dbb68f1e6bb2b4f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-16b1e40c0d5949f8", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/types.ts:13"}, "properties": {"repobilityId": "d03a0affbf628b60", "scanner": "scanner-primary", "fingerprint": "16b1e40c0d5949f8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-229d317061b14b40", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/scopes.test.ts:19"}, "properties": {"repobilityId": "7af4395e31849c18", "scanner": "scanner-primary", "fingerprint": "229d317061b14b40", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-546567436d4d5c84", "level": "note", "message": {"text": "Legacy-named symbol `local_v1` in assistant/src/runtime/auth/__tests__/local-auth-context.test.ts:30"}, "properties": {"repobilityId": "81b427fef710fbdc", "scanner": "scanner-primary", "fingerprint": "546567436d4d5c84", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-38947475f294c2e5", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/route-policy.test.ts:50"}, "properties": {"repobilityId": "44abf384e9f1b72c", "scanner": "scanner-primary", "fingerprint": "38947475f294c2e5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-542210dd969706b3", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/token-service.test.ts:29"}, "properties": {"repobilityId": "862db43f7f1b249b", "scanner": "scanner-primary", "fingerprint": "542210dd969706b3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ac1e4e216d342a23", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/middleware.test.ts:63"}, "properties": {"repobilityId": "ade11553949ae2c0", "scanner": "scanner-primary", "fingerprint": "ac1e4e216d342a23", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-05f925dd2b749662", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/auth/__tests__/middleware.test.ts:193"}, "properties": {"repobilityId": "1593b0b5a6dd00b1", "scanner": "scanner-primary", "fingerprint": "05f925dd2b749662", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c7d73435e6d1b4a3", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/context.test.ts:12"}, "properties": {"repobilityId": "f1206157414e24c7", "scanner": "scanner-primary", "fingerprint": "c7d73435e6d1b4a3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cb7088b4889d5a53", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in assistant/src/runtime/auth/__tests__/guard-tests.test.ts:238"}, "properties": {"repobilityId": "9f6eedbeca2bc6af", "scanner": "scanner-primary", "fingerprint": "cb7088b4889d5a53", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8ef73eb3d0019b2c", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/runtime/auth/__tests__/guard-tests.test.ts:71"}, "properties": {"repobilityId": "ff24ec61b6e2a380", "scanner": "scanner-primary", "fingerprint": "8ef73eb3d0019b2c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-539d1b38598efcbc", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/middleware/request-logger.ts:36"}, "properties": {"repobilityId": "cf2effd668be3395", "scanner": "scanner-primary", "fingerprint": "539d1b38598efcbc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-82a2a928b80f7d47", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/middleware/rate-limiter.ts:15"}, "properties": {"repobilityId": "7caa30ea0774c63d", "scanner": "scanner-primary", "fingerprint": "82a2a928b80f7d47", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-87ed0fd5e863b8e0", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/middleware/__tests__/request-logger.test.ts:18"}, "properties": {"repobilityId": "235f93a8c2c700a3", "scanner": "scanner-primary", "fingerprint": "87ed0fd5e863b8e0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d8ea9dc46f2551d7", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/identity-routes.ts:131"}, "properties": {"repobilityId": "85fc627f472e50d6", "scanner": "scanner-primary", "fingerprint": "d8ea9dc46f2551d7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-68bcdf010941a998", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/avatar-routes.ts:68"}, "properties": {"repobilityId": "a93e55989d0750bc", "scanner": "scanner-primary", "fingerprint": "68bcdf010941a998", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5c0ca059bea99ed2", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/browser-tabs-routes.ts:116"}, "properties": {"repobilityId": "076433248858eea6", "scanner": "scanner-primary", "fingerprint": "5c0ca059bea99ed2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-47884c4bdab38533", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/runtime/routes/schedule-routes.ts:434"}, "properties": {"repobilityId": "69f73c57fd91a3ed", "scanner": "scanner-primary", "fingerprint": "47884c4bdab38533", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dd3e58199f82ae4e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/sanity-routes.ts:55"}, "properties": {"repobilityId": "0f2db2987a58b445", "scanner": "scanner-primary", "fingerprint": "dd3e58199f82ae4e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-507810d3ce11724c", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/inference-profile-session-handler.ts:102"}, "properties": {"repobilityId": "3abe8f6c67e86abb", "scanner": "scanner-primary", "fingerprint": "507810d3ce11724c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7a0ba3a82b9937b2", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/acp-routes.test.ts:51"}, "properties": {"repobilityId": "a6efc7bdcaf06833", "scanner": "scanner-primary", "fingerprint": "7a0ba3a82b9937b2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-961ba7f1db64a4bb", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/skills-routes.ts:435"}, "properties": {"repobilityId": "73bfedf014debdab", "scanner": "scanner-primary", "fingerprint": "961ba7f1db64a4bb", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-236b2a170b58c9f9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/email-routes.ts:79"}, "properties": {"repobilityId": "4e4d53ca7f46ef91", "scanner": "scanner-primary", "fingerprint": "236b2a170b58c9f9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-42e098d1666473e9", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/conversation-query-routes.ts:295"}, "properties": {"repobilityId": "8bffd251476b4cc9", "scanner": "scanner-primary", "fingerprint": "42e098d1666473e9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a9a7b19be62019ec", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/runtime/routes/conversation-compaction-routes.ts:295"}, "properties": {"repobilityId": "6f08b3cebea0adf1", "scanner": "scanner-primary", "fingerprint": "a9a7b19be62019ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-65ea347d47632c2c", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/conversation-list-routes.ts:191"}, "properties": {"repobilityId": "9a18a4c01bf16c7b", "scanner": "scanner-primary", "fingerprint": "65ea347d47632c2c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dc51e5ff6174fc7e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/access-request-decision.ts:71"}, "properties": {"repobilityId": "650afdb027cd0faf", "scanner": "scanner-primary", "fingerprint": "dc51e5ff6174fc7e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8c811f270579aecc", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/runtime/routes/guardian-approval-interception.ts:127"}, "properties": {"repobilityId": "a59e73ef8cbab90a", "scanner": "scanner-primary", "fingerprint": "8c811f270579aecc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2d752fe2476e56d0", "level": "none", "message": {"text": "Commented-code block (10 lines) in assistant/src/runtime/routes/inbound-message-handler.ts:404"}, "properties": {"repobilityId": "1cb18d2f49840170", "scanner": "scanner-primary", "fingerprint": "2d752fe2476e56d0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-85b54360f72b5294", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/acp-routes.ts:238"}, "properties": {"repobilityId": "a45e82b0343b0e56", "scanner": "scanner-primary", "fingerprint": "85b54360f72b5294", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-024079aa583cbceb", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/events-routes.ts:285"}, "properties": {"repobilityId": "1a02c201d7e9a507", "scanner": "scanner-primary", "fingerprint": "024079aa583cbceb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-89b8265787e3498c", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/runtime/routes/plugins-routes.ts:675"}, "properties": {"repobilityId": "93e9c6af90fe3794", "scanner": "scanner-primary", "fingerprint": "89b8265787e3498c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3607b0ee95c3ba4a", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/guardian-action-routes.ts:73"}, "properties": {"repobilityId": "69f99100f1aac80f", "scanner": "scanner-primary", "fingerprint": "3607b0ee95c3ba4a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-12b1a289e67ff494", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/runtime/routes/client-routes.ts:51"}, "properties": {"repobilityId": "92e3a0a704a74219", "scanner": "scanner-primary", "fingerprint": "12b1a289e67ff494", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a101365f6bb7f701", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/runtime/routes/workflow-routes.ts:202"}, "properties": {"repobilityId": "a30d79ac80829e22", "scanner": "scanner-primary", "fingerprint": "a101365f6bb7f701", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cf215720a275718d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/attachment-routes.ts:726"}, "properties": {"repobilityId": "0cd36ac72ee2302f", "scanner": "scanner-primary", "fingerprint": "cf215720a275718d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac18a0075584395d", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/runtime/routes/conversation-routes.ts:297"}, "properties": {"repobilityId": "a44db97e806c4dd1", "scanner": "scanner-primary", "fingerprint": "ac18a0075584395d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4f96f20c75a1b8aa", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/memory-v2-routes.ts:125"}, "properties": {"repobilityId": "62b9460be0df1eed", "scanner": "scanner-primary", "fingerprint": "4f96f20c75a1b8aa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-319db45f33e1eda6", "level": "note", "message": {"text": "Legacy-named symbol `resolvedOld` in assistant/src/runtime/routes/workspace-routes.ts:483"}, "properties": {"repobilityId": "8e31e4ca836930cd", "scanner": "scanner-primary", "fingerprint": "319db45f33e1eda6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6f96da5885db4a3d", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/runtime/routes/workspace-routes.ts:54"}, "properties": {"repobilityId": "77733c09e131f257", "scanner": "scanner-primary", "fingerprint": "6f96da5885db4a3d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-63467dc6af225f9c", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/inference-provider-connection-routes.ts:320"}, "properties": {"repobilityId": "a099aff5f01cf0bf", "scanner": "scanner-primary", "fingerprint": "63467dc6af225f9c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3742b0635d9ea1bb", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/redact-staged-export.ts:221"}, "properties": {"repobilityId": "8741791ce3bc75c0", "scanner": "scanner-primary", "fingerprint": "3742b0635d9ea1bb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-09a5274b45d218ea", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/oauth-commands-routes.ts:100"}, "properties": {"repobilityId": "69de47bb766cfda8", "scanner": "scanner-primary", "fingerprint": "09a5274b45d218ea", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f8e5016e4b03e742", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/btw-routes.ts:84"}, "properties": {"repobilityId": "cf65c1beb4c4940f", "scanner": "scanner-primary", "fingerprint": "f8e5016e4b03e742", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f1b4f40d294fb019", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/runtime/routes/log-export-routes.ts:298"}, "properties": {"repobilityId": "3d6bb8019d4609ed", "scanner": "scanner-primary", "fingerprint": "f1b4f40d294fb019", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-55687930e983c049", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/runtime/routes/migration-routes.ts:362"}, "properties": {"repobilityId": "9857985d795c8084", "scanner": "scanner-primary", "fingerprint": "55687930e983c049", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ba84660e0d9b7afa", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/routes/migration-routes.ts:1205"}, "properties": {"repobilityId": "a3715f42eae07492", "scanner": "scanner-primary", "fingerprint": "ba84660e0d9b7afa", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-34cc395068c37dc9", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/__tests__/conversation-query-routes.test.ts:35"}, "properties": {"repobilityId": "2daa64e33ee1efc2", "scanner": "scanner-primary", "fingerprint": "34cc395068c37dc9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e2f6e11573e950de", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/__tests__/plugins-routes.test.ts:501"}, "properties": {"repobilityId": "b0ccfd1036b955cd", "scanner": "scanner-primary", "fingerprint": "e2f6e11573e950de", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c462da6407c30223", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/__tests__/memory-v2-simulate-route.test.ts:55"}, "properties": {"repobilityId": "921bd5fe26bc4a3d", "scanner": "scanner-primary", "fingerprint": "c462da6407c30223", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-70fcb0bfc0ac30e4", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/__tests__/acp-routes.test.ts:36"}, "properties": {"repobilityId": "ec728f4ffb4ede25", "scanner": "scanner-primary", "fingerprint": "70fcb0bfc0ac30e4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b3ce8eb1e21f12a1", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/__tests__/retrospective-routes.test.ts:237"}, "properties": {"repobilityId": "3a5fae301b40c4d8", "scanner": "scanner-primary", "fingerprint": "b3ce8eb1e21f12a1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-41d3cde7cf1dc298", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/__tests__/consolidation-routes.test.ts:272"}, "properties": {"repobilityId": "bf65362971ed2e81", "scanner": "scanner-primary", "fingerprint": "41d3cde7cf1dc298", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-928cad8ba970cdef", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/inbound-stages/background-dispatch.ts:201"}, "properties": {"repobilityId": "4f454d9900edbc45", "scanner": "scanner-primary", "fingerprint": "928cad8ba970cdef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ce4c7f1cec4ffc4d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/inbound-stages/acl-enforcement.ts:504"}, "properties": {"repobilityId": "6f40614f9831d870", "scanner": "scanner-primary", "fingerprint": "ce4c7f1cec4ffc4d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5d8b2229dbf18d83", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/inbound-stages/guardian-activation-intercept.ts:107"}, "properties": {"repobilityId": "8c7050ff0f7aac60", "scanner": "scanner-primary", "fingerprint": "5d8b2229dbf18d83", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b082445de05c240a", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/runtime/routes/inbound-stages/guardian-reply-intercept.ts:105"}, "properties": {"repobilityId": "915cc9d610732cfa", "scanner": "scanner-primary", "fingerprint": "b082445de05c240a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b3ea0e0b62af0efd", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/approval-strategies/guardian-callback-strategy.ts:531"}, "properties": {"repobilityId": "e8d29b402c29e47a", "scanner": "scanner-primary", "fingerprint": "b3ea0e0b62af0efd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-28e0076e95a16ddf", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/log-export/workspace-allowlist.ts:103"}, "properties": {"repobilityId": "413b58cbed6e1094", "scanner": "scanner-primary", "fingerprint": "28e0076e95a16ddf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7de7b5208032d7f9", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/routes/log-export/__tests__/workspace-allowlist.test.ts:400"}, "properties": {"repobilityId": "17bb7ef3dcf711bc", "scanner": "scanner-primary", "fingerprint": "7de7b5208032d7f9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-281cc4d1e34593d6", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/routes/log-export/__tests__/workspace-allowlist-error-contract.test.ts:24"}, "properties": {"repobilityId": "7046c19dcbaafa5c", "scanner": "scanner-primary", "fingerprint": "281cc4d1e34593d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-47b8b2a3825d2ed3", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/runtime/services/analyze-conversation.ts:120"}, "properties": {"repobilityId": "1c390a0f96c3dc8f", "scanner": "scanner-primary", "fingerprint": "47b8b2a3825d2ed3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f64ac9ecc7399962", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/gcs-signed-url.ts:77"}, "properties": {"repobilityId": "5931d83fc557b19f", "scanner": "scanner-primary", "fingerprint": "f64ac9ecc7399962", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-45a340d257bebe5b", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/runtime/migrations/gcs-signed-url.ts:5"}, "properties": {"repobilityId": "6667e06c5bf781d3", "scanner": "scanner-primary", "fingerprint": "45a340d257bebe5b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f5765704c07b35be", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/migrations/vbundle-streaming-importer.ts:79"}, "properties": {"repobilityId": "2aaefc26318042e5", "scanner": "scanner-primary", "fingerprint": "f5765704c07b35be", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-996c57575f60bfd2", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/runtime/migrations/vbundle-import-policy.ts:105"}, "properties": {"repobilityId": "0fac3c6cfc71572e", "scanner": "scanner-primary", "fingerprint": "996c57575f60bfd2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-07cb0f1567dcf4c4", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/migrations/job-registry.ts:63"}, "properties": {"repobilityId": "35537c93a673ce3b", "scanner": "scanner-primary", "fingerprint": "07cb0f1567dcf4c4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad3d9c444c61ef76", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/migrations/vbundle-import-analyzer.ts:172"}, "properties": {"repobilityId": "88875a09654bf299", "scanner": "scanner-primary", "fingerprint": "ad3d9c444c61ef76", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-41332400062ea8de", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/vbundle-validator.ts:94"}, "properties": {"repobilityId": "8624825ed078c979", "scanner": "scanner-primary", "fingerprint": "41332400062ea8de", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d62738b2c0497a91", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/vbundle-importer.ts:206"}, "properties": {"repobilityId": "ec562ba15c10cd87", "scanner": "scanner-primary", "fingerprint": "d62738b2c0497a91", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9e3a7dbe4ff9dbb2", "level": "note", "message": {"text": "Legacy-named symbol `computedLegacy` in assistant/src/runtime/migrations/vbundle-streaming-validator.ts:179"}, "properties": {"repobilityId": "7d3148b6e66f0e1b", "scanner": "scanner-primary", "fingerprint": "9e3a7dbe4ff9dbb2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5774c3f6de7d920b", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/vbundle-streaming-validator.ts:112"}, "properties": {"repobilityId": "96c5775a1889a47e", "scanner": "scanner-primary", "fingerprint": "5774c3f6de7d920b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-55b83deb5297b249", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/vbundle-builder.ts:537"}, "properties": {"repobilityId": "deafb77360e691df", "scanner": "scanner-primary", "fingerprint": "55b83deb5297b249", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-39b79fc6d6cf5c16", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/migrations/__tests__/vbundle-validator-v1-schema.test.ts:235"}, "properties": {"repobilityId": "76d3b2cd7c5e109e", "scanner": "scanner-primary", "fingerprint": "39b79fc6d6cf5c16", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-13ad368263994d01", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-walker.test.ts:223"}, "properties": {"repobilityId": "e5531f00596eb550", "scanner": "scanner-primary", "fingerprint": "13ad368263994d01", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-032f49a8dc3e9b86", "level": "note", "message": {"text": "Legacy-named symbol `badLegacy` in assistant/src/runtime/migrations/__tests__/vbundle-streaming-validator.test.ts:543"}, "properties": {"repobilityId": "bf46d02a433230d7", "scanner": "scanner-primary", "fingerprint": "032f49a8dc3e9b86", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cb676a47755f9635", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/runtime/migrations/__tests__/vbundle-streaming-importer.test.ts:453"}, "properties": {"repobilityId": "7d7cb6272ec30cc7", "scanner": "scanner-primary", "fingerprint": "cb676a47755f9635", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fcad843ba944d36d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-tar.test.ts:171"}, "properties": {"repobilityId": "656518d8cc6aeb3f", "scanner": "scanner-primary", "fingerprint": "fcad843ba944d36d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b630a960c7916565", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-streaming.test.ts:255"}, "properties": {"repobilityId": "b2de32e8cad11cb1", "scanner": "scanner-primary", "fingerprint": "b630a960c7916565", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1a7f30a26f7c5861", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-importer.test.ts:297"}, "properties": {"repobilityId": "fc026d762b78a83d", "scanner": "scanner-primary", "fingerprint": "1a7f30a26f7c5861", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-96f2106ba907aea9", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/runtime/migrations/__tests__/vbundle-symlink-streaming-importer.test.ts:236"}, "properties": {"repobilityId": "c06b2c2b4877be5a", "scanner": "scanner-primary", "fingerprint": "96f2106ba907aea9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5e7b3f2d13d77fa", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/stt/stt-stream-session.ts:156"}, "properties": {"repobilityId": "9f369ef221ae5223", "scanner": "scanner-primary", "fingerprint": "f5e7b3f2d13d77fa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8c809de75639cab9", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/stt/__tests__/types.test.ts:14"}, "properties": {"repobilityId": "3a3acb47292088e8", "scanner": "scanner-primary", "fingerprint": "8c809de75639cab9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9a11425f2f4a7be9", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/permissions/checker.test.ts:484"}, "properties": {"repobilityId": "55585279e41a835a", "scanner": "scanner-primary", "fingerprint": "9a11425f2f4a7be9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5001a1286ba46fb2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/permissions/checker.test.ts:337"}, "properties": {"repobilityId": "87a2934a1ac4a4c2", "scanner": "scanner-primary", "fingerprint": "5001a1286ba46fb2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d25780cf3f3976af", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/permissions/question-prompter.test.ts:69"}, "properties": {"repobilityId": "54a6d33a6a3a13ad", "scanner": "scanner-primary", "fingerprint": "d25780cf3f3976af", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91be80b8413982f7", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/permissions/question-prompter.ts:204"}, "properties": {"repobilityId": "f02b19fe14e10471", "scanner": "scanner-primary", "fingerprint": "91be80b8413982f7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7911dbf903710f3e", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/permissions/approval-policy.ts:151"}, "properties": {"repobilityId": "d219bc2c01f73d8f", "scanner": "scanner-primary", "fingerprint": "7911dbf903710f3e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f218c79a5761506e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/permissions/gateway-threshold-reader.ts:47"}, "properties": {"repobilityId": "fb13f6f93996fb83", "scanner": "scanner-primary", "fingerprint": "f218c79a5761506e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b87f04f4cbbe163d", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/permissions/checker.ts:45"}, "properties": {"repobilityId": "192f084fb439d6b1", "scanner": "scanner-primary", "fingerprint": "b87f04f4cbbe163d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac212990fb285f3c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/services/vercel-deploy.ts:31"}, "properties": {"repobilityId": "50c7210bbd412cb5", "scanner": "scanner-primary", "fingerprint": "ac212990fb285f3c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-87f51ef8bd87d7b8", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/workflows/sandbox.ts:164"}, "properties": {"repobilityId": "690704c83e8b5117", "scanner": "scanner-primary", "fingerprint": "87f51ef8bd87d7b8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b233b2354f1f70e7", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/workflows/capabilities.ts:305"}, "properties": {"repobilityId": "0cf2cc867a4a6ac1", "scanner": "scanner-primary", "fingerprint": "b233b2354f1f70e7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cc3c8ebe4b8023e7", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/workflows/leaf-runner.ts:265"}, "properties": {"repobilityId": "21ee88f3ed82426d", "scanner": "scanner-primary", "fingerprint": "cc3c8ebe4b8023e7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ededa1db699e5482", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/workflows/run-manager.ts:213"}, "properties": {"repobilityId": "553bd1b6ece43b3b", "scanner": "scanner-primary", "fingerprint": "ededa1db699e5482", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2ff00584beff5281", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/workflows/engine.test.ts:857"}, "properties": {"repobilityId": "707c9439983b5b27", "scanner": "scanner-primary", "fingerprint": "2ff00584beff5281", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bca0b6b710a64763", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workflows/sandbox-escape.test.ts:195"}, "properties": {"repobilityId": "b66ded11a4481dbc", "scanner": "scanner-primary", "fingerprint": "bca0b6b710a64763", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f108e5c1174a4d2a", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workflows/capabilities.test.ts:181"}, "properties": {"repobilityId": "8533e471bd136b7b", "scanner": "scanner-primary", "fingerprint": "f108e5c1174a4d2a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c85b1aef50b6813c", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/workflows/leaf-runner.test.ts:661"}, "properties": {"repobilityId": "a06091b7c4866f66", "scanner": "scanner-primary", "fingerprint": "c85b1aef50b6813c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-559f4a18bd23ace3", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/workflows/engine-integration.test.ts:525"}, "properties": {"repobilityId": "ed644df99dc70e78", "scanner": "scanner-primary", "fingerprint": "559f4a18bd23ace3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3d30d24355ff0a40", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/workflows/sandbox.test.ts:223"}, "properties": {"repobilityId": "a93e9afd9ed99445", "scanner": "scanner-primary", "fingerprint": "3d30d24355ff0a40", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-be4144fe2ceab6f0", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/workflows/engine.ts:568"}, "properties": {"repobilityId": "7b4e11de342c4d6f", "scanner": "scanner-primary", "fingerprint": "be4144fe2ceab6f0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-02921d7d8cb13713", "level": "none", "message": {"text": "Commented-code block (11 lines) in assistant/src/tools/executor.ts:146"}, "properties": {"repobilityId": "0b4b6e05b246335c", "scanner": "scanner-primary", "fingerprint": "02921d7d8cb13713", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8023428b5c28e11c", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/tools/registry.ts:20"}, "properties": {"repobilityId": "568d759b2312f4a9", "scanner": "scanner-primary", "fingerprint": "8023428b5c28e11c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0ec3766144e27146", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/side-effects.ts:1"}, "properties": {"repobilityId": "f24b83ea9f1dbaa8", "scanner": "scanner-primary", "fingerprint": "0ec3766144e27146", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0bb3b5c54bc1c732", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/tools/tool-approval-handler.ts:248"}, "properties": {"repobilityId": "3a79f19de8dad68b", "scanner": "scanner-primary", "fingerprint": "0bb3b5c54bc1c732", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-238c67d4b2f335b5", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/tools/tool-manifest.ts:36"}, "properties": {"repobilityId": "385f5a37b8857f41", "scanner": "scanner-primary", "fingerprint": "238c67d4b2f335b5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6cf1355afd5027ce", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/permission-checker.ts:167"}, "properties": {"repobilityId": "66cbefd48bc9c4ea", "scanner": "scanner-primary", "fingerprint": "6cf1355afd5027ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e8270a2e60bc4447", "level": "none", "message": {"text": "Commented-code block (17 lines) in assistant/src/tools/types.ts:44"}, "properties": {"repobilityId": "93c3788de9f8f248", "scanner": "scanner-primary", "fingerprint": "e8270a2e60bc4447", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-86359a492e3adbc0", "level": "note", "message": {"text": "Legacy-named symbol `actualOld` in assistant/src/tools/filesystem/edit.ts:132"}, "properties": {"repobilityId": "3da6354fd36a59ad", "scanner": "scanner-primary", "fingerprint": "86359a492e3adbc0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-79f71ddba1975575", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/tools/schedule/update.ts:208"}, "properties": {"repobilityId": "bb9a36f1226e8e69", "scanner": "scanner-primary", "fingerprint": "79f71ddba1975575", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-42ada893cbfca8fc", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/network/web-search.ts:874"}, "properties": {"repobilityId": "294680a54da5a984", "scanner": "scanner-primary", "fingerprint": "42ada893cbfca8fc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-32cc19b8da754d6c", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/tools/network/web-search-error.ts:4"}, "properties": {"repobilityId": "2c122bdc0ed5df98", "scanner": "scanner-primary", "fingerprint": "32cc19b8da754d6c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bb7e3facbf451f2a", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/tools/network/web-fetch.ts:155"}, "properties": {"repobilityId": "751367c449eae6ca", "scanner": "scanner-primary", "fingerprint": "bb7e3facbf451f2a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9f43540240b6100b", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/network/web-fetch.ts:252"}, "properties": {"repobilityId": "b9cb5e183ebedb97", "scanner": "scanner-primary", "fingerprint": "9f43540240b6100b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5f311344d2c35c9a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/network/managed-search-proxy.ts:88"}, "properties": {"repobilityId": "59043c704f2b795a", "scanner": "scanner-primary", "fingerprint": "5f311344d2c35c9a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-04d60b5219176441", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/network/__tests__/web-fetch-metadata.test.ts:27"}, "properties": {"repobilityId": "3efbc0d21dcaf14e", "scanner": "scanner-primary", "fingerprint": "04d60b5219176441", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c9899405cdcdcb37", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/tools/network/script-proxy/__tests__/policy.test.ts:308"}, "properties": {"repobilityId": "6ab515cb16a4159d", "scanner": "scanner-primary", "fingerprint": "c9899405cdcdcb37", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9196fc46247aa0e1", "level": "note", "message": {"text": "Legacy-named symbol `actualOld` in assistant/src/tools/shared/filesystem/edit-engine.ts:18"}, "properties": {"repobilityId": "4456e36422ef94b5", "scanner": "scanner-primary", "fingerprint": "9196fc46247aa0e1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-08c4b5094d1ccc0a", "level": "note", "message": {"text": "Legacy-named symbol `actualOld` in assistant/src/tools/shared/filesystem/file-ops-service.ts:247"}, "properties": {"repobilityId": "19f5cec741ca47fb", "scanner": "scanner-primary", "fingerprint": "08c4b5094d1ccc0a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8c35d38f8c77d134", "level": "note", "message": {"text": "Legacy-named symbol `actualOld` in assistant/src/tools/shared/filesystem/types.ts:73"}, "properties": {"repobilityId": "b0fcf34cd08c5602", "scanner": "scanner-primary", "fingerprint": "8c35d38f8c77d134", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-157de1f3e2dbcfed", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/tools/host-terminal/host-shell.ts:197"}, "properties": {"repobilityId": "c2ad88561c3a34f8", "scanner": "scanner-primary", "fingerprint": "157de1f3e2dbcfed", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8cdbbcc2a0132e65", "level": "none", "message": {"text": "Commented-code block (11 lines) in assistant/src/tools/acp/spawn.test.ts:443"}, "properties": {"repobilityId": "4e7de266dbcba49d", "scanner": "scanner-primary", "fingerprint": "8cdbbcc2a0132e65", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d32fe9350fdbd0ba", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/acp/steer.ts:30"}, "properties": {"repobilityId": "ef33114d10e724f5", "scanner": "scanner-primary", "fingerprint": "d32fe9350fdbd0ba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1992053861ad8dd2", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/ask-question/ask-question-tool.ts:11"}, "properties": {"repobilityId": "993a8fc25e4e0275", "scanner": "scanner-primary", "fingerprint": "1992053861ad8dd2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c71dfd69fedaa216", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/tasks/work-item-enqueue.ts:125"}, "properties": {"repobilityId": "b02d3c9b85eb2843", "scanner": "scanner-primary", "fingerprint": "c71dfd69fedaa216", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d0c45c0219edb67a", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/workspace-tools/loader.ts:389"}, "properties": {"repobilityId": "4c711bf5fffae756", "scanner": "scanner-primary", "fingerprint": "d0c45c0219edb67a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bd4489488b4ea6e5", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/terminal/shell.ts:279"}, "properties": {"repobilityId": "da35112146110ca8", "scanner": "scanner-primary", "fingerprint": "bd4489488b4ea6e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-669e2630af56f755", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/tools/subagent/spawn.ts:78"}, "properties": {"repobilityId": "94b554868fc6d83a", "scanner": "scanner-primary", "fingerprint": "669e2630af56f755", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-effd3dba0b20456d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/ui-surface/definitions.ts:86"}, "properties": {"repobilityId": "02c59e7d54df89b4", "scanner": "scanner-primary", "fingerprint": "effd3dba0b20456d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a7f5b949c0f8affa", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/tools/workflows/run-workflow.ts:150"}, "properties": {"repobilityId": "4dfef678e4e6ba63", "scanner": "scanner-primary", "fingerprint": "a7f5b949c0f8affa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-091e6e50975df503", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/tools/workflows/manage-workflows.ts:34"}, "properties": {"repobilityId": "43298ba0648c84fd", "scanner": "scanner-primary", "fingerprint": "091e6e50975df503", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2d28ea2ad314ff45", "level": "note", "message": {"text": "Legacy-named symbol `actualOld` in assistant/src/tools/host-filesystem/edit.ts:208"}, "properties": {"repobilityId": "8e71eddfbd4b917e", "scanner": "scanner-primary", "fingerprint": "2d28ea2ad314ff45", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-38348eb61e4e98d2", "level": "none", "message": {"text": "Commented-code block (11 lines) in assistant/src/tools/host-filesystem/edit.ts:128"}, "properties": {"repobilityId": "50a79d1b196ab402", "scanner": "scanner-primary", "fingerprint": "38348eb61e4e98d2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-45c5586ef739cad1", "level": "none", "message": {"text": "Commented-code block (11 lines) in assistant/src/tools/host-filesystem/transfer.ts:133"}, "properties": {"repobilityId": "5840d2df640e4538", "scanner": "scanner-primary", "fingerprint": "45c5586ef739cad1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0ac43109dfb20d1f", "level": "none", "message": {"text": "Commented-code block (11 lines) in assistant/src/tools/host-filesystem/write.ts:98"}, "properties": {"repobilityId": "a6746f8ab1d70e59", "scanner": "scanner-primary", "fingerprint": "0ac43109dfb20d1f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c96d1d68e319e63d", "level": "none", "message": {"text": "Commented-code block (11 lines) in assistant/src/tools/host-filesystem/read.ts:103"}, "properties": {"repobilityId": "6bc246f34cbe1281", "scanner": "scanner-primary", "fingerprint": "c96d1d68e319e63d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f96e54c543cbab1d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/tools/host-filesystem/transfer.test.ts:412"}, "properties": {"repobilityId": "7b67447e230f154e", "scanner": "scanner-primary", "fingerprint": "f96e54c543cbab1d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-402b1c6fcb212fc1", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/host-filesystem/write.test.ts:109"}, "properties": {"repobilityId": "b328c81dea475c36", "scanner": "scanner-primary", "fingerprint": "402b1c6fcb212fc1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-64849a6956a7bbdb", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/host-filesystem/read.test.ts:104"}, "properties": {"repobilityId": "afe35fbaec44f3b3", "scanner": "scanner-primary", "fingerprint": "64849a6956a7bbdb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fa0c3bcaa473e1b5", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/host-filesystem/edit.test.ts:122"}, "properties": {"repobilityId": "8301ee66765896c9", "scanner": "scanner-primary", "fingerprint": "fa0c3bcaa473e1b5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6a7ad575b4d45f06", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/browser/network-recorder.ts:147"}, "properties": {"repobilityId": "aaf0742b6c0d9dea", "scanner": "scanner-primary", "fingerprint": "6a7ad575b4d45f06", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f8344ff1b431977e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/runtime-check.ts:77"}, "properties": {"repobilityId": "03fab1174b52f1e8", "scanner": "scanner-primary", "fingerprint": "f8344ff1b431977e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4b9013ce5d8b91bf", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/tools/browser/browser-execution.ts:491"}, "properties": {"repobilityId": "b2ff8aa0c93bf320", "scanner": "scanner-primary", "fingerprint": "4b9013ce5d8b91bf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fac7ccd585855c7d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/extension-cdp-client.ts:117"}, "properties": {"repobilityId": "5f7818d629dd959e", "scanner": "scanner-primary", "fingerprint": "fac7ccd585855c7d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa034bb49ab6e271", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/cdp-dom-helpers.ts:498"}, "properties": {"repobilityId": "0481f64f647cd61c", "scanner": "scanner-primary", "fingerprint": "aa034bb49ab6e271", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-237693384bbea20e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect-client.ts:172"}, "properties": {"repobilityId": "c7fb79203a691573", "scanner": "scanner-primary", "fingerprint": "237693384bbea20e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-edc4ecfea3a7cd6d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/factory.ts:309"}, "properties": {"repobilityId": "256ad1196a5d99a4", "scanner": "scanner-primary", "fingerprint": "edc4ecfea3a7cd6d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-82a260f44489b545", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/__tests__/cdp-inspect-client.test.ts:123"}, "properties": {"repobilityId": "0f28220cd767a826", "scanner": "scanner-primary", "fingerprint": "82a260f44489b545", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c983856c48fa4ee2", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/tools/browser/cdp-client/__tests__/factory.test.ts:101"}, "properties": {"repobilityId": "346460bee18d76e0", "scanner": "scanner-primary", "fingerprint": "c983856c48fa4ee2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3c7688549b29f6ea", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect/ws-transport.ts:486"}, "properties": {"repobilityId": "1c327d184467202c", "scanner": "scanner-primary", "fingerprint": "3c7688549b29f6ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0bfd44a444077b0c", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect/discovery.ts:384"}, "properties": {"repobilityId": "fa577447c26697db", "scanner": "scanner-primary", "fingerprint": "0bfd44a444077b0c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d37dfadd36aea04c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/browser/cdp-client/cdp-inspect/discovery.ts:230"}, "properties": {"repobilityId": "3a3ae2cfbd52a11c", "scanner": "scanner-primary", "fingerprint": "d37dfadd36aea04c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-062ab316a7bad0d0", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect/__tests__/ws-transport.test.ts:81"}, "properties": {"repobilityId": "d746d0e174086ba3", "scanner": "scanner-primary", "fingerprint": "062ab316a7bad0d0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d619402c7823cdfa", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/browser/cdp-client/cdp-inspect/__tests__/ws-transport.test.ts:103"}, "properties": {"repobilityId": "5a99cf33a203831c", "scanner": "scanner-primary", "fingerprint": "d619402c7823cdfa", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0b13842d06edc4ea", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/tools/browser/cdp-client/cdp-inspect/__tests__/discovery.test.ts:400"}, "properties": {"repobilityId": "f98ed26bde7abb3e", "scanner": "scanner-primary", "fingerprint": "0b13842d06edc4ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5a9ffb5936cc3b78", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/tools/browser/cdp-client/cdp-inspect/__tests__/discovery.test.ts:40"}, "properties": {"repobilityId": "33950bb4771645d5", "scanner": "scanner-primary", "fingerprint": "5a9ffb5936cc3b78", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-da2f3d433670ab4e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/contacts/contacts-write.ts:128"}, "properties": {"repobilityId": "fe6055b88613375b", "scanner": "scanner-primary", "fingerprint": "da2f3d433670ab4e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1e5c067ccc90b67c", "level": "none", "message": {"text": "Commented-code block (9 lines) in assistant/src/watcher/engine.ts:222"}, "properties": {"repobilityId": "466af90404ce1237", "scanner": "scanner-primary", "fingerprint": "1e5c067ccc90b67c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5c520ecf92a2dce5", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/watcher/__tests__/engine.test.ts:203"}, "properties": {"repobilityId": "56691a4e4f8b737d", "scanner": "scanner-primary", "fingerprint": "5c520ecf92a2dce5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-948c34af565c950d", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/watcher/providers/linear.ts:548"}, "properties": {"repobilityId": "1dd305837df1a9c8", "scanner": "scanner-primary", "fingerprint": "948c34af565c950d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-be2d7fcb1ac5f5a5", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/context/compactor.ts:835"}, "properties": {"repobilityId": "be9dc0cc2d329f3e", "scanner": "scanner-primary", "fingerprint": "be2d7fcb1ac5f5a5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-892000dc564292fe", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/context/strip-injections.ts:105"}, "properties": {"repobilityId": "ae23d7c4a83500ad", "scanner": "scanner-primary", "fingerprint": "892000dc564292fe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4f53975572085980", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/context/token-estimator.ts:40"}, "properties": {"repobilityId": "dc24f7de7964ce5b", "scanner": "scanner-primary", "fingerprint": "4f53975572085980", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a04a4faf946cbf91", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/prompts/sections.ts:168"}, "properties": {"repobilityId": "cc159677772319d1", "scanner": "scanner-primary", "fingerprint": "a04a4faf946cbf91", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c21512276275059d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/prompts/system-prompt.ts:231"}, "properties": {"repobilityId": "394d473025f2cd4b", "scanner": "scanner-primary", "fingerprint": "c21512276275059d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4d23cc23d5a7d39d", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/prompts/persona-resolver.ts:20"}, "properties": {"repobilityId": "beb940e90cb2da23", "scanner": "scanner-primary", "fingerprint": "4d23cc23d5a7d39d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1ff270ae20cec466", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/prompts/templates/system-sections.ts:346"}, "properties": {"repobilityId": "40223ad5fb9a22ba", "scanner": "scanner-primary", "fingerprint": "1ff270ae20cec466", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-377b7bbaaf0dc76b", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/skills/inline-command-runner.ts:174"}, "properties": {"repobilityId": "94f9bfe82ae3f392", "scanner": "scanner-primary", "fingerprint": "377b7bbaaf0dc76b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-72ce030ccfdf9218", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/skills/validate-input.ts:145"}, "properties": {"repobilityId": "e61b9b602fd8c627", "scanner": "scanner-primary", "fingerprint": "72ce030ccfdf9218", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c1d8febdb10d6c74", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/credential-health/credential-health-service.ts:241"}, "properties": {"repobilityId": "e02857e5ac167951", "scanner": "scanner-primary", "fingerprint": "c1d8febdb10d6c74", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4ed0e4e052005f39", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/credential-health/credential-health-service.ts:389"}, "properties": {"repobilityId": "cbaec511498fa840", "scanner": "scanner-primary", "fingerprint": "4ed0e4e052005f39", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-06e96c6789b1e2df", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/background-wake/platform-client.ts:30"}, "properties": {"repobilityId": "c8a8c17f5cfcc82a", "scanner": "scanner-primary", "fingerprint": "06e96c6789b1e2df", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-33e267483118763e", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/telemetry/usage-telemetry-reporter.test.ts:558"}, "properties": {"repobilityId": "6c29ccf802200b92", "scanner": "scanner-primary", "fingerprint": "33e267483118763e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-018b75efbd3dff88", "level": "none", "message": {"text": "Commented-code block (15 lines) in assistant/src/telemetry/usage-telemetry-reporter.ts:127"}, "properties": {"repobilityId": "b704dbc1d5731a92", "scanner": "scanner-primary", "fingerprint": "018b75efbd3dff88", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-342e40d7896771da", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 assistant/src/telemetry/usage-telemetry-reporter.ts:593"}, "properties": {"repobilityId": "f404bfa3fb39b41b", "scanner": "scanner-primary", "fingerprint": "342e40d7896771da", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-154148c8f9465298", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/plugins/registry.ts:87"}, "properties": {"repobilityId": "2af7049a2d3b48cf", "scanner": "scanner-primary", "fingerprint": "154148c8f9465298", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ff761382143a3070", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/plugins/user-loader.ts:82"}, "properties": {"repobilityId": "9edadc656c7feedd", "scanner": "scanner-primary", "fingerprint": "ff761382143a3070", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-492567b8d6dae00e", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/plugins/external-plugin-loader.ts:320"}, "properties": {"repobilityId": "48228729b9c52667", "scanner": "scanner-primary", "fingerprint": "492567b8d6dae00e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-61d575ce4eea4843", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/plugins/types.ts:319"}, "properties": {"repobilityId": "72ab3a807bc12b13", "scanner": "scanner-primary", "fingerprint": "61d575ce4eea4843", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fb3377f2145c044f", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/plugins/defaults/history-repair/terminal.ts:85"}, "properties": {"repobilityId": "1e26032e9f350b54", "scanner": "scanner-primary", "fingerprint": "fb3377f2145c044f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5601d3fa4d766a79", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/orchestrate.ts:184"}, "properties": {"repobilityId": "dda555c8cd4605af", "scanner": "scanner-primary", "fingerprint": "5601d3fa4d766a79", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7f28dc4cac98ebf2", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/section-dense-store.ts:5"}, "properties": {"repobilityId": "6aa32774d99dbb80", "scanner": "scanner-primary", "fingerprint": "7f28dc4cac98ebf2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bfdd07bd49aef959", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/plugins/defaults/memory-v3-shadow/maintain-job.ts:502"}, "properties": {"repobilityId": "21080f784238fecc", "scanner": "scanner-primary", "fingerprint": "bfdd07bd49aef959", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-27c0adc1fd92f441", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/plugins/defaults/memory-v3-shadow/dense.ts:5"}, "properties": {"repobilityId": "9f2cb3c661e9689f", "scanner": "scanner-primary", "fingerprint": "27c0adc1fd92f441", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ccd28f5a5af8acd6", "level": "none", "message": {"text": "Commented-code block (8 lines) in assistant/src/plugins/defaults/memory-v3-shadow/injector.ts:251"}, "properties": {"repobilityId": "65e2adce7601413e", "scanner": "scanner-primary", "fingerprint": "ccd28f5a5af8acd6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8e2b88c8c132122c", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/prune.test.ts:555"}, "properties": {"repobilityId": "4dc97cafff29a85e", "scanner": "scanner-primary", "fingerprint": "8e2b88c8c132122c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cdc279cbd2b9387b", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/plugins/defaults/memory-v3-shadow/shadow-plugin.ts:150"}, "properties": {"repobilityId": "2316174f1c152cc3", "scanner": "scanner-primary", "fingerprint": "cdc279cbd2b9387b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-39314bee3ab277ec", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/shadow-integration.test.ts:130"}, "properties": {"repobilityId": "df59fcd05310f5e7", "scanner": "scanner-primary", "fingerprint": "39314bee3ab277ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4558f5c15aed1337", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/live-integration.test.ts:312"}, "properties": {"repobilityId": "c83103c3524365b5", "scanner": "scanner-primary", "fingerprint": "4558f5c15aed1337", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3c0265830452d501", "level": "none", "message": {"text": "Commented-code block (7 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/shadow-plugin.test.ts:43"}, "properties": {"repobilityId": "5dc97a5884eabcd9", "scanner": "scanner-primary", "fingerprint": "3c0265830452d501", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-97c7cce88ef4c6c3", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/orchestrate.test.ts:54"}, "properties": {"repobilityId": "f584d4d99e871c96", "scanner": "scanner-primary", "fingerprint": "97c7cce88ef4c6c3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6c88f3a4b82f4546", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/pool-select.test.ts:231"}, "properties": {"repobilityId": "d8f139dc6f0c260b", "scanner": "scanner-primary", "fingerprint": "6c88f3a4b82f4546", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f778ff92a6f3e90c", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-v3-shadow/__tests__/carry-integration.test.ts:225"}, "properties": {"repobilityId": "77e7ec92a4fd270a", "scanner": "scanner-primary", "fingerprint": "f778ff92a6f3e90c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ce3da560f2d6374", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/plugins/defaults/compaction/window-manager.ts:56"}, "properties": {"repobilityId": "10157ae6e62beb93", "scanner": "scanner-primary", "fingerprint": "9ce3da560f2d6374", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9c8997a7f14f0244", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-retrieval/injectors.ts:677"}, "properties": {"repobilityId": "a49ec8538ac461fa", "scanner": "scanner-primary", "fingerprint": "9c8997a7f14f0244", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-300e1612fda8b7e9", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/memory-retrieval/hooks/user-prompt-submit.ts:270"}, "properties": {"repobilityId": "6a2f09f99aabdc57", "scanner": "scanner-primary", "fingerprint": "300e1612fda8b7e9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-867dd75aa675efe1", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/plugins/defaults/title-generate/hooks/stop.ts:63"}, "properties": {"repobilityId": "af103ac3b5ed4ee3", "scanner": "scanner-primary", "fingerprint": "867dd75aa675efe1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a3d984f05415b21a", "level": "none", "message": {"text": "Commented-code block (6 lines) in assistant/src/plugins/defaults/title-generate/hooks/user-prompt-submit.ts:22"}, "properties": {"repobilityId": "40dcf205f15b0518", "scanner": "scanner-primary", "fingerprint": "a3d984f05415b21a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5f4ea967a4f6c533", "level": "none", "message": {"text": "Commented-code block (5 lines) in assistant/src/export/transcript-formatter.ts:172"}, "properties": {"repobilityId": "7375854bc0077012", "scanner": "scanner-primary", "fingerprint": "5f4ea967a4f6c533", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6599b8a5ce326ab8", "level": "none", "message": {"text": "Commented-code block (12 lines) in gateway/src/config.ts:137"}, "properties": {"repobilityId": "00014473d2ff45a8", "scanner": "scanner-primary", "fingerprint": "6599b8a5ce326ab8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3d491498474f4979", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/auth-fallback-count-tracker.ts:1"}, "properties": {"repobilityId": "660b9e09269b0e1f", "scanner": "scanner-primary", "fingerprint": "3d491498474f4979", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-40d6227efd8337ff", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/credential-watcher.ts:81"}, "properties": {"repobilityId": "9990624d35b13899", "scanner": "scanner-primary", "fingerprint": "40d6227efd8337ff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d753635e4a4ed694", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/dedup-cache.ts:67"}, "properties": {"repobilityId": "443c4bb85c6e9830", "scanner": "scanner-primary", "fingerprint": "d753635e4a4ed694", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-20f3002b7def144a", "level": "note", "message": {"text": "Legacy-named symbol `ui_page_v1` in gateway/src/index.ts:1102"}, "properties": {"repobilityId": "de5c4dadcb2bba14", "scanner": "scanner-primary", "fingerprint": "20f3002b7def144a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f3c42cba0a38f89e", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/index.ts:300"}, "properties": {"repobilityId": "363c6c683a02444b", "scanner": "scanner-primary", "fingerprint": "f3c42cba0a38f89e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a817685d287c565a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/index.ts:1617"}, "properties": {"repobilityId": "b40833f593495d4d", "scanner": "scanner-primary", "fingerprint": "a817685d287c565a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f97361e378f03c8d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/fetch.ts:12"}, "properties": {"repobilityId": "3f6eb002d9b9656e", "scanner": "scanner-primary", "fingerprint": "f97361e378f03c8d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7af90c5484ee76f5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/credential-cache.ts:49"}, "properties": {"repobilityId": "a34fc6027648f8a2", "scanner": "scanner-primary", "fingerprint": "7af90c5484ee76f5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6d62140e51fc432f", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/auth-fallback-log-throttle.ts:1"}, "properties": {"repobilityId": "e9873d1adefafd74", "scanner": "scanner-primary", "fingerprint": "6d62140e51fc432f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8513aa75009dbe18", "level": "none", "message": {"text": "Commented-code block (8 lines) in gateway/src/remote-feature-flag-sync.ts:135"}, "properties": {"repobilityId": "2907c7fe4b80e73c", "scanner": "scanner-primary", "fingerprint": "8513aa75009dbe18", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a0a6f9db8a1fbe4d", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/__tests__/auto-approve-conversation-thresholds.test.ts:64"}, "properties": {"repobilityId": "4db367bd37f4fb5c", "scanner": "scanner-primary", "fingerprint": "a0a6f9db8a1fbe4d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-566f630b208e39a7", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/__tests__/slack-socket-mode-catchup.test.ts:371"}, "properties": {"repobilityId": "1b56f7a7fde8ca17", "scanner": "scanner-primary", "fingerprint": "566f630b208e39a7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-61fce3e2a4e56973", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/edge-auth.test.ts:214"}, "properties": {"repobilityId": "a0bc4dd6156c1dbb", "scanner": "scanner-primary", "fingerprint": "61fce3e2a4e56973", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-16c8d4c853c1c908", "level": "none", "message": {"text": "Commented-code block (7 lines) in gateway/src/__tests__/edge-auth.test.ts:418"}, "properties": {"repobilityId": "042ef4fd994b84b3", "scanner": "scanner-primary", "fingerprint": "16c8d4c853c1c908", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6e658fb7a1f99d27", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/push-schema-no-prompt.test.ts:13"}, "properties": {"repobilityId": "450aed0d7eb7b697", "scanner": "scanner-primary", "fingerprint": "6e658fb7a1f99d27", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b4f649d3e1006856", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/bash-risk-classifier.test.ts:35"}, "properties": {"repobilityId": "d0b4f5380336c71e", "scanner": "scanner-primary", "fingerprint": "b4f649d3e1006856", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ae396131ed542b1", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/contacts-control-plane-proxy.test.ts:397"}, "properties": {"repobilityId": "3e58c31fac78c354", "scanner": "scanner-primary", "fingerprint": "9ae396131ed542b1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0ddc183fce9865ba", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/auth-token-trust-proxy.test.ts:22"}, "properties": {"repobilityId": "3dc8d2909d073b76", "scanner": "scanner-primary", "fingerprint": "0ddc183fce9865ba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4de278819559ffb1", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/stt-stream-websocket.test.ts:19"}, "properties": {"repobilityId": "b6c2f09c39f37712", "scanner": "scanner-primary", "fingerprint": "4de278819559ffb1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-76d8df612ad5a98b", "level": "none", "message": {"text": "Commented-code block (8 lines) in gateway/src/__tests__/logger-retention.test.ts:18"}, "properties": {"repobilityId": "85855e70b0e928e6", "scanner": "scanner-primary", "fingerprint": "76d8df612ad5a98b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c2d34a688e9995ba", "level": "note", "message": {"text": "Legacy-named symbol `seedLegacy` in gateway/src/__tests__/data-migration-m0001-guardian-init-lock.test.ts:23"}, "properties": {"repobilityId": "16ae52aaefce1949", "scanner": "scanner-primary", "fingerprint": "c2d34a688e9995ba", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-919eea82b509a0d9", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/guardian-init-lockfile.test.ts:338"}, "properties": {"repobilityId": "8a002c6204a31251", "scanner": "scanner-primary", "fingerprint": "919eea82b509a0d9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a68d818c16de896a", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/actor-token-revocation.test.ts:112"}, "properties": {"repobilityId": "c5f1310a5c76cb37", "scanner": "scanner-primary", "fingerprint": "a68d818c16de896a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1810a7b6fbdafdc3", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/trust-rule-store.test.ts:9"}, "properties": {"repobilityId": "0bd5517d51e2976e", "scanner": "scanner-primary", "fingerprint": "1810a7b6fbdafdc3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8bfaea5c8f16ccfc", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/remote-feature-flag-sync.test.ts:42"}, "properties": {"repobilityId": "3d85ca483e934b96", "scanner": "scanner-primary", "fingerprint": "8bfaea5c8f16ccfc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6d927b967a6f98dc", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/remote-feature-flag-sync.test.ts:837"}, "properties": {"repobilityId": "0d1c68c828098f5d", "scanner": "scanner-primary", "fingerprint": "6d927b967a6f98dc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ff85812cca0b65e6", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/ipc-server-watchdog.test.ts:12"}, "properties": {"repobilityId": "489ba45fc21f4627", "scanner": "scanner-primary", "fingerprint": "ff85812cca0b65e6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-291333816aae96d4", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/route-schema-guard.test.ts:34"}, "properties": {"repobilityId": "1ea8bd415b4fc1b0", "scanner": "scanner-primary", "fingerprint": "291333816aae96d4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d36d11854518c895", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/feature-flags-route.test.ts:363"}, "properties": {"repobilityId": "03004510557bbbb1", "scanner": "scanner-primary", "fingerprint": "d36d11854518c895", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1f2a915e50d245b2", "level": "note", "message": {"text": "Legacy-named symbol `gateway_service_v1` in gateway/src/__tests__/twilio-relay-websocket.test.ts:22"}, "properties": {"repobilityId": "0010f16c933816cd", "scanner": "scanner-primary", "fingerprint": "1f2a915e50d245b2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-10542358d5311ad4", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/__tests__/nonbash-trust-rule-overrides.test.ts:449"}, "properties": {"repobilityId": "2a802157de518761", "scanner": "scanner-primary", "fingerprint": "10542358d5311ad4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d1357a46c5b0a807", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/credential-watcher-managed-bootstrap.test.ts:164"}, "properties": {"repobilityId": "74bb82b791335f2f", "scanner": "scanner-primary", "fingerprint": "d1357a46c5b0a807", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d8a05b15f4ac9d4a", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/privacy-config-route.test.ts:562"}, "properties": {"repobilityId": "72ea63674aaf27c4", "scanner": "scanner-primary", "fingerprint": "d8a05b15f4ac9d4a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7d09d0876e8bacdd", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/pair-device-bound.test.ts:145"}, "properties": {"repobilityId": "e336efde801a60d9", "scanner": "scanner-primary", "fingerprint": "7d09d0876e8bacdd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9e8db3133e2b2720", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/__tests__/slack-socket-mode-thread-tracking.test.ts:715"}, "properties": {"repobilityId": "b3041c33bf622771", "scanner": "scanner-primary", "fingerprint": "9e8db3133e2b2720", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-273591437197a18a", "level": "note", "message": {"text": "Legacy-named symbol `resolveOld` in gateway/src/__tests__/credential-cache.test.ts:277"}, "properties": {"repobilityId": "ee74e99d7ac10ee2", "scanner": "scanner-primary", "fingerprint": "273591437197a18a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-26fdda677757846d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/credential-cache.test.ts:332"}, "properties": {"repobilityId": "e250574cc3243b84", "scanner": "scanner-primary", "fingerprint": "26fdda677757846d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-11f3306c2e9d03af", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/live-voice-websocket.test.ts:34"}, "properties": {"repobilityId": "acf2087ec973e943", "scanner": "scanner-primary", "fingerprint": "11f3306c2e9d03af", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2234baf05cc51a75", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/edge-guardian-auth.test.ts:213"}, "properties": {"repobilityId": "8ddbaa1bf6895fd9", "scanner": "scanner-primary", "fingerprint": "2234baf05cc51a75", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f909fe8a7d7ec420", "level": "note", "message": {"text": "Legacy-named symbol `gateway_service_v1` in gateway/src/__tests__/twilio-media-websocket.test.ts:23"}, "properties": {"repobilityId": "a88f6e4b4ce0ff5d", "scanner": "scanner-primary", "fingerprint": "f909fe8a7d7ec420", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b9e70e6530d32ee1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/__tests__/credential-watcher.test.ts:298"}, "properties": {"repobilityId": "d32beb5fc6bf1528", "scanner": "scanner-primary", "fingerprint": "b9e70e6530d32ee1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8cc058d2e2db82fb", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/__tests__/runtime-proxy-auth.test.ts:29"}, "properties": {"repobilityId": "2bd13d95f200cdf7", "scanner": "scanner-primary", "fingerprint": "8cc058d2e2db82fb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e3dfec6606ba4a7a", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/ipc/risk-classification-handlers.test.ts:602"}, "properties": {"repobilityId": "a36ccd3bddd4f103", "scanner": "scanner-primary", "fingerprint": "e3dfec6606ba4a7a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d6ca1d1080666f8a", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/ipc/risk-classification-handlers.ts:235"}, "properties": {"repobilityId": "6a64bd37be807c37", "scanner": "scanner-primary", "fingerprint": "d6ca1d1080666f8a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-01e2d0562d2489b6", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/ipc/server.ts:117"}, "properties": {"repobilityId": "b8a95e66ef6b35a3", "scanner": "scanner-primary", "fingerprint": "01e2d0562d2489b6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d0675c33be6451d0", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/auth/scopes.ts:16"}, "properties": {"repobilityId": "d76dcec2a041a460", "scanner": "scanner-primary", "fingerprint": "d0675c33be6451d0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bd982812f0666cef", "level": "note", "message": {"text": "Legacy-named symbol `gateway_ingress_v1` in gateway/src/auth/token-exchange.ts:103"}, "properties": {"repobilityId": "b7f900e5fa207075", "scanner": "scanner-primary", "fingerprint": "bd982812f0666cef", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b585e100cdc48ffa", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/auth/guardian-refresh.ts:135"}, "properties": {"repobilityId": "00a6390861ca4a63", "scanner": "scanner-primary", "fingerprint": "b585e100cdc48ffa", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f8b50cc0add8f0df", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/auth/guardian-bootstrap.ts:472"}, "properties": {"repobilityId": "5de56ec87e54da7e", "scanner": "scanner-primary", "fingerprint": "f8b50cc0add8f0df", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6b58fb79a48b9de2", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/auth/types.ts:13"}, "properties": {"repobilityId": "0f9e8ba2e1b86d36", "scanner": "scanner-primary", "fingerprint": "6b58fb79a48b9de2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ee260d026efac641", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/verification/outbound-voice-verification-sync.ts:87"}, "properties": {"repobilityId": "1c9cd512f985e640", "scanner": "scanner-primary", "fingerprint": "ee260d026efac641", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d43ec41e3b63ab0a", "level": "none", "message": {"text": "Commented-code block (9 lines) in gateway/src/http/middleware/auth.ts:37"}, "properties": {"repobilityId": "993fbcc59dca1bff", "scanner": "scanner-primary", "fingerprint": "d43ec41e3b63ab0a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ccc8336b6db81110", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/http/routes/channel-verification-session-proxy.ts:169"}, "properties": {"repobilityId": "a7002e910d73ec7f", "scanner": "scanner-primary", "fingerprint": "ccc8336b6db81110", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6c7e6fad7aebdd07", "level": "none", "message": {"text": "Commented-code block (7 lines) in gateway/src/http/routes/ipc-runtime-proxy.ts:108"}, "properties": {"repobilityId": "2a71dee60aaceba5", "scanner": "scanner-primary", "fingerprint": "6c7e6fad7aebdd07", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6ca77ee5bc23ba3d", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/telegram-webhook.ts:261"}, "properties": {"repobilityId": "df077df41d10d43f", "scanner": "scanner-primary", "fingerprint": "6ca77ee5bc23ba3d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-74c5f504c2e44d6f", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/contact-prompt.ts:180"}, "properties": {"repobilityId": "06afb817a63fc99b", "scanner": "scanner-primary", "fingerprint": "74c5f504c2e44d6f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ef4ffc8b973d45ed", "level": "none", "message": {"text": "Commented-code block (8 lines) in gateway/src/http/routes/auto-approve-thresholds.ts:158"}, "properties": {"repobilityId": "5a923c59cdadd9fc", "scanner": "scanner-primary", "fingerprint": "ef4ffc8b973d45ed", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7a4f6b65337f5b57", "level": "none", "message": {"text": "Commented-code block (7 lines) in gateway/src/http/routes/contacts-control-plane-proxy.ts:329"}, "properties": {"repobilityId": "8128fa438d4c9bc3", "scanner": "scanner-primary", "fingerprint": "7a4f6b65337f5b57", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5182268b79ce89b9", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/runtime-proxy.ts:55"}, "properties": {"repobilityId": "81c2a15920c08fd8", "scanner": "scanner-primary", "fingerprint": "5182268b79ce89b9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6f03111a554f4cf5", "level": "none", "message": {"text": "Commented-code block (7 lines) in gateway/src/http/routes/migration-proxy.ts:270"}, "properties": {"repobilityId": "e65c771a701fa43a", "scanner": "scanner-primary", "fingerprint": "6f03111a554f4cf5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-120c17bbf4a56eb4", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/mailgun-webhook.ts:448"}, "properties": {"repobilityId": "14df258109d6ffa9", "scanner": "scanner-primary", "fingerprint": "120c17bbf4a56eb4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-879f0336a7b95676", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/http/routes/mailgun-webhook.ts:402"}, "properties": {"repobilityId": "bf06fdb56bbd57d3", "scanner": "scanner-primary", "fingerprint": "879f0336a7b95676", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3452f62951f23f98", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/http/routes/oauth-callback.ts:109"}, "properties": {"repobilityId": "3fcf63e01690e036", "scanner": "scanner-primary", "fingerprint": "3452f62951f23f98", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fa834c1018cae6e6", "level": "none", "message": {"text": "Commented-code block (7 lines) in gateway/src/http/routes/guardian-channel-create.ts:99"}, "properties": {"repobilityId": "959b7d877af160cc", "scanner": "scanner-primary", "fingerprint": "fa834c1018cae6e6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-536dc1e57ba8f2f3", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/http/routes/pair.ts:20"}, "properties": {"repobilityId": "860c807c756e9c17", "scanner": "scanner-primary", "fingerprint": "536dc1e57ba8f2f3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f65afe27a97d7a0b", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/http/routes/pair.ts:246"}, "properties": {"repobilityId": "75f8fb30a78ef11a", "scanner": "scanner-primary", "fingerprint": "f65afe27a97d7a0b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d22ac400ceaa7ea2", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/resend-webhook.ts:531"}, "properties": {"repobilityId": "3dfe4c1f6c6f88ac", "scanner": "scanner-primary", "fingerprint": "d22ac400ceaa7ea2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b89447dbbdc522f5", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/whatsapp-webhook.ts:320"}, "properties": {"repobilityId": "2bfe20618bf946a9", "scanner": "scanner-primary", "fingerprint": "b89447dbbdc522f5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ef59d10d5056f962", "level": "none", "message": {"text": "Commented-code block (12 lines) in gateway/src/http/routes/log-tail.test.ts:280"}, "properties": {"repobilityId": "e0a27fcd0f9ceb62", "scanner": "scanner-primary", "fingerprint": "ef59d10d5056f962", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-027122421f1d7735", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/http/routes/log-tail.ts:27"}, "properties": {"repobilityId": "5614d003fb83580b", "scanner": "scanner-primary", "fingerprint": "027122421f1d7735", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2e2db98c48b8f02a", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/http/routes/twilio-voice-webhook.ts:147"}, "properties": {"repobilityId": "e44968554c5253d7", "scanner": "scanner-primary", "fingerprint": "2e2db98c48b8f02a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d54abd99756908cf", "level": "none", "message": {"text": "Commented-code block (7 lines) in gateway/src/http/routes/privacy-config.ts:206"}, "properties": {"repobilityId": "6be4133894169e16", "scanner": "scanner-primary", "fingerprint": "d54abd99756908cf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-066ef5f1135aa99e", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/http/routes/ipc-runtime-proxy.test.ts:371"}, "properties": {"repobilityId": "df196e43d899ebf9", "scanner": "scanner-primary", "fingerprint": "066ef5f1135aa99e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-84c15d6a1f8625b3", "level": "note", "message": {"text": "Legacy-named symbol `actor_client_v1` in gateway/src/http/routes/auth-token.ts:122"}, "properties": {"repobilityId": "1a1aeae3ced873ec", "scanner": "scanner-primary", "fingerprint": "84c15d6a1f8625b3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5a05a31f2fa2ad6e", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/http/routes/live-voice-websocket.ts:22"}, "properties": {"repobilityId": "8890b4a371e6aedd", "scanner": "scanner-primary", "fingerprint": "5a05a31f2fa2ad6e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b40e804f26ee75c3", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/backup/paths.ts:86"}, "properties": {"repobilityId": "138259a679d1d6e3", "scanner": "scanner-primary", "fingerprint": "b40e804f26ee75c3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-273b34a0a3783abc", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/risk/web-risk-classifier.test.ts:126"}, "properties": {"repobilityId": "7984ce4908019dc1", "scanner": "scanner-primary", "fingerprint": "273b34a0a3783abc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-43f5806217259bdd", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/risk/web-risk-classifier.test.ts:44"}, "properties": {"repobilityId": "53989b740b7912ca", "scanner": "scanner-primary", "fingerprint": "43f5806217259bdd", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9ce1fd641a28c5f8", "level": "none", "message": {"text": "Commented-code block (7 lines) in gateway/src/risk/directory-scope.test.ts:144"}, "properties": {"repobilityId": "f85670f5c56f69c3", "scanner": "scanner-primary", "fingerprint": "9ce1fd641a28c5f8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9cec95f533713f3d", "level": "none", "message": {"text": "Commented-code block (17 lines) in gateway/src/risk/directory-scope.ts:39"}, "properties": {"repobilityId": "3b946be2964b7fdf", "scanner": "scanner-primary", "fingerprint": "9cec95f533713f3d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0e1f8bab7bd0ea45", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/risk/skill-risk-classifier.ts:180"}, "properties": {"repobilityId": "a2b30b39ce43a9cc", "scanner": "scanner-primary", "fingerprint": "0e1f8bab7bd0ea45", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f4f274a99117f9cb", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/risk/risk-classifier-parity.test.ts:100"}, "properties": {"repobilityId": "9d4f460c4d343136", "scanner": "scanner-primary", "fingerprint": "f4f274a99117f9cb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1d85e94a6043eeef", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/risk/shell-parser.test.ts:716"}, "properties": {"repobilityId": "98582c9442db1a98", "scanner": "scanner-primary", "fingerprint": "1d85e94a6043eeef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b4ef67d4247bc9da", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/risk/schedule-risk-classifier.ts:52"}, "properties": {"repobilityId": "657c4f6e4a6cd1e9", "scanner": "scanner-primary", "fingerprint": "b4ef67d4247bc9da", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2c9c6a82e1975a7d", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/risk/file-risk-classifier.ts:26"}, "properties": {"repobilityId": "1ea67828f32982c0", "scanner": "scanner-primary", "fingerprint": "2c9c6a82e1975a7d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0ee31d540b87058c", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/risk/shell-parser.ts:126"}, "properties": {"repobilityId": "dd2a240a3701422b", "scanner": "scanner-primary", "fingerprint": "0ee31d540b87058c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e3dab00e0eb48dcc", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/risk/shell-identity.ts:139"}, "properties": {"repobilityId": "550f4e6b80deef7e", "scanner": "scanner-primary", "fingerprint": "e3dab00e0eb48dcc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b61f03aa0ed31a9b", "level": "none", "message": {"text": "Commented-code block (9 lines) in gateway/src/risk/bash-risk-classifier.ts:420"}, "properties": {"repobilityId": "66efea766e3e37cf", "scanner": "scanner-primary", "fingerprint": "b61f03aa0ed31a9b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b6eec04bf79736ea", "level": "none", "message": {"text": "Commented-code block (8 lines) in gateway/src/risk/web-risk-classifier.ts:40"}, "properties": {"repobilityId": "c955e1c122527fbf", "scanner": "scanner-primary", "fingerprint": "b6eec04bf79736ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-00ab809cfe2e9032", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 gateway/src/risk/web-risk-classifier.ts:78"}, "properties": {"repobilityId": "fca3a2cddbad2ab4", "scanner": "scanner-primary", "fingerprint": "00ab809cfe2e9032", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e427c791d4f62c88", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/runtime/client.ts:467"}, "properties": {"repobilityId": "41c3318eaa4586b9", "scanner": "scanner-primary", "fingerprint": "e427c791d4f62c88", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c0310690fe16135a", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/db/schema.ts:24"}, "properties": {"repobilityId": "4524fdeb6a754356", "scanner": "scanner-primary", "fingerprint": "c0310690fe16135a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2d33aace11694887", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/db/data-migrations/m0001-guardian-init-lock.ts:29"}, "properties": {"repobilityId": "f9d63c8824c31cac", "scanner": "scanner-primary", "fingerprint": "2d33aace11694887", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-15c8c205cb523ae3", "level": "none", "message": {"text": "Commented-code block (5 lines) in gateway/src/slack/normalize.ts:810"}, "properties": {"repobilityId": "af0350886616ebe4", "scanner": "scanner-primary", "fingerprint": "15c8c205cb523ae3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-36c5b29029ff0ea7", "level": "none", "message": {"text": "Commented-code block (6 lines) in gateway/src/slack/socket-mode.ts:631"}, "properties": {"repobilityId": "6f710628ddbd07b9", "scanner": "scanner-primary", "fingerprint": "36c5b29029ff0ea7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-53a9784c91584e4b", "level": "none", "message": {"text": "Commented-code block (6 lines) in evals/benchmarks/longmemeval-v2/src/run.ts:117"}, "properties": {"repobilityId": "18ea2a6fdf37bd89", "scanner": "scanner-primary", "fingerprint": "53a9784c91584e4b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-46c37192e6ad2424", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/benchmarks/longmemeval-v2/src/trajectory-reader.ts:226"}, "properties": {"repobilityId": "e729bd51a9af836e", "scanner": "scanner-primary", "fingerprint": "46c37192e6ad2424", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6e5cee71e6f4a8ec", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/benchmarks/longmemeval-v2/src/runner.ts:345"}, "properties": {"repobilityId": "182f5e26cd00600d", "scanner": "scanner-primary", "fingerprint": "6e5cee71e6f4a8ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d27a119060bc3797", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/benchmarks/longmemeval-v2/src/__tests__/loader.test.ts:159"}, "properties": {"repobilityId": "0493ea1b44066534", "scanner": "scanner-primary", "fingerprint": "d27a119060bc3797", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7bd5f8bd3f192aee", "level": "none", "message": {"text": "Commented-code block (7 lines) in evals/benchmarks/longmemeval-v2/src/__tests__/trajectory-reader.test.ts:145"}, "properties": {"repobilityId": "b6b4d95df5e4f57f", "scanner": "scanner-primary", "fingerprint": "7bd5f8bd3f192aee", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-93d3b2b5d04c83d6", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/benchmarks/longmemeval-v2/src/__tests__/runner.test.ts:31"}, "properties": {"repobilityId": "e056c667aa6e50b0", "scanner": "scanner-primary", "fingerprint": "93d3b2b5d04c83d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-45dc7917ea1d66b9", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/benchmarks/personal-intelligence/tests/timeline-recall/metrics/assistant-cost.ts:29"}, "properties": {"repobilityId": "03b49308f39de53e", "scanner": "scanner-primary", "fingerprint": "45dc7917ea1d66b9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c06877e909729b51", "level": "none", "message": {"text": "Commented-code block (12 lines) in evals/benchmarks/personal-intelligence/src/run.ts:125"}, "properties": {"repobilityId": "7b41fbfe789068e8", "scanner": "scanner-primary", "fingerprint": "c06877e909729b51", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-70349a5c5bd33bcb", "level": "none", "message": {"text": "Commented-code block (6 lines) in evals/src/commands/run.ts:116"}, "properties": {"repobilityId": "755689d2277010be", "scanner": "scanner-primary", "fingerprint": "70349a5c5bd33bcb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec70124721587754", "level": "none", "message": {"text": "Commented-code block (6 lines) in evals/src/commands/__tests__/server.test.ts:195"}, "properties": {"repobilityId": "3cf17ca77bf572a1", "scanner": "scanner-primary", "fingerprint": "ec70124721587754", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7f8529c6eb85a9b0", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/src/lib/report-data.ts:542"}, "properties": {"repobilityId": "5b35db1a125a5046", "scanner": "scanner-primary", "fingerprint": "7f8529c6eb85a9b0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d3f2c13f293ff34a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 evals/src/lib/llm-judge.ts:63"}, "properties": {"repobilityId": "374ac5bebcc046f9", "scanner": "scanner-primary", "fingerprint": "d3f2c13f293ff34a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f779b7104125e121", "level": "none", "message": {"text": "Commented-code block (6 lines) in evals/src/lib/pricing.ts:103"}, "properties": {"repobilityId": "1d53d6662ed5a637", "scanner": "scanner-primary", "fingerprint": "f779b7104125e121", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-590d2c009483c366", "level": "none", "message": {"text": "Commented-code block (6 lines) in evals/src/lib/adapters/vellum.ts:278"}, "properties": {"repobilityId": "8fdd82f7f2073a21", "scanner": "scanner-primary", "fingerprint": "590d2c009483c366", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ed4e692410dd3705", "level": "none", "message": {"text": "Commented-code block (10 lines) in evals/src/lib/adapters/hermes.ts:569"}, "properties": {"repobilityId": "6bf85a1a5e33fbf6", "scanner": "scanner-primary", "fingerprint": "ed4e692410dd3705", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2cd32d9445b03b58", "level": "none", "message": {"text": "Commented-code block (7 lines) in evals/src/lib/adapters/__tests__/vellum-app-page.test.ts:5"}, "properties": {"repobilityId": "3c31c093d8ce0812", "scanner": "scanner-primary", "fingerprint": "2cd32d9445b03b58", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-930cf82dd0fa9229", "level": "none", "message": {"text": "Commented-code block (6 lines) in evals/src/lib/__tests__/report-data.test.ts:339"}, "properties": {"repobilityId": "040fcdddb27ba0d7", "scanner": "scanner-primary", "fingerprint": "930cf82dd0fa9229", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2d0efa406908c73e", "level": "none", "message": {"text": "Commented-code block (8 lines) in evals/src/lib/__tests__/vellum-adapter.test.ts:60"}, "properties": {"repobilityId": "acdb65d5e7519296", "scanner": "scanner-primary", "fingerprint": "2d0efa406908c73e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e7803a8e9f3a2bbe", "level": "none", "message": {"text": "Commented-code block (7 lines) in evals/src/lib/__tests__/docker-jail.test.ts:236"}, "properties": {"repobilityId": "d44e866a1abdc6eb", "scanner": "scanner-primary", "fingerprint": "e7803a8e9f3a2bbe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1a0e15b1129a2f38", "level": "none", "message": {"text": "Commented-code block (6 lines) in evals/src/lib/__tests__/user-simulator.test.ts:207"}, "properties": {"repobilityId": "ac6a8da6b528a126", "scanner": "scanner-primary", "fingerprint": "1a0e15b1129a2f38", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-caedf81088caa6ea", "level": "none", "message": {"text": "Commented-code block (7 lines) in evals/src/lib/__tests__/hermes-adapter.test.ts:334"}, "properties": {"repobilityId": "35d486f42a5a90a5", "scanner": "scanner-primary", "fingerprint": "caedf81088caa6ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-98bc2fdd73f68bbf", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/src/lib/__tests__/pricing.test.ts:201"}, "properties": {"repobilityId": "d602393dce4fac03", "scanner": "scanner-primary", "fingerprint": "98bc2fdd73f68bbf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b3e3b748a722f690", "level": "none", "message": {"text": "Commented-code block (6 lines) in evals/src/lib/__tests__/benchmark.test.ts:44"}, "properties": {"repobilityId": "27dbe9770aeb60fe", "scanner": "scanner-primary", "fingerprint": "b3e3b748a722f690", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1f03cc34752b07da", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/src/lib/__tests__/report-html.test.ts:668"}, "properties": {"repobilityId": "19f998bbb8cfe93c", "scanner": "scanner-primary", "fingerprint": "1f03cc34752b07da", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-834150802d4e9675", "level": "none", "message": {"text": "Commented-code block (7 lines) in evals/src/lib/runner/run-once.ts:382"}, "properties": {"repobilityId": "75af9f31769761ce", "scanner": "scanner-primary", "fingerprint": "834150802d4e9675", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c55e8825f57b9473", "level": "none", "message": {"text": "Commented-code block (9 lines) in evals/src/lib/runner/progress-lifecycle.ts:113"}, "properties": {"repobilityId": "db3ab3a234bef667", "scanner": "scanner-primary", "fingerprint": "c55e8825f57b9473", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-52cd5845b567aff1", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/src/lib/runner/event-collector.ts:51"}, "properties": {"repobilityId": "b4c4a1b300b2eef0", "scanner": "scanner-primary", "fingerprint": "52cd5845b567aff1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3000ee6bb3067916", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/src/lib/runner/run-ingest-ask.ts:261"}, "properties": {"repobilityId": "406e717b5c9273f6", "scanner": "scanner-primary", "fingerprint": "3000ee6bb3067916", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6d6f180d5c8c6578", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/src/lib/runner/__tests__/run-once.test.ts:20"}, "properties": {"repobilityId": "52cf0e18ffcb7067", "scanner": "scanner-primary", "fingerprint": "6d6f180d5c8c6578", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-21a3fff3f60aa291", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/src/lib/simulator/user-simulator.ts:165"}, "properties": {"repobilityId": "4fd97e98bc27ec56", "scanner": "scanner-primary", "fingerprint": "21a3fff3f60aa291", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-97ba60b46774946f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 evals/src/lib/simulator/user-simulator.ts:446"}, "properties": {"repobilityId": "45285ac3e29c6421", "scanner": "scanner-primary", "fingerprint": "97ba60b46774946f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e4021c19e273a91c", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/src/lib/egress/docker-jail.ts:378"}, "properties": {"repobilityId": "44e6af16fcb24818", "scanner": "scanner-primary", "fingerprint": "e4021c19e273a91c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf6a894598da4ce1", "level": "none", "message": {"text": "Commented-code block (6 lines) in evals/src/lib/egress/recording/addon.py:80"}, "properties": {"repobilityId": "9daef3b5fe7f6f01", "scanner": "scanner-primary", "fingerprint": "bf6a894598da4ce1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2e4163fb51effce4", "level": "none", "message": {"text": "Commented-code block (6 lines) in evals/src/lib/egress/recording/test_mock_github_handler.py:131"}, "properties": {"repobilityId": "389616a8992723e2", "scanner": "scanner-primary", "fingerprint": "2e4163fb51effce4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ecdceb8c251c12c", "level": "none", "message": {"text": "Commented-code block (9 lines) in evals/src/lib/egress/recording/usage_parser.py:224"}, "properties": {"repobilityId": "273355c0b0af81b1", "scanner": "scanner-primary", "fingerprint": "9ecdceb8c251c12c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-237d906ec1af0a87", "level": "none", "message": {"text": "Commented-code block (5 lines) in evals/src/lib/egress/recording/__tests__/apply-recording-jail.test.ts:104"}, "properties": {"repobilityId": "511cfa61482e45f6", "scanner": "scanner-primary", "fingerprint": "237d906ec1af0a87", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ce322eddeb94db08", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 evals/src/lib/egress/connection-telemetry/connection_tailer.py:169"}, "properties": {"repobilityId": "216d9d062c79fea7", "scanner": "scanner-primary", "fingerprint": "ce322eddeb94db08", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-709cbdc9c4df412e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/outlook/scripts/outlook-manage.ts:744"}, "properties": {"repobilityId": "4dbc24df8940f42a", "scanner": "scanner-primary", "fingerprint": "709cbdc9c4df412e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a323538578ed3772", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/outlook-calendar/scripts/outlook-cal.ts:242"}, "properties": {"repobilityId": "7d4037f8afc8e10c", "scanner": "scanner-primary", "fingerprint": "a323538578ed3772", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a9221766b4336e2d", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 skills/vellum-github-app-setup/scripts/create-github-app.py:432"}, "properties": {"repobilityId": "4b7d1c30b16cd35a", "scanner": "scanner-primary", "fingerprint": "a9221766b4336e2d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5d8f0da45a349128", "level": "note", "message": {"text": "Stub function `log_message` (body is just `pass`/`return`) \u2014 skills/vellum-github-app-setup/scripts/create-github-app.py:480"}, "properties": {"repobilityId": "9bd7ffbc14fe4160", "scanner": "scanner-primary", "fingerprint": "5d8f0da45a349128", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-affc445555c74358", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/doordash/scripts/doordash-cli.ts:40"}, "properties": {"repobilityId": "c6347bc2c134efdd", "scanner": "scanner-primary", "fingerprint": "affc445555c74358", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5d5f0138f81cb390", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/doordash/scripts/__tests__/doordash-client.test.ts:110"}, "properties": {"repobilityId": "4bd2fce7595e5b61", "scanner": "scanner-primary", "fingerprint": "5d5f0138f81cb390", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-10ee5909a9df20f4", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/doordash/scripts/lib/client.ts:108"}, "properties": {"repobilityId": "9896a019fe97a3d9", "scanner": "scanner-primary", "fingerprint": "10ee5909a9df20f4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-fee99c3bfa92db92", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/doordash/scripts/lib/shared/network-recorder.ts:127"}, "properties": {"repobilityId": "13a4c6d23a1e40dc", "scanner": "scanner-primary", "fingerprint": "fee99c3bfa92db92", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7b3197206732032a", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/entrypoint.ts:156"}, "properties": {"repobilityId": "9e168d36e4f54ea1", "scanner": "scanner-primary", "fingerprint": "7b3197206732032a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7096e88775bad921", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/register.ts:74"}, "properties": {"repobilityId": "6867c9f53baa8101", "scanner": "scanner-primary", "fingerprint": "7096e88775bad921", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-39dd3bdc505aff99", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/__tests__/entrypoint.test.ts:302"}, "properties": {"repobilityId": "425e377f2f3af6f8", "scanner": "scanner-primary", "fingerprint": "39dd3bdc505aff99", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b343c1a68983f589", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/__tests__/register.test.ts:30"}, "properties": {"repobilityId": "ce4cd35fa4afe18e", "scanner": "scanner-primary", "fingerprint": "b343c1a68983f589", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7bc92874a9f9f7f3", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/__tests__/build-test-host.ts:266"}, "properties": {"repobilityId": "4572d3111fed711e", "scanner": "scanner-primary", "fingerprint": "7bc92874a9f9f7f3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-59e7a019ed48de0c", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/nmh-shim.test.ts:294"}, "properties": {"repobilityId": "459cfa5ed199633e", "scanner": "scanner-primary", "fingerprint": "59e7a019ed48de0c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b938c899bc33cb10", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/avatar-http-server.test.ts:502"}, "properties": {"repobilityId": "dbc483180efc4ae7", "scanner": "scanner-primary", "fingerprint": "b938c899bc33cb10", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-30122365eca4e81e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/avatar-http-server.test.ts:113"}, "properties": {"repobilityId": "335899b210a6b02f", "scanner": "scanner-primary", "fingerprint": "30122365eca4e81e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-806228f29e1526df", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/bot/__tests__/socket-server.test.ts:499"}, "properties": {"repobilityId": "da6bbf8771cd6e1d", "scanner": "scanner-primary", "fingerprint": "806228f29e1526df", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6a5ca56c62b92889", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/chrome-launcher-avatar-flag.test.ts:266"}, "properties": {"repobilityId": "c54c9a6c4fe18030", "scanner": "scanner-primary", "fingerprint": "6a5ca56c62b92889", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8463a3aa1b943fa9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/voice-loopback.test.ts:194"}, "properties": {"repobilityId": "2b168fc7db335bcc", "scanner": "scanner-primary", "fingerprint": "8463a3aa1b943fa9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-396c44a6078a0365", "level": "none", "message": {"text": "Commented-code block (7 lines) in skills/meet-join/bot/__tests__/main.test.ts:727"}, "properties": {"repobilityId": "94010dbc80d8478e", "scanner": "scanner-primary", "fingerprint": "396c44a6078a0365", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-523f8f0a4f2bc7fd", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/audio-playback.test.ts:424"}, "properties": {"repobilityId": "11d24e0c5006d170", "scanner": "scanner-primary", "fingerprint": "523f8f0a4f2bc7fd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b6336a957f685118", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/audio-playback.test.ts:275"}, "properties": {"repobilityId": "36ccbe03499e3c5e", "scanner": "scanner-primary", "fingerprint": "b6336a957f685118", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8a35482dd3dd76fe", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/avatar-lipsync.test.ts:185"}, "properties": {"repobilityId": "557b5244bc13ab59", "scanner": "scanner-primary", "fingerprint": "8a35482dd3dd76fe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-16ee9f49e03fd7db", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/send-chat-endpoint.test.ts:66"}, "properties": {"repobilityId": "888e8bb5e2449fc9", "scanner": "scanner-primary", "fingerprint": "16ee9f49e03fd7db", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b803dbc5a8377692", "level": "none", "message": {"text": "Commented-code block (7 lines) in skills/meet-join/bot/__tests__/xdotool-type.test.ts:93"}, "properties": {"repobilityId": "69247aa73568288a", "scanner": "scanner-primary", "fingerprint": "b803dbc5a8377692", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6309efa857762692", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/bot/__tests__/avatar-registry.test.ts:245"}, "properties": {"repobilityId": "d040f3f02909a915", "scanner": "scanner-primary", "fingerprint": "6309efa857762692", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-453d5588f89ff5ac", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/http-server.test.ts:80"}, "properties": {"repobilityId": "6db04f0596edd472", "scanner": "scanner-primary", "fingerprint": "453d5588f89ff5ac", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a0a311bbd2044a17", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/play-audio-teardown.test.ts:308"}, "properties": {"repobilityId": "dbc125d8461ff7d0", "scanner": "scanner-primary", "fingerprint": "a0a311bbd2044a17", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9b249804df35e9bc", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/bot/__tests__/play-audio-teardown.test.ts:224"}, "properties": {"repobilityId": "490e457f4d49ea03", "scanner": "scanner-primary", "fingerprint": "9b249804df35e9bc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-866ca198b83856f1", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/avatar-teardown.test.ts:216"}, "properties": {"repobilityId": "4c913879b72b0951", "scanner": "scanner-primary", "fingerprint": "866ca198b83856f1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7ee385a560e4a7c7", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/__tests__/talking-head-renderer.test.ts:162"}, "properties": {"repobilityId": "32b21c143a7aa24d", "scanner": "scanner-primary", "fingerprint": "7ee385a560e4a7c7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e1b7fadf9c04209a", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/src/main.ts:444"}, "properties": {"repobilityId": "afa1e99e177e7686", "scanner": "scanner-primary", "fingerprint": "e1b7fadf9c04209a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1cf9b2c8ccc73b90", "level": "none", "message": {"text": "Commented-code block (8 lines) in skills/meet-join/bot/src/media/audio-capture.ts:347"}, "properties": {"repobilityId": "94247e1f01b9fa1e", "scanner": "scanner-primary", "fingerprint": "1cf9b2c8ccc73b90", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1a8363731287da54", "level": "none", "message": {"text": "Commented-code block (7 lines) in skills/meet-join/bot/src/media/audio-playback.ts:235"}, "properties": {"repobilityId": "bb904a1e5dc71dc3", "scanner": "scanner-primary", "fingerprint": "1a8363731287da54", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-716cdd7f85fb1cf4", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/src/media/avatar/device-writer.ts:129"}, "properties": {"repobilityId": "7d4126bef81d8e71", "scanner": "scanner-primary", "fingerprint": "716cdd7f85fb1cf4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b3fb997d08a6db0a", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/src/media/avatar/noop-renderer.ts:90"}, "properties": {"repobilityId": "0f462a4100d0a64d", "scanner": "scanner-primary", "fingerprint": "b3fb997d08a6db0a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ecefd0c7d466e40", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/src/media/avatar/index.ts:48"}, "properties": {"repobilityId": "2a11276f03e81266", "scanner": "scanner-primary", "fingerprint": "3ecefd0c7d466e40", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7bf60df8ff5f5928", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/bot/src/media/avatar/talking-head/renderer.ts:260"}, "properties": {"repobilityId": "f71f45234ec3e098", "scanner": "scanner-primary", "fingerprint": "7bf60df8ff5f5928", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9467262f53e7edf7", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/src/native-messaging/camera-channel.ts:107"}, "properties": {"repobilityId": "bf41dcdc9730912d", "scanner": "scanner-primary", "fingerprint": "9467262f53e7edf7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b0467c13315bafff", "level": "none", "message": {"text": "Commented-code block (7 lines) in skills/meet-join/bot/src/control/http-server.ts:338"}, "properties": {"repobilityId": "84d4cfc7c6ccc189", "scanner": "scanner-primary", "fingerprint": "b0467c13315bafff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3d351741a97eb3cd", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/bot/src/browser/chrome-launcher.ts:204"}, "properties": {"repobilityId": "5905909c3c728507", "scanner": "scanner-primary", "fingerprint": "3d351741a97eb3cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c14c3dbebfbeb06e", "level": "none", "message": {"text": "Commented-code block (7 lines) in skills/meet-join/bot/src/browser/xdotool-type.ts:93"}, "properties": {"repobilityId": "71eb5e03a84f1046", "scanner": "scanner-primary", "fingerprint": "c14c3dbebfbeb06e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-731d947d57b91217", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/scripts/emit-manifest.ts:89"}, "properties": {"repobilityId": "c5f63e284fe7b624", "scanner": "scanner-primary", "fingerprint": "731d947d57b91217", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2b0e8a0c936fab2f", "level": "none", "message": {"text": "Commented-code block (8 lines) in skills/meet-join/meet-controller-ext/src/handle-send-chat.ts:49"}, "properties": {"repobilityId": "fe17d82d780d1ac6", "scanner": "scanner-primary", "fingerprint": "2b0e8a0c936fab2f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fa154cb98ed5bf41", "level": "none", "message": {"text": "Commented-code block (7 lines) in skills/meet-join/meet-controller-ext/src/content.ts:265"}, "properties": {"repobilityId": "f07a738437ea8de7", "scanner": "scanner-primary", "fingerprint": "fa154cb98ed5bf41", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6311ed2e9d42d658", "level": "none", "message": {"text": "Commented-code block (7 lines) in skills/meet-join/meet-controller-ext/src/background.ts:39"}, "properties": {"repobilityId": "8c03e329bbf417b3", "scanner": "scanner-primary", "fingerprint": "6311ed2e9d42d658", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-829fef56ba6f5f0e", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/content-bridge.test.ts:174"}, "properties": {"repobilityId": "f6dfa2eeae21f014", "scanner": "scanner-primary", "fingerprint": "829fef56ba6f5f0e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-70f7fb8b9e2a490c", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/content-camera.test.ts:108"}, "properties": {"repobilityId": "e5eac94684f5a8af", "scanner": "scanner-primary", "fingerprint": "70f7fb8b9e2a490c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6f726b9a0f4c2a5a", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/content-send-chat.test.ts:260"}, "properties": {"repobilityId": "49110e24a72334eb", "scanner": "scanner-primary", "fingerprint": "6f726b9a0f4c2a5a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3fb6dc61bff513fe", "level": "none", "message": {"text": "Commented-code block (11 lines) in skills/meet-join/meet-controller-ext/src/__tests__/join.test.ts:80"}, "properties": {"repobilityId": "85a0695ccff4b1cf", "scanner": "scanner-primary", "fingerprint": "3fb6dc61bff513fe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7f2566d1bd9fe8be", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/participants.test.ts:269"}, "properties": {"repobilityId": "db3d55ca5c5cac58", "scanner": "scanner-primary", "fingerprint": "7f2566d1bd9fe8be", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b72cf68d08a6e6d4", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/__tests__/camera-feature.test.ts:196"}, "properties": {"repobilityId": "dccbca23a1cd25cc", "scanner": "scanner-primary", "fingerprint": "b72cf68d08a6e6d4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e72128016c871a1f", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/meet-controller-ext/src/__tests__/chat.test.ts:84"}, "properties": {"repobilityId": "6141e6a512cedd4c", "scanner": "scanner-primary", "fingerprint": "e72128016c871a1f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-49da3a11b7ff5d84", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/messaging/content-bridge.ts:34"}, "properties": {"repobilityId": "9685f11d2a173857", "scanner": "scanner-primary", "fingerprint": "49da3a11b7ff5d84", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-589fa308e6b05a6f", "level": "none", "message": {"text": "Commented-code block (7 lines) in skills/meet-join/meet-controller-ext/src/avatar/avatar.ts:243"}, "properties": {"repobilityId": "6c539dcaf29a205e", "scanner": "scanner-primary", "fingerprint": "589fa308e6b05a6f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-81bb5d793833b93b", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/meet-controller-ext/src/dom/selectors.ts:342"}, "properties": {"repobilityId": "e1e9fbbd51c26aa1", "scanner": "scanner-primary", "fingerprint": "81bb5d793833b93b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d976d20943017dbf", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/dom/__tests__/selectors.test.ts:177"}, "properties": {"repobilityId": "11391c4820780ff9", "scanner": "scanner-primary", "fingerprint": "d976d20943017dbf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c7705f1674519f13", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/meet-controller-ext/src/features/camera.ts:192"}, "properties": {"repobilityId": "2d4e5aab0f11ee13", "scanner": "scanner-primary", "fingerprint": "c7705f1674519f13", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4ab4cbd3f1379720", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/meet-controller-ext/src/features/participants.ts:174"}, "properties": {"repobilityId": "3674e06b5023a958", "scanner": "scanner-primary", "fingerprint": "4ab4cbd3f1379720", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e46cb54cfe0a56d6", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/meet-controller-ext/src/features/join.ts:189"}, "properties": {"repobilityId": "709e384a76adef52", "scanner": "scanner-primary", "fingerprint": "e46cb54cfe0a56d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-14800193966f06af", "level": "none", "message": {"text": "Commented-code block (9 lines) in skills/meet-join/meet-controller-ext/src/features/chat.ts:192"}, "properties": {"repobilityId": "94ca0238b4482d52", "scanner": "scanner-primary", "fingerprint": "14800193966f06af", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8c86b715782bef9a", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/routes/meet-internal.ts:59"}, "properties": {"repobilityId": "fed4d970460f0b3c", "scanner": "scanner-primary", "fingerprint": "8c86b715782bef9a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5f1b62e9d32ca18", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/speaker-resolver.ts:84"}, "properties": {"repobilityId": "f4571d6a9cf9c79d", "scanner": "scanner-primary", "fingerprint": "f5f1b62e9d32ca18", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a304ccd708c32eea", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/tts-bridge.ts:45"}, "properties": {"repobilityId": "d3533ef0e8c6640f", "scanner": "scanner-primary", "fingerprint": "a304ccd708c32eea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3e49c083d9de0d1d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/daemon/tts-bridge.ts:497"}, "properties": {"repobilityId": "8d9aa250325e4e26", "scanner": "scanner-primary", "fingerprint": "3e49c083d9de0d1d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-bdcf1e26ffae3fb4", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/barge-in-watcher.ts:336"}, "properties": {"repobilityId": "f462d7ae37d31765", "scanner": "scanner-primary", "fingerprint": "bdcf1e26ffae3fb4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9cf0de3321db7f00", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/docker-runner.ts:548"}, "properties": {"repobilityId": "a1c798c1d82573ae", "scanner": "scanner-primary", "fingerprint": "9cf0de3321db7f00", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b3ad0d2b0dd292ce", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/chat-opportunity-detector.ts:428"}, "properties": {"repobilityId": "43cc8f956950ecc2", "scanner": "scanner-primary", "fingerprint": "b3ad0d2b0dd292ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-273543d34d5bb7b1", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/consent-monitor.ts:458"}, "properties": {"repobilityId": "7bea8a38a31efdae", "scanner": "scanner-primary", "fingerprint": "273543d34d5bb7b1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7bcf1c972081c8e1", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/modules-registry.ts:82"}, "properties": {"repobilityId": "4e957c5b5cff05e4", "scanner": "scanner-primary", "fingerprint": "7bcf1c972081c8e1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c3f8e8eb505a2080", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/audio-ingest.ts:941"}, "properties": {"repobilityId": "13e53976f4573ebe", "scanner": "scanner-primary", "fingerprint": "c3f8e8eb505a2080", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-131520b66eb19aa6", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/session-manager.ts:63"}, "properties": {"repobilityId": "f1ef1928f168bfdb", "scanner": "scanner-primary", "fingerprint": "131520b66eb19aa6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3770c53f9e6dc553", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/event-publisher.ts:383"}, "properties": {"repobilityId": "2ae8c5a48a130e30", "scanner": "scanner-primary", "fingerprint": "3770c53f9e6dc553", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b50224badf049afd", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/tts-lipsync.ts:45"}, "properties": {"repobilityId": "6c787513b9d7b9af", "scanner": "scanner-primary", "fingerprint": "b50224badf049afd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa23f10e2351c11e", "level": "none", "message": {"text": "Commented-code block (9 lines) in skills/meet-join/daemon/__tests__/e2e-smoke.test.ts:390"}, "properties": {"repobilityId": "0d0d0ca4c5ad0ab5", "scanner": "scanner-primary", "fingerprint": "aa23f10e2351c11e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-185cc9abb6484b2c", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/docker-mode-e2e.test.ts:67"}, "properties": {"repobilityId": "46b815bf5bfee8c9", "scanner": "scanner-primary", "fingerprint": "185cc9abb6484b2c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-72ce2f56258ae7cb", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/dind-e2e.test.ts:69"}, "properties": {"repobilityId": "640672739959f0b5", "scanner": "scanner-primary", "fingerprint": "72ce2f56258ae7cb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a01c63f8813bbb91", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/__tests__/audio-ingest.test.ts:920"}, "properties": {"repobilityId": "ff15fca673ee5806", "scanner": "scanner-primary", "fingerprint": "a01c63f8813bbb91", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c89d85a6f40a2923", "level": "none", "message": {"text": "Commented-code block (8 lines) in skills/meet-join/daemon/__tests__/session-manager.test.ts:103"}, "properties": {"repobilityId": "1d01357d468a4fb5", "scanner": "scanner-primary", "fingerprint": "c89d85a6f40a2923", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1394f90b9f58af32", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/tts-bridge.test.ts:374"}, "properties": {"repobilityId": "83483570753ee3cd", "scanner": "scanner-primary", "fingerprint": "1394f90b9f58af32", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a8aaaec848829926", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/speaker-resolver.test.ts:815"}, "properties": {"repobilityId": "8e3f7747bbe20a0c", "scanner": "scanner-primary", "fingerprint": "a8aaaec848829926", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-40571cc52668fe38", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/daemon/__tests__/chat-send-e2e.test.ts:196"}, "properties": {"repobilityId": "de973a3463a46ace", "scanner": "scanner-primary", "fingerprint": "40571cc52668fe38", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f9e8c75d24d89407", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/daemon/__tests__/chat-send-e2e.test.ts:15"}, "properties": {"repobilityId": "9af2164479c0cd3e", "scanner": "scanner-primary", "fingerprint": "f9e8c75d24d89407", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7c96b80386bb5c03", "level": "none", "message": {"text": "Commented-code block (7 lines) in skills/meet-join/daemon/__tests__/voice-e2e.test.ts:412"}, "properties": {"repobilityId": "ea3a203b8a648f1d", "scanner": "scanner-primary", "fingerprint": "7c96b80386bb5c03", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8fc2ad090ff764b2", "level": "none", "message": {"text": "Commented-code block (11 lines) in skills/meet-join/daemon/__tests__/avatar-e2e.test.ts:75"}, "properties": {"repobilityId": "b3dc7f168f3284e1", "scanner": "scanner-primary", "fingerprint": "8fc2ad090ff764b2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9775779d75816697", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/daemon/__tests__/avatar-e2e.test.ts:248"}, "properties": {"repobilityId": "8e8d9c5f5a007e1d", "scanner": "scanner-primary", "fingerprint": "9775779d75816697", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-63b5d77ebef67522", "level": "none", "message": {"text": "Commented-code block (9 lines) in skills/meet-join/daemon/__tests__/consent-monitor.test.ts:1282"}, "properties": {"repobilityId": "cc330e693b48a71d", "scanner": "scanner-primary", "fingerprint": "63b5d77ebef67522", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-daec18a9dcd71df3", "level": "none", "message": {"text": "Commented-code block (8 lines) in skills/meet-join/daemon/__tests__/proactive-chat-e2e.test.ts:78"}, "properties": {"repobilityId": "f70193f2f7a6bfe6", "scanner": "scanner-primary", "fingerprint": "daec18a9dcd71df3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa257b71bdfb20aa", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 skills/meet-join/daemon/__tests__/proactive-chat-e2e.test.ts:24"}, "properties": {"repobilityId": "c08e38de09f07500", "scanner": "scanner-primary", "fingerprint": "aa257b71bdfb20aa", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2a4514ac507588e3", "level": "none", "message": {"text": "Commented-code block (7 lines) in skills/meet-join/daemon/__tests__/docker-runner.test.ts:370"}, "properties": {"repobilityId": "8589a5f116d70f9b", "scanner": "scanner-primary", "fingerprint": "2a4514ac507588e3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-77e1a71a7b865bf0", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/daemon/__tests__/tts-lipsync.test.ts:316"}, "properties": {"repobilityId": "077a73c9910c2d0e", "scanner": "scanner-primary", "fingerprint": "77e1a71a7b865bf0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1dd813ac52808eae", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/tools/meet-send-chat-tool.ts:49"}, "properties": {"repobilityId": "3cb24ad2e0d7677c", "scanner": "scanner-primary", "fingerprint": "1dd813ac52808eae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f3e16de7f96029d0", "level": "none", "message": {"text": "Commented-code block (5 lines) in skills/meet-join/tools/meet-join-tool.ts:135"}, "properties": {"repobilityId": "84386e1a6eaf9868", "scanner": "scanner-primary", "fingerprint": "f3e16de7f96029d0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1b89be6203638fbb", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/tools/meet-avatar-tool.ts:85"}, "properties": {"repobilityId": "93ffb2dcf124a06a", "scanner": "scanner-primary", "fingerprint": "1b89be6203638fbb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7c9872f4b4ceb609", "level": "none", "message": {"text": "Commented-code block (6 lines) in skills/meet-join/tools/meet-speak-tool.ts:103"}, "properties": {"repobilityId": "6968d0bfa4022a26", "scanner": "scanner-primary", "fingerprint": "7c9872f4b4ceb609", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f1ba75a6b0b9e73d", "level": "none", "message": {"text": "Commented-code block (9 lines) in skills/meet-join/contracts/native-messaging.ts:196"}, "properties": {"repobilityId": "a4567461c7b489a9", "scanner": "scanner-primary", "fingerprint": "f1ba75a6b0b9e73d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-419aa5428e04834b", "level": "note", "message": {"text": "154 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "8029d3243d42e80a", "scanner": "scanner-primary", "fingerprint": "419aa5428e04834b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "90d16e8fc666e0f8", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-814277a6bba5ebff", "level": "warning", "message": {"text": "Frontend route `/assistant/plugins/:name` has no Link/navigate to it \u2014 apps/web/src/domains/intelligence/plugin-detail-page.test.tsx"}, "properties": {"repobilityId": "54270570f9bf1ceb", "scanner": "scanner-primary", "fingerprint": "814277a6bba5ebff", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "orphan-page", "wiring"]}}, {"ruleId": "scanner-4ab5c9e47c7a1cdb", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/healthz (credential-executor/src/__tests__/managed-reconnect.test.ts:54)"}, "properties": {"repobilityId": "b72f1c9f1f5c8349", "scanner": "scanner-primary", "fingerprint": "4ab5c9e47c7a1cdb", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-346571ae45a2bd2a", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/readyz (credential-executor/src/__tests__/managed-reconnect.test.ts:66)"}, "properties": {"repobilityId": "58458b23f1fd3ccf", "scanner": "scanner-primary", "fingerprint": "346571ae45a2bd2a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-1c51dd8658c27e6a", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${healthPort}/healthz (credential-executor/src/__tests__/managed-reconnect.test.ts:219)"}, "properties": {"repobilityId": "9b13b9b1b489de0d", "scanner": "scanner-primary", "fingerprint": "1c51dd8658c27e6a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2287f1d0f45d0f99", "level": "error", "message": {"text": "Dangling fetch: GET http://localhost:${healthPort}/healthz (credential-executor/src/__tests__/managed-integration.test.ts:503)"}, "properties": {"repobilityId": "e739d10e11129d23", "scanner": "scanner-primary", "fingerprint": "2287f1d0f45d0f99", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-e4882eb544b5fade", "level": "error", "message": {"text": "Dangling fetch: GET http://localhost:${healthPort}/readyz (credential-executor/src/__tests__/managed-integration.test.ts:508)"}, "properties": {"repobilityId": "531eeab5af95a856", "scanner": "scanner-primary", "fingerprint": "e4882eb544b5fade", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f2060bc165eb8843", "level": "error", "message": {"text": "Dangling fetch: POST https://api.elevenlabs.io/v1/text-to-speech/${encodeURIComponent(\n      trimmedVoiceId,\n    )}?output_format=mp3_44100_128 (apps/web/src/lib/tts-synthesize.ts:82)"}, "properties": {"repobilityId": "6e9b4533b53784cd", "scanner": "scanner-primary", "fingerprint": "f2060bc165eb8843", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-263c533f5bb68d99", "level": "error", "message": {"text": "Dangling fetch: POST https://api.deepgram.com/v1/speak?model=aura-2-thalia-en (apps/web/src/lib/tts-synthesize.ts:115)"}, "properties": {"repobilityId": "bd7dfe34d9e92bd8", "scanner": "scanner-primary", "fingerprint": "263c533f5bb68d99", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-fbce42cee010d42b", "level": "error", "message": {"text": "Dangling fetch: POST /assistant/__local/hatch (apps/web/src/runtime/local-mode-host.ts:133)"}, "properties": {"repobilityId": "7da07106db58887d", "scanner": "scanner-primary", "fingerprint": "fbce42cee010d42b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-40f906bd29d35ac5", "level": "error", "message": {"text": "Dangling fetch: GET /assistant/__local/lockfile (apps/web/src/runtime/local-mode-host.ts:152)"}, "properties": {"repobilityId": "ca33f60fb3f663c5", "scanner": "scanner-primary", "fingerprint": "40f906bd29d35ac5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-7a0fffb05e356ca3", "level": "error", "message": {"text": "Dangling fetch: POST /assistant/__local/lockfile (apps/web/src/runtime/local-mode-host.ts:173)"}, "properties": {"repobilityId": "51258044824e89dd", "scanner": "scanner-primary", "fingerprint": "7a0fffb05e356ca3", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-185efc50cbc9016e", "level": "error", "message": {"text": "Dangling fetch: POST /assistant/__local/lockfile (apps/web/src/runtime/local-mode-host.ts:199)"}, "properties": {"repobilityId": "201ff9131bf93dd8", "scanner": "scanner-primary", "fingerprint": "185efc50cbc9016e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f56d89a5cf568f6e", "level": "error", "message": {"text": "Dangling fetch: POST /assistant/__local/retire (apps/web/src/runtime/local-mode-host.ts:218)"}, "properties": {"repobilityId": "27de06a8bb51160d", "scanner": "scanner-primary", "fingerprint": "f56d89a5cf568f6e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-ff5ffdef6cbae8f5", "level": "error", "message": {"text": "Dangling fetch: POST /assistant/__local/sleep (apps/web/src/runtime/local-mode-host.ts:242)"}, "properties": {"repobilityId": "9c5d23de57e3066b", "scanner": "scanner-primary", "fingerprint": "ff5ffdef6cbae8f5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-4e5267f7095a2f04", "level": "error", "message": {"text": "Dangling fetch: POST /assistant/__local/wake (apps/web/src/runtime/local-mode-host.ts:280)"}, "properties": {"repobilityId": "eb27ade48fa10ddb", "scanner": "scanner-primary", "fingerprint": "4e5267f7095a2f04", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-422cb374aa29712c", "level": "error", "message": {"text": "Dangling fetch: POST /v1/telemetry/ingest/ (apps/web/src/domains/onboarding/funnel-events.ts:171)"}, "properties": {"repobilityId": "0d98a0b166430831", "scanner": "scanner-primary", "fingerprint": "422cb374aa29712c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2d8ccdca1a9f5453", "level": "error", "message": {"text": "Dangling fetch: GET /assistant/assets/app.js (apps/macos/src/main/platform-forward.test.ts:30)"}, "properties": {"repobilityId": "9ffbdb86b3901c1a", "scanner": "scanner-primary", "fingerprint": "2d8ccdca1a9f5453", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-e9bfe845ff09ec04", "level": "error", "message": {"text": "Dangling fetch: GET /__gateway/8080/v1/foo (apps/macos/src/main/platform-forward.test.ts:36)"}, "properties": {"repobilityId": "005ecd29cd299060", "scanner": "scanner-primary", "fingerprint": "e9bfe845ff09ec04", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-0d38e95a9739f393", "level": "error", "message": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:42)"}, "properties": {"repobilityId": "2cc49b4be1b00e8f", "scanner": "scanner-primary", "fingerprint": "0d38e95a9739f393", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-88f034e221bacf0c", "level": "error", "message": {"text": "Dangling fetch: GET /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:54)"}, "properties": {"repobilityId": "016fd646c4ea1b8c", "scanner": "scanner-primary", "fingerprint": "88f034e221bacf0c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-84f6ffc394f70857", "level": "error", "message": {"text": "Dangling fetch: GET /accounts/login (apps/macos/src/main/platform-forward.test.ts:65)"}, "properties": {"repobilityId": "3b43a5794dfa465b", "scanner": "scanner-primary", "fingerprint": "84f6ffc394f70857", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-a7eaff9970d58c79", "level": "error", "message": {"text": "Dangling fetch: GET /v1 (apps/macos/src/main/platform-forward.test.ts:73)"}, "properties": {"repobilityId": "1761d03f6b98008a", "scanner": "scanner-primary", "fingerprint": "a7eaff9970d58c79", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-c1bc1f3d0f0b779b", "level": "error", "message": {"text": "Dangling fetch: GET /v1/assistants?page=2&limit=10 (apps/macos/src/main/platform-forward.test.ts:80)"}, "properties": {"repobilityId": "ecd7bd7ad0bee93b", "scanner": "scanner-primary", "fingerprint": "c1bc1f3d0f0b779b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-929d00d131088387", "level": "error", "message": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:91)"}, "properties": {"repobilityId": "3b5fdc84179bc4b4", "scanner": "scanner-primary", "fingerprint": "929d00d131088387", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-3c47d2ffd406ff9c", "level": "error", "message": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:99)"}, "properties": {"repobilityId": "e848dbddaf024d96", "scanner": "scanner-primary", "fingerprint": "3c47d2ffd406ff9c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-e255fdbdda67bda6", "level": "error", "message": {"text": "Dangling fetch: POST /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:106)"}, "properties": {"repobilityId": "e433968c525df2f9", "scanner": "scanner-primary", "fingerprint": "e255fdbdda67bda6", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-8f2185d662baea78", "level": "error", "message": {"text": "Dangling fetch: POST /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:119)"}, "properties": {"repobilityId": "f7491ca6404cf9a2", "scanner": "scanner-primary", "fingerprint": "8f2185d662baea78", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-a13c71d8b121df40", "level": "error", "message": {"text": "Dangling fetch: POST /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:136)"}, "properties": {"repobilityId": "2ddab6603b36fbaf", "scanner": "scanner-primary", "fingerprint": "a13c71d8b121df40", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-3dcaed683532cf14", "level": "error", "message": {"text": "Dangling fetch: POST /v1/assistants (apps/macos/src/main/platform-forward.test.ts:149)"}, "properties": {"repobilityId": "148066e85ce0900e", "scanner": "scanner-primary", "fingerprint": "3dcaed683532cf14", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-a530014f74b0f555", "level": "error", "message": {"text": "Dangling fetch: POST /v1/assistants (apps/macos/src/main/platform-forward.test.ts:164)"}, "properties": {"repobilityId": "609597e7016fa1e9", "scanner": "scanner-primary", "fingerprint": "a530014f74b0f555", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-d29aa0ccd97e002a", "level": "error", "message": {"text": "Dangling fetch: POST /v1/assistants (apps/macos/src/main/platform-forward.test.ts:177)"}, "properties": {"repobilityId": "eb25b361b24a5f3f", "scanner": "scanner-primary", "fingerprint": "d29aa0ccd97e002a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-e6490de67f8d61ca", "level": "error", "message": {"text": "Dangling fetch: POST /v1/assistants (apps/macos/src/main/platform-forward.test.ts:190)"}, "properties": {"repobilityId": "5eb7639ce2e1eb89", "scanner": "scanner-primary", "fingerprint": "e6490de67f8d61ca", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-96d3afb755f468f9", "level": "error", "message": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:216)"}, "properties": {"repobilityId": "1b31417e69c8fd8b", "scanner": "scanner-primary", "fingerprint": "96d3afb755f468f9", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-2452d910177ea045", "level": "error", "message": {"text": "Dangling fetch: POST /_allauth/browser/v1/auth/session (apps/macos/src/main/platform-forward.test.ts:226)"}, "properties": {"repobilityId": "badb329fccc48b14", "scanner": "scanner-primary", "fingerprint": "2452d910177ea045", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-d4ef719269daa651", "level": "error", "message": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:246)"}, "properties": {"repobilityId": "a7fd466599906b86", "scanner": "scanner-primary", "fingerprint": "d4ef719269daa651", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-a8706cd202c2d52e", "level": "error", "message": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:254)"}, "properties": {"repobilityId": "ed0edc25223e2719", "scanner": "scanner-primary", "fingerprint": "a8706cd202c2d52e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-94e14767a641cc28", "level": "error", "message": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:264)"}, "properties": {"repobilityId": "7b8868c8a9a13a74", "scanner": "scanner-primary", "fingerprint": "94e14767a641cc28", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-f1c23330f0297b16", "level": "error", "message": {"text": "Dangling fetch: GET /v1/assistants (apps/macos/src/main/platform-forward.test.ts:278)"}, "properties": {"repobilityId": "e3610f62dbc26a06", "scanner": "scanner-primary", "fingerprint": "f1c23330f0297b16", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-f5835ed83376b7d9", "level": "error", "message": {"text": "Dangling fetch: GET /v1something/else (apps/macos/src/main/platform-forward.test.ts:288)"}, "properties": {"repobilityId": "a61e5ba59c0e1736", "scanner": "scanner-primary", "fingerprint": "f5835ed83376b7d9", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-03064386c3198e79", "level": "error", "message": {"text": "Dangling fetch: GET /accountsettings (apps/macos/src/main/platform-forward.test.ts:292)"}, "properties": {"repobilityId": "4e825b6edffbb4ec", "scanner": "scanner-primary", "fingerprint": "03064386c3198e79", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-45e571d074414b7a", "level": "error", "message": {"text": "Dangling fetch: GET /assistant/assets/app.js (apps/macos/src/main/gateway-forward.test.ts:24)"}, "properties": {"repobilityId": "0c0fac8cfd435ca6", "scanner": "scanner-primary", "fingerprint": "45e571d074414b7a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-b56dd2d5e3f3584f", "level": "error", "message": {"text": "Dangling fetch: GET /__gateway/80/v1 (apps/macos/src/main/gateway-forward.test.ts:29)"}, "properties": {"repobilityId": "aee12c8200748b0e", "scanner": "scanner-primary", "fingerprint": "b56dd2d5e3f3584f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-6868035b3959d415", "level": "error", "message": {"text": "Dangling fetch: GET /__gateway/9999/v1 (apps/macos/src/main/gateway-forward.test.ts:38)"}, "properties": {"repobilityId": "1038d1de1d077dc7", "scanner": "scanner-primary", "fingerprint": "6868035b3959d415", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-1a238b793afb74e7", "level": "error", "message": {"text": "Dangling fetch: GET /assistant/__gateway/8080/v1/assistants (apps/macos/src/main/gateway-forward.test.ts:48)"}, "properties": {"repobilityId": "f8e38ae682657014", "scanner": "scanner-primary", "fingerprint": "1a238b793afb74e7", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-b2bf5bf6fae9e68c", "level": "error", "message": {"text": "Dangling fetch: POST /assistant/__gateway/8080/auth/token (apps/macos/src/main/gateway-forward.test.ts:62)"}, "properties": {"repobilityId": "29200fc1f05eeda5", "scanner": "scanner-primary", "fingerprint": "b2bf5bf6fae9e68c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-0d763db4757049dc", "level": "error", "message": {"text": "Dangling fetch: GET /__gateway/8080/v1/stream (apps/macos/src/main/gateway-forward.test.ts:75)"}, "properties": {"repobilityId": "8d82f1c514e79184", "scanner": "scanner-primary", "fingerprint": "0d763db4757049dc", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-d084476554f45c9a", "level": "error", "message": {"text": "Dangling fetch: GET /assistant/__gateway/{port}/* (apps/macos/src/main/index.ts:237)"}, "properties": {"repobilityId": "91b95cc8a209431b", "scanner": "scanner-primary", "fingerprint": "d084476554f45c9a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-bec9326b0267fd27", "level": "error", "message": {"text": "Dangling fetch: GET http://169.254.169.254/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip (cli/src/lib/local.ts:713)"}, "properties": {"repobilityId": "a1e5c11de9ce20ae", "scanner": "scanner-primary", "fingerprint": "bec9326b0267fd27", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-1dd7911b48c9ef85", "level": "error", "message": {"text": "Dangling fetch: PUT http://169.254.169.254/latest/api/token (cli/src/lib/local.ts:729)"}, "properties": {"repobilityId": "44a9073eeab17f9a", "scanner": "scanner-primary", "fingerprint": "1dd7911b48c9ef85", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-b60a0cc80671f537", "level": "error", "message": {"text": "Dangling fetch: GET http://169.254.169.254/latest/meta-data/public-ipv4 (cli/src/lib/local.ts:736)"}, "properties": {"repobilityId": "47326a5744a826bb", "scanner": "scanner-primary", "fingerprint": "b60a0cc80671f537", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-736a593bdb02c7b5", "level": "error", "message": {"text": "Dangling fetch: POST https://api.perplexity.ai/chat/completions (assistant/src/__tests__/web-search.test.ts:866)"}, "properties": {"repobilityId": "c698fffc41e8104c", "scanner": "scanner-primary", "fingerprint": "736a593bdb02c7b5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a8a70786ceba6ddb", "level": "error", "message": {"text": "Dangling fetch: POST https://api.tavily.com/search (assistant/src/__tests__/web-search.test.ts:988)"}, "properties": {"repobilityId": "ab3f6489bd48d73c", "scanner": "scanner-primary", "fingerprint": "a8a70786ceba6ddb", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d66ca2f1658fa4ed", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/telegram (assistant/src/__tests__/gateway-only-enforcement.test.ts:181)"}, "properties": {"repobilityId": "284d6d71baa906ea", "scanner": "scanner-primary", "fingerprint": "d66ca2f1658fa4ed", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-7933125e11bd9cfd", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/webhooks/telegram (assistant/src/__tests__/gateway-only-enforcement.test.ts:193)"}, "properties": {"repobilityId": "a14e4af6854b840c", "scanner": "scanner-primary", "fingerprint": "7933125e11bd9cfd", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a0cbfe32588caa24", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/telegram/test (assistant/src/__tests__/gateway-only-enforcement.test.ts:198)"}, "properties": {"repobilityId": "9cabc58e9f1c1610", "scanner": "scanner-primary", "fingerprint": "a0cbfe32588caa24", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-0c58eb3e24dfc746", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/telegram (assistant/src/__tests__/gateway-only-enforcement.test.ts:210)"}, "properties": {"repobilityId": "196cd52991ee1e03", "scanner": "scanner-primary", "fingerprint": "0c58eb3e24dfc746", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-3b2eb33b0b80f873", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/telegram/test (assistant/src/__tests__/gateway-only-enforcement.test.ts:221)"}, "properties": {"repobilityId": "feb7cbda350b0716", "scanner": "scanner-primary", "fingerprint": "3b2eb33b0b80f873", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a4d26850f3f557c4", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/twilio/voice (assistant/src/__tests__/gateway-only-enforcement.test.ts:239)"}, "properties": {"repobilityId": "98b430ae198895b8", "scanner": "scanner-primary", "fingerprint": "a4d26850f3f557c4", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-83f5cb135f115fd8", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/twilio/status (assistant/src/__tests__/gateway-only-enforcement.test.ts:256)"}, "properties": {"repobilityId": "858bbea30c8057dc", "scanner": "scanner-primary", "fingerprint": "83f5cb135f115fd8", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-50399ff8677f7da7", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/webhooks/twilio/connect-action (assistant/src/__tests__/gateway-only-enforcement.test.ts:272)"}, "properties": {"repobilityId": "9f34365f1c0b778d", "scanner": "scanner-primary", "fingerprint": "50399ff8677f7da7", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-0d67d0a79d318486", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/calls/twilio/voice-webhook (assistant/src/__tests__/gateway-only-enforcement.test.ts:288)"}, "properties": {"repobilityId": "138f1a4160bf93e2", "scanner": "scanner-primary", "fingerprint": "0d67d0a79d318486", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-9659632da7d012da", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/calls/twilio/status (assistant/src/__tests__/gateway-only-enforcement.test.ts:304)"}, "properties": {"repobilityId": "b9d5b8282ac471a8", "scanner": "scanner-primary", "fingerprint": "9659632da7d012da", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-74f42b4040849a6d", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/internal/twilio/voice-webhook (assistant/src/__tests__/gateway-only-enforcement.test.ts:324)"}, "properties": {"repobilityId": "264616a20174df06", "scanner": "scanner-primary", "fingerprint": "74f42b4040849a6d", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-b7c861fdd02845ec", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/internal/twilio/status (assistant/src/__tests__/gateway-only-enforcement.test.ts:344)"}, "properties": {"repobilityId": "7a9d88af55201851", "scanner": "scanner-primary", "fingerprint": "b7c861fdd02845ec", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-aeff68d84e0e3a81", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/internal/twilio/connect-action (assistant/src/__tests__/gateway-only-enforcement.test.ts:361)"}, "properties": {"repobilityId": "793898141d7f081e", "scanner": "scanner-primary", "fingerprint": "aeff68d84e0e3a81", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-5ff7ca0c729a8780", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/internal/oauth/callback (assistant/src/__tests__/gateway-only-enforcement.test.ts:378)"}, "properties": {"repobilityId": "87920ba7aa667389", "scanner": "scanner-primary", "fingerprint": "5ff7ca0c729a8780", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-60dd1869da92b71f", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/relay?callSessionId=sess-123 (assistant/src/__tests__/gateway-only-enforcement.test.ts:403)"}, "properties": {"repobilityId": "fdcf00d553df9ec6", "scanner": "scanner-primary", "fingerprint": "60dd1869da92b71f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-ed259847edae9f63", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/relay?callSessionId=sess-123 (assistant/src/__tests__/gateway-only-enforcement.test.ts:426)"}, "properties": {"repobilityId": "ad58642a10b95ee5", "scanner": "scanner-primary", "fingerprint": "ed259847edae9f63", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-7f18ade36ec74fda", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/relay?callSessionId=sess-123 (assistant/src/__tests__/gateway-only-enforcement.test.ts:443)"}, "properties": {"repobilityId": "81aa78d47343d8f1", "scanner": "scanner-primary", "fingerprint": "7f18ade36ec74fda", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-35e9467e7d19453c", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/media-stream?callSessionId=sess-123 (assistant/src/__tests__/gateway-only-enforcement.test.ts:466)"}, "properties": {"repobilityId": "93357fe9754fffa5", "scanner": "scanner-primary", "fingerprint": "35e9467e7d19453c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d285f2ac47961373", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/media-stream?callSessionId=sess-123 (assistant/src/__tests__/gateway-only-enforcement.test.ts:491)"}, "properties": {"repobilityId": "9872d9c12aeca638", "scanner": "scanner-primary", "fingerprint": "d285f2ac47961373", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-92e44ed2c9bc12c6", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/media-stream?callSessionId=sess-123 (assistant/src/__tests__/gateway-only-enforcement.test.ts:508)"}, "properties": {"repobilityId": "c7c0a0772ae3e53d", "scanner": "scanner-primary", "fingerprint": "92e44ed2c9bc12c6", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-8b85a737fbb169b8", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/calls/media-stream (assistant/src/__tests__/gateway-only-enforcement.test.ts:525)"}, "properties": {"repobilityId": "d9b3075f6aea3511", "scanner": "scanner-primary", "fingerprint": "8b85a737fbb169b8", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-66a515b7535df1c5", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test.ts:620)"}, "properties": {"repobilityId": "a71e88bcbf94928f", "scanner": "scanner-primary", "fingerprint": "66a515b7535df1c5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-80bbf4926f73168a", "level": "error", "message": {"text": "Dangling fetch: DELETE http://127.0.0.1:${port}/v1/channels/conversation (assistant/src/__tests__/gateway-only-enforcement.test.ts:634)"}, "properties": {"repobilityId": "1ee44811a5018352", "scanner": "scanner-primary", "fingerprint": "80bbf4926f73168a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f6c01d2741f31dc1", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/delivery-ack (assistant/src/__tests__/gateway-only-enforcement.test.ts:649)"}, "properties": {"repobilityId": "3be7fd32edea25ee", "scanner": "scanner-primary", "fingerprint": "f6c01d2741f31dc1", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-ac831d7fb722b848", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test.ts:672)"}, "properties": {"repobilityId": "9cd732477ec4b2c6", "scanner": "scanner-primary", "fingerprint": "ac831d7fb722b848", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-071e653e0ab84bc4", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test.ts:693)"}, "properties": {"repobilityId": "6139806b7192e673", "scanner": "scanner-primary", "fingerprint": "071e653e0ab84bc4", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f939052cddd5e77f", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test.ts:713)"}, "properties": {"repobilityId": "47ae54172f4bbf38", "scanner": "scanner-primary", "fingerprint": "f939052cddd5e77f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d2030e99da53ae1b", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test.ts:731)"}, "properties": {"repobilityId": "48c32d329284aa4f", "scanner": "scanner-primary", "fingerprint": "d2030e99da53ae1b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-8b3047adb7bd288b", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/v1/channels/inbound (assistant/src/__tests__/gateway-only-enforcement.test.ts:753)"}, "properties": {"repobilityId": "1aaf6fb7da7286ad", "scanner": "scanner-primary", "fingerprint": "8b3047adb7bd288b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-9665a9ae716f1313", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?provider=deepgram&mimeType=audio/webm (assistant/src/__tests__/gateway-only-enforcement.test.ts:775)"}, "properties": {"repobilityId": "c3e839fec189dbb3", "scanner": "scanner-primary", "fingerprint": "9665a9ae716f1313", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-fc2165dc832eb8cb", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?provider=deepgram&mimeType=audio/webm (assistant/src/__tests__/gateway-only-enforcement.test.ts:796)"}, "properties": {"repobilityId": "71516ceacdfc1cac", "scanner": "scanner-primary", "fingerprint": "fc2165dc832eb8cb", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d2c258484549f339", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${TEST_JWT}&provider=deepgram&mimeType=audio/webm (assistant/src/__tests__/gateway-only-enforcement.test.ts:811)"}, "properties": {"repobilityId": "337ba60974c1a96f", "scanner": "scanner-primary", "fingerprint": "d2c258484549f339", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-41b09b47c1707ad5", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}&provider=deepgram&mimeType=audio/webm (assistant/src/__tests__/gateway-only-enforcement.test.ts:827)"}, "properties": {"repobilityId": "b3d2bd4a8696bb5b", "scanner": "scanner-primary", "fingerprint": "41b09b47c1707ad5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-61d87409bcb65dcd", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}&mimeType=audio/webm (assistant/src/__tests__/gateway-only-enforcement.test.ts:845)"}, "properties": {"repobilityId": "f7a7b6e153c28b86", "scanner": "scanner-primary", "fingerprint": "61d87409bcb65dcd", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-34fba7bd01ad3055", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT}&provider=deepgram (assistant/src/__tests__/gateway-only-enforcement.test.ts:861)"}, "properties": {"repobilityId": "280ac157daf08ae4", "scanner": "scanner-primary", "fingerprint": "34fba7bd01ad3055", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-55dce4807459b69f", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/stt/stream?token=${GATEWAY_JWT} (assistant/src/__tests__/gateway-only-enforcement.test.ts:876)"}, "properties": {"repobilityId": "87eeaa09252459c9", "scanner": "scanner-primary", "fingerprint": "55dce4807459b69f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-5e307f1222859c9f", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/messages?conversationKey=${conversationKey} (assistant/src/__tests__/runtime-attachment-metadata.test.ts:113)"}, "properties": {"repobilityId": "156257268c53a349", "scanner": "scanner-primary", "fingerprint": "5e307f1222859c9f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-768dc80a9d22f83d", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/messages?conversationKey=${conversationKey} (assistant/src/__tests__/runtime-attachment-metadata.test.ts:160)"}, "properties": {"repobilityId": "9340ae7e7e2510a6", "scanner": "scanner-primary", "fingerprint": "768dc80a9d22f83d", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-05db21a7187f5dbc", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/attachments/${stored.id} (assistant/src/__tests__/runtime-attachment-metadata.test.ts:181)"}, "properties": {"repobilityId": "a69ef4287ddcb57c", "scanner": "scanner-primary", "fingerprint": "05db21a7187f5dbc", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-fbe246c8c6252e28", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/attachments/${stored.id} (assistant/src/__tests__/runtime-attachment-metadata.test.ts:206)"}, "properties": {"repobilityId": "b46293d753837d5c", "scanner": "scanner-primary", "fingerprint": "fbe246c8c6252e28", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-b6ad0a435553d30b", "level": "error", "message": {"text": "Dangling fetch: GET http://127.0.0.1:${port}/v1/attachments/nonexistent-id (assistant/src/__tests__/runtime-attachment-metadata.test.ts:218)"}, "properties": {"repobilityId": "523ba91c2b965bc5", "scanner": "scanner-primary", "fingerprint": "b6ad0a435553d30b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-cb550b05e068b6f1", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${ingressPort}/v1/channels/inbound (assistant/src/__tests__/runtime-attachment-metadata.test.ts:321)"}, "properties": {"repobilityId": "d5ada43441e752ee", "scanner": "scanner-primary", "fingerprint": "cb550b05e068b6f1", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-e13e6e7aa5988303", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${ingressPort}/v1/channels/inbound (assistant/src/__tests__/runtime-attachment-metadata.test.ts:342)"}, "properties": {"repobilityId": "092c41c3856c24cf", "scanner": "scanner-primary", "fingerprint": "e13e6e7aa5988303", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-dd21c36f2bcbfd0a", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${ingressPort}/v1/channels/inbound (assistant/src/__tests__/runtime-attachment-metadata.test.ts:368)"}, "properties": {"repobilityId": "fd73d109a2483d72", "scanner": "scanner-primary", "fingerprint": "dd21c36f2bcbfd0a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-9b52221ed861af7d", "level": "error", "message": {"text": "Dangling fetch: GET http://localhost:${server.port} (assistant/src/__tests__/provider-streaming.benchmark.test.ts:266)"}, "properties": {"repobilityId": "8b02fa09939b04c4", "scanner": "scanner-primary", "fingerprint": "9b52221ed861af7d", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-bf7bfba8f779833e", "level": "error", "message": {"text": "Dangling fetch: PATCH /v1/assistants/${encodeURIComponent(assistantId)}/ (assistant/src/platform/sync-identity.ts:81)"}, "properties": {"repobilityId": "96f72ee00695bfd3", "scanner": "scanner-primary", "fingerprint": "bf7bfba8f779833e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-ced16a5618cc052e", "level": "error", "message": {"text": "Dangling fetch: GET /v1/some/endpoint/ (assistant/src/platform/client.test.ts:132)"}, "properties": {"repobilityId": "d028b2e2c24afbff", "scanner": "scanner-primary", "fingerprint": "ced16a5618cc052e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-70529e66302d718c", "level": "error", "message": {"text": "Dangling fetch: GET /v1/test/ (assistant/src/platform/client.test.ts:145)"}, "properties": {"repobilityId": "7dd6bc29f7964c64", "scanner": "scanner-primary", "fingerprint": "70529e66302d718c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-8294a4d1bfa6b42f", "level": "error", "message": {"text": "Dangling fetch: POST /v1/test/ (assistant/src/platform/client.test.ts:159)"}, "properties": {"repobilityId": "33592295a4310cbc", "scanner": "scanner-primary", "fingerprint": "8294a4d1bfa6b42f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-df493bdc0ad3ad7b", "level": "error", "message": {"text": "Dangling fetch: POST /v1/test/ (assistant/src/platform/client.test.ts:175)"}, "properties": {"repobilityId": "efdac66fac3264aa", "scanner": "scanner-primary", "fingerprint": "df493bdc0ad3ad7b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-0917e5debf25b5c4", "level": "error", "message": {"text": "Dangling fetch: POST https://api.fish.audio/v1/tts (assistant/src/calls/fish-audio-client.ts:67)"}, "properties": {"repobilityId": "70893d24ab80a1a7", "scanner": "scanner-primary", "fingerprint": "0917e5debf25b5c4", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6d17e8affc0aedd8", "level": "error", "message": {"text": "Dangling fetch: GET http://${host}:${port}/healthz (assistant/src/daemon/daemon-control.ts:155)"}, "properties": {"repobilityId": "d4f1c866743778b4", "scanner": "scanner-primary", "fingerprint": "6d17e8affc0aedd8", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a8bcafb04ec77081", "level": "error", "message": {"text": "Dangling fetch: GET https://api.telegram.org/bot${botToken}/deleteWebhook (assistant/src/daemon/handlers/config-telegram.ts:276)"}, "properties": {"repobilityId": "53bf2869825511f1", "scanner": "scanner-primary", "fingerprint": "a8bcafb04ec77081", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f42cb24533eac344", "level": "error", "message": {"text": "Dangling fetch: POST https://api.telegram.org/bot${storedToken}/setMyCommands (assistant/src/daemon/handlers/config-telegram.ts:351)"}, "properties": {"repobilityId": "364d03050ac0ef01", "scanner": "scanner-primary", "fingerprint": "f42cb24533eac344", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-38350248554e4ba1", "level": "error", "message": {"text": "Dangling fetch: POST https://slack.com/api/auth.test (assistant/src/daemon/handlers/config-slack-channel.ts:191)"}, "properties": {"repobilityId": "0aa5c95b0ea8ba56", "scanner": "scanner-primary", "fingerprint": "38350248554e4ba1", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-bc1331fc866b1119", "level": "error", "message": {"text": "Dangling fetch: POST https://slack.com/api/auth.test (assistant/src/daemon/handlers/config-slack-channel.ts:264)"}, "properties": {"repobilityId": "d6e8293fb66f3928", "scanner": "scanner-primary", "fingerprint": "bc1331fc866b1119", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d6f90f3f1eb32f90", "level": "error", "message": {"text": "Dangling fetch: POST https://slack.com/api/auth.test (assistant/src/daemon/handlers/config-slack-channel.ts:350)"}, "properties": {"repobilityId": "e3b160d39f731e3b", "scanner": "scanner-primary", "fingerprint": "d6f90f3f1eb32f90", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-459263f7193264aa", "level": "error", "message": {"text": "Dangling fetch: POST /v1/runtime-proxy/email/send/ (assistant/src/runtime/verification-outbound-actions.ts:567)"}, "properties": {"repobilityId": "4c49e099f58271b9", "scanner": "scanner-primary", "fingerprint": "459263f7193264aa", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-c879cbe71bcf9327", "level": "error", "message": {"text": "Dangling fetch: POST https://slack.com/api/auth.test (assistant/src/runtime/channel-readiness-service.ts:299)"}, "properties": {"repobilityId": "9ada41b16495bc5f", "scanner": "scanner-primary", "fingerprint": "c879cbe71bcf9327", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f68cfcf116f6a990", "level": "error", "message": {"text": "Dangling fetch: POST /v1/assistants/${client.platformAssistantId}/domains/ (assistant/src/runtime/routes/domain-routes.ts:107)"}, "properties": {"repobilityId": "866d72af333cb0fb", "scanner": "scanner-primary", "fingerprint": "f68cfcf116f6a990", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-33194170076dbfcd", "level": "error", "message": {"text": "Dangling fetch: GET https://api.sanity.io/v2021-06-07/projects (assistant/src/runtime/routes/sanity-routes.ts:55)"}, "properties": {"repobilityId": "f37614be53a3667b", "scanner": "scanner-primary", "fingerprint": "33194170076dbfcd", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6f568ae05a2fc832", "level": "error", "message": {"text": "Dangling fetch: GET https://api.sanity.io/v2021-06-07/projects/${projectId}/datasets (assistant/src/runtime/routes/sanity-routes.ts:79)"}, "properties": {"repobilityId": "18480de512445f75", "scanner": "scanner-primary", "fingerprint": "6f568ae05a2fc832", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6c3805be619979d0", "level": "error", "message": {"text": "Dangling fetch: POST /v1/assistants/${client.platformAssistantId}/email-addresses/ (assistant/src/runtime/routes/email-routes.ts:44)"}, "properties": {"repobilityId": "12398226da70b7b6", "scanner": "scanner-primary", "fingerprint": "6c3805be619979d0", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-e73d695f122ff4d9", "level": "error", "message": {"text": "Dangling fetch: DELETE /v1/assistants/${client.platformAssistantId}/email-addresses/${target.id}/ (assistant/src/runtime/routes/email-routes.ts:102)"}, "properties": {"repobilityId": "1e60c02971089b5a", "scanner": "scanner-primary", "fingerprint": "e73d695f122ff4d9", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-b1b39ed229ed70c1", "level": "error", "message": {"text": "Dangling fetch: POST /v1/runtime-proxy/email/send/ (assistant/src/runtime/routes/email-routes.ts:298)"}, "properties": {"repobilityId": "0f5ae2d46b12105e", "scanner": "scanner-primary", "fingerprint": "b1b39ed229ed70c1", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f48b507c5b66b178", "level": "error", "message": {"text": "Dangling fetch: GET https://api.twilio.com/2010-04-01/Accounts/${accountSid}.json (assistant/src/runtime/routes/integrations/twilio.ts:138)"}, "properties": {"repobilityId": "74d7cca0065d3c05", "scanner": "scanner-primary", "fingerprint": "f48b507c5b66b178", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f025245f7320756b", "level": "error", "message": {"text": "Dangling fetch: GET https://api.telegram.org/bot${token}/getMe (assistant/src/runtime/channel-invite-transports/telegram.ts:55)"}, "properties": {"repobilityId": "e93abbee30b65537", "scanner": "scanner-primary", "fingerprint": "f025245f7320756b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a8fff1156d5a9461", "level": "error", "message": {"text": "Dangling fetch: POST https://api.vercel.com/v13/deployments (assistant/src/services/vercel-deploy.ts:31)"}, "properties": {"repobilityId": "16f52b2ccd73b233", "scanner": "scanner-primary", "fingerprint": "a8fff1156d5a9461", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-9c273c78bf013d6f", "level": "error", "message": {"text": "Dangling fetch: GET https://example.com (assistant/src/workflows/sandbox-escape.test.ts:49)"}, "properties": {"repobilityId": "4b0a9a8838688a44", "scanner": "scanner-primary", "fingerprint": "9c273c78bf013d6f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d82826f8b9354c47", "level": "error", "message": {"text": "Dangling fetch: GET http://localhost:${gatewayPort}/healthz (gateway/src/__tests__/credential-watcher-managed-bootstrap.test.ts:140)"}, "properties": {"repobilityId": "3c801cb12cb1c600", "scanner": "scanner-primary", "fingerprint": "d82826f8b9354c47", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6cfba89410078909", "level": "error", "message": {"text": "Dangling fetch: GET http://localhost:${port}/healthz (gateway/src/__tests__/credential-watcher.test.ts:245)"}, "properties": {"repobilityId": "a4a58aeb662a6f24", "scanner": "scanner-primary", "fingerprint": "6cfba89410078909", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-c93347cf654023a3", "level": "error", "message": {"text": "Dangling fetch: GET https://api.resend.com/domains (gateway/src/http/routes/resend-identity.ts:24)"}, "properties": {"repobilityId": "23e8ac8c0edc741a", "scanner": "scanner-primary", "fingerprint": "c93347cf654023a3", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-27758d6f5fb4cc91", "level": "error", "message": {"text": "Dangling fetch: POST https://api.mailgun.net/v3/${mailgunDomainForVerify}/messages (gateway/src/http/routes/mailgun-webhook.ts:402)"}, "properties": {"repobilityId": "05dadace786d4d05", "scanner": "scanner-primary", "fingerprint": "27758d6f5fb4cc91", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-bc2bb3978778f8ea", "level": "error", "message": {"text": "Dangling fetch: POST https://api.mailgun.net/v3/${mailgunDomain}/messages (gateway/src/http/routes/mailgun-webhook.ts:476)"}, "properties": {"repobilityId": "247f21f3b199449d", "scanner": "scanner-primary", "fingerprint": "bc2bb3978778f8ea", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f2485c79d21baaa2", "level": "error", "message": {"text": "Dangling fetch: GET https://api.resend.com/emails/receiving/${emailId} (gateway/src/http/routes/resend-webhook.ts:130)"}, "properties": {"repobilityId": "d78ba0cfd70a75e2", "scanner": "scanner-primary", "fingerprint": "f2485c79d21baaa2", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-9608195d31436d3a", "level": "error", "message": {"text": "Dangling fetch: POST https://api.resend.com/emails (gateway/src/http/routes/resend-webhook.ts:460)"}, "properties": {"repobilityId": "7728874da1f81489", "scanner": "scanner-primary", "fingerprint": "9608195d31436d3a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-271a3884588ca3d5", "level": "error", "message": {"text": "Dangling fetch: POST https://api.resend.com/emails (gateway/src/http/routes/resend-webhook.ts:545)"}, "properties": {"repobilityId": "429b6560858cf71b", "scanner": "scanner-primary", "fingerprint": "271a3884588ca3d5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-0075d4a53b5d3c75", "level": "error", "message": {"text": "Dangling fetch: POST https://api.anthropic.com/v1/messages (evals/src/lib/simulator/user-simulator.ts:446)"}, "properties": {"repobilityId": "acc8f7366eb6d06b", "scanner": "scanner-primary", "fingerprint": "0075d4a53b5d3c75", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-5c625a20e7b9c782", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=loopback-1 (skills/meet-join/bot/__tests__/voice-loopback.test.ts:194)"}, "properties": {"repobilityId": "41e51271848382c9", "scanner": "scanner-primary", "fingerprint": "5c625a20e7b9c782", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-3af4859a53aa9eae", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=loopback-cancel (skills/meet-join/bot/__tests__/voice-loopback.test.ts:265)"}, "properties": {"repobilityId": "3fb3c4a8538d71cb", "scanner": "scanner-primary", "fingerprint": "3af4859a53aa9eae", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-64830d4894d787fb", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=s-1 (skills/meet-join/bot/__tests__/audio-playback.test.ts:275)"}, "properties": {"repobilityId": "2aa6364d6397a164", "scanner": "scanner-primary", "fingerprint": "64830d4894d787fb", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-0171d0064fe11b08", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=cancel-me (skills/meet-join/bot/__tests__/audio-playback.test.ts:337)"}, "properties": {"repobilityId": "1b567c240e48d611", "scanner": "scanner-primary", "fingerprint": "0171d0064fe11b08", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-e181ab4bb8b99bf7", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio (skills/meet-join/bot/__tests__/audio-playback.test.ts:394)"}, "properties": {"repobilityId": "f9d250af05e6153d", "scanner": "scanner-primary", "fingerprint": "e181ab4bb8b99bf7", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-968f49abda1d73aa", "level": "error", "message": {"text": "Dangling fetch: DELETE http://127.0.0.1:${port}/play_audio/nonexistent (skills/meet-join/bot/__tests__/audio-playback.test.ts:416)"}, "properties": {"repobilityId": "a614744378730a94", "scanner": "scanner-primary", "fingerprint": "968f49abda1d73aa", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f0dad8bc89d8bc51", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=a (skills/meet-join/bot/__tests__/audio-playback.test.ts:460)"}, "properties": {"repobilityId": "d5dba25a98de7b41", "scanner": "scanner-primary", "fingerprint": "f0dad8bc89d8bc51", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a384630fd537ed5a", "level": "error", "message": {"text": "Dangling fetch: POST http://127.0.0.1:${port}/play_audio?stream_id=b (skills/meet-join/bot/__tests__/audio-playback.test.ts:479)"}, "properties": {"repobilityId": "db6d6b417e056158", "scanner": "scanner-primary", "fingerprint": "a384630fd537ed5a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-800ebdb9f4fed2b0", "level": "note", "message": {"text": "Unused endpoint: POST /leave"}, "properties": {"repobilityId": "cc12f105e4aef05d", "scanner": "scanner-primary", "fingerprint": "800ebdb9f4fed2b0", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-7ed94fea3820e14a", "level": "note", "message": {"text": "Unused endpoint: POST /send_chat"}, "properties": {"repobilityId": "f7bd58f0c3f300de", "scanner": "scanner-primary", "fingerprint": "7ed94fea3820e14a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b45b22a28ccb1481", "level": "note", "message": {"text": "Unused endpoint: POST /play_audio"}, "properties": {"repobilityId": "cae8d234e5d44876", "scanner": "scanner-primary", "fingerprint": "b45b22a28ccb1481", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-0d3acbf1b7157110", "level": "note", "message": {"text": "Unused endpoint: DELETE /play_audio/:streamId"}, "properties": {"repobilityId": "c86562bc54ef4b7c", "scanner": "scanner-primary", "fingerprint": "0d3acbf1b7157110", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-f03e54843bf47915", "level": "note", "message": {"text": "Unused endpoint: POST /avatar/viseme"}, "properties": {"repobilityId": "49ebc41504b235ea", "scanner": "scanner-primary", "fingerprint": "f03e54843bf47915", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-d775a4c09c2ac235", "level": "note", "message": {"text": "Unused endpoint: POST /avatar/enable"}, "properties": {"repobilityId": "d3456d45c5d82d50", "scanner": "scanner-primary", "fingerprint": "d775a4c09c2ac235", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-311426870b947388", "level": "note", "message": {"text": "Unused endpoint: POST /avatar/disable"}, "properties": {"repobilityId": "81a7e0601753d5d9", "scanner": "scanner-primary", "fingerprint": "311426870b947388", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}]}]}