{"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-90219cf6948fdf8d", "name": "Possibly dead Python function: run_single_query", "shortDescription": {"text": "Possibly dead Python function: run_single_query"}, "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-d91d88c9823dd237", "name": "Possibly dead Python function: do_GET", "shortDescription": {"text": "Possibly dead Python function: do_GET"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7a294aecb7ac4d2d", "name": "Possibly dead Python function: do_POST", "shortDescription": {"text": "Possibly dead Python function: do_POST"}, "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-590db3d63eac6242", "name": "Possibly dead Python function: log_message", "shortDescription": {"text": "Possibly dead Python function: log_message"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-693a0e2d2ab9d050", "name": "Possibly dead Python function: ease_in_quad", "shortDescription": {"text": "Possibly dead Python function: ease_in_quad"}, "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-ddab98aa149ee8bf", "name": "Possibly dead Python function: ease_out_quad", "shortDescription": {"text": "Possibly dead Python function: ease_out_quad"}, "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-f6ed93bbd82bc99d", "name": "Possibly dead Python function: ease_in_out_quad", "shortDescription": {"text": "Possibly dead Python function: ease_in_out_quad"}, "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-e85e3cbe87f4ded4", "name": "Possibly dead Python function: ease_in_cubic", "shortDescription": {"text": "Possibly dead Python function: ease_in_cubic"}, "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-bddc03e56a2770a8", "name": "Possibly dead Python function: ease_out_cubic", "shortDescription": {"text": "Possibly dead Python function: ease_out_cubic"}, "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-a458904bed5af934", "name": "Possibly dead Python function: ease_in_out_cubic", "shortDescription": {"text": "Possibly dead Python function: ease_in_out_cubic"}, "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-50ecfc03204fb894", "name": "Possibly dead Python function: ease_in_out_bounce", "shortDescription": {"text": "Possibly dead Python function: ease_in_out_bounce"}, "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-9e71cfc152854cbe", "name": "Possibly dead Python function: ease_in_elastic", "shortDescription": {"text": "Possibly dead Python function: ease_in_elastic"}, "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-4d2a4405d7d855c3", "name": "Possibly dead Python function: ease_out_elastic", "shortDescription": {"text": "Possibly dead Python function: ease_out_elastic"}, "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-c38d35d358125bb4", "name": "Possibly dead Python function: ease_in_out_elastic", "shortDescription": {"text": "Possibly dead Python function: ease_in_out_elastic"}, "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-f29db5a3fd19018e", "name": "Possibly dead Python function: interpolate", "shortDescription": {"text": "Possibly dead Python function: interpolate"}, "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-6f2acfd282585535", "name": "Possibly dead Python function: ease_back_in", "shortDescription": {"text": "Possibly dead Python function: ease_back_in"}, "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-854081f3f2f80583", "name": "Possibly dead Python function: ease_back_out", "shortDescription": {"text": "Possibly dead Python function: ease_back_out"}, "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-96767981af5336d4", "name": "Possibly dead Python function: ease_back_in_out", "shortDescription": {"text": "Possibly dead Python function: ease_back_in_out"}, "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-42d915bd2714d34c", "name": "Possibly dead Python function: apply_squash_stretch", "shortDescription": {"text": "Possibly dead Python function: apply_squash_stretch"}, "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-29b20878ba6e3bc1", "name": "Possibly dead Python function: calculate_arc_motion", "shortDescription": {"text": "Possibly dead Python function: calculate_arc_motion"}, "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-11b53d2536b1bb4d", "name": "Possibly dead Python function: add_frames", "shortDescription": {"text": "Possibly dead Python function: add_frames"}, "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-7d0643117eaae17d", "name": "Possibly dead Python function: clear", "shortDescription": {"text": "Possibly dead Python function: clear"}, "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-d400dbbb580be3b2", "name": "Possibly dead Python function: create_blank_frame", "shortDescription": {"text": "Possibly dead Python function: create_blank_frame"}, "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-ebc9a5059fb576fa", "name": "Possibly dead Python function: draw_circle", "shortDescription": {"text": "Possibly dead Python function: draw_circle"}, "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-306c23620526eab6", "name": "Possibly dead Python function: draw_text", "shortDescription": {"text": "Possibly dead Python function: draw_text"}, "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-5629ede6f14c465d", "name": "Possibly dead Python function: create_gradient_background", "shortDescription": {"text": "Possibly dead Python function: create_gradient_background"}, "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-e661e0b3d259839d", "name": "Possibly dead Python function: draw_star", "shortDescription": {"text": "Possibly dead Python function: draw_star"}, "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-c39db2481bfd3eb5", "name": "Possibly dead Python function: is_slack_ready", "shortDescription": {"text": "Possibly dead Python function: is_slack_ready"}, "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-f6b33cb805f38fc8", "name": "Possibly dead Python function: merge_runs", "shortDescription": {"text": "Possibly dead Python function: merge_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-2e10a1c845d01021", "name": "Stray `console.log` in TS/JS \u2014 sage-mentor/send-notification.ts:301", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 sage-mentor/send-notification.ts:301"}, "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-7eca4f517dc1958f", "name": "Stray `console.log` in TS/JS \u2014 engineering/agent-discovery-strategy.js:276", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 engineering/agent-discovery-strategy.js:276"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9a8cdc63a7d42385", "name": "Stray `console.log` in TS/JS \u2014 engineering/generate-todo.js:351", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 engineering/generate-todo.js:351"}, "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-a5924c0e5e26ee79", "name": "Stray `console.log` in TS/JS \u2014 engineering/pmf-assessment-agent.js:360", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 engineering/pmf-assessment-agent.js:360"}, "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-cadf3f9ca4894ad5", "name": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_inspect_registry.js:8", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_inspect_registry.js:8"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fc53d7f3892cceb8", "name": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_verify_flows.js:3", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_verify_flows.js:3"}, "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-cea77ae2bf240bf1", "name": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_list_nonready.js:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_list_nonready.js: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-9f687673c7cbaf8f", "name": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_apply_journey.js:120", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_apply_journey.js:120"}, "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-de45f18523b49a74", "name": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_extract_flows.js:72", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_extract_flows.js:72"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-adefd406f1b5a7b1", "name": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_rewire_map.js:116", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_rewire_map.js:116"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2e7fbdf15ba94419", "name": "Stray `console.log` in TS/JS \u2014 scripts/compile-stoic-brain.ts:59", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/compile-stoic-brain.ts:59"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9ac120a170ce376c", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/test-retrieval-rerank.ts:59", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/test-retrieval-rerank.ts:59"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d8c60fd72f17fd1b", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/mint-credential.ts:118", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/mint-credential.ts:118"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-99160ec6996d7f6a", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/verify-internal-retrieve.ts:69", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/verify-internal-retrieve.ts:69"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-266c8ccb4f156391", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/verify-reason-rag.ts:200", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/verify-reason-rag.ts:200"}, "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-79036016bfd52a81", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/verify-translation-sandwich.ts:114", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/verify-translation-sandwich.ts:114"}, "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-0795d913c75b438f", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/ci9-gate-replay.ts:44", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/ci9-gate-replay.ts:44"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-386b1c978c145135", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/verify-accreditation-m3-leg.ts:51", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/verify-accreditation-m3-leg.ts:51"}, "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-2cc36811af5a5a4b", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l3.ts:76", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l3.ts:76"}, "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-61626c972ee27516", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-c2.ts:400", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-c2.ts:400"}, "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-4c4432fefcbbc80d", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l2.ts:111", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l2.ts:111"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bcde22f86b976366", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/mint-test-credentials.ts:82", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/mint-test-credentials.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-f16b2838aa18d5ff", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l6.ts:126", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l6.ts:126"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0e14dbf1d52c9d4f", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l1.ts:118", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l1.ts:118"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8d5f0975bf84cf9a", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l4.ts:69", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l4.ts:69"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4d9c83452241623b", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-comb2.ts:80", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-comb2.ts:80"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b1e9c0d01e140a5e", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l7.ts:67", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l7.ts:67"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5f8ecad5ba7cd3d5", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l2-complete.ts:87", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l2-complete.ts:87"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cd63a58ddb7e6cf6", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l5.ts:137", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l5.ts:137"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6a9551896a1a4cfd", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/smoke-negatives.ts:42", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/smoke-negatives.ts:42"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f07f1e5f93fbc790", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-r20a-gate-probe.ts:122", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-r20a-gate-probe.ts:122"}, "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-45028162a20b6437", "name": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/lib/assertions.ts:23", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/lib/assertions.ts:23"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-782ba3dcc19fb97e", "name": "Stray `console.log` in TS/JS \u2014 website/tmp/a4-smoke-test.ts:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/tmp/a4-smoke-test.ts: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-22f8db632adc3980", "name": "Stray `console.log` in TS/JS \u2014 website/public/sw-journal.js:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/public/sw-journal.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-76d5bb6a757c0cdd", "name": "Stray `console.log` in TS/JS \u2014 website/src/instrumentation.ts:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/instrumentation.ts:43"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a2f204e25cfb46a4", "name": "`truncate` class without `title=` for hover reveal \u2014 website/src/components/PracticeCalendar.tsx:315", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 website/src/components/PracticeCalendar.tsx:315"}, "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-bcd88bf66dc9f8e4", "name": "Stray `console.log` in TS/JS \u2014 website/src/components/ServiceWorkerRegistration.tsx:20", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/components/ServiceWorkerRegistration.tsx:20"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-eed7cfba41bcd6ed", "name": "`truncate` class without `title=` for hover reveal \u2014 website/src/components/NavBar.tsx:105", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 website/src/components/NavBar.tsx:105"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-02ed01d0a05de537", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 website/src/app/page.tsx:52", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 website/src/app/page.tsx:52"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ceb2bf48737a2b5a", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 website/src/app/score/page.tsx:281", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 website/src/app/score/page.tsx:281"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d7a1822c958d370", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 website/src/app/api-docs/page.tsx:293", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 website/src/app/api-docs/page.tsx:293"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1ee32e7ea379b0c8", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/__tests__/r20a-configuration-flows.test.ts:104", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/__tests__/r20a-configuration-flows.test.ts:104"}, "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-d78e7b4e89ae3fe6", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/score-iterate/route.ts:785", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/score-iterate/route.ts:785"}, "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-90b12da354110d4c", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/public-key/__tests__/public-key-route.test.ts:345", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/public-key/__tests__/public-key-route.test.ts:345"}, "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-8e7c74b2681d9d22", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/journal/__tests__/r20a-invocation.test.ts:55", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/journal/__tests__/r20a-invocation.test.ts:55"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-77f4a085c5dfafb1", "name": "TODO/FIXME marker in shipping code \u2014 website/src/app/api/billing/usage-summary/route.ts:41", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 website/src/app/api/billing/usage-summary/route.ts:41"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d327392c92e974af", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/admin/accreditation-credentials/__tests__/route.test.ts:153", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/admin/accreditation-credentials/__tests__/route.test.ts:153"}, "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-f2a7acd0ce56c8d0", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/admin/plugin-install-credentials/__tests__/route.test.ts:162", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/admin/plugin-install-credentials/__tests__/route.test.ts:162"}, "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-b7856c480e385e42", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/reason/__tests__/r20a-audience-rendering.test.ts:123", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/reason/__tests__/r20a-audience-rendering.test.ts:123"}, "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-7af3f4d161dd8505", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/practice/reflect/route.ts:386", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/practice/reflect/route.ts:386"}, "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-7de0056d9821e8f6", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/practice/reflect/__tests__/request-helpers.test.ts:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/practice/reflect/__tests__/request-helpers.test.ts:12"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9354668de5792693", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/practice/reflect/__tests__/r20a-invocation.test.ts:113", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/practice/reflect/__tests__/r20a-invocation.test.ts:113"}, "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-94ca08a9a9a87432", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/cron/trajectory-retention-sweep/__tests__/route.test.ts:201", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/cron/trajectory-retention-sweep/__tests__/route.test.ts:201"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bd18591be9f7734a", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/calling/route.ts:277", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/calling/route.ts:277"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ae51779a6ac7d422", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/calling/__tests__/r20a-invocation.test.ts:93", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/calling/__tests__/r20a-invocation.test.ts:93"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ed1e14bc23119c4a", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/mentor/private/reflect/route.ts:574", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/mentor/private/reflect/route.ts:574"}, "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-7ee83e39d7a4cc22", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/mentor/journal-feed/__tests__/r20a-invocation.test.ts:59", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/mentor/journal-feed/__tests__/r20a-invocation.test.ts:59"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-76ba07f24171dcad", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/route.ts:650", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/route.ts:650"}, "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-8f0f8ecbf4d34644", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/__tests__/provenance-contract.test.ts:47", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/__tests__/provenance-contract.test.ts:47"}, "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-7ce5578c9d9de1e8", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts:679", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts:679"}, "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-a4e336c4178aa0f3", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/__tests__/provenance-gate.test.ts:55", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/__tests__/provenance-gate.test.ts:55"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9e505b899c992d7d", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/__tests__/loop-closure-gate.test.ts:248", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/__tests__/loop-closure-gate.test.ts:248"}, "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-5a6b32cd152d6f59", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/founder/hub/route.ts:715", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/founder/hub/route.ts:715"}, "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-9a297bda82d2f156", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/webhooks/stripe/route.ts:151", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/webhooks/stripe/route.ts:151"}, "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-daff0a372c52c3c3", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/guardrail/route.ts:404", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/guardrail/route.ts:404"}, "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-3b42d3127e7638fd", "name": "Stray `console.log` in TS/JS \u2014 website/src/app/api/credential/erase/__tests__/handler.test.ts:227", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/credential/erase/__tests__/handler.test.ts:227"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ce0fd8b5fb59c3d7", "name": "`truncate` class without `title=` for hover reveal \u2014 website/src/app/admin/page.tsx:260", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 website/src/app/admin/page.tsx:260"}, "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-b2ea0460b27799ec", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/security.ts:960", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/security.ts:960"}, "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-98342cfb684eebd5", "name": "TODO/FIXME marker in shipping code \u2014 website/src/lib/stripe-projects.ts:117", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 website/src/lib/stripe-projects.ts:117"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f823f8db91d984d6", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/mentor-profile-store.ts:134", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/mentor-profile-store.ts:134"}, "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-9896f6abda8560b6", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/server-encryption.ts:42", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/server-encryption.ts:42"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0dc44a9df87e84c8", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/r20a-invocation-guard.test.ts:322", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/r20a-invocation-guard.test.ts:322"}, "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-3c0e517902cfa86b", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/response-envelope-ci8.test.ts:38", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/response-envelope-ci8.test.ts:38"}, "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-6db52d884286861a", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/upc-transport-narrowing.test.ts:96", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/upc-transport-narrowing.test.ts:96"}, "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-29f8410fcd218051", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/mentor-profile-adapter.test.ts:349", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/mentor-profile-adapter.test.ts:349"}, "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-e4821c096dc43574", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/practice-cycle-hint.test.ts:81", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/practice-cycle-hint.test.ts:81"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-16ba1b182e47a89c", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/sage-reason-composition-order.test.ts:157", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/sage-reason-composition-order.test.ts:157"}, "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-b64430e3001c2e4b", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/consumer-erasure.test.ts:246", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/consumer-erasure.test.ts:246"}, "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-fdf92d3bd3dd4da2", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/journal-encryption.test.ts:40", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/journal-encryption.test.ts:40"}, "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-51489481f1813f82", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/loop-cost-tracker.test.ts:84", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/loop-cost-tracker.test.ts:84"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fc3fc023be000327", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/plugin-install-auth.test.ts:178", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/plugin-install-auth.test.ts:178"}, "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-d997da12a3caf587", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/api-key-defaults.test.ts:30", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/api-key-defaults.test.ts:30"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-80888e94e7a16d44", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/encryption-helpers.test.ts:191", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/encryption-helpers.test.ts:191"}, "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-78dc5243c3aa31ea", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/security.test.ts:184", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/security.test.ts:184"}, "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-182a451f6180e3c8", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/r20b-dependence.test.ts:37", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/r20b-dependence.test.ts:37"}, "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-db4a97529f562f3f", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/mentor-profile-summary.test.ts:302", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/mentor-profile-summary.test.ts:302"}, "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-dd22233b1751b721", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/ci9-cache-mechanism.test.ts:37", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/ci9-cache-mechanism.test.ts:37"}, "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-1580baf2972b91bb", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/practice-credential.test.ts:324", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/practice-credential.test.ts:324"}, "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-4bb28e13209542c7", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/m5-docs-staged.test.ts:94", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/m5-docs-staged.test.ts:94"}, "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-25e210309a960c7c", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/run-zone2-calibration-eval.ts:64", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/run-zone2-calibration-eval.ts:64"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bebc4d8d81fef4d2", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/loop-cost-tracker-ci10.test.ts:40", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/loop-cost-tracker-ci10.test.ts:40"}, "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-2fb4fd514632b65b", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/abuse-detection/__tests__/abuse-detector.test.ts:29", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/abuse-detection/__tests__/abuse-detector.test.ts:29"}, "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-db257e742e539224", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/abuse-detection/__tests__/abuse-detector-structural.test.ts:42", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/abuse-detection/__tests__/abuse-detector-structural.test.ts:42"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1d52629da0799f6b", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/question-library.test.ts:44", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/question-library.test.ts:44"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-15254d187f7784ea", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/engine.test.ts:51", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/engine.test.ts:51"}, "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-a0f472b56e4659c7", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/agent-card.test.ts:26", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/agent-card.test.ts:26"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5c6483be8b2f2c96", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/r18d-adversarial.test.ts:33", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/r18d-adversarial.test.ts:33"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-22b377b1b878daf1", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/calling-service.test.ts:46", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/calling-service.test.ts:46"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-46890d86ae381ca7", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/session-store.test.ts:48", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/session-store.test.ts:48"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-11da55348e8273fb", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/slo/__tests__/slo-stats.test.ts:19", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/slo/__tests__/slo-stats.test.ts:19"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3735adc56abe7917", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/r20a-gate.ts:401", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/r20a-gate.ts:401"}, "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-f0fc4b9c665802d3", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/layer3-service.ts:527", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/layer3-service.ts:527"}, "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-6ff8d2cf20ad5bbe", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/sage-assent-accreditation-writer.ts:188", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/sage-assent-accreditation-writer.ts:188"}, "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-8b3e973732010909", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/agent-assessment-history-store.test.ts:612", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/agent-assessment-history-store.test.ts:612"}, "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-69985b7c535d4858", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-bridge.test.ts:94", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-bridge.test.ts:94"}, "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-22e35c4aeeab60b4", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-iteration-patterns.test.ts:114", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-iteration-patterns.test.ts:114"}, "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-46d86ec40876974d", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/narrative-retention.test.ts:53", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/narrative-retention.test.ts:53"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ba18a772f051ac05", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/agent-mode-service.test.ts:131", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/agent-mode-service.test.ts:131"}, "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-44a7e6b048a6e264", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-accreditation-store.test.ts:132", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-accreditation-store.test.ts:132"}, "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-adf566f73c10b0d7", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/layer3-service.test.ts:126", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/layer3-service.test.ts:126"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ed08f7700cd0c10e", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/philosophical-mode-service.test.ts:117", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/philosophical-mode-service.test.ts:117"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-718f498157969316", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/accreditation-store-k1-fields.test.ts:167", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/accreditation-store-k1-fields.test.ts:167"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d419d74ec6523b72", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/r20a-gate.test.ts:73", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/r20a-gate.test.ts:73"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b893c2d8063a4e7b", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/trajectory-overlay.test.ts:204", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/trajectory-overlay.test.ts:204"}, "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-515a444820a33cef", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/score-architecture.test.ts:109", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/score-architecture.test.ts:109"}, "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-817a8f6dd417ae93", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-accreditation-writer.test.ts:104", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-accreditation-writer.test.ts:104"}, "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-4a89e036ef15e7cb", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/agent-hand-back-report.test.ts:80", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/agent-hand-back-report.test.ts:80"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b728e78e626a16b9", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-tree-search-adapter.test.ts:49", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-tree-search-adapter.test.ts:49"}, "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-9788cfc24b7227fa", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-wrapper.test.ts:82", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-wrapper.test.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-f0108ebe0cedd779", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/substrate-audit-writer.test.ts:38", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/substrate-audit-writer.test.ts:38"}, "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-2032d977adaacb97", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/trust-layer/validation/__tests__/pass-through-fields.test.ts:11", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/trust-layer/validation/__tests__/pass-through-fields.test.ts:115"}, "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-d84f29b59c1e43be", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/trust-layer/accreditation/__tests__/coverage-status.test.ts:195", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/trust-layer/accreditation/__tests__/coverage-status.test.ts:195"}, "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-76f3e35281249ef3", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/trust-layer/accreditation/__tests__/agent-id-vocabulary.test.ts", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/trust-layer/accreditation/__tests__/agent-id-vocabulary.test.ts:163"}, "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-cd6c032a6f4ff341", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/cron/__tests__/observability-notify.test.ts:18", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/cron/__tests__/observability-notify.test.ts:18"}, "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-36b6cbd7136ed585", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/logging/__tests__/mentor-observation-logger.test.ts:218", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/logging/__tests__/mentor-observation-logger.test.ts:218"}, "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-ef9e137905732690", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/context/mentor-context-private.ts:193", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/context/mentor-context-private.ts:193"}, "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-7292108771dbe5de", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/admin-mint/__tests__/mint-credential-core.test.ts:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/admin-mint/__tests__/mint-credential-core.test.ts:43"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9ca96886584b8ac3", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/cost-alerts/__tests__/cost-alert-detector.test.ts:34", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/cost-alerts/__tests__/cost-alert-detector.test.ts:34"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0a144fad958273da", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/zone3-boundary.test.ts:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/zone3-boundary.test.ts:12"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8157c1b8811f3fc5", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/reflect-q5-ambiguity.test.ts:23", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/reflect-q5-ambiguity.test.ts:23"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b890ce06cb3fb899", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/engine.test.ts:48", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/engine.test.ts:48"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-eea5fe641cae6966", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/reflect-service.test.ts:25", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/reflect-service.test.ts:25"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2b1556a02f7530b0", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/sage-assent-feed.test.ts:40", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/sage-assent-feed.test.ts:40"}, "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-d9cdb6006b1a03f1", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/proximity-domains.test.ts:21", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/proximity-domains.test.ts:21"}, "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-c17994f746cfb4fe", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/reflect-cost-tracker.test.ts:33", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/reflect-cost-tracker.test.ts:33"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d7350ddd58fd76cd", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/r18d-adversarial.test.ts:38", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/r18d-adversarial.test.ts:38"}, "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-a54e011a0124d1a6", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/session-store.test.ts:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/session-store.test.ts: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-7de16038b33f1b83", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer2-verifier.test.ts:71", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer2-verifier.test.ts:71"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c3132abbd9710efe", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer2-signer.test.ts:357", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer2-signer.test.ts:357"}, "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-e74a4daaec5a42be", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer1-schema-additions.test.ts:95", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer1-schema-additions.test.ts:95"}, "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-5c84ec4a9a142e53", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer2-canonical-json.test.ts:296", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer2-canonical-json.test.ts:296"}, "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-27041ea9653c8445", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/reason-loop-closure.test.ts:282", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/reason-loop-closure.test.ts:282"}, "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-936412b0d9daa13c", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/prose-deferral.test.ts:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/prose-deferral.test.ts: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-1ac46778815b3ec1", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/injection-defence.test.ts:267", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/injection-defence.test.ts:267"}, "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-c8990040d9155e09", "name": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer3-injection-defence.test.ts:223", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer3-injection-defence.test.ts:223"}, "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-cba90b8e44bc6048", "name": "Insecure pattern 'direct_innerhtml_assignment' in SageReasoning_Ecosystem_Map.html:415", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in SageReasoning_Ecosystem_Map.html:415"}, "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-8e7244cc2609ee01", "name": "Insecure pattern 'cors_wildcard' in trust-layer/accreditation/public-endpoint.ts:163", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in trust-layer/accreditation/public-endpoint.ts:163"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ae808deec988570d", "name": "Insecure pattern 'new_function_used' in archive/2026-04-21-option-a-tmp-scripts/tmp_extract_flows.js:62", "shortDescription": {"text": "Insecure pattern 'new_function_used' in archive/2026-04-21-option-a-tmp-scripts/tmp_extract_flows.js:62"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4419a75f3b345e09", "name": "Insecure pattern 'direct_innerhtml_assignment' in archive/2026-04-21_inline-backups/SageReasoning_Architecture_Map.html:", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in archive/2026-04-21_inline-backups/SageReasoning_Architecture_Map.html:1231"}, "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-53cd3e5a0121e7c7", "name": "Insecure pattern 'direct_innerhtml_assignment' in archive/2026-04-21_inline-backups/website_public_SageReasoning_Archite", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in archive/2026-04-21_inline-backups/website_public_SageReasoning_Architecture_Map.html:1111"}, "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-1c83cc2707e85d27", "name": "Insecure pattern 'direct_innerhtml_assignment' in archive/2026-04-27_root-html-stale-copies/SageReasoning_Architecture_M", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in archive/2026-04-27_root-html-stale-copies/SageReasoning_Architecture_Map.html:505"}, "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-38d10197d6cc3715", "name": "Insecure pattern 'direct_innerhtml_assignment' in archive/2026-04-27_root-html-stale-copies/SageReasoning_Capability_Inv", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in archive/2026-04-27_root-html-stale-copies/SageReasoning_Capability_Inventory.html:338"}, "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-493a827c79e36000", "name": "Insecure pattern 'node_child_process' in operations/holdpoint-test-harness.mjs:19", "shortDescription": {"text": "Insecure pattern 'node_child_process' in operations/holdpoint-test-harness.mjs:19"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-effa30743fa5be13", "name": "Possible secret in operations/handoffs/founder/rectify-test.py", "shortDescription": {"text": "Possible secret in operations/handoffs/founder/rectify-test.py"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-3252d39f03b233c7", "name": "Possible secret in operations/handoffs/founder/access-test.py", "shortDescription": {"text": "Possible secret in operations/handoffs/founder/access-test.py"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-1aba65456e6a3ffa", "name": "Possible secret in operations/handoffs/founder/export-test.py", "shortDescription": {"text": "Possible secret in operations/handoffs/founder/export-test.py"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-63fcadcf51492cb7", "name": "Insecure pattern 'direct_innerhtml_assignment' in website/public/SageReasoning_Architecture_Map.html:555", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in website/public/SageReasoning_Architecture_Map.html:555"}, "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-c602ffc5e646096a", "name": "Insecure pattern 'direct_innerhtml_assignment' in website/public/SageReasoning_Ecosystem_Map.html:415", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in website/public/SageReasoning_Ecosystem_Map.html:415"}, "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-a865e2744616d11c", "name": "Insecure pattern 'direct_innerhtml_assignment' in website/public/SageReasoning_Capability_Inventory.html:367", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in website/public/SageReasoning_Capability_Inventory.html:367"}, "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-a5a3e8d5f98b19fa", "name": "Insecure pattern 'dangerous_innerhtml' in website/src/app/page.tsx:52", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in website/src/app/page.tsx:52"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-975cf8903cb02913", "name": "Insecure pattern 'dangerous_innerhtml' in website/src/app/score/page.tsx:281", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in website/src/app/score/page.tsx:281"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fd39caa8620c9d73", "name": "Insecure pattern 'dangerous_innerhtml' in website/src/app/api-docs/page.tsx:293", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in website/src/app/api-docs/page.tsx:293"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c1792808839893b7", "name": "Insecure pattern 'local_storage_auth_token' in website/src/app/auth/page.tsx:38", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in website/src/app/auth/page.tsx:38"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c0943b0e3911015a", "name": "Insecure pattern 'cors_wildcard' in website/src/app/api/practice/reflect/response-builders.ts:52", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in website/src/app/api/practice/reflect/response-builders.ts:52"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fc990dd2488d51a1", "name": "Insecure pattern 'cors_wildcard' in website/src/app/api/calling/response-builders.ts:55", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in website/src/app/api/calling/response-builders.ts:55"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-38b1922ef4d8b8dd", "name": "Insecure pattern 'cors_wildcard' in website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts:211", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts:211"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4616ff6763eb27aa", "name": "Insecure pattern 'local_storage_auth_token' in website/src/lib/supabase.ts:18", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in website/src/lib/supabase.ts:18"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b5048bae85e79602", "name": "Insecure pattern 'cors_wildcard' in website/src/lib/substrate/trust-layer/accreditation/public-endpoint.ts:189", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in website/src/lib/substrate/trust-layer/accreditation/public-endpoint.ts:189"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e57fd65081172984", "name": "Insecure pattern 'direct_innerhtml_assignment' in backup/2026-04-20_SageReasoning_Architecture_Map.html:1111", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in backup/2026-04-20_SageReasoning_Architecture_Map.html:1111"}, "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-3593425fdcb95fa1", "name": "Insecure pattern 'direct_innerhtml_assignment' in backup/2026-04-20_SageReasoning_Capability_Inventory.html:336", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in backup/2026-04-20_SageReasoning_Capability_Inventory.html:336"}, "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-dd07c77050ad9f2f", "name": "Insecure pattern 'direct_innerhtml_assignment' in .claude/skills/anthropic/skill-creator/assets/eval_review.html:69", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in .claude/skills/anthropic/skill-creator/assets/eval_review.html:69"}, "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-0b9879c4a4c7cffc", "name": "Insecure pattern 'direct_innerhtml_assignment' in .claude/skills/anthropic/skill-creator/eval-viewer/viewer.html:766", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in .claude/skills/anthropic/skill-creator/eval-viewer/viewer.html:766"}, "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-41567592a86858ea", "name": "Insecure pattern 'subprocess_shell_true' in .claude/skills/anthropic/webapp-testing/scripts/with_server.py:71", "shortDescription": {"text": "Insecure pattern 'subprocess_shell_true' in .claude/skills/anthropic/webapp-testing/scripts/with_server.py:71"}, "fullDescription": {"text": "Found a known-risky pattern (subprocess_shell_true). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6a707da326bbe2de", "name": "Insecure pattern 'direct_innerhtml_assignment' in prototypes/SageReasoning_Private_Mentor_Hub.html:1087", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in prototypes/SageReasoning_Private_Mentor_Hub.html:1087"}, "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-3965c04f1335314b", "name": "Insecure pattern 'direct_innerhtml_assignment' in prototypes/SageReasoning_Mentor_Hub.html:559", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in prototypes/SageReasoning_Mentor_Hub.html:559"}, "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-e6039ccb1d6e3ba4", "name": "Insecure pattern 'direct_innerhtml_assignment' in prototypes/SageReasoning_Sage_Ops_Hub.html:2519", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in prototypes/SageReasoning_Sage_Ops_Hub.html:2519"}, "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-cb639d9a10a47b23", "name": "package.json defines install-time lifecycle scripts", "shortDescription": {"text": "package.json defines install-time lifecycle scripts"}, "fullDescription": {"text": "preinstall/install/postinstall/prepare scripts execute during dependency installation. Review them carefully for network calls, obfuscation, shell execution, or credential access."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-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-a57564450cad361f", "name": "Very large file: sage-mentor/journal-interpreter.ts (1705 lines)", "shortDescription": {"text": "Very large file: sage-mentor/journal-interpreter.ts (1705 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-16d94098addcc202", "name": "Very large file: sage-mentor/mentor-ledger.ts (1305 lines)", "shortDescription": {"text": "Very large file: sage-mentor/mentor-ledger.ts (1305 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-0bcc7cf7734463d5", "name": "Very large file: website/scripts/verify-translation-sandwich.ts (3021 lines)", "shortDescription": {"text": "Very large file: website/scripts/verify-translation-sandwich.ts (3021 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-6973ac4ba029446e", "name": "Very large file: website/src/app/api/reason/route.ts (1732 lines)", "shortDescription": {"text": "Very large file: website/src/app/api/reason/route.ts (1732 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-d18e9f5a8969f8e4", "name": "Very large file: website/src/app/api/founder/hub/route.ts (1693 lines)", "shortDescription": {"text": "Very large file: website/src/app/api/founder/hub/route.ts (1693 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-3e4cccc9d34b4460", "name": "Very large file: website/src/app/private-mentor/page.tsx (1948 lines)", "shortDescription": {"text": "Very large file: website/src/app/private-mentor/page.tsx (1948 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-59eae5bcd5cae1e8", "name": "Very large file: website/src/app/ops-hub/page.tsx (2127 lines)", "shortDescription": {"text": "Very large file: website/src/app/ops-hub/page.tsx (2127 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-86d9028cb4a5e1cc", "name": "Very large file: website/src/lib/journal-content.ts (862 lines)", "shortDescription": {"text": "Very large file: website/src/lib/journal-content.ts (862 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-9d9e9cc1e2c496e2", "name": "Very large file: website/src/lib/substrate/philosophical-mode-service.ts (1540 lines)", "shortDescription": {"text": "Very large file: website/src/lib/substrate/philosophical-mode-service.ts (1540 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-9fd8474579524ed8", "name": "Very large file: website/src/lib/translation-sandwich/layer2-mechanisms.ts (2523 lines)", "shortDescription": {"text": "Very large file: website/src/lib/translation-sandwich/layer2-mechanisms.ts (2523 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-088727f43a93cf5f", "name": "Very large file: website/src/lib/translation-sandwich/parallel-run.ts (1299 lines)", "shortDescription": {"text": "Very large file: website/src/lib/translation-sandwich/parallel-run.ts (1299 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-3fd87b35b969c28d", "name": "Very large file: website/src/lib/translation-sandwich/layer1-extractor.ts (1814 lines)", "shortDescription": {"text": "Very large file: website/src/lib/translation-sandwich/layer1-extractor.ts (1814 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-73b6436f5fa67a5b", "name": "Very large file: website/src/lib/translation-sandwich/layer3-prose.ts (1336 lines)", "shortDescription": {"text": "Very large file: website/src/lib/translation-sandwich/layer3-prose.ts (1336 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": "101 tests / 480 src (ratio 0.21)."}, "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 1248 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 137 placeholder/mock markers across 51 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9d79c4077342a7d0", "name": "Runtime service client appears to use placeholder configuration", "shortDescription": {"text": "Runtime service client appears to use placeholder configuration"}, "fullDescription": {"text": "A runtime source file appears to wire Supabase/Firebase/AI/payment-style clients to placeholder URLs, keys, or fallback values. In the Fable corpus this often means the UI/API shape is present while the backend service is not actually configured."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-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-4f2e7fbc2a240bb6", "name": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/SKILL.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/SKILL.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bbf0f6da2750b5e1", "name": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/php/managed-agents/README.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/php/managed-agents/README.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-15eb3a612552d85d", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/php/managed-agents/README.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/php/managed-agents/README.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bcb940f300c65d9c", "name": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/ruby/managed-agents/README.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/ruby/managed-agents/README.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ded7426a2a18a1e2", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/ruby/managed-agents/README.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/ruby/managed-agents/README.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-92049b12940c30f8", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/models.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/models.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-8258f576c0922aad", "name": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/shared/model-migration.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/shared/model-migration.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2db84fd0cb31b87a", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-tools.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-tools.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-092c500ae88c848b", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-events.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-events.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-cde7d3a533c172a1", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-memory.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-memory.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-cf07131852c77fb3", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-environments.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-environments.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-9f9f4836151cb735", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-client-patterns.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-client-patterns.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-c1501c8b6e1e0f8c", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-core.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-core.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-4767a5d527326d78", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/typescript/claude-api/tool-use.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/typescript/claude-api/tool-use.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-aa4dcc7c61f849db", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/typescript/claude-api/streaming.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/typescript/claude-api/streaming.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-a23b997794c83b98", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/typescript/claude-api/files-api.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/typescript/claude-api/files-api.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-7f752c8a3016fdc3", "name": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/csharp/claude-api.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/csharp/claude-api.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ab29908a7bc19599", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/python/claude-api/tool-use.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/python/claude-api/tool-use.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-9b007cfe443870cb", "name": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/python/claude-api/streaming.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/python/claude-api/streaming.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f811023030457a0f", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/python/claude-api/files-api.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/python/claude-api/files-api.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-97446e33def7ea2a", "name": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/java/claude-api.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/java/claude-api.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1ea004cf77ce5645", "name": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/go/managed-agents/README.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/go/managed-agents/README.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c96b4e1103caecea", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/go/managed-agents/README.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/go/managed-agents/README.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f2d3780940bef016", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/skill-creator/references/schemas.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/skill-creator/references/schemas.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-ad9f555e87c4ca6a", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/skill-creator/agents/comparator.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/skill-creator/agents/comparator.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-e4e80c55f821b356", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/slack-gif-creator/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/slack-gif-creator/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-ce8798b6737b8cfb", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/docx/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/docx/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-f2c0e976881bad36", "name": "Agent instruction contains unpinned remote install: .claude/skills/anthropic/docx/SKILL.md", "shortDescription": {"text": "Agent instruction contains unpinned remote install: .claude/skills/anthropic/docx/SKILL.md"}, "fullDescription": {"text": "Remote install commands in agent instructions are a supply-chain risk, especially when an agent can execute shell commands."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ebdd6a187b16c4b4", "name": "Agent instruction contains unpinned remote install: .claude/skills/anthropic/pptx/pptxgenjs.md", "shortDescription": {"text": "Agent instruction contains unpinned remote install: .claude/skills/anthropic/pptx/pptxgenjs.md"}, "fullDescription": {"text": "Remote install commands in agent instructions are a supply-chain risk, especially when an agent can execute shell commands."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-04f325332b1c67f7", "name": "Agent instruction contains unpinned remote install: .claude/skills/anthropic/pptx/SKILL.md", "shortDescription": {"text": "Agent instruction contains unpinned remote install: .claude/skills/anthropic/pptx/SKILL.md"}, "fullDescription": {"text": "Remote install commands in agent instructions are a supply-chain risk, especially when an agent can execute shell commands."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1b3093538fabc807", "name": "Agent authority lacks a verifier contract: .claude/skills/anthropic/pdf/reference.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/pdf/reference.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-59bad6a1929fc92c", "name": "Commented-code block (7 lines) in sage-mentor/persona.ts:119", "shortDescription": {"text": "Commented-code block (7 lines) in sage-mentor/persona.ts:119"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-aa4578cbae8f93eb", "name": "Commented-code block (5 lines) in sage-mentor/profile-store.ts:781", "shortDescription": {"text": "Commented-code block (5 lines) in sage-mentor/profile-store.ts:781"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5d10cb63a4a3d23b", "name": "Commented-code block (6 lines) in sage-mentor/support-agent.ts:54", "shortDescription": {"text": "Commented-code block (6 lines) in sage-mentor/support-agent.ts:54"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d5c0ad39928a20ff", "name": "Commented-code block (6 lines) in sage-mentor/ring-wrapper.ts:144", "shortDescription": {"text": "Commented-code block (6 lines) in sage-mentor/ring-wrapper.ts:144"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9e7ee2b30cb10f0a", "name": "Commented-code block (5 lines) in sage-mentor/proactive-scheduler.ts:431", "shortDescription": {"text": "Commented-code block (5 lines) in sage-mentor/proactive-scheduler.ts:431"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-812135447298ad46", "name": "Commented-code block (11 lines) in trust-layer/types/accreditation.ts:126", "shortDescription": {"text": "Commented-code block (11 lines) in trust-layer/types/accreditation.ts:126"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-443438d86438b4e0", "name": "`fetch()` without try/.catch or AbortSignal \u2014 engineering/pmf-assessment-agent.js:267", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 engineering/pmf-assessment-agent.js:267"}, "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-021e535be8aa0145", "name": "Commented-code block (5 lines) in archive/2026-04-21_inline-backups/ops-continuity-state-b2.ts:158", "shortDescription": {"text": "Commented-code block (5 lines) in archive/2026-04-21_inline-backups/ops-continuity-state-b2.ts:158"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-291e113c0556f112", "name": "Commented-code block (5 lines) in archive/2026-04-22_inline-backups/ops-continuity-state.ts:183", "shortDescription": {"text": "Commented-code block (5 lines) in archive/2026-04-22_inline-backups/ops-continuity-state.ts:183"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-13b2dd40c294e0dc", "name": "Network/subprocess call without timeout or try/except \u2014 operations/handoffs/founder/journal-encryption-test.py:54", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 operations/handoffs/founder/journal-encryption-test.py:54"}, "fullDescription": {"text": "`urllib.request.urlopen(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-66d15c9c030d3428", "name": "Network/subprocess call without timeout or try/except \u2014 operations/handoffs/founder/rectify-test.py:49", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 operations/handoffs/founder/rectify-test.py:49"}, "fullDescription": {"text": "`urllib.request.urlopen(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7a1c46ef6cb90836", "name": "Commented-code block (10 lines) in operations/migrations/2026-05-03-corpus-passages-population.mjs:10", "shortDescription": {"text": "Commented-code block (10 lines) in operations/migrations/2026-05-03-corpus-passages-population.mjs:10"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2503e6b7a60121dd", "name": "Commented-code block (9 lines) in operations/migrations/2026-05-04-corpus-passages-embeddings.mjs:10", "shortDescription": {"text": "Commented-code block (9 lines) in operations/migrations/2026-05-04-corpus-passages-embeddings.mjs:10"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-77153d56b8a9f121", "name": "Commented-code block (10 lines) in operations/migrations/2026-05-03-d-a16-catalogue-population.mjs:5", "shortDescription": {"text": "Commented-code block (10 lines) in operations/migrations/2026-05-03-d-a16-catalogue-population.mjs: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-cafabc8e8961e472", "name": "Commented-code block (7 lines) in scripts/mentor-ring-proof-verification.mjs:147", "shortDescription": {"text": "Commented-code block (7 lines) in scripts/mentor-ring-proof-verification.mjs:147"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d8d529574c57d9e8", "name": "Commented-code block (5 lines) in scripts/ops-wiring-verification.mjs:341", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/ops-wiring-verification.mjs:341"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3adc06a9bdb7bd08", "name": "Commented-code block (9 lines) in scripts/support-wiring-verification.mjs:51", "shortDescription": {"text": "Commented-code block (9 lines) in scripts/support-wiring-verification.mjs:51"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-02bede926428ebf6", "name": "Commented-code block (6 lines) in website/scripts/verify-reason-rag.ts:675", "shortDescription": {"text": "Commented-code block (6 lines) in website/scripts/verify-reason-rag.ts:675"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5ecd9e332c7d7d51", "name": "Commented-code block (5 lines) in website/scripts/verify-translation-sandwich.ts:121", "shortDescription": {"text": "Commented-code block (5 lines) in website/scripts/verify-translation-sandwich.ts:121"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7f4117c3d2479bbf", "name": "Commented-code block (5 lines) in website/scripts/whole-system-harness/run-c2.ts:222", "shortDescription": {"text": "Commented-code block (5 lines) in website/scripts/whole-system-harness/run-c2.ts:222"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1e92948ec1a14892", "name": "Commented-code block (5 lines) in website/scripts/whole-system-harness/run-l2.ts:144", "shortDescription": {"text": "Commented-code block (5 lines) in website/scripts/whole-system-harness/run-l2.ts:144"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5e2ebaebe83f2d12", "name": "Commented-code block (5 lines) in website/scripts/whole-system-harness/run-r20a-gate-probe.ts:256", "shortDescription": {"text": "Commented-code block (5 lines) in website/scripts/whole-system-harness/run-r20a-gate-probe.ts:256"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d824cf9a9c28d56e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/scripts/whole-system-harness/lib/http-client.ts:52", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/scripts/whole-system-harness/lib/http-client.ts:52"}, "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-6d1898e2d4fb670a", "name": "Commented-code block (6 lines) in website/scripts/whole-system-harness/lib/calling-driver.ts:165", "shortDescription": {"text": "Commented-code block (6 lines) in website/scripts/whole-system-harness/lib/calling-driver.ts:165"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f7cdea4902e30bc6", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/components/PracticeCalendar.tsx:71", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/components/PracticeCalendar.tsx:71"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-028f9c99981b5cb2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/components/MilestonesDisplay.tsx:23", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/components/MilestonesDisplay.tsx:23"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d1596db8d9b575c4", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/auth/page.tsx:58", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/auth/page.tsx:58"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a67dfc172d74d4a9", "name": "Commented-code block (6 lines) in website/src/app/api/__tests__/r20a-configuration-flows.test.ts:185", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/__tests__/r20a-configuration-flows.test.ts:185"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1b263038b52d4b52", "name": "Commented-code block (5 lines) in website/src/app/api/mentor-journal-week/route.ts:31", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/app/api/mentor-journal-week/route.ts:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-46cfce477095c3e5", "name": "Commented-code block (5 lines) in website/src/app/api/score-iterate/route.ts:12", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/app/api/score-iterate/route.ts:12"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7f95350955bd5492", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/api/score-iterate/route.ts:774", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/api/score-iterate/route.ts:774"}, "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-db7a8e3814f5ff69", "name": "Commented-code block (7 lines) in website/src/app/api/public-key/route.ts:13", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/app/api/public-key/route.ts:13"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eb8468b6a723f405", "name": "Commented-code block (12 lines) in website/src/app/api/usage/route.ts:63", "shortDescription": {"text": "Commented-code block (12 lines) in website/src/app/api/usage/route.ts:63"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-07e5dc389a72efce", "name": "Commented-code block (7 lines) in website/src/app/api/journal/route.ts:46", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/app/api/journal/route.ts:46"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4f0d49de0df71d43", "name": "Commented-code block (7 lines) in website/src/app/api/internal/retrieve/route.ts:23", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/app/api/internal/retrieve/route.ts:23"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1caedae58a9f8cad", "name": "Commented-code block (8 lines) in website/src/app/api/mentor-profile/route.ts:21", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/app/api/mentor-profile/route.ts:21"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b0586cd92f47073f", "name": "Commented-code block (8 lines) in website/src/app/api/billing/usage-summary/route.ts:97", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/app/api/billing/usage-summary/route.ts:97"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-61d4ae4e977fd36e", "name": "Commented-code block (8 lines) in website/src/app/api/billing/cost-alerts/evaluate/route.ts:87", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/app/api/billing/cost-alerts/evaluate/route.ts:87"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ae010174e1f2749d", "name": "Commented-code block (6 lines) in website/src/app/api/admin/accreditation-credentials/route.ts:66", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/admin/accreditation-credentials/route.ts:66"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-accb0d22146f3ee5", "name": "Legacy-named symbol `agent_acme_v1` in website/src/app/api/admin/accreditation-credentials/__tests__/route.test.ts:77", "shortDescription": {"text": "Legacy-named symbol `agent_acme_v1` in website/src/app/api/admin/accreditation-credentials/__tests__/route.test.ts:77"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-441f1776f9002232", "name": "Commented-code block (8 lines) in website/src/app/api/admin/api-keys/route.ts:87", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/app/api/admin/api-keys/route.ts:87"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c3723ecf2483744c", "name": "Commented-code block (6 lines) in website/src/app/api/admin/plugin-install-credentials/route.ts:75", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/admin/plugin-install-credentials/route.ts:75"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7a5d4f028007d0b4", "name": "Commented-code block (5 lines) in website/src/app/api/reason/route.ts:16", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/app/api/reason/route.ts:16"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5578e18c7b40fdd4", "name": "Commented-code block (6 lines) in website/src/app/api/practice/reflect/route.ts:87", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/practice/reflect/route.ts:87"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-119a8fcbd55b2ef8", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/api/practice/reflect/route.ts:315", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/api/practice/reflect/route.ts:315"}, "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-d2f5d472997b8eae", "name": "Commented-code block (6 lines) in website/src/app/api/practice/reflect/response-builders.ts:26", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/practice/reflect/response-builders.ts:26"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1e0855a8c30922e1", "name": "Commented-code block (8 lines) in website/src/app/api/practice/reflect/__tests__/r20a-invocation.test.ts:494", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/app/api/practice/reflect/__tests__/r20a-invocation.test.ts:494"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-367bdd435d468272", "name": "Commented-code block (5 lines) in website/src/app/api/reflect/route.ts:228", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/app/api/reflect/route.ts:228"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9e23c0958a64f163", "name": "Commented-code block (10 lines) in website/src/app/api/keys/route.ts:36", "shortDescription": {"text": "Commented-code block (10 lines) in website/src/app/api/keys/route.ts:36"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-203c228ff78fa196", "name": "Commented-code block (6 lines) in website/src/app/api/score-scenario/route.ts:189", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/score-scenario/route.ts:189"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b2dfe2f7ab720172", "name": "Commented-code block (6 lines) in website/src/app/api/substrate/layer3/route.ts:15", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/substrate/layer3/route.ts:15"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-76aca6e797e0b906", "name": "Commented-code block (5 lines) in website/src/app/api/score-decision/route.ts:142", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/app/api/score-decision/route.ts:142"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5182f2aefdd010e3", "name": "Commented-code block (5 lines) in website/src/app/api/cron/narrative-sweep/route.ts:70", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/app/api/cron/narrative-sweep/route.ts:70"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-30b5134e71102482", "name": "Commented-code block (5 lines) in website/src/app/api/cron/trajectory-retention-sweep/__tests__/route.test.ts:145", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/app/api/cron/trajectory-retention-sweep/__tests__/route.test.ts:145"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f6401bd8a2055735", "name": "Commented-code block (5 lines) in website/src/app/api/calling/route.ts:90", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/app/api/calling/route.ts:90"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d25ca171c3d68f2f", "name": "Commented-code block (6 lines) in website/src/app/api/calling/response-builders.ts:29", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/calling/response-builders.ts:29"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9d92d551d58cb837", "name": "Commented-code block (6 lines) in website/src/app/api/calling/approve/route.ts:90", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/calling/approve/route.ts:90"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f4d3fc17f6add321", "name": "Commented-code block (7 lines) in website/src/app/api/mentor-appendix/route.ts:31", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/app/api/mentor-appendix/route.ts:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-88ad5821c0ba2a2f", "name": "Commented-code block (10 lines) in website/src/app/api/user/delete/route.ts:62", "shortDescription": {"text": "Commented-code block (10 lines) in website/src/app/api/user/delete/route.ts:62"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-83e528dfc2283270", "name": "Commented-code block (5 lines) in website/src/app/api/user/rectify/route.ts:156", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/app/api/user/rectify/route.ts:156"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a855d9777559dddd", "name": "Commented-code block (6 lines) in website/src/app/api/user/export/route.ts:118", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/user/export/route.ts:118"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a64683e74f295da4", "name": "Commented-code block (8 lines) in website/src/app/api/mentor/private/baseline-response/route.ts:31", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/app/api/mentor/private/baseline-response/route.ts:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-07bf6212a35f4f4e", "name": "Commented-code block (12 lines) in website/src/app/api/mentor/private/reflect/route.ts:24", "shortDescription": {"text": "Commented-code block (12 lines) in website/src/app/api/mentor/private/reflect/route.ts:24"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c1f57ed3e966d072", "name": "Commented-code block (7 lines) in website/src/app/api/mentor/journal-feed/route.ts:77", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/app/api/mentor/journal-feed/route.ts:77"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-78b59247ff37c174", "name": "Commented-code block (7 lines) in website/src/app/api/mentor/ring/proof/route.ts:130", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/app/api/mentor/ring/proof/route.ts:130"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f39d3fa098909e4c", "name": "Commented-code block (7 lines) in website/src/app/api/skill/sage-classify/route.ts:38", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/app/api/skill/sage-classify/route.ts:38"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d41471d258f479dc", "name": "Commented-code block (8 lines) in website/src/app/api/skill/sage-prioritise/route.ts:45", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/app/api/skill/sage-prioritise/route.ts:45"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-46f5dc58d518f62f", "name": "Commented-code block (7 lines) in website/src/app/api/accreditation/[agent_id]/route.ts:243", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/app/api/accreditation/[agent_id]/route.ts:243"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-139ddd5ca0dfc336", "name": "Commented-code block (7 lines) in website/src/app/api/accreditation/[agent_id]/response-builders.ts:209", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/app/api/accreditation/[agent_id]/response-builders.ts:209"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-784279decda5da46", "name": "Legacy-named symbol `agent_test_v1` in website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts:130", "shortDescription": {"text": "Legacy-named symbol `agent_test_v1` in website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts:130"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1620175bcda28c68", "name": "Commented-code block (6 lines) in website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts:420", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts:420"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cbaced531bed13c6", "name": "Commented-code block (8 lines) in website/src/app/api/founder/hub/route.ts:46", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/app/api/founder/hub/route.ts:46"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b6503ce9df8d10e9", "name": "Commented-code block (6 lines) in website/src/app/api/abuse/evaluate/route.ts:89", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/abuse/evaluate/route.ts:89"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-af67426370480904", "name": "Commented-code block (6 lines) in website/src/app/api/mentor-baseline-response/route.ts:21", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/app/api/mentor-baseline-response/route.ts:21"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0a1ab365559f6174", "name": "Commented-code block (7 lines) in website/src/app/api/webhooks/stripe/route.ts:448", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/app/api/webhooks/stripe/route.ts:448"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a47ad9bcee735b08", "name": "Commented-code block (5 lines) in website/src/app/api/guardrail/route.ts:88", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/app/api/guardrail/route.ts:88"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-da8697c8e199a0e1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/api/guardrail/route.ts:392", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/api/guardrail/route.ts:392"}, "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-bac74f00f4857fbb", "name": "Commented-code block (8 lines) in website/src/app/mentor-baseline/refinements/page.tsx:11", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/app/mentor-baseline/refinements/page.tsx:11"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d10ac61f78f6b4cd", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/community/page.tsx:73", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/community/page.tsx:73"}, "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-292a9b07760a75b6", "name": "Commented-code block (8 lines) in website/src/app/admin/test-reason/page.tsx:40", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/app/admin/test-reason/page.tsx:40"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e6e21d27646823d2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/admin/test-reason/page.tsx:12", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/admin/test-reason/page.tsx: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-8cddbb667e2bb3d1", "name": "Commented-code block (10 lines) in website/src/app/mentor-hub/page.tsx:132", "shortDescription": {"text": "Commented-code block (10 lines) in website/src/app/mentor-hub/page.tsx:132"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-147e0ec933805455", "name": "Commented-code block (7 lines) in website/src/app/ops-hub/page.tsx:383", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/app/ops-hub/page.tsx:383"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-65e31c2d63eac52c", "name": "Commented-code block (5 lines) in website/src/lib/security.ts:269", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/security.ts:269"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c99fc3344a386558", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/lib/loop-cost-tracker.ts:449", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/lib/loop-cost-tracker.ts:449"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-494432bda0cc9c55", "name": "Commented-code block (6 lines) in website/src/lib/json-utils.ts:60", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/json-utils.ts:60"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-929f788391eb2da0", "name": "Commented-code block (5 lines) in website/src/lib/sage-reason-engine.ts:385", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/sage-reason-engine.ts:385"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ff0e9f00bd2c5dc8", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/lib/auth-fetch.ts:27", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/lib/auth-fetch.ts:27"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6347cfd4240ff8e2", "name": "Commented-code block (18 lines) in website/src/lib/skill-registry.ts:757", "shortDescription": {"text": "Commented-code block (18 lines) in website/src/lib/skill-registry.ts:757"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-815ff1b0afcd0a9a", "name": "Commented-code block (5 lines) in website/src/lib/stoic-brain.ts:755", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/stoic-brain.ts:755"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-546acb0ef971f3ec", "name": "Commented-code block (9 lines) in website/src/lib/mentor-profile-store.ts:159", "shortDescription": {"text": "Commented-code block (9 lines) in website/src/lib/mentor-profile-store.ts:159"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-81f8785cccacc940", "name": "Commented-code block (5 lines) in website/src/lib/consumer-erasure.ts:132", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/consumer-erasure.ts:132"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-414b3b888cef443c", "name": "Commented-code block (8 lines) in website/src/lib/mentor-profile-adapter.ts:59", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/lib/mentor-profile-adapter.ts:59"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a38fae7273369f07", "name": "Commented-code block (5 lines) in website/src/lib/deliberation.ts:345", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/deliberation.ts:345"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b1e46e29223d21c7", "name": "Commented-code block (6 lines) in website/src/lib/__tests__/r20a-invocation-guard.test.ts:51", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/__tests__/r20a-invocation-guard.test.ts:51"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-601fbdf9e2ff72d5", "name": "Commented-code block (6 lines) in website/src/lib/__tests__/response-envelope-ci8.test.ts:98", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/__tests__/response-envelope-ci8.test.ts:98"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9edef29ad5a9328e", "name": "Commented-code block (5 lines) in website/src/lib/__tests__/r20a-classifier-eval.ts:103", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/__tests__/r20a-classifier-eval.ts:103"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-25c9957716deef54", "name": "Commented-code block (7 lines) in website/src/lib/__tests__/sage-reason-composition-order.test.ts:34", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/lib/__tests__/sage-reason-composition-order.test.ts:34"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f75588ba4d375508", "name": "Legacy-named symbol `resolvedLegacy` in website/src/lib/__tests__/journal-encryption.test.ts:82", "shortDescription": {"text": "Legacy-named symbol `resolvedLegacy` in website/src/lib/__tests__/journal-encryption.test.ts:82"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-25427b01ea286d8f", "name": "Legacy-named symbol `agent_acme_v1` in website/src/lib/__tests__/security.test.ts:63", "shortDescription": {"text": "Legacy-named symbol `agent_acme_v1` in website/src/lib/__tests__/security.test.ts:63"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f7fcba2c20096b75", "name": "Commented-code block (5 lines) in website/src/lib/__tests__/mentor-profile-summary.test.ts:33", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/__tests__/mentor-profile-summary.test.ts:33"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2170719ee9ee2eb3", "name": "Commented-code block (5 lines) in website/src/lib/__tests__/ci9-cache-mechanism.test.ts:57", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/__tests__/ci9-cache-mechanism.test.ts:57"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-18b6e5bb7bc0413b", "name": "Commented-code block (5 lines) in website/src/lib/__tests__/run-zone2-calibration-eval.ts:42", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/__tests__/run-zone2-calibration-eval.ts:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2dc91bf67f00eb7e", "name": "Commented-code block (7 lines) in website/src/lib/abuse-detection/abuse-detector.ts:146", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/lib/abuse-detection/abuse-detector.ts:146"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c4cfcc177af64c88", "name": "Commented-code block (7 lines) in website/src/lib/abuse-detection/abuse-thresholds.ts:37", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/lib/abuse-detection/abuse-thresholds.ts:37"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fccee44019003efb", "name": "Commented-code block (6 lines) in website/src/lib/sage-calling/session-store.ts:103", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/sage-calling/session-store.ts:103"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2b29b07a31f88c21", "name": "Commented-code block (6 lines) in website/src/lib/sage-calling/agent-card.ts:130", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/sage-calling/agent-card.ts:130"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ebe5db23ee5ca998", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/lib/sage-calling/agent-card.ts:12", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/lib/sage-calling/agent-card.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-3fdbe2802c9de8d8", "name": "Commented-code block (5 lines) in website/src/lib/sage-calling/engine.ts:162", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/sage-calling/engine.ts:162"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d6b6d6b2b7dd31ce", "name": "Legacy-named symbol `agent_acme_v1` in website/src/lib/sage-calling/__tests__/session-store.test.ts:61", "shortDescription": {"text": "Legacy-named symbol `agent_acme_v1` in website/src/lib/sage-calling/__tests__/session-store.test.ts:61"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be92031039dbf010", "name": "Legacy-named symbol `withOld` in website/src/lib/slo/__tests__/slo-stats.test.ts:57", "shortDescription": {"text": "Legacy-named symbol `withOld` in website/src/lib/slo/__tests__/slo-stats.test.ts:57"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-44ed04688b0c6ad4", "name": "Commented-code block (12 lines) in website/src/lib/substrate/agent-mode-service.ts:164", "shortDescription": {"text": "Commented-code block (12 lines) in website/src/lib/substrate/agent-mode-service.ts:164"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cc0e18f8c2a565c3", "name": "Commented-code block (11 lines) in website/src/lib/substrate/r20a-gate.ts:158", "shortDescription": {"text": "Commented-code block (11 lines) in website/src/lib/substrate/r20a-gate.ts:158"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b68ef709de09c2bc", "name": "Commented-code block (8 lines) in website/src/lib/substrate/sage-assent-accreditation-store.ts:542", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/lib/substrate/sage-assent-accreditation-store.ts:542"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5b858b4d355e08eb", "name": "Commented-code block (6 lines) in website/src/lib/substrate/agent-assessment-history-store.ts:56", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/substrate/agent-assessment-history-store.ts:56"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2e4d79e6483fa0f7", "name": "Commented-code block (11 lines) in website/src/lib/substrate/sage-assent-wrapper.ts:214", "shortDescription": {"text": "Commented-code block (11 lines) in website/src/lib/substrate/sage-assent-wrapper.ts:214"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6bc3097b362a41b3", "name": "Commented-code block (5 lines) in website/src/lib/substrate/sage-assent-iteration-patterns.ts:182", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/substrate/sage-assent-iteration-patterns.ts:182"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0743b183e17f75bb", "name": "Commented-code block (7 lines) in website/src/lib/substrate/sage-assent-bridge.ts:79", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/lib/substrate/sage-assent-bridge.ts:79"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ad1d504e2683edde", "name": "Commented-code block (6 lines) in website/src/lib/substrate/layer3-service.ts:142", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/substrate/layer3-service.ts:142"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5feb01d044f3479a", "name": "Commented-code block (6 lines) in website/src/lib/substrate/score-architecture.ts:174", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/substrate/score-architecture.ts:174"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-89124c4878715bae", "name": "Commented-code block (5 lines) in website/src/lib/substrate/philosophical-mode-service.ts:174", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/substrate/philosophical-mode-service.ts:174"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-39f6e944d09ba363", "name": "Commented-code block (5 lines) in website/src/lib/substrate/__tests__/agent-assessment-history-store.test.ts:588", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/substrate/__tests__/agent-assessment-history-store.test.ts:588"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-218aead1fc1041a5", "name": "Commented-code block (5 lines) in website/src/lib/substrate/__tests__/sage-assent-iteration-patterns.test.ts:144", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/substrate/__tests__/sage-assent-iteration-patterns.test.ts:144"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-750ffec555057522", "name": "Commented-code block (15 lines) in website/src/lib/substrate/__tests__/philosophical-mode-service.test.ts:585", "shortDescription": {"text": "Commented-code block (15 lines) in website/src/lib/substrate/__tests__/philosophical-mode-service.test.ts:585"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-931f96421f64dbca", "name": "Commented-code block (7 lines) in website/src/lib/substrate/__tests__/accreditation-store-k1-fields.test.ts:143", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/lib/substrate/__tests__/accreditation-store-k1-fields.test.ts:143"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d5cd42bf63a09b45", "name": "Commented-code block (5 lines) in website/src/lib/substrate/__tests__/r20a-gate.test.ts:470", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/substrate/__tests__/r20a-gate.test.ts: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-8b7184882e9f90b0", "name": "Legacy-named symbol `agent_test_v1` in website/src/lib/substrate/__tests__/sage-assent-accreditation-writer.test.ts:185", "shortDescription": {"text": "Legacy-named symbol `agent_test_v1` in website/src/lib/substrate/__tests__/sage-assent-accreditation-writer.test.ts:185"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-de99ccf5ee23f6bf", "name": "Legacy-named symbol `agent_handback_test_v1` in website/src/lib/substrate/__tests__/agent-hand-back-report.test.ts:262", "shortDescription": {"text": "Legacy-named symbol `agent_handback_test_v1` in website/src/lib/substrate/__tests__/agent-hand-back-report.test.ts:262"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-19c6274219c870d9", "name": "Commented-code block (9 lines) in website/src/lib/substrate/trust-layer/types/accreditation.ts:47", "shortDescription": {"text": "Commented-code block (9 lines) in website/src/lib/substrate/trust-layer/types/accreditation.ts:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-812ddc32710eea46", "name": "Commented-code block (15 lines) in website/src/lib/substrate/trust-layer/types/evaluation.ts:107", "shortDescription": {"text": "Commented-code block (15 lines) in website/src/lib/substrate/trust-layer/types/evaluation.ts:107"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-24ad5113e4be8592", "name": "Commented-code block (5 lines) in website/src/lib/substrate/trust-layer/validation/pass-through-fields.ts:158", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/substrate/trust-layer/validation/pass-through-fields.ts:158"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8ea6062ee4bb334a", "name": "Legacy-named symbol `agent_test_v1` in website/src/lib/substrate/trust-layer/accreditation/__tests__/agent-id-vocabulary", "shortDescription": {"text": "Legacy-named symbol `agent_test_v1` in website/src/lib/substrate/trust-layer/accreditation/__tests__/agent-id-vocabulary.test.ts:70"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d5c36ddfc262ba4d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/lib/cron/observability-notify.ts:7", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/lib/cron/observability-notify.ts:7"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5e6eeb1bddf5e32d", "name": "Commented-code block (8 lines) in website/src/lib/logging/mentor-observation-logger.ts:146", "shortDescription": {"text": "Commented-code block (8 lines) in website/src/lib/logging/mentor-observation-logger.ts:146"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e4147b4e565b2d78", "name": "Commented-code block (9 lines) in website/src/lib/logging/__tests__/mentor-observation-logger.test.ts:180", "shortDescription": {"text": "Commented-code block (9 lines) in website/src/lib/logging/__tests__/mentor-observation-logger.test.ts:180"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2df58a79d2ed6d6e", "name": "Commented-code block (5 lines) in website/src/lib/context/ops-continuity-state.ts:183", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/context/ops-continuity-state.ts:183"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2b12c12ea65346c4", "name": "Commented-code block (5 lines) in website/src/lib/context/mentor-context-private.ts:92", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/context/mentor-context-private.ts: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-5a97786f3beb826b", "name": "Commented-code block (5 lines) in website/src/lib/context/practitioner-context.ts:205", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/context/practitioner-context.ts:205"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ae1b2a371df81a30", "name": "Legacy-named symbol `agent_test_v1` in website/src/lib/admin-mint/__tests__/mint-credential-core.test.ts:165", "shortDescription": {"text": "Legacy-named symbol `agent_test_v1` in website/src/lib/admin-mint/__tests__/mint-credential-core.test.ts:165"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-62ac404f81b5179c", "name": "Commented-code block (6 lines) in website/src/lib/cost-alerts/cost-alert-detector.ts:227", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/cost-alerts/cost-alert-detector.ts:227"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ff638975fb4e0e4b", "name": "Commented-code block (6 lines) in website/src/lib/sage-reflect/sage-assent-feed.ts:231", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/sage-reflect/sage-assent-feed.ts:231"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-35e6c580cfa28a16", "name": "Commented-code block (5 lines) in website/src/lib/sage-reflect/session-store.ts:144", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/sage-reflect/session-store.ts:144"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b96630519a0b90e5", "name": "Commented-code block (7 lines) in website/src/lib/sage-reflect/reflect-service.ts:79", "shortDescription": {"text": "Commented-code block (7 lines) in website/src/lib/sage-reflect/reflect-service.ts:79"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-999f0afb2dab6dcd", "name": "Legacy-named symbol `agent_acme_v1` in website/src/lib/sage-reflect/__tests__/sage-assent-feed.test.ts:73", "shortDescription": {"text": "Legacy-named symbol `agent_acme_v1` in website/src/lib/sage-reflect/__tests__/sage-assent-feed.test.ts:73"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-541830163139927d", "name": "Legacy-named symbol `agent_acme_v1` in website/src/lib/sage-reflect/__tests__/session-store.test.ts:58", "shortDescription": {"text": "Legacy-named symbol `agent_acme_v1` in website/src/lib/sage-reflect/__tests__/session-store.test.ts: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-b0cf0549d4114489", "name": "Commented-code block (5 lines) in website/src/lib/translation-sandwich/layer2-mechanisms.ts:1742", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/translation-sandwich/layer2-mechanisms.ts:1742"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5b053e0910412988", "name": "Commented-code block (6 lines) in website/src/lib/translation-sandwich/parallel-run.ts:63", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/translation-sandwich/parallel-run.ts:63"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ccbb6c88c9cd88af", "name": "Commented-code block (6 lines) in website/src/lib/translation-sandwich/layer1-extractor.ts:239", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/translation-sandwich/layer1-extractor.ts:239"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8d6fea5cc9099e14", "name": "Commented-code block (6 lines) in website/src/lib/translation-sandwich/layer3-prose.ts:585", "shortDescription": {"text": "Commented-code block (6 lines) in website/src/lib/translation-sandwich/layer3-prose.ts:585"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ec3b861a1bf7dfb0", "name": "Commented-code block (5 lines) in website/src/lib/translation-sandwich/__tests__/layer1-schema-additions.test.ts:407", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/translation-sandwich/__tests__/layer1-schema-additions.test.ts:407"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a8424ee4fac4489b", "name": "Commented-code block (5 lines) in website/src/lib/translation-sandwich/__tests__/layer3-injection-defence.test.ts:54", "shortDescription": {"text": "Commented-code block (5 lines) in website/src/lib/translation-sandwich/__tests__/layer3-injection-defence.test.ts:54"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f778729f701fab37", "name": "Commented-code block (5 lines) in .claude/skills/anthropic/skill-creator/scripts/improve_description.py:158", "shortDescription": {"text": "Commented-code block (5 lines) in .claude/skills/anthropic/skill-creator/scripts/improve_description.py:158"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b055337e097cc377", "name": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/skill-creator/scripts/run_eval.py:85", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/skill-creator/scripts/run_eval.py:85"}, "fullDescription": {"text": "`subprocess.Popen(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-763ff7ed62fbb069", "name": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/docx/scripts/office/soffice.py:14", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/docx/scripts/office/soffice.py:14"}, "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-5eec7fb7b846de99", "name": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/docx/scripts/office/validators/redlinin", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/docx/scripts/office/validators/redlining.py:138"}, "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-268bbd6458af3cb3", "name": "Legacy-named symbol `xml_copy` in .claude/skills/anthropic/docx/scripts/office/validators/base.py:705", "shortDescription": {"text": "Legacy-named symbol `xml_copy` in .claude/skills/anthropic/docx/scripts/office/validators/base.py:705"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-78826ce3a7a91e6e", "name": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/pptx/scripts/thumbnail.py:161", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/pptx/scripts/thumbnail.py:161"}, "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-34ad3e42d50241a2", "name": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/pptx/scripts/office/soffice.py:14", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/pptx/scripts/office/soffice.py:14"}, "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-1c69a479c88eabc3", "name": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/pptx/scripts/office/validators/redlinin", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/pptx/scripts/office/validators/redlining.py:138"}, "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-78ba4a465bb3bac5", "name": "Legacy-named symbol `xml_copy` in .claude/skills/anthropic/pptx/scripts/office/validators/base.py:705", "shortDescription": {"text": "Legacy-named symbol `xml_copy` in .claude/skills/anthropic/pptx/scripts/office/validators/base.py:705"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fc8f0c5d377c755b", "name": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/xlsx/scripts/recalc.py:92", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/xlsx/scripts/recalc.py:92"}, "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-b2be7a05e4c6987f", "name": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/xlsx/scripts/office/soffice.py:14", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/xlsx/scripts/office/soffice.py:14"}, "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-31083bab368480c7", "name": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/xlsx/scripts/office/validators/redlinin", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/xlsx/scripts/office/validators/redlining.py:138"}, "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-ab6577fd972eaadc", "name": "Legacy-named symbol `xml_copy` in .claude/skills/anthropic/xlsx/scripts/office/validators/base.py:705", "shortDescription": {"text": "Legacy-named symbol `xml_copy` in .claude/skills/anthropic/xlsx/scripts/office/validators/base.py:705"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-535a881ee1d05fbd", "name": "Commented-code block (8 lines) in .claude/skills/anthropic/algorithmic-art/templates/generator_template.js:15", "shortDescription": {"text": "Commented-code block (8 lines) in .claude/skills/anthropic/algorithmic-art/templates/generator_template.js:15"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f808a4ef3e1071fb", "name": "14 env vars used in code but missing from .env.example", "shortDescription": {"text": "14 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `M3_AGENT_ID`, `M3_ASSENT_TOKEN`, `M3_BASE_URL`, `MINT_CLI_ADMIN_EMAIL`, `MINT_CLI_ADMIN_JWT`, `MINT_CLI_ADMIN_PASSWORD`, `MINT_CLI_BASE_URL`, `NEXT_RUNTIME` + 6 more. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be46ea126aa5d8dc", "name": "Near-duplicate function bodies in 3 places", "shortDescription": {"text": "Near-duplicate function bodies in 3 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\noperations/handoffs/founder/journal-encryption-test.py:post_json, operations/handoffs/founder/access-test.py:post_json, operations/handoffs/founder/export-test.py:post_json\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-33a6b62e30ce7ab4", "name": "Near-duplicate function bodies in 6 places", "shortDescription": {"text": "Near-duplicate function bodies in 6 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\n.claude/skills/anthropic/docx/scripts/office/helpers/merge_runs.py:merge_runs, .claude/skills/anthropic/docx/scripts/office/helpers/simplify_redlines.py:simplify_redlines, .claude/skills/anthropic/pptx/scripts/office/helpers/merge_runs.py:merge_runs, .claude/skills/anthropic/pptx/scripts/office/helpers/simplify_redlines.py:simplify_redlines\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}}]}}, "automationDetails": {"id": "repobility/17664"}, "properties": {"repository": "quartermileclint/sagereasoning", "repoUrl": "https://github.com/quartermileclint/sagereasoning", "branch": "main"}, "results": [{"ruleId": "scanner-90219cf6948fdf8d", "level": "note", "message": {"text": "Possibly dead Python function: run_single_query"}, "properties": {"repobilityId": "1056c4dff9b57a73", "scanner": "scanner-primary", "fingerprint": "90219cf6948fdf8d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/skill-creator/scripts/run_eval.py:35"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d91d88c9823dd237", "level": "note", "message": {"text": "Possibly dead Python function: do_GET"}, "properties": {"repobilityId": "2d943bb45e4f13bd", "scanner": "scanner-primary", "fingerprint": "d91d88c9823dd237", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/skill-creator/eval-viewer/generate_review.py:332"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7a294aecb7ac4d2d", "level": "note", "message": {"text": "Possibly dead Python function: do_POST"}, "properties": {"repobilityId": "53357410ca9379a9", "scanner": "scanner-primary", "fingerprint": "7a294aecb7ac4d2d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/skill-creator/eval-viewer/generate_review.py:361"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-590db3d63eac6242", "level": "note", "message": {"text": "Possibly dead Python function: log_message"}, "properties": {"repobilityId": "965f3150b4af5b2e", "scanner": "scanner-primary", "fingerprint": "590db3d63eac6242", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/skill-creator/eval-viewer/generate_review.py:382"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-693a0e2d2ab9d050", "level": "note", "message": {"text": "Possibly dead Python function: ease_in_quad"}, "properties": {"repobilityId": "9c54008225f34fad", "scanner": "scanner-primary", "fingerprint": "693a0e2d2ab9d050", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:17"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ddab98aa149ee8bf", "level": "note", "message": {"text": "Possibly dead Python function: ease_out_quad"}, "properties": {"repobilityId": "74b589b882a977ff", "scanner": "scanner-primary", "fingerprint": "ddab98aa149ee8bf", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:22"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f6ed93bbd82bc99d", "level": "note", "message": {"text": "Possibly dead Python function: ease_in_out_quad"}, "properties": {"repobilityId": "142c853223e69301", "scanner": "scanner-primary", "fingerprint": "f6ed93bbd82bc99d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:27"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e85e3cbe87f4ded4", "level": "note", "message": {"text": "Possibly dead Python function: ease_in_cubic"}, "properties": {"repobilityId": "04c4b3dd3a4c80b5", "scanner": "scanner-primary", "fingerprint": "e85e3cbe87f4ded4", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:34"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-bddc03e56a2770a8", "level": "note", "message": {"text": "Possibly dead Python function: ease_out_cubic"}, "properties": {"repobilityId": "1527d30f50a4943b", "scanner": "scanner-primary", "fingerprint": "bddc03e56a2770a8", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:39"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a458904bed5af934", "level": "note", "message": {"text": "Possibly dead Python function: ease_in_out_cubic"}, "properties": {"repobilityId": "4e32e71f9a5016ac", "scanner": "scanner-primary", "fingerprint": "a458904bed5af934", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:44"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-50ecfc03204fb894", "level": "note", "message": {"text": "Possibly dead Python function: ease_in_out_bounce"}, "properties": {"repobilityId": "0185838c943af0e6", "scanner": "scanner-primary", "fingerprint": "50ecfc03204fb894", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:71"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9e71cfc152854cbe", "level": "note", "message": {"text": "Possibly dead Python function: ease_in_elastic"}, "properties": {"repobilityId": "4a3d8bcbd5ff465b", "scanner": "scanner-primary", "fingerprint": "9e71cfc152854cbe", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:78"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4d2a4405d7d855c3", "level": "note", "message": {"text": "Possibly dead Python function: ease_out_elastic"}, "properties": {"repobilityId": "fa5c6451007cfca8", "scanner": "scanner-primary", "fingerprint": "4d2a4405d7d855c3", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:85"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c38d35d358125bb4", "level": "note", "message": {"text": "Possibly dead Python function: ease_in_out_elastic"}, "properties": {"repobilityId": "00839dd091318e93", "scanner": "scanner-primary", "fingerprint": "c38d35d358125bb4", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:92"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f29db5a3fd19018e", "level": "note", "message": {"text": "Possibly dead Python function: interpolate"}, "properties": {"repobilityId": "7f46b343ca4d0a22", "scanner": "scanner-primary", "fingerprint": "f29db5a3fd19018e", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:122"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6f2acfd282585535", "level": "note", "message": {"text": "Possibly dead Python function: ease_back_in"}, "properties": {"repobilityId": "56b2b016f0ad05d0", "scanner": "scanner-primary", "fingerprint": "6f2acfd282585535", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:140"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-854081f3f2f80583", "level": "note", "message": {"text": "Possibly dead Python function: ease_back_out"}, "properties": {"repobilityId": "32646da19ba276ce", "scanner": "scanner-primary", "fingerprint": "854081f3f2f80583", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:147"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-96767981af5336d4", "level": "note", "message": {"text": "Possibly dead Python function: ease_back_in_out"}, "properties": {"repobilityId": "2b283166adb35df2", "scanner": "scanner-primary", "fingerprint": "96767981af5336d4", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:154"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-42d915bd2714d34c", "level": "note", "message": {"text": "Possibly dead Python function: apply_squash_stretch"}, "properties": {"repobilityId": "69472943e1b79017", "scanner": "scanner-primary", "fingerprint": "42d915bd2714d34c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:163"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-29b20878ba6e3bc1", "level": "note", "message": {"text": "Possibly dead Python function: calculate_arc_motion"}, "properties": {"repobilityId": "624162caad1aec81", "scanner": "scanner-primary", "fingerprint": "29b20878ba6e3bc1", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/easing.py:195"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-11b53d2536b1bb4d", "level": "note", "message": {"text": "Possibly dead Python function: add_frames"}, "properties": {"repobilityId": "6e6433335a7f3a8b", "scanner": "scanner-primary", "fingerprint": "11b53d2536b1bb4d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/gif_builder.py:54"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7d0643117eaae17d", "level": "note", "message": {"text": "Possibly dead Python function: clear"}, "properties": {"repobilityId": "6a258a943234091d", "scanner": "scanner-primary", "fingerprint": "7d0643117eaae17d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/gif_builder.py:267"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d400dbbb580be3b2", "level": "note", "message": {"text": "Possibly dead Python function: create_blank_frame"}, "properties": {"repobilityId": "bb029a02d78c810d", "scanner": "scanner-primary", "fingerprint": "d400dbbb580be3b2", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/frame_composer.py:15"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ebc9a5059fb576fa", "level": "note", "message": {"text": "Possibly dead Python function: draw_circle"}, "properties": {"repobilityId": "1122ecc0aa850a7e", "scanner": "scanner-primary", "fingerprint": "ebc9a5059fb576fa", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/frame_composer.py:32"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-306c23620526eab6", "level": "note", "message": {"text": "Possibly dead Python function: draw_text"}, "properties": {"repobilityId": "aac6f85884a43483", "scanner": "scanner-primary", "fingerprint": "306c23620526eab6", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/frame_composer.py:61"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5629ede6f14c465d", "level": "note", "message": {"text": "Possibly dead Python function: create_gradient_background"}, "properties": {"repobilityId": "6a61e41865c295ed", "scanner": "scanner-primary", "fingerprint": "5629ede6f14c465d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/frame_composer.py:99"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e661e0b3d259839d", "level": "note", "message": {"text": "Possibly dead Python function: draw_star"}, "properties": {"repobilityId": "69b7011c25b836c3", "scanner": "scanner-primary", "fingerprint": "e661e0b3d259839d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/frame_composer.py:137"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c39db2481bfd3eb5", "level": "note", "message": {"text": "Possibly dead Python function: is_slack_ready"}, "properties": {"repobilityId": "a886bc12e69213c9", "scanner": "scanner-primary", "fingerprint": "c39db2481bfd3eb5", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/core/validators.py:121"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f6b33cb805f38fc8", "level": "note", "message": {"text": "Possibly dead Python function: merge_runs"}, "properties": {"repobilityId": "435767544049256d", "scanner": "scanner-primary", "fingerprint": "f6b33cb805f38fc8", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/docx/scripts/office/helpers/merge_runs.py:16"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2e10a1c845d01021", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 sage-mentor/send-notification.ts:301"}, "properties": {"repobilityId": "f5c34f7bfa974754", "scanner": "scanner-primary", "fingerprint": "2e10a1c845d01021", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7eca4f517dc1958f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 engineering/agent-discovery-strategy.js:276"}, "properties": {"repobilityId": "9a54a272e4df2cc8", "scanner": "scanner-primary", "fingerprint": "7eca4f517dc1958f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9a8cdc63a7d42385", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 engineering/generate-todo.js:351"}, "properties": {"repobilityId": "99aa5c5296ecdc7e", "scanner": "scanner-primary", "fingerprint": "9a8cdc63a7d42385", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a5924c0e5e26ee79", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 engineering/pmf-assessment-agent.js:360"}, "properties": {"repobilityId": "48984387b8e4d373", "scanner": "scanner-primary", "fingerprint": "a5924c0e5e26ee79", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cadf3f9ca4894ad5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_inspect_registry.js:8"}, "properties": {"repobilityId": "694ff771256cdc19", "scanner": "scanner-primary", "fingerprint": "cadf3f9ca4894ad5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fc53d7f3892cceb8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_verify_flows.js:3"}, "properties": {"repobilityId": "e226de2645976f68", "scanner": "scanner-primary", "fingerprint": "fc53d7f3892cceb8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cea77ae2bf240bf1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_list_nonready.js:16"}, "properties": {"repobilityId": "a535cd8dada2f20d", "scanner": "scanner-primary", "fingerprint": "cea77ae2bf240bf1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9f687673c7cbaf8f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_apply_journey.js:120"}, "properties": {"repobilityId": "0a1577afa9789641", "scanner": "scanner-primary", "fingerprint": "9f687673c7cbaf8f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-de45f18523b49a74", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_extract_flows.js:72"}, "properties": {"repobilityId": "9cd29d6665d4a61e", "scanner": "scanner-primary", "fingerprint": "de45f18523b49a74", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-adefd406f1b5a7b1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 archive/2026-04-21-option-a-tmp-scripts/tmp_rewire_map.js:116"}, "properties": {"repobilityId": "9202aed0ecd452dd", "scanner": "scanner-primary", "fingerprint": "adefd406f1b5a7b1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2e7fbdf15ba94419", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/compile-stoic-brain.ts:59"}, "properties": {"repobilityId": "707653f2a93f701f", "scanner": "scanner-primary", "fingerprint": "2e7fbdf15ba94419", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9ac120a170ce376c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/test-retrieval-rerank.ts:59"}, "properties": {"repobilityId": "37a38f50e3ee216c", "scanner": "scanner-primary", "fingerprint": "9ac120a170ce376c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d8c60fd72f17fd1b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/mint-credential.ts:118"}, "properties": {"repobilityId": "64bc5a061318bd46", "scanner": "scanner-primary", "fingerprint": "d8c60fd72f17fd1b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-99160ec6996d7f6a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/verify-internal-retrieve.ts:69"}, "properties": {"repobilityId": "b58e10cf3af59300", "scanner": "scanner-primary", "fingerprint": "99160ec6996d7f6a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-266c8ccb4f156391", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/verify-reason-rag.ts:200"}, "properties": {"repobilityId": "5fea74fd37423999", "scanner": "scanner-primary", "fingerprint": "266c8ccb4f156391", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-79036016bfd52a81", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/verify-translation-sandwich.ts:114"}, "properties": {"repobilityId": "224885a864e78577", "scanner": "scanner-primary", "fingerprint": "79036016bfd52a81", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0795d913c75b438f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/ci9-gate-replay.ts:44"}, "properties": {"repobilityId": "240547163c6fc8e8", "scanner": "scanner-primary", "fingerprint": "0795d913c75b438f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-386b1c978c145135", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/verify-accreditation-m3-leg.ts:51"}, "properties": {"repobilityId": "7f09e7aea9c95da1", "scanner": "scanner-primary", "fingerprint": "386b1c978c145135", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2cc36811af5a5a4b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l3.ts:76"}, "properties": {"repobilityId": "5894d4152bf1ce24", "scanner": "scanner-primary", "fingerprint": "2cc36811af5a5a4b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-61626c972ee27516", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-c2.ts:400"}, "properties": {"repobilityId": "63f0cc7fa9923604", "scanner": "scanner-primary", "fingerprint": "61626c972ee27516", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4c4432fefcbbc80d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l2.ts:111"}, "properties": {"repobilityId": "caece40d6b4ebb9f", "scanner": "scanner-primary", "fingerprint": "4c4432fefcbbc80d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bcde22f86b976366", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/mint-test-credentials.ts:82"}, "properties": {"repobilityId": "57b8c394449e067b", "scanner": "scanner-primary", "fingerprint": "bcde22f86b976366", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f16b2838aa18d5ff", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l6.ts:126"}, "properties": {"repobilityId": "add0cc8432051650", "scanner": "scanner-primary", "fingerprint": "f16b2838aa18d5ff", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0e14dbf1d52c9d4f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l1.ts:118"}, "properties": {"repobilityId": "54e0cce8b21fa41f", "scanner": "scanner-primary", "fingerprint": "0e14dbf1d52c9d4f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8d5f0975bf84cf9a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l4.ts:69"}, "properties": {"repobilityId": "46b33f9ebc43e50c", "scanner": "scanner-primary", "fingerprint": "8d5f0975bf84cf9a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4d9c83452241623b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-comb2.ts:80"}, "properties": {"repobilityId": "47251bc0198be010", "scanner": "scanner-primary", "fingerprint": "4d9c83452241623b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b1e9c0d01e140a5e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l7.ts:67"}, "properties": {"repobilityId": "3a069c6c6da56297", "scanner": "scanner-primary", "fingerprint": "b1e9c0d01e140a5e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5f8ecad5ba7cd3d5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l2-complete.ts:87"}, "properties": {"repobilityId": "e1e0a793945d443a", "scanner": "scanner-primary", "fingerprint": "5f8ecad5ba7cd3d5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cd63a58ddb7e6cf6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-l5.ts:137"}, "properties": {"repobilityId": "348754387dd67925", "scanner": "scanner-primary", "fingerprint": "cd63a58ddb7e6cf6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6a9551896a1a4cfd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/smoke-negatives.ts:42"}, "properties": {"repobilityId": "f17e56a0f72e3d14", "scanner": "scanner-primary", "fingerprint": "6a9551896a1a4cfd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f07f1e5f93fbc790", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/run-r20a-gate-probe.ts:122"}, "properties": {"repobilityId": "76188ec8602109eb", "scanner": "scanner-primary", "fingerprint": "f07f1e5f93fbc790", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-45028162a20b6437", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/scripts/whole-system-harness/lib/assertions.ts:23"}, "properties": {"repobilityId": "4e59e22d873ce7f8", "scanner": "scanner-primary", "fingerprint": "45028162a20b6437", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-782ba3dcc19fb97e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/tmp/a4-smoke-test.ts:45"}, "properties": {"repobilityId": "9d48b923b21a8213", "scanner": "scanner-primary", "fingerprint": "782ba3dcc19fb97e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-22f8db632adc3980", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/public/sw-journal.js:45"}, "properties": {"repobilityId": "165711f9dbdbe121", "scanner": "scanner-primary", "fingerprint": "22f8db632adc3980", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-76d5bb6a757c0cdd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/instrumentation.ts:43"}, "properties": {"repobilityId": "827635f93b9ac794", "scanner": "scanner-primary", "fingerprint": "76d5bb6a757c0cdd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a2f204e25cfb46a4", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 website/src/components/PracticeCalendar.tsx:315"}, "properties": {"repobilityId": "1510a5fb772cdede", "scanner": "scanner-primary", "fingerprint": "a2f204e25cfb46a4", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-bcd88bf66dc9f8e4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/components/ServiceWorkerRegistration.tsx:20"}, "properties": {"repobilityId": "7e5e28e2e8132a86", "scanner": "scanner-primary", "fingerprint": "bcd88bf66dc9f8e4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-eed7cfba41bcd6ed", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 website/src/components/NavBar.tsx:105"}, "properties": {"repobilityId": "a4a097fbdbdf8a79", "scanner": "scanner-primary", "fingerprint": "eed7cfba41bcd6ed", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-02ed01d0a05de537", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 website/src/app/page.tsx:52"}, "properties": {"repobilityId": "9c548126f3cef560", "scanner": "scanner-primary", "fingerprint": "02ed01d0a05de537", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-ceb2bf48737a2b5a", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 website/src/app/score/page.tsx:281"}, "properties": {"repobilityId": "215688dd4c1b766b", "scanner": "scanner-primary", "fingerprint": "ceb2bf48737a2b5a", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-2d7a1822c958d370", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 website/src/app/api-docs/page.tsx:293"}, "properties": {"repobilityId": "a1a44d168758c883", "scanner": "scanner-primary", "fingerprint": "2d7a1822c958d370", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-1ee32e7ea379b0c8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/__tests__/r20a-configuration-flows.test.ts:104"}, "properties": {"repobilityId": "1ad1547bc222783b", "scanner": "scanner-primary", "fingerprint": "1ee32e7ea379b0c8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d78e7b4e89ae3fe6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/score-iterate/route.ts:785"}, "properties": {"repobilityId": "410d71fb331aecb0", "scanner": "scanner-primary", "fingerprint": "d78e7b4e89ae3fe6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-90b12da354110d4c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/public-key/__tests__/public-key-route.test.ts:345"}, "properties": {"repobilityId": "b083bfff9f8f4fac", "scanner": "scanner-primary", "fingerprint": "90b12da354110d4c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8e7c74b2681d9d22", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/journal/__tests__/r20a-invocation.test.ts:55"}, "properties": {"repobilityId": "bb6ce8f78e0dd1e4", "scanner": "scanner-primary", "fingerprint": "8e7c74b2681d9d22", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-77f4a085c5dfafb1", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 website/src/app/api/billing/usage-summary/route.ts:41"}, "properties": {"repobilityId": "c70a9e2f6bbadc0c", "scanner": "scanner-primary", "fingerprint": "77f4a085c5dfafb1", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-d327392c92e974af", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/admin/accreditation-credentials/__tests__/route.test.ts:153"}, "properties": {"repobilityId": "510d16bb92b2eb9d", "scanner": "scanner-primary", "fingerprint": "d327392c92e974af", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f2a7acd0ce56c8d0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/admin/plugin-install-credentials/__tests__/route.test.ts:162"}, "properties": {"repobilityId": "6ff389d9e777f0b1", "scanner": "scanner-primary", "fingerprint": "f2a7acd0ce56c8d0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b7856c480e385e42", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/reason/__tests__/r20a-audience-rendering.test.ts:123"}, "properties": {"repobilityId": "c10d5633a167c3c9", "scanner": "scanner-primary", "fingerprint": "b7856c480e385e42", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7af3f4d161dd8505", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/practice/reflect/route.ts:386"}, "properties": {"repobilityId": "7c786ca9d51045a0", "scanner": "scanner-primary", "fingerprint": "7af3f4d161dd8505", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7de0056d9821e8f6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/practice/reflect/__tests__/request-helpers.test.ts:12"}, "properties": {"repobilityId": "8dd543868d10dbe1", "scanner": "scanner-primary", "fingerprint": "7de0056d9821e8f6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9354668de5792693", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/practice/reflect/__tests__/r20a-invocation.test.ts:113"}, "properties": {"repobilityId": "95259f6d922f8a1c", "scanner": "scanner-primary", "fingerprint": "9354668de5792693", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-94ca08a9a9a87432", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/cron/trajectory-retention-sweep/__tests__/route.test.ts:201"}, "properties": {"repobilityId": "441a11a9e91f6662", "scanner": "scanner-primary", "fingerprint": "94ca08a9a9a87432", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bd18591be9f7734a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/calling/route.ts:277"}, "properties": {"repobilityId": "9bfd97b5fbf4282a", "scanner": "scanner-primary", "fingerprint": "bd18591be9f7734a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ae51779a6ac7d422", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/calling/__tests__/r20a-invocation.test.ts:93"}, "properties": {"repobilityId": "ad88b809b2b345b9", "scanner": "scanner-primary", "fingerprint": "ae51779a6ac7d422", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ed1e14bc23119c4a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/mentor/private/reflect/route.ts:574"}, "properties": {"repobilityId": "ff04d57cd3863ad5", "scanner": "scanner-primary", "fingerprint": "ed1e14bc23119c4a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7ee83e39d7a4cc22", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/mentor/journal-feed/__tests__/r20a-invocation.test.ts:59"}, "properties": {"repobilityId": "9dbfeaae42c440b0", "scanner": "scanner-primary", "fingerprint": "7ee83e39d7a4cc22", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-76ba07f24171dcad", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/route.ts:650"}, "properties": {"repobilityId": "4cc86e7c810b77d2", "scanner": "scanner-primary", "fingerprint": "76ba07f24171dcad", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8f0f8ecbf4d34644", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/__tests__/provenance-contract.test.ts:47"}, "properties": {"repobilityId": "fdf612f16f0a991e", "scanner": "scanner-primary", "fingerprint": "8f0f8ecbf4d34644", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7ce5578c9d9de1e8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts:679"}, "properties": {"repobilityId": "6fb20edf8f111fba", "scanner": "scanner-primary", "fingerprint": "7ce5578c9d9de1e8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a4e336c4178aa0f3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/__tests__/provenance-gate.test.ts:55"}, "properties": {"repobilityId": "ad526b01399a2abf", "scanner": "scanner-primary", "fingerprint": "a4e336c4178aa0f3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9e505b899c992d7d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/accreditation/[agent_id]/__tests__/loop-closure-gate.test.ts:248"}, "properties": {"repobilityId": "467e2928be08063f", "scanner": "scanner-primary", "fingerprint": "9e505b899c992d7d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5a6b32cd152d6f59", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/founder/hub/route.ts:715"}, "properties": {"repobilityId": "ec61b0a6470a4da3", "scanner": "scanner-primary", "fingerprint": "5a6b32cd152d6f59", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9a297bda82d2f156", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/webhooks/stripe/route.ts:151"}, "properties": {"repobilityId": "305a629d236b248f", "scanner": "scanner-primary", "fingerprint": "9a297bda82d2f156", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-daff0a372c52c3c3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/guardrail/route.ts:404"}, "properties": {"repobilityId": "11b03fc1c3948f9f", "scanner": "scanner-primary", "fingerprint": "daff0a372c52c3c3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3b42d3127e7638fd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/app/api/credential/erase/__tests__/handler.test.ts:227"}, "properties": {"repobilityId": "fcc5780b217b8ed9", "scanner": "scanner-primary", "fingerprint": "3b42d3127e7638fd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ce0fd8b5fb59c3d7", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 website/src/app/admin/page.tsx:260"}, "properties": {"repobilityId": "2a59c94adf8ea06d", "scanner": "scanner-primary", "fingerprint": "ce0fd8b5fb59c3d7", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-b2ea0460b27799ec", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/security.ts:960"}, "properties": {"repobilityId": "8ef826e24414b167", "scanner": "scanner-primary", "fingerprint": "b2ea0460b27799ec", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-98342cfb684eebd5", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 website/src/lib/stripe-projects.ts:117"}, "properties": {"repobilityId": "4a39b7cee66370d0", "scanner": "scanner-primary", "fingerprint": "98342cfb684eebd5", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-f823f8db91d984d6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/mentor-profile-store.ts:134"}, "properties": {"repobilityId": "c129177a71680438", "scanner": "scanner-primary", "fingerprint": "f823f8db91d984d6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9896f6abda8560b6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/server-encryption.ts:42"}, "properties": {"repobilityId": "2630ed0d32f79b2c", "scanner": "scanner-primary", "fingerprint": "9896f6abda8560b6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0dc44a9df87e84c8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/r20a-invocation-guard.test.ts:322"}, "properties": {"repobilityId": "35e76f7ca501bdec", "scanner": "scanner-primary", "fingerprint": "0dc44a9df87e84c8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3c0e517902cfa86b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/response-envelope-ci8.test.ts:38"}, "properties": {"repobilityId": "ad3c329396c6e67d", "scanner": "scanner-primary", "fingerprint": "3c0e517902cfa86b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6db52d884286861a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/upc-transport-narrowing.test.ts:96"}, "properties": {"repobilityId": "f6aec45af9b7f2f9", "scanner": "scanner-primary", "fingerprint": "6db52d884286861a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-29f8410fcd218051", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/mentor-profile-adapter.test.ts:349"}, "properties": {"repobilityId": "0b37611b79cd43e4", "scanner": "scanner-primary", "fingerprint": "29f8410fcd218051", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e4821c096dc43574", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/practice-cycle-hint.test.ts:81"}, "properties": {"repobilityId": "4c8c70e91dde880b", "scanner": "scanner-primary", "fingerprint": "e4821c096dc43574", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-16ba1b182e47a89c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/sage-reason-composition-order.test.ts:157"}, "properties": {"repobilityId": "b2f99236d4817b58", "scanner": "scanner-primary", "fingerprint": "16ba1b182e47a89c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b64430e3001c2e4b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/consumer-erasure.test.ts:246"}, "properties": {"repobilityId": "0d7b2f5503204346", "scanner": "scanner-primary", "fingerprint": "b64430e3001c2e4b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fdf92d3bd3dd4da2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/journal-encryption.test.ts:40"}, "properties": {"repobilityId": "c1dcb7d7f14a2e90", "scanner": "scanner-primary", "fingerprint": "fdf92d3bd3dd4da2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-51489481f1813f82", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/loop-cost-tracker.test.ts:84"}, "properties": {"repobilityId": "5aaf0495dc99251c", "scanner": "scanner-primary", "fingerprint": "51489481f1813f82", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fc3fc023be000327", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/plugin-install-auth.test.ts:178"}, "properties": {"repobilityId": "7bddf038ae6f9963", "scanner": "scanner-primary", "fingerprint": "fc3fc023be000327", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d997da12a3caf587", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/api-key-defaults.test.ts:30"}, "properties": {"repobilityId": "a64e8b528c23276b", "scanner": "scanner-primary", "fingerprint": "d997da12a3caf587", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-80888e94e7a16d44", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/encryption-helpers.test.ts:191"}, "properties": {"repobilityId": "a208929a50be6ecd", "scanner": "scanner-primary", "fingerprint": "80888e94e7a16d44", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-78dc5243c3aa31ea", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/security.test.ts:184"}, "properties": {"repobilityId": "eee8ecd2dfd4a2ba", "scanner": "scanner-primary", "fingerprint": "78dc5243c3aa31ea", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-182a451f6180e3c8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/r20b-dependence.test.ts:37"}, "properties": {"repobilityId": "f4a586117c874846", "scanner": "scanner-primary", "fingerprint": "182a451f6180e3c8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-db4a97529f562f3f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/mentor-profile-summary.test.ts:302"}, "properties": {"repobilityId": "2518b93c77ba5b7f", "scanner": "scanner-primary", "fingerprint": "db4a97529f562f3f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-dd22233b1751b721", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/ci9-cache-mechanism.test.ts:37"}, "properties": {"repobilityId": "e28dab2aa6b9b40f", "scanner": "scanner-primary", "fingerprint": "dd22233b1751b721", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1580baf2972b91bb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/practice-credential.test.ts:324"}, "properties": {"repobilityId": "1fd2cadbaec6b4fe", "scanner": "scanner-primary", "fingerprint": "1580baf2972b91bb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4bb28e13209542c7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/m5-docs-staged.test.ts:94"}, "properties": {"repobilityId": "ca7bc1e4e3340fe9", "scanner": "scanner-primary", "fingerprint": "4bb28e13209542c7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-25e210309a960c7c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/run-zone2-calibration-eval.ts:64"}, "properties": {"repobilityId": "9191a9b5a344085c", "scanner": "scanner-primary", "fingerprint": "25e210309a960c7c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bebc4d8d81fef4d2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/__tests__/loop-cost-tracker-ci10.test.ts:40"}, "properties": {"repobilityId": "0601102a51ccb492", "scanner": "scanner-primary", "fingerprint": "bebc4d8d81fef4d2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2fb4fd514632b65b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/abuse-detection/__tests__/abuse-detector.test.ts:29"}, "properties": {"repobilityId": "9876eab665e7b742", "scanner": "scanner-primary", "fingerprint": "2fb4fd514632b65b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-db257e742e539224", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/abuse-detection/__tests__/abuse-detector-structural.test.ts:42"}, "properties": {"repobilityId": "c61f240ee67076f8", "scanner": "scanner-primary", "fingerprint": "db257e742e539224", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1d52629da0799f6b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/question-library.test.ts:44"}, "properties": {"repobilityId": "536a11cdf0495cf9", "scanner": "scanner-primary", "fingerprint": "1d52629da0799f6b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-15254d187f7784ea", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/engine.test.ts:51"}, "properties": {"repobilityId": "5d4f8378aa84e71c", "scanner": "scanner-primary", "fingerprint": "15254d187f7784ea", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a0f472b56e4659c7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/agent-card.test.ts:26"}, "properties": {"repobilityId": "1d64b29befc95741", "scanner": "scanner-primary", "fingerprint": "a0f472b56e4659c7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5c6483be8b2f2c96", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/r18d-adversarial.test.ts:33"}, "properties": {"repobilityId": "c1c19c1b0083f386", "scanner": "scanner-primary", "fingerprint": "5c6483be8b2f2c96", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-22b377b1b878daf1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/calling-service.test.ts:46"}, "properties": {"repobilityId": "5d0af5ce666e4c24", "scanner": "scanner-primary", "fingerprint": "22b377b1b878daf1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-46890d86ae381ca7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-calling/__tests__/session-store.test.ts:48"}, "properties": {"repobilityId": "04848b26aa6c0a90", "scanner": "scanner-primary", "fingerprint": "46890d86ae381ca7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-11da55348e8273fb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/slo/__tests__/slo-stats.test.ts:19"}, "properties": {"repobilityId": "39b57f20f091006b", "scanner": "scanner-primary", "fingerprint": "11da55348e8273fb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3735adc56abe7917", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/r20a-gate.ts:401"}, "properties": {"repobilityId": "7a66f987bc02b94b", "scanner": "scanner-primary", "fingerprint": "3735adc56abe7917", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f0fc4b9c665802d3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/layer3-service.ts:527"}, "properties": {"repobilityId": "bab44cccf0018c13", "scanner": "scanner-primary", "fingerprint": "f0fc4b9c665802d3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6ff8d2cf20ad5bbe", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/sage-assent-accreditation-writer.ts:188"}, "properties": {"repobilityId": "5300eeec197d09a0", "scanner": "scanner-primary", "fingerprint": "6ff8d2cf20ad5bbe", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8b3e973732010909", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/agent-assessment-history-store.test.ts:612"}, "properties": {"repobilityId": "338ecb1cace947c8", "scanner": "scanner-primary", "fingerprint": "8b3e973732010909", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-69985b7c535d4858", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-bridge.test.ts:94"}, "properties": {"repobilityId": "0135fc181b6a1838", "scanner": "scanner-primary", "fingerprint": "69985b7c535d4858", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-22e35c4aeeab60b4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-iteration-patterns.test.ts:114"}, "properties": {"repobilityId": "88180c904cab3914", "scanner": "scanner-primary", "fingerprint": "22e35c4aeeab60b4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-46d86ec40876974d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/narrative-retention.test.ts:53"}, "properties": {"repobilityId": "f9f026c9b1ee6ae7", "scanner": "scanner-primary", "fingerprint": "46d86ec40876974d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ba18a772f051ac05", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/agent-mode-service.test.ts:131"}, "properties": {"repobilityId": "bdc909ca93b24a62", "scanner": "scanner-primary", "fingerprint": "ba18a772f051ac05", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-44a7e6b048a6e264", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-accreditation-store.test.ts:132"}, "properties": {"repobilityId": "935a2ca56b951015", "scanner": "scanner-primary", "fingerprint": "44a7e6b048a6e264", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-adf566f73c10b0d7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/layer3-service.test.ts:126"}, "properties": {"repobilityId": "f33ef6a066f05a33", "scanner": "scanner-primary", "fingerprint": "adf566f73c10b0d7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ed08f7700cd0c10e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/philosophical-mode-service.test.ts:117"}, "properties": {"repobilityId": "44a339a51149a2c4", "scanner": "scanner-primary", "fingerprint": "ed08f7700cd0c10e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-718f498157969316", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/accreditation-store-k1-fields.test.ts:167"}, "properties": {"repobilityId": "f507bc15d5d42bab", "scanner": "scanner-primary", "fingerprint": "718f498157969316", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d419d74ec6523b72", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/r20a-gate.test.ts:73"}, "properties": {"repobilityId": "5ab15a0f5093ec06", "scanner": "scanner-primary", "fingerprint": "d419d74ec6523b72", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b893c2d8063a4e7b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/trajectory-overlay.test.ts:204"}, "properties": {"repobilityId": "48bc68680c47a8e3", "scanner": "scanner-primary", "fingerprint": "b893c2d8063a4e7b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-515a444820a33cef", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/score-architecture.test.ts:109"}, "properties": {"repobilityId": "04db9dc1af142843", "scanner": "scanner-primary", "fingerprint": "515a444820a33cef", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-817a8f6dd417ae93", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-accreditation-writer.test.ts:104"}, "properties": {"repobilityId": "5336a0c799e6e38e", "scanner": "scanner-primary", "fingerprint": "817a8f6dd417ae93", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4a89e036ef15e7cb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/agent-hand-back-report.test.ts:80"}, "properties": {"repobilityId": "1ccf5cbc0f3cae7c", "scanner": "scanner-primary", "fingerprint": "4a89e036ef15e7cb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b728e78e626a16b9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-tree-search-adapter.test.ts:49"}, "properties": {"repobilityId": "98683cc57c0c0df9", "scanner": "scanner-primary", "fingerprint": "b728e78e626a16b9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9788cfc24b7227fa", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/sage-assent-wrapper.test.ts:82"}, "properties": {"repobilityId": "9ddb2e23b46c9d61", "scanner": "scanner-primary", "fingerprint": "9788cfc24b7227fa", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f0108ebe0cedd779", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/__tests__/substrate-audit-writer.test.ts:38"}, "properties": {"repobilityId": "ef4dfdaa6e0408ee", "scanner": "scanner-primary", "fingerprint": "f0108ebe0cedd779", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2032d977adaacb97", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/trust-layer/validation/__tests__/pass-through-fields.test.ts:115"}, "properties": {"repobilityId": "d52a7c0d6201ce39", "scanner": "scanner-primary", "fingerprint": "2032d977adaacb97", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d84f29b59c1e43be", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/trust-layer/accreditation/__tests__/coverage-status.test.ts:195"}, "properties": {"repobilityId": "b44a770ea94ef040", "scanner": "scanner-primary", "fingerprint": "d84f29b59c1e43be", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-76f3e35281249ef3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/substrate/trust-layer/accreditation/__tests__/agent-id-vocabulary.test.ts:163"}, "properties": {"repobilityId": "6251e4a82b66155b", "scanner": "scanner-primary", "fingerprint": "76f3e35281249ef3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cd6c032a6f4ff341", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/cron/__tests__/observability-notify.test.ts:18"}, "properties": {"repobilityId": "3bee0bb54385b243", "scanner": "scanner-primary", "fingerprint": "cd6c032a6f4ff341", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-36b6cbd7136ed585", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/logging/__tests__/mentor-observation-logger.test.ts:218"}, "properties": {"repobilityId": "78e5c6e6122d274c", "scanner": "scanner-primary", "fingerprint": "36b6cbd7136ed585", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ef9e137905732690", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/context/mentor-context-private.ts:193"}, "properties": {"repobilityId": "c2b3674909f3ebe4", "scanner": "scanner-primary", "fingerprint": "ef9e137905732690", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7292108771dbe5de", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/admin-mint/__tests__/mint-credential-core.test.ts:43"}, "properties": {"repobilityId": "91861b03004ea8b1", "scanner": "scanner-primary", "fingerprint": "7292108771dbe5de", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9ca96886584b8ac3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/cost-alerts/__tests__/cost-alert-detector.test.ts:34"}, "properties": {"repobilityId": "8ac9b35dd65351af", "scanner": "scanner-primary", "fingerprint": "9ca96886584b8ac3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0a144fad958273da", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/zone3-boundary.test.ts:12"}, "properties": {"repobilityId": "325da9bedf2ba52f", "scanner": "scanner-primary", "fingerprint": "0a144fad958273da", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8157c1b8811f3fc5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/reflect-q5-ambiguity.test.ts:23"}, "properties": {"repobilityId": "b2a27d3e9bb987fe", "scanner": "scanner-primary", "fingerprint": "8157c1b8811f3fc5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b890ce06cb3fb899", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/engine.test.ts:48"}, "properties": {"repobilityId": "1348928e5e4ca3a0", "scanner": "scanner-primary", "fingerprint": "b890ce06cb3fb899", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-eea5fe641cae6966", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/reflect-service.test.ts:25"}, "properties": {"repobilityId": "b1c8acbcc9816118", "scanner": "scanner-primary", "fingerprint": "eea5fe641cae6966", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2b1556a02f7530b0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/sage-assent-feed.test.ts:40"}, "properties": {"repobilityId": "21d840c219348db2", "scanner": "scanner-primary", "fingerprint": "2b1556a02f7530b0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d9cdb6006b1a03f1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/proximity-domains.test.ts:21"}, "properties": {"repobilityId": "341bde8fc5f2f690", "scanner": "scanner-primary", "fingerprint": "d9cdb6006b1a03f1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c17994f746cfb4fe", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/reflect-cost-tracker.test.ts:33"}, "properties": {"repobilityId": "8e26294d8f9cc9bf", "scanner": "scanner-primary", "fingerprint": "c17994f746cfb4fe", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d7350ddd58fd76cd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/r18d-adversarial.test.ts:38"}, "properties": {"repobilityId": "47e8ac36503b3e01", "scanner": "scanner-primary", "fingerprint": "d7350ddd58fd76cd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a54e011a0124d1a6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/sage-reflect/__tests__/session-store.test.ts:45"}, "properties": {"repobilityId": "67fb13189c4cf9f9", "scanner": "scanner-primary", "fingerprint": "a54e011a0124d1a6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7de16038b33f1b83", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer2-verifier.test.ts:71"}, "properties": {"repobilityId": "df742a9b4f9c30ff", "scanner": "scanner-primary", "fingerprint": "7de16038b33f1b83", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c3132abbd9710efe", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer2-signer.test.ts:357"}, "properties": {"repobilityId": "b1f94c426c020c47", "scanner": "scanner-primary", "fingerprint": "c3132abbd9710efe", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e74a4daaec5a42be", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer1-schema-additions.test.ts:95"}, "properties": {"repobilityId": "ddd6ff777cce8c60", "scanner": "scanner-primary", "fingerprint": "e74a4daaec5a42be", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5c84ec4a9a142e53", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer2-canonical-json.test.ts:296"}, "properties": {"repobilityId": "894ffac309d374eb", "scanner": "scanner-primary", "fingerprint": "5c84ec4a9a142e53", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-27041ea9653c8445", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/reason-loop-closure.test.ts:282"}, "properties": {"repobilityId": "1eb836795e198906", "scanner": "scanner-primary", "fingerprint": "27041ea9653c8445", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-936412b0d9daa13c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/prose-deferral.test.ts:45"}, "properties": {"repobilityId": "e195ada37a627610", "scanner": "scanner-primary", "fingerprint": "936412b0d9daa13c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1ac46778815b3ec1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/injection-defence.test.ts:267"}, "properties": {"repobilityId": "5978594276ab38b1", "scanner": "scanner-primary", "fingerprint": "1ac46778815b3ec1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c8990040d9155e09", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 website/src/lib/translation-sandwich/__tests__/layer3-injection-defence.test.ts:223"}, "properties": {"repobilityId": "d1c74f2bd55db454", "scanner": "scanner-primary", "fingerprint": "c8990040d9155e09", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cba90b8e44bc6048", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in SageReasoning_Ecosystem_Map.html:415"}, "properties": {"repobilityId": "57b09a1f1fdd4d41", "scanner": "scanner-primary", "fingerprint": "cba90b8e44bc6048", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "SageReasoning_Ecosystem_Map.html"}, "region": {"startLine": 415}}}]}, {"ruleId": "scanner-8e7244cc2609ee01", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in trust-layer/accreditation/public-endpoint.ts:163"}, "properties": {"repobilityId": "2952d19b00dc4972", "scanner": "scanner-primary", "fingerprint": "8e7244cc2609ee01", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "trust-layer/accreditation/public-endpoint.ts"}, "region": {"startLine": 163}}}]}, {"ruleId": "scanner-ae808deec988570d", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in archive/2026-04-21-option-a-tmp-scripts/tmp_extract_flows.js:62"}, "properties": {"repobilityId": "92512ccc5d920ef2", "scanner": "scanner-primary", "fingerprint": "ae808deec988570d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/2026-04-21-option-a-tmp-scripts/tmp_extract_flows.js"}, "region": {"startLine": 62}}}]}, {"ruleId": "scanner-4419a75f3b345e09", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in archive/2026-04-21_inline-backups/SageReasoning_Architecture_Map.html:1231"}, "properties": {"repobilityId": "348318a2b12df179", "scanner": "scanner-primary", "fingerprint": "4419a75f3b345e09", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/2026-04-21_inline-backups/SageReasoning_Architecture_Map.html"}, "region": {"startLine": 1231}}}]}, {"ruleId": "scanner-53cd3e5a0121e7c7", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in archive/2026-04-21_inline-backups/website_public_SageReasoning_Architecture_Map.html:1111"}, "properties": {"repobilityId": "2817661e971a55b2", "scanner": "scanner-primary", "fingerprint": "53cd3e5a0121e7c7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/2026-04-21_inline-backups/website_public_SageReasoning_Architecture_Map.html"}, "region": {"startLine": 1111}}}]}, {"ruleId": "scanner-1c83cc2707e85d27", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in archive/2026-04-27_root-html-stale-copies/SageReasoning_Architecture_Map.html:505"}, "properties": {"repobilityId": "3f1c7e6ce3e94544", "scanner": "scanner-primary", "fingerprint": "1c83cc2707e85d27", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/2026-04-27_root-html-stale-copies/SageReasoning_Architecture_Map.html"}, "region": {"startLine": 505}}}]}, {"ruleId": "scanner-38d10197d6cc3715", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in archive/2026-04-27_root-html-stale-copies/SageReasoning_Capability_Inventory.html:338"}, "properties": {"repobilityId": "db321320a68dd1ac", "scanner": "scanner-primary", "fingerprint": "38d10197d6cc3715", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/2026-04-27_root-html-stale-copies/SageReasoning_Capability_Inventory.html"}, "region": {"startLine": 338}}}]}, {"ruleId": "scanner-493a827c79e36000", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in operations/holdpoint-test-harness.mjs:19"}, "properties": {"repobilityId": "05c1862ba27cd0a8", "scanner": "scanner-primary", "fingerprint": "493a827c79e36000", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "operations/holdpoint-test-harness.mjs"}, "region": {"startLine": 19}}}]}, {"ruleId": "scanner-effa30743fa5be13", "level": "error", "message": {"text": "Possible secret in operations/handoffs/founder/rectify-test.py"}, "properties": {"repobilityId": "f38c418b3501cd4f", "scanner": "scanner-primary", "fingerprint": "effa30743fa5be13", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "operations/handoffs/founder/rectify-test.py"}, "region": {"startLine": 35}}}]}, {"ruleId": "scanner-3252d39f03b233c7", "level": "error", "message": {"text": "Possible secret in operations/handoffs/founder/access-test.py"}, "properties": {"repobilityId": "ee9a1fc08a01d730", "scanner": "scanner-primary", "fingerprint": "3252d39f03b233c7", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "operations/handoffs/founder/access-test.py"}, "region": {"startLine": 27}}}]}, {"ruleId": "scanner-1aba65456e6a3ffa", "level": "error", "message": {"text": "Possible secret in operations/handoffs/founder/export-test.py"}, "properties": {"repobilityId": "33b3ded6b1a1febd", "scanner": "scanner-primary", "fingerprint": "1aba65456e6a3ffa", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "operations/handoffs/founder/export-test.py"}, "region": {"startLine": 17}}}]}, {"ruleId": "scanner-63fcadcf51492cb7", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in website/public/SageReasoning_Architecture_Map.html:555"}, "properties": {"repobilityId": "af361ef23f6f369a", "scanner": "scanner-primary", "fingerprint": "63fcadcf51492cb7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "website/public/SageReasoning_Architecture_Map.html"}, "region": {"startLine": 555}}}]}, {"ruleId": "scanner-c602ffc5e646096a", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in website/public/SageReasoning_Ecosystem_Map.html:415"}, "properties": {"repobilityId": "46cc5b3760022f33", "scanner": "scanner-primary", "fingerprint": "c602ffc5e646096a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "website/public/SageReasoning_Ecosystem_Map.html"}, "region": {"startLine": 415}}}]}, {"ruleId": "scanner-a865e2744616d11c", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in website/public/SageReasoning_Capability_Inventory.html:367"}, "properties": {"repobilityId": "c32c1baff71f8d46", "scanner": "scanner-primary", "fingerprint": "a865e2744616d11c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "website/public/SageReasoning_Capability_Inventory.html"}, "region": {"startLine": 367}}}]}, {"ruleId": "scanner-a5a3e8d5f98b19fa", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in website/src/app/page.tsx:52"}, "properties": {"repobilityId": "a3dcf8657e9227c3", "scanner": "scanner-primary", "fingerprint": "a5a3e8d5f98b19fa", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "website/src/app/page.tsx"}, "region": {"startLine": 52}}}]}, {"ruleId": "scanner-975cf8903cb02913", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in website/src/app/score/page.tsx:281"}, "properties": {"repobilityId": "114551da173c71b2", "scanner": "scanner-primary", "fingerprint": "975cf8903cb02913", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "website/src/app/score/page.tsx"}, "region": {"startLine": 281}}}]}, {"ruleId": "scanner-fd39caa8620c9d73", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in website/src/app/api-docs/page.tsx:293"}, "properties": {"repobilityId": "96fbc4f91eff5694", "scanner": "scanner-primary", "fingerprint": "fd39caa8620c9d73", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "website/src/app/api-docs/page.tsx"}, "region": {"startLine": 293}}}]}, {"ruleId": "scanner-c1792808839893b7", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in website/src/app/auth/page.tsx:38"}, "properties": {"repobilityId": "49b9a707d0d2b466", "scanner": "scanner-primary", "fingerprint": "c1792808839893b7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "website/src/app/auth/page.tsx"}, "region": {"startLine": 38}}}]}, {"ruleId": "scanner-c0943b0e3911015a", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in website/src/app/api/practice/reflect/response-builders.ts:52"}, "properties": {"repobilityId": "0f428887fc5eba78", "scanner": "scanner-primary", "fingerprint": "c0943b0e3911015a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "website/src/app/api/practice/reflect/response-builders.ts"}, "region": {"startLine": 52}}}]}, {"ruleId": "scanner-fc990dd2488d51a1", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in website/src/app/api/calling/response-builders.ts:55"}, "properties": {"repobilityId": "3b87f9cad3e19069", "scanner": "scanner-primary", "fingerprint": "fc990dd2488d51a1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "website/src/app/api/calling/response-builders.ts"}, "region": {"startLine": 55}}}]}, {"ruleId": "scanner-38b1922ef4d8b8dd", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts:211"}, "properties": {"repobilityId": "853d9cce43c21eef", "scanner": "scanner-primary", "fingerprint": "38b1922ef4d8b8dd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts"}, "region": {"startLine": 211}}}]}, {"ruleId": "scanner-4616ff6763eb27aa", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in website/src/lib/supabase.ts:18"}, "properties": {"repobilityId": "7107fbdb96fb258c", "scanner": "scanner-primary", "fingerprint": "4616ff6763eb27aa", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "website/src/lib/supabase.ts"}, "region": {"startLine": 18}}}]}, {"ruleId": "scanner-b5048bae85e79602", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in website/src/lib/substrate/trust-layer/accreditation/public-endpoint.ts:189"}, "properties": {"repobilityId": "24b9193c6cd82bde", "scanner": "scanner-primary", "fingerprint": "b5048bae85e79602", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "website/src/lib/substrate/trust-layer/accreditation/public-endpoint.ts"}, "region": {"startLine": 189}}}]}, {"ruleId": "scanner-e57fd65081172984", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in backup/2026-04-20_SageReasoning_Architecture_Map.html:1111"}, "properties": {"repobilityId": "42a9ea5d2aa3e0c8", "scanner": "scanner-primary", "fingerprint": "e57fd65081172984", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "backup/2026-04-20_SageReasoning_Architecture_Map.html"}, "region": {"startLine": 1111}}}]}, {"ruleId": "scanner-3593425fdcb95fa1", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in backup/2026-04-20_SageReasoning_Capability_Inventory.html:336"}, "properties": {"repobilityId": "49824c13ff651530", "scanner": "scanner-primary", "fingerprint": "3593425fdcb95fa1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "backup/2026-04-20_SageReasoning_Capability_Inventory.html"}, "region": {"startLine": 336}}}]}, {"ruleId": "scanner-dd07c77050ad9f2f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in .claude/skills/anthropic/skill-creator/assets/eval_review.html:69"}, "properties": {"repobilityId": "7256a08bdec79782", "scanner": "scanner-primary", "fingerprint": "dd07c77050ad9f2f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/skill-creator/assets/eval_review.html"}, "region": {"startLine": 69}}}]}, {"ruleId": "scanner-0b9879c4a4c7cffc", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in .claude/skills/anthropic/skill-creator/eval-viewer/viewer.html:766"}, "properties": {"repobilityId": "968c66e196541e1a", "scanner": "scanner-primary", "fingerprint": "0b9879c4a4c7cffc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/skill-creator/eval-viewer/viewer.html"}, "region": {"startLine": 766}}}]}, {"ruleId": "scanner-41567592a86858ea", "level": "warning", "message": {"text": "Insecure pattern 'subprocess_shell_true' in .claude/skills/anthropic/webapp-testing/scripts/with_server.py:71"}, "properties": {"repobilityId": "fc442ec2a51b4745", "scanner": "scanner-primary", "fingerprint": "41567592a86858ea", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "subprocess_shell_true"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/webapp-testing/scripts/with_server.py"}, "region": {"startLine": 71}}}]}, {"ruleId": "scanner-6a707da326bbe2de", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in prototypes/SageReasoning_Private_Mentor_Hub.html:1087"}, "properties": {"repobilityId": "163dd66e483ddc31", "scanner": "scanner-primary", "fingerprint": "6a707da326bbe2de", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "prototypes/SageReasoning_Private_Mentor_Hub.html"}, "region": {"startLine": 1087}}}]}, {"ruleId": "scanner-3965c04f1335314b", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in prototypes/SageReasoning_Mentor_Hub.html:559"}, "properties": {"repobilityId": "174fa72217b6b95c", "scanner": "scanner-primary", "fingerprint": "3965c04f1335314b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "prototypes/SageReasoning_Mentor_Hub.html"}, "region": {"startLine": 559}}}]}, {"ruleId": "scanner-e6039ccb1d6e3ba4", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in prototypes/SageReasoning_Sage_Ops_Hub.html:2519"}, "properties": {"repobilityId": "41f218b91707e8d1", "scanner": "scanner-primary", "fingerprint": "e6039ccb1d6e3ba4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "prototypes/SageReasoning_Sage_Ops_Hub.html"}, "region": {"startLine": 2519}}}]}, {"ruleId": "scanner-cb639d9a10a47b23", "level": "note", "message": {"text": "package.json defines install-time lifecycle scripts"}, "properties": {"repobilityId": "b86179956da3a4a8", "scanner": "scanner-primary", "fingerprint": "cb639d9a10a47b23", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "npm", "install-scripts"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "package.json"}, "region": {"startLine": 1}}}]}, {"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-a57564450cad361f", "level": "note", "message": {"text": "Very large file: sage-mentor/journal-interpreter.ts (1705 lines)"}, "properties": {"repobilityId": "587c9e8d46690fbf", "scanner": "scanner-primary", "fingerprint": "a57564450cad361f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-16d94098addcc202", "level": "note", "message": {"text": "Very large file: sage-mentor/mentor-ledger.ts (1305 lines)"}, "properties": {"repobilityId": "5090352277a2a782", "scanner": "scanner-primary", "fingerprint": "16d94098addcc202", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0bcc7cf7734463d5", "level": "note", "message": {"text": "Very large file: website/scripts/verify-translation-sandwich.ts (3021 lines)"}, "properties": {"repobilityId": "d182b1ecc23e561e", "scanner": "scanner-primary", "fingerprint": "0bcc7cf7734463d5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6973ac4ba029446e", "level": "note", "message": {"text": "Very large file: website/src/app/api/reason/route.ts (1732 lines)"}, "properties": {"repobilityId": "9ae36311953761b1", "scanner": "scanner-primary", "fingerprint": "6973ac4ba029446e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d18e9f5a8969f8e4", "level": "note", "message": {"text": "Very large file: website/src/app/api/founder/hub/route.ts (1693 lines)"}, "properties": {"repobilityId": "bd15eb723c705d6e", "scanner": "scanner-primary", "fingerprint": "d18e9f5a8969f8e4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3e4cccc9d34b4460", "level": "note", "message": {"text": "Very large file: website/src/app/private-mentor/page.tsx (1948 lines)"}, "properties": {"repobilityId": "32039e2a2d36b680", "scanner": "scanner-primary", "fingerprint": "3e4cccc9d34b4460", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-59eae5bcd5cae1e8", "level": "note", "message": {"text": "Very large file: website/src/app/ops-hub/page.tsx (2127 lines)"}, "properties": {"repobilityId": "52a5cbdbcc05c0a9", "scanner": "scanner-primary", "fingerprint": "59eae5bcd5cae1e8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-86d9028cb4a5e1cc", "level": "note", "message": {"text": "Very large file: website/src/lib/journal-content.ts (862 lines)"}, "properties": {"repobilityId": "65c5ab991bdf377a", "scanner": "scanner-primary", "fingerprint": "86d9028cb4a5e1cc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9d9e9cc1e2c496e2", "level": "note", "message": {"text": "Very large file: website/src/lib/substrate/philosophical-mode-service.ts (1540 lines)"}, "properties": {"repobilityId": "ffc8eb9527dfc0b7", "scanner": "scanner-primary", "fingerprint": "9d9e9cc1e2c496e2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9fd8474579524ed8", "level": "note", "message": {"text": "Very large file: website/src/lib/translation-sandwich/layer2-mechanisms.ts (2523 lines)"}, "properties": {"repobilityId": "1f6f99a03cc2a37f", "scanner": "scanner-primary", "fingerprint": "9fd8474579524ed8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-088727f43a93cf5f", "level": "note", "message": {"text": "Very large file: website/src/lib/translation-sandwich/parallel-run.ts (1299 lines)"}, "properties": {"repobilityId": "8609816d06709e11", "scanner": "scanner-primary", "fingerprint": "088727f43a93cf5f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3fd87b35b969c28d", "level": "note", "message": {"text": "Very large file: website/src/lib/translation-sandwich/layer1-extractor.ts (1814 lines)"}, "properties": {"repobilityId": "0d9fef0a1c706e54", "scanner": "scanner-primary", "fingerprint": "3fd87b35b969c28d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-73b6436f5fa67a5b", "level": "note", "message": {"text": "Very large file: website/src/lib/translation-sandwich/layer3-prose.ts (1336 lines)"}, "properties": {"repobilityId": "f038dc9a75a9532e", "scanner": "scanner-primary", "fingerprint": "73b6436f5fa67a5b", "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-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "7c17b8af14eb8eac", "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": "55db3466c3e8695b", "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": "6566d911974b9aac", "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": "4a00e9e5d1b3afd2", "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": "15d048fa10379bec", "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": "75b5f7c528a3e643", "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": "24c0e2864437493a", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-4f2e7fbc2a240bb6", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/SKILL.md"}, "properties": {"repobilityId": "dc3ee8686930baef", "scanner": "scanner-primary", "fingerprint": "4f2e7fbc2a240bb6", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/SKILL.md"}, "region": {"startLine": 191}}}]}, {"ruleId": "scanner-bbf0f6da2750b5e1", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/php/managed-agents/README.md"}, "properties": {"repobilityId": "378c08623b03fd12", "scanner": "scanner-primary", "fingerprint": "bbf0f6da2750b5e1", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/php/managed-agents/README.md"}, "region": {"startLine": 433}}}]}, {"ruleId": "scanner-15eb3a612552d85d", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/php/managed-agents/README.md"}, "properties": {"repobilityId": "4f7aebb64b4817de", "scanner": "scanner-primary", "fingerprint": "15eb3a612552d85d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/php/managed-agents/README.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-bcb940f300c65d9c", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/ruby/managed-agents/README.md"}, "properties": {"repobilityId": "1935472174c3c6df", "scanner": "scanner-primary", "fingerprint": "bcb940f300c65d9c", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/ruby/managed-agents/README.md"}, "region": {"startLine": 309}}}]}, {"ruleId": "scanner-ded7426a2a18a1e2", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/ruby/managed-agents/README.md"}, "properties": {"repobilityId": "6156e0bbdff10c04", "scanner": "scanner-primary", "fingerprint": "ded7426a2a18a1e2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/ruby/managed-agents/README.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-92049b12940c30f8", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/models.md"}, "properties": {"repobilityId": "044a921437e9c05a", "scanner": "scanner-primary", "fingerprint": "92049b12940c30f8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/shared/models.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8258f576c0922aad", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/shared/model-migration.md"}, "properties": {"repobilityId": "a37b9cafa74a8781", "scanner": "scanner-primary", "fingerprint": "8258f576c0922aad", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/shared/model-migration.md"}, "region": {"startLine": 614}}}]}, {"ruleId": "scanner-2db84fd0cb31b87a", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-tools.md"}, "properties": {"repobilityId": "2ddc28f36278764c", "scanner": "scanner-primary", "fingerprint": "2db84fd0cb31b87a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/shared/managed-agents-tools.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-092c500ae88c848b", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-events.md"}, "properties": {"repobilityId": "b2a34e37d22d7e3d", "scanner": "scanner-primary", "fingerprint": "092c500ae88c848b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/shared/managed-agents-events.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cde7d3a533c172a1", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-memory.md"}, "properties": {"repobilityId": "415434f69f31bc72", "scanner": "scanner-primary", "fingerprint": "cde7d3a533c172a1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/shared/managed-agents-memory.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cf07131852c77fb3", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-environments.md"}, "properties": {"repobilityId": "0f67b60d03269f2e", "scanner": "scanner-primary", "fingerprint": "cf07131852c77fb3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/shared/managed-agents-environments.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9f9f4836151cb735", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-client-patterns.md"}, "properties": {"repobilityId": "d3412fe8a475ad87", "scanner": "scanner-primary", "fingerprint": "9f9f4836151cb735", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/shared/managed-agents-client-patterns.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c1501c8b6e1e0f8c", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/shared/managed-agents-core.md"}, "properties": {"repobilityId": "8b0c9666ebe87af3", "scanner": "scanner-primary", "fingerprint": "c1501c8b6e1e0f8c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/shared/managed-agents-core.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4767a5d527326d78", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/typescript/claude-api/tool-use.md"}, "properties": {"repobilityId": "f9e01c2fa7661291", "scanner": "scanner-primary", "fingerprint": "4767a5d527326d78", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/typescript/claude-api/tool-use.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-aa4dcc7c61f849db", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/typescript/claude-api/streaming.md"}, "properties": {"repobilityId": "1015d7af71a892c4", "scanner": "scanner-primary", "fingerprint": "aa4dcc7c61f849db", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/typescript/claude-api/streaming.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a23b997794c83b98", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/typescript/claude-api/files-api.md"}, "properties": {"repobilityId": "194b3ffa313785a0", "scanner": "scanner-primary", "fingerprint": "a23b997794c83b98", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/typescript/claude-api/files-api.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7f752c8a3016fdc3", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/csharp/claude-api.md"}, "properties": {"repobilityId": "b1cec0a69ac781c6", "scanner": "scanner-primary", "fingerprint": "7f752c8a3016fdc3", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/csharp/claude-api.md"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-ab29908a7bc19599", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/python/claude-api/tool-use.md"}, "properties": {"repobilityId": "714bbadb0bfa3f51", "scanner": "scanner-primary", "fingerprint": "ab29908a7bc19599", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/python/claude-api/tool-use.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9b007cfe443870cb", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/python/claude-api/streaming.md"}, "properties": {"repobilityId": "c6fe5be59e1b7085", "scanner": "scanner-primary", "fingerprint": "9b007cfe443870cb", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/python/claude-api/streaming.md"}, "region": {"startLine": 114}}}]}, {"ruleId": "scanner-f811023030457a0f", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/python/claude-api/files-api.md"}, "properties": {"repobilityId": "daa35345b37d633a", "scanner": "scanner-primary", "fingerprint": "f811023030457a0f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/python/claude-api/files-api.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-97446e33def7ea2a", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/java/claude-api.md"}, "properties": {"repobilityId": "c8c8a18903b95bba", "scanner": "scanner-primary", "fingerprint": "97446e33def7ea2a", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/java/claude-api.md"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-1ea004cf77ce5645", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: .claude/skills/anthropic/claude-api/go/managed-agents/README.md"}, "properties": {"repobilityId": "158069b378dcb1d6", "scanner": "scanner-primary", "fingerprint": "1ea004cf77ce5645", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/go/managed-agents/README.md"}, "region": {"startLine": 452}}}]}, {"ruleId": "scanner-c96b4e1103caecea", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/claude-api/go/managed-agents/README.md"}, "properties": {"repobilityId": "737e90150c02a29f", "scanner": "scanner-primary", "fingerprint": "c96b4e1103caecea", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/claude-api/go/managed-agents/README.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f2d3780940bef016", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/skill-creator/references/schemas.md"}, "properties": {"repobilityId": "bca61e752a323c5f", "scanner": "scanner-primary", "fingerprint": "f2d3780940bef016", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/skill-creator/references/schemas.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ad9f555e87c4ca6a", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/skill-creator/agents/comparator.md"}, "properties": {"repobilityId": "5cc3c7ba4463b1ae", "scanner": "scanner-primary", "fingerprint": "ad9f555e87c4ca6a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/skill-creator/agents/comparator.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e4e80c55f821b356", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/slack-gif-creator/SKILL.md"}, "properties": {"repobilityId": "74d7a2bb199291d1", "scanner": "scanner-primary", "fingerprint": "e4e80c55f821b356", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/slack-gif-creator/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ce8798b6737b8cfb", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/docx/SKILL.md"}, "properties": {"repobilityId": "5afb4f8139c5f46a", "scanner": "scanner-primary", "fingerprint": "ce8798b6737b8cfb", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/docx/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f2c0e976881bad36", "level": "warning", "message": {"text": "Agent instruction contains unpinned remote install: .claude/skills/anthropic/docx/SKILL.md"}, "properties": {"repobilityId": "36e7f8e373af373b", "scanner": "scanner-primary", "fingerprint": "f2c0e976881bad36", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "supply-chain", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/docx/SKILL.md"}, "region": {"startLine": 58}}}]}, {"ruleId": "scanner-ebdd6a187b16c4b4", "level": "warning", "message": {"text": "Agent instruction contains unpinned remote install: .claude/skills/anthropic/pptx/pptxgenjs.md"}, "properties": {"repobilityId": "574446ea4e04857e", "scanner": "scanner-primary", "fingerprint": "ebdd6a187b16c4b4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "supply-chain", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/pptx/pptxgenjs.md"}, "region": {"startLine": 238}}}]}, {"ruleId": "scanner-04f325332b1c67f7", "level": "warning", "message": {"text": "Agent instruction contains unpinned remote install: .claude/skills/anthropic/pptx/SKILL.md"}, "properties": {"repobilityId": "88d0756e97f03957", "scanner": "scanner-primary", "fingerprint": "04f325332b1c67f7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "supply-chain", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/pptx/SKILL.md"}, "region": {"startLine": 230}}}]}, {"ruleId": "scanner-1b3093538fabc807", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/anthropic/pdf/reference.md"}, "properties": {"repobilityId": "c43777fdea5ee630", "scanner": "scanner-primary", "fingerprint": "1b3093538fabc807", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/anthropic/pdf/reference.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-59bad6a1929fc92c", "level": "none", "message": {"text": "Commented-code block (7 lines) in sage-mentor/persona.ts:119"}, "properties": {"repobilityId": "952117f6f5e8212a", "scanner": "scanner-primary", "fingerprint": "59bad6a1929fc92c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa4578cbae8f93eb", "level": "none", "message": {"text": "Commented-code block (5 lines) in sage-mentor/profile-store.ts:781"}, "properties": {"repobilityId": "37dc69bfde39b0e0", "scanner": "scanner-primary", "fingerprint": "aa4578cbae8f93eb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5d10cb63a4a3d23b", "level": "none", "message": {"text": "Commented-code block (6 lines) in sage-mentor/support-agent.ts:54"}, "properties": {"repobilityId": "9914e103b2308e84", "scanner": "scanner-primary", "fingerprint": "5d10cb63a4a3d23b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d5c0ad39928a20ff", "level": "none", "message": {"text": "Commented-code block (6 lines) in sage-mentor/ring-wrapper.ts:144"}, "properties": {"repobilityId": "c8ced11346bc1cf4", "scanner": "scanner-primary", "fingerprint": "d5c0ad39928a20ff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9e7ee2b30cb10f0a", "level": "none", "message": {"text": "Commented-code block (5 lines) in sage-mentor/proactive-scheduler.ts:431"}, "properties": {"repobilityId": "55e22ca6a0dbc08b", "scanner": "scanner-primary", "fingerprint": "9e7ee2b30cb10f0a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-812135447298ad46", "level": "none", "message": {"text": "Commented-code block (11 lines) in trust-layer/types/accreditation.ts:126"}, "properties": {"repobilityId": "e702603bb5a4c148", "scanner": "scanner-primary", "fingerprint": "812135447298ad46", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-443438d86438b4e0", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 engineering/pmf-assessment-agent.js:267"}, "properties": {"repobilityId": "96ba133c6c733f99", "scanner": "scanner-primary", "fingerprint": "443438d86438b4e0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-021e535be8aa0145", "level": "none", "message": {"text": "Commented-code block (5 lines) in archive/2026-04-21_inline-backups/ops-continuity-state-b2.ts:158"}, "properties": {"repobilityId": "fd3439fbe49c5e1c", "scanner": "scanner-primary", "fingerprint": "021e535be8aa0145", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-291e113c0556f112", "level": "none", "message": {"text": "Commented-code block (5 lines) in archive/2026-04-22_inline-backups/ops-continuity-state.ts:183"}, "properties": {"repobilityId": "23c64f14c00e236a", "scanner": "scanner-primary", "fingerprint": "291e113c0556f112", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-13b2dd40c294e0dc", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 operations/handoffs/founder/journal-encryption-test.py:54"}, "properties": {"repobilityId": "62cfe48404160aeb", "scanner": "scanner-primary", "fingerprint": "13b2dd40c294e0dc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-66d15c9c030d3428", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 operations/handoffs/founder/rectify-test.py:49"}, "properties": {"repobilityId": "4220f08f08352923", "scanner": "scanner-primary", "fingerprint": "66d15c9c030d3428", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7a1c46ef6cb90836", "level": "none", "message": {"text": "Commented-code block (10 lines) in operations/migrations/2026-05-03-corpus-passages-population.mjs:10"}, "properties": {"repobilityId": "4fd5d5a6a12f5c89", "scanner": "scanner-primary", "fingerprint": "7a1c46ef6cb90836", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2503e6b7a60121dd", "level": "none", "message": {"text": "Commented-code block (9 lines) in operations/migrations/2026-05-04-corpus-passages-embeddings.mjs:10"}, "properties": {"repobilityId": "b509ab009a83af00", "scanner": "scanner-primary", "fingerprint": "2503e6b7a60121dd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-77153d56b8a9f121", "level": "none", "message": {"text": "Commented-code block (10 lines) in operations/migrations/2026-05-03-d-a16-catalogue-population.mjs:5"}, "properties": {"repobilityId": "213e15fa47fd5cc9", "scanner": "scanner-primary", "fingerprint": "77153d56b8a9f121", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cafabc8e8961e472", "level": "none", "message": {"text": "Commented-code block (7 lines) in scripts/mentor-ring-proof-verification.mjs:147"}, "properties": {"repobilityId": "4e4ef99a578cd6ed", "scanner": "scanner-primary", "fingerprint": "cafabc8e8961e472", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d8d529574c57d9e8", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/ops-wiring-verification.mjs:341"}, "properties": {"repobilityId": "3f69f38f91955da6", "scanner": "scanner-primary", "fingerprint": "d8d529574c57d9e8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3adc06a9bdb7bd08", "level": "none", "message": {"text": "Commented-code block (9 lines) in scripts/support-wiring-verification.mjs:51"}, "properties": {"repobilityId": "dee51c074b6e9218", "scanner": "scanner-primary", "fingerprint": "3adc06a9bdb7bd08", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-02bede926428ebf6", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/scripts/verify-reason-rag.ts:675"}, "properties": {"repobilityId": "14b4f2f2be077f97", "scanner": "scanner-primary", "fingerprint": "02bede926428ebf6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5ecd9e332c7d7d51", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/scripts/verify-translation-sandwich.ts:121"}, "properties": {"repobilityId": "2e41a8c248acf7dd", "scanner": "scanner-primary", "fingerprint": "5ecd9e332c7d7d51", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7f4117c3d2479bbf", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/scripts/whole-system-harness/run-c2.ts:222"}, "properties": {"repobilityId": "d7e1fac91231ac3e", "scanner": "scanner-primary", "fingerprint": "7f4117c3d2479bbf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1e92948ec1a14892", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/scripts/whole-system-harness/run-l2.ts:144"}, "properties": {"repobilityId": "f2f2bcf432de4819", "scanner": "scanner-primary", "fingerprint": "1e92948ec1a14892", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5e2ebaebe83f2d12", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/scripts/whole-system-harness/run-r20a-gate-probe.ts:256"}, "properties": {"repobilityId": "0d3921fbaa1e24f7", "scanner": "scanner-primary", "fingerprint": "5e2ebaebe83f2d12", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d824cf9a9c28d56e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/scripts/whole-system-harness/lib/http-client.ts:52"}, "properties": {"repobilityId": "babc4b730a87967c", "scanner": "scanner-primary", "fingerprint": "d824cf9a9c28d56e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6d1898e2d4fb670a", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/scripts/whole-system-harness/lib/calling-driver.ts:165"}, "properties": {"repobilityId": "2e499cab3e5faa49", "scanner": "scanner-primary", "fingerprint": "6d1898e2d4fb670a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f7cdea4902e30bc6", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/components/PracticeCalendar.tsx:71"}, "properties": {"repobilityId": "ecf13f59675c6ffb", "scanner": "scanner-primary", "fingerprint": "f7cdea4902e30bc6", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-028f9c99981b5cb2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/components/MilestonesDisplay.tsx:23"}, "properties": {"repobilityId": "564b052c4483966f", "scanner": "scanner-primary", "fingerprint": "028f9c99981b5cb2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d1596db8d9b575c4", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/auth/page.tsx:58"}, "properties": {"repobilityId": "c28a26b23f317a6f", "scanner": "scanner-primary", "fingerprint": "d1596db8d9b575c4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a67dfc172d74d4a9", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/__tests__/r20a-configuration-flows.test.ts:185"}, "properties": {"repobilityId": "69c34c22e32a7757", "scanner": "scanner-primary", "fingerprint": "a67dfc172d74d4a9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1b263038b52d4b52", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/app/api/mentor-journal-week/route.ts:31"}, "properties": {"repobilityId": "7c8f54aac83e49f5", "scanner": "scanner-primary", "fingerprint": "1b263038b52d4b52", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-46cfce477095c3e5", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/app/api/score-iterate/route.ts:12"}, "properties": {"repobilityId": "91158f97dba88e3d", "scanner": "scanner-primary", "fingerprint": "46cfce477095c3e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7f95350955bd5492", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/api/score-iterate/route.ts:774"}, "properties": {"repobilityId": "1daa62e50f14fe7c", "scanner": "scanner-primary", "fingerprint": "7f95350955bd5492", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-db7a8e3814f5ff69", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/app/api/public-key/route.ts:13"}, "properties": {"repobilityId": "2d41aab39ef17186", "scanner": "scanner-primary", "fingerprint": "db7a8e3814f5ff69", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb8468b6a723f405", "level": "none", "message": {"text": "Commented-code block (12 lines) in website/src/app/api/usage/route.ts:63"}, "properties": {"repobilityId": "e9e490747f8b8a0e", "scanner": "scanner-primary", "fingerprint": "eb8468b6a723f405", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-07e5dc389a72efce", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/app/api/journal/route.ts:46"}, "properties": {"repobilityId": "ba380f1960b760a6", "scanner": "scanner-primary", "fingerprint": "07e5dc389a72efce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4f0d49de0df71d43", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/app/api/internal/retrieve/route.ts:23"}, "properties": {"repobilityId": "5dc80a8a796fa3c4", "scanner": "scanner-primary", "fingerprint": "4f0d49de0df71d43", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1caedae58a9f8cad", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/app/api/mentor-profile/route.ts:21"}, "properties": {"repobilityId": "d0fb7ed9a674bcbd", "scanner": "scanner-primary", "fingerprint": "1caedae58a9f8cad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b0586cd92f47073f", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/app/api/billing/usage-summary/route.ts:97"}, "properties": {"repobilityId": "fc87967e34b387b3", "scanner": "scanner-primary", "fingerprint": "b0586cd92f47073f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-61d4ae4e977fd36e", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/app/api/billing/cost-alerts/evaluate/route.ts:87"}, "properties": {"repobilityId": "03c9d281bbaacc4c", "scanner": "scanner-primary", "fingerprint": "61d4ae4e977fd36e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ae010174e1f2749d", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/admin/accreditation-credentials/route.ts:66"}, "properties": {"repobilityId": "653378a52fbc42c0", "scanner": "scanner-primary", "fingerprint": "ae010174e1f2749d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-accb0d22146f3ee5", "level": "note", "message": {"text": "Legacy-named symbol `agent_acme_v1` in website/src/app/api/admin/accreditation-credentials/__tests__/route.test.ts:77"}, "properties": {"repobilityId": "1869d4513e06e282", "scanner": "scanner-primary", "fingerprint": "accb0d22146f3ee5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-441f1776f9002232", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/app/api/admin/api-keys/route.ts:87"}, "properties": {"repobilityId": "66859807544a8db6", "scanner": "scanner-primary", "fingerprint": "441f1776f9002232", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c3723ecf2483744c", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/admin/plugin-install-credentials/route.ts:75"}, "properties": {"repobilityId": "d0dd690ab88b8a24", "scanner": "scanner-primary", "fingerprint": "c3723ecf2483744c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7a5d4f028007d0b4", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/app/api/reason/route.ts:16"}, "properties": {"repobilityId": "6c931c174ec082b0", "scanner": "scanner-primary", "fingerprint": "7a5d4f028007d0b4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5578e18c7b40fdd4", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/practice/reflect/route.ts:87"}, "properties": {"repobilityId": "5b475e5590d1d93a", "scanner": "scanner-primary", "fingerprint": "5578e18c7b40fdd4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-119a8fcbd55b2ef8", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/api/practice/reflect/route.ts:315"}, "properties": {"repobilityId": "5f9ab703aad0a1d0", "scanner": "scanner-primary", "fingerprint": "119a8fcbd55b2ef8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d2f5d472997b8eae", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/practice/reflect/response-builders.ts:26"}, "properties": {"repobilityId": "022e64350c6cdc99", "scanner": "scanner-primary", "fingerprint": "d2f5d472997b8eae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1e0855a8c30922e1", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/app/api/practice/reflect/__tests__/r20a-invocation.test.ts:494"}, "properties": {"repobilityId": "d571deeca1953110", "scanner": "scanner-primary", "fingerprint": "1e0855a8c30922e1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-367bdd435d468272", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/app/api/reflect/route.ts:228"}, "properties": {"repobilityId": "adfee46eed252df8", "scanner": "scanner-primary", "fingerprint": "367bdd435d468272", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9e23c0958a64f163", "level": "none", "message": {"text": "Commented-code block (10 lines) in website/src/app/api/keys/route.ts:36"}, "properties": {"repobilityId": "5134763aada51e88", "scanner": "scanner-primary", "fingerprint": "9e23c0958a64f163", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-203c228ff78fa196", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/score-scenario/route.ts:189"}, "properties": {"repobilityId": "e50f14903c5d2f48", "scanner": "scanner-primary", "fingerprint": "203c228ff78fa196", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b2dfe2f7ab720172", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/substrate/layer3/route.ts:15"}, "properties": {"repobilityId": "56f430d470cabe6c", "scanner": "scanner-primary", "fingerprint": "b2dfe2f7ab720172", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-76aca6e797e0b906", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/app/api/score-decision/route.ts:142"}, "properties": {"repobilityId": "e6be5f69b716b1cb", "scanner": "scanner-primary", "fingerprint": "76aca6e797e0b906", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5182f2aefdd010e3", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/app/api/cron/narrative-sweep/route.ts:70"}, "properties": {"repobilityId": "81a339fd49e1fb14", "scanner": "scanner-primary", "fingerprint": "5182f2aefdd010e3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-30b5134e71102482", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/app/api/cron/trajectory-retention-sweep/__tests__/route.test.ts:145"}, "properties": {"repobilityId": "f89418ed0c1eb06d", "scanner": "scanner-primary", "fingerprint": "30b5134e71102482", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f6401bd8a2055735", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/app/api/calling/route.ts:90"}, "properties": {"repobilityId": "2c356738533f9404", "scanner": "scanner-primary", "fingerprint": "f6401bd8a2055735", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d25ca171c3d68f2f", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/calling/response-builders.ts:29"}, "properties": {"repobilityId": "3b0d13cb45316f26", "scanner": "scanner-primary", "fingerprint": "d25ca171c3d68f2f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9d92d551d58cb837", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/calling/approve/route.ts:90"}, "properties": {"repobilityId": "528cb47a03913677", "scanner": "scanner-primary", "fingerprint": "9d92d551d58cb837", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f4d3fc17f6add321", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/app/api/mentor-appendix/route.ts:31"}, "properties": {"repobilityId": "ce021f625d80605f", "scanner": "scanner-primary", "fingerprint": "f4d3fc17f6add321", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-88ad5821c0ba2a2f", "level": "none", "message": {"text": "Commented-code block (10 lines) in website/src/app/api/user/delete/route.ts:62"}, "properties": {"repobilityId": "426151c4850fafe6", "scanner": "scanner-primary", "fingerprint": "88ad5821c0ba2a2f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-83e528dfc2283270", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/app/api/user/rectify/route.ts:156"}, "properties": {"repobilityId": "a631b25a171e30ae", "scanner": "scanner-primary", "fingerprint": "83e528dfc2283270", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a855d9777559dddd", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/user/export/route.ts:118"}, "properties": {"repobilityId": "d21b1fe323e90d79", "scanner": "scanner-primary", "fingerprint": "a855d9777559dddd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a64683e74f295da4", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/app/api/mentor/private/baseline-response/route.ts:31"}, "properties": {"repobilityId": "1cc77d8595143986", "scanner": "scanner-primary", "fingerprint": "a64683e74f295da4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-07bf6212a35f4f4e", "level": "none", "message": {"text": "Commented-code block (12 lines) in website/src/app/api/mentor/private/reflect/route.ts:24"}, "properties": {"repobilityId": "56d9e8c8a74fb683", "scanner": "scanner-primary", "fingerprint": "07bf6212a35f4f4e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c1f57ed3e966d072", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/app/api/mentor/journal-feed/route.ts:77"}, "properties": {"repobilityId": "098beb30966d7477", "scanner": "scanner-primary", "fingerprint": "c1f57ed3e966d072", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-78b59247ff37c174", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/app/api/mentor/ring/proof/route.ts:130"}, "properties": {"repobilityId": "98c1fe28cfb9eb4e", "scanner": "scanner-primary", "fingerprint": "78b59247ff37c174", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f39d3fa098909e4c", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/app/api/skill/sage-classify/route.ts:38"}, "properties": {"repobilityId": "54bedc7d909824c1", "scanner": "scanner-primary", "fingerprint": "f39d3fa098909e4c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d41471d258f479dc", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/app/api/skill/sage-prioritise/route.ts:45"}, "properties": {"repobilityId": "942fdf9f0303d612", "scanner": "scanner-primary", "fingerprint": "d41471d258f479dc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-46f5dc58d518f62f", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/app/api/accreditation/[agent_id]/route.ts:243"}, "properties": {"repobilityId": "77ccfcd98af5a037", "scanner": "scanner-primary", "fingerprint": "46f5dc58d518f62f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-139ddd5ca0dfc336", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/app/api/accreditation/[agent_id]/response-builders.ts:209"}, "properties": {"repobilityId": "c9f5605f3070c08e", "scanner": "scanner-primary", "fingerprint": "139ddd5ca0dfc336", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-784279decda5da46", "level": "note", "message": {"text": "Legacy-named symbol `agent_test_v1` in website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts:130"}, "properties": {"repobilityId": "5978f1d7381b99c6", "scanner": "scanner-primary", "fingerprint": "784279decda5da46", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1620175bcda28c68", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/accreditation/[agent_id]/__tests__/route.test.ts:420"}, "properties": {"repobilityId": "9496aed444650346", "scanner": "scanner-primary", "fingerprint": "1620175bcda28c68", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cbaced531bed13c6", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/app/api/founder/hub/route.ts:46"}, "properties": {"repobilityId": "cbbbdc50c88a9e80", "scanner": "scanner-primary", "fingerprint": "cbaced531bed13c6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b6503ce9df8d10e9", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/abuse/evaluate/route.ts:89"}, "properties": {"repobilityId": "68d7f25ddb234427", "scanner": "scanner-primary", "fingerprint": "b6503ce9df8d10e9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-af67426370480904", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/app/api/mentor-baseline-response/route.ts:21"}, "properties": {"repobilityId": "bab257c345bf8d12", "scanner": "scanner-primary", "fingerprint": "af67426370480904", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0a1ab365559f6174", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/app/api/webhooks/stripe/route.ts:448"}, "properties": {"repobilityId": "c7e58f6a9901f17f", "scanner": "scanner-primary", "fingerprint": "0a1ab365559f6174", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a47ad9bcee735b08", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/app/api/guardrail/route.ts:88"}, "properties": {"repobilityId": "4d7c02235324d02b", "scanner": "scanner-primary", "fingerprint": "a47ad9bcee735b08", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-da8697c8e199a0e1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/api/guardrail/route.ts:392"}, "properties": {"repobilityId": "a4d73cbda41e8d0d", "scanner": "scanner-primary", "fingerprint": "da8697c8e199a0e1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-bac74f00f4857fbb", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/app/mentor-baseline/refinements/page.tsx:11"}, "properties": {"repobilityId": "66050421612254af", "scanner": "scanner-primary", "fingerprint": "bac74f00f4857fbb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d10ac61f78f6b4cd", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/community/page.tsx:73"}, "properties": {"repobilityId": "b0625f09c1f2c292", "scanner": "scanner-primary", "fingerprint": "d10ac61f78f6b4cd", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-292a9b07760a75b6", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/app/admin/test-reason/page.tsx:40"}, "properties": {"repobilityId": "94a0e3165579209c", "scanner": "scanner-primary", "fingerprint": "292a9b07760a75b6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e6e21d27646823d2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/app/admin/test-reason/page.tsx:12"}, "properties": {"repobilityId": "26e11e665b2b87b8", "scanner": "scanner-primary", "fingerprint": "e6e21d27646823d2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8cddbb667e2bb3d1", "level": "none", "message": {"text": "Commented-code block (10 lines) in website/src/app/mentor-hub/page.tsx:132"}, "properties": {"repobilityId": "04176343064ec0ad", "scanner": "scanner-primary", "fingerprint": "8cddbb667e2bb3d1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-147e0ec933805455", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/app/ops-hub/page.tsx:383"}, "properties": {"repobilityId": "871fb4bd35c1678a", "scanner": "scanner-primary", "fingerprint": "147e0ec933805455", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-65e31c2d63eac52c", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/security.ts:269"}, "properties": {"repobilityId": "86741e954ea62437", "scanner": "scanner-primary", "fingerprint": "65e31c2d63eac52c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c99fc3344a386558", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/lib/loop-cost-tracker.ts:449"}, "properties": {"repobilityId": "bbee688e970d1699", "scanner": "scanner-primary", "fingerprint": "c99fc3344a386558", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-494432bda0cc9c55", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/json-utils.ts:60"}, "properties": {"repobilityId": "fc83afca30b28166", "scanner": "scanner-primary", "fingerprint": "494432bda0cc9c55", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-929f788391eb2da0", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/sage-reason-engine.ts:385"}, "properties": {"repobilityId": "a2f18c3d75a1a9e4", "scanner": "scanner-primary", "fingerprint": "929f788391eb2da0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ff0e9f00bd2c5dc8", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/lib/auth-fetch.ts:27"}, "properties": {"repobilityId": "58fe57046e119704", "scanner": "scanner-primary", "fingerprint": "ff0e9f00bd2c5dc8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6347cfd4240ff8e2", "level": "none", "message": {"text": "Commented-code block (18 lines) in website/src/lib/skill-registry.ts:757"}, "properties": {"repobilityId": "acaf92c2cec303da", "scanner": "scanner-primary", "fingerprint": "6347cfd4240ff8e2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-815ff1b0afcd0a9a", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/stoic-brain.ts:755"}, "properties": {"repobilityId": "60c104009613eefd", "scanner": "scanner-primary", "fingerprint": "815ff1b0afcd0a9a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-546acb0ef971f3ec", "level": "none", "message": {"text": "Commented-code block (9 lines) in website/src/lib/mentor-profile-store.ts:159"}, "properties": {"repobilityId": "53848fe2783d247d", "scanner": "scanner-primary", "fingerprint": "546acb0ef971f3ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-81f8785cccacc940", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/consumer-erasure.ts:132"}, "properties": {"repobilityId": "48383906f87dc34a", "scanner": "scanner-primary", "fingerprint": "81f8785cccacc940", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-414b3b888cef443c", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/lib/mentor-profile-adapter.ts:59"}, "properties": {"repobilityId": "d5447194c77d4f4d", "scanner": "scanner-primary", "fingerprint": "414b3b888cef443c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a38fae7273369f07", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/deliberation.ts:345"}, "properties": {"repobilityId": "4a903921d44eb47a", "scanner": "scanner-primary", "fingerprint": "a38fae7273369f07", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b1e46e29223d21c7", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/__tests__/r20a-invocation-guard.test.ts:51"}, "properties": {"repobilityId": "41aff472f8e5ad74", "scanner": "scanner-primary", "fingerprint": "b1e46e29223d21c7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-601fbdf9e2ff72d5", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/__tests__/response-envelope-ci8.test.ts:98"}, "properties": {"repobilityId": "66df208cdd06e86d", "scanner": "scanner-primary", "fingerprint": "601fbdf9e2ff72d5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9edef29ad5a9328e", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/__tests__/r20a-classifier-eval.ts:103"}, "properties": {"repobilityId": "b17620dbb293445c", "scanner": "scanner-primary", "fingerprint": "9edef29ad5a9328e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-25c9957716deef54", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/lib/__tests__/sage-reason-composition-order.test.ts:34"}, "properties": {"repobilityId": "f8bded990d6a9e27", "scanner": "scanner-primary", "fingerprint": "25c9957716deef54", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f75588ba4d375508", "level": "note", "message": {"text": "Legacy-named symbol `resolvedLegacy` in website/src/lib/__tests__/journal-encryption.test.ts:82"}, "properties": {"repobilityId": "73f4781f86733443", "scanner": "scanner-primary", "fingerprint": "f75588ba4d375508", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-25427b01ea286d8f", "level": "note", "message": {"text": "Legacy-named symbol `agent_acme_v1` in website/src/lib/__tests__/security.test.ts:63"}, "properties": {"repobilityId": "f213cb2dae284cfd", "scanner": "scanner-primary", "fingerprint": "25427b01ea286d8f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f7fcba2c20096b75", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/__tests__/mentor-profile-summary.test.ts:33"}, "properties": {"repobilityId": "ba21f59901e1b46b", "scanner": "scanner-primary", "fingerprint": "f7fcba2c20096b75", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2170719ee9ee2eb3", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/__tests__/ci9-cache-mechanism.test.ts:57"}, "properties": {"repobilityId": "5dd8ae2228b4f627", "scanner": "scanner-primary", "fingerprint": "2170719ee9ee2eb3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-18b6e5bb7bc0413b", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/__tests__/run-zone2-calibration-eval.ts:42"}, "properties": {"repobilityId": "49fb9b5ebab5be41", "scanner": "scanner-primary", "fingerprint": "18b6e5bb7bc0413b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2dc91bf67f00eb7e", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/lib/abuse-detection/abuse-detector.ts:146"}, "properties": {"repobilityId": "8514918d25fbda5f", "scanner": "scanner-primary", "fingerprint": "2dc91bf67f00eb7e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c4cfcc177af64c88", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/lib/abuse-detection/abuse-thresholds.ts:37"}, "properties": {"repobilityId": "9eb610ed15c7eda8", "scanner": "scanner-primary", "fingerprint": "c4cfcc177af64c88", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fccee44019003efb", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/sage-calling/session-store.ts:103"}, "properties": {"repobilityId": "4a85e6359c7bde91", "scanner": "scanner-primary", "fingerprint": "fccee44019003efb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2b29b07a31f88c21", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/sage-calling/agent-card.ts:130"}, "properties": {"repobilityId": "e2f338bfe00c9d0e", "scanner": "scanner-primary", "fingerprint": "2b29b07a31f88c21", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ebe5db23ee5ca998", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/lib/sage-calling/agent-card.ts:12"}, "properties": {"repobilityId": "bd46d72c574416a0", "scanner": "scanner-primary", "fingerprint": "ebe5db23ee5ca998", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3fdbe2802c9de8d8", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/sage-calling/engine.ts:162"}, "properties": {"repobilityId": "0d555c3f884a35d5", "scanner": "scanner-primary", "fingerprint": "3fdbe2802c9de8d8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d6b6d6b2b7dd31ce", "level": "note", "message": {"text": "Legacy-named symbol `agent_acme_v1` in website/src/lib/sage-calling/__tests__/session-store.test.ts:61"}, "properties": {"repobilityId": "dee55e32844c13b4", "scanner": "scanner-primary", "fingerprint": "d6b6d6b2b7dd31ce", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-be92031039dbf010", "level": "note", "message": {"text": "Legacy-named symbol `withOld` in website/src/lib/slo/__tests__/slo-stats.test.ts:57"}, "properties": {"repobilityId": "44ca529bcbabaf49", "scanner": "scanner-primary", "fingerprint": "be92031039dbf010", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-44ed04688b0c6ad4", "level": "none", "message": {"text": "Commented-code block (12 lines) in website/src/lib/substrate/agent-mode-service.ts:164"}, "properties": {"repobilityId": "81de05659d93a79a", "scanner": "scanner-primary", "fingerprint": "44ed04688b0c6ad4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cc0e18f8c2a565c3", "level": "none", "message": {"text": "Commented-code block (11 lines) in website/src/lib/substrate/r20a-gate.ts:158"}, "properties": {"repobilityId": "35bb538d78676432", "scanner": "scanner-primary", "fingerprint": "cc0e18f8c2a565c3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b68ef709de09c2bc", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/lib/substrate/sage-assent-accreditation-store.ts:542"}, "properties": {"repobilityId": "f6411adde76ad3ec", "scanner": "scanner-primary", "fingerprint": "b68ef709de09c2bc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5b858b4d355e08eb", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/substrate/agent-assessment-history-store.ts:56"}, "properties": {"repobilityId": "155f9d8c8e7b1210", "scanner": "scanner-primary", "fingerprint": "5b858b4d355e08eb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2e4d79e6483fa0f7", "level": "none", "message": {"text": "Commented-code block (11 lines) in website/src/lib/substrate/sage-assent-wrapper.ts:214"}, "properties": {"repobilityId": "c30da9b06c3c8fe5", "scanner": "scanner-primary", "fingerprint": "2e4d79e6483fa0f7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6bc3097b362a41b3", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/substrate/sage-assent-iteration-patterns.ts:182"}, "properties": {"repobilityId": "20d8363f0b01fc4a", "scanner": "scanner-primary", "fingerprint": "6bc3097b362a41b3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0743b183e17f75bb", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/lib/substrate/sage-assent-bridge.ts:79"}, "properties": {"repobilityId": "d264c759fd0cdf57", "scanner": "scanner-primary", "fingerprint": "0743b183e17f75bb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad1d504e2683edde", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/substrate/layer3-service.ts:142"}, "properties": {"repobilityId": "d28eb7b606570d41", "scanner": "scanner-primary", "fingerprint": "ad1d504e2683edde", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5feb01d044f3479a", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/substrate/score-architecture.ts:174"}, "properties": {"repobilityId": "ad6f62edb8f741ad", "scanner": "scanner-primary", "fingerprint": "5feb01d044f3479a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-89124c4878715bae", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/substrate/philosophical-mode-service.ts:174"}, "properties": {"repobilityId": "25ca7964d538eeba", "scanner": "scanner-primary", "fingerprint": "89124c4878715bae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-39f6e944d09ba363", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/substrate/__tests__/agent-assessment-history-store.test.ts:588"}, "properties": {"repobilityId": "49b298d75d67975a", "scanner": "scanner-primary", "fingerprint": "39f6e944d09ba363", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-218aead1fc1041a5", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/substrate/__tests__/sage-assent-iteration-patterns.test.ts:144"}, "properties": {"repobilityId": "75b4f9875e88219b", "scanner": "scanner-primary", "fingerprint": "218aead1fc1041a5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-750ffec555057522", "level": "none", "message": {"text": "Commented-code block (15 lines) in website/src/lib/substrate/__tests__/philosophical-mode-service.test.ts:585"}, "properties": {"repobilityId": "0d0306e7e2de7909", "scanner": "scanner-primary", "fingerprint": "750ffec555057522", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-931f96421f64dbca", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/lib/substrate/__tests__/accreditation-store-k1-fields.test.ts:143"}, "properties": {"repobilityId": "4d3313330977a69a", "scanner": "scanner-primary", "fingerprint": "931f96421f64dbca", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d5cd42bf63a09b45", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/substrate/__tests__/r20a-gate.test.ts:470"}, "properties": {"repobilityId": "69458b5e8364d5ac", "scanner": "scanner-primary", "fingerprint": "d5cd42bf63a09b45", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8b7184882e9f90b0", "level": "note", "message": {"text": "Legacy-named symbol `agent_test_v1` in website/src/lib/substrate/__tests__/sage-assent-accreditation-writer.test.ts:185"}, "properties": {"repobilityId": "bb99fe994408b6d0", "scanner": "scanner-primary", "fingerprint": "8b7184882e9f90b0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-de99ccf5ee23f6bf", "level": "note", "message": {"text": "Legacy-named symbol `agent_handback_test_v1` in website/src/lib/substrate/__tests__/agent-hand-back-report.test.ts:262"}, "properties": {"repobilityId": "032abcb84aae5de9", "scanner": "scanner-primary", "fingerprint": "de99ccf5ee23f6bf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-19c6274219c870d9", "level": "none", "message": {"text": "Commented-code block (9 lines) in website/src/lib/substrate/trust-layer/types/accreditation.ts:47"}, "properties": {"repobilityId": "c0105f8feabf7bc8", "scanner": "scanner-primary", "fingerprint": "19c6274219c870d9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-812ddc32710eea46", "level": "none", "message": {"text": "Commented-code block (15 lines) in website/src/lib/substrate/trust-layer/types/evaluation.ts:107"}, "properties": {"repobilityId": "4579ba8dfdd588ed", "scanner": "scanner-primary", "fingerprint": "812ddc32710eea46", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-24ad5113e4be8592", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/substrate/trust-layer/validation/pass-through-fields.ts:158"}, "properties": {"repobilityId": "bcb3c678916fdd0c", "scanner": "scanner-primary", "fingerprint": "24ad5113e4be8592", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8ea6062ee4bb334a", "level": "note", "message": {"text": "Legacy-named symbol `agent_test_v1` in website/src/lib/substrate/trust-layer/accreditation/__tests__/agent-id-vocabulary.test.ts:70"}, "properties": {"repobilityId": "3275f8dd67b188dd", "scanner": "scanner-primary", "fingerprint": "8ea6062ee4bb334a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d5c36ddfc262ba4d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 website/src/lib/cron/observability-notify.ts:7"}, "properties": {"repobilityId": "538f4be2a74bb17f", "scanner": "scanner-primary", "fingerprint": "d5c36ddfc262ba4d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5e6eeb1bddf5e32d", "level": "none", "message": {"text": "Commented-code block (8 lines) in website/src/lib/logging/mentor-observation-logger.ts:146"}, "properties": {"repobilityId": "aa8c8a9023df47e4", "scanner": "scanner-primary", "fingerprint": "5e6eeb1bddf5e32d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e4147b4e565b2d78", "level": "none", "message": {"text": "Commented-code block (9 lines) in website/src/lib/logging/__tests__/mentor-observation-logger.test.ts:180"}, "properties": {"repobilityId": "0fd5599f70c44c23", "scanner": "scanner-primary", "fingerprint": "e4147b4e565b2d78", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2df58a79d2ed6d6e", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/context/ops-continuity-state.ts:183"}, "properties": {"repobilityId": "b230afbfb031d2c5", "scanner": "scanner-primary", "fingerprint": "2df58a79d2ed6d6e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2b12c12ea65346c4", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/context/mentor-context-private.ts:92"}, "properties": {"repobilityId": "2cc5e00c21b062aa", "scanner": "scanner-primary", "fingerprint": "2b12c12ea65346c4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5a97786f3beb826b", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/context/practitioner-context.ts:205"}, "properties": {"repobilityId": "a959954acf61620a", "scanner": "scanner-primary", "fingerprint": "5a97786f3beb826b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ae1b2a371df81a30", "level": "note", "message": {"text": "Legacy-named symbol `agent_test_v1` in website/src/lib/admin-mint/__tests__/mint-credential-core.test.ts:165"}, "properties": {"repobilityId": "36ebe902038ca801", "scanner": "scanner-primary", "fingerprint": "ae1b2a371df81a30", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-62ac404f81b5179c", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/cost-alerts/cost-alert-detector.ts:227"}, "properties": {"repobilityId": "ba16503e7e107cc2", "scanner": "scanner-primary", "fingerprint": "62ac404f81b5179c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ff638975fb4e0e4b", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/sage-reflect/sage-assent-feed.ts:231"}, "properties": {"repobilityId": "f5d83b16cfc9d5bd", "scanner": "scanner-primary", "fingerprint": "ff638975fb4e0e4b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-35e6c580cfa28a16", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/sage-reflect/session-store.ts:144"}, "properties": {"repobilityId": "b3edcc22ce18b1b6", "scanner": "scanner-primary", "fingerprint": "35e6c580cfa28a16", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b96630519a0b90e5", "level": "none", "message": {"text": "Commented-code block (7 lines) in website/src/lib/sage-reflect/reflect-service.ts:79"}, "properties": {"repobilityId": "a5c96082ec550c6a", "scanner": "scanner-primary", "fingerprint": "b96630519a0b90e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-999f0afb2dab6dcd", "level": "note", "message": {"text": "Legacy-named symbol `agent_acme_v1` in website/src/lib/sage-reflect/__tests__/sage-assent-feed.test.ts:73"}, "properties": {"repobilityId": "be167876a3be7b30", "scanner": "scanner-primary", "fingerprint": "999f0afb2dab6dcd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-541830163139927d", "level": "note", "message": {"text": "Legacy-named symbol `agent_acme_v1` in website/src/lib/sage-reflect/__tests__/session-store.test.ts:58"}, "properties": {"repobilityId": "25755e1175239081", "scanner": "scanner-primary", "fingerprint": "541830163139927d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b0cf0549d4114489", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/translation-sandwich/layer2-mechanisms.ts:1742"}, "properties": {"repobilityId": "3397121cc19ab8e4", "scanner": "scanner-primary", "fingerprint": "b0cf0549d4114489", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5b053e0910412988", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/translation-sandwich/parallel-run.ts:63"}, "properties": {"repobilityId": "e5ab5f1d43fbfc05", "scanner": "scanner-primary", "fingerprint": "5b053e0910412988", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ccbb6c88c9cd88af", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/translation-sandwich/layer1-extractor.ts:239"}, "properties": {"repobilityId": "5f95acc833541a9b", "scanner": "scanner-primary", "fingerprint": "ccbb6c88c9cd88af", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8d6fea5cc9099e14", "level": "none", "message": {"text": "Commented-code block (6 lines) in website/src/lib/translation-sandwich/layer3-prose.ts:585"}, "properties": {"repobilityId": "5c2917cb00c3ebdc", "scanner": "scanner-primary", "fingerprint": "8d6fea5cc9099e14", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec3b861a1bf7dfb0", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/translation-sandwich/__tests__/layer1-schema-additions.test.ts:407"}, "properties": {"repobilityId": "d8db074ac4160f13", "scanner": "scanner-primary", "fingerprint": "ec3b861a1bf7dfb0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a8424ee4fac4489b", "level": "none", "message": {"text": "Commented-code block (5 lines) in website/src/lib/translation-sandwich/__tests__/layer3-injection-defence.test.ts:54"}, "properties": {"repobilityId": "828a3c7220fc77c2", "scanner": "scanner-primary", "fingerprint": "a8424ee4fac4489b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f778729f701fab37", "level": "none", "message": {"text": "Commented-code block (5 lines) in .claude/skills/anthropic/skill-creator/scripts/improve_description.py:158"}, "properties": {"repobilityId": "0b1442c80b533514", "scanner": "scanner-primary", "fingerprint": "f778729f701fab37", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b055337e097cc377", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/skill-creator/scripts/run_eval.py:85"}, "properties": {"repobilityId": "1d7c1a9b5ec9a5ce", "scanner": "scanner-primary", "fingerprint": "b055337e097cc377", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-763ff7ed62fbb069", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/docx/scripts/office/soffice.py:14"}, "properties": {"repobilityId": "1c9e9c2bea5da467", "scanner": "scanner-primary", "fingerprint": "763ff7ed62fbb069", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5eec7fb7b846de99", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/docx/scripts/office/validators/redlining.py:138"}, "properties": {"repobilityId": "674dd72f49dc5d31", "scanner": "scanner-primary", "fingerprint": "5eec7fb7b846de99", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-268bbd6458af3cb3", "level": "note", "message": {"text": "Legacy-named symbol `xml_copy` in .claude/skills/anthropic/docx/scripts/office/validators/base.py:705"}, "properties": {"repobilityId": "62d366d41b99f4e5", "scanner": "scanner-primary", "fingerprint": "268bbd6458af3cb3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-78826ce3a7a91e6e", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/pptx/scripts/thumbnail.py:161"}, "properties": {"repobilityId": "c440d4c99a8a2a07", "scanner": "scanner-primary", "fingerprint": "78826ce3a7a91e6e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-34ad3e42d50241a2", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/pptx/scripts/office/soffice.py:14"}, "properties": {"repobilityId": "2dd38f5694a83e48", "scanner": "scanner-primary", "fingerprint": "34ad3e42d50241a2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1c69a479c88eabc3", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/pptx/scripts/office/validators/redlining.py:138"}, "properties": {"repobilityId": "abccd2eb458b7415", "scanner": "scanner-primary", "fingerprint": "1c69a479c88eabc3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-78ba4a465bb3bac5", "level": "note", "message": {"text": "Legacy-named symbol `xml_copy` in .claude/skills/anthropic/pptx/scripts/office/validators/base.py:705"}, "properties": {"repobilityId": "6dd05cc19619a16d", "scanner": "scanner-primary", "fingerprint": "78ba4a465bb3bac5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-fc8f0c5d377c755b", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/xlsx/scripts/recalc.py:92"}, "properties": {"repobilityId": "835d6ca760922c3e", "scanner": "scanner-primary", "fingerprint": "fc8f0c5d377c755b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b2be7a05e4c6987f", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/xlsx/scripts/office/soffice.py:14"}, "properties": {"repobilityId": "fa90ad67e2ade609", "scanner": "scanner-primary", "fingerprint": "b2be7a05e4c6987f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-31083bab368480c7", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 .claude/skills/anthropic/xlsx/scripts/office/validators/redlining.py:138"}, "properties": {"repobilityId": "863c78023fc4b7c4", "scanner": "scanner-primary", "fingerprint": "31083bab368480c7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ab6577fd972eaadc", "level": "note", "message": {"text": "Legacy-named symbol `xml_copy` in .claude/skills/anthropic/xlsx/scripts/office/validators/base.py:705"}, "properties": {"repobilityId": "e3543c0bc442a91f", "scanner": "scanner-primary", "fingerprint": "ab6577fd972eaadc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-535a881ee1d05fbd", "level": "none", "message": {"text": "Commented-code block (8 lines) in .claude/skills/anthropic/algorithmic-art/templates/generator_template.js:15"}, "properties": {"repobilityId": "6d9f58f67803a49f", "scanner": "scanner-primary", "fingerprint": "535a881ee1d05fbd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f808a4ef3e1071fb", "level": "note", "message": {"text": "14 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "ce6b2ec4be4ec75a", "scanner": "scanner-primary", "fingerprint": "f808a4ef3e1071fb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "658ea3daa19ca7ba", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "36baeed38d3b0f1f", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "32dd844bfb242ce3", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "797a8bb703e3371f", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "8f2b2e305c0202af", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "388eea8c121125e4", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-33a6b62e30ce7ab4", "level": "note", "message": {"text": "Near-duplicate function bodies in 6 places"}, "properties": {"repobilityId": "7d76d9ca2f4983c5", "scanner": "scanner-primary", "fingerprint": "33a6b62e30ce7ab4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-33a6b62e30ce7ab4", "level": "note", "message": {"text": "Near-duplicate function bodies in 6 places"}, "properties": {"repobilityId": "5c8457cedda6f8e2", "scanner": "scanner-primary", "fingerprint": "33a6b62e30ce7ab4", "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": "ce353ce55317e9fa", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "1161f5cdcbc1bb76", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-33a6b62e30ce7ab4", "level": "note", "message": {"text": "Near-duplicate function bodies in 6 places"}, "properties": {"repobilityId": "fd2b6a472440a34d", "scanner": "scanner-primary", "fingerprint": "33a6b62e30ce7ab4", "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": "f132f465514acd39", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "352cc215cb962cf1", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "aff2ad58829bc404", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "eb6b163a83dc906d", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "0191e1eab384da37", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "815768b5de7c26f8", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "e22951b71e1539ea", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "aeec7094cf1a8bff", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-33a6b62e30ce7ab4", "level": "note", "message": {"text": "Near-duplicate function bodies in 6 places"}, "properties": {"repobilityId": "662100c9772710dd", "scanner": "scanner-primary", "fingerprint": "33a6b62e30ce7ab4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}]}]}