{"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-94806b959cf5295c", "name": "Possibly dead Python function: check_python_version", "shortDescription": {"text": "Possibly dead Python function: check_python_version"}, "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-a4d6e81901139475", "name": "Possibly dead Python function: create_virtual_environment", "shortDescription": {"text": "Possibly dead Python function: create_virtual_environment"}, "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-986897da19343141", "name": "Possibly dead Python function: check_credentials", "shortDescription": {"text": "Possibly dead Python function: check_credentials"}, "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-12940ca45dba0d38", "name": "Possibly dead Python function: create_directories", "shortDescription": {"text": "Possibly dead Python function: create_directories"}, "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-80363245562161d2", "name": "Possibly dead Python function: instantiate_config_templates", "shortDescription": {"text": "Possibly dead Python function: instantiate_config_templates"}, "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-10205d594ffd2878", "name": "Possibly dead Python function: create_default_resources", "shortDescription": {"text": "Possibly dead Python function: create_default_resources"}, "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-539499b2393974de", "name": "Possibly dead Python function: create_desktop_shortcut", "shortDescription": {"text": "Possibly dead Python function: create_desktop_shortcut"}, "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-0ca737e5e7cd0c20", "name": "Possibly dead Python function: handle_rename_category", "shortDescription": {"text": "Possibly dead Python function: handle_rename_category"}, "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-c3309576f40c3678", "name": "Possibly dead Python function: handle_update_description", "shortDescription": {"text": "Possibly dead Python function: handle_update_description"}, "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-8124e0449eaadabc", "name": "Possibly dead Python function: handle_move_category", "shortDescription": {"text": "Possibly dead Python function: handle_move_category"}, "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-5526fc92433ff997", "name": "Possibly dead Python function: handle_merge_categories", "shortDescription": {"text": "Possibly dead Python function: handle_merge_categories"}, "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-e990b1a593577b11", "name": "Possibly dead Python function: handle_create_category", "shortDescription": {"text": "Possibly dead Python function: handle_create_category"}, "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-b0f8e012f431a8d5", "name": "Possibly dead Python function: handle_get_info", "shortDescription": {"text": "Possibly dead Python function: handle_get_info"}, "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-3083f1d1c32873fc", "name": "Possibly dead Python function: edit_taxonomy_label", "shortDescription": {"text": "Possibly dead Python function: edit_taxonomy_label"}, "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-5212d12fbb3d82c0", "name": "Possibly dead Python function: date_appears_in_sentence", "shortDescription": {"text": "Possibly dead Python function: date_appears_in_sentence"}, "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-7ebc3adcc9d89b45", "name": "Possibly dead Python function: shutdown_services", "shortDescription": {"text": "Possibly dead Python function: shutdown_services"}, "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-33419b46e742f6fa", "name": "Possibly dead Python function: check_maintenance_logs_db_exists", "shortDescription": {"text": "Possibly dead Python function: check_maintenance_logs_db_exists"}, "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-e44e5e8c10d2fd1f", "name": "Possibly dead Python function: reset_maintenance_logs_db", "shortDescription": {"text": "Possibly dead Python function: reset_maintenance_logs_db"}, "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-f3884f47072bef7c", "name": "Possibly dead Python function: initialize_with_yesterday_runs", "shortDescription": {"text": "Possibly dead Python function: initialize_with_yesterday_runs"}, "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-ad1f0fb0ba7d4079", "name": "Possibly dead Python function: initialize_played_songs_table", "shortDescription": {"text": "Possibly dead Python function: initialize_played_songs_table"}, "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-288b656dcacf0e63", "name": "Possibly dead Python function: generate_uuid", "shortDescription": {"text": "Possibly dead Python function: generate_uuid"}, "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-721bf5a5baf25885", "name": "Possibly dead Python function: initialize_duplicate_node_tracking_db", "shortDescription": {"text": "Possibly dead Python function: initialize_duplicate_node_tracking_db"}, "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-0543daf4ee0772f5", "name": "Possibly dead Python function: clear_duplicate_node_tracking_data", "shortDescription": {"text": "Possibly dead Python function: clear_duplicate_node_tracking_data"}, "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-e38aac500faaeb52", "name": "Stray `console.log` in TS/JS \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:45"}, "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-755715fdc703f661", "name": "`truncate` class without `title=` for hover reveal \u2014 app/kg_lens/frontend/src/components/ChatLog.tsx:85", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/kg_lens/frontend/src/components/ChatLog.tsx:85"}, "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-fa591b2f20267165", "name": "`truncate` class without `title=` for hover reveal \u2014 app/kg_lens/frontend/src/components/NodeSidebar.tsx:369", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/kg_lens/frontend/src/components/NodeSidebar.tsx:369"}, "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-9a189322279c9f5d", "name": "Icon-only button without accessible name \u2014 app/static/js/lights_settings.js:363", "shortDescription": {"text": "Icon-only button without accessible name \u2014 app/static/js/lights_settings.js:363"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c5c681119fb92f3a", "name": "Stray `console.log` in TS/JS \u2014 app/static/js/music_player.js:438", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 app/static/js/music_player.js:438"}, "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-2b8ee9461f263955", "name": "Icon-only button without accessible name \u2014 app/static/js/ring_settings.js:185", "shortDescription": {"text": "Icon-only button without accessible name \u2014 app/static/js/ring_settings.js:185"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-15a0b900fc427d75", "name": "Stray `console.log` in TS/JS \u2014 app/static/js/quiet_mode_settings.js:183", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 app/static/js/quiet_mode_settings.js:183"}, "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-cd21bbfa0d114c03", "name": "Stray `console.log` in TS/JS \u2014 app/static/js/weather.js:141", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 app/static/js/weather.js:141"}, "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-490e8e0aa48b213b", "name": "Stray `console.log` in TS/JS \u2014 app/static/js/proactive_popup.js:30", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 app/static/js/proactive_popup.js: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-79f724096b5699a7", "name": "Stray `console.log` in TS/JS \u2014 app/static/js/setup_wizard.js:9", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 app/static/js/setup_wizard.js:9"}, "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-8d00a374c4741a1d", "name": "Stray `console.log` in TS/JS \u2014 app/static/js/Emi.js:103", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 app/static/js/Emi.js: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-d0a76b8144dabfcc", "name": "Icon-only button without accessible name \u2014 app/static/js/nest_settings.js:220", "shortDescription": {"text": "Icon-only button without accessible name \u2014 app/static/js/nest_settings.js:220"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8557e4a6531f1711", "name": "Stray `console.log` in TS/JS \u2014 app/graph_visualizer/frontend/src/api/client.ts:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 app/graph_visualizer/frontend/src/api/client.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-fa2b24456436768f", "name": "Icon-only button without accessible name \u2014 app/graph_visualizer/frontend/src/components/SearchModal.tsx:40", "shortDescription": {"text": "Icon-only button without accessible name \u2014 app/graph_visualizer/frontend/src/components/SearchModal.tsx:40"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5da450f48f5c1cc4", "name": "Stray `console.log` in TS/JS \u2014 app/graph_visualizer/frontend/src/components/Sidebar/EdgePanel.tsx:54", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 app/graph_visualizer/frontend/src/components/Sidebar/EdgePanel.tsx: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-b98cb2bd6c6cbf38", "name": "Stray `console.log` in TS/JS \u2014 app/graph_visualizer/frontend/src/components/Sidebar/NodePanel.tsx:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 app/graph_visualizer/frontend/src/components/Sidebar/NodePanel.tsx: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-219aa60c620b82e8", "name": "Stray `console.log` in TS/JS \u2014 app/graph_visualizer/frontend/src/hooks/useKeyboardShortcuts.ts:82", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 app/graph_visualizer/frontend/src/hooks/useKeyboardShortcuts.ts:82"}, "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-76fd83430867a69c", "name": "`truncate` class without `title=` for hover reveal \u2014 app/me/frontend/src/components/WikiPanel.tsx:25", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/me/frontend/src/components/WikiPanel.tsx:25"}, "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-28358814554293ed", "name": "React Flow <Controls> without dark theming \u2014 app/assistant/agent_flow/src/components/FlowEditor.jsx:557", "shortDescription": {"text": "React Flow <Controls> without dark theming \u2014 app/assistant/agent_flow/src/components/FlowEditor.jsx:557"}, "fullDescription": {"text": "`<Controls>` ships with white buttons. Override `.react-flow__controls` and `.react-flow__controls-button` in your stylesheet or pass a styled wrapper.\n\nWhy: P1 in CHECKLIST.md \u2014 vendor defaults bleed light through.\nRule id: fq.controls.no-bg"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-90cb8f2d7d2990ab", "name": "`truncate` class without `title=` for hover reveal \u2014 app/assistant/agent_flow/src/components/FlowEditor.jsx:485", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/assistant/agent_flow/src/components/FlowEditor.jsx:485"}, "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-a13767dc35c0a3a9", "name": "Stray `console.log` in TS/JS \u2014 app/assistant/agent_flow/src/components/FlowEditor.jsx:25", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 app/assistant/agent_flow/src/components/FlowEditor.jsx: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-4d961dbb400190e4", "name": "Icon-only button without accessible name \u2014 app/assistant/agent_flow/src/components/ManagerSettings.jsx:39", "shortDescription": {"text": "Icon-only button without accessible name \u2014 app/assistant/agent_flow/src/components/ManagerSettings.jsx:39"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-72c2376449fd3020", "name": "React Flow <Controls> without dark theming \u2014 app/task_graph_viewer/src/App.jsx:395", "shortDescription": {"text": "React Flow <Controls> without dark theming \u2014 app/task_graph_viewer/src/App.jsx:395"}, "fullDescription": {"text": "`<Controls>` ships with white buttons. Override `.react-flow__controls` and `.react-flow__controls-button` in your stylesheet or pass a styled wrapper.\n\nWhy: P1 in CHECKLIST.md \u2014 vendor defaults bleed light through.\nRule id: fq.controls.no-bg"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-616eeda428115312", "name": "Privileged port 30 in use", "shortDescription": {"text": "Privileged port 30 in use"}, "fullDescription": {"text": "Port 30 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b4dd578ad20f41e6", "name": "Privileged port 10 in use", "shortDescription": {"text": "Privileged port 10 in use"}, "fullDescription": {"text": "Port 10 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-21df465f38f4932d", "name": "Dockerfile runs as root: docker/sandbox/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: docker/sandbox/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-fff79b4623d6162b", "name": "Docker base image is tag-pinned but not digest-pinned: python:3.11-slim", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: python:3.11-slim"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-aa5acaa49eb8315b", "name": "Containers defined but no K8s/orchestration manifest found", "shortDescription": {"text": "Containers defined but no K8s/orchestration manifest found"}, "fullDescription": {"text": "Repo has Dockerfiles/compose but no Kubernetes/Nomad manifests. If the target deployment is K8s, the manifests may live in a separate ops repo."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7d392d1ce4e3f775", "name": "Insecure pattern 'debug_true' in _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1598", "shortDescription": {"text": "Insecure pattern 'debug_true' in _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1598"}, "fullDescription": {"text": "Found a known-risky pattern (debug_true). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d94338d296f1dfd2", "name": "Insecure pattern 'direct_innerhtml_assignment' in _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:89"}, "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-7e130ebe47e9c1b1", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/lights_settings.js:343", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/lights_settings.js:343"}, "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-73978176b68c9af0", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/wellness_settings.js:19", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/wellness_settings.js:19"}, "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-777afef99ab1401f", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/music_player.js:280", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/music_player.js:280"}, "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-08db1aea1285afac", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/ring_settings.js:165", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/ring_settings.js:165"}, "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-e26feacda0f436bd", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/important_resources_settings.js:55", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/important_resources_settings.js:55"}, "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-ded00a61adff4055", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/settings_accounts.js:26", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/settings_accounts.js:26"}, "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-6dca0f10a7c0a859", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/progress.js:61", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/progress.js:61"}, "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-5672f8091b25cda2", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/routines_admin.js:129", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/routines_admin.js:129"}, "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-157e2f13d76c14da", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/pods.js:72", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/pods.js:72"}, "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-a1fbb00f5a720403", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/insights.js:62", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/insights.js:62"}, "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-cf46e4d80ba2bc3a", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/beliefs.js:28", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/beliefs.js:28"}, "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-fdb30cb6689c70f6", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/quiet_mode_settings.js:82", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/quiet_mode_settings.js:82"}, "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-3c3cf05ce98bf15f", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/ring_snapshots.js:80", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/ring_snapshots.js:80"}, "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-e7c3c671a053f6d9", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/personalize_activities.js:224", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/personalize_activities.js:224"}, "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-4bb3433ff29e7547", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/google_oauth_settings.js:25", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/google_oauth_settings.js:25"}, "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-56b381f5ae9acfe3", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/personalize_beliefs.js:95", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/personalize_beliefs.js: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-777f864e93eab273", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/proactive_popup.js:61", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/proactive_popup.js:61"}, "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-df99485796099596", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/timeline.js:124", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/timeline.js: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-62e5b0c7e87aa88d", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/setup_wizard.js:159", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/setup_wizard.js:159"}, "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-a6ace32781a68cae", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/features_settings.js:73", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/features_settings.js:73"}, "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-f3007936f00fb01f", "name": "Insecure pattern 'insert_adjacent_html' in app/static/js/features_settings.js:100", "shortDescription": {"text": "Insecure pattern 'insert_adjacent_html' in app/static/js/features_settings.js:100"}, "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-36ef2b97cc95e524", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/entity_cards_editor.js:83", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/entity_cards_editor.js:83"}, "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-43f6bc000060f445", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/voice_settings.js:81", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/voice_settings.js:81"}, "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-07139db72c1336c4", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/google_accounts_settings.js:37", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/google_accounts_settings.js:37"}, "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-88332ce2fec33bfb", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/Emi.js:947", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/Emi.js:947"}, "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-848f0f52b341fd2c", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/nest_settings.js:43", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/nest_settings.js:43"}, "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-05ea50b9414de33f", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/task_create_page.js:44", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/task_create_page.js:44"}, "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-0fe10be2ad7e22fd", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/todo_widgets.js:50", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/todo_widgets.js:50"}, "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-84b000deeaea8851", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/email_widgets.js:44", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/email_widgets.js:44"}, "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-408af5ded8c08484", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/menu_controls.js:291", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/menu_controls.js:291"}, "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-8318827c134d1f74", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/chat_render.js:196", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/chat_render.js:196"}, "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-223a028c879e64ad", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/task_create_panel.js:239", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/task_create_panel.js:239"}, "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-91b15a8761306473", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/geoguessr_panel.js:183", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/geoguessr_panel.js:183"}, "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-189305f14df80bf6", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/calendar_widgets.js:76", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/calendar_widgets.js:76"}, "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-d6ea9ff81a8f2db3", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/doc_editor_page.js:34", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/doc_editor_page.js:34"}, "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-43a107e710fde09f", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/socket_heartbeat.js:125", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/socket_heartbeat.js:125"}, "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-478031654bb093d3", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/news_weather_widgets.js:136", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/news_weather_widgets.js:136"}, "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-9ea5fbc300a4847d", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/scheduler_widgets.js:68", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/scheduler_widgets.js:68"}, "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-b0a3b967d6863068", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/doc_create_panel.js:310", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/doc_create_panel.js:310"}, "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-9ca400c25ed23f78", "name": "Insecure pattern 'direct_innerhtml_assignment' in app/static/mobile/js/emi_mobile.js:95", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/mobile/js/emi_mobile.js: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-974f3eebfc40b904", "name": "Insecure pattern 'debug_true' in app/graph_visualizer/standalone_app.py:98", "shortDescription": {"text": "Insecure pattern 'debug_true' in app/graph_visualizer/standalone_app.py:98"}, "fullDescription": {"text": "Found a known-risky pattern (debug_true). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4601e3ad3bb28677", "name": "No CI/CD pipelines detected", "shortDescription": {"text": "No CI/CD pipelines detected"}, "fullDescription": {"text": "No GitHub Actions, GitLab CI, or CircleCI configs found. Without CI you can't gate deploys on tests/lints."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-63808915a8b2fddf", "name": "Very large file: _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py (1599 lines)", "shortDescription": {"text": "Very large file: _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py (1599 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-fecbe14495ef8078", "name": "Very large file: _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/taxonomy_pipeline.py (1344 lines)", "shortDescription": {"text": "Very large file: _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/taxonomy_pipeline.py (1344 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-d8a81ace99059fd3", "name": "Very large file: _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/orchestrator.py (1607 lines)", "shortDescription": {"text": "Very large file: _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/orchestrator.py (1607 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-017ef5e9c2eb96fc", "name": "Very large file: app/kg_lens/frontend/src/components/GraphCanvas.tsx (1417 lines)", "shortDescription": {"text": "Very large file: app/kg_lens/frontend/src/components/GraphCanvas.tsx (1417 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-58cb77eed277458b", "name": "Very large file: app/static/js/music_player.js (1828 lines)", "shortDescription": {"text": "Very large file: app/static/js/music_player.js (1828 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-133da35dc79fb180", "name": "Very large file: app/static/js/Emi.js (1683 lines)", "shortDescription": {"text": "Very large file: app/static/js/Emi.js (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-6549fb584162198f", "name": "Very large file: app/routes/smart_home_bridge.py (1346 lines)", "shortDescription": {"text": "Very large file: app/routes/smart_home_bridge.py (1346 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-f4a2befcfea727ec", "name": "Very large file: app/routes/preferences.py (2170 lines)", "shortDescription": {"text": "Very large file: app/routes/preferences.py (2170 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-0bd3a65cb19a86a8", "name": "Very large file: app/me/frontend/src/components/GraphCanvas.tsx (1414 lines)", "shortDescription": {"text": "Very large file: app/me/frontend/src/components/GraphCanvas.tsx (1414 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-d311ac6ffa04d0f4", "name": "Very large file: app/assistant/routine_manager/routine_manager.py (1717 lines)", "shortDescription": {"text": "Very large file: app/assistant/routine_manager/routine_manager.py (1717 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-e8f1301724ae38ea", "name": "Very large file: app/assistant/tests/non_agent_tests/test_web_page_coords_viewport_accuracy.py (1352 lines)", "shortDescription": {"text": "Very large file: app/assistant/tests/non_agent_tests/test_web_page_coords_viewport_accuracy.py (1352 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-53a776fb44094cc1", "name": "Very large file: app/assistant/agent_runtime/services/context_injector.py (1215 lines)", "shortDescription": {"text": "Very large file: app/assistant/agent_runtime/services/context_injector.py (1215 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-83cb036c775bb45e", "name": "Very large file: app/assistant/pipelines/entity_cards_v2/builder.py (1428 lines)", "shortDescription": {"text": "Very large file: app/assistant/pipelines/entity_cards_v2/builder.py (1428 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-51cc67bbff7466da", "name": "Very large file: app/assistant/pipelines/kg_maintenance_pipeline/step_duplicate_scan.py (1350 lines)", "shortDescription": {"text": "Very large file: app/assistant/pipelines/kg_maintenance_pipeline/step_duplicate_scan.py (1350 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-44aa51be31b3a08a", "name": "Very large file: app/assistant/lib/data_conversion_module/DataConversion.py (1413 lines)", "shortDescription": {"text": "Very large file: app/assistant/lib/data_conversion_module/DataConversion.py (1413 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-41e26cb6307fb80f", "name": "Very large file: app/assistant/lib/core_tools/kg_mutator/kg_mutator_tool.py (1547 lines)", "shortDescription": {"text": "Very large file: app/assistant/lib/core_tools/kg_mutator/kg_mutator_tool.py (1547 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-e5e76db9a500183b", "name": "Very large file: app/assistant/kg/proposal_promoter.py (3108 lines)", "shortDescription": {"text": "Very large file: app/assistant/kg/proposal_promoter.py (3108 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-7101f648f7a93e0e", "name": "Very large file: app/assistant/kg_core/kg_utils/kg_tools.py (1808 lines)", "shortDescription": {"text": "Very large file: app/assistant/kg_core/kg_utils/kg_tools.py (1808 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-8113e32ca6caa08b", "name": "Very large file: app/assistant/kg_core/kg_setup/seed_taxonomy_large.py (1583 lines)", "shortDescription": {"text": "Very large file: app/assistant/kg_core/kg_setup/seed_taxonomy_large.py (1583 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-e37dbb9e14aabf89", "name": "Very large file: app/assistant/kg_core/kg_setup/seed_taxonomy_minimal_curated.py (1068 lines)", "shortDescription": {"text": "Very large file: app/assistant/kg_core/kg_setup/seed_taxonomy_minimal_curated.py (1068 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-9a64eb02168843eb", "name": "Very large file: app/assistant/room_session_manager/room_session_manager.py (1171 lines)", "shortDescription": {"text": "Very large file: app/assistant/room_session_manager/room_session_manager.py (1171 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-a1046243596a2a7a", "name": "Very large file: app/assistant/control_nodes/task_compile_post_node.py (1699 lines)", "shortDescription": {"text": "Very large file: app/assistant/control_nodes/task_compile_post_node.py (1699 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-7eeb7d5f9b8f990d", "name": "Very large file: app/assistant/orchestrator_classes/Orchestrator.py (1575 lines)", "shortDescription": {"text": "Very large file: app/assistant/orchestrator_classes/Orchestrator.py (1575 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-f0be6f41ba155a22", "name": "Very large file: app/services/llm_client.py (1593 lines)", "shortDescription": {"text": "Very large file: app/services/llm_client.py (1593 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-ea3b5e389d8c9c0f", "name": "Low test-to-source ratio", "shortDescription": {"text": "Low test-to-source ratio"}, "fullDescription": {"text": "289 tests / 1722 src (ratio 0.17)."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-786c8c22d3fe624f", "name": "48 TODO/FIXME markers", "shortDescription": {"text": "48 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-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 1877 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 161 placeholder/mock markers across 71 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 ci. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c208b4ba0cf55f93", "name": "Agent authority lacks a verifier contract: skills/filesystem-layout/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/filesystem-layout/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-d60ec577be87f618", "name": "Agent authority lacks a verifier contract: skills/extending-emi-resources/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/extending-emi-resources/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-3c4a4de84684437a", "name": "Agent authority lacks a verifier contract: skills/slack-formatting/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/slack-formatting/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-51a4aaa56375394c", "name": "Agent authority lacks a verifier contract: skills/kg-conflict-triage/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/kg-conflict-triage/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-2b115b6c93555078", "name": "Agent authority lacks a verifier contract: skills/emi-ui-templating/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: skills/emi-ui-templating/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-169c69372d1376af", "name": "Network/subprocess call without timeout or try/except \u2014 start.py:45", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 start.py:45"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ce4ebdb6beabc96a", "name": "Commented-code block (5 lines) in setup.py:106", "shortDescription": {"text": "Commented-code block (5 lines) in setup.py:106"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a36fc80206b6b652", "name": "Network/subprocess call without timeout or try/except \u2014 setup.py:212", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 setup.py:212"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-45feb20cc9e5efd9", "name": "Legacy-named symbol `http_sse_deprecated` in mcp/validate_servers.py:59", "shortDescription": {"text": "Legacy-named symbol `http_sse_deprecated` in mcp/validate_servers.py: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-537ce0dd22a2675d", "name": "Legacy-named symbol `best_old` in _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/orchestrator.py:468", "shortDescription": {"text": "Legacy-named symbol `best_old` in _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/orchestrator.py:468"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4519fe3a4a14884d", "name": "Commented-code block (5 lines) in _archived/control_nodes_2026_05_06/app/assistant/control_nodes/playwright_page_overvie", "shortDescription": {"text": "Commented-code block (5 lines) in _archived/control_nodes_2026_05_06/app/assistant/control_nodes/playwright_page_overview_node.py: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-ec9820a37ed9397e", "name": "Legacy-named symbol `entity_card_v2` in scripts/migrate_entity_card_v2_nullable_node_id.py:1", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in scripts/migrate_entity_card_v2_nullable_node_id.py:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5243e0b15b57d37f", "name": "Commented-code block (6 lines) in scripts/audit_kg_attributes_json.py:34", "shortDescription": {"text": "Commented-code block (6 lines) in scripts/audit_kg_attributes_json.py:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fe4dd52de8965cb3", "name": "Legacy-named symbol `entity_card_v2` in scripts/cleanup_ghost_entities.py:97", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in scripts/cleanup_ghost_entities.py:97"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0e23578a6ad19553", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/sync_dev_wiki_to_github.py:228", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/sync_dev_wiki_to_github.py:228"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-03bd6d4d82f181ac", "name": "Legacy-named symbol `is_backup` in app/socket_handlers.py:348", "shortDescription": {"text": "Legacy-named symbol `is_backup` in app/socket_handlers.py:348"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-83aa9f3008f428bc", "name": "Legacy-named symbol `entity_cards_v2` in app/create_app.py:170", "shortDescription": {"text": "Legacy-named symbol `entity_cards_v2` in app/create_app.py:170"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3e58caa64556a633", "name": "Commented-code block (5 lines) in app/create_app.py:101", "shortDescription": {"text": "Commented-code block (5 lines) in app/create_app.py:101"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-74d6231a258546e5", "name": "Commented-code block (8 lines) in app/bootstrap.py:236", "shortDescription": {"text": "Commented-code block (8 lines) in app/bootstrap.py:236"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-acf96d5df516a7bf", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/kg_lens/frontend/src/api.ts:17", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/kg_lens/frontend/src/api.ts:17"}, "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-bac74f2ae234b96e", "name": "Commented-code block (6 lines) in app/kg_lens/frontend/src/components/Graph3D.tsx:8", "shortDescription": {"text": "Commented-code block (6 lines) in app/kg_lens/frontend/src/components/Graph3D.tsx:8"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e41d142f713034aa", "name": "Commented-code block (6 lines) in app/kg_lens/frontend/src/components/GraphCanvas.tsx:47", "shortDescription": {"text": "Commented-code block (6 lines) in app/kg_lens/frontend/src/components/GraphCanvas.tsx:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-96628d76071d88ea", "name": "Commented-code block (5 lines) in app/static/js/lights_settings.js:297", "shortDescription": {"text": "Commented-code block (5 lines) in app/static/js/lights_settings.js: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-43d88a89250e9922", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/lights_settings.js:28", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/lights_settings.js:28"}, "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-1e6245ac825c8ef7", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/wellness_settings.js:10", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/wellness_settings.js:10"}, "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-485fdd67d4e77ac6", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/music_player.js:371", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/music_player.js:371"}, "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-fbaf661587a54014", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/important_resources_settings.js:110", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/important_resources_settings.js:110"}, "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-f5be293e8b829233", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/api_keys_settings.js:27", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/api_keys_settings.js: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-5038cfe256034e1e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/insights.js:185", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/insights.js:185"}, "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-0f72f28ddb2dd077", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/beliefs.js:41", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/beliefs.js: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-6679eb00bac6f761", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/quiet_mode_settings.js:185", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/quiet_mode_settings.js:185"}, "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-a3ae7fef8a64fa3f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/ring_snapshots.js:144", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/ring_snapshots.js:144"}, "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-1db40637e0d9557b", "name": "Legacy-named symbol `recently_deprecated` in app/static/js/personalize_beliefs.js:123", "shortDescription": {"text": "Legacy-named symbol `recently_deprecated` in app/static/js/personalize_beliefs.js:123"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-31c8ae979ece284e", "name": "Commented-code block (7 lines) in app/static/js/weather.js:140", "shortDescription": {"text": "Commented-code block (7 lines) in app/static/js/weather.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-c0165ab895356cf1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/integrations_shared.js:34", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/integrations_shared.js: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-5491797c21f47e1d", "name": "Commented-code block (7 lines) in app/static/js/timeline.js:3", "shortDescription": {"text": "Commented-code block (7 lines) in app/static/js/timeline.js: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-437678b9f6b4f8a3", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/timeline.js:103", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/timeline.js: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-a5327758cd26be4c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/entity_cards_editor.js:123", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/entity_cards_editor.js:123"}, "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-7945519cf1724ea0", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/voice_settings.js:167", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/voice_settings.js:167"}, "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-0ef8ec3978a71c0e", "name": "Commented-code block (6 lines) in app/static/js/Emi.js:1462", "shortDescription": {"text": "Commented-code block (6 lines) in app/static/js/Emi.js:1462"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ec1fa455f50caefa", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/Emi.js:140", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/Emi.js:140"}, "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-f507238377187efb", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/task_create_page.js:207", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/task_create_page.js:207"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-576ca5910e9254da", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/request_sender.js:81", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/request_sender.js:81"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4681340b00600d2b", "name": "Commented-code block (6 lines) in app/static/js/emi/chat_render.js:11", "shortDescription": {"text": "Commented-code block (6 lines) in app/static/js/emi/chat_render.js: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-56974e63c384fed9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/chat_render.js:235", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/chat_render.js:235"}, "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-1b7a8f924e9bb909", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/task_create_panel.js:115", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/task_create_panel.js:115"}, "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-46f053e42b75e1a4", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/doc_editor_page.js:208", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/doc_editor_page.js:208"}, "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-b821a1811334c12d", "name": "Commented-code block (5 lines) in app/static/js/emi/socket_heartbeat.js:102", "shortDescription": {"text": "Commented-code block (5 lines) in app/static/js/emi/socket_heartbeat.js: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-043991c72df5b725", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/doc_create_panel.js:49", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/doc_create_panel.js: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-b84477865f2f4fab", "name": "Network/subprocess call without timeout or try/except \u2014 app/graph_visualizer/start_visualizer.py:57", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 app/graph_visualizer/start_visualizer.py:57"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7df0e2286c19cbd4", "name": "Commented-code block (5 lines) in app/graph_visualizer/api.py:121", "shortDescription": {"text": "Commented-code block (5 lines) in app/graph_visualizer/api.py:121"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1025ef9af7b1eca7", "name": "Commented-code block (6 lines) in app/graph_visualizer/frontend/src/App.tsx:251", "shortDescription": {"text": "Commented-code block (6 lines) in app/graph_visualizer/frontend/src/App.tsx: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-03b4ef687d88e64c", "name": "Commented-code block (5 lines) in app/graph_visualizer/frontend/src/lib/graphUtils.ts:49", "shortDescription": {"text": "Commented-code block (5 lines) in app/graph_visualizer/frontend/src/lib/graphUtils.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-561e28c97851fc11", "name": "Legacy-named symbol `entity_card_v2` in app/database/table_initializer.py:87", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/database/table_initializer.py:87"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ce2a1ac43a186189", "name": "Legacy-named symbol `migration_backup` in app/database/migration_runner.py:103", "shortDescription": {"text": "Legacy-named symbol `migration_backup` in app/database/migration_runner.py: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-c29da972ab341121", "name": "Commented-code block (5 lines) in app/database/migration_runner.py:96", "shortDescription": {"text": "Commented-code block (5 lines) in app/database/migration_runner.py: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-48f7c338c1a46c7e", "name": "Commented-code block (7 lines) in app/routes/kg_interests.py:97", "shortDescription": {"text": "Commented-code block (7 lines) in app/routes/kg_interests.py: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-ae447f4d78a6dce1", "name": "Legacy-named symbol `belief_engine_v2` in app/routes/beliefs.py:55", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in app/routes/beliefs.py:55"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1ab55d6d5af7f202", "name": "Legacy-named symbol `entity_cards_v2` in app/routes/__init__.py:13", "shortDescription": {"text": "Legacy-named symbol `entity_cards_v2` in app/routes/__init__.py:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7737189b30264409", "name": "Commented-code block (5 lines) in app/routes/kg_maintenance.py:390", "shortDescription": {"text": "Commented-code block (5 lines) in app/routes/kg_maintenance.py: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-67b55cd5f9b4b0a7", "name": "Legacy-named symbol `belief_engine_v2` in app/routes/beliefs_shadow.py:23", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in app/routes/beliefs_shadow.py:23"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-148e9075176785d7", "name": "Commented-code block (7 lines) in app/routes/daily_summary.py:8", "shortDescription": {"text": "Commented-code block (7 lines) in app/routes/daily_summary.py:8"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-94452b1e829b86a0", "name": "Commented-code block (5 lines) in app/routes/process_request.py:68", "shortDescription": {"text": "Commented-code block (5 lines) in app/routes/process_request.py:68"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-51a85e3e82e59e9f", "name": "Legacy-named symbol `entity_cards_v2` in app/routes/setup.py:458", "shortDescription": {"text": "Legacy-named symbol `entity_cards_v2` in app/routes/setup.py:458"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0c16c7e8939f71e0", "name": "Commented-code block (7 lines) in app/routes/setup.py:456", "shortDescription": {"text": "Commented-code block (7 lines) in app/routes/setup.py: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-20fc426b1ece0d63", "name": "Commented-code block (6 lines) in app/routes/smart_home_bridge.py:268", "shortDescription": {"text": "Commented-code block (6 lines) in app/routes/smart_home_bridge.py:268"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-111b311a306e065e", "name": "Commented-code block (5 lines) in app/routes/wiki_viewer.py:547", "shortDescription": {"text": "Commented-code block (5 lines) in app/routes/wiki_viewer.py:547"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-54bd4d24d217f2f1", "name": "Legacy-named symbol `_recently_deprecated` in app/routes/personalize.py:110", "shortDescription": {"text": "Legacy-named symbol `_recently_deprecated` in app/routes/personalize.py:110"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9c377172e3c2e00e", "name": "Commented-code block (6 lines) in app/routes/personalize.py:271", "shortDescription": {"text": "Commented-code block (6 lines) in app/routes/personalize.py:271"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9b5b40ff8dbfc279", "name": "Legacy-named symbol `entity_card_v2` in app/routes/kg_pipeline_status.py:90", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/routes/kg_pipeline_status.py: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-721be015b7930e53", "name": "Commented-code block (7 lines) in app/routes/preferences.py:267", "shortDescription": {"text": "Commented-code block (7 lines) in app/routes/preferences.py:267"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6a8a982ea2dac6e3", "name": "Commented-code block (6 lines) in app/routes/kg_proposals.py:579", "shortDescription": {"text": "Commented-code block (6 lines) in app/routes/kg_proposals.py:579"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-443d50e32a4fe35e", "name": "Legacy-named symbol `entity_card_v2` in app/routes/entity_cards_v2.py:3", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/routes/entity_cards_v2.py:3"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5f678039679a24bf", "name": "Network/subprocess call without timeout or try/except \u2014 app/routes/process_audio.py:62", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 app/routes/process_audio.py:62"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bcb4b3aa0244c6cc", "name": "Commented-code block (6 lines) in app/resource_manager/resource_manager.py:461", "shortDescription": {"text": "Commented-code block (6 lines) in app/resource_manager/resource_manager.py:461"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-85241362b51167cf", "name": "Commented-code block (10 lines) in app/me/pagerank.py:416", "shortDescription": {"text": "Commented-code block (10 lines) in app/me/pagerank.py:416"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2d06431496961092", "name": "Commented-code block (5 lines) in app/me/layout_sim.py:25", "shortDescription": {"text": "Commented-code block (5 lines) in app/me/layout_sim.py:25"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4b5aa41855587890", "name": "Commented-code block (8 lines) in app/me/api.py:138", "shortDescription": {"text": "Commented-code block (8 lines) in app/me/api.py: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-f1770c16bd650cc0", "name": "`fetch()` without try/.catch or AbortSignal \u2014 app/me/frontend/src/api.ts:12", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/me/frontend/src/api.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-702887e54c190032", "name": "Commented-code block (5 lines) in app/me/frontend/src/App.tsx:30", "shortDescription": {"text": "Commented-code block (5 lines) in app/me/frontend/src/App.tsx:30"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-600c9955bc101080", "name": "Commented-code block (6 lines) in app/me/frontend/src/components/GraphCanvas.tsx:46", "shortDescription": {"text": "Commented-code block (6 lines) in app/me/frontend/src/components/GraphCanvas.tsx: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-efdfcba12be05967", "name": "Commented-code block (11 lines) in app/assistant/initialize_system.py:121", "shortDescription": {"text": "Commented-code block (11 lines) in app/assistant/initialize_system.py:121"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dd99eee7764c8b27", "name": "Legacy-named symbol `entity_cards_v2` in app/assistant/routine_manager/routine_functions.py:113", "shortDescription": {"text": "Legacy-named symbol `entity_cards_v2` in app/assistant/routine_manager/routine_functions.py:113"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0da2be8683469ba7", "name": "Commented-code block (6 lines) in app/assistant/routine_manager/routine_functions.py:451", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/routine_manager/routine_functions.py: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-bc8f74eb750fae36", "name": "Commented-code block (6 lines) in app/assistant/routine_manager/routine_manager.py:92", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/routine_manager/routine_manager.py:92"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7bf691d93b533f11", "name": "Legacy-named symbol `routine_task_runner_v2` in app/assistant/routine_manager/runners/taskrunner/task_runner.py:55", "shortDescription": {"text": "Legacy-named symbol `routine_task_runner_v2` in app/assistant/routine_manager/runners/taskrunner/task_runner.py:55"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-24d13ae43235e800", "name": "Commented-code block (5 lines) in app/assistant/routine_manager/runners/taskrunner/task_runner.py:47", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/routine_manager/runners/taskrunner/task_runner.py:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8db14cdebe1c91ff", "name": "Commented-code block (5 lines) in app/assistant/wiki_generator/page_writer.py:110", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/wiki_generator/page_writer.py: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-6fba12df6bcef1ea", "name": "Legacy-named symbol `entity_card_v2` in app/assistant/wiki_generator/consistency_critic.py:70", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/wiki_generator/consistency_critic.py:70"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-79a5d7e25a0844ab", "name": "Commented-code block (5 lines) in app/assistant/wiki_generator/wiki_renderer.py:152", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/wiki_generator/wiki_renderer.py:152"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b681a2777a27b98f", "name": "Legacy-named symbol `entity_card_v2` in app/assistant/entity_management/entity_card_v2.py:7", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/entity_management/entity_card_v2.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a7a90675bdf1e3e8", "name": "Commented-code block (5 lines) in app/assistant/entity_management/entity_card_v2.py:75", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/entity_management/entity_card_v2.py:75"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-759521aa94175f08", "name": "Legacy-named symbol `entity_card_v2` in app/assistant/entity_management/entity_catalog.py:4", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/entity_management/entity_catalog.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8bf5decfd3bcda3f", "name": "Legacy-named symbol `entity_card_v2` in app/assistant/entity_management/entity_cards.py:6", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/entity_management/entity_cards.py:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b5a7363743da6774", "name": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/test_task_creation_flow.py:192", "shortDescription": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/test_task_creation_flow.py:192"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-474e2db53db56ae3", "name": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/test_compile_morning_briefing.py:234", "shortDescription": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/test_compile_morning_briefing.py: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-2a48eeadc999e30d", "name": "Legacy-named symbol `timesheet_batch_v1` in app/assistant/tests/test_job_spec_loader.py:16", "shortDescription": {"text": "Legacy-named symbol `timesheet_batch_v1` in app/assistant/tests/test_job_spec_loader.py:16"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e5ddb3d21765c327", "name": "Commented-code block (6 lines) in app/assistant/tests/test_setup.py:5", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/tests/test_setup.py: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-0116d323ca4ae4ef", "name": "Legacy-named symbol `timesheet_narratives_v1` in app/assistant/tests/test_task_spec_loader.py:15", "shortDescription": {"text": "Legacy-named symbol `timesheet_narratives_v1` in app/assistant/tests/test_task_spec_loader.py:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-06a1ddae14b17412", "name": "Legacy-named symbol `timesheet_narratives_v1` in app/assistant/tests/agent_tests/test_task_compile_existing_specs.py:56", "shortDescription": {"text": "Legacy-named symbol `timesheet_narratives_v1` in app/assistant/tests/agent_tests/test_task_compile_existing_specs.py:56"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7044d0db4d75990e", "name": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/agent_tests/test_task_compile_semantic_matrix.py:152", "shortDescription": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/agent_tests/test_task_compile_semantic_matrix.py:152"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-88405aad6a763ae7", "name": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/agent_tests/test_task_ir_runner.py:24", "shortDescription": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/agent_tests/test_task_ir_runner.py:24"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-da86dd31ae9bc2d2", "name": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/agent_tests/test_task_ir_pinned_tools.py:65", "shortDescription": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/agent_tests/test_task_ir_pinned_tools.py: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-8198e538451c6d5d", "name": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/agent_tests/test_task_compile_manager.py:13", "shortDescription": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/agent_tests/test_task_compile_manager.py:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-283bce58b92ef8fc", "name": "Commented-code block (11 lines) in app/assistant/tests/agent_tests/node_merge_agent/node_merge_test.py:11", "shortDescription": {"text": "Commented-code block (11 lines) in app/assistant/tests/agent_tests/node_merge_agent/node_merge_test.py: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-566d3e7764cf2dff", "name": "Commented-code block (7 lines) in app/assistant/tests/agent_tests/fact_canonicalizer/pipeline_integration.py:326", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/tests/agent_tests/fact_canonicalizer/pipeline_integration.py:326"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-74f67eecec8b3e01", "name": "Legacy-named symbol `meal_beliefs_v2` in app/assistant/tests/non_agent_tests/test_meal_food_beliefs_recency.py:92", "shortDescription": {"text": "Legacy-named symbol `meal_beliefs_v2` in app/assistant/tests/non_agent_tests/test_meal_food_beliefs_recency.py:92"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-30df3699076e37d3", "name": "Legacy-named symbol `belief_engine_v2` in app/assistant/tests/non_agent_tests/test_belief_shadow.py:13", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in app/assistant/tests/non_agent_tests/test_belief_shadow.py:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3c199f172685f284", "name": "Commented-code block (6 lines) in app/assistant/tests/non_agent_tests/test_web_page_coords_viewport_accuracy.py:1107", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/tests/non_agent_tests/test_web_page_coords_viewport_accuracy.py:1107"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6fa46290f7a892cc", "name": "Legacy-named symbol `run_with_backup` in app/assistant/tests/non_agent_tests/test_migration_backup.py:4", "shortDescription": {"text": "Legacy-named symbol `run_with_backup` in app/assistant/tests/non_agent_tests/test_migration_backup.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b3dbc417d0002517", "name": "Legacy-named symbol `scope_context_v1` in app/assistant/tests/non_agent_tests/test_room_scope_yaml_overlay.py:52", "shortDescription": {"text": "Legacy-named symbol `scope_context_v1` in app/assistant/tests/non_agent_tests/test_room_scope_yaml_overlay.py:52"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ba5cde2703f12f0f", "name": "Commented-code block (5 lines) in app/assistant/tests/non_agent_tests/test_master_room_scope_yaml.py:68", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/tests/non_agent_tests/test_master_room_scope_yaml.py:68"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-277ee9e9c237b16f", "name": "Legacy-named symbol `entity_card_v2` in app/assistant/tests/non_agent_tests/test_fresh_db_boot.py:6", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/tests/non_agent_tests/test_fresh_db_boot.py:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1bbbed74320a1910", "name": "Legacy-named symbol `meal_beliefs_v2` in app/assistant/tests/non_agent_tests/test_meal_beliefs_v2_lane.py:9", "shortDescription": {"text": "Legacy-named symbol `meal_beliefs_v2` in app/assistant/tests/non_agent_tests/test_meal_beliefs_v2_lane.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-92755ea6b6f652ef", "name": "Commented-code block (6 lines) in app/assistant/tests/non_agent_tests/test_authority_floor.py:189", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/tests/non_agent_tests/test_authority_floor.py: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-957a68ef52125487", "name": "Legacy-named symbol `test_get_agent_config_returns_copy` in app/assistant/tests/non_agent_tests/test_safety_kernel.py:10", "shortDescription": {"text": "Legacy-named symbol `test_get_agent_config_returns_copy` in app/assistant/tests/non_agent_tests/test_safety_kernel.py:107"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-687b1f626153b7ff", "name": "Legacy-named symbol `_patch_backup` in app/assistant/tests/non_agent_tests/test_migration_runner.py:148", "shortDescription": {"text": "Legacy-named symbol `_patch_backup` in app/assistant/tests/non_agent_tests/test_migration_runner.py: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-cb15b137004a885f", "name": "Legacy-named symbol `belief_engine_v2` in app/assistant/tests/non_agent_tests/test_belief_v2_ingest.py:10", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in app/assistant/tests/non_agent_tests/test_belief_v2_ingest.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d61c5b45829e005a", "name": "Commented-code block (5 lines) in app/assistant/tests/chat_narrator/test_chat_narrator.py:265", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/tests/chat_narrator/test_chat_narrator.py: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-0b98ce453333a731", "name": "Legacy-named symbol `test_all_named_managers_returns_copy` in app/assistant/tests/chat_narrator/test_display_names.py:73", "shortDescription": {"text": "Legacy-named symbol `test_all_named_managers_returns_copy` in app/assistant/tests/chat_narrator/test_display_names.py: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-1665b03e3c99ba19", "name": "Commented-code block (5 lines) in app/assistant/tests/kg/test_promoter_evidence_writes.py:163", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/tests/kg/test_promoter_evidence_writes.py:163"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-88d39436a788d267", "name": "Commented-code block (5 lines) in app/assistant/tests/kg/conftest.py:17", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/tests/kg/conftest.py:17"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f2926d00687487e2", "name": "Commented-code block (8 lines) in app/assistant/tests/kg/test_state_event_merge.py:214", "shortDescription": {"text": "Commented-code block (8 lines) in app/assistant/tests/kg/test_state_event_merge.py:214"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1610362f37820651", "name": "Legacy-named symbol `M_old` in app/assistant/tests/kg/test_promoter_single_target_p21.py:55", "shortDescription": {"text": "Legacy-named symbol `M_old` in app/assistant/tests/kg/test_promoter_single_target_p21.py:55"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3a885d403cc7b931", "name": "Legacy-named symbol `e_old` in app/assistant/tests/kg/test_diachronic_succession.py:250", "shortDescription": {"text": "Legacy-named symbol `e_old` in app/assistant/tests/kg/test_diachronic_succession.py:250"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f56b1b4ae4ef89b0", "name": "Legacy-named symbol `entity_card_v2` in app/assistant/tests/kg/test_enricher_hub_doctrine.py:48", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/tests/kg/test_enricher_hub_doctrine.py:48"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a5c639dec01ecdd3", "name": "Commented-code block (7 lines) in app/assistant/tests/room_test_harness/sandbox_setup.py:194", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/tests/room_test_harness/sandbox_setup.py: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-51d50fc194fef768", "name": "Commented-code block (7 lines) in app/assistant/tests/room_test_harness/harness.py:169", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/tests/room_test_harness/harness.py: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-15e2c66ae00b225c", "name": "Commented-code block (8 lines) in app/assistant/agent_runtime/services/chat_memory_rag.py:28", "shortDescription": {"text": "Commented-code block (8 lines) in app/assistant/agent_runtime/services/chat_memory_rag.py: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-c36071b1db8bf46b", "name": "Legacy-named symbol `entity_card_v2` in app/assistant/agent_runtime/services/entity_injector.py:62", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/agent_runtime/services/entity_injector.py:62"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f05d919476c15fd0", "name": "Commented-code block (6 lines) in app/assistant/agent_runtime/services/entity_injector.py:110", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/agent_runtime/services/entity_injector.py: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-2ddd81d67a4ea1e8", "name": "Commented-code block (7 lines) in app/assistant/agent_runtime/services/context_injector.py:525", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/agent_runtime/services/context_injector.py: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-fa2f9f0d05f3c527", "name": "Commented-code block (5 lines) in app/assistant/agent_runtime/services/llm_client.py:395", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/agent_runtime/services/llm_client.py:395"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b21568ebef39ed7e", "name": "Commented-code block (6 lines) in app/assistant/agent_runtime/services/progress_emitter.py:26", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/agent_runtime/services/progress_emitter.py: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-5af4c8e69dd26b5b", "name": "Commented-code block (5 lines) in app/assistant/agent_runtime/services/tool_policy_resolver.py:114", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/agent_runtime/services/tool_policy_resolver.py:114"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d9b9cfab460b2ab6", "name": "Legacy-named symbol `pat_legacy` in app/assistant/agent_runtime/services/prompt_builder.py:155", "shortDescription": {"text": "Legacy-named symbol `pat_legacy` in app/assistant/agent_runtime/services/prompt_builder.py:155"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-89d40117b0d11e1c", "name": "Commented-code block (5 lines) in app/assistant/agent_runtime/services/prompt_builder.py:42", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/agent_runtime/services/prompt_builder.py:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5e69191571941ee0", "name": "Commented-code block (5 lines) in app/assistant/dayflow_orchestrator/dayflow_scheduler.py:40", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/dayflow_orchestrator/dayflow_scheduler.py: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-a8f3d019c7947726", "name": "Commented-code block (5 lines) in app/assistant/dayflow_orchestrator/dispatch_sweeper.py:40", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/dayflow_orchestrator/dispatch_sweeper.py: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-3c8ab797cad1f40b", "name": "Commented-code block (5 lines) in app/assistant/dayflow_orchestrator/dayflow_item_writer.py:302", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/dayflow_orchestrator/dayflow_item_writer.py: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-a113460541fcf5b5", "name": "Commented-code block (6 lines) in app/assistant/chat_narrator/chat_narrator.py:190", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/chat_narrator/chat_narrator.py: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-6b01e66f995cfce9", "name": "Legacy-named symbol `meal_beliefs_v2` in app/assistant/subconscious/meal_context_builder.py:310", "shortDescription": {"text": "Legacy-named symbol `meal_beliefs_v2` in app/assistant/subconscious/meal_context_builder.py:310"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4055438625a71b25", "name": "Commented-code block (6 lines) in app/assistant/subconscious/meal_context_builder.py:470", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/subconscious/meal_context_builder.py:470"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-188c86172e85dcf8", "name": "Commented-code block (5 lines) in app/assistant/subconscious/persist.py:29", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/subconscious/persist.py: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-dc6490ea4417af5e", "name": "Commented-code block (5 lines) in app/assistant/subconscious/feedback_extractor_persist.py:94", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/subconscious/feedback_extractor_persist.py: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-42a79dd9a7f84583", "name": "Legacy-named symbol `pop_backup` in app/assistant/dj_manager/selector.py:62", "shortDescription": {"text": "Legacy-named symbol `pop_backup` in app/assistant/dj_manager/selector.py:62"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-80401615a40278a9", "name": "Legacy-named symbol `_sample_for_prompt_legacy` in app/assistant/dj_manager/music_dataset.py:935", "shortDescription": {"text": "Legacy-named symbol `_sample_for_prompt_legacy` in app/assistant/dj_manager/music_dataset.py:935"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a12618e80c1342a3", "name": "Legacy-named symbol `pop_backup` in app/assistant/dj_manager/manager.py:921", "shortDescription": {"text": "Legacy-named symbol `pop_backup` in app/assistant/dj_manager/manager.py:921"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5835e37c65381a60", "name": "Commented-code block (6 lines) in app/assistant/agent_registry/agent_registry.py:405", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/agent_registry/agent_registry.py:405"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-22306ffa113ec388", "name": "Commented-code block (7 lines) in app/assistant/pod_store/pod_utils.py:68", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/pod_store/pod_utils.py:68"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d62f9be878e60840", "name": "Commented-code block (8 lines) in app/assistant/pod_store/models.py:107", "shortDescription": {"text": "Commented-code block (8 lines) in app/assistant/pod_store/models.py: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-f683e62f86c05f0d", "name": "Commented-code block (5 lines) in app/assistant/pod_store/image_ingest.py:212", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/pod_store/image_ingest.py:212"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e8d5995789919032", "name": "Commented-code block (6 lines) in app/assistant/pod_store/pod_store.py:218", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/pod_store/pod_store.py: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-908e2679f1a5e54c", "name": "Commented-code block (5 lines) in app/assistant/pod_store/materializers/__init__.py:113", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/pod_store/materializers/__init__.py:113"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-40731f0022c7306c", "name": "Legacy-named symbol `resource_user_beliefs_v2` in app/assistant/pipelines/daily_insights/steps/belief_v2_shadow_ingest.p", "shortDescription": {"text": "Legacy-named symbol `resource_user_beliefs_v2` in app/assistant/pipelines/daily_insights/steps/belief_v2_shadow_ingest.py:27"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0e0cb71c4ed9cded", "name": "Commented-code block (7 lines) in app/assistant/pipelines/daily_insights/steps/archive_daily_timeline.py:140", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/pipelines/daily_insights/steps/archive_daily_timeline.py: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-cfa3fe9ce60b8259", "name": "Commented-code block (6 lines) in app/assistant/pipelines/kg_pipeline/runner.py:31", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/pipelines/kg_pipeline/runner.py:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-997991310a3c5451", "name": "Legacy-named symbol `kg_pipeline_v1` in app/assistant/pipelines/kg_pipeline/steps/segment_messages.py:40", "shortDescription": {"text": "Legacy-named symbol `kg_pipeline_v1` in app/assistant/pipelines/kg_pipeline/steps/segment_messages.py:40"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5ab54a8d91639a1f", "name": "Legacy-named symbol `kg_pipeline_v1` in app/assistant/pipelines/kg_pipeline/steps/resolve_messages.py:69", "shortDescription": {"text": "Legacy-named symbol `kg_pipeline_v1` in app/assistant/pipelines/kg_pipeline/steps/resolve_messages.py:69"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5e048376495dbc1e", "name": "Commented-code block (11 lines) in app/assistant/pipelines/kg_pipeline/steps/resolve_messages.py:43", "shortDescription": {"text": "Commented-code block (11 lines) in app/assistant/pipelines/kg_pipeline/steps/resolve_messages.py: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-759ad36b23242306", "name": "Legacy-named symbol `kg_pipeline_v1` in app/assistant/pipelines/kg_pipeline/steps/enrich_extraction.py:37", "shortDescription": {"text": "Legacy-named symbol `kg_pipeline_v1` in app/assistant/pipelines/kg_pipeline/steps/enrich_extraction.py:37"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2e655f95595a4095", "name": "Commented-code block (5 lines) in app/assistant/pipelines/kg_pipeline/steps/enrich_extraction.py:225", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/kg_pipeline/steps/enrich_extraction.py: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-ecd11fd765e61071", "name": "Legacy-named symbol `kg_pipeline_v1` in app/assistant/pipelines/kg_pipeline/steps/write_proposals.py:40", "shortDescription": {"text": "Legacy-named symbol `kg_pipeline_v1` in app/assistant/pipelines/kg_pipeline/steps/write_proposals.py:40"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-668210bd4102568a", "name": "Legacy-named symbol `window_critic_v2` in app/assistant/pipelines/kg_pipeline/steps/critique_and_extract.py:32", "shortDescription": {"text": "Legacy-named symbol `window_critic_v2` in app/assistant/pipelines/kg_pipeline/steps/critique_and_extract.py:32"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0882651c2837ae53", "name": "Legacy-named symbol `entity_card_v2` in app/assistant/pipelines/entity_cards_v2/builder.py:30", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/pipelines/entity_cards_v2/builder.py:30"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8f1cfa2ce2f64218", "name": "Commented-code block (10 lines) in app/assistant/pipelines/entity_cards_v2/builder.py:48", "shortDescription": {"text": "Commented-code block (10 lines) in app/assistant/pipelines/entity_cards_v2/builder.py:48"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a3438c848373388c", "name": "Legacy-named symbol `entity_card_v2` in app/assistant/pipelines/entity_cards_v2/refresh_subscriber.py:33", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/pipelines/entity_cards_v2/refresh_subscriber.py:33"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7786b3c525ed0a87", "name": "Commented-code block (5 lines) in app/assistant/pipelines/entity_cards_v2/refresh_subscriber.py:124", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/entity_cards_v2/refresh_subscriber.py: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-8dd6b1c262d6917e", "name": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/utils/subconscious_projection.py:61", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/utils/subconscious_projection.py: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-b7cb784b4b92478b", "name": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/utils/context_sources.py:647", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/utils/context_sources.py:647"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5eea303a64f75c71", "name": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/sleep/sleep_resource_generator.py:437", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/sleep/sleep_resource_generator.py:437"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8683e9594d6c9b37", "name": "Commented-code block (7 lines) in app/assistant/pipelines/dayflow/steps/dayflow_routine_stage.py:50", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/pipelines/dayflow/steps/dayflow_routine_stage.py:50"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-53985a70d6341e8d", "name": "Commented-code block (6 lines) in app/assistant/pipelines/dayflow/steps/daily_context_generator_stage.py:440", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/pipelines/dayflow/steps/daily_context_generator_stage.py:440"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f362ac8abc070de6", "name": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/steps/conversation_starter_stage.py:28", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/steps/conversation_starter_stage.py: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-9ed9bdbad4f3580d", "name": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/steps/activity_tracker_stage.py:239", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/steps/activity_tracker_stage.py: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-6ee0ac00d99c17fa", "name": "Commented-code block (7 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_cluster_resolve.py:52", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_cluster_resolve.py: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-44a85d4beb0d69c6", "name": "Commented-code block (10 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_state_decay.py:44", "shortDescription": {"text": "Commented-code block (10 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_state_decay.py: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-dbb89676686a3136", "name": "Commented-code block (9 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_missing_dates_scan.py:79", "shortDescription": {"text": "Commented-code block (9 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_missing_dates_scan.py: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-eba3b6d3aecfa5ce", "name": "Commented-code block (5 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_goal_outcome_detect.py:140", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_goal_outcome_detect.py: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-15dbcf9504813abf", "name": "Commented-code block (8 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_duplicate_scan.py:71", "shortDescription": {"text": "Commented-code block (8 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_duplicate_scan.py:71"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b03f477c0be7d64d", "name": "Commented-code block (5 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_wiki_inference.py:135", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_wiki_inference.py: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-8398bdbcba49136a", "name": "Commented-code block (6 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_execute_findings.py:155", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_execute_findings.py: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-0dd77e2533c56e7a", "name": "Commented-code block (11 lines) in app/assistant/pipelines/kg_maintenance_pipeline/pipeline.py:97", "shortDescription": {"text": "Commented-code block (11 lines) in app/assistant/pipelines/kg_maintenance_pipeline/pipeline.py: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-875ef9957420b39c", "name": "Commented-code block (8 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_pagerank.py:128", "shortDescription": {"text": "Commented-code block (8 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_pagerank.py:128"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-df15aead3f72b63c", "name": "Commented-code block (5 lines) in app/assistant/scope/loader.py:66", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/scope/loader.py: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-e2f6b5d252f49c95", "name": "Legacy-named symbol `norm_old` in app/assistant/utils/search_replace_editor.py:230", "shortDescription": {"text": "Legacy-named symbol `norm_old` in app/assistant/utils/search_replace_editor.py:230"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5d4ad5ba1ac8a221", "name": "Commented-code block (6 lines) in app/assistant/utils/system_activity.py:78", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/utils/system_activity.py: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-7ba19c8190444e23", "name": "Legacy-named symbol `scope_context_v1` in app/assistant/utils/pydantic_classes.py:162", "shortDescription": {"text": "Legacy-named symbol `scope_context_v1` in app/assistant/utils/pydantic_classes.py:162"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ef5b703c9d61b7d8", "name": "Commented-code block (9 lines) in app/assistant/utils/pydantic_classes.py:174", "shortDescription": {"text": "Commented-code block (9 lines) in app/assistant/utils/pydantic_classes.py:174"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-94a688e9e36e9e71", "name": "Commented-code block (5 lines) in app/assistant/env_registry/env_registry_service.py:294", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/env_registry/env_registry_service.py: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-978607719c1fb682", "name": "Commented-code block (5 lines) in app/assistant/kg_maintenance/verdict_store.py:112", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/kg_maintenance/verdict_store.py: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-3b357dceb667eb96", "name": "Commented-code block (5 lines) in app/assistant/kg_maintenance/store.py:238", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/kg_maintenance/store.py: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-fce07269b6a57ec4", "name": "Commented-code block (6 lines) in app/assistant/lib/tool_registry/tool_registry.py:323", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/lib/tool_registry/tool_registry.py:323"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-569b6bd5c7fabf8f", "name": "Commented-code block (6 lines) in app/assistant/lib/tool_execution/tool_approval.py:53", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/lib/tool_execution/tool_approval.py:53"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-38236ca635d96f85", "name": "Commented-code block (6 lines) in app/assistant/lib/tools/web_fill_ref/web_fill_ref.py:121", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/web_fill_ref/web_fill_ref.py:121"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6084308a3395d83a", "name": "Commented-code block (5 lines) in app/assistant/lib/tools/get_email_messages/get_email_messages.py:133", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/get_email_messages/get_email_messages.py: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-8ab98f28b31f198e", "name": "Commented-code block (10 lines) in app/assistant/lib/tools/get_email_thread/get_email_thread.py:220", "shortDescription": {"text": "Commented-code block (10 lines) in app/assistant/lib/tools/get_email_thread/get_email_thread.py: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-6b81801b498176cf", "name": "Commented-code block (6 lines) in app/assistant/lib/tools/web_type_secret/web_type_secret.py:161", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/web_type_secret/web_type_secret.py: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-b4be88f79a831e27", "name": "Commented-code block (6 lines) in app/assistant/lib/tools/web_page_coords/web_page_coords.py:50", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/web_page_coords/web_page_coords.py:50"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a606a45a39c87f53", "name": "Commented-code block (5 lines) in app/assistant/lib/tools/bluesky_reply/bluesky_reply.py:58", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/bluesky_reply/bluesky_reply.py:58"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-578aad9032a23722", "name": "Commented-code block (5 lines) in app/assistant/lib/tools/invoke_agent/invoke_agent.py:84", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/invoke_agent/invoke_agent.py: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-a9c5b81ad40f0fd4", "name": "Network/subprocess call without timeout or try/except \u2014 app/assistant/lib/tools/get_weather/utils/openmeteo.py:39", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 app/assistant/lib/tools/get_weather/utils/openmeteo.py:39"}, "fullDescription": {"text": "`requests.get(...)` 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-700f1b8f1c82baa0", "name": "Commented-code block (6 lines) in app/assistant/lib/tools/send_email/send_email.py:111", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/send_email/send_email.py: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-110df61ea0bddb12", "name": "Commented-code block (8 lines) in app/assistant/lib/tools/get_google_doc/get_google_doc.py:96", "shortDescription": {"text": "Commented-code block (8 lines) in app/assistant/lib/tools/get_google_doc/get_google_doc.py: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-19516385e6ac8154", "name": "Commented-code block (6 lines) in app/assistant/lib/tools/ask_user/ask_user.py:63", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/ask_user/ask_user.py: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-67d590975508e029", "name": "Legacy-named symbol `entity_cards_v2` in app/assistant/lib/tools/regenerate_entity_card/regenerate_entity_card.py:3", "shortDescription": {"text": "Legacy-named symbol `entity_cards_v2` in app/assistant/lib/tools/regenerate_entity_card/regenerate_entity_card.py:3"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c543313620559f30", "name": "Commented-code block (5 lines) in app/assistant/lib/tools/capture_monitor_screenshot/capture_monitor_screenshot.py:235", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/capture_monitor_screenshot/capture_monitor_screenshot.py:235"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b84fe1edeb3562b0", "name": "Commented-code block (5 lines) in app/assistant/lib/tools/capture_camera_snapshot/capture_camera_snapshot.py:49", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/capture_camera_snapshot/capture_camera_snapshot.py:49"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0206f45a4576649d", "name": "Commented-code block (8 lines) in app/assistant/lib/tools/http_request/http_request.py:408", "shortDescription": {"text": "Commented-code block (8 lines) in app/assistant/lib/tools/http_request/http_request.py: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-09744047d0c826ce", "name": "Commented-code block (7 lines) in app/assistant/lib/tools/http_request/tool_forms/tool_forms.py:34", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/lib/tools/http_request/tool_forms/tool_forms.py:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9259ef0b935fb06b", "name": "Commented-code block (6 lines) in app/assistant/lib/tools/bluesky_hydrate_post/bluesky_hydrate_post.py:43", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/bluesky_hydrate_post/bluesky_hydrate_post.py: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-2f051907f2d85cd5", "name": "Commented-code block (5 lines) in app/assistant/lib/tools/create_dayflow_ticket/create_dayflow_ticket.py:24", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/create_dayflow_ticket/create_dayflow_ticket.py:24"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c1d93e303bafa5dc", "name": "Commented-code block (5 lines) in app/assistant/lib/tools/kg_explorer_manager/kg_explorer_manager.py:39", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/kg_explorer_manager/kg_explorer_manager.py:39"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-520b12110e1db8c2", "name": "Commented-code block (6 lines) in app/assistant/lib/tools/run_shell/run_shell.py:83", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/run_shell/run_shell.py: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-316ee153fc72c501", "name": "Commented-code block (5 lines) in app/assistant/lib/google_auth/google_credentials.py:91", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/lib/google_auth/google_credentials.py:91"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f49f0a446c72cb9a", "name": "Commented-code block (6 lines) in app/assistant/lib/core_tools/kg_search/knowledge_graph_search.py:309", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/lib/core_tools/kg_search/knowledge_graph_search.py: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-735211b570afdf8a", "name": "Commented-code block (5 lines) in app/assistant/lib/core_tools/calendar_tool/calendar_tool.py:507", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/lib/core_tools/calendar_tool/calendar_tool.py:507"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-612b439a0fd2ce4d", "name": "Commented-code block (12 lines) in app/assistant/lib/core_tools/calendar_tool/utils/google_calendar.py:722", "shortDescription": {"text": "Commented-code block (12 lines) in app/assistant/lib/core_tools/calendar_tool/utils/google_calendar.py:722"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3cf3241b582a271f", "name": "Commented-code block (10 lines) in app/assistant/lib/core_tools/todo_tool/todo_tool.py:545", "shortDescription": {"text": "Commented-code block (10 lines) in app/assistant/lib/core_tools/todo_tool/todo_tool.py:545"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-69275e2d4e979800", "name": "Commented-code block (8 lines) in app/assistant/lib/core_tools/approval_gateway/approval_gateway.py:141", "shortDescription": {"text": "Commented-code block (8 lines) in app/assistant/lib/core_tools/approval_gateway/approval_gateway.py:141"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fa6df064ac2fb849", "name": "Commented-code block (8 lines) in app/assistant/lib/core_tools/kg_mutator/kg_mutator_tool.py:325", "shortDescription": {"text": "Commented-code block (8 lines) in app/assistant/lib/core_tools/kg_mutator/kg_mutator_tool.py:325"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f8e2e8cc7014583c", "name": "Commented-code block (6 lines) in app/assistant/lib/core_tools/email_tool/utils/gmail_api_client.py:335", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/lib/core_tools/email_tool/utils/gmail_api_client.py:335"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5289cc794bf26d2d", "name": "Commented-code block (6 lines) in app/assistant/lib/core_tools/email_tool/utils/email_processor.py:78", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/lib/core_tools/email_tool/utils/email_processor.py: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-ac143aebdeccf3f1", "name": "Commented-code block (5 lines) in app/assistant/lib/core_tools/manager_interface/manager_interface.py:13", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/lib/core_tools/manager_interface/manager_interface.py: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-bc18b6af719d6b51", "name": "Commented-code block (5 lines) in app/assistant/database/pending_question.py:44", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/database/pending_question.py: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-77abea5d5e70d633", "name": "Commented-code block (5 lines) in app/assistant/database/kg_chat_projection.py:59", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/database/kg_chat_projection.py:59"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a5bf2675aba6ce24", "name": "Commented-code block (5 lines) in app/assistant/database/claim_proposals.py:168", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/database/claim_proposals.py:168"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-85dc82cdd31f0883", "name": "Commented-code block (9 lines) in app/assistant/database/kg_maintenance_finding.py:136", "shortDescription": {"text": "Commented-code block (9 lines) in app/assistant/database/kg_maintenance_finding.py:136"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6cea5958c0564d19", "name": "Legacy-named symbol `run_with_backup` in app/assistant/database/migration_backup.py:14", "shortDescription": {"text": "Legacy-named symbol `run_with_backup` in app/assistant/database/migration_backup.py:14"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1473620cfe9f25eb", "name": "Commented-code block (5 lines) in app/assistant/ticket_manager/ticket_service.py:151", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/ticket_manager/ticket_service.py: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-6973361248c308f2", "name": "Stub function `dispatch` (body is just `pass`/`return`) \u2014 app/assistant/ticket_manager/ticket_dispatch/adapters/telegram", "shortDescription": {"text": "Stub function `dispatch` (body is just `pass`/`return`) \u2014 app/assistant/ticket_manager/ticket_dispatch/adapters/telegram.py:30"}, "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-c2181e2b78b1e448", "name": "Stub function `dispatch` (body is just `pass`/`return`) \u2014 app/assistant/ticket_manager/ticket_dispatch/adapters/sms.py:2", "shortDescription": {"text": "Stub function `dispatch` (body is just `pass`/`return`) \u2014 app/assistant/ticket_manager/ticket_dispatch/adapters/sms.py:29"}, "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-4dd7bd6af01341a4", "name": "Stub function `dispatch` (body is just `pass`/`return`) \u2014 app/assistant/ticket_manager/ticket_dispatch/adapters/slack.py", "shortDescription": {"text": "Stub function `dispatch` (body is just `pass`/`return`) \u2014 app/assistant/ticket_manager/ticket_dispatch/adapters/slack.py:27"}, "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-e8d8ceeab4808818", "name": "Commented-code block (5 lines) in app/assistant/kg/predicate_vocabulary.py:237", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/kg/predicate_vocabulary.py: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-bff417d12801efdb", "name": "Legacy-named symbol `entity_cards_v2` in app/assistant/kg/section_tagging.py:12", "shortDescription": {"text": "Legacy-named symbol `entity_cards_v2` in app/assistant/kg/section_tagging.py:12"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2cf30d7cc6ee7e57", "name": "Commented-code block (5 lines) in app/assistant/kg/section_tagging.py:30", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/kg/section_tagging.py: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-658c3715ad746718", "name": "Commented-code block (6 lines) in app/assistant/kg/proposal_writer.py:423", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/kg/proposal_writer.py: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-d404aae43596ca25", "name": "Commented-code block (6 lines) in app/assistant/kg/proposal_promoter.py:82", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/kg/proposal_promoter.py: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-f3f168843c308ce6", "name": "Commented-code block (5 lines) in app/assistant/kg/chroma/chroma_health.py:92", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/kg/chroma/chroma_health.py:92"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d9a021f0675635b1", "name": "Network/subprocess call without timeout or try/except \u2014 app/assistant/kg/chroma/chroma_health.py:103", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 app/assistant/kg/chroma/chroma_health.py:103"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f6a74065214f199e", "name": "Commented-code block (6 lines) in app/assistant/kg/chroma/chroma_embedding_manager.py:58", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/kg/chroma/chroma_embedding_manager.py:58"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b376bbc7d723ddf2", "name": "Commented-code block (5 lines) in app/assistant/kg/chroma/embedding_sync.py:143", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/kg/chroma/embedding_sync.py: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-3cdd61115976ec99", "name": "Commented-code block (8 lines) in app/assistant/kg/db/knowledge_graph_db_sqlite.py:43", "shortDescription": {"text": "Commented-code block (8 lines) in app/assistant/kg/db/knowledge_graph_db_sqlite.py: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-0c81500ebf83bd34", "name": "Commented-code block (5 lines) in app/assistant/kg/db/knowledge_graph_db.py:5", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/kg/db/knowledge_graph_db.py: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-9796dc98841fd46e", "name": "Commented-code block (5 lines) in app/assistant/kg_core/kg_utils/knowledge_graph_utils.py:175", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/kg_core/kg_utils/knowledge_graph_utils.py: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-80ace1d1cde74dfe", "name": "Commented-code block (5 lines) in app/assistant/kg_core/kg_utils/node_merge.py:269", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/kg_core/kg_utils/node_merge.py: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-a5e808dcf3858284", "name": "Commented-code block (5 lines) in app/assistant/kg_core/kg_utils/identity_sentence.py:245", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/kg_core/kg_utils/identity_sentence.py: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-02c4ccfa6b80b8f9", "name": "Commented-code block (5 lines) in app/assistant/kg_core/kg_utils/kg_convergence.py:56", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/kg_core/kg_utils/kg_convergence.py:56"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-20e29185b47dff7e", "name": "Commented-code block (6 lines) in app/assistant/kg_core/kg_utils/date_compare.py:27", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/kg_core/kg_utils/date_compare.py:27"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1192d22da5d717be", "name": "Legacy-named symbol `project_kg_redesign_v2` in app/assistant/kg_core/kg_utils/kg_tools.py:236", "shortDescription": {"text": "Legacy-named symbol `project_kg_redesign_v2` in app/assistant/kg_core/kg_utils/kg_tools.py:236"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5b622636a0357b54", "name": "Legacy-named symbol `kg_pipeline_old` in app/assistant/kg_core/kg_setup/_archived/edge_canon_postgres/seed_edge_types.py", "shortDescription": {"text": "Legacy-named symbol `kg_pipeline_old` in app/assistant/kg_core/kg_setup/_archived/edge_canon_postgres/seed_edge_types.py:936"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-08f19691fe7f489f", "name": "Commented-code block (5 lines) in app/assistant/validation/agent_validator.py:203", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/validation/agent_validator.py:203"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cc9b455abf7094a3", "name": "Legacy-named symbol `execution_trace_v1` in app/assistant/execution_trace/execution_trace_recorder.py:203", "shortDescription": {"text": "Legacy-named symbol `execution_trace_v1` in app/assistant/execution_trace/execution_trace_recorder.py:203"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c923f0f906e8ed20", "name": "Legacy-named symbol `entity_cards_v2` in app/assistant/importance/__init__.py:103", "shortDescription": {"text": "Legacy-named symbol `entity_cards_v2` in app/assistant/importance/__init__.py: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-9c6e396ca8de89fc", "name": "Commented-code block (7 lines) in app/assistant/importance/effective.py:73", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/importance/effective.py: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-bd80bb9aefedbf84", "name": "Legacy-named symbol `entity_cards_v2` in app/assistant/importance/consumers.py:58", "shortDescription": {"text": "Legacy-named symbol `entity_cards_v2` in app/assistant/importance/consumers.py:58"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ac30f6605dac8074", "name": "Commented-code block (8 lines) in app/assistant/importance/consumers.py:62", "shortDescription": {"text": "Commented-code block (8 lines) in app/assistant/importance/consumers.py: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-465b8f054288e417", "name": "Commented-code block (6 lines) in app/assistant/importance/scoring.py:138", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/importance/scoring.py: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-e33fdeb58d994a6b", "name": "Commented-code block (5 lines) in app/assistant/message_manager/save_to_unified_db.py:310", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/message_manager/save_to_unified_db.py:310"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ff9dc613c6f4fdc7", "name": "Commented-code block (7 lines) in app/assistant/agents/knowledge_graph_add/meta_data_add/agent_form.py:31", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/agents/knowledge_graph_add/meta_data_add/agent_form.py:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b13c2a9095046a56", "name": "Commented-code block (6 lines) in app/assistant/agents/wiki_consistency_critic/agent_form.py:17", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/agents/wiki_consistency_critic/agent_form.py:17"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-52ee1b7c922b54b3", "name": "Legacy-named symbol `eleven_monolingual_v1` in app/assistant/user_settings_manager/user_settings.py:115", "shortDescription": {"text": "Legacy-named symbol `eleven_monolingual_v1` in app/assistant/user_settings_manager/user_settings.py:115"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-092173548111c3eb", "name": "Legacy-named symbol `agent_registry_copy` in app/assistant/multi_agent_manager_factory/MultiAgentManagerFactory.py:48", "shortDescription": {"text": "Legacy-named symbol `agent_registry_copy` in app/assistant/multi_agent_manager_factory/MultiAgentManagerFactory.py:48"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b3174d80f24fd66c", "name": "Commented-code block (5 lines) in app/assistant/room_session_manager/room_session_manager.py:805", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/room_session_manager/room_session_manager.py:805"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-824027b726ebf88f", "name": "Commented-code block (6 lines) in app/assistant/room_session_manager/services/room_ingress_service.py:333", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/room_session_manager/services/room_ingress_service.py:333"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c4c04b62275fa4d3", "name": "Commented-code block (8 lines) in app/assistant/room_session_manager/services/room_mention_router.py:71", "shortDescription": {"text": "Commented-code block (8 lines) in app/assistant/room_session_manager/services/room_mention_router.py:71"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2d4f831577a309db", "name": "Commented-code block (5 lines) in app/assistant/room_session_manager/services/room_summary_service.py:18", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/room_session_manager/services/room_summary_service.py:18"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8dcdb684c46656d3", "name": "Commented-code block (5 lines) in app/assistant/room_session_manager/services/room_slash_command_router.py:428", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/room_session_manager/services/room_slash_command_router.py: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-38c72fbbd267d9ec", "name": "Commented-code block (5 lines) in app/assistant/room_session_manager/services/room_chat_summary.py:264", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/room_session_manager/services/room_chat_summary.py: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-8cd0d3c626feeda4", "name": "Legacy-named symbol `scope_context_v1` in app/assistant/room_session_manager/services/room_scope_builder.py:203", "shortDescription": {"text": "Legacy-named symbol `scope_context_v1` in app/assistant/room_session_manager/services/room_scope_builder.py:203"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9cd531a7310ef404", "name": "Commented-code block (6 lines) in app/assistant/room_session_manager/services/room_scope_builder.py:26", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/room_session_manager/services/room_scope_builder.py: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-320c7fe81e8a08ea", "name": "Commented-code block (6 lines) in app/assistant/room_session_manager/services/surfaces/ui_inbound_service.py:95", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/room_session_manager/services/surfaces/ui_inbound_service.py: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-603b5289a3940052", "name": "Commented-code block (7 lines) in app/assistant/tools/compile_task_from_string.py:154", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/tools/compile_task_from_string.py: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-4a0ae92d0909020b", "name": "Commented-code block (5 lines) in app/assistant/agent_classes/Planner.py:193", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/agent_classes/Planner.py: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-aa2e8d5d0d269073", "name": "Commented-code block (6 lines) in app/assistant/control_nodes/dayflow_switchboard_arguments_node.py:60", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/control_nodes/dayflow_switchboard_arguments_node.py: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-6aee0dc030b0160c", "name": "Commented-code block (6 lines) in app/assistant/control_nodes/post_room_finalize_node.py:300", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/control_nodes/post_room_finalize_node.py: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-560855450f309ab3", "name": "Commented-code block (10 lines) in app/assistant/control_nodes/tool_result_handler.py:601", "shortDescription": {"text": "Commented-code block (10 lines) in app/assistant/control_nodes/tool_result_handler.py:601"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c901b23e4590ee51", "name": "Commented-code block (5 lines) in app/assistant/control_nodes/fast_tick_promoter_node.py:24", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/control_nodes/fast_tick_promoter_node.py:24"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e2a0a7448bedd980", "name": "Legacy-named symbol `task_ir_v1` in app/assistant/control_nodes/task_compile_post_node.py:493", "shortDescription": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/control_nodes/task_compile_post_node.py:493"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bff378bad2eeed41", "name": "Legacy-named symbol `entity_card_v2` in app/assistant/control_nodes/context_enricher_prep_node.py:196", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/control_nodes/context_enricher_prep_node.py:196"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4c90624914293da2", "name": "Commented-code block (6 lines) in app/assistant/control_nodes/view_materializer_node.py:358", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/control_nodes/view_materializer_node.py:358"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-31ad2272e9b10c00", "name": "Legacy-named symbol `task_ir_v1` in app/assistant/control_nodes/task_compile_metadata_node.py:286", "shortDescription": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/control_nodes/task_compile_metadata_node.py:286"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4dd3dc5b6479147e", "name": "Commented-code block (5 lines) in app/assistant/control_nodes/tool_caller.py:453", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/control_nodes/tool_caller.py: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-da81fd20bab48f82", "name": "Commented-code block (7 lines) in app/assistant/control_nodes/_tool_caller_util.py:114", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/control_nodes/_tool_caller_util.py:114"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c23f248b42eb9ee3", "name": "Commented-code block (6 lines) in app/assistant/control_nodes/relevance_cleaner_persist_node.py:104", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/control_nodes/relevance_cleaner_persist_node.py: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-7077292c92c08fc9", "name": "Commented-code block (5 lines) in app/assistant/control_nodes/strategic_planner_prep_node.py:26", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/control_nodes/strategic_planner_prep_node.py: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-f67b9704c7cc5118", "name": "Legacy-named symbol `entity_card_v2` in app/assistant/kg_projection/neighborhood.py:353", "shortDescription": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/kg_projection/neighborhood.py:353"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-436ef55db6ac1dd1", "name": "Commented-code block (5 lines) in app/assistant/kg_projection/neighborhood.py:168", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/kg_projection/neighborhood.py:168"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-69a8b8fa84c12f84", "name": "Legacy-named symbol `manager_config_copy` in app/assistant/agent_flow_manager/agent_flow_manager.py:114", "shortDescription": {"text": "Legacy-named symbol `manager_config_copy` in app/assistant/agent_flow_manager/agent_flow_manager.py:114"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e93e4122f513dc40", "name": "Legacy-named symbol `model_copy` in app/assistant/global_blackboard/global_blackboard.py:65", "shortDescription": {"text": "Legacy-named symbol `model_copy` in app/assistant/global_blackboard/global_blackboard.py: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-e0a9a11bc9562ba2", "name": "Legacy-named symbol `agent_registry_copy` in app/assistant/orchestrator_classes/OrchestratorFactory.py:41", "shortDescription": {"text": "Legacy-named symbol `agent_registry_copy` in app/assistant/orchestrator_classes/OrchestratorFactory.py:41"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6f89232c8081b72f", "name": "Commented-code block (6 lines) in app/assistant/rooms/room_resource_loader.py:13", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/rooms/room_resource_loader.py: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-8b61108e4b88150a", "name": "Commented-code block (6 lines) in app/assistant/kg_investigator/finding_processor.py:279", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/kg_investigator/finding_processor.py: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-bd1ecfd674d3be40", "name": "Commented-code block (6 lines) in app/assistant/kg_investigator/finding_brief.py:906", "shortDescription": {"text": "Commented-code block (6 lines) in app/assistant/kg_investigator/finding_brief.py:906"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ddfb58ce231920f6", "name": "Commented-code block (7 lines) in app/assistant/manager_classes/MultiAgentManager.py:283", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/manager_classes/MultiAgentManager.py:283"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ac87b7330f8e1cd6", "name": "Commented-code block (9 lines) in app/assistant/manager_runtime/mam_instance_manager.py:62", "shortDescription": {"text": "Commented-code block (9 lines) in app/assistant/manager_runtime/mam_instance_manager.py: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-2e698861c6e94b4d", "name": "Legacy-named symbol `model_copy` in app/assistant/manager_runtime/request_preprocessor.py:263", "shortDescription": {"text": "Legacy-named symbol `model_copy` in app/assistant/manager_runtime/request_preprocessor.py:263"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-77036f8491f2e35b", "name": "Legacy-named symbol `scope_context_v1` in app/assistant/manager_runtime/services/scope_adapter.py:104", "shortDescription": {"text": "Legacy-named symbol `scope_context_v1` in app/assistant/manager_runtime/services/scope_adapter.py:104"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e9d2cd8a161adc6f", "name": "Commented-code block (5 lines) in app/assistant/manager_runtime/services/scope_adapter.py:398", "shortDescription": {"text": "Commented-code block (5 lines) in app/assistant/manager_runtime/services/scope_adapter.py:398"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b290ee8a5e4c0290", "name": "Commented-code block (7 lines) in app/assistant/manager_runtime/services/tool_scope_service.py:397", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/manager_runtime/services/tool_scope_service.py: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-e2f179e6d5147315", "name": "Legacy-named symbol `task_ir_v1` in app/assistant/task_ir_runtime/task_ir_validator.py:9", "shortDescription": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/task_ir_runtime/task_ir_validator.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-399553e7361e2381", "name": "Legacy-named symbol `task_ir_v1` in app/assistant/task_ir_runtime/task_ir_runner.py:29", "shortDescription": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/task_ir_runtime/task_ir_runner.py:29"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9f872766c68a10d2", "name": "Commented-code block (7 lines) in app/assistant/task_ir_runtime/task_ir_runner.py:86", "shortDescription": {"text": "Commented-code block (7 lines) in app/assistant/task_ir_runtime/task_ir_runner.py:86"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c15e89458c9d4ea6", "name": "Stub function `_ensure_tables` (body is just `pass`/`return`) \u2014 app/assistant/task_ir_runtime/state_store.py:13", "shortDescription": {"text": "Stub function `_ensure_tables` (body is just `pass`/`return`) \u2014 app/assistant/task_ir_runtime/state_store.py:13"}, "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-afef2c42bd06a5eb", "name": "Commented-code block (5 lines) in app/services/socket_manager.py:89", "shortDescription": {"text": "Commented-code block (5 lines) in app/services/socket_manager.py:89"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d85befe73fc1a451", "name": "Stub function `transcribe` (body is just `pass`/`return`) \u2014 app/services/speech_to_text.py:11", "shortDescription": {"text": "Stub function `transcribe` (body is just `pass`/`return`) \u2014 app/services/speech_to_text.py:11"}, "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-9e9029af7ad6b8b6", "name": "Legacy-named symbol `send_params_copy` in app/services/llm_client.py:552", "shortDescription": {"text": "Legacy-named symbol `send_params_copy` in app/services/llm_client.py:552"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1d61f5aa514e8b23", "name": "Commented-code block (6 lines) in app/services/llm_client.py:1043", "shortDescription": {"text": "Commented-code block (6 lines) in app/services/llm_client.py:1043"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dbbb3adbc191ad1a", "name": "Legacy-named symbol `unified_log_backup` in sqlite_utilities/compare_tables.py:7", "shortDescription": {"text": "Legacy-named symbol `unified_log_backup` in sqlite_utilities/compare_tables.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-94f8b4b16ec5aaee", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/__init__.py:1", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/__init__.py:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a45c88717411976c", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/seed_canonical.py:15", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/seed_canonical.py:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5f8c63e1201f906d", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/demo_retrieval.py:10", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/demo_retrieval.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ae5ed3f5f8227eb4", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/seed_from_old.py:18", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/seed_from_old.py:18"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4ca342ea0188f93c", "name": "Legacy-named symbol `meal_beliefs_v2` in belief_engine_v2/shadow.py:4", "shortDescription": {"text": "Legacy-named symbol `meal_beliefs_v2` in belief_engine_v2/shadow.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d21531ce71c95b0c", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/demo_verified_merge.py:12", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/demo_verified_merge.py:12"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b3b095dea5023192", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/store.py:24", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/store.py:24"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ab1b85842eb7e483", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/ingest.py:5", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/ingest.py:5"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8e2cc623bafee6be", "name": "Legacy-named symbol `resource_user_beliefs_v2` in belief_engine_v2/export.py:3", "shortDescription": {"text": "Legacy-named symbol `resource_user_beliefs_v2` in belief_engine_v2/export.py:3"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c20a372534c21ae9", "name": "Commented-code block (5 lines) in belief_engine_v2/export.py:44", "shortDescription": {"text": "Commented-code block (5 lines) in belief_engine_v2/export.py: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-d781b30c14e09329", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/shadow_report.py:4", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/shadow_report.py:4"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c0fb60b2be30ca89", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/resolver.py:16", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/resolver.py:16"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-22b2252f3ff14869", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_event_sourcing.py:7", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_event_sourcing.py:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3cfbf63cd1795328", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_resolver.py:9", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_resolver.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-92baa2fb449467ec", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_status.py:9", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_status.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1a47f6e45c3eb7dc", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_retrieval.py:11", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_retrieval.py:11"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4b94f7b4f8c0f2a5", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_bitemporal.py:10", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_bitemporal.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-12777963fcd0afcb", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_decay.py:10", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_decay.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fe1e94c9bde7a08e", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_consolidation.py:9", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_consolidation.py:9"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-347ac92dec8dd117", "name": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_vocabulary.py:8", "shortDescription": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_vocabulary.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-36eace8da4f24521", "name": "Legacy-named symbol `scenario_temporary_31d_deprecated` in belief_engine/sandbox/scenarios.py:29", "shortDescription": {"text": "Legacy-named symbol `scenario_temporary_31d_deprecated` in belief_engine/sandbox/scenarios.py:29"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-864b70248e45594d", "name": "Legacy-named symbol `temporary_deprecated` in belief_engine/sandbox/sandbox.py:184", "shortDescription": {"text": "Legacy-named symbol `temporary_deprecated` in belief_engine/sandbox/sandbox.py:184"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-92b0811493b34695", "name": "Commented-code block (7 lines) in belief_engine/pipeline/pipeline.py:80", "shortDescription": {"text": "Commented-code block (7 lines) in belief_engine/pipeline/pipeline.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-cedc07f9cc3a0f3c", "name": "Commented-code block (5 lines) in belief_engine/pipeline/steps/reevaluate_beliefs.py:122", "shortDescription": {"text": "Commented-code block (5 lines) in belief_engine/pipeline/steps/reevaluate_beliefs.py:122"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1acc0c685272d9d7", "name": "Legacy-named symbol `temporary_deprecated` in belief_engine/pipeline/steps/decay_stale_beliefs.py:106", "shortDescription": {"text": "Legacy-named symbol `temporary_deprecated` in belief_engine/pipeline/steps/decay_stale_beliefs.py: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-e87f330e8891e608", "name": "Commented-code block (5 lines) in belief_engine/export/export_beliefs.py:49", "shortDescription": {"text": "Commented-code block (5 lines) in belief_engine/export/export_beliefs.py:49"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-526af44b904ea9ec", "name": "54 env vars used in code but missing from .env.example", "shortDescription": {"text": "54 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `DATABASE_URL`, `DAY_RESET_HOUR`, `DEFAULT_LLM_MODEL`, `EMI_APP_ROOT`, `EMI_AUTO_OPEN_GOOGLE_OAUTH`, `EMI_BASE_URL`, `EMI_BYPASS_APPROVAL`, `EMI_CHROMA_KG_DB_DIR` + 46 more. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2c04133e54348533", "name": "Near-duplicate function bodies in 2 places", "shortDescription": {"text": "Near-duplicate function bodies in 2 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nmcp/refresh_tool_cache.py:stderr_preview, app/assistant/lib/mcp/stdio_client.py:stderr_preview\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be46ea126aa5d8dc", "name": "Near-duplicate function bodies in 3 places", "shortDescription": {"text": "Near-duplicate function bodies in 3 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\napp/routes/wiki_viewer.py:repl, app/routes/wiki_viewer.py:repl, app/routes/wiki_viewer.py:repl\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-ee53e8e0c58609d8", "name": "Near-duplicate function bodies in 15 places", "shortDescription": {"text": "Near-duplicate function bodies in 15 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\napp/assistant/routine_handlers/ring_camera_motion_poll.py:ring_camera_motion_poll, app/assistant/routine_handlers/feedback_extractor.py:feedback_extractor_run, app/assistant/routine_handlers/wiki.py:wiki_fact_drain_run, app/assistant/routine_handlers/sandbox_outputs_sweep.py:sandbox_outputs_sweep\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-e487f7c9357fdb63", "name": "Flask mutation route `api_approve_suggestion` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg", "shortDescription": {"text": "Flask mutation route `api_approve_suggestion` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1099"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9379178051748b89", "name": "Flask mutation route `api_approve_all_suggestions` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assista", "shortDescription": {"text": "Flask mutation route `api_approve_all_suggestions` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1121"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-237b6968448b89d9", "name": "Flask mutation route `api_reject_suggestion` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_", "shortDescription": {"text": "Flask mutation route `api_reject_suggestion` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1187"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2e55baba7ba005ac", "name": "Flask mutation route `api_approve_review` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_cor", "shortDescription": {"text": "Flask mutation route `api_approve_review` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1195"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4eb22d8c8e175c7a", "name": "Flask mutation route `api_reject_review` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core", "shortDescription": {"text": "Flask mutation route `api_reject_review` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1216"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ab3e3bf5305b856b", "name": "Flask mutation route `api_accept_proposer` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_co", "shortDescription": {"text": "Flask mutation route `api_accept_proposer` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1224"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e15be6d79a9b3f3d", "name": "Flask mutation route `api_cleanup_suggestions` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/k", "shortDescription": {"text": "Flask mutation route `api_cleanup_suggestions` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1232"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-16209f02a0d07516", "name": "Flask mutation route `api_edit_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core", "shortDescription": {"text": "Flask mutation route `api_edit_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1249"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-767c93c4a2284949", "name": "Flask mutation route `api_delete_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_co", "shortDescription": {"text": "Flask mutation route `api_delete_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1290"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-632e1fd16893d81d", "name": "Flask mutation route `api_add_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/", "shortDescription": {"text": "Flask mutation route `api_add_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1346"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6c5c5f61bacc9e8b", "name": "Flask mutation route `api_remove_node_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/", "shortDescription": {"text": "Flask mutation route `api_remove_node_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1427"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7f9d6072cd136882", "name": "Flask mutation route `api_update_node_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/", "shortDescription": {"text": "Flask mutation route `api_update_node_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1468"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-5441d43d010c7eda", "name": "Dangling fetch: POST /api/taxonomy/suggestions/${suggestionId}/approve (_archived/taxonomy_2026_05_06/app/assistant/kg_c", "shortDescription": {"text": "Dangling fetch: POST /api/taxonomy/suggestions/${suggestionId}/approve (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:605)"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:605` calls `POST /api/taxonomy/suggestions/${suggestionId}/approve` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/taxonomy/suggestions/<p>/approve`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6b582ac0ecc3bf31", "name": "Dangling fetch: POST /api/taxonomy/suggestions/${suggestionId}/approve (_archived/taxonomy_2026_05_06/app/assistant/kg_c", "shortDescription": {"text": "Dangling fetch: POST /api/taxonomy/suggestions/${suggestionId}/approve (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:650)"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:650` calls `POST /api/taxonomy/suggestions/${suggestionId}/approve` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/taxonomy/suggestions/<p>/approve`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d176580af6599239", "name": "Dangling fetch: POST /api/taxonomy/suggestions/${suggestionId}/reject (_archived/taxonomy_2026_05_06/app/assistant/kg_co", "shortDescription": {"text": "Dangling fetch: POST /api/taxonomy/suggestions/${suggestionId}/reject (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:677)"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:677` calls `POST /api/taxonomy/suggestions/${suggestionId}/reject` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/taxonomy/suggestions/<p>/reject`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-84430208dbc340a9", "name": "Dangling fetch: POST /api/taxonomy/reviews/${reviewId}/approve (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxo", "shortDescription": {"text": "Dangling fetch: POST /api/taxonomy/reviews/${reviewId}/approve (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:701)"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:701` calls `POST /api/taxonomy/reviews/${reviewId}/approve` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/taxonomy/reviews/<p>/approve`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-59cfd18362843798", "name": "Dangling fetch: POST /api/taxonomy/reviews/${reviewId}/approve (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxo", "shortDescription": {"text": "Dangling fetch: POST /api/taxonomy/reviews/${reviewId}/approve (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:740)"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:740` calls `POST /api/taxonomy/reviews/${reviewId}/approve` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/taxonomy/reviews/<p>/approve`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bca95a33d359b38c", "name": "Dangling fetch: POST /api/taxonomy/reviews/${reviewId}/reject (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxon", "shortDescription": {"text": "Dangling fetch: POST /api/taxonomy/reviews/${reviewId}/reject (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:764)"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:764` calls `POST /api/taxonomy/reviews/${reviewId}/reject` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/taxonomy/reviews/<p>/reject`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a70cd5f0ce398db3", "name": "Dangling fetch: POST /api/taxonomy/reviews/${reviewId}/accept-proposer (_archived/taxonomy_2026_05_06/app/assistant/kg_c", "shortDescription": {"text": "Dangling fetch: POST /api/taxonomy/reviews/${reviewId}/accept-proposer (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:785)"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:785` calls `POST /api/taxonomy/reviews/${reviewId}/accept-proposer` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/taxonomy/reviews/<p>/accept-proposer`\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-f5985c8f4a797c83", "name": "Dangling fetch: POST /api/taxonomy/edit/${nodeId} (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/j", "shortDescription": {"text": "Dangling fetch: POST /api/taxonomy/edit/${nodeId} (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:1012)"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:1012` calls `POST /api/taxonomy/edit/${nodeId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/taxonomy/edit/<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-7dcefb3cc2a3d023", "name": "Dangling fetch: DELETE /api/taxonomy/delete/${nodeId} (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/stat", "shortDescription": {"text": "Dangling fetch: DELETE /api/taxonomy/delete/${nodeId} (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:1048)"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:1048` calls `DELETE /api/taxonomy/delete/${nodeId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/taxonomy/delete/<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-c39de3b73d809ca8", "name": "Dangling fetch: DELETE /api/taxonomy/node/${nodeId}/taxonomy/${taxonomyId} (_archived/taxonomy_2026_05_06/app/assistant/", "shortDescription": {"text": "Dangling fetch: DELETE /api/taxonomy/node/${nodeId}/taxonomy/${taxonomyId} (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:1198)"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:1198` calls `DELETE /api/taxonomy/node/${nodeId}/taxonomy/${taxonomyId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/taxonomy/node/<p>/taxonomy/<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-fe6725690c466399", "name": "Dangling fetch: PUT /api/taxonomy/node/${nodeId}/taxonomy/${oldTaxonomyId} (_archived/taxonomy_2026_05_06/app/assistant/", "shortDescription": {"text": "Dangling fetch: PUT /api/taxonomy/node/${nodeId}/taxonomy/${oldTaxonomyId} (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:1237)"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:1237` calls `PUT /api/taxonomy/node/${nodeId}/taxonomy/${oldTaxonomyId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/taxonomy/node/<p>/taxonomy/<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-c1813a18d65d54e7", "name": "Dangling fetch: GET /api/integrations/lights/devices (app/static/js/lights_settings.js:286)", "shortDescription": {"text": "Dangling fetch: GET /api/integrations/lights/devices (app/static/js/lights_settings.js:286)"}, "fullDescription": {"text": "`app/static/js/lights_settings.js:286` calls `GET /api/integrations/lights/devices` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/integrations/lights/devices`\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-98188bce95ea3c2e", "name": "Dangling fetch: PUT /api/integrations/lights/devices (app/static/js/lights_settings.js:326)", "shortDescription": {"text": "Dangling fetch: PUT /api/integrations/lights/devices (app/static/js/lights_settings.js:326)"}, "fullDescription": {"text": "`app/static/js/lights_settings.js:326` calls `PUT /api/integrations/lights/devices` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/integrations/lights/devices`\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-1034cb881d14aef5", "name": "Dangling fetch: GET /api/integrations/ring/devices (app/static/js/ring_settings.js:108)", "shortDescription": {"text": "Dangling fetch: GET /api/integrations/ring/devices (app/static/js/ring_settings.js:108)"}, "fullDescription": {"text": "`app/static/js/ring_settings.js:108` calls `GET /api/integrations/ring/devices` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/integrations/ring/devices`\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-2fb5d56edeb7ee03", "name": "Dangling fetch: PUT /api/integrations/ring/devices (app/static/js/ring_settings.js:148)", "shortDescription": {"text": "Dangling fetch: PUT /api/integrations/ring/devices (app/static/js/ring_settings.js:148)"}, "fullDescription": {"text": "`app/static/js/ring_settings.js:148` calls `PUT /api/integrations/ring/devices` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/integrations/ring/devices`\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-7d41fc964c8055ef", "name": "Dangling fetch: POST /api/accounts/${encodeURIComponent(accountId)}/configure (app/static/js/settings_accounts.js:60)", "shortDescription": {"text": "Dangling fetch: POST /api/accounts/${encodeURIComponent(accountId)}/configure (app/static/js/settings_accounts.js:60)"}, "fullDescription": {"text": "`app/static/js/settings_accounts.js:60` calls `POST /api/accounts/${encodeURIComponent(accountId)}/configure` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/accounts/<p>/configure`\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-a8fa87f31c31818f", "name": "Dangling fetch: PUT /api/settings/quiet-mode/feature/${feature} (app/static/js/quiet_mode_settings.js:154)", "shortDescription": {"text": "Dangling fetch: PUT /api/settings/quiet-mode/feature/${feature} (app/static/js/quiet_mode_settings.js:154)"}, "fullDescription": {"text": "`app/static/js/quiet_mode_settings.js:154` calls `PUT /api/settings/quiet-mode/feature/${feature}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/settings/quiet-mode/feature/<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-535382690521d538", "name": "Dangling fetch: PUT /api/settings/quiet-mode/feature/${feature} (app/static/js/quiet_mode_settings.js:185)", "shortDescription": {"text": "Dangling fetch: PUT /api/settings/quiet-mode/feature/${feature} (app/static/js/quiet_mode_settings.js:185)"}, "fullDescription": {"text": "`app/static/js/quiet_mode_settings.js:185` calls `PUT /api/settings/quiet-mode/feature/${feature}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/settings/quiet-mode/feature/<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-0b327e2ebddfb4b7", "name": "Dangling fetch: GET /api/integrations/${integrationKey}/config (app/static/js/integrations_shared.js:107)", "shortDescription": {"text": "Dangling fetch: GET /api/integrations/${integrationKey}/config (app/static/js/integrations_shared.js:107)"}, "fullDescription": {"text": "`app/static/js/integrations_shared.js:107` calls `GET /api/integrations/${integrationKey}/config` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/integrations/<p>/config`\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-44d76a99e307b019", "name": "Dangling fetch: PUT /api/integrations/${integrationKey}/config (app/static/js/integrations_shared.js:116)", "shortDescription": {"text": "Dangling fetch: PUT /api/integrations/${integrationKey}/config (app/static/js/integrations_shared.js:116)"}, "fullDescription": {"text": "`app/static/js/integrations_shared.js:116` calls `PUT /api/integrations/${integrationKey}/config` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/integrations/<p>/config`\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-43e94024c976d153", "name": "Dangling fetch: POST /api/integrations/${integrationKey}/action (app/static/js/integrations_shared.js:126)", "shortDescription": {"text": "Dangling fetch: POST /api/integrations/${integrationKey}/action (app/static/js/integrations_shared.js:126)"}, "fullDescription": {"text": "`app/static/js/integrations_shared.js:126` calls `POST /api/integrations/${integrationKey}/action` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/integrations/<p>/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-43e061e6c165fc80", "name": "Dangling fetch: GET /api/timeline/${encodeURIComponent(window.ENTITY_ID)} (app/static/js/timeline.js:103)", "shortDescription": {"text": "Dangling fetch: GET /api/timeline/${encodeURIComponent(window.ENTITY_ID)} (app/static/js/timeline.js:103)"}, "fullDescription": {"text": "`app/static/js/timeline.js:103` calls `GET /api/timeline/${encodeURIComponent(window.ENTITY_ID)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/timeline/<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-eb11641080633158", "name": "Dangling fetch: PUT /api/settings/features/${feature} (app/static/js/features_settings.js:112)", "shortDescription": {"text": "Dangling fetch: PUT /api/settings/features/${feature} (app/static/js/features_settings.js:112)"}, "fullDescription": {"text": "`app/static/js/features_settings.js:112` calls `PUT /api/settings/features/${feature}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/settings/features/<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-5e2998fcdb70f709", "name": "Dangling fetch: GET /api/entity_cards/stats (app/static/js/entity_cards_editor.js:57)", "shortDescription": {"text": "Dangling fetch: GET /api/entity_cards/stats (app/static/js/entity_cards_editor.js:57)"}, "fullDescription": {"text": "`app/static/js/entity_cards_editor.js:57` calls `GET /api/entity_cards/stats` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/entity_cards/stats`\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-3d500b7248a8b63f", "name": "Dangling fetch: GET /api/entity_cards/types (app/static/js/entity_cards_editor.js:74)", "shortDescription": {"text": "Dangling fetch: GET /api/entity_cards/types (app/static/js/entity_cards_editor.js:74)"}, "fullDescription": {"text": "`app/static/js/entity_cards_editor.js:74` calls `GET /api/entity_cards/types` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/entity_cards/types`\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-83dba103e41fc1e6", "name": "Dangling fetch: GET /api/entity_cards?${params} (app/static/js/entity_cards_editor.js:123)", "shortDescription": {"text": "Dangling fetch: GET /api/entity_cards?${params} (app/static/js/entity_cards_editor.js:123)"}, "fullDescription": {"text": "`app/static/js/entity_cards_editor.js:123` calls `GET /api/entity_cards?${params}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/entity_cards`\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-fa23c89f6b6b39d6", "name": "Dangling fetch: POST /entity-cards-admin/api/regenerate/${cardId} (app/static/js/entity_cards_editor.js:205)", "shortDescription": {"text": "Dangling fetch: POST /entity-cards-admin/api/regenerate/${cardId} (app/static/js/entity_cards_editor.js:205)"}, "fullDescription": {"text": "`app/static/js/entity_cards_editor.js:205` calls `POST /entity-cards-admin/api/regenerate/${cardId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/entity-cards-admin/api/regenerate/<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-2dca23146efb10f6", "name": "Dangling fetch: PUT /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:231)", "shortDescription": {"text": "Dangling fetch: PUT /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:231)"}, "fullDescription": {"text": "`app/static/js/entity_cards_editor.js:231` calls `PUT /api/entity_cards/${cardId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/entity_cards/<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-0cc58fe92d468d44", "name": "Dangling fetch: GET /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:278)", "shortDescription": {"text": "Dangling fetch: GET /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:278)"}, "fullDescription": {"text": "`app/static/js/entity_cards_editor.js:278` calls `GET /api/entity_cards/${cardId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/entity_cards/<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-e550c7315d37816f", "name": "Dangling fetch: GET /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:389)", "shortDescription": {"text": "Dangling fetch: GET /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:389)"}, "fullDescription": {"text": "`app/static/js/entity_cards_editor.js:389` calls `GET /api/entity_cards/${cardId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/entity_cards/<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-43ed78b1bc31837a", "name": "Dangling fetch: PUT /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:464)", "shortDescription": {"text": "Dangling fetch: PUT /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:464)"}, "fullDescription": {"text": "`app/static/js/entity_cards_editor.js:464` calls `PUT /api/entity_cards/${cardId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/entity_cards/<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-3a20ea1cc0e1b79e", "name": "Dangling fetch: POST /api/entity_cards (app/static/js/entity_cards_editor.js:471)", "shortDescription": {"text": "Dangling fetch: POST /api/entity_cards (app/static/js/entity_cards_editor.js:471)"}, "fullDescription": {"text": "`app/static/js/entity_cards_editor.js:471` calls `POST /api/entity_cards` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/entity_cards`\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-e2f6c8f732bbba72", "name": "Dangling fetch: DELETE /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:498)", "shortDescription": {"text": "Dangling fetch: DELETE /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:498)"}, "fullDescription": {"text": "`app/static/js/entity_cards_editor.js:498` calls `DELETE /api/entity_cards/${cardId}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/entity_cards/<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-66f35ffd11822c8f", "name": "Dangling fetch: GET /api/integrations/nest/devices (app/static/js/nest_settings.js:142)", "shortDescription": {"text": "Dangling fetch: GET /api/integrations/nest/devices (app/static/js/nest_settings.js:142)"}, "fullDescription": {"text": "`app/static/js/nest_settings.js:142` calls `GET /api/integrations/nest/devices` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/integrations/nest/devices`\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-5593348ef13b3bc7", "name": "Dangling fetch: PUT /api/integrations/nest/devices (app/static/js/nest_settings.js:183)", "shortDescription": {"text": "Dangling fetch: PUT /api/integrations/nest/devices (app/static/js/nest_settings.js:183)"}, "fullDescription": {"text": "`app/static/js/nest_settings.js:183` calls `PUT /api/integrations/nest/devices` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/integrations/nest/devices`\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-e9af1ed664c3face", "name": "Dangling fetch: GET http://localhost:8000/agent_flow/get_all_manager_configs (app/assistant/agent_flow/src/components/Fl", "shortDescription": {"text": "Dangling fetch: GET http://localhost:8000/agent_flow/get_all_manager_configs (app/assistant/agent_flow/src/components/FlowEditor.jsx:101)"}, "fullDescription": {"text": "`app/assistant/agent_flow/src/components/FlowEditor.jsx:101` calls `GET http://localhost:8000/agent_flow/get_all_manager_configs` 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:8000/agent_flow/get_all_manager_configs`\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-95b326a58e2f4b86", "name": "Dangling fetch: GET http://localhost:8000/agent_flow/all_agent_configs (app/assistant/agent_flow/src/components/FlowEdit", "shortDescription": {"text": "Dangling fetch: GET http://localhost:8000/agent_flow/all_agent_configs (app/assistant/agent_flow/src/components/FlowEditor.jsx:259)"}, "fullDescription": {"text": "`app/assistant/agent_flow/src/components/FlowEditor.jsx:259` calls `GET http://localhost:8000/agent_flow/all_agent_configs` 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:8000/agent_flow/all_agent_configs`\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-dc66299d19617716", "name": "Dangling fetch: POST http://localhost:8000/agent_flow/save_manager (app/assistant/agent_flow/src/components/FlowEditor.j", "shortDescription": {"text": "Dangling fetch: POST http://localhost:8000/agent_flow/save_manager (app/assistant/agent_flow/src/components/FlowEditor.jsx:427)"}, "fullDescription": {"text": "`app/assistant/agent_flow/src/components/FlowEditor.jsx:427` calls `POST http://localhost:8000/agent_flow/save_manager` 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:8000/agent_flow/save_manager`\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-3a9922c069d5bbb1", "name": "Dangling fetch: GET /task-graph/ir/${encodeURIComponent(taskId)} (app/task_graph_viewer/src/App.jsx:70)", "shortDescription": {"text": "Dangling fetch: GET /task-graph/ir/${encodeURIComponent(taskId)} (app/task_graph_viewer/src/App.jsx:70)"}, "fullDescription": {"text": "`app/task_graph_viewer/src/App.jsx:70` calls `GET /task-graph/ir/${encodeURIComponent(taskId)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/task-graph/ir/<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-eb7f8c5881145aee", "name": "Dangling fetch: PUT /task-graph/ir/${encodeURIComponent(taskId)} (app/task_graph_viewer/src/App.jsx:313)", "shortDescription": {"text": "Dangling fetch: PUT /task-graph/ir/${encodeURIComponent(taskId)} (app/task_graph_viewer/src/App.jsx:313)"}, "fullDescription": {"text": "`app/task_graph_viewer/src/App.jsx:313` calls `PUT /task-graph/ir/${encodeURIComponent(taskId)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/task-graph/ir/<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-b9266c4ff65fb786", "name": "Unused endpoint: ANY /taxonomy_webviewer", "shortDescription": {"text": "Unused endpoint: ANY /taxonomy_webviewer"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/routes/taxonomy_viewer.py` declares `ANY /taxonomy_webviewer` 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-1181fce8129c1498", "name": "Unused endpoint: ANY /api/taxonomy/suggestions/<int:suggestion_id>/approve", "shortDescription": {"text": "Unused endpoint: ANY /api/taxonomy/suggestions/<int:suggestion_id>/approve"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/routes/taxonomy_viewer.py` declares `ANY /api/taxonomy/suggestions/<int:suggestion_id>/approve` 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-5fb1b3e9001e47c8", "name": "Unused endpoint: ANY /api/taxonomy/suggestions/<int:suggestion_id>/reject", "shortDescription": {"text": "Unused endpoint: ANY /api/taxonomy/suggestions/<int:suggestion_id>/reject"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/routes/taxonomy_viewer.py` declares `ANY /api/taxonomy/suggestions/<int:suggestion_id>/reject` 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-9026261f22d673a8", "name": "Unused endpoint: ANY /api/taxonomy/reviews/<int:review_id>/approve", "shortDescription": {"text": "Unused endpoint: ANY /api/taxonomy/reviews/<int:review_id>/approve"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/routes/taxonomy_viewer.py` declares `ANY /api/taxonomy/reviews/<int:review_id>/approve` 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-ef9bc862fdec6462", "name": "Unused endpoint: ANY /api/taxonomy/reviews/<int:review_id>/reject", "shortDescription": {"text": "Unused endpoint: ANY /api/taxonomy/reviews/<int:review_id>/reject"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/routes/taxonomy_viewer.py` declares `ANY /api/taxonomy/reviews/<int:review_id>/reject` 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-77552183978f66fd", "name": "Unused endpoint: ANY /api/taxonomy/reviews/<int:review_id>/accept-proposer", "shortDescription": {"text": "Unused endpoint: ANY /api/taxonomy/reviews/<int:review_id>/accept-proposer"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/routes/taxonomy_viewer.py` declares `ANY /api/taxonomy/reviews/<int:review_id>/accept-proposer` 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-eaef9779cb8595fc", "name": "Unused endpoint: ANY /api/taxonomy/cleanup-suggestions", "shortDescription": {"text": "Unused endpoint: ANY /api/taxonomy/cleanup-suggestions"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/routes/taxonomy_viewer.py` declares `ANY /api/taxonomy/cleanup-suggestions` 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-d452549345080fb8", "name": "Unused endpoint: ANY /api/taxonomy/edit/<int:node_id>", "shortDescription": {"text": "Unused endpoint: ANY /api/taxonomy/edit/<int:node_id>"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/routes/taxonomy_viewer.py` declares `ANY /api/taxonomy/edit/<int:node_id>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-79dd25abdeb09573", "name": "Unused endpoint: ANY /api/taxonomy/delete/<int:node_id>", "shortDescription": {"text": "Unused endpoint: ANY /api/taxonomy/delete/<int:node_id>"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/routes/taxonomy_viewer.py` declares `ANY /api/taxonomy/delete/<int:node_id>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-caa6495ddd000ce1", "name": "Unused endpoint: ANY /api/taxonomy/node/<node_id>/taxonomy/<int:taxonomy_id>", "shortDescription": {"text": "Unused endpoint: ANY /api/taxonomy/node/<node_id>/taxonomy/<int:taxonomy_id>"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/routes/taxonomy_viewer.py` declares `ANY /api/taxonomy/node/<node_id>/taxonomy/<int:taxonomy_id>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ad072694827792fe", "name": "Unused endpoint: ANY /api/taxonomy/node/<node_id>/taxonomy/<int:old_taxonomy_id>", "shortDescription": {"text": "Unused endpoint: ANY /api/taxonomy/node/<node_id>/taxonomy/<int:old_taxonomy_id>"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/routes/taxonomy_viewer.py` declares `ANY /api/taxonomy/node/<node_id>/taxonomy/<int:old_taxonomy_id>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1a6d91f2236825bf", "name": "Unused endpoint: ANY /", "shortDescription": {"text": "Unused endpoint: ANY /"}, "fullDescription": {"text": "`_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py` declares `ANY /` 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-52e10a63977ce92e", "name": "Unused endpoint: ANY /uploads/temp/<path:filename>", "shortDescription": {"text": "Unused endpoint: ANY /uploads/temp/<path:filename>"}, "fullDescription": {"text": "`app/create_app.py` declares `ANY /uploads/temp/<path:filename>` 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-58d37f378ddf337c", "name": "Unused endpoint: ANY /api/kg-lens/focus-graph", "shortDescription": {"text": "Unused endpoint: ANY /api/kg-lens/focus-graph"}, "fullDescription": {"text": "`app/kg_lens/api.py` declares `ANY /api/kg-lens/focus-graph` 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-83884bb5999f91ce", "name": "Unused endpoint: ANY /api/kg-lens/set-graph", "shortDescription": {"text": "Unused endpoint: ANY /api/kg-lens/set-graph"}, "fullDescription": {"text": "`app/kg_lens/api.py` declares `ANY /api/kg-lens/set-graph` 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-2ffc57d8e9132a9a", "name": "Unused endpoint: ANY /api/kg-lens/node/<node_id>", "shortDescription": {"text": "Unused endpoint: ANY /api/kg-lens/node/<node_id>"}, "fullDescription": {"text": "`app/kg_lens/api.py` declares `ANY /api/kg-lens/node/<node_id>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-255f9242b30a1318", "name": "Unused endpoint: ANY /api/kg-lens/node/<node_id>/edit", "shortDescription": {"text": "Unused endpoint: ANY /api/kg-lens/node/<node_id>/edit"}, "fullDescription": {"text": "`app/kg_lens/api.py` declares `ANY /api/kg-lens/node/<node_id>/edit` 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-9a19eb8058d5dcab", "name": "Unused endpoint: ANY /api/kg-lens/node/<node_id>/lock", "shortDescription": {"text": "Unused endpoint: ANY /api/kg-lens/node/<node_id>/lock"}, "fullDescription": {"text": "`app/kg_lens/api.py` declares `ANY /api/kg-lens/node/<node_id>/lock` 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-f2f458ea5a488451", "name": "Unused endpoint: ANY /api/graph", "shortDescription": {"text": "Unused endpoint: ANY /api/graph"}, "fullDescription": {"text": "`app/graph_visualizer/api.py` declares `ANY /api/graph` 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-f9843670bfde16cb", "name": "Unused endpoint: ANY /api/graph/node-types", "shortDescription": {"text": "Unused endpoint: ANY /api/graph/node-types"}, "fullDescription": {"text": "`app/graph_visualizer/api.py` declares `ANY /api/graph/node-types` 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-665a5a862fba5d6c", "name": "Unused endpoint: ANY /api/graph/edge-types", "shortDescription": {"text": "Unused endpoint: ANY /api/graph/edge-types"}, "fullDescription": {"text": "`app/graph_visualizer/api.py` declares `ANY /api/graph/edge-types` 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-3a012cc7df537eab", "name": "Unused endpoint: ANY /api/graph/search", "shortDescription": {"text": "Unused endpoint: ANY /api/graph/search"}, "fullDescription": {"text": "`app/graph_visualizer/api.py` declares `ANY /api/graph/search` 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-ca061dda7b1c5abe", "name": "Unused endpoint: ANY /api/graph/node/<node_id>", "shortDescription": {"text": "Unused endpoint: ANY /api/graph/node/<node_id>"}, "fullDescription": {"text": "`app/graph_visualizer/api.py` declares `ANY /api/graph/node/<node_id>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-333b8a10851b49e8", "name": "Unused endpoint: ANY /api/graph/edge/<edge_id>", "shortDescription": {"text": "Unused endpoint: ANY /api/graph/edge/<edge_id>"}, "fullDescription": {"text": "`app/graph_visualizer/api.py` declares `ANY /api/graph/edge/<edge_id>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-90f9d37eb5275fd0", "name": "Unused endpoint: ANY /api/graph/stats", "shortDescription": {"text": "Unused endpoint: ANY /api/graph/stats"}, "fullDescription": {"text": "`app/graph_visualizer/api.py` declares `ANY /api/graph/stats` 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-972b6a8db0d4757c", "name": "Unused endpoint: ANY /api/graph/hubs", "shortDescription": {"text": "Unused endpoint: ANY /api/graph/hubs"}, "fullDescription": {"text": "`app/graph_visualizer/api.py` declares `ANY /api/graph/hubs` 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-d1beb503bc5612d8", "name": "Unused endpoint: ANY /api/graph/subgraph", "shortDescription": {"text": "Unused endpoint: ANY /api/graph/subgraph"}, "fullDescription": {"text": "`app/graph_visualizer/api.py` declares `ANY /api/graph/subgraph` 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-c75b2939239b283e", "name": "Unused endpoint: ANY /api/graph/degree-distribution", "shortDescription": {"text": "Unused endpoint: ANY /api/graph/degree-distribution"}, "fullDescription": {"text": "`app/graph_visualizer/api.py` declares `ANY /api/graph/degree-distribution` 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-d8671cae1d2fe5a0", "name": "Unused endpoint: ANY /<version>", "shortDescription": {"text": "Unused endpoint: ANY /<version>"}, "fullDescription": {"text": "`app/graph_visualizer/standalone_app.py` declares `ANY /<version>` 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-7954330b4a5dd73a", "name": "Unused endpoint: ANY /debug-template", "shortDescription": {"text": "Unused endpoint: ANY /debug-template"}, "fullDescription": {"text": "`app/graph_visualizer/standalone_app.py` declares `ANY /debug-template` 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-98d9e72de568f867", "name": "Unused endpoint: ANY /oauth/google/start", "shortDescription": {"text": "Unused endpoint: ANY /oauth/google/start"}, "fullDescription": {"text": "`app/routes/google_oauth.py` declares `ANY /oauth/google/start` 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-98f651869f499627", "name": "Unused endpoint: ANY /oauth/google/callback", "shortDescription": {"text": "Unused endpoint: ANY /oauth/google/callback"}, "fullDescription": {"text": "`app/routes/google_oauth.py` declares `ANY /oauth/google/callback` 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-8a08f789a34b35d8", "name": "Unused endpoint: ANY /debug/wellness/status", "shortDescription": {"text": "Unused endpoint: ANY /debug/wellness/status"}, "fullDescription": {"text": "`app/routes/wellness_mgmt.py` declares `ANY /debug/wellness/status` 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-892211927f163e09", "name": "Unused endpoint: ANY /kg-interests", "shortDescription": {"text": "Unused endpoint: ANY /kg-interests"}, "fullDescription": {"text": "`app/routes/kg_interests.py` declares `ANY /kg-interests` 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-b207742ee0c4c569", "name": "Unused endpoint: ANY /kg-interests/critic-prompt", "shortDescription": {"text": "Unused endpoint: ANY /kg-interests/critic-prompt"}, "fullDescription": {"text": "`app/routes/kg_interests.py` declares `ANY /kg-interests/critic-prompt` 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-a235c3132cd4cc22", "name": "Unused endpoint: ANY /kg-interests/test", "shortDescription": {"text": "Unused endpoint: ANY /kg-interests/test"}, "fullDescription": {"text": "`app/routes/kg_interests.py` declares `ANY /kg-interests/test` 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-a9eabb53d0dc5619", "name": "Unused endpoint: ANY /kg-interests/test/recent-windows", "shortDescription": {"text": "Unused endpoint: ANY /kg-interests/test/recent-windows"}, "fullDescription": {"text": "`app/routes/kg_interests.py` declares `ANY /kg-interests/test/recent-windows` 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-e7d69a322e90e301", "name": "Unused endpoint: ANY /kg-interests/test/window/<window_id>", "shortDescription": {"text": "Unused endpoint: ANY /kg-interests/test/window/<window_id>"}, "fullDescription": {"text": "`app/routes/kg_interests.py` declares `ANY /kg-interests/test/window/<window_id>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0c7e912f96c682f0", "name": "Unused endpoint: ANY /slack/room/simulate", "shortDescription": {"text": "Unused endpoint: ANY /slack/room/simulate"}, "fullDescription": {"text": "`app/routes/slack_room.py` declares `ANY /slack/room/simulate` 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-e137d89197e73bee", "name": "Unused endpoint: ANY /beliefs", "shortDescription": {"text": "Unused endpoint: ANY /beliefs"}, "fullDescription": {"text": "`app/routes/beliefs.py` declares `ANY /beliefs` 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-8fea0263553ca73b", "name": "Unused endpoint: ANY /api/beliefs/list", "shortDescription": {"text": "Unused endpoint: ANY /api/beliefs/list"}, "fullDescription": {"text": "`app/routes/beliefs.py` declares `ANY /api/beliefs/list` 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-094bcf2044e7853b", "name": "Unused endpoint: ANY /api/beliefs/trends", "shortDescription": {"text": "Unused endpoint: ANY /api/beliefs/trends"}, "fullDescription": {"text": "`app/routes/beliefs.py` declares `ANY /api/beliefs/trends` 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-05a0bab2b36b1df2", "name": "Unused endpoint: ANY /api/beliefs/item", "shortDescription": {"text": "Unused endpoint: ANY /api/beliefs/item"}, "fullDescription": {"text": "`app/routes/beliefs.py` declares `ANY /api/beliefs/item` 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-22bd189963543b20", "name": "Unused endpoint: ANY /telegram/webhook", "shortDescription": {"text": "Unused endpoint: ANY /telegram/webhook"}, "fullDescription": {"text": "`app/routes/telegram_webhook.py` declares `ANY /telegram/webhook` 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-050405cb0eb61624", "name": "Unused endpoint: ANY /date-gaps", "shortDescription": {"text": "Unused endpoint: ANY /date-gaps"}, "fullDescription": {"text": "`app/routes/kg_maintenance.py` declares `ANY /date-gaps` 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-2e37e3c285c87bb0", "name": "Unused endpoint: ANY /queue", "shortDescription": {"text": "Unused endpoint: ANY /queue"}, "fullDescription": {"text": "`app/routes/kg_maintenance.py` declares `ANY /queue` 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-b37ceae2c3457eba", "name": "Unused endpoint: ANY /api/findings", "shortDescription": {"text": "Unused endpoint: ANY /api/findings"}, "fullDescription": {"text": "`app/routes/kg_maintenance.py` declares `ANY /api/findings` 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-e258d1973c46d268", "name": "Unused endpoint: ANY /api/summary", "shortDescription": {"text": "Unused endpoint: ANY /api/summary"}, "fullDescription": {"text": "`app/routes/kg_maintenance.py` declares `ANY /api/summary` 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-c79648dd30387f99", "name": "Unused endpoint: ANY /api/action", "shortDescription": {"text": "Unused endpoint: ANY /api/action"}, "fullDescription": {"text": "`app/routes/kg_maintenance.py` declares `ANY /api/action` 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-4d23507286bf72ca", "name": "Unused endpoint: ANY /api/finding/<finding_id>/fill_dates", "shortDescription": {"text": "Unused endpoint: ANY /api/finding/<finding_id>/fill_dates"}, "fullDescription": {"text": "`app/routes/kg_maintenance.py` declares `ANY /api/finding/<finding_id>/fill_dates` 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/19260"}, "properties": {"repository": "SemiSimpleMath/EmiOS-Beta", "repoUrl": "https://github.com/SemiSimpleMath/EmiOS-Beta", "branch": "main"}, "results": [{"ruleId": "scanner-94806b959cf5295c", "level": "note", "message": {"text": "Possibly dead Python function: check_python_version"}, "properties": {"repobilityId": "6ee33fb7ae5dab1e", "scanner": "scanner-primary", "fingerprint": "94806b959cf5295c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup.py:24"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a4d6e81901139475", "level": "note", "message": {"text": "Possibly dead Python function: create_virtual_environment"}, "properties": {"repobilityId": "205230f5f3a6742f", "scanner": "scanner-primary", "fingerprint": "a4d6e81901139475", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup.py:42"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-986897da19343141", "level": "note", "message": {"text": "Possibly dead Python function: check_credentials"}, "properties": {"repobilityId": "86b2ccc751fdb4a0", "scanner": "scanner-primary", "fingerprint": "986897da19343141", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup.py:102"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-12940ca45dba0d38", "level": "note", "message": {"text": "Possibly dead Python function: create_directories"}, "properties": {"repobilityId": "3b5bfafac9d6a460", "scanner": "scanner-primary", "fingerprint": "12940ca45dba0d38", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup.py:116"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-80363245562161d2", "level": "note", "message": {"text": "Possibly dead Python function: instantiate_config_templates"}, "properties": {"repobilityId": "dced2079028443d3", "scanner": "scanner-primary", "fingerprint": "80363245562161d2", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup.py:239"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-10205d594ffd2878", "level": "note", "message": {"text": "Possibly dead Python function: create_default_resources"}, "properties": {"repobilityId": "f1fefcdfe9eff3ac", "scanner": "scanner-primary", "fingerprint": "10205d594ffd2878", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup.py:278"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-539499b2393974de", "level": "note", "message": {"text": "Possibly dead Python function: create_desktop_shortcut"}, "properties": {"repobilityId": "1469f26947874cae", "scanner": "scanner-primary", "fingerprint": "539499b2393974de", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup.py:373"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0ca737e5e7cd0c20", "level": "note", "message": {"text": "Possibly dead Python function: handle_rename_category"}, "properties": {"repobilityId": "bd0f0deece0ecc5f", "scanner": "scanner-primary", "fingerprint": "0ca737e5e7cd0c20", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/lib/core_tools/taxonomy_tool/taxonomy_tool.py:104"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c3309576f40c3678", "level": "note", "message": {"text": "Possibly dead Python function: handle_update_description"}, "properties": {"repobilityId": "d40c2bd1e9935bc1", "scanner": "scanner-primary", "fingerprint": "c3309576f40c3678", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/lib/core_tools/taxonomy_tool/taxonomy_tool.py:135"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8124e0449eaadabc", "level": "note", "message": {"text": "Possibly dead Python function: handle_move_category"}, "properties": {"repobilityId": "21f514d7ca91730d", "scanner": "scanner-primary", "fingerprint": "8124e0449eaadabc", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/lib/core_tools/taxonomy_tool/taxonomy_tool.py:170"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5526fc92433ff997", "level": "note", "message": {"text": "Possibly dead Python function: handle_merge_categories"}, "properties": {"repobilityId": "30666270beaf5c91", "scanner": "scanner-primary", "fingerprint": "5526fc92433ff997", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/lib/core_tools/taxonomy_tool/taxonomy_tool.py:207"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e990b1a593577b11", "level": "note", "message": {"text": "Possibly dead Python function: handle_create_category"}, "properties": {"repobilityId": "9edf92efcd014e25", "scanner": "scanner-primary", "fingerprint": "e990b1a593577b11", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/lib/core_tools/taxonomy_tool/taxonomy_tool.py:238"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b0f8e012f431a8d5", "level": "note", "message": {"text": "Possibly dead Python function: handle_get_info"}, "properties": {"repobilityId": "2f6906c56fee04ac", "scanner": "scanner-primary", "fingerprint": "b0f8e012f431a8d5", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/lib/core_tools/taxonomy_tool/taxonomy_tool.py:270"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3083f1d1c32873fc", "level": "note", "message": {"text": "Possibly dead Python function: edit_taxonomy_label"}, "properties": {"repobilityId": "263ed135c25e8a27", "scanner": "scanner-primary", "fingerprint": "3083f1d1c32873fc", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:848"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5212d12fbb3d82c0", "level": "note", "message": {"text": "Possibly dead Python function: date_appears_in_sentence"}, "properties": {"repobilityId": "89ed61da2d003446", "scanner": "scanner-primary", "fingerprint": "5212d12fbb3d82c0", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/audit_actual_dates_no_explicit_evidence.py:61"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7ebc3adcc9d89b45", "level": "note", "message": {"text": "Possibly dead Python function: shutdown_services"}, "properties": {"repobilityId": "60b13c15c07c7af9", "scanner": "scanner-primary", "fingerprint": "7ebc3adcc9d89b45", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/bootstrap.py:344"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-33419b46e742f6fa", "level": "note", "message": {"text": "Possibly dead Python function: check_maintenance_logs_db_exists"}, "properties": {"repobilityId": "19a4d6b458a55e97", "scanner": "scanner-primary", "fingerprint": "33419b46e742f6fa", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/models/maintenance_logs.py:37"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e44e5e8c10d2fd1f", "level": "note", "message": {"text": "Possibly dead Python function: reset_maintenance_logs_db"}, "properties": {"repobilityId": "44299f33eea86c84", "scanner": "scanner-primary", "fingerprint": "e44e5e8c10d2fd1f", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/models/maintenance_logs.py:80"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f3884f47072bef7c", "level": "note", "message": {"text": "Possibly dead Python function: initialize_with_yesterday_runs"}, "properties": {"repobilityId": "64992dd254544c0a", "scanner": "scanner-primary", "fingerprint": "f3884f47072bef7c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/models/maintenance_logs.py:149"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ad1f0fb0ba7d4079", "level": "note", "message": {"text": "Possibly dead Python function: initialize_played_songs_table"}, "properties": {"repobilityId": "ee3f21af82dfc7cd", "scanner": "scanner-primary", "fingerprint": "ad1f0fb0ba7d4079", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/models/played_songs.py:144"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-288b656dcacf0e63", "level": "note", "message": {"text": "Possibly dead Python function: generate_uuid"}, "properties": {"repobilityId": "1eeb91251a023ff2", "scanner": "scanner-primary", "fingerprint": "288b656dcacf0e63", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/models/duplicate_node_tracking.py:18"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-721bf5a5baf25885", "level": "note", "message": {"text": "Possibly dead Python function: initialize_duplicate_node_tracking_db"}, "properties": {"repobilityId": "97ad76beff7386af", "scanner": "scanner-primary", "fingerprint": "721bf5a5baf25885", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/models/duplicate_node_tracking.py:60"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0543daf4ee0772f5", "level": "note", "message": {"text": "Possibly dead Python function: clear_duplicate_node_tracking_data"}, "properties": {"repobilityId": "94929f177da53cdf", "scanner": "scanner-primary", "fingerprint": "0543daf4ee0772f5", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/models/duplicate_node_tracking.py:82"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e38aac500faaeb52", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:45"}, "properties": {"repobilityId": "e059386131a523f8", "scanner": "scanner-primary", "fingerprint": "e38aac500faaeb52", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-755715fdc703f661", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/kg_lens/frontend/src/components/ChatLog.tsx:85"}, "properties": {"repobilityId": "d4b6bd345f1c6193", "scanner": "scanner-primary", "fingerprint": "755715fdc703f661", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-fa591b2f20267165", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/kg_lens/frontend/src/components/NodeSidebar.tsx:369"}, "properties": {"repobilityId": "3e6fa786eeaaa0e6", "scanner": "scanner-primary", "fingerprint": "fa591b2f20267165", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-9a189322279c9f5d", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 app/static/js/lights_settings.js:363"}, "properties": {"repobilityId": "a1c4b512a2b39b30", "scanner": "scanner-primary", "fingerprint": "9a189322279c9f5d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-c5c681119fb92f3a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 app/static/js/music_player.js:438"}, "properties": {"repobilityId": "ebc8fb747ee9e1c0", "scanner": "scanner-primary", "fingerprint": "c5c681119fb92f3a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2b8ee9461f263955", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 app/static/js/ring_settings.js:185"}, "properties": {"repobilityId": "926e616bb4b97c98", "scanner": "scanner-primary", "fingerprint": "2b8ee9461f263955", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-15a0b900fc427d75", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 app/static/js/quiet_mode_settings.js:183"}, "properties": {"repobilityId": "d79dda6a7ad0125f", "scanner": "scanner-primary", "fingerprint": "15a0b900fc427d75", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cd21bbfa0d114c03", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 app/static/js/weather.js:141"}, "properties": {"repobilityId": "b2bf7c4c054d7aca", "scanner": "scanner-primary", "fingerprint": "cd21bbfa0d114c03", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-490e8e0aa48b213b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 app/static/js/proactive_popup.js:30"}, "properties": {"repobilityId": "f75d32723d7ceedb", "scanner": "scanner-primary", "fingerprint": "490e8e0aa48b213b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-79f724096b5699a7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 app/static/js/setup_wizard.js:9"}, "properties": {"repobilityId": "bea6a74e8007bbe4", "scanner": "scanner-primary", "fingerprint": "79f724096b5699a7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8d00a374c4741a1d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 app/static/js/Emi.js:103"}, "properties": {"repobilityId": "dbbf9b0ec3513c0f", "scanner": "scanner-primary", "fingerprint": "8d00a374c4741a1d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d0a76b8144dabfcc", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 app/static/js/nest_settings.js:220"}, "properties": {"repobilityId": "18b186d3fc56279a", "scanner": "scanner-primary", "fingerprint": "d0a76b8144dabfcc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-8557e4a6531f1711", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 app/graph_visualizer/frontend/src/api/client.ts:15"}, "properties": {"repobilityId": "03711873c8785ab4", "scanner": "scanner-primary", "fingerprint": "8557e4a6531f1711", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fa2b24456436768f", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 app/graph_visualizer/frontend/src/components/SearchModal.tsx:40"}, "properties": {"repobilityId": "0d3c341481245339", "scanner": "scanner-primary", "fingerprint": "fa2b24456436768f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-5da450f48f5c1cc4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 app/graph_visualizer/frontend/src/components/Sidebar/EdgePanel.tsx:54"}, "properties": {"repobilityId": "b1edb7489470a7d7", "scanner": "scanner-primary", "fingerprint": "5da450f48f5c1cc4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b98cb2bd6c6cbf38", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 app/graph_visualizer/frontend/src/components/Sidebar/NodePanel.tsx:16"}, "properties": {"repobilityId": "f754fa8d81f7d15a", "scanner": "scanner-primary", "fingerprint": "b98cb2bd6c6cbf38", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-219aa60c620b82e8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 app/graph_visualizer/frontend/src/hooks/useKeyboardShortcuts.ts:82"}, "properties": {"repobilityId": "b91ca2610222424b", "scanner": "scanner-primary", "fingerprint": "219aa60c620b82e8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-76fd83430867a69c", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/me/frontend/src/components/WikiPanel.tsx:25"}, "properties": {"repobilityId": "4ae1050d0dfed009", "scanner": "scanner-primary", "fingerprint": "76fd83430867a69c", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-28358814554293ed", "level": "note", "message": {"text": "React Flow <Controls> without dark theming \u2014 app/assistant/agent_flow/src/components/FlowEditor.jsx:557"}, "properties": {"repobilityId": "679dc0b7c481aa02", "scanner": "scanner-primary", "fingerprint": "28358814554293ed", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.controls.no-bg"]}}, {"ruleId": "scanner-90cb8f2d7d2990ab", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/assistant/agent_flow/src/components/FlowEditor.jsx:485"}, "properties": {"repobilityId": "cfc1b58367a5651a", "scanner": "scanner-primary", "fingerprint": "90cb8f2d7d2990ab", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-a13767dc35c0a3a9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 app/assistant/agent_flow/src/components/FlowEditor.jsx:25"}, "properties": {"repobilityId": "af591c43800738f8", "scanner": "scanner-primary", "fingerprint": "a13767dc35c0a3a9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4d961dbb400190e4", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 app/assistant/agent_flow/src/components/ManagerSettings.jsx:39"}, "properties": {"repobilityId": "3c1563f599a21c7d", "scanner": "scanner-primary", "fingerprint": "4d961dbb400190e4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-72c2376449fd3020", "level": "note", "message": {"text": "React Flow <Controls> without dark theming \u2014 app/task_graph_viewer/src/App.jsx:395"}, "properties": {"repobilityId": "246b0a708bbc5e7b", "scanner": "scanner-primary", "fingerprint": "72c2376449fd3020", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.controls.no-bg"]}}, {"ruleId": "scanner-616eeda428115312", "level": "warning", "message": {"text": "Privileged port 30 in use"}, "properties": {"repobilityId": "54f172e7d16fc662", "scanner": "scanner-primary", "fingerprint": "616eeda428115312", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "configs/sleep_tracking.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b4dd578ad20f41e6", "level": "warning", "message": {"text": "Privileged port 10 in use"}, "properties": {"repobilityId": "735372d6b5594915", "scanner": "scanner-primary", "fingerprint": "b4dd578ad20f41e6", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "configs/sleep_tracking.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-21df465f38f4932d", "level": "warning", "message": {"text": "Dockerfile runs as root: docker/sandbox/Dockerfile"}, "properties": {"repobilityId": "e6e2f7f3dc844007", "scanner": "scanner-primary", "fingerprint": "21df465f38f4932d", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-fff79b4623d6162b", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: python:3.11-slim"}, "properties": {"repobilityId": "29e8d6fb0a51fd2b", "scanner": "scanner-primary", "fingerprint": "fff79b4623d6162b", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "docker/sandbox/Dockerfile"}, "region": {"startLine": 18}}}]}, {"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-7d392d1ce4e3f775", "level": "note", "message": {"text": "Insecure pattern 'debug_true' in _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1598"}, "properties": {"repobilityId": "521bf5c96cf61e7d", "scanner": "scanner-primary", "fingerprint": "7d392d1ce4e3f775", "layer": "security", "severity": "low", "confidence": 1.0, "tags": ["owasp", "debug_true"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1598}}}]}, {"ruleId": "scanner-d94338d296f1dfd2", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:89"}, "properties": {"repobilityId": "b730d8554408598e", "scanner": "scanner-primary", "fingerprint": "d94338d296f1dfd2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js"}, "region": {"startLine": 89}}}]}, {"ruleId": "scanner-7e130ebe47e9c1b1", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/lights_settings.js:343"}, "properties": {"repobilityId": "67d1a03e8ca55be8", "scanner": "scanner-primary", "fingerprint": "7e130ebe47e9c1b1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/lights_settings.js"}, "region": {"startLine": 343}}}]}, {"ruleId": "scanner-73978176b68c9af0", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/wellness_settings.js:19"}, "properties": {"repobilityId": "466344e8a8d2ace2", "scanner": "scanner-primary", "fingerprint": "73978176b68c9af0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/wellness_settings.js"}, "region": {"startLine": 19}}}]}, {"ruleId": "scanner-777afef99ab1401f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/music_player.js:280"}, "properties": {"repobilityId": "5a7e533a0203ead9", "scanner": "scanner-primary", "fingerprint": "777afef99ab1401f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/music_player.js"}, "region": {"startLine": 280}}}]}, {"ruleId": "scanner-08db1aea1285afac", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/ring_settings.js:165"}, "properties": {"repobilityId": "6c6e51eef5634ec7", "scanner": "scanner-primary", "fingerprint": "08db1aea1285afac", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/ring_settings.js"}, "region": {"startLine": 165}}}]}, {"ruleId": "scanner-e26feacda0f436bd", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/important_resources_settings.js:55"}, "properties": {"repobilityId": "3aa99193eb084d91", "scanner": "scanner-primary", "fingerprint": "e26feacda0f436bd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/important_resources_settings.js"}, "region": {"startLine": 55}}}]}, {"ruleId": "scanner-ded00a61adff4055", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/settings_accounts.js:26"}, "properties": {"repobilityId": "e02d7c7225c28978", "scanner": "scanner-primary", "fingerprint": "ded00a61adff4055", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/settings_accounts.js"}, "region": {"startLine": 26}}}]}, {"ruleId": "scanner-6dca0f10a7c0a859", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/progress.js:61"}, "properties": {"repobilityId": "740b1d2ffb82ff97", "scanner": "scanner-primary", "fingerprint": "6dca0f10a7c0a859", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/progress.js"}, "region": {"startLine": 61}}}]}, {"ruleId": "scanner-5672f8091b25cda2", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/routines_admin.js:129"}, "properties": {"repobilityId": "82227144353db972", "scanner": "scanner-primary", "fingerprint": "5672f8091b25cda2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/routines_admin.js"}, "region": {"startLine": 129}}}]}, {"ruleId": "scanner-157e2f13d76c14da", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/pods.js:72"}, "properties": {"repobilityId": "5b7310b3e29f49cb", "scanner": "scanner-primary", "fingerprint": "157e2f13d76c14da", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/pods.js"}, "region": {"startLine": 72}}}]}, {"ruleId": "scanner-a1fbb00f5a720403", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/insights.js:62"}, "properties": {"repobilityId": "09507ef9bbd5958e", "scanner": "scanner-primary", "fingerprint": "a1fbb00f5a720403", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/insights.js"}, "region": {"startLine": 62}}}]}, {"ruleId": "scanner-cf46e4d80ba2bc3a", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/beliefs.js:28"}, "properties": {"repobilityId": "1ba6350e1f9f0bcb", "scanner": "scanner-primary", "fingerprint": "cf46e4d80ba2bc3a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/beliefs.js"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-fdb30cb6689c70f6", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/quiet_mode_settings.js:82"}, "properties": {"repobilityId": "e4900eb50f32883a", "scanner": "scanner-primary", "fingerprint": "fdb30cb6689c70f6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/quiet_mode_settings.js"}, "region": {"startLine": 82}}}]}, {"ruleId": "scanner-3c3cf05ce98bf15f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/ring_snapshots.js:80"}, "properties": {"repobilityId": "9237576cf62617ec", "scanner": "scanner-primary", "fingerprint": "3c3cf05ce98bf15f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/ring_snapshots.js"}, "region": {"startLine": 80}}}]}, {"ruleId": "scanner-e7c3c671a053f6d9", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/personalize_activities.js:224"}, "properties": {"repobilityId": "8bf6d3221b4f6aee", "scanner": "scanner-primary", "fingerprint": "e7c3c671a053f6d9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/personalize_activities.js"}, "region": {"startLine": 224}}}]}, {"ruleId": "scanner-4bb3433ff29e7547", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/google_oauth_settings.js:25"}, "properties": {"repobilityId": "a395a333f267dedd", "scanner": "scanner-primary", "fingerprint": "4bb3433ff29e7547", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/google_oauth_settings.js"}, "region": {"startLine": 25}}}]}, {"ruleId": "scanner-56b381f5ae9acfe3", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/personalize_beliefs.js:95"}, "properties": {"repobilityId": "15c1e77650dad043", "scanner": "scanner-primary", "fingerprint": "56b381f5ae9acfe3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/personalize_beliefs.js"}, "region": {"startLine": 95}}}]}, {"ruleId": "scanner-777f864e93eab273", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/proactive_popup.js:61"}, "properties": {"repobilityId": "ba80f29cc976426d", "scanner": "scanner-primary", "fingerprint": "777f864e93eab273", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/proactive_popup.js"}, "region": {"startLine": 61}}}]}, {"ruleId": "scanner-df99485796099596", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/timeline.js:124"}, "properties": {"repobilityId": "e196bc2e7930bc67", "scanner": "scanner-primary", "fingerprint": "df99485796099596", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/timeline.js"}, "region": {"startLine": 124}}}]}, {"ruleId": "scanner-62e5b0c7e87aa88d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/setup_wizard.js:159"}, "properties": {"repobilityId": "df391ad7da23ace8", "scanner": "scanner-primary", "fingerprint": "62e5b0c7e87aa88d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/setup_wizard.js"}, "region": {"startLine": 159}}}]}, {"ruleId": "scanner-a6ace32781a68cae", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/features_settings.js:73"}, "properties": {"repobilityId": "b2821eab23cfa3be", "scanner": "scanner-primary", "fingerprint": "a6ace32781a68cae", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/features_settings.js"}, "region": {"startLine": 73}}}]}, {"ruleId": "scanner-f3007936f00fb01f", "level": "warning", "message": {"text": "Insecure pattern 'insert_adjacent_html' in app/static/js/features_settings.js:100"}, "properties": {"repobilityId": "76c9b7eff126251e", "scanner": "scanner-primary", "fingerprint": "f3007936f00fb01f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "insert_adjacent_html"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/features_settings.js"}, "region": {"startLine": 100}}}]}, {"ruleId": "scanner-36ef2b97cc95e524", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/entity_cards_editor.js:83"}, "properties": {"repobilityId": "2391e33e6a62c304", "scanner": "scanner-primary", "fingerprint": "36ef2b97cc95e524", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/entity_cards_editor.js"}, "region": {"startLine": 83}}}]}, {"ruleId": "scanner-43f6bc000060f445", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/voice_settings.js:81"}, "properties": {"repobilityId": "07ae7ad3f253bb57", "scanner": "scanner-primary", "fingerprint": "43f6bc000060f445", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/voice_settings.js"}, "region": {"startLine": 81}}}]}, {"ruleId": "scanner-07139db72c1336c4", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/google_accounts_settings.js:37"}, "properties": {"repobilityId": "b9edffb5c27b1df7", "scanner": "scanner-primary", "fingerprint": "07139db72c1336c4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/google_accounts_settings.js"}, "region": {"startLine": 37}}}]}, {"ruleId": "scanner-88332ce2fec33bfb", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/Emi.js:947"}, "properties": {"repobilityId": "95051cea7479de25", "scanner": "scanner-primary", "fingerprint": "88332ce2fec33bfb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/Emi.js"}, "region": {"startLine": 947}}}]}, {"ruleId": "scanner-848f0f52b341fd2c", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/nest_settings.js:43"}, "properties": {"repobilityId": "24bb3ef8f183911c", "scanner": "scanner-primary", "fingerprint": "848f0f52b341fd2c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/nest_settings.js"}, "region": {"startLine": 43}}}]}, {"ruleId": "scanner-05ea50b9414de33f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/task_create_page.js:44"}, "properties": {"repobilityId": "9a688723ee2433ae", "scanner": "scanner-primary", "fingerprint": "05ea50b9414de33f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/task_create_page.js"}, "region": {"startLine": 44}}}]}, {"ruleId": "scanner-0fe10be2ad7e22fd", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/todo_widgets.js:50"}, "properties": {"repobilityId": "ae165e8843b51d9d", "scanner": "scanner-primary", "fingerprint": "0fe10be2ad7e22fd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/todo_widgets.js"}, "region": {"startLine": 50}}}]}, {"ruleId": "scanner-84b000deeaea8851", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/email_widgets.js:44"}, "properties": {"repobilityId": "98b8560681e80c21", "scanner": "scanner-primary", "fingerprint": "84b000deeaea8851", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/email_widgets.js"}, "region": {"startLine": 44}}}]}, {"ruleId": "scanner-408af5ded8c08484", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/menu_controls.js:291"}, "properties": {"repobilityId": "e8a0ba651fd3661e", "scanner": "scanner-primary", "fingerprint": "408af5ded8c08484", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/menu_controls.js"}, "region": {"startLine": 291}}}]}, {"ruleId": "scanner-8318827c134d1f74", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/chat_render.js:196"}, "properties": {"repobilityId": "2a049b4873f579b5", "scanner": "scanner-primary", "fingerprint": "8318827c134d1f74", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/chat_render.js"}, "region": {"startLine": 196}}}]}, {"ruleId": "scanner-223a028c879e64ad", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/task_create_panel.js:239"}, "properties": {"repobilityId": "d80c9bcde0279fac", "scanner": "scanner-primary", "fingerprint": "223a028c879e64ad", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/task_create_panel.js"}, "region": {"startLine": 239}}}]}, {"ruleId": "scanner-91b15a8761306473", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/geoguessr_panel.js:183"}, "properties": {"repobilityId": "505bcaeb63dcbf94", "scanner": "scanner-primary", "fingerprint": "91b15a8761306473", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/geoguessr_panel.js"}, "region": {"startLine": 183}}}]}, {"ruleId": "scanner-189305f14df80bf6", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/calendar_widgets.js:76"}, "properties": {"repobilityId": "8a3ec94312b6f938", "scanner": "scanner-primary", "fingerprint": "189305f14df80bf6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/calendar_widgets.js"}, "region": {"startLine": 76}}}]}, {"ruleId": "scanner-d6ea9ff81a8f2db3", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/doc_editor_page.js:34"}, "properties": {"repobilityId": "7c10235b09b19579", "scanner": "scanner-primary", "fingerprint": "d6ea9ff81a8f2db3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/doc_editor_page.js"}, "region": {"startLine": 34}}}]}, {"ruleId": "scanner-43a107e710fde09f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/socket_heartbeat.js:125"}, "properties": {"repobilityId": "819a364639e60e4a", "scanner": "scanner-primary", "fingerprint": "43a107e710fde09f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/socket_heartbeat.js"}, "region": {"startLine": 125}}}]}, {"ruleId": "scanner-478031654bb093d3", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/news_weather_widgets.js:136"}, "properties": {"repobilityId": "3460e6da92021b50", "scanner": "scanner-primary", "fingerprint": "478031654bb093d3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/news_weather_widgets.js"}, "region": {"startLine": 136}}}]}, {"ruleId": "scanner-9ea5fbc300a4847d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/scheduler_widgets.js:68"}, "properties": {"repobilityId": "ba1b14bc104806f9", "scanner": "scanner-primary", "fingerprint": "9ea5fbc300a4847d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/scheduler_widgets.js"}, "region": {"startLine": 68}}}]}, {"ruleId": "scanner-b0a3b967d6863068", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/js/emi/doc_create_panel.js:310"}, "properties": {"repobilityId": "7306b16b3e18b0e3", "scanner": "scanner-primary", "fingerprint": "b0a3b967d6863068", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/js/emi/doc_create_panel.js"}, "region": {"startLine": 310}}}]}, {"ruleId": "scanner-9ca400c25ed23f78", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in app/static/mobile/js/emi_mobile.js:95"}, "properties": {"repobilityId": "97cc426b5052a143", "scanner": "scanner-primary", "fingerprint": "9ca400c25ed23f78", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/static/mobile/js/emi_mobile.js"}, "region": {"startLine": 95}}}]}, {"ruleId": "scanner-974f3eebfc40b904", "level": "note", "message": {"text": "Insecure pattern 'debug_true' in app/graph_visualizer/standalone_app.py:98"}, "properties": {"repobilityId": "fe4b9e2257035363", "scanner": "scanner-primary", "fingerprint": "974f3eebfc40b904", "layer": "security", "severity": "low", "confidence": 1.0, "tags": ["owasp", "debug_true"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/graph_visualizer/standalone_app.py"}, "region": {"startLine": 98}}}]}, {"ruleId": "scanner-4601e3ad3bb28677", "level": "warning", "message": {"text": "No CI/CD pipelines detected"}, "properties": {"repobilityId": "c3ee439bce2bc51e", "scanner": "scanner-primary", "fingerprint": "4601e3ad3bb28677", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-63808915a8b2fddf", "level": "note", "message": {"text": "Very large file: _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py (1599 lines)"}, "properties": {"repobilityId": "eae73319deb84c07", "scanner": "scanner-primary", "fingerprint": "63808915a8b2fddf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fecbe14495ef8078", "level": "note", "message": {"text": "Very large file: _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/taxonomy_pipeline.py (1344 lines)"}, "properties": {"repobilityId": "70a1e16a2b2d9811", "scanner": "scanner-primary", "fingerprint": "fecbe14495ef8078", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d8a81ace99059fd3", "level": "note", "message": {"text": "Very large file: _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/orchestrator.py (1607 lines)"}, "properties": {"repobilityId": "5a91eecb38730041", "scanner": "scanner-primary", "fingerprint": "d8a81ace99059fd3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-017ef5e9c2eb96fc", "level": "note", "message": {"text": "Very large file: app/kg_lens/frontend/src/components/GraphCanvas.tsx (1417 lines)"}, "properties": {"repobilityId": "6191dcfac893e828", "scanner": "scanner-primary", "fingerprint": "017ef5e9c2eb96fc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-58cb77eed277458b", "level": "note", "message": {"text": "Very large file: app/static/js/music_player.js (1828 lines)"}, "properties": {"repobilityId": "bd32ecb93f6a8f9a", "scanner": "scanner-primary", "fingerprint": "58cb77eed277458b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-133da35dc79fb180", "level": "note", "message": {"text": "Very large file: app/static/js/Emi.js (1683 lines)"}, "properties": {"repobilityId": "7622c64d86960b27", "scanner": "scanner-primary", "fingerprint": "133da35dc79fb180", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6549fb584162198f", "level": "note", "message": {"text": "Very large file: app/routes/smart_home_bridge.py (1346 lines)"}, "properties": {"repobilityId": "bb42ca7e0c494ea2", "scanner": "scanner-primary", "fingerprint": "6549fb584162198f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f4a2befcfea727ec", "level": "note", "message": {"text": "Very large file: app/routes/preferences.py (2170 lines)"}, "properties": {"repobilityId": "70d3944f51f5dc24", "scanner": "scanner-primary", "fingerprint": "f4a2befcfea727ec", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0bd3a65cb19a86a8", "level": "note", "message": {"text": "Very large file: app/me/frontend/src/components/GraphCanvas.tsx (1414 lines)"}, "properties": {"repobilityId": "0a730e5a395cdfc0", "scanner": "scanner-primary", "fingerprint": "0bd3a65cb19a86a8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d311ac6ffa04d0f4", "level": "note", "message": {"text": "Very large file: app/assistant/routine_manager/routine_manager.py (1717 lines)"}, "properties": {"repobilityId": "158996ea297dc56f", "scanner": "scanner-primary", "fingerprint": "d311ac6ffa04d0f4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e8f1301724ae38ea", "level": "note", "message": {"text": "Very large file: app/assistant/tests/non_agent_tests/test_web_page_coords_viewport_accuracy.py (1352 lines)"}, "properties": {"repobilityId": "ab934722951b61d0", "scanner": "scanner-primary", "fingerprint": "e8f1301724ae38ea", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-53a776fb44094cc1", "level": "note", "message": {"text": "Very large file: app/assistant/agent_runtime/services/context_injector.py (1215 lines)"}, "properties": {"repobilityId": "ba5407152bcbb564", "scanner": "scanner-primary", "fingerprint": "53a776fb44094cc1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-83cb036c775bb45e", "level": "note", "message": {"text": "Very large file: app/assistant/pipelines/entity_cards_v2/builder.py (1428 lines)"}, "properties": {"repobilityId": "4c9d1e1861bd314a", "scanner": "scanner-primary", "fingerprint": "83cb036c775bb45e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-51cc67bbff7466da", "level": "note", "message": {"text": "Very large file: app/assistant/pipelines/kg_maintenance_pipeline/step_duplicate_scan.py (1350 lines)"}, "properties": {"repobilityId": "7e56a72ad7b5b8b8", "scanner": "scanner-primary", "fingerprint": "51cc67bbff7466da", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-44aa51be31b3a08a", "level": "note", "message": {"text": "Very large file: app/assistant/lib/data_conversion_module/DataConversion.py (1413 lines)"}, "properties": {"repobilityId": "10a8472379b5a9d3", "scanner": "scanner-primary", "fingerprint": "44aa51be31b3a08a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-41e26cb6307fb80f", "level": "note", "message": {"text": "Very large file: app/assistant/lib/core_tools/kg_mutator/kg_mutator_tool.py (1547 lines)"}, "properties": {"repobilityId": "f3d74ac7b41bbe38", "scanner": "scanner-primary", "fingerprint": "41e26cb6307fb80f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e5e76db9a500183b", "level": "note", "message": {"text": "Very large file: app/assistant/kg/proposal_promoter.py (3108 lines)"}, "properties": {"repobilityId": "b30cd835e8b1c679", "scanner": "scanner-primary", "fingerprint": "e5e76db9a500183b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7101f648f7a93e0e", "level": "note", "message": {"text": "Very large file: app/assistant/kg_core/kg_utils/kg_tools.py (1808 lines)"}, "properties": {"repobilityId": "51d81a07fe7f625c", "scanner": "scanner-primary", "fingerprint": "7101f648f7a93e0e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8113e32ca6caa08b", "level": "note", "message": {"text": "Very large file: app/assistant/kg_core/kg_setup/seed_taxonomy_large.py (1583 lines)"}, "properties": {"repobilityId": "84d3aef84e6b187f", "scanner": "scanner-primary", "fingerprint": "8113e32ca6caa08b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e37dbb9e14aabf89", "level": "note", "message": {"text": "Very large file: app/assistant/kg_core/kg_setup/seed_taxonomy_minimal_curated.py (1068 lines)"}, "properties": {"repobilityId": "2d7200a5cf272f73", "scanner": "scanner-primary", "fingerprint": "e37dbb9e14aabf89", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9a64eb02168843eb", "level": "note", "message": {"text": "Very large file: app/assistant/room_session_manager/room_session_manager.py (1171 lines)"}, "properties": {"repobilityId": "b4de366182ee17bc", "scanner": "scanner-primary", "fingerprint": "9a64eb02168843eb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a1046243596a2a7a", "level": "note", "message": {"text": "Very large file: app/assistant/control_nodes/task_compile_post_node.py (1699 lines)"}, "properties": {"repobilityId": "216fdd19c37461d5", "scanner": "scanner-primary", "fingerprint": "a1046243596a2a7a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7eeb7d5f9b8f990d", "level": "note", "message": {"text": "Very large file: app/assistant/orchestrator_classes/Orchestrator.py (1575 lines)"}, "properties": {"repobilityId": "c8c33d9c1d03915a", "scanner": "scanner-primary", "fingerprint": "7eeb7d5f9b8f990d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f0be6f41ba155a22", "level": "note", "message": {"text": "Very large file: app/services/llm_client.py (1593 lines)"}, "properties": {"repobilityId": "0e364141ce9bef3b", "scanner": "scanner-primary", "fingerprint": "f0be6f41ba155a22", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ea3b5e389d8c9c0f", "level": "note", "message": {"text": "Low test-to-source ratio"}, "properties": {"repobilityId": "ef7b2552cc00a375", "scanner": "scanner-primary", "fingerprint": "ea3b5e389d8c9c0f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["tests"]}}, {"ruleId": "scanner-786c8c22d3fe624f", "level": "note", "message": {"text": "48 TODO/FIXME markers"}, "properties": {"repobilityId": "4b38c118003e07d2", "scanner": "scanner-primary", "fingerprint": "786c8c22d3fe624f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["maintenance"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "d433e784ff832908", "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": "e57adacafc091fb6", "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": "ade965f67499a461", "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": "9ac5ebade57d409b", "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": "a114ace28ee62e7c", "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": "a999ba95f553be4d", "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": "3f315b74825da0bf", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-c208b4ba0cf55f93", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/filesystem-layout/SKILL.md"}, "properties": {"repobilityId": "32b38f810e6d51df", "scanner": "scanner-primary", "fingerprint": "c208b4ba0cf55f93", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/filesystem-layout/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d60ec577be87f618", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/extending-emi-resources/SKILL.md"}, "properties": {"repobilityId": "4c03ca172c4717d1", "scanner": "scanner-primary", "fingerprint": "d60ec577be87f618", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/extending-emi-resources/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3c4a4de84684437a", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/slack-formatting/SKILL.md"}, "properties": {"repobilityId": "e8c0fd901ad39105", "scanner": "scanner-primary", "fingerprint": "3c4a4de84684437a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/slack-formatting/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-51a4aaa56375394c", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/kg-conflict-triage/SKILL.md"}, "properties": {"repobilityId": "160386cd96b88d5c", "scanner": "scanner-primary", "fingerprint": "51a4aaa56375394c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/kg-conflict-triage/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2b115b6c93555078", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: skills/emi-ui-templating/SKILL.md"}, "properties": {"repobilityId": "e50884f7dfec80a4", "scanner": "scanner-primary", "fingerprint": "2b115b6c93555078", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "skill_file"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "skills/emi-ui-templating/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-169c69372d1376af", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 start.py:45"}, "properties": {"repobilityId": "43ed25c10df50322", "scanner": "scanner-primary", "fingerprint": "169c69372d1376af", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ce4ebdb6beabc96a", "level": "none", "message": {"text": "Commented-code block (5 lines) in setup.py:106"}, "properties": {"repobilityId": "043436a7b6021326", "scanner": "scanner-primary", "fingerprint": "ce4ebdb6beabc96a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a36fc80206b6b652", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 setup.py:212"}, "properties": {"repobilityId": "68737e04262935d3", "scanner": "scanner-primary", "fingerprint": "a36fc80206b6b652", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-45feb20cc9e5efd9", "level": "note", "message": {"text": "Legacy-named symbol `http_sse_deprecated` in mcp/validate_servers.py:59"}, "properties": {"repobilityId": "88658600f008d509", "scanner": "scanner-primary", "fingerprint": "45feb20cc9e5efd9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-537ce0dd22a2675d", "level": "note", "message": {"text": "Legacy-named symbol `best_old` in _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/orchestrator.py:468"}, "properties": {"repobilityId": "7b993e2a44ef20b4", "scanner": "scanner-primary", "fingerprint": "537ce0dd22a2675d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4519fe3a4a14884d", "level": "none", "message": {"text": "Commented-code block (5 lines) in _archived/control_nodes_2026_05_06/app/assistant/control_nodes/playwright_page_overview_node.py:94"}, "properties": {"repobilityId": "6e1753f1fe6c14c8", "scanner": "scanner-primary", "fingerprint": "4519fe3a4a14884d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec9820a37ed9397e", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in scripts/migrate_entity_card_v2_nullable_node_id.py:1"}, "properties": {"repobilityId": "5618533af0b15b5d", "scanner": "scanner-primary", "fingerprint": "ec9820a37ed9397e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5243e0b15b57d37f", "level": "none", "message": {"text": "Commented-code block (6 lines) in scripts/audit_kg_attributes_json.py:34"}, "properties": {"repobilityId": "ed3518a08b1df67b", "scanner": "scanner-primary", "fingerprint": "5243e0b15b57d37f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fe4dd52de8965cb3", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in scripts/cleanup_ghost_entities.py:97"}, "properties": {"repobilityId": "099b8da2b8ab9fed", "scanner": "scanner-primary", "fingerprint": "fe4dd52de8965cb3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0e23578a6ad19553", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/sync_dev_wiki_to_github.py:228"}, "properties": {"repobilityId": "84579365af3d64d7", "scanner": "scanner-primary", "fingerprint": "0e23578a6ad19553", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-03bd6d4d82f181ac", "level": "note", "message": {"text": "Legacy-named symbol `is_backup` in app/socket_handlers.py:348"}, "properties": {"repobilityId": "cbde6323a989746f", "scanner": "scanner-primary", "fingerprint": "03bd6d4d82f181ac", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-83aa9f3008f428bc", "level": "note", "message": {"text": "Legacy-named symbol `entity_cards_v2` in app/create_app.py:170"}, "properties": {"repobilityId": "7e3046c33da63760", "scanner": "scanner-primary", "fingerprint": "83aa9f3008f428bc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3e58caa64556a633", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/create_app.py:101"}, "properties": {"repobilityId": "dc9bd4b1df6f93fc", "scanner": "scanner-primary", "fingerprint": "3e58caa64556a633", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-74d6231a258546e5", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/bootstrap.py:236"}, "properties": {"repobilityId": "3cdeb661d716d5c7", "scanner": "scanner-primary", "fingerprint": "74d6231a258546e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-acf96d5df516a7bf", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/kg_lens/frontend/src/api.ts:17"}, "properties": {"repobilityId": "10d92b10e4c245e7", "scanner": "scanner-primary", "fingerprint": "acf96d5df516a7bf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-bac74f2ae234b96e", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/kg_lens/frontend/src/components/Graph3D.tsx:8"}, "properties": {"repobilityId": "f01b38d6b49babf7", "scanner": "scanner-primary", "fingerprint": "bac74f2ae234b96e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e41d142f713034aa", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/kg_lens/frontend/src/components/GraphCanvas.tsx:47"}, "properties": {"repobilityId": "7afe05fa755d5b81", "scanner": "scanner-primary", "fingerprint": "e41d142f713034aa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-96628d76071d88ea", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/static/js/lights_settings.js:297"}, "properties": {"repobilityId": "18f8debb8235cfea", "scanner": "scanner-primary", "fingerprint": "96628d76071d88ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-43d88a89250e9922", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/lights_settings.js:28"}, "properties": {"repobilityId": "3bbd6f6360bb52a5", "scanner": "scanner-primary", "fingerprint": "43d88a89250e9922", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1e6245ac825c8ef7", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/wellness_settings.js:10"}, "properties": {"repobilityId": "5decdd7f2b792ea0", "scanner": "scanner-primary", "fingerprint": "1e6245ac825c8ef7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-485fdd67d4e77ac6", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/music_player.js:371"}, "properties": {"repobilityId": "23b40a4272b80e9a", "scanner": "scanner-primary", "fingerprint": "485fdd67d4e77ac6", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-fbaf661587a54014", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/important_resources_settings.js:110"}, "properties": {"repobilityId": "fe60ca37cd97eb25", "scanner": "scanner-primary", "fingerprint": "fbaf661587a54014", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f5be293e8b829233", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/api_keys_settings.js:27"}, "properties": {"repobilityId": "98144d8fbc4f8e4f", "scanner": "scanner-primary", "fingerprint": "f5be293e8b829233", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5038cfe256034e1e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/insights.js:185"}, "properties": {"repobilityId": "068935fbbb908c39", "scanner": "scanner-primary", "fingerprint": "5038cfe256034e1e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0f72f28ddb2dd077", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/beliefs.js:41"}, "properties": {"repobilityId": "8490dea5fb36cfdc", "scanner": "scanner-primary", "fingerprint": "0f72f28ddb2dd077", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6679eb00bac6f761", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/quiet_mode_settings.js:185"}, "properties": {"repobilityId": "b7bb493ac53dc259", "scanner": "scanner-primary", "fingerprint": "6679eb00bac6f761", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a3ae7fef8a64fa3f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/ring_snapshots.js:144"}, "properties": {"repobilityId": "a3b3f64a8c7a7992", "scanner": "scanner-primary", "fingerprint": "a3ae7fef8a64fa3f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1db40637e0d9557b", "level": "note", "message": {"text": "Legacy-named symbol `recently_deprecated` in app/static/js/personalize_beliefs.js:123"}, "properties": {"repobilityId": "fe9d836932fe876a", "scanner": "scanner-primary", "fingerprint": "1db40637e0d9557b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-31c8ae979ece284e", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/static/js/weather.js:140"}, "properties": {"repobilityId": "9956301ee65db28f", "scanner": "scanner-primary", "fingerprint": "31c8ae979ece284e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c0165ab895356cf1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/integrations_shared.js:34"}, "properties": {"repobilityId": "185b2d1511a5cc87", "scanner": "scanner-primary", "fingerprint": "c0165ab895356cf1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5491797c21f47e1d", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/static/js/timeline.js:3"}, "properties": {"repobilityId": "3bfae55043066e8d", "scanner": "scanner-primary", "fingerprint": "5491797c21f47e1d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-437678b9f6b4f8a3", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/timeline.js:103"}, "properties": {"repobilityId": "7ca5206e2caf81b0", "scanner": "scanner-primary", "fingerprint": "437678b9f6b4f8a3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a5327758cd26be4c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/entity_cards_editor.js:123"}, "properties": {"repobilityId": "2f95860fb93d4edd", "scanner": "scanner-primary", "fingerprint": "a5327758cd26be4c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7945519cf1724ea0", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/voice_settings.js:167"}, "properties": {"repobilityId": "54bb86e2513aa137", "scanner": "scanner-primary", "fingerprint": "7945519cf1724ea0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0ef8ec3978a71c0e", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/static/js/Emi.js:1462"}, "properties": {"repobilityId": "1486837b6f9a79f6", "scanner": "scanner-primary", "fingerprint": "0ef8ec3978a71c0e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec1fa455f50caefa", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/Emi.js:140"}, "properties": {"repobilityId": "070a1350589ed280", "scanner": "scanner-primary", "fingerprint": "ec1fa455f50caefa", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f507238377187efb", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/task_create_page.js:207"}, "properties": {"repobilityId": "8ca26793c1863f47", "scanner": "scanner-primary", "fingerprint": "f507238377187efb", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-576ca5910e9254da", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/request_sender.js:81"}, "properties": {"repobilityId": "9961004bbf3455fc", "scanner": "scanner-primary", "fingerprint": "576ca5910e9254da", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-4681340b00600d2b", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/static/js/emi/chat_render.js:11"}, "properties": {"repobilityId": "251f812b45b9d4d2", "scanner": "scanner-primary", "fingerprint": "4681340b00600d2b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-56974e63c384fed9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/chat_render.js:235"}, "properties": {"repobilityId": "972f1024c624fb99", "scanner": "scanner-primary", "fingerprint": "56974e63c384fed9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1b7a8f924e9bb909", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/task_create_panel.js:115"}, "properties": {"repobilityId": "d8bbbbb8c0299c8d", "scanner": "scanner-primary", "fingerprint": "1b7a8f924e9bb909", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-46f053e42b75e1a4", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/doc_editor_page.js:208"}, "properties": {"repobilityId": "d7e7df4c2b7074eb", "scanner": "scanner-primary", "fingerprint": "46f053e42b75e1a4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b821a1811334c12d", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/static/js/emi/socket_heartbeat.js:102"}, "properties": {"repobilityId": "634402c0bd6768bc", "scanner": "scanner-primary", "fingerprint": "b821a1811334c12d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-043991c72df5b725", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/static/js/emi/doc_create_panel.js:49"}, "properties": {"repobilityId": "39f4b5b53e2ee009", "scanner": "scanner-primary", "fingerprint": "043991c72df5b725", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b84477865f2f4fab", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 app/graph_visualizer/start_visualizer.py:57"}, "properties": {"repobilityId": "4eac0bc24f4e8704", "scanner": "scanner-primary", "fingerprint": "b84477865f2f4fab", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7df0e2286c19cbd4", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/graph_visualizer/api.py:121"}, "properties": {"repobilityId": "e652afdd85b4439e", "scanner": "scanner-primary", "fingerprint": "7df0e2286c19cbd4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1025ef9af7b1eca7", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/graph_visualizer/frontend/src/App.tsx:251"}, "properties": {"repobilityId": "0cf9be9dafc2855d", "scanner": "scanner-primary", "fingerprint": "1025ef9af7b1eca7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-03b4ef687d88e64c", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/graph_visualizer/frontend/src/lib/graphUtils.ts:49"}, "properties": {"repobilityId": "a7545b46bf94cfc1", "scanner": "scanner-primary", "fingerprint": "03b4ef687d88e64c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-561e28c97851fc11", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/database/table_initializer.py:87"}, "properties": {"repobilityId": "ba5880ce8b14efa1", "scanner": "scanner-primary", "fingerprint": "561e28c97851fc11", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ce2a1ac43a186189", "level": "note", "message": {"text": "Legacy-named symbol `migration_backup` in app/database/migration_runner.py:103"}, "properties": {"repobilityId": "c43147e3dcccb402", "scanner": "scanner-primary", "fingerprint": "ce2a1ac43a186189", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c29da972ab341121", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/database/migration_runner.py:96"}, "properties": {"repobilityId": "7b5286b7d9d3aea0", "scanner": "scanner-primary", "fingerprint": "c29da972ab341121", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-48f7c338c1a46c7e", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/routes/kg_interests.py:97"}, "properties": {"repobilityId": "8c60f157be793844", "scanner": "scanner-primary", "fingerprint": "48f7c338c1a46c7e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ae447f4d78a6dce1", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in app/routes/beliefs.py:55"}, "properties": {"repobilityId": "0be79b60fcaa555e", "scanner": "scanner-primary", "fingerprint": "ae447f4d78a6dce1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1ab55d6d5af7f202", "level": "note", "message": {"text": "Legacy-named symbol `entity_cards_v2` in app/routes/__init__.py:13"}, "properties": {"repobilityId": "0cd513e19b188031", "scanner": "scanner-primary", "fingerprint": "1ab55d6d5af7f202", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7737189b30264409", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/routes/kg_maintenance.py:390"}, "properties": {"repobilityId": "1103c2925c78b415", "scanner": "scanner-primary", "fingerprint": "7737189b30264409", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-67b55cd5f9b4b0a7", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in app/routes/beliefs_shadow.py:23"}, "properties": {"repobilityId": "20fef4c188977972", "scanner": "scanner-primary", "fingerprint": "67b55cd5f9b4b0a7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-148e9075176785d7", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/routes/daily_summary.py:8"}, "properties": {"repobilityId": "9a1cbcb62fcd737f", "scanner": "scanner-primary", "fingerprint": "148e9075176785d7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-94452b1e829b86a0", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/routes/process_request.py:68"}, "properties": {"repobilityId": "b9cc73f894187368", "scanner": "scanner-primary", "fingerprint": "94452b1e829b86a0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-51a85e3e82e59e9f", "level": "note", "message": {"text": "Legacy-named symbol `entity_cards_v2` in app/routes/setup.py:458"}, "properties": {"repobilityId": "a5b924d89a2cf794", "scanner": "scanner-primary", "fingerprint": "51a85e3e82e59e9f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0c16c7e8939f71e0", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/routes/setup.py:456"}, "properties": {"repobilityId": "f390004950adb857", "scanner": "scanner-primary", "fingerprint": "0c16c7e8939f71e0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-20fc426b1ece0d63", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/routes/smart_home_bridge.py:268"}, "properties": {"repobilityId": "25b5da7d51a51b3f", "scanner": "scanner-primary", "fingerprint": "20fc426b1ece0d63", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-111b311a306e065e", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/routes/wiki_viewer.py:547"}, "properties": {"repobilityId": "8310d5fdc5501f1f", "scanner": "scanner-primary", "fingerprint": "111b311a306e065e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-54bd4d24d217f2f1", "level": "note", "message": {"text": "Legacy-named symbol `_recently_deprecated` in app/routes/personalize.py:110"}, "properties": {"repobilityId": "97fd0089933dbecb", "scanner": "scanner-primary", "fingerprint": "54bd4d24d217f2f1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9c377172e3c2e00e", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/routes/personalize.py:271"}, "properties": {"repobilityId": "15ed5c5be8e2c582", "scanner": "scanner-primary", "fingerprint": "9c377172e3c2e00e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9b5b40ff8dbfc279", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/routes/kg_pipeline_status.py:90"}, "properties": {"repobilityId": "514a1668719f479b", "scanner": "scanner-primary", "fingerprint": "9b5b40ff8dbfc279", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-721be015b7930e53", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/routes/preferences.py:267"}, "properties": {"repobilityId": "34b17d9d8433f8df", "scanner": "scanner-primary", "fingerprint": "721be015b7930e53", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6a8a982ea2dac6e3", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/routes/kg_proposals.py:579"}, "properties": {"repobilityId": "e89b04181f720fe7", "scanner": "scanner-primary", "fingerprint": "6a8a982ea2dac6e3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-443d50e32a4fe35e", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/routes/entity_cards_v2.py:3"}, "properties": {"repobilityId": "c647779b4c056b12", "scanner": "scanner-primary", "fingerprint": "443d50e32a4fe35e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5f678039679a24bf", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 app/routes/process_audio.py:62"}, "properties": {"repobilityId": "1326783dd3d49f29", "scanner": "scanner-primary", "fingerprint": "5f678039679a24bf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-bcb4b3aa0244c6cc", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/resource_manager/resource_manager.py:461"}, "properties": {"repobilityId": "79d50aef1b4716e7", "scanner": "scanner-primary", "fingerprint": "bcb4b3aa0244c6cc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-85241362b51167cf", "level": "none", "message": {"text": "Commented-code block (10 lines) in app/me/pagerank.py:416"}, "properties": {"repobilityId": "443104e819a2cf8a", "scanner": "scanner-primary", "fingerprint": "85241362b51167cf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2d06431496961092", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/me/layout_sim.py:25"}, "properties": {"repobilityId": "51194d45020d6d68", "scanner": "scanner-primary", "fingerprint": "2d06431496961092", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4b5aa41855587890", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/me/api.py:138"}, "properties": {"repobilityId": "e1c7c379ae6817c9", "scanner": "scanner-primary", "fingerprint": "4b5aa41855587890", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f1770c16bd650cc0", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 app/me/frontend/src/api.ts:12"}, "properties": {"repobilityId": "a148274fe0750693", "scanner": "scanner-primary", "fingerprint": "f1770c16bd650cc0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-702887e54c190032", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/me/frontend/src/App.tsx:30"}, "properties": {"repobilityId": "f4550d80b884a682", "scanner": "scanner-primary", "fingerprint": "702887e54c190032", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-600c9955bc101080", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/me/frontend/src/components/GraphCanvas.tsx:46"}, "properties": {"repobilityId": "9a7f232ac528323d", "scanner": "scanner-primary", "fingerprint": "600c9955bc101080", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-efdfcba12be05967", "level": "none", "message": {"text": "Commented-code block (11 lines) in app/assistant/initialize_system.py:121"}, "properties": {"repobilityId": "01ba7fe15cd4987b", "scanner": "scanner-primary", "fingerprint": "efdfcba12be05967", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dd99eee7764c8b27", "level": "note", "message": {"text": "Legacy-named symbol `entity_cards_v2` in app/assistant/routine_manager/routine_functions.py:113"}, "properties": {"repobilityId": "7f63131348409771", "scanner": "scanner-primary", "fingerprint": "dd99eee7764c8b27", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0da2be8683469ba7", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/routine_manager/routine_functions.py:451"}, "properties": {"repobilityId": "18620322d1c52cc3", "scanner": "scanner-primary", "fingerprint": "0da2be8683469ba7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bc8f74eb750fae36", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/routine_manager/routine_manager.py:92"}, "properties": {"repobilityId": "515b3138cad37670", "scanner": "scanner-primary", "fingerprint": "bc8f74eb750fae36", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7bf691d93b533f11", "level": "note", "message": {"text": "Legacy-named symbol `routine_task_runner_v2` in app/assistant/routine_manager/runners/taskrunner/task_runner.py:55"}, "properties": {"repobilityId": "29c5c8766754fe42", "scanner": "scanner-primary", "fingerprint": "7bf691d93b533f11", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-24d13ae43235e800", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/routine_manager/runners/taskrunner/task_runner.py:47"}, "properties": {"repobilityId": "a70dc08af3b54a6d", "scanner": "scanner-primary", "fingerprint": "24d13ae43235e800", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8db14cdebe1c91ff", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/wiki_generator/page_writer.py:110"}, "properties": {"repobilityId": "8161d53f7f5ecaae", "scanner": "scanner-primary", "fingerprint": "8db14cdebe1c91ff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6fba12df6bcef1ea", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/wiki_generator/consistency_critic.py:70"}, "properties": {"repobilityId": "28705b6aa3aa22a6", "scanner": "scanner-primary", "fingerprint": "6fba12df6bcef1ea", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-79a5d7e25a0844ab", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/wiki_generator/wiki_renderer.py:152"}, "properties": {"repobilityId": "edb033f6017edca4", "scanner": "scanner-primary", "fingerprint": "79a5d7e25a0844ab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b681a2777a27b98f", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/entity_management/entity_card_v2.py:7"}, "properties": {"repobilityId": "29cfa22f70dde964", "scanner": "scanner-primary", "fingerprint": "b681a2777a27b98f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a7a90675bdf1e3e8", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/entity_management/entity_card_v2.py:75"}, "properties": {"repobilityId": "2171edd00eaec971", "scanner": "scanner-primary", "fingerprint": "a7a90675bdf1e3e8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-759521aa94175f08", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/entity_management/entity_catalog.py:4"}, "properties": {"repobilityId": "fc5f83a869095da9", "scanner": "scanner-primary", "fingerprint": "759521aa94175f08", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8bf5decfd3bcda3f", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/entity_management/entity_cards.py:6"}, "properties": {"repobilityId": "6dba48eef450fd65", "scanner": "scanner-primary", "fingerprint": "8bf5decfd3bcda3f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b5a7363743da6774", "level": "note", "message": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/test_task_creation_flow.py:192"}, "properties": {"repobilityId": "0f0b9afc37294ccf", "scanner": "scanner-primary", "fingerprint": "b5a7363743da6774", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-474e2db53db56ae3", "level": "note", "message": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/test_compile_morning_briefing.py:234"}, "properties": {"repobilityId": "9e514cde7397bb75", "scanner": "scanner-primary", "fingerprint": "474e2db53db56ae3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2a48eeadc999e30d", "level": "note", "message": {"text": "Legacy-named symbol `timesheet_batch_v1` in app/assistant/tests/test_job_spec_loader.py:16"}, "properties": {"repobilityId": "989abe3f44b8dd34", "scanner": "scanner-primary", "fingerprint": "2a48eeadc999e30d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e5ddb3d21765c327", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/tests/test_setup.py:5"}, "properties": {"repobilityId": "f6378aa11d515154", "scanner": "scanner-primary", "fingerprint": "e5ddb3d21765c327", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0116d323ca4ae4ef", "level": "note", "message": {"text": "Legacy-named symbol `timesheet_narratives_v1` in app/assistant/tests/test_task_spec_loader.py:15"}, "properties": {"repobilityId": "e33f0f948680207c", "scanner": "scanner-primary", "fingerprint": "0116d323ca4ae4ef", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-06a1ddae14b17412", "level": "note", "message": {"text": "Legacy-named symbol `timesheet_narratives_v1` in app/assistant/tests/agent_tests/test_task_compile_existing_specs.py:56"}, "properties": {"repobilityId": "07c0472a0ec6e614", "scanner": "scanner-primary", "fingerprint": "06a1ddae14b17412", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7044d0db4d75990e", "level": "note", "message": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/agent_tests/test_task_compile_semantic_matrix.py:152"}, "properties": {"repobilityId": "31849759d394e7dd", "scanner": "scanner-primary", "fingerprint": "7044d0db4d75990e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-88405aad6a763ae7", "level": "note", "message": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/agent_tests/test_task_ir_runner.py:24"}, "properties": {"repobilityId": "85d7e5d2d9608ebb", "scanner": "scanner-primary", "fingerprint": "88405aad6a763ae7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-da86dd31ae9bc2d2", "level": "note", "message": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/agent_tests/test_task_ir_pinned_tools.py:65"}, "properties": {"repobilityId": "18db7306a66a103d", "scanner": "scanner-primary", "fingerprint": "da86dd31ae9bc2d2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8198e538451c6d5d", "level": "note", "message": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/tests/agent_tests/test_task_compile_manager.py:13"}, "properties": {"repobilityId": "6dcd2150ed4c2000", "scanner": "scanner-primary", "fingerprint": "8198e538451c6d5d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-283bce58b92ef8fc", "level": "none", "message": {"text": "Commented-code block (11 lines) in app/assistant/tests/agent_tests/node_merge_agent/node_merge_test.py:11"}, "properties": {"repobilityId": "20abb89d0f63c005", "scanner": "scanner-primary", "fingerprint": "283bce58b92ef8fc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-566d3e7764cf2dff", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/tests/agent_tests/fact_canonicalizer/pipeline_integration.py:326"}, "properties": {"repobilityId": "cc5c8ed8aabec6ad", "scanner": "scanner-primary", "fingerprint": "566d3e7764cf2dff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-74f67eecec8b3e01", "level": "note", "message": {"text": "Legacy-named symbol `meal_beliefs_v2` in app/assistant/tests/non_agent_tests/test_meal_food_beliefs_recency.py:92"}, "properties": {"repobilityId": "5184f92179ed1bd8", "scanner": "scanner-primary", "fingerprint": "74f67eecec8b3e01", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-30df3699076e37d3", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in app/assistant/tests/non_agent_tests/test_belief_shadow.py:13"}, "properties": {"repobilityId": "006c45b7193e7397", "scanner": "scanner-primary", "fingerprint": "30df3699076e37d3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3c199f172685f284", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/tests/non_agent_tests/test_web_page_coords_viewport_accuracy.py:1107"}, "properties": {"repobilityId": "ff978bd7cf3b4582", "scanner": "scanner-primary", "fingerprint": "3c199f172685f284", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6fa46290f7a892cc", "level": "note", "message": {"text": "Legacy-named symbol `run_with_backup` in app/assistant/tests/non_agent_tests/test_migration_backup.py:4"}, "properties": {"repobilityId": "e9e6ab61492cf75f", "scanner": "scanner-primary", "fingerprint": "6fa46290f7a892cc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b3dbc417d0002517", "level": "note", "message": {"text": "Legacy-named symbol `scope_context_v1` in app/assistant/tests/non_agent_tests/test_room_scope_yaml_overlay.py:52"}, "properties": {"repobilityId": "c0cbbea923b28b91", "scanner": "scanner-primary", "fingerprint": "b3dbc417d0002517", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ba5cde2703f12f0f", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/tests/non_agent_tests/test_master_room_scope_yaml.py:68"}, "properties": {"repobilityId": "c1e14ff96bb880cb", "scanner": "scanner-primary", "fingerprint": "ba5cde2703f12f0f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-277ee9e9c237b16f", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/tests/non_agent_tests/test_fresh_db_boot.py:6"}, "properties": {"repobilityId": "0aae7c026492551b", "scanner": "scanner-primary", "fingerprint": "277ee9e9c237b16f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1bbbed74320a1910", "level": "note", "message": {"text": "Legacy-named symbol `meal_beliefs_v2` in app/assistant/tests/non_agent_tests/test_meal_beliefs_v2_lane.py:9"}, "properties": {"repobilityId": "35b4449332a6d0d6", "scanner": "scanner-primary", "fingerprint": "1bbbed74320a1910", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-92755ea6b6f652ef", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/tests/non_agent_tests/test_authority_floor.py:189"}, "properties": {"repobilityId": "7fccd8293c82cba7", "scanner": "scanner-primary", "fingerprint": "92755ea6b6f652ef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-957a68ef52125487", "level": "note", "message": {"text": "Legacy-named symbol `test_get_agent_config_returns_copy` in app/assistant/tests/non_agent_tests/test_safety_kernel.py:107"}, "properties": {"repobilityId": "f4a9238e110f825b", "scanner": "scanner-primary", "fingerprint": "957a68ef52125487", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-687b1f626153b7ff", "level": "note", "message": {"text": "Legacy-named symbol `_patch_backup` in app/assistant/tests/non_agent_tests/test_migration_runner.py:148"}, "properties": {"repobilityId": "bb09ba62a41e3b56", "scanner": "scanner-primary", "fingerprint": "687b1f626153b7ff", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cb15b137004a885f", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in app/assistant/tests/non_agent_tests/test_belief_v2_ingest.py:10"}, "properties": {"repobilityId": "44470e9b30ce092c", "scanner": "scanner-primary", "fingerprint": "cb15b137004a885f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d61c5b45829e005a", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/tests/chat_narrator/test_chat_narrator.py:265"}, "properties": {"repobilityId": "8603cb8492be6e37", "scanner": "scanner-primary", "fingerprint": "d61c5b45829e005a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0b98ce453333a731", "level": "note", "message": {"text": "Legacy-named symbol `test_all_named_managers_returns_copy` in app/assistant/tests/chat_narrator/test_display_names.py:73"}, "properties": {"repobilityId": "b5476000b026b0c3", "scanner": "scanner-primary", "fingerprint": "0b98ce453333a731", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1665b03e3c99ba19", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/tests/kg/test_promoter_evidence_writes.py:163"}, "properties": {"repobilityId": "0f65be5f75ee4017", "scanner": "scanner-primary", "fingerprint": "1665b03e3c99ba19", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-88d39436a788d267", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/tests/kg/conftest.py:17"}, "properties": {"repobilityId": "568ecb769a7b8d1a", "scanner": "scanner-primary", "fingerprint": "88d39436a788d267", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f2926d00687487e2", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/assistant/tests/kg/test_state_event_merge.py:214"}, "properties": {"repobilityId": "ba7e0ef5bd391f86", "scanner": "scanner-primary", "fingerprint": "f2926d00687487e2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1610362f37820651", "level": "note", "message": {"text": "Legacy-named symbol `M_old` in app/assistant/tests/kg/test_promoter_single_target_p21.py:55"}, "properties": {"repobilityId": "3dbc0372d5459c01", "scanner": "scanner-primary", "fingerprint": "1610362f37820651", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3a885d403cc7b931", "level": "note", "message": {"text": "Legacy-named symbol `e_old` in app/assistant/tests/kg/test_diachronic_succession.py:250"}, "properties": {"repobilityId": "959852374ccab7e8", "scanner": "scanner-primary", "fingerprint": "3a885d403cc7b931", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f56b1b4ae4ef89b0", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/tests/kg/test_enricher_hub_doctrine.py:48"}, "properties": {"repobilityId": "bd7ccdeaaa72113f", "scanner": "scanner-primary", "fingerprint": "f56b1b4ae4ef89b0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a5c639dec01ecdd3", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/tests/room_test_harness/sandbox_setup.py:194"}, "properties": {"repobilityId": "be9e0c06f9fcd55d", "scanner": "scanner-primary", "fingerprint": "a5c639dec01ecdd3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-51d50fc194fef768", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/tests/room_test_harness/harness.py:169"}, "properties": {"repobilityId": "dacdee2ce9f471ec", "scanner": "scanner-primary", "fingerprint": "51d50fc194fef768", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-15e2c66ae00b225c", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/assistant/agent_runtime/services/chat_memory_rag.py:28"}, "properties": {"repobilityId": "b09c2202f7a4ab0a", "scanner": "scanner-primary", "fingerprint": "15e2c66ae00b225c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c36071b1db8bf46b", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/agent_runtime/services/entity_injector.py:62"}, "properties": {"repobilityId": "10926d8f1e377803", "scanner": "scanner-primary", "fingerprint": "c36071b1db8bf46b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f05d919476c15fd0", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/agent_runtime/services/entity_injector.py:110"}, "properties": {"repobilityId": "4f3134ae83555acc", "scanner": "scanner-primary", "fingerprint": "f05d919476c15fd0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2ddd81d67a4ea1e8", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/agent_runtime/services/context_injector.py:525"}, "properties": {"repobilityId": "0b2fb8cebaca9365", "scanner": "scanner-primary", "fingerprint": "2ddd81d67a4ea1e8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fa2f9f0d05f3c527", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/agent_runtime/services/llm_client.py:395"}, "properties": {"repobilityId": "bf8b064a77eb377f", "scanner": "scanner-primary", "fingerprint": "fa2f9f0d05f3c527", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b21568ebef39ed7e", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/agent_runtime/services/progress_emitter.py:26"}, "properties": {"repobilityId": "cfa331712ffbbbc2", "scanner": "scanner-primary", "fingerprint": "b21568ebef39ed7e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5af4c8e69dd26b5b", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/agent_runtime/services/tool_policy_resolver.py:114"}, "properties": {"repobilityId": "0d733c34aeab6b19", "scanner": "scanner-primary", "fingerprint": "5af4c8e69dd26b5b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d9b9cfab460b2ab6", "level": "note", "message": {"text": "Legacy-named symbol `pat_legacy` in app/assistant/agent_runtime/services/prompt_builder.py:155"}, "properties": {"repobilityId": "0bca578795f3be2f", "scanner": "scanner-primary", "fingerprint": "d9b9cfab460b2ab6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-89d40117b0d11e1c", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/agent_runtime/services/prompt_builder.py:42"}, "properties": {"repobilityId": "8d909a515d633a88", "scanner": "scanner-primary", "fingerprint": "89d40117b0d11e1c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5e69191571941ee0", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/dayflow_orchestrator/dayflow_scheduler.py:40"}, "properties": {"repobilityId": "beb29a8deacea57c", "scanner": "scanner-primary", "fingerprint": "5e69191571941ee0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a8f3d019c7947726", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/dayflow_orchestrator/dispatch_sweeper.py:40"}, "properties": {"repobilityId": "330631aa4c68b752", "scanner": "scanner-primary", "fingerprint": "a8f3d019c7947726", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3c8ab797cad1f40b", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/dayflow_orchestrator/dayflow_item_writer.py:302"}, "properties": {"repobilityId": "92eefff0973d1e0d", "scanner": "scanner-primary", "fingerprint": "3c8ab797cad1f40b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a113460541fcf5b5", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/chat_narrator/chat_narrator.py:190"}, "properties": {"repobilityId": "0c7d97e81f1efca2", "scanner": "scanner-primary", "fingerprint": "a113460541fcf5b5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6b01e66f995cfce9", "level": "note", "message": {"text": "Legacy-named symbol `meal_beliefs_v2` in app/assistant/subconscious/meal_context_builder.py:310"}, "properties": {"repobilityId": "63c32c6250f840f4", "scanner": "scanner-primary", "fingerprint": "6b01e66f995cfce9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4055438625a71b25", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/subconscious/meal_context_builder.py:470"}, "properties": {"repobilityId": "6769c00ee8550a7c", "scanner": "scanner-primary", "fingerprint": "4055438625a71b25", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-188c86172e85dcf8", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/subconscious/persist.py:29"}, "properties": {"repobilityId": "601259feb8e4ca2e", "scanner": "scanner-primary", "fingerprint": "188c86172e85dcf8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dc6490ea4417af5e", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/subconscious/feedback_extractor_persist.py:94"}, "properties": {"repobilityId": "43cac68dc53819c0", "scanner": "scanner-primary", "fingerprint": "dc6490ea4417af5e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-42a79dd9a7f84583", "level": "note", "message": {"text": "Legacy-named symbol `pop_backup` in app/assistant/dj_manager/selector.py:62"}, "properties": {"repobilityId": "97da58a5fe83b738", "scanner": "scanner-primary", "fingerprint": "42a79dd9a7f84583", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-80401615a40278a9", "level": "note", "message": {"text": "Legacy-named symbol `_sample_for_prompt_legacy` in app/assistant/dj_manager/music_dataset.py:935"}, "properties": {"repobilityId": "953a8c34b5bd2f40", "scanner": "scanner-primary", "fingerprint": "80401615a40278a9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a12618e80c1342a3", "level": "note", "message": {"text": "Legacy-named symbol `pop_backup` in app/assistant/dj_manager/manager.py:921"}, "properties": {"repobilityId": "9945faa175415b76", "scanner": "scanner-primary", "fingerprint": "a12618e80c1342a3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5835e37c65381a60", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/agent_registry/agent_registry.py:405"}, "properties": {"repobilityId": "1472713d1822aca8", "scanner": "scanner-primary", "fingerprint": "5835e37c65381a60", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-22306ffa113ec388", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/pod_store/pod_utils.py:68"}, "properties": {"repobilityId": "ede5df15b39b3041", "scanner": "scanner-primary", "fingerprint": "22306ffa113ec388", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d62f9be878e60840", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/assistant/pod_store/models.py:107"}, "properties": {"repobilityId": "a9fbabb4ef697379", "scanner": "scanner-primary", "fingerprint": "d62f9be878e60840", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f683e62f86c05f0d", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/pod_store/image_ingest.py:212"}, "properties": {"repobilityId": "26a56e70a6803caa", "scanner": "scanner-primary", "fingerprint": "f683e62f86c05f0d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e8d5995789919032", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/pod_store/pod_store.py:218"}, "properties": {"repobilityId": "e73ce737f24c4f5f", "scanner": "scanner-primary", "fingerprint": "e8d5995789919032", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-908e2679f1a5e54c", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/pod_store/materializers/__init__.py:113"}, "properties": {"repobilityId": "b11b31c170ac8495", "scanner": "scanner-primary", "fingerprint": "908e2679f1a5e54c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-40731f0022c7306c", "level": "note", "message": {"text": "Legacy-named symbol `resource_user_beliefs_v2` in app/assistant/pipelines/daily_insights/steps/belief_v2_shadow_ingest.py:27"}, "properties": {"repobilityId": "590f42a3f4b38250", "scanner": "scanner-primary", "fingerprint": "40731f0022c7306c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0e0cb71c4ed9cded", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/pipelines/daily_insights/steps/archive_daily_timeline.py:140"}, "properties": {"repobilityId": "5a42935281da1583", "scanner": "scanner-primary", "fingerprint": "0e0cb71c4ed9cded", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cfa3fe9ce60b8259", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/pipelines/kg_pipeline/runner.py:31"}, "properties": {"repobilityId": "b910b84b99435318", "scanner": "scanner-primary", "fingerprint": "cfa3fe9ce60b8259", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-997991310a3c5451", "level": "note", "message": {"text": "Legacy-named symbol `kg_pipeline_v1` in app/assistant/pipelines/kg_pipeline/steps/segment_messages.py:40"}, "properties": {"repobilityId": "612e89ada71f6bee", "scanner": "scanner-primary", "fingerprint": "997991310a3c5451", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5ab54a8d91639a1f", "level": "note", "message": {"text": "Legacy-named symbol `kg_pipeline_v1` in app/assistant/pipelines/kg_pipeline/steps/resolve_messages.py:69"}, "properties": {"repobilityId": "fb1b1686181e8d1f", "scanner": "scanner-primary", "fingerprint": "5ab54a8d91639a1f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5e048376495dbc1e", "level": "none", "message": {"text": "Commented-code block (11 lines) in app/assistant/pipelines/kg_pipeline/steps/resolve_messages.py:43"}, "properties": {"repobilityId": "78e72fa9b1a1eca4", "scanner": "scanner-primary", "fingerprint": "5e048376495dbc1e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-759ad36b23242306", "level": "note", "message": {"text": "Legacy-named symbol `kg_pipeline_v1` in app/assistant/pipelines/kg_pipeline/steps/enrich_extraction.py:37"}, "properties": {"repobilityId": "f3acc2b3448e1531", "scanner": "scanner-primary", "fingerprint": "759ad36b23242306", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2e655f95595a4095", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/kg_pipeline/steps/enrich_extraction.py:225"}, "properties": {"repobilityId": "bae1a66226dc405f", "scanner": "scanner-primary", "fingerprint": "2e655f95595a4095", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ecd11fd765e61071", "level": "note", "message": {"text": "Legacy-named symbol `kg_pipeline_v1` in app/assistant/pipelines/kg_pipeline/steps/write_proposals.py:40"}, "properties": {"repobilityId": "7bf94ab5708fd02a", "scanner": "scanner-primary", "fingerprint": "ecd11fd765e61071", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-668210bd4102568a", "level": "note", "message": {"text": "Legacy-named symbol `window_critic_v2` in app/assistant/pipelines/kg_pipeline/steps/critique_and_extract.py:32"}, "properties": {"repobilityId": "593c1b09376d361e", "scanner": "scanner-primary", "fingerprint": "668210bd4102568a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0882651c2837ae53", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/pipelines/entity_cards_v2/builder.py:30"}, "properties": {"repobilityId": "8896d399957dbda9", "scanner": "scanner-primary", "fingerprint": "0882651c2837ae53", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8f1cfa2ce2f64218", "level": "none", "message": {"text": "Commented-code block (10 lines) in app/assistant/pipelines/entity_cards_v2/builder.py:48"}, "properties": {"repobilityId": "1ef38e18b34be8f1", "scanner": "scanner-primary", "fingerprint": "8f1cfa2ce2f64218", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a3438c848373388c", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/pipelines/entity_cards_v2/refresh_subscriber.py:33"}, "properties": {"repobilityId": "40245fcb99378e2e", "scanner": "scanner-primary", "fingerprint": "a3438c848373388c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7786b3c525ed0a87", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/entity_cards_v2/refresh_subscriber.py:124"}, "properties": {"repobilityId": "1e0d6dbad9b05073", "scanner": "scanner-primary", "fingerprint": "7786b3c525ed0a87", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8dd6b1c262d6917e", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/utils/subconscious_projection.py:61"}, "properties": {"repobilityId": "1aece89af8428983", "scanner": "scanner-primary", "fingerprint": "8dd6b1c262d6917e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b7cb784b4b92478b", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/utils/context_sources.py:647"}, "properties": {"repobilityId": "75791e7d32c3cdec", "scanner": "scanner-primary", "fingerprint": "b7cb784b4b92478b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5eea303a64f75c71", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/sleep/sleep_resource_generator.py:437"}, "properties": {"repobilityId": "91043548bd8ce978", "scanner": "scanner-primary", "fingerprint": "5eea303a64f75c71", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8683e9594d6c9b37", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/pipelines/dayflow/steps/dayflow_routine_stage.py:50"}, "properties": {"repobilityId": "8d8f675ab274b9d4", "scanner": "scanner-primary", "fingerprint": "8683e9594d6c9b37", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-53985a70d6341e8d", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/pipelines/dayflow/steps/daily_context_generator_stage.py:440"}, "properties": {"repobilityId": "bbf56a8eb5e24ceb", "scanner": "scanner-primary", "fingerprint": "53985a70d6341e8d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f362ac8abc070de6", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/steps/conversation_starter_stage.py:28"}, "properties": {"repobilityId": "cfcb6205c6a3c08e", "scanner": "scanner-primary", "fingerprint": "f362ac8abc070de6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ed9bdbad4f3580d", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/dayflow/steps/activity_tracker_stage.py:239"}, "properties": {"repobilityId": "50c83113b771827b", "scanner": "scanner-primary", "fingerprint": "9ed9bdbad4f3580d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6ee0ac00d99c17fa", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_cluster_resolve.py:52"}, "properties": {"repobilityId": "651a2beeb17d1aca", "scanner": "scanner-primary", "fingerprint": "6ee0ac00d99c17fa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-44a85d4beb0d69c6", "level": "none", "message": {"text": "Commented-code block (10 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_state_decay.py:44"}, "properties": {"repobilityId": "e8a199258eb3abdb", "scanner": "scanner-primary", "fingerprint": "44a85d4beb0d69c6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dbb89676686a3136", "level": "none", "message": {"text": "Commented-code block (9 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_missing_dates_scan.py:79"}, "properties": {"repobilityId": "ece96964af64e185", "scanner": "scanner-primary", "fingerprint": "dbb89676686a3136", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eba3b6d3aecfa5ce", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_goal_outcome_detect.py:140"}, "properties": {"repobilityId": "6a1b09070c0fe95b", "scanner": "scanner-primary", "fingerprint": "eba3b6d3aecfa5ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-15dbcf9504813abf", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_duplicate_scan.py:71"}, "properties": {"repobilityId": "73a787e1dc4f2f2b", "scanner": "scanner-primary", "fingerprint": "15dbcf9504813abf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b03f477c0be7d64d", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_wiki_inference.py:135"}, "properties": {"repobilityId": "46084f34de10fdea", "scanner": "scanner-primary", "fingerprint": "b03f477c0be7d64d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8398bdbcba49136a", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_execute_findings.py:155"}, "properties": {"repobilityId": "4f0902f1fcb6cf17", "scanner": "scanner-primary", "fingerprint": "8398bdbcba49136a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0dd77e2533c56e7a", "level": "none", "message": {"text": "Commented-code block (11 lines) in app/assistant/pipelines/kg_maintenance_pipeline/pipeline.py:97"}, "properties": {"repobilityId": "9171d19352950de3", "scanner": "scanner-primary", "fingerprint": "0dd77e2533c56e7a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-875ef9957420b39c", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/assistant/pipelines/kg_maintenance_pipeline/step_pagerank.py:128"}, "properties": {"repobilityId": "563f39473cb13c8e", "scanner": "scanner-primary", "fingerprint": "875ef9957420b39c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-df15aead3f72b63c", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/scope/loader.py:66"}, "properties": {"repobilityId": "0cf55240a48d1418", "scanner": "scanner-primary", "fingerprint": "df15aead3f72b63c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e2f6b5d252f49c95", "level": "note", "message": {"text": "Legacy-named symbol `norm_old` in app/assistant/utils/search_replace_editor.py:230"}, "properties": {"repobilityId": "268e082ba3aae4de", "scanner": "scanner-primary", "fingerprint": "e2f6b5d252f49c95", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5d4ad5ba1ac8a221", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/utils/system_activity.py:78"}, "properties": {"repobilityId": "eed7133ee08fadf1", "scanner": "scanner-primary", "fingerprint": "5d4ad5ba1ac8a221", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7ba19c8190444e23", "level": "note", "message": {"text": "Legacy-named symbol `scope_context_v1` in app/assistant/utils/pydantic_classes.py:162"}, "properties": {"repobilityId": "5a45039b04a56e78", "scanner": "scanner-primary", "fingerprint": "7ba19c8190444e23", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ef5b703c9d61b7d8", "level": "none", "message": {"text": "Commented-code block (9 lines) in app/assistant/utils/pydantic_classes.py:174"}, "properties": {"repobilityId": "5a67a6f7973478ae", "scanner": "scanner-primary", "fingerprint": "ef5b703c9d61b7d8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-94a688e9e36e9e71", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/env_registry/env_registry_service.py:294"}, "properties": {"repobilityId": "c105fabe81fe873f", "scanner": "scanner-primary", "fingerprint": "94a688e9e36e9e71", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-978607719c1fb682", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/kg_maintenance/verdict_store.py:112"}, "properties": {"repobilityId": "00f09156e97d6f91", "scanner": "scanner-primary", "fingerprint": "978607719c1fb682", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3b357dceb667eb96", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/kg_maintenance/store.py:238"}, "properties": {"repobilityId": "6dcb4d9139a7d78b", "scanner": "scanner-primary", "fingerprint": "3b357dceb667eb96", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fce07269b6a57ec4", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/lib/tool_registry/tool_registry.py:323"}, "properties": {"repobilityId": "4c8c3870fac42214", "scanner": "scanner-primary", "fingerprint": "fce07269b6a57ec4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-569b6bd5c7fabf8f", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/lib/tool_execution/tool_approval.py:53"}, "properties": {"repobilityId": "3ab198071b4e23f4", "scanner": "scanner-primary", "fingerprint": "569b6bd5c7fabf8f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-38236ca635d96f85", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/web_fill_ref/web_fill_ref.py:121"}, "properties": {"repobilityId": "33c0ba25b8972e0e", "scanner": "scanner-primary", "fingerprint": "38236ca635d96f85", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6084308a3395d83a", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/get_email_messages/get_email_messages.py:133"}, "properties": {"repobilityId": "7fd94bb2780d4329", "scanner": "scanner-primary", "fingerprint": "6084308a3395d83a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8ab98f28b31f198e", "level": "none", "message": {"text": "Commented-code block (10 lines) in app/assistant/lib/tools/get_email_thread/get_email_thread.py:220"}, "properties": {"repobilityId": "d677c624a66daf17", "scanner": "scanner-primary", "fingerprint": "8ab98f28b31f198e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6b81801b498176cf", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/web_type_secret/web_type_secret.py:161"}, "properties": {"repobilityId": "b924b5d2c636cc49", "scanner": "scanner-primary", "fingerprint": "6b81801b498176cf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b4be88f79a831e27", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/web_page_coords/web_page_coords.py:50"}, "properties": {"repobilityId": "99d840c96d6cd466", "scanner": "scanner-primary", "fingerprint": "b4be88f79a831e27", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a606a45a39c87f53", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/bluesky_reply/bluesky_reply.py:58"}, "properties": {"repobilityId": "47a04533a5f862fc", "scanner": "scanner-primary", "fingerprint": "a606a45a39c87f53", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-578aad9032a23722", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/invoke_agent/invoke_agent.py:84"}, "properties": {"repobilityId": "bf0cc983bf72c90b", "scanner": "scanner-primary", "fingerprint": "578aad9032a23722", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a9c5b81ad40f0fd4", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 app/assistant/lib/tools/get_weather/utils/openmeteo.py:39"}, "properties": {"repobilityId": "55c8dacb8e896f6b", "scanner": "scanner-primary", "fingerprint": "a9c5b81ad40f0fd4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-700f1b8f1c82baa0", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/send_email/send_email.py:111"}, "properties": {"repobilityId": "90df7cd0217290c0", "scanner": "scanner-primary", "fingerprint": "700f1b8f1c82baa0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-110df61ea0bddb12", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/assistant/lib/tools/get_google_doc/get_google_doc.py:96"}, "properties": {"repobilityId": "808bd02f494f2447", "scanner": "scanner-primary", "fingerprint": "110df61ea0bddb12", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-19516385e6ac8154", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/ask_user/ask_user.py:63"}, "properties": {"repobilityId": "cc0afedea84917f8", "scanner": "scanner-primary", "fingerprint": "19516385e6ac8154", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-67d590975508e029", "level": "note", "message": {"text": "Legacy-named symbol `entity_cards_v2` in app/assistant/lib/tools/regenerate_entity_card/regenerate_entity_card.py:3"}, "properties": {"repobilityId": "6feea91a8a0c310c", "scanner": "scanner-primary", "fingerprint": "67d590975508e029", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c543313620559f30", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/capture_monitor_screenshot/capture_monitor_screenshot.py:235"}, "properties": {"repobilityId": "bc36f23d6c5220f8", "scanner": "scanner-primary", "fingerprint": "c543313620559f30", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b84fe1edeb3562b0", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/capture_camera_snapshot/capture_camera_snapshot.py:49"}, "properties": {"repobilityId": "a0f144ee81b4d5cb", "scanner": "scanner-primary", "fingerprint": "b84fe1edeb3562b0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0206f45a4576649d", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/assistant/lib/tools/http_request/http_request.py:408"}, "properties": {"repobilityId": "aba9c6d7f3bee863", "scanner": "scanner-primary", "fingerprint": "0206f45a4576649d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-09744047d0c826ce", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/lib/tools/http_request/tool_forms/tool_forms.py:34"}, "properties": {"repobilityId": "81e553bf99a3f491", "scanner": "scanner-primary", "fingerprint": "09744047d0c826ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9259ef0b935fb06b", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/bluesky_hydrate_post/bluesky_hydrate_post.py:43"}, "properties": {"repobilityId": "2f92455ba9f870c5", "scanner": "scanner-primary", "fingerprint": "9259ef0b935fb06b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2f051907f2d85cd5", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/create_dayflow_ticket/create_dayflow_ticket.py:24"}, "properties": {"repobilityId": "66eaef4824c9f07f", "scanner": "scanner-primary", "fingerprint": "2f051907f2d85cd5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c1d93e303bafa5dc", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/lib/tools/kg_explorer_manager/kg_explorer_manager.py:39"}, "properties": {"repobilityId": "bc2a2c9b0f6df697", "scanner": "scanner-primary", "fingerprint": "c1d93e303bafa5dc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-520b12110e1db8c2", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/lib/tools/run_shell/run_shell.py:83"}, "properties": {"repobilityId": "2c456fdea11add23", "scanner": "scanner-primary", "fingerprint": "520b12110e1db8c2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-316ee153fc72c501", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/lib/google_auth/google_credentials.py:91"}, "properties": {"repobilityId": "d1ee59dd7f0ddfed", "scanner": "scanner-primary", "fingerprint": "316ee153fc72c501", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f49f0a446c72cb9a", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/lib/core_tools/kg_search/knowledge_graph_search.py:309"}, "properties": {"repobilityId": "140a1589da72a3da", "scanner": "scanner-primary", "fingerprint": "f49f0a446c72cb9a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-735211b570afdf8a", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/lib/core_tools/calendar_tool/calendar_tool.py:507"}, "properties": {"repobilityId": "a4be782280e438ac", "scanner": "scanner-primary", "fingerprint": "735211b570afdf8a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-612b439a0fd2ce4d", "level": "none", "message": {"text": "Commented-code block (12 lines) in app/assistant/lib/core_tools/calendar_tool/utils/google_calendar.py:722"}, "properties": {"repobilityId": "3e433f93e7e609bf", "scanner": "scanner-primary", "fingerprint": "612b439a0fd2ce4d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3cf3241b582a271f", "level": "none", "message": {"text": "Commented-code block (10 lines) in app/assistant/lib/core_tools/todo_tool/todo_tool.py:545"}, "properties": {"repobilityId": "37bf08b3ae3b3aa2", "scanner": "scanner-primary", "fingerprint": "3cf3241b582a271f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-69275e2d4e979800", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/assistant/lib/core_tools/approval_gateway/approval_gateway.py:141"}, "properties": {"repobilityId": "fbe82a958308b773", "scanner": "scanner-primary", "fingerprint": "69275e2d4e979800", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fa6df064ac2fb849", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/assistant/lib/core_tools/kg_mutator/kg_mutator_tool.py:325"}, "properties": {"repobilityId": "a2164bb70fd11e58", "scanner": "scanner-primary", "fingerprint": "fa6df064ac2fb849", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f8e2e8cc7014583c", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/lib/core_tools/email_tool/utils/gmail_api_client.py:335"}, "properties": {"repobilityId": "431f7f3e97503cce", "scanner": "scanner-primary", "fingerprint": "f8e2e8cc7014583c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5289cc794bf26d2d", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/lib/core_tools/email_tool/utils/email_processor.py:78"}, "properties": {"repobilityId": "3fd68f945724cd6b", "scanner": "scanner-primary", "fingerprint": "5289cc794bf26d2d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac143aebdeccf3f1", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/lib/core_tools/manager_interface/manager_interface.py:13"}, "properties": {"repobilityId": "cb39e6553cf7d3d9", "scanner": "scanner-primary", "fingerprint": "ac143aebdeccf3f1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bc18b6af719d6b51", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/database/pending_question.py:44"}, "properties": {"repobilityId": "d10079eae6697c02", "scanner": "scanner-primary", "fingerprint": "bc18b6af719d6b51", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-77abea5d5e70d633", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/database/kg_chat_projection.py:59"}, "properties": {"repobilityId": "96ba1202867678d6", "scanner": "scanner-primary", "fingerprint": "77abea5d5e70d633", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a5bf2675aba6ce24", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/database/claim_proposals.py:168"}, "properties": {"repobilityId": "a64aaf10ed57680e", "scanner": "scanner-primary", "fingerprint": "a5bf2675aba6ce24", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-85dc82cdd31f0883", "level": "none", "message": {"text": "Commented-code block (9 lines) in app/assistant/database/kg_maintenance_finding.py:136"}, "properties": {"repobilityId": "2b07ef3b61d4142c", "scanner": "scanner-primary", "fingerprint": "85dc82cdd31f0883", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6cea5958c0564d19", "level": "note", "message": {"text": "Legacy-named symbol `run_with_backup` in app/assistant/database/migration_backup.py:14"}, "properties": {"repobilityId": "b94716477c208db4", "scanner": "scanner-primary", "fingerprint": "6cea5958c0564d19", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1473620cfe9f25eb", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/ticket_manager/ticket_service.py:151"}, "properties": {"repobilityId": "a5aea440ac244936", "scanner": "scanner-primary", "fingerprint": "1473620cfe9f25eb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6973361248c308f2", "level": "note", "message": {"text": "Stub function `dispatch` (body is just `pass`/`return`) \u2014 app/assistant/ticket_manager/ticket_dispatch/adapters/telegram.py:30"}, "properties": {"repobilityId": "3facbfffcbbf5c97", "scanner": "scanner-primary", "fingerprint": "6973361248c308f2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-c2181e2b78b1e448", "level": "note", "message": {"text": "Stub function `dispatch` (body is just `pass`/`return`) \u2014 app/assistant/ticket_manager/ticket_dispatch/adapters/sms.py:29"}, "properties": {"repobilityId": "bbdbabb31ab72c58", "scanner": "scanner-primary", "fingerprint": "c2181e2b78b1e448", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-4dd7bd6af01341a4", "level": "note", "message": {"text": "Stub function `dispatch` (body is just `pass`/`return`) \u2014 app/assistant/ticket_manager/ticket_dispatch/adapters/slack.py:27"}, "properties": {"repobilityId": "ea0c53b03a4c0da5", "scanner": "scanner-primary", "fingerprint": "4dd7bd6af01341a4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-e8d8ceeab4808818", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/kg/predicate_vocabulary.py:237"}, "properties": {"repobilityId": "4c4162f365b1bdab", "scanner": "scanner-primary", "fingerprint": "e8d8ceeab4808818", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bff417d12801efdb", "level": "note", "message": {"text": "Legacy-named symbol `entity_cards_v2` in app/assistant/kg/section_tagging.py:12"}, "properties": {"repobilityId": "fb794dc5923b0a62", "scanner": "scanner-primary", "fingerprint": "bff417d12801efdb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2cf30d7cc6ee7e57", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/kg/section_tagging.py:30"}, "properties": {"repobilityId": "c4096398a8c0429a", "scanner": "scanner-primary", "fingerprint": "2cf30d7cc6ee7e57", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-658c3715ad746718", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/kg/proposal_writer.py:423"}, "properties": {"repobilityId": "cc4e18c4227e6726", "scanner": "scanner-primary", "fingerprint": "658c3715ad746718", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d404aae43596ca25", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/kg/proposal_promoter.py:82"}, "properties": {"repobilityId": "b3250ff5aaa18711", "scanner": "scanner-primary", "fingerprint": "d404aae43596ca25", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f3f168843c308ce6", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/kg/chroma/chroma_health.py:92"}, "properties": {"repobilityId": "9f5651f260f5a831", "scanner": "scanner-primary", "fingerprint": "f3f168843c308ce6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d9a021f0675635b1", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 app/assistant/kg/chroma/chroma_health.py:103"}, "properties": {"repobilityId": "ee0d0b342d744a73", "scanner": "scanner-primary", "fingerprint": "d9a021f0675635b1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f6a74065214f199e", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/kg/chroma/chroma_embedding_manager.py:58"}, "properties": {"repobilityId": "81469d6b27673281", "scanner": "scanner-primary", "fingerprint": "f6a74065214f199e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b376bbc7d723ddf2", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/kg/chroma/embedding_sync.py:143"}, "properties": {"repobilityId": "967447065e741895", "scanner": "scanner-primary", "fingerprint": "b376bbc7d723ddf2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3cdd61115976ec99", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/assistant/kg/db/knowledge_graph_db_sqlite.py:43"}, "properties": {"repobilityId": "5fd4142de87f61b1", "scanner": "scanner-primary", "fingerprint": "3cdd61115976ec99", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0c81500ebf83bd34", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/kg/db/knowledge_graph_db.py:5"}, "properties": {"repobilityId": "d142c01033fa5c96", "scanner": "scanner-primary", "fingerprint": "0c81500ebf83bd34", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9796dc98841fd46e", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/kg_core/kg_utils/knowledge_graph_utils.py:175"}, "properties": {"repobilityId": "bebcf148a2c42e87", "scanner": "scanner-primary", "fingerprint": "9796dc98841fd46e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-80ace1d1cde74dfe", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/kg_core/kg_utils/node_merge.py:269"}, "properties": {"repobilityId": "86f023e2d4672cb4", "scanner": "scanner-primary", "fingerprint": "80ace1d1cde74dfe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a5e808dcf3858284", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/kg_core/kg_utils/identity_sentence.py:245"}, "properties": {"repobilityId": "b932aa80b868a30e", "scanner": "scanner-primary", "fingerprint": "a5e808dcf3858284", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-02c4ccfa6b80b8f9", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/kg_core/kg_utils/kg_convergence.py:56"}, "properties": {"repobilityId": "1fa03e2dbf444d3c", "scanner": "scanner-primary", "fingerprint": "02c4ccfa6b80b8f9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-20e29185b47dff7e", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/kg_core/kg_utils/date_compare.py:27"}, "properties": {"repobilityId": "b7d9b955f8300149", "scanner": "scanner-primary", "fingerprint": "20e29185b47dff7e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1192d22da5d717be", "level": "note", "message": {"text": "Legacy-named symbol `project_kg_redesign_v2` in app/assistant/kg_core/kg_utils/kg_tools.py:236"}, "properties": {"repobilityId": "25d88689635a17b5", "scanner": "scanner-primary", "fingerprint": "1192d22da5d717be", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5b622636a0357b54", "level": "note", "message": {"text": "Legacy-named symbol `kg_pipeline_old` in app/assistant/kg_core/kg_setup/_archived/edge_canon_postgres/seed_edge_types.py:936"}, "properties": {"repobilityId": "33c9aff5b8abec50", "scanner": "scanner-primary", "fingerprint": "5b622636a0357b54", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-08f19691fe7f489f", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/validation/agent_validator.py:203"}, "properties": {"repobilityId": "8de881314b366448", "scanner": "scanner-primary", "fingerprint": "08f19691fe7f489f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cc9b455abf7094a3", "level": "note", "message": {"text": "Legacy-named symbol `execution_trace_v1` in app/assistant/execution_trace/execution_trace_recorder.py:203"}, "properties": {"repobilityId": "4d808d690d4ea97f", "scanner": "scanner-primary", "fingerprint": "cc9b455abf7094a3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c923f0f906e8ed20", "level": "note", "message": {"text": "Legacy-named symbol `entity_cards_v2` in app/assistant/importance/__init__.py:103"}, "properties": {"repobilityId": "394ac646beed0ca3", "scanner": "scanner-primary", "fingerprint": "c923f0f906e8ed20", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9c6e396ca8de89fc", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/importance/effective.py:73"}, "properties": {"repobilityId": "8d5e2f81bdbcfa68", "scanner": "scanner-primary", "fingerprint": "9c6e396ca8de89fc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bd80bb9aefedbf84", "level": "note", "message": {"text": "Legacy-named symbol `entity_cards_v2` in app/assistant/importance/consumers.py:58"}, "properties": {"repobilityId": "5cfdec43544141e7", "scanner": "scanner-primary", "fingerprint": "bd80bb9aefedbf84", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ac30f6605dac8074", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/assistant/importance/consumers.py:62"}, "properties": {"repobilityId": "adc4065dc7cf50a5", "scanner": "scanner-primary", "fingerprint": "ac30f6605dac8074", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-465b8f054288e417", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/importance/scoring.py:138"}, "properties": {"repobilityId": "5b0d3785c74de63b", "scanner": "scanner-primary", "fingerprint": "465b8f054288e417", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e33fdeb58d994a6b", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/message_manager/save_to_unified_db.py:310"}, "properties": {"repobilityId": "c94342dab0261059", "scanner": "scanner-primary", "fingerprint": "e33fdeb58d994a6b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ff9dc613c6f4fdc7", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/agents/knowledge_graph_add/meta_data_add/agent_form.py:31"}, "properties": {"repobilityId": "b17e4c05d5280172", "scanner": "scanner-primary", "fingerprint": "ff9dc613c6f4fdc7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b13c2a9095046a56", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/agents/wiki_consistency_critic/agent_form.py:17"}, "properties": {"repobilityId": "2558cf0552a14db0", "scanner": "scanner-primary", "fingerprint": "b13c2a9095046a56", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-52ee1b7c922b54b3", "level": "note", "message": {"text": "Legacy-named symbol `eleven_monolingual_v1` in app/assistant/user_settings_manager/user_settings.py:115"}, "properties": {"repobilityId": "9a4dc5a6f514ba47", "scanner": "scanner-primary", "fingerprint": "52ee1b7c922b54b3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-092173548111c3eb", "level": "note", "message": {"text": "Legacy-named symbol `agent_registry_copy` in app/assistant/multi_agent_manager_factory/MultiAgentManagerFactory.py:48"}, "properties": {"repobilityId": "2c0c55578709e65e", "scanner": "scanner-primary", "fingerprint": "092173548111c3eb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b3174d80f24fd66c", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/room_session_manager/room_session_manager.py:805"}, "properties": {"repobilityId": "ba9279783960f386", "scanner": "scanner-primary", "fingerprint": "b3174d80f24fd66c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-824027b726ebf88f", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/room_session_manager/services/room_ingress_service.py:333"}, "properties": {"repobilityId": "fe76f15179722804", "scanner": "scanner-primary", "fingerprint": "824027b726ebf88f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c4c04b62275fa4d3", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/assistant/room_session_manager/services/room_mention_router.py:71"}, "properties": {"repobilityId": "6d0aa584c255a94d", "scanner": "scanner-primary", "fingerprint": "c4c04b62275fa4d3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2d4f831577a309db", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/room_session_manager/services/room_summary_service.py:18"}, "properties": {"repobilityId": "ed0995ffea1ae0ea", "scanner": "scanner-primary", "fingerprint": "2d4f831577a309db", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8dcdb684c46656d3", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/room_session_manager/services/room_slash_command_router.py:428"}, "properties": {"repobilityId": "cbb1ea2c60c9b66f", "scanner": "scanner-primary", "fingerprint": "8dcdb684c46656d3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-38c72fbbd267d9ec", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/room_session_manager/services/room_chat_summary.py:264"}, "properties": {"repobilityId": "c99c414b01a45a37", "scanner": "scanner-primary", "fingerprint": "38c72fbbd267d9ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8cd0d3c626feeda4", "level": "note", "message": {"text": "Legacy-named symbol `scope_context_v1` in app/assistant/room_session_manager/services/room_scope_builder.py:203"}, "properties": {"repobilityId": "2afd943e85a8be6f", "scanner": "scanner-primary", "fingerprint": "8cd0d3c626feeda4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9cd531a7310ef404", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/room_session_manager/services/room_scope_builder.py:26"}, "properties": {"repobilityId": "94750474d008a212", "scanner": "scanner-primary", "fingerprint": "9cd531a7310ef404", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-320c7fe81e8a08ea", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/room_session_manager/services/surfaces/ui_inbound_service.py:95"}, "properties": {"repobilityId": "db97a4208a622c1e", "scanner": "scanner-primary", "fingerprint": "320c7fe81e8a08ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-603b5289a3940052", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/tools/compile_task_from_string.py:154"}, "properties": {"repobilityId": "735487a243f66a5f", "scanner": "scanner-primary", "fingerprint": "603b5289a3940052", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4a0ae92d0909020b", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/agent_classes/Planner.py:193"}, "properties": {"repobilityId": "b4fcca4c8fcb186b", "scanner": "scanner-primary", "fingerprint": "4a0ae92d0909020b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa2e8d5d0d269073", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/control_nodes/dayflow_switchboard_arguments_node.py:60"}, "properties": {"repobilityId": "6120598d15f1445a", "scanner": "scanner-primary", "fingerprint": "aa2e8d5d0d269073", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6aee0dc030b0160c", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/control_nodes/post_room_finalize_node.py:300"}, "properties": {"repobilityId": "56ad8ea49f07a8fc", "scanner": "scanner-primary", "fingerprint": "6aee0dc030b0160c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-560855450f309ab3", "level": "none", "message": {"text": "Commented-code block (10 lines) in app/assistant/control_nodes/tool_result_handler.py:601"}, "properties": {"repobilityId": "a2f10fa0ba7420ad", "scanner": "scanner-primary", "fingerprint": "560855450f309ab3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c901b23e4590ee51", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/control_nodes/fast_tick_promoter_node.py:24"}, "properties": {"repobilityId": "f26f75acbb83f9e2", "scanner": "scanner-primary", "fingerprint": "c901b23e4590ee51", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e2a0a7448bedd980", "level": "note", "message": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/control_nodes/task_compile_post_node.py:493"}, "properties": {"repobilityId": "ecdc305793f5e390", "scanner": "scanner-primary", "fingerprint": "e2a0a7448bedd980", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bff378bad2eeed41", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/control_nodes/context_enricher_prep_node.py:196"}, "properties": {"repobilityId": "0d6f20716bb1162f", "scanner": "scanner-primary", "fingerprint": "bff378bad2eeed41", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4c90624914293da2", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/control_nodes/view_materializer_node.py:358"}, "properties": {"repobilityId": "08ff1d3cc03da272", "scanner": "scanner-primary", "fingerprint": "4c90624914293da2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-31ad2272e9b10c00", "level": "note", "message": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/control_nodes/task_compile_metadata_node.py:286"}, "properties": {"repobilityId": "06e589d5e5c3283f", "scanner": "scanner-primary", "fingerprint": "31ad2272e9b10c00", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4dd3dc5b6479147e", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/control_nodes/tool_caller.py:453"}, "properties": {"repobilityId": "6a59dd9f29e82de5", "scanner": "scanner-primary", "fingerprint": "4dd3dc5b6479147e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-da81fd20bab48f82", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/control_nodes/_tool_caller_util.py:114"}, "properties": {"repobilityId": "0cf01a782f0c3b7e", "scanner": "scanner-primary", "fingerprint": "da81fd20bab48f82", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c23f248b42eb9ee3", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/control_nodes/relevance_cleaner_persist_node.py:104"}, "properties": {"repobilityId": "f541329f399f2707", "scanner": "scanner-primary", "fingerprint": "c23f248b42eb9ee3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7077292c92c08fc9", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/control_nodes/strategic_planner_prep_node.py:26"}, "properties": {"repobilityId": "a7fa03d0d1128981", "scanner": "scanner-primary", "fingerprint": "7077292c92c08fc9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f67b9704c7cc5118", "level": "note", "message": {"text": "Legacy-named symbol `entity_card_v2` in app/assistant/kg_projection/neighborhood.py:353"}, "properties": {"repobilityId": "24fe0be332904da5", "scanner": "scanner-primary", "fingerprint": "f67b9704c7cc5118", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-436ef55db6ac1dd1", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/kg_projection/neighborhood.py:168"}, "properties": {"repobilityId": "ffb5e1d0288e3e70", "scanner": "scanner-primary", "fingerprint": "436ef55db6ac1dd1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-69a8b8fa84c12f84", "level": "note", "message": {"text": "Legacy-named symbol `manager_config_copy` in app/assistant/agent_flow_manager/agent_flow_manager.py:114"}, "properties": {"repobilityId": "ad40f07f5bae8474", "scanner": "scanner-primary", "fingerprint": "69a8b8fa84c12f84", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e93e4122f513dc40", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in app/assistant/global_blackboard/global_blackboard.py:65"}, "properties": {"repobilityId": "43fb90679845621c", "scanner": "scanner-primary", "fingerprint": "e93e4122f513dc40", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e0a9a11bc9562ba2", "level": "note", "message": {"text": "Legacy-named symbol `agent_registry_copy` in app/assistant/orchestrator_classes/OrchestratorFactory.py:41"}, "properties": {"repobilityId": "66224c21e8b1a3cc", "scanner": "scanner-primary", "fingerprint": "e0a9a11bc9562ba2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6f89232c8081b72f", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/rooms/room_resource_loader.py:13"}, "properties": {"repobilityId": "65588e1d9f6e5f3c", "scanner": "scanner-primary", "fingerprint": "6f89232c8081b72f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8b61108e4b88150a", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/kg_investigator/finding_processor.py:279"}, "properties": {"repobilityId": "c258a59d214b5d98", "scanner": "scanner-primary", "fingerprint": "8b61108e4b88150a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bd1ecfd674d3be40", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/assistant/kg_investigator/finding_brief.py:906"}, "properties": {"repobilityId": "c2b50a5001a85d6f", "scanner": "scanner-primary", "fingerprint": "bd1ecfd674d3be40", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ddfb58ce231920f6", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/manager_classes/MultiAgentManager.py:283"}, "properties": {"repobilityId": "bc98bdb08a4d1265", "scanner": "scanner-primary", "fingerprint": "ddfb58ce231920f6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac87b7330f8e1cd6", "level": "none", "message": {"text": "Commented-code block (9 lines) in app/assistant/manager_runtime/mam_instance_manager.py:62"}, "properties": {"repobilityId": "75ad23aae21abf21", "scanner": "scanner-primary", "fingerprint": "ac87b7330f8e1cd6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2e698861c6e94b4d", "level": "note", "message": {"text": "Legacy-named symbol `model_copy` in app/assistant/manager_runtime/request_preprocessor.py:263"}, "properties": {"repobilityId": "d4a17af0de9cda19", "scanner": "scanner-primary", "fingerprint": "2e698861c6e94b4d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-77036f8491f2e35b", "level": "note", "message": {"text": "Legacy-named symbol `scope_context_v1` in app/assistant/manager_runtime/services/scope_adapter.py:104"}, "properties": {"repobilityId": "901c3817f23cadd8", "scanner": "scanner-primary", "fingerprint": "77036f8491f2e35b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e9d2cd8a161adc6f", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/assistant/manager_runtime/services/scope_adapter.py:398"}, "properties": {"repobilityId": "1e7858f35479a400", "scanner": "scanner-primary", "fingerprint": "e9d2cd8a161adc6f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b290ee8a5e4c0290", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/manager_runtime/services/tool_scope_service.py:397"}, "properties": {"repobilityId": "d1dc96b075834a4b", "scanner": "scanner-primary", "fingerprint": "b290ee8a5e4c0290", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e2f179e6d5147315", "level": "note", "message": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/task_ir_runtime/task_ir_validator.py:9"}, "properties": {"repobilityId": "ae00ce72ba9b553f", "scanner": "scanner-primary", "fingerprint": "e2f179e6d5147315", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-399553e7361e2381", "level": "note", "message": {"text": "Legacy-named symbol `task_ir_v1` in app/assistant/task_ir_runtime/task_ir_runner.py:29"}, "properties": {"repobilityId": "07982142fadddab3", "scanner": "scanner-primary", "fingerprint": "399553e7361e2381", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9f872766c68a10d2", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/assistant/task_ir_runtime/task_ir_runner.py:86"}, "properties": {"repobilityId": "7464763420897525", "scanner": "scanner-primary", "fingerprint": "9f872766c68a10d2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c15e89458c9d4ea6", "level": "note", "message": {"text": "Stub function `_ensure_tables` (body is just `pass`/`return`) \u2014 app/assistant/task_ir_runtime/state_store.py:13"}, "properties": {"repobilityId": "7e7acb9de435a0e7", "scanner": "scanner-primary", "fingerprint": "c15e89458c9d4ea6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-afef2c42bd06a5eb", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/services/socket_manager.py:89"}, "properties": {"repobilityId": "996cae07407ff9f8", "scanner": "scanner-primary", "fingerprint": "afef2c42bd06a5eb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d85befe73fc1a451", "level": "note", "message": {"text": "Stub function `transcribe` (body is just `pass`/`return`) \u2014 app/services/speech_to_text.py:11"}, "properties": {"repobilityId": "3d7fbb10cfc30234", "scanner": "scanner-primary", "fingerprint": "d85befe73fc1a451", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-9e9029af7ad6b8b6", "level": "note", "message": {"text": "Legacy-named symbol `send_params_copy` in app/services/llm_client.py:552"}, "properties": {"repobilityId": "e8693855f0331828", "scanner": "scanner-primary", "fingerprint": "9e9029af7ad6b8b6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1d61f5aa514e8b23", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/services/llm_client.py:1043"}, "properties": {"repobilityId": "a5b017aad933ac42", "scanner": "scanner-primary", "fingerprint": "1d61f5aa514e8b23", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dbbb3adbc191ad1a", "level": "note", "message": {"text": "Legacy-named symbol `unified_log_backup` in sqlite_utilities/compare_tables.py:7"}, "properties": {"repobilityId": "11a613465c88f7dc", "scanner": "scanner-primary", "fingerprint": "dbbb3adbc191ad1a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-94f8b4b16ec5aaee", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/__init__.py:1"}, "properties": {"repobilityId": "1e94eeccc9611e2b", "scanner": "scanner-primary", "fingerprint": "94f8b4b16ec5aaee", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a45c88717411976c", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/seed_canonical.py:15"}, "properties": {"repobilityId": "9eddd7792a27f464", "scanner": "scanner-primary", "fingerprint": "a45c88717411976c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5f8c63e1201f906d", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/demo_retrieval.py:10"}, "properties": {"repobilityId": "a7dadca4b6313998", "scanner": "scanner-primary", "fingerprint": "5f8c63e1201f906d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ae5ed3f5f8227eb4", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/seed_from_old.py:18"}, "properties": {"repobilityId": "a2eee286c2549f6f", "scanner": "scanner-primary", "fingerprint": "ae5ed3f5f8227eb4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4ca342ea0188f93c", "level": "note", "message": {"text": "Legacy-named symbol `meal_beliefs_v2` in belief_engine_v2/shadow.py:4"}, "properties": {"repobilityId": "2ed04c49da3a4e86", "scanner": "scanner-primary", "fingerprint": "4ca342ea0188f93c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d21531ce71c95b0c", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/demo_verified_merge.py:12"}, "properties": {"repobilityId": "34830e8fb0f60676", "scanner": "scanner-primary", "fingerprint": "d21531ce71c95b0c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b3b095dea5023192", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/store.py:24"}, "properties": {"repobilityId": "dc78e6c38f23c68d", "scanner": "scanner-primary", "fingerprint": "b3b095dea5023192", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ab1b85842eb7e483", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/ingest.py:5"}, "properties": {"repobilityId": "774839fd61bf2f39", "scanner": "scanner-primary", "fingerprint": "ab1b85842eb7e483", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8e2cc623bafee6be", "level": "note", "message": {"text": "Legacy-named symbol `resource_user_beliefs_v2` in belief_engine_v2/export.py:3"}, "properties": {"repobilityId": "f361ef4746b63334", "scanner": "scanner-primary", "fingerprint": "8e2cc623bafee6be", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c20a372534c21ae9", "level": "none", "message": {"text": "Commented-code block (5 lines) in belief_engine_v2/export.py:44"}, "properties": {"repobilityId": "47dd69ccbb7abd8a", "scanner": "scanner-primary", "fingerprint": "c20a372534c21ae9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d781b30c14e09329", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/shadow_report.py:4"}, "properties": {"repobilityId": "ef0b65c40ca22a14", "scanner": "scanner-primary", "fingerprint": "d781b30c14e09329", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c0fb60b2be30ca89", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/resolver.py:16"}, "properties": {"repobilityId": "97347ad4b9e432db", "scanner": "scanner-primary", "fingerprint": "c0fb60b2be30ca89", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-22b2252f3ff14869", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_event_sourcing.py:7"}, "properties": {"repobilityId": "c222892170a6b0ed", "scanner": "scanner-primary", "fingerprint": "22b2252f3ff14869", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3cfbf63cd1795328", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_resolver.py:9"}, "properties": {"repobilityId": "b72c258da57b372c", "scanner": "scanner-primary", "fingerprint": "3cfbf63cd1795328", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-92baa2fb449467ec", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_status.py:9"}, "properties": {"repobilityId": "bc4f66524c58b424", "scanner": "scanner-primary", "fingerprint": "92baa2fb449467ec", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1a47f6e45c3eb7dc", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_retrieval.py:11"}, "properties": {"repobilityId": "2c6e19458228fa88", "scanner": "scanner-primary", "fingerprint": "1a47f6e45c3eb7dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4b94f7b4f8c0f2a5", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_bitemporal.py:10"}, "properties": {"repobilityId": "50834b27d14673f1", "scanner": "scanner-primary", "fingerprint": "4b94f7b4f8c0f2a5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-12777963fcd0afcb", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_decay.py:10"}, "properties": {"repobilityId": "b3a9819e83307270", "scanner": "scanner-primary", "fingerprint": "12777963fcd0afcb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-fe1e94c9bde7a08e", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_consolidation.py:9"}, "properties": {"repobilityId": "8b8cdfc47838f9da", "scanner": "scanner-primary", "fingerprint": "fe1e94c9bde7a08e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-347ac92dec8dd117", "level": "note", "message": {"text": "Legacy-named symbol `belief_engine_v2` in belief_engine_v2/tests/test_vocabulary.py:8"}, "properties": {"repobilityId": "fef7dfd89066ba83", "scanner": "scanner-primary", "fingerprint": "347ac92dec8dd117", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-36eace8da4f24521", "level": "note", "message": {"text": "Legacy-named symbol `scenario_temporary_31d_deprecated` in belief_engine/sandbox/scenarios.py:29"}, "properties": {"repobilityId": "34e75859c02ee9d7", "scanner": "scanner-primary", "fingerprint": "36eace8da4f24521", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-864b70248e45594d", "level": "note", "message": {"text": "Legacy-named symbol `temporary_deprecated` in belief_engine/sandbox/sandbox.py:184"}, "properties": {"repobilityId": "01c5b2d0a6928cdf", "scanner": "scanner-primary", "fingerprint": "864b70248e45594d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-92b0811493b34695", "level": "none", "message": {"text": "Commented-code block (7 lines) in belief_engine/pipeline/pipeline.py:80"}, "properties": {"repobilityId": "1d1ecdf40e8882b3", "scanner": "scanner-primary", "fingerprint": "92b0811493b34695", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cedc07f9cc3a0f3c", "level": "none", "message": {"text": "Commented-code block (5 lines) in belief_engine/pipeline/steps/reevaluate_beliefs.py:122"}, "properties": {"repobilityId": "c5a63edd7a29143d", "scanner": "scanner-primary", "fingerprint": "cedc07f9cc3a0f3c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1acc0c685272d9d7", "level": "note", "message": {"text": "Legacy-named symbol `temporary_deprecated` in belief_engine/pipeline/steps/decay_stale_beliefs.py:106"}, "properties": {"repobilityId": "47bf63dc8a4f815a", "scanner": "scanner-primary", "fingerprint": "1acc0c685272d9d7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e87f330e8891e608", "level": "none", "message": {"text": "Commented-code block (5 lines) in belief_engine/export/export_beliefs.py:49"}, "properties": {"repobilityId": "249f457363a0ff82", "scanner": "scanner-primary", "fingerprint": "e87f330e8891e608", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-526af44b904ea9ec", "level": "note", "message": {"text": "54 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "313b369fa3c8cca9", "scanner": "scanner-primary", "fingerprint": "526af44b904ea9ec", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "cbf196356996dd80", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "f4670ae50cd3428a", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "227e86afa6af56e8", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "0dd03a625c154e95", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "41ecf4cd9c4ec455", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "5fc1bd2c843e97b9", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "c4ae56ac4b56597e", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "f2cb2f17a4317b91", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "23aaa9fc7d41cea6", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "f5c2b368fd5a620a", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "80c633b3213eb2e0", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "ef68339ac3172c0a", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "03c03770a2b9fa84", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "17b828d261d2ab02", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "5a7625e6190b47a8", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "c3a401c241d74c8b", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "37f626dbdfd0d8bb", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "0c1cd4612fe8dac5", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "5cca9fcc0a7020e9", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-ee53e8e0c58609d8", "level": "note", "message": {"text": "Near-duplicate function bodies in 15 places"}, "properties": {"repobilityId": "5d51da64402deb33", "scanner": "scanner-primary", "fingerprint": "ee53e8e0c58609d8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-e487f7c9357fdb63", "level": "error", "message": {"text": "Flask mutation route `api_approve_suggestion` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1099"}, "properties": {"repobilityId": "6a77a1d81e52b5d4", "scanner": "scanner-primary", "fingerprint": "e487f7c9357fdb63", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1099}}}]}, {"ruleId": "scanner-9379178051748b89", "level": "error", "message": {"text": "Flask mutation route `api_approve_all_suggestions` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1121"}, "properties": {"repobilityId": "1babe7fe517caebe", "scanner": "scanner-primary", "fingerprint": "9379178051748b89", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1121}}}]}, {"ruleId": "scanner-237b6968448b89d9", "level": "error", "message": {"text": "Flask mutation route `api_reject_suggestion` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1187"}, "properties": {"repobilityId": "b903d61d1814cfdc", "scanner": "scanner-primary", "fingerprint": "237b6968448b89d9", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1187}}}]}, {"ruleId": "scanner-2e55baba7ba005ac", "level": "error", "message": {"text": "Flask mutation route `api_approve_review` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1195"}, "properties": {"repobilityId": "3ce596744fd5f211", "scanner": "scanner-primary", "fingerprint": "2e55baba7ba005ac", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1195}}}]}, {"ruleId": "scanner-4eb22d8c8e175c7a", "level": "error", "message": {"text": "Flask mutation route `api_reject_review` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1216"}, "properties": {"repobilityId": "186da2afd29d02ba", "scanner": "scanner-primary", "fingerprint": "4eb22d8c8e175c7a", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1216}}}]}, {"ruleId": "scanner-ab3e3bf5305b856b", "level": "error", "message": {"text": "Flask mutation route `api_accept_proposer` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1224"}, "properties": {"repobilityId": "c6d5f9632d1b7479", "scanner": "scanner-primary", "fingerprint": "ab3e3bf5305b856b", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1224}}}]}, {"ruleId": "scanner-e15be6d79a9b3f3d", "level": "error", "message": {"text": "Flask mutation route `api_cleanup_suggestions` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1232"}, "properties": {"repobilityId": "174af4f44f449008", "scanner": "scanner-primary", "fingerprint": "e15be6d79a9b3f3d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1232}}}]}, {"ruleId": "scanner-16209f02a0d07516", "level": "error", "message": {"text": "Flask mutation route `api_edit_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1249"}, "properties": {"repobilityId": "befa9f786ff8046a", "scanner": "scanner-primary", "fingerprint": "16209f02a0d07516", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1249}}}]}, {"ruleId": "scanner-767c93c4a2284949", "level": "error", "message": {"text": "Flask mutation route `api_delete_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1290"}, "properties": {"repobilityId": "05cf4f1b96410626", "scanner": "scanner-primary", "fingerprint": "767c93c4a2284949", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1290}}}]}, {"ruleId": "scanner-632e1fd16893d81d", "level": "error", "message": {"text": "Flask mutation route `api_add_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1346"}, "properties": {"repobilityId": "b798ccbb58a5f3d0", "scanner": "scanner-primary", "fingerprint": "632e1fd16893d81d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1346}}}]}, {"ruleId": "scanner-6c5c5f61bacc9e8b", "level": "error", "message": {"text": "Flask mutation route `api_remove_node_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1427"}, "properties": {"repobilityId": "5869b147dc8ea179", "scanner": "scanner-primary", "fingerprint": "6c5c5f61bacc9e8b", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1427}}}]}, {"ruleId": "scanner-7f9d6072cd136882", "level": "error", "message": {"text": "Flask mutation route `api_update_node_taxonomy` without `@login_required` \u2014 _archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py:1468"}, "properties": {"repobilityId": "c105baf2b04a5e65", "scanner": "scanner-primary", "fingerprint": "7f9d6072cd136882", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/reviewer_web.py"}, "region": {"startLine": 1468}}}]}, {"ruleId": "scanner-5441d43d010c7eda", "level": "error", "message": {"text": "Dangling fetch: POST /api/taxonomy/suggestions/${suggestionId}/approve (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:605)"}, "properties": {"repobilityId": "117294089c470e7d", "scanner": "scanner-primary", "fingerprint": "5441d43d010c7eda", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6b582ac0ecc3bf31", "level": "error", "message": {"text": "Dangling fetch: POST /api/taxonomy/suggestions/${suggestionId}/approve (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:650)"}, "properties": {"repobilityId": "ddc83a2a9198cc29", "scanner": "scanner-primary", "fingerprint": "6b582ac0ecc3bf31", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d176580af6599239", "level": "error", "message": {"text": "Dangling fetch: POST /api/taxonomy/suggestions/${suggestionId}/reject (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:677)"}, "properties": {"repobilityId": "734ea62f8301de37", "scanner": "scanner-primary", "fingerprint": "d176580af6599239", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-84430208dbc340a9", "level": "error", "message": {"text": "Dangling fetch: POST /api/taxonomy/reviews/${reviewId}/approve (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:701)"}, "properties": {"repobilityId": "b6b8de1266a3f455", "scanner": "scanner-primary", "fingerprint": "84430208dbc340a9", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-59cfd18362843798", "level": "error", "message": {"text": "Dangling fetch: POST /api/taxonomy/reviews/${reviewId}/approve (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:740)"}, "properties": {"repobilityId": "50252180db4d5fca", "scanner": "scanner-primary", "fingerprint": "59cfd18362843798", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-bca95a33d359b38c", "level": "error", "message": {"text": "Dangling fetch: POST /api/taxonomy/reviews/${reviewId}/reject (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:764)"}, "properties": {"repobilityId": "a18cca35e0c7068e", "scanner": "scanner-primary", "fingerprint": "bca95a33d359b38c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a70cd5f0ce398db3", "level": "error", "message": {"text": "Dangling fetch: POST /api/taxonomy/reviews/${reviewId}/accept-proposer (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:785)"}, "properties": {"repobilityId": "4d1fe1d63308fc87", "scanner": "scanner-primary", "fingerprint": "a70cd5f0ce398db3", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f5985c8f4a797c83", "level": "error", "message": {"text": "Dangling fetch: POST /api/taxonomy/edit/${nodeId} (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:1012)"}, "properties": {"repobilityId": "44f0a919981564dc", "scanner": "scanner-primary", "fingerprint": "f5985c8f4a797c83", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-7dcefb3cc2a3d023", "level": "error", "message": {"text": "Dangling fetch: DELETE /api/taxonomy/delete/${nodeId} (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:1048)"}, "properties": {"repobilityId": "f365219c37856481", "scanner": "scanner-primary", "fingerprint": "7dcefb3cc2a3d023", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-c39de3b73d809ca8", "level": "error", "message": {"text": "Dangling fetch: DELETE /api/taxonomy/node/${nodeId}/taxonomy/${taxonomyId} (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:1198)"}, "properties": {"repobilityId": "f6ac43dc0845b6e4", "scanner": "scanner-primary", "fingerprint": "c39de3b73d809ca8", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-fe6725690c466399", "level": "error", "message": {"text": "Dangling fetch: PUT /api/taxonomy/node/${nodeId}/taxonomy/${oldTaxonomyId} (_archived/taxonomy_2026_05_06/app/assistant/kg_core/taxonomy/static/js/taxonomy_reviewer.js:1237)"}, "properties": {"repobilityId": "7d29a8aff8e588c6", "scanner": "scanner-primary", "fingerprint": "fe6725690c466399", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-c1813a18d65d54e7", "level": "error", "message": {"text": "Dangling fetch: GET /api/integrations/lights/devices (app/static/js/lights_settings.js:286)"}, "properties": {"repobilityId": "f8e5f69f50827464", "scanner": "scanner-primary", "fingerprint": "c1813a18d65d54e7", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-98188bce95ea3c2e", "level": "error", "message": {"text": "Dangling fetch: PUT /api/integrations/lights/devices (app/static/js/lights_settings.js:326)"}, "properties": {"repobilityId": "cd6b49d1ee9384cf", "scanner": "scanner-primary", "fingerprint": "98188bce95ea3c2e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-1034cb881d14aef5", "level": "error", "message": {"text": "Dangling fetch: GET /api/integrations/ring/devices (app/static/js/ring_settings.js:108)"}, "properties": {"repobilityId": "7bebe08982ecb634", "scanner": "scanner-primary", "fingerprint": "1034cb881d14aef5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2fb5d56edeb7ee03", "level": "error", "message": {"text": "Dangling fetch: PUT /api/integrations/ring/devices (app/static/js/ring_settings.js:148)"}, "properties": {"repobilityId": "90322c83261d3174", "scanner": "scanner-primary", "fingerprint": "2fb5d56edeb7ee03", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-7d41fc964c8055ef", "level": "error", "message": {"text": "Dangling fetch: POST /api/accounts/${encodeURIComponent(accountId)}/configure (app/static/js/settings_accounts.js:60)"}, "properties": {"repobilityId": "31f74fc0c672277c", "scanner": "scanner-primary", "fingerprint": "7d41fc964c8055ef", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a8fa87f31c31818f", "level": "error", "message": {"text": "Dangling fetch: PUT /api/settings/quiet-mode/feature/${feature} (app/static/js/quiet_mode_settings.js:154)"}, "properties": {"repobilityId": "dbdcef42f2a24984", "scanner": "scanner-primary", "fingerprint": "a8fa87f31c31818f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-535382690521d538", "level": "error", "message": {"text": "Dangling fetch: PUT /api/settings/quiet-mode/feature/${feature} (app/static/js/quiet_mode_settings.js:185)"}, "properties": {"repobilityId": "09e29df4d02e6d42", "scanner": "scanner-primary", "fingerprint": "535382690521d538", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-0b327e2ebddfb4b7", "level": "error", "message": {"text": "Dangling fetch: GET /api/integrations/${integrationKey}/config (app/static/js/integrations_shared.js:107)"}, "properties": {"repobilityId": "81108b5a5254b25b", "scanner": "scanner-primary", "fingerprint": "0b327e2ebddfb4b7", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-44d76a99e307b019", "level": "error", "message": {"text": "Dangling fetch: PUT /api/integrations/${integrationKey}/config (app/static/js/integrations_shared.js:116)"}, "properties": {"repobilityId": "7059668756303e23", "scanner": "scanner-primary", "fingerprint": "44d76a99e307b019", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-43e94024c976d153", "level": "error", "message": {"text": "Dangling fetch: POST /api/integrations/${integrationKey}/action (app/static/js/integrations_shared.js:126)"}, "properties": {"repobilityId": "c298cba74ab6ca6d", "scanner": "scanner-primary", "fingerprint": "43e94024c976d153", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-43e061e6c165fc80", "level": "error", "message": {"text": "Dangling fetch: GET /api/timeline/${encodeURIComponent(window.ENTITY_ID)} (app/static/js/timeline.js:103)"}, "properties": {"repobilityId": "0ba2818de4ba2e56", "scanner": "scanner-primary", "fingerprint": "43e061e6c165fc80", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-eb11641080633158", "level": "error", "message": {"text": "Dangling fetch: PUT /api/settings/features/${feature} (app/static/js/features_settings.js:112)"}, "properties": {"repobilityId": "5c9498a3ebefc1a1", "scanner": "scanner-primary", "fingerprint": "eb11641080633158", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-5e2998fcdb70f709", "level": "error", "message": {"text": "Dangling fetch: GET /api/entity_cards/stats (app/static/js/entity_cards_editor.js:57)"}, "properties": {"repobilityId": "fa27768c953f56ca", "scanner": "scanner-primary", "fingerprint": "5e2998fcdb70f709", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-3d500b7248a8b63f", "level": "error", "message": {"text": "Dangling fetch: GET /api/entity_cards/types (app/static/js/entity_cards_editor.js:74)"}, "properties": {"repobilityId": "8daf779790c9fe56", "scanner": "scanner-primary", "fingerprint": "3d500b7248a8b63f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-83dba103e41fc1e6", "level": "error", "message": {"text": "Dangling fetch: GET /api/entity_cards?${params} (app/static/js/entity_cards_editor.js:123)"}, "properties": {"repobilityId": "e26a63b031eb2200", "scanner": "scanner-primary", "fingerprint": "83dba103e41fc1e6", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-fa23c89f6b6b39d6", "level": "error", "message": {"text": "Dangling fetch: POST /entity-cards-admin/api/regenerate/${cardId} (app/static/js/entity_cards_editor.js:205)"}, "properties": {"repobilityId": "dfcf91a4968dc372", "scanner": "scanner-primary", "fingerprint": "fa23c89f6b6b39d6", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2dca23146efb10f6", "level": "error", "message": {"text": "Dangling fetch: PUT /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:231)"}, "properties": {"repobilityId": "b01f15adfa9e9580", "scanner": "scanner-primary", "fingerprint": "2dca23146efb10f6", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-0cc58fe92d468d44", "level": "error", "message": {"text": "Dangling fetch: GET /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:278)"}, "properties": {"repobilityId": "ba4b68bbf747e268", "scanner": "scanner-primary", "fingerprint": "0cc58fe92d468d44", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-e550c7315d37816f", "level": "error", "message": {"text": "Dangling fetch: GET /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:389)"}, "properties": {"repobilityId": "807fe74c49eed372", "scanner": "scanner-primary", "fingerprint": "e550c7315d37816f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-43ed78b1bc31837a", "level": "error", "message": {"text": "Dangling fetch: PUT /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:464)"}, "properties": {"repobilityId": "7796f36e700e0bcc", "scanner": "scanner-primary", "fingerprint": "43ed78b1bc31837a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-3a20ea1cc0e1b79e", "level": "error", "message": {"text": "Dangling fetch: POST /api/entity_cards (app/static/js/entity_cards_editor.js:471)"}, "properties": {"repobilityId": "7725e115356ae12f", "scanner": "scanner-primary", "fingerprint": "3a20ea1cc0e1b79e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-e2f6c8f732bbba72", "level": "error", "message": {"text": "Dangling fetch: DELETE /api/entity_cards/${cardId} (app/static/js/entity_cards_editor.js:498)"}, "properties": {"repobilityId": "6232758631e61eb2", "scanner": "scanner-primary", "fingerprint": "e2f6c8f732bbba72", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-66f35ffd11822c8f", "level": "error", "message": {"text": "Dangling fetch: GET /api/integrations/nest/devices (app/static/js/nest_settings.js:142)"}, "properties": {"repobilityId": "6f6a258def3fe5b8", "scanner": "scanner-primary", "fingerprint": "66f35ffd11822c8f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-5593348ef13b3bc7", "level": "error", "message": {"text": "Dangling fetch: PUT /api/integrations/nest/devices (app/static/js/nest_settings.js:183)"}, "properties": {"repobilityId": "1e796892e84b0805", "scanner": "scanner-primary", "fingerprint": "5593348ef13b3bc7", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-e9af1ed664c3face", "level": "error", "message": {"text": "Dangling fetch: GET http://localhost:8000/agent_flow/get_all_manager_configs (app/assistant/agent_flow/src/components/FlowEditor.jsx:101)"}, "properties": {"repobilityId": "0c12e2753d15b6c4", "scanner": "scanner-primary", "fingerprint": "e9af1ed664c3face", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-95b326a58e2f4b86", "level": "error", "message": {"text": "Dangling fetch: GET http://localhost:8000/agent_flow/all_agent_configs (app/assistant/agent_flow/src/components/FlowEditor.jsx:259)"}, "properties": {"repobilityId": "88336a28516e0d9a", "scanner": "scanner-primary", "fingerprint": "95b326a58e2f4b86", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-dc66299d19617716", "level": "error", "message": {"text": "Dangling fetch: POST http://localhost:8000/agent_flow/save_manager (app/assistant/agent_flow/src/components/FlowEditor.jsx:427)"}, "properties": {"repobilityId": "b50ad8d627587f70", "scanner": "scanner-primary", "fingerprint": "dc66299d19617716", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-3a9922c069d5bbb1", "level": "error", "message": {"text": "Dangling fetch: GET /task-graph/ir/${encodeURIComponent(taskId)} (app/task_graph_viewer/src/App.jsx:70)"}, "properties": {"repobilityId": "fe9cb0987e24e76e", "scanner": "scanner-primary", "fingerprint": "3a9922c069d5bbb1", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-eb7f8c5881145aee", "level": "error", "message": {"text": "Dangling fetch: PUT /task-graph/ir/${encodeURIComponent(taskId)} (app/task_graph_viewer/src/App.jsx:313)"}, "properties": {"repobilityId": "6faae6f895982c70", "scanner": "scanner-primary", "fingerprint": "eb7f8c5881145aee", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-b9266c4ff65fb786", "level": "note", "message": {"text": "Unused endpoint: ANY /taxonomy_webviewer"}, "properties": {"repobilityId": "bb460e85efda1a7b", "scanner": "scanner-primary", "fingerprint": "b9266c4ff65fb786", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1181fce8129c1498", "level": "note", "message": {"text": "Unused endpoint: ANY /api/taxonomy/suggestions/<int:suggestion_id>/approve"}, "properties": {"repobilityId": "e96a3113d21f908f", "scanner": "scanner-primary", "fingerprint": "1181fce8129c1498", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-5fb1b3e9001e47c8", "level": "note", "message": {"text": "Unused endpoint: ANY /api/taxonomy/suggestions/<int:suggestion_id>/reject"}, "properties": {"repobilityId": "30214882cb189ed4", "scanner": "scanner-primary", "fingerprint": "5fb1b3e9001e47c8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-9026261f22d673a8", "level": "note", "message": {"text": "Unused endpoint: ANY /api/taxonomy/reviews/<int:review_id>/approve"}, "properties": {"repobilityId": "07a2697f23d4a201", "scanner": "scanner-primary", "fingerprint": "9026261f22d673a8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ef9bc862fdec6462", "level": "note", "message": {"text": "Unused endpoint: ANY /api/taxonomy/reviews/<int:review_id>/reject"}, "properties": {"repobilityId": "4dd327be6ed4acc2", "scanner": "scanner-primary", "fingerprint": "ef9bc862fdec6462", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-77552183978f66fd", "level": "note", "message": {"text": "Unused endpoint: ANY /api/taxonomy/reviews/<int:review_id>/accept-proposer"}, "properties": {"repobilityId": "a53a0a5b521c1e2b", "scanner": "scanner-primary", "fingerprint": "77552183978f66fd", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-eaef9779cb8595fc", "level": "note", "message": {"text": "Unused endpoint: ANY /api/taxonomy/cleanup-suggestions"}, "properties": {"repobilityId": "3eebb124d5dc27f0", "scanner": "scanner-primary", "fingerprint": "eaef9779cb8595fc", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-d452549345080fb8", "level": "note", "message": {"text": "Unused endpoint: ANY /api/taxonomy/edit/<int:node_id>"}, "properties": {"repobilityId": "9e97b30d703e1b08", "scanner": "scanner-primary", "fingerprint": "d452549345080fb8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-79dd25abdeb09573", "level": "note", "message": {"text": "Unused endpoint: ANY /api/taxonomy/delete/<int:node_id>"}, "properties": {"repobilityId": "41b1ee27838450cf", "scanner": "scanner-primary", "fingerprint": "79dd25abdeb09573", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-caa6495ddd000ce1", "level": "note", "message": {"text": "Unused endpoint: ANY /api/taxonomy/node/<node_id>/taxonomy/<int:taxonomy_id>"}, "properties": {"repobilityId": "165c52face4cf39a", "scanner": "scanner-primary", "fingerprint": "caa6495ddd000ce1", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ad072694827792fe", "level": "note", "message": {"text": "Unused endpoint: ANY /api/taxonomy/node/<node_id>/taxonomy/<int:old_taxonomy_id>"}, "properties": {"repobilityId": "96f358b496a58f24", "scanner": "scanner-primary", "fingerprint": "ad072694827792fe", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1a6d91f2236825bf", "level": "note", "message": {"text": "Unused endpoint: ANY /"}, "properties": {"repobilityId": "204b7c8609d003e6", "scanner": "scanner-primary", "fingerprint": "1a6d91f2236825bf", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-52e10a63977ce92e", "level": "note", "message": {"text": "Unused endpoint: ANY /uploads/temp/<path:filename>"}, "properties": {"repobilityId": "36563dfdbd1078f7", "scanner": "scanner-primary", "fingerprint": "52e10a63977ce92e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-58d37f378ddf337c", "level": "note", "message": {"text": "Unused endpoint: ANY /api/kg-lens/focus-graph"}, "properties": {"repobilityId": "0133ced8f18b931e", "scanner": "scanner-primary", "fingerprint": "58d37f378ddf337c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-83884bb5999f91ce", "level": "note", "message": {"text": "Unused endpoint: ANY /api/kg-lens/set-graph"}, "properties": {"repobilityId": "ff44bcff3d7d69e0", "scanner": "scanner-primary", "fingerprint": "83884bb5999f91ce", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-2ffc57d8e9132a9a", "level": "note", "message": {"text": "Unused endpoint: ANY /api/kg-lens/node/<node_id>"}, "properties": {"repobilityId": "edc35a6bbf86c0f3", "scanner": "scanner-primary", "fingerprint": "2ffc57d8e9132a9a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-255f9242b30a1318", "level": "note", "message": {"text": "Unused endpoint: ANY /api/kg-lens/node/<node_id>/edit"}, "properties": {"repobilityId": "208ce644bd4b6730", "scanner": "scanner-primary", "fingerprint": "255f9242b30a1318", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-9a19eb8058d5dcab", "level": "note", "message": {"text": "Unused endpoint: ANY /api/kg-lens/node/<node_id>/lock"}, "properties": {"repobilityId": "348f1d973d0e07d2", "scanner": "scanner-primary", "fingerprint": "9a19eb8058d5dcab", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-f2f458ea5a488451", "level": "note", "message": {"text": "Unused endpoint: ANY /api/graph"}, "properties": {"repobilityId": "513878056350b076", "scanner": "scanner-primary", "fingerprint": "f2f458ea5a488451", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-f9843670bfde16cb", "level": "note", "message": {"text": "Unused endpoint: ANY /api/graph/node-types"}, "properties": {"repobilityId": "1870a4c3b1fb05fb", "scanner": "scanner-primary", "fingerprint": "f9843670bfde16cb", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-665a5a862fba5d6c", "level": "note", "message": {"text": "Unused endpoint: ANY /api/graph/edge-types"}, "properties": {"repobilityId": "dac021987d1b9406", "scanner": "scanner-primary", "fingerprint": "665a5a862fba5d6c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-3a012cc7df537eab", "level": "note", "message": {"text": "Unused endpoint: ANY /api/graph/search"}, "properties": {"repobilityId": "0a0cb0aa715b8b83", "scanner": "scanner-primary", "fingerprint": "3a012cc7df537eab", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ca061dda7b1c5abe", "level": "note", "message": {"text": "Unused endpoint: ANY /api/graph/node/<node_id>"}, "properties": {"repobilityId": "79971f88950df6bc", "scanner": "scanner-primary", "fingerprint": "ca061dda7b1c5abe", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-333b8a10851b49e8", "level": "note", "message": {"text": "Unused endpoint: ANY /api/graph/edge/<edge_id>"}, "properties": {"repobilityId": "3425db5ac3890aa6", "scanner": "scanner-primary", "fingerprint": "333b8a10851b49e8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-90f9d37eb5275fd0", "level": "note", "message": {"text": "Unused endpoint: ANY /api/graph/stats"}, "properties": {"repobilityId": "3116de136b86a8ac", "scanner": "scanner-primary", "fingerprint": "90f9d37eb5275fd0", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-972b6a8db0d4757c", "level": "note", "message": {"text": "Unused endpoint: ANY /api/graph/hubs"}, "properties": {"repobilityId": "b47de25fd7c988f8", "scanner": "scanner-primary", "fingerprint": "972b6a8db0d4757c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-d1beb503bc5612d8", "level": "note", "message": {"text": "Unused endpoint: ANY /api/graph/subgraph"}, "properties": {"repobilityId": "faaadbcedfa835f3", "scanner": "scanner-primary", "fingerprint": "d1beb503bc5612d8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c75b2939239b283e", "level": "note", "message": {"text": "Unused endpoint: ANY /api/graph/degree-distribution"}, "properties": {"repobilityId": "392fbce4998592bc", "scanner": "scanner-primary", "fingerprint": "c75b2939239b283e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-d8671cae1d2fe5a0", "level": "note", "message": {"text": "Unused endpoint: ANY /<version>"}, "properties": {"repobilityId": "9f173c7a8edec4e7", "scanner": "scanner-primary", "fingerprint": "d8671cae1d2fe5a0", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-7954330b4a5dd73a", "level": "note", "message": {"text": "Unused endpoint: ANY /debug-template"}, "properties": {"repobilityId": "8e46a2c957e70d7f", "scanner": "scanner-primary", "fingerprint": "7954330b4a5dd73a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-98d9e72de568f867", "level": "note", "message": {"text": "Unused endpoint: ANY /oauth/google/start"}, "properties": {"repobilityId": "f2c118bc1c771988", "scanner": "scanner-primary", "fingerprint": "98d9e72de568f867", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-98f651869f499627", "level": "note", "message": {"text": "Unused endpoint: ANY /oauth/google/callback"}, "properties": {"repobilityId": "36e1ebc07532d585", "scanner": "scanner-primary", "fingerprint": "98f651869f499627", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-8a08f789a34b35d8", "level": "note", "message": {"text": "Unused endpoint: ANY /debug/wellness/status"}, "properties": {"repobilityId": "83b1035e5dfed249", "scanner": "scanner-primary", "fingerprint": "8a08f789a34b35d8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-892211927f163e09", "level": "note", "message": {"text": "Unused endpoint: ANY /kg-interests"}, "properties": {"repobilityId": "c610efdcac825370", "scanner": "scanner-primary", "fingerprint": "892211927f163e09", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b207742ee0c4c569", "level": "note", "message": {"text": "Unused endpoint: ANY /kg-interests/critic-prompt"}, "properties": {"repobilityId": "e518e6925eb2feb5", "scanner": "scanner-primary", "fingerprint": "b207742ee0c4c569", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a235c3132cd4cc22", "level": "note", "message": {"text": "Unused endpoint: ANY /kg-interests/test"}, "properties": {"repobilityId": "af26846fd5b88b14", "scanner": "scanner-primary", "fingerprint": "a235c3132cd4cc22", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a9eabb53d0dc5619", "level": "note", "message": {"text": "Unused endpoint: ANY /kg-interests/test/recent-windows"}, "properties": {"repobilityId": "254c33487fb412ac", "scanner": "scanner-primary", "fingerprint": "a9eabb53d0dc5619", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e7d69a322e90e301", "level": "note", "message": {"text": "Unused endpoint: ANY /kg-interests/test/window/<window_id>"}, "properties": {"repobilityId": "43f084c1016c0038", "scanner": "scanner-primary", "fingerprint": "e7d69a322e90e301", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-0c7e912f96c682f0", "level": "note", "message": {"text": "Unused endpoint: ANY /slack/room/simulate"}, "properties": {"repobilityId": "5994666e3d6c521e", "scanner": "scanner-primary", "fingerprint": "0c7e912f96c682f0", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e137d89197e73bee", "level": "note", "message": {"text": "Unused endpoint: ANY /beliefs"}, "properties": {"repobilityId": "35e6be33c472933b", "scanner": "scanner-primary", "fingerprint": "e137d89197e73bee", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-8fea0263553ca73b", "level": "note", "message": {"text": "Unused endpoint: ANY /api/beliefs/list"}, "properties": {"repobilityId": "c66778eb13557135", "scanner": "scanner-primary", "fingerprint": "8fea0263553ca73b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-094bcf2044e7853b", "level": "note", "message": {"text": "Unused endpoint: ANY /api/beliefs/trends"}, "properties": {"repobilityId": "a79235bead483a03", "scanner": "scanner-primary", "fingerprint": "094bcf2044e7853b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-05a0bab2b36b1df2", "level": "note", "message": {"text": "Unused endpoint: ANY /api/beliefs/item"}, "properties": {"repobilityId": "b17a101c0690cf79", "scanner": "scanner-primary", "fingerprint": "05a0bab2b36b1df2", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-22bd189963543b20", "level": "note", "message": {"text": "Unused endpoint: ANY /telegram/webhook"}, "properties": {"repobilityId": "d56310126f72a72e", "scanner": "scanner-primary", "fingerprint": "22bd189963543b20", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-050405cb0eb61624", "level": "note", "message": {"text": "Unused endpoint: ANY /date-gaps"}, "properties": {"repobilityId": "c717e04cce65885d", "scanner": "scanner-primary", "fingerprint": "050405cb0eb61624", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-2e37e3c285c87bb0", "level": "note", "message": {"text": "Unused endpoint: ANY /queue"}, "properties": {"repobilityId": "dad03b278391a992", "scanner": "scanner-primary", "fingerprint": "2e37e3c285c87bb0", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b37ceae2c3457eba", "level": "note", "message": {"text": "Unused endpoint: ANY /api/findings"}, "properties": {"repobilityId": "ae396a7957363657", "scanner": "scanner-primary", "fingerprint": "b37ceae2c3457eba", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e258d1973c46d268", "level": "note", "message": {"text": "Unused endpoint: ANY /api/summary"}, "properties": {"repobilityId": "41e31d5638248aea", "scanner": "scanner-primary", "fingerprint": "e258d1973c46d268", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c79648dd30387f99", "level": "note", "message": {"text": "Unused endpoint: ANY /api/action"}, "properties": {"repobilityId": "32268834df1a30ff", "scanner": "scanner-primary", "fingerprint": "c79648dd30387f99", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-4d23507286bf72ca", "level": "note", "message": {"text": "Unused endpoint: ANY /api/finding/<finding_id>/fill_dates"}, "properties": {"repobilityId": "cdca1241630c664f", "scanner": "scanner-primary", "fingerprint": "4d23507286bf72ca", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}]}]}