{"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-d73122eaa29ac62a", "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-370ac37ead0f87db", "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-2fb839faeeed675c", "name": "Possibly dead Python function: attr", "shortDescription": {"text": "Possibly dead Python function: attr"}, "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-46a4d00ef3a04b71", "name": "Possibly dead Python function: url", "shortDescription": {"text": "Possibly dead Python function: url"}, "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-2fb5bc0a21a5f200", "name": "Possibly dead Python function: srcset", "shortDescription": {"text": "Possibly dead Python function: srcset"}, "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-f8744ebfa317558f", "name": "Possibly dead Python function: fetch_feed", "shortDescription": {"text": "Possibly dead Python function: fetch_feed"}, "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-a697794faaba864e", "name": "Possibly dead Python function: score_movement", "shortDescription": {"text": "Possibly dead Python function: score_movement"}, "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-b9b0f5f76d0561f8", "name": "Possibly dead Python function: score_habits_mvp", "shortDescription": {"text": "Possibly dead Python function: score_habits_mvp"}, "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-c68776821eb258cd", "name": "Possibly dead Python function: score_hydration", "shortDescription": {"text": "Possibly dead Python function: score_hydration"}, "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-3e76fcde1b0b5a5d", "name": "Possibly dead Python function: score_glucose", "shortDescription": {"text": "Possibly dead Python function: score_glucose"}, "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-6f4f82c010f933a0", "name": "Possibly dead Python function: build_section", "shortDescription": {"text": "Possibly dead Python function: build_section"}, "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-5e13b96939eed13a", "name": "Possibly dead Python function: score_movement", "shortDescription": {"text": "Possibly dead Python function: score_movement"}, "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-f9bca9e17ca3990a", "name": "Possibly dead Python function: score_hydration", "shortDescription": {"text": "Possibly dead Python function: score_hydration"}, "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-8dcf5f5e0074961b", "name": "Possibly dead Python function: score_glucose", "shortDescription": {"text": "Possibly dead Python function: score_glucose"}, "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-65196deb2f4830d7", "name": "Possibly dead Python function: ex_hevy", "shortDescription": {"text": "Possibly dead Python function: ex_hevy"}, "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-04bc90167749292f", "name": "Possibly dead Python function: ex_chronicling", "shortDescription": {"text": "Possibly dead Python function: ex_chronicling"}, "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-54bd12407acc53c6", "name": "Possibly dead Python function: ex_hevy", "shortDescription": {"text": "Possibly dead Python function: ex_hevy"}, "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-9b09d7a6bf6fe36a", "name": "Possibly dead Python function: ex_chronicling", "shortDescription": {"text": "Possibly dead Python function: ex_chronicling"}, "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-eaba6c4e66e84690", "name": "Possibly dead Python function: create_math_alarm", "shortDescription": {"text": "Possibly dead Python function: create_math_alarm"}, "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-48f4c2dc503f1574", "name": "Possibly dead Python function: repl_iso_time", "shortDescription": {"text": "Possibly dead Python function: repl_iso_time"}, "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-f13b09dfdc5a810a", "name": "Possibly dead Python function: repl_bare", "shortDescription": {"text": "Possibly dead Python function: repl_bare"}, "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-3dca2e19a11bb3c7", "name": "Possibly dead Python function: run_cmd", "shortDescription": {"text": "Possibly dead Python function: run_cmd"}, "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-4efe5d9f8bf7f50a", "name": "Possibly dead Python function: count_files", "shortDescription": {"text": "Possibly dead Python function: count_files"}, "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-00b242e16f7aceb2", "name": "Possibly dead Python function: handle_ask", "shortDescription": {"text": "Possibly dead Python function: handle_ask"}, "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-d032cb9b2d44f900", "name": "Possibly dead Python function: handle_starttag", "shortDescription": {"text": "Possibly dead Python function: handle_starttag"}, "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-e268f578642ff2a6", "name": "Possibly dead Python function: handle_endtag", "shortDescription": {"text": "Possibly dead Python function: handle_endtag"}, "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-b57fcd396be9d2e6", "name": "Possibly dead Python function: handle_data", "shortDescription": {"text": "Possibly dead Python function: handle_data"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8dda53cfe7996899", "name": "Possibly dead Python function: handle_entityref", "shortDescription": {"text": "Possibly dead Python function: handle_entityref"}, "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-06d935c37353d7c3", "name": "Possibly dead Python function: handle_charref", "shortDescription": {"text": "Possibly dead Python function: handle_charref"}, "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-87b8db86c0d4ad95", "name": "Possibly dead Python function: score_movement", "shortDescription": {"text": "Possibly dead Python function: score_movement"}, "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-79da0966dec12a67", "name": "Privileged port 20 in use", "shortDescription": {"text": "Privileged port 20 in use"}, "fullDescription": {"text": "Port 20 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-21ff9836b042d6ba", "name": "Privileged port 12 in use", "shortDescription": {"text": "Privileged port 12 in use"}, "fullDescription": {"text": "Port 12 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-42f063d4f06df8e6", "name": "Privileged port 14 in use", "shortDescription": {"text": "Privileged port 14 in use"}, "fullDescription": {"text": "Port 14 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c72751c4782d6c7d", "name": "Privileged port 13 in use", "shortDescription": {"text": "Privileged port 13 in use"}, "fullDescription": {"text": "Port 13 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e1117d24b697b18f", "name": "Privileged port 17 in use", "shortDescription": {"text": "Privileged port 17 in use"}, "fullDescription": {"text": "Port 17 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-555fa94837e53839", "name": "Privileged port 30 in use", "shortDescription": {"text": "Privileged port 30 in use"}, "fullDescription": {"text": "Port 30 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c568667a3eefd50f", "name": "Privileged port 10 in use", "shortDescription": {"text": "Privileged port 10 in use"}, "fullDescription": {"text": "Port 10 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e7113a5f3a514b72", "name": "Privileged port 18 in use", "shortDescription": {"text": "Privileged port 18 in use"}, "fullDescription": {"text": "Port 18 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a843aa932e09fd5d", "name": "Privileged port 16 in use", "shortDescription": {"text": "Privileged port 16 in use"}, "fullDescription": {"text": "Port 16 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e4071eb4728f5c61", "name": "Privileged port 15 in use", "shortDescription": {"text": "Privileged port 15 in use"}, "fullDescription": {"text": "Port 15 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4e603555452afbd1", "name": "Privileged port 40 in use", "shortDescription": {"text": "Privileged port 40 in use"}, "fullDescription": {"text": "Port 40 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6926623fd7ce9c7a", "name": "Privileged port 19 in use", "shortDescription": {"text": "Privileged port 19 in use"}, "fullDescription": {"text": "Port 19 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c07d182c1da7a691", "name": "Privileged port 21 in use", "shortDescription": {"text": "Privileged port 21 in use"}, "fullDescription": {"text": "Port 21 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ce63db46d1a606e7", "name": "Privileged port 42 in use", "shortDescription": {"text": "Privileged port 42 in use"}, "fullDescription": {"text": "Port 42 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ce0e961b81fc28f2", "name": "Privileged port 11 in use", "shortDescription": {"text": "Privileged port 11 in use"}, "fullDescription": {"text": "Port 11 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c323de3b2db5d021", "name": "Privileged port 23 in use", "shortDescription": {"text": "Privileged port 23 in use"}, "fullDescription": {"text": "Port 23 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-278cddadeab84217", "name": "Privileged port 36 in use", "shortDescription": {"text": "Privileged port 36 in use"}, "fullDescription": {"text": "Port 36 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-91316cf90f069881", "name": "Privileged port 35 in use", "shortDescription": {"text": "Privileged port 35 in use"}, "fullDescription": {"text": "Port 35 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-860fd8393952ae99", "name": "Privileged port 55 in use", "shortDescription": {"text": "Privileged port 55 in use"}, "fullDescription": {"text": "Port 55 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-511b2b375e9e66a6", "name": "Insecure pattern 'subprocess_shell_true' in deploy/generate_review_bundle.py:65", "shortDescription": {"text": "Insecure pattern 'subprocess_shell_true' in deploy/generate_review_bundle.py:65"}, "fullDescription": {"text": "Found a known-risky pattern (subprocess_shell_true). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e7f71983aa2612f2", "name": "Insecure pattern 'direct_innerhtml_assignment' in deploy/archive/onetime/patch_character_ring.py:116", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in deploy/archive/onetime/patch_character_ring.py:116"}, "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-ab5d74d5fb386054", "name": "Insecure pattern 'direct_innerhtml_assignment' in deploy/archive/onetime/patch_v3.9.37_product_board.py:575", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in deploy/archive/onetime/patch_v3.9.37_product_board.py:575"}, "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-20c69e4937f1f141", "name": "Insecure pattern 'direct_innerhtml_assignment' in deploy/archive/onetime/patch_tier2_home.py:65", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in deploy/archive/onetime/patch_tier2_home.py:65"}, "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-97d01721cc5fbc61", "name": "Insecure pattern 'eval_used' in deploy/archive/20260314/verify_dlq_alarm_periods.sh:52", "shortDescription": {"text": "Insecure pattern 'eval_used' in deploy/archive/20260314/verify_dlq_alarm_periods.sh:52"}, "fullDescription": {"text": "Found a known-risky pattern (eval_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b22ccd0daa41860d", "name": "Insecure pattern 'subprocess_shell_true' in deploy/archive/20260310/patch_registry.py:22", "shortDescription": {"text": "Insecure pattern 'subprocess_shell_true' in deploy/archive/20260310/patch_registry.py:22"}, "fullDescription": {"text": "Found a known-risky pattern (subprocess_shell_true). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4c08049a4bda30f6", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/index.html:883", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/index.html:883"}, "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-260a357d2d8245e8", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/chronicle/index.html:271", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/chronicle/index.html:271"}, "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-8aa291417f509fc3", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/chronicle/archive/index.html:264", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/chronicle/archive/index.html:264"}, "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-2b677cc8f83d18f6", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/experiments/index.html:1054", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/experiments/index.html:1054"}, "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-fd70ecb08bde11ea", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/experiments/detail/index.html:243", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/experiments/detail/index.html:243"}, "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-b7c7b3699a1e6cee", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/supplements/index.html:729", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/supplements/index.html:729"}, "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-d9b71e427e7de4af", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/training/index.html:655", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/training/index.html:655"}, "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-581c22eebc4b93e3", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/field-notes/index.html:252", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/field-notes/index.html:252"}, "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-9790b6bb0b1d9d24", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/glucose/index.html:567", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/glucose/index.html:567"}, "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-6905fab3937fecf1", "name": "Insecure pattern 'insert_adjacent_html' in site/legacy/glucose/index.html:583", "shortDescription": {"text": "Insecure pattern 'insert_adjacent_html' in site/legacy/glucose/index.html:583"}, "fullDescription": {"text": "Found a known-risky pattern (insert_adjacent_html). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e0cd7a1e56783a8f", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/biology/index.html:166", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/biology/index.html:166"}, "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-be6e6ad30ce76575", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/labs/index.html:781", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/labs/index.html:781"}, "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-576ca144b23bcb65", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/physical/index.html:496", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/physical/index.html:496"}, "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-30c0748a7fe4ac09", "name": "Insecure pattern 'insert_adjacent_html' in site/legacy/physical/index.html:767", "shortDescription": {"text": "Insecure pattern 'insert_adjacent_html' in site/legacy/physical/index.html:767"}, "fullDescription": {"text": "Found a known-risky pattern (insert_adjacent_html). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ec8512bfabd81750", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/benchmarks/index.html:1217", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/benchmarks/index.html:1217"}, "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-e676f24526ef7a77", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/tools/index.html:831", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/tools/index.html:831"}, "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-ac4c8448ab422e6c", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/habits/index.html:1187", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/habits/index.html:1187"}, "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-e6a5b35a83de55db", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/live/index.html:256", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/live/index.html:256"}, "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-4df2fdac32f81279", "name": "Insecure pattern 'insert_adjacent_html' in site/legacy/live/index.html:276", "shortDescription": {"text": "Insecure pattern 'insert_adjacent_html' in site/legacy/live/index.html:276"}, "fullDescription": {"text": "Found a known-risky pattern (insert_adjacent_html). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c0cb7588c88b68ec", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/discoveries/index.html:828", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/discoveries/index.html:828"}, "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-500fb1387012dcdc", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/sleep/index.html:556", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/sleep/index.html:556"}, "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-fa147996ca7ec8f6", "name": "Insecure pattern 'insert_adjacent_html' in site/legacy/sleep/index.html:577", "shortDescription": {"text": "Insecure pattern 'insert_adjacent_html' in site/legacy/sleep/index.html:577"}, "fullDescription": {"text": "Found a known-risky pattern (insert_adjacent_html). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cb0e5dca9209a5c5", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/recap/index.html:358", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/recap/index.html:358"}, "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-95508fbd44761dec", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/weekly/index.html:347", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/weekly/index.html:347"}, "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-40c10b46a2bb848d", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/coaches/index.html:898", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/coaches/index.html:898"}, "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-3f46e405f0415ce5", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/board/index.html:452", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/board/index.html:452"}, "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-ca453e95cc1bd6c5", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/stack/index.html:436", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/stack/index.html:436"}, "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-c04e8dcefc8dc850", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/accountability/index.html:1084", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/accountability/index.html:1084"}, "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-b6708710fadc07e2", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/explorer/index.html:568", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/explorer/index.html:568"}, "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-8a56bf3dd0927ac6", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/week/index.html:428", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/week/index.html:428"}, "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-e38095a9c780a898", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/ask/index.html:524", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/ask/index.html:524"}, "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-de23d4faaf1894f0", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/mind/index.html:641", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/mind/index.html:641"}, "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-572bb99cc24ca384", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/character/index.html:1848", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/character/index.html:1848"}, "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-8bad0f15c4c15bac", "name": "Insecure pattern 'insert_adjacent_html' in site/legacy/character/index.html:1899", "shortDescription": {"text": "Insecure pattern 'insert_adjacent_html' in site/legacy/character/index.html:1899"}, "fullDescription": {"text": "Found a known-risky pattern (insert_adjacent_html). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2c5ad266b42434d2", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/ledger/index.html:323", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/ledger/index.html:323"}, "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-dfbba72b152ed4bd", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/nutrition/index.html:710", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/nutrition/index.html:710"}, "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-43a4a54bdfd1269f", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/protocols/index.html:598", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/protocols/index.html:598"}, "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-b53a004c4cb3b21b", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/challenges/index.html:958", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/challenges/index.html:958"}, "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-354f6c28a4653d66", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/status/index.html:176", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/status/index.html:176"}, "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-b7ac928d6529bbad", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/platform/index.html:1074", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/platform/index.html:1074"}, "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-eae813496580eb76", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/predictions/index.html:412", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/predictions/index.html:412"}, "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-d54c6e40f66f9a38", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/assets/js/observatory-v3.js:22", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/assets/js/observatory-v3.js:22"}, "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-7d49cc6514d124e7", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/assets/js/components.js:408", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/assets/js/components.js:408"}, "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-7e9c92cd0be68255", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/assets/js/engagement.js:189", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/assets/js/engagement.js:189"}, "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-f16d291cfc3f4e81", "name": "Insecure pattern 'insert_adjacent_html' in site/legacy/assets/js/engagement.js:288", "shortDescription": {"text": "Insecure pattern 'insert_adjacent_html' in site/legacy/assets/js/engagement.js:288"}, "fullDescription": {"text": "Found a known-risky pattern (insert_adjacent_html). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c7d4c6573c38f699", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/assets/js/countdown.js:53", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/assets/js/countdown.js:53"}, "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-afa3767689101d19", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/subscribe/index.html:108", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/subscribe/index.html:108"}, "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-5aca8d60d8915008", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/subscribe/confirm/index.html:66", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/subscribe/confirm/index.html:66"}, "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-628e72eb34d595ec", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/assets/js/story.js:171", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/assets/js/story.js:171"}, "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-bf87759387f4c021", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/assets/js/evidence.js:405", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/assets/js/evidence.js:405"}, "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-a942ac303ad8be6b", "name": "Insecure pattern 'direct_outerhtml_assignment' in site/assets/js/evidence.js:382", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in site/assets/js/evidence.js:382"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-18b090be4b9252f8", "name": "Insecure pattern 'insert_adjacent_html' in site/assets/js/evidence.js:373", "shortDescription": {"text": "Insecure pattern 'insert_adjacent_html' in site/assets/js/evidence.js:373"}, "fullDescription": {"text": "Found a known-risky pattern (insert_adjacent_html). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6c9f281b39ae5878", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/assets/js/dispatches.js:55", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/assets/js/dispatches.js:55"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e5fab4657dec8324", "name": "Insecure pattern 'direct_innerhtml_assignment' in site/assets/js/cockpit.js:99", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/assets/js/cockpit.js:99"}, "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-9ef30f5fa8dabd9a", "name": "Insecure pattern 'cors_wildcard' in lambdas/og_image_lambda.mjs:166", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in lambdas/og_image_lambda.mjs:166"}, "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-171ed6505215106c", "name": "Insecure pattern 'direct_innerhtml_assignment' in lambdas/dashboard/clinical.html:312", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in lambdas/dashboard/clinical.html:312"}, "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-b32adce3d6911dc7", "name": "Insecure pattern 'direct_innerhtml_assignment' in lambdas/dashboard/index.html:280", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in lambdas/dashboard/index.html:280"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-04ca41c7586acb2c", "name": "Insecure pattern 'cors_wildcard' in lambdas/coach/coach_observatory_renderer.py:581", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in lambdas/coach/coach_observatory_renderer.py:581"}, "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-fdf7a63a7797b623", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b4d529e231ecec0c", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e675383d46ac0a14", "name": "Very large file: tests/test_integration_aws.py (1296 lines)", "shortDescription": {"text": "Very large file: tests/test_integration_aws.py (1296 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-d526256f53b044fa", "name": "Very large file: archive/legacy-scripts/daily_brief_lambda.py (1359 lines)", "shortDescription": {"text": "Very large file: archive/legacy-scripts/daily_brief_lambda.py (1359 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-1bc2078e72b61c39", "name": "Very large file: archive/20260308/deploy/daily_brief_lambda.py (3589 lines)", "shortDescription": {"text": "Very large file: archive/20260308/deploy/daily_brief_lambda.py (3589 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-cc5423fbe6ec283d", "name": "Very large file: archive/20260308/lambdas/weekly_digest_v2_lambda.py (1975 lines)", "shortDescription": {"text": "Very large file: archive/20260308/lambdas/weekly_digest_v2_lambda.py (1975 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-f09dd7074e5260de", "name": "Very large file: archive/20260308/lambdas/backup_20260227_182129/weekly_digest_v2_lambda.py (1872 lines)", "shortDescription": {"text": "Very large file: archive/20260308/lambdas/backup_20260227_182129/weekly_digest_v2_lambda.py (1872 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-980f1430b573a821", "name": "Very large file: archive/20260308/lambdas/backup_20260227_183354/weekly_digest_v2_lambda.py (1883 lines)", "shortDescription": {"text": "Very large file: archive/20260308/lambdas/backup_20260227_183354/weekly_digest_v2_lambda.py (1883 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-55b0bf01b808401b", "name": "Very large file: cdk/stacks/role_policies.py (1922 lines)", "shortDescription": {"text": "Very large file: cdk/stacks/role_policies.py (1922 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-0406a09d9aa0f475", "name": "Very large file: deploy/archive/onetime/daily_brief_lambda.py (1881 lines)", "shortDescription": {"text": "Very large file: deploy/archive/onetime/daily_brief_lambda.py (1881 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-8f592cfdc99ea7f6", "name": "Very large file: patches/archive/pre_2026_03/apply_features_6_7_8.py (1046 lines)", "shortDescription": {"text": "Very large file: patches/archive/pre_2026_03/apply_features_6_7_8.py (1046 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-71619625fa8a27cc", "name": "Very large file: mcp/tools_correlation.py (1620 lines)", "shortDescription": {"text": "Very large file: mcp/tools_correlation.py (1620 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-69ffbf6be9ccb7f0", "name": "Very large file: mcp/tools_habits.py (1594 lines)", "shortDescription": {"text": "Very large file: mcp/tools_habits.py (1594 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-d3ce6a9450ba94fe", "name": "Very large file: mcp/tools_training.py (2084 lines)", "shortDescription": {"text": "Very large file: mcp/tools_training.py (2084 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-7c8f1feb33b91ebd", "name": "Very large file: mcp/tools_health.py (2656 lines)", "shortDescription": {"text": "Very large file: mcp/tools_health.py (2656 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-6a9c7c0ddbfb6fd5", "name": "Very large file: mcp/tools_lifestyle.py (3669 lines)", "shortDescription": {"text": "Very large file: mcp/tools_lifestyle.py (3669 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-8431d414efa09c0f", "name": "Very large file: mcp/registry.py (3540 lines)", "shortDescription": {"text": "Very large file: mcp/registry.py (3540 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-6dbeea5868ef1df7", "name": "Very large file: seeds/archive/generate_habit_registry.py (915 lines)", "shortDescription": {"text": "Very large file: seeds/archive/generate_habit_registry.py (915 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-364fd34748d19998", "name": "Very large file: lambdas/html_builder.py (1918 lines)", "shortDescription": {"text": "Very large file: lambdas/html_builder.py (1918 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-2a19d01614a68bcb", "name": "Very large file: lambdas/output_writers.py (1375 lines)", "shortDescription": {"text": "Very large file: lambdas/output_writers.py (1375 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-4ea4fa6a60a3a876", "name": "Very large file: lambdas/intelligence_common.py (1665 lines)", "shortDescription": {"text": "Very large file: lambdas/intelligence_common.py (1665 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-0c1097141aab021f", "name": "Very large file: lambdas/ai_calls.py (1277 lines)", "shortDescription": {"text": "Very large file: lambdas/ai_calls.py (1277 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-5d2ede220022008d", "name": "Very large file: lambdas/compute/daily_insight_compute_lambda.py (2130 lines)", "shortDescription": {"text": "Very large file: lambdas/compute/daily_insight_compute_lambda.py (2130 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-261b0c719e7c0385", "name": "Very large file: lambdas/ingestion/health_auto_export_lambda.py (1557 lines)", "shortDescription": {"text": "Very large file: lambdas/ingestion/health_auto_export_lambda.py (1557 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9e2bdd217942877f", "name": "Very large file: lambdas/emails/weekly_digest_lambda.py (1956 lines)", "shortDescription": {"text": "Very large file: lambdas/emails/weekly_digest_lambda.py (1956 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-def0fae62f80ec57", "name": "Very large file: lambdas/emails/wednesday_chronicle_lambda.py (2286 lines)", "shortDescription": {"text": "Very large file: lambdas/emails/wednesday_chronicle_lambda.py (2286 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-d5668777d49842dc", "name": "Very large file: lambdas/emails/daily_brief_lambda.py (2226 lines)", "shortDescription": {"text": "Very large file: lambdas/emails/daily_brief_lambda.py (2226 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-01b47cf11a0e7df2", "name": "Very large file: lambdas/emails/monthly_digest_lambda.py (1074 lines)", "shortDescription": {"text": "Very large file: lambdas/emails/monthly_digest_lambda.py (1074 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-7431c9323ea029d8", "name": "Very large file: lambdas/web/site_api_intelligence.py (1531 lines)", "shortDescription": {"text": "Very large file: lambdas/web/site_api_intelligence.py (1531 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-ee5eb8c019c200d2", "name": "Very large file: lambdas/web/site_api_data.py (2267 lines)", "shortDescription": {"text": "Very large file: lambdas/web/site_api_data.py (2267 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-50dc6b963034c179", "name": "Very large file: lambdas/web/site_api_observatory.py (1832 lines)", "shortDescription": {"text": "Very large file: lambdas/web/site_api_observatory.py (1832 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-de32bef4afa8989b", "name": "Very large file: lambdas/web/site_api_vitals.py (1344 lines)", "shortDescription": {"text": "Very large file: lambdas/web/site_api_vitals.py (1344 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dbbed04204758b4f", "name": "Very large file: backfill/draw_2026_04_03.py (1015 lines)", "shortDescription": {"text": "Very large file: backfill/draw_2026_04_03.py (1015 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": "73 tests / 461 src (ratio 0.16)."}, "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 4355 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 125 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-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-cc55229a7a3c078d", "name": "Agent authority lacks a verifier contract: .mcp.json", "shortDescription": {"text": "Agent authority lacks a verifier contract: .mcp.json"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-78c6b3bd59439e66", "name": "Agent authority lacks a verifier contract: .claude/README.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/README.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ecb0d2c55ed6875d", "name": "Agent authority lacks a verifier contract: .claude/settings.local.json", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/settings.local.json"}, "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-ecb11bb35edfb41d", "name": "Commented-code block (6 lines) in tests/test_shared_modules.py:706", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_shared_modules.py:706"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6a06b286f1f4305b", "name": "Commented-code block (7 lines) in tests/test_integration_aws.py:148", "shortDescription": {"text": "Commented-code block (7 lines) in tests/test_integration_aws.py:148"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-035aabbd4223da8c", "name": "Commented-code block (6 lines) in tests/test_habitify_status_resolution.py:19", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_habitify_status_resolution.py:19"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-27bdf4e37c9eb65f", "name": "Legacy-named symbol `list_objects_v2` in tests/validate_links.py:42", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in tests/validate_links.py:42"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a7883b45c6b45f17", "name": "Legacy-named symbol `v4_relocate_legacy` in tests/test_site_a11y_landmarks.py:8", "shortDescription": {"text": "Legacy-named symbol `v4_relocate_legacy` in tests/test_site_a11y_landmarks.py:8"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-60002b90b87cd6a2", "name": "Commented-code block (13 lines) in tests/test_iam_secrets_consistency.py:201", "shortDescription": {"text": "Commented-code block (13 lines) in tests/test_iam_secrets_consistency.py:201"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-242c309a7af14a7b", "name": "Legacy-named symbol `list_objects_v2` in tests/smoke_test.py:217", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in tests/smoke_test.py:217"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e0ef791e3edf385f", "name": "Network/subprocess call without timeout or try/except \u2014 setup/setup_dropbox_auth.py:49", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 setup/setup_dropbox_auth.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-1517c0ad062e7c75", "name": "Network/subprocess call without timeout or try/except \u2014 setup/withings_auth.py:31", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 setup/withings_auth.py:31"}, "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-8746c52a5647b853", "name": "Network/subprocess call without timeout or try/except \u2014 setup/setup_monarch_auth.py:83", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 setup/setup_monarch_auth.py:83"}, "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-cff922374c80ea9b", "name": "Network/subprocess call without timeout or try/except \u2014 setup/setup_onedrive_auth.py:57", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 setup/setup_onedrive_auth.py:57"}, "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-fbefe3f3b9365891", "name": "Legacy-named symbol `v4_relocate_legacy` in scripts/v4_migration_inventory.py:6", "shortDescription": {"text": "Legacy-named symbol `v4_relocate_legacy` in scripts/v4_migration_inventory.py:6"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c5aafed82f03b8e1", "name": "Legacy-named symbol `v4_relocate_legacy` in scripts/v4_relocate_legacy.py:3", "shortDescription": {"text": "Legacy-named symbol `v4_relocate_legacy` in scripts/v4_relocate_legacy.py:3"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-97090800347346d9", "name": "Legacy-named symbol `_score_habits_mvp_legacy` in archive/20260308/deploy/scoring_engine.py:184", "shortDescription": {"text": "Legacy-named symbol `_score_habits_mvp_legacy` in archive/20260308/deploy/scoring_engine.py:184"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-785af923f1b0941e", "name": "Commented-code block (5 lines) in archive/20260308/deploy/patch_daily_brief_hardening.py:238", "shortDescription": {"text": "Commented-code block (5 lines) in archive/20260308/deploy/patch_daily_brief_hardening.py:238"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6d82405ee2ad7204", "name": "Legacy-named symbol `_score_habits_mvp_legacy` in archive/20260308/deploy/daily_brief_lambda.py:480", "shortDescription": {"text": "Legacy-named symbol `_score_habits_mvp_legacy` in archive/20260308/deploy/daily_brief_lambda.py:480"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-61f977fe2f42c15a", "name": "Network/subprocess call without timeout or try/except \u2014 archive/20260308/lambdas/backup_20260227_182129/strava_lambda.py", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 archive/20260308/lambdas/backup_20260227_182129/strava_lambda.py:58"}, "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-aa486d97efc6aa0e", "name": "Network/subprocess call without timeout or try/except \u2014 archive/20260308/lambdas/backup_20260227_182129/todoist_lambda.p", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 archive/20260308/lambdas/backup_20260227_182129/todoist_lambda.py:44"}, "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-64132c42ea0ef490", "name": "Legacy-named symbol `move_v2` in archive/20260308/lambdas/backup_20260227_182129/dropbox_poll_lambda.py:149", "shortDescription": {"text": "Legacy-named symbol `move_v2` in archive/20260308/lambdas/backup_20260227_182129/dropbox_poll_lambda.py:149"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1a87d3fab17e754d", "name": "Legacy-named symbol `skipped_old` in archive/20260308/lambdas/backup_20260227_182129/apple_health_lambda.py:161", "shortDescription": {"text": "Legacy-named symbol `skipped_old` in archive/20260308/lambdas/backup_20260227_182129/apple_health_lambda.py:161"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bf9cee8d1bdd0ee9", "name": "Network/subprocess call without timeout or try/except \u2014 archive/20260308/lambdas/backup_20260227_183354/strava_lambda.py", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 archive/20260308/lambdas/backup_20260227_183354/strava_lambda.py:64"}, "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-899b8da44fcb8375", "name": "Network/subprocess call without timeout or try/except \u2014 archive/20260308/lambdas/backup_20260227_183354/todoist_lambda.p", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 archive/20260308/lambdas/backup_20260227_183354/todoist_lambda.py:51"}, "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-2247c283f07412c0", "name": "Legacy-named symbol `move_v2` in archive/20260308/lambdas/backup_20260227_183354/dropbox_poll_lambda.py:153", "shortDescription": {"text": "Legacy-named symbol `move_v2` in archive/20260308/lambdas/backup_20260227_183354/dropbox_poll_lambda.py:153"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be50df6fca338758", "name": "Legacy-named symbol `skipped_old` in archive/20260308/lambdas/backup_20260227_183354/apple_health_lambda.py:166", "shortDescription": {"text": "Legacy-named symbol `skipped_old` in archive/20260308/lambdas/backup_20260227_183354/apple_health_lambda.py:166"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c5c67dd164c1f096", "name": "Commented-code block (6 lines) in archive/20260309/deploy/generate_maint1_requirements.py:147", "shortDescription": {"text": "Commented-code block (6 lines) in archive/20260309/deploy/generate_maint1_requirements.py: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-05e879ec55aa15bc", "name": "Network/subprocess call without timeout or try/except \u2014 archive/20260309/deploy/create_obs2_dashboard.py:81", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 archive/20260309/deploy/create_obs2_dashboard.py:81"}, "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-b001d8101308d50f", "name": "Network/subprocess call without timeout or try/except \u2014 archive/20260309/deploy/deploy_cost3_token_alarm.py:79", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 archive/20260309/deploy/deploy_cost3_token_alarm.py:79"}, "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-6b59b2220562ae02", "name": "Commented-code block (5 lines) in cdk/stacks/mcp_stack.py:55", "shortDescription": {"text": "Commented-code block (5 lines) in cdk/stacks/mcp_stack.py:55"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-22dcd72c0b389846", "name": "Commented-code block (5 lines) in cdk/stacks/lambda_helpers.py:83", "shortDescription": {"text": "Commented-code block (5 lines) in cdk/stacks/lambda_helpers.py:83"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c37a274e6ce8ba5d", "name": "Commented-code block (6 lines) in cdk/stacks/compute_stack.py:56", "shortDescription": {"text": "Commented-code block (6 lines) in cdk/stacks/compute_stack.py:56"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-665dfca11e12bde0", "name": "Commented-code block (6 lines) in cdk/stacks/web_stack.py:97", "shortDescription": {"text": "Commented-code block (6 lines) in cdk/stacks/web_stack.py:97"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0ddf56822f910be3", "name": "Commented-code block (6 lines) in cdk/stacks/role_policies.py:24", "shortDescription": {"text": "Commented-code block (6 lines) in cdk/stacks/role_policies.py:24"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b2955a59d4aa3353", "name": "Commented-code block (5 lines) in cdk/stacks/constants.py:49", "shortDescription": {"text": "Commented-code block (5 lines) in cdk/stacks/constants.py:49"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-190c938d95ecdcd4", "name": "Commented-code block (6 lines) in cdk/stacks/operational_stack.py:70", "shortDescription": {"text": "Commented-code block (6 lines) in cdk/stacks/operational_stack.py: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-64f27124782d0d86", "name": "Commented-code block (6 lines) in cdk/stacks/core_stack.py:72", "shortDescription": {"text": "Commented-code block (6 lines) in cdk/stacks/core_stack.py:72"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-200c933ec8becfeb", "name": "Commented-code block (5 lines) in cdk/stacks/ingestion_stack.py:79", "shortDescription": {"text": "Commented-code block (5 lines) in cdk/stacks/ingestion_stack.py:79"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-65c528ea0a0d4ebc", "name": "Commented-code block (5 lines) in cdk/stacks/monitoring_stack.py:129", "shortDescription": {"text": "Commented-code block (5 lines) in cdk/stacks/monitoring_stack.py:129"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f305587077684854", "name": "Commented-code block (7 lines) in cdk/stacks/email_stack.py:71", "shortDescription": {"text": "Commented-code block (7 lines) in cdk/stacks/email_stack.py:71"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c84bad9fd0e1655e", "name": "Commented-code block (7 lines) in deploy/restart_phase_tag.py:71", "shortDescription": {"text": "Commented-code block (7 lines) in deploy/restart_phase_tag.py:71"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-af5cedb3676764a0", "name": "Legacy-named symbol `list_objects_v2` in deploy/restart_character_rebuild.py:44", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in deploy/restart_character_rebuild.py:44"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c43a4895dc55b881", "name": "Legacy-named symbol `hero_copy` in deploy/restart_site_copy_sync.py:10", "shortDescription": {"text": "Legacy-named symbol `hero_copy` in deploy/restart_site_copy_sync.py:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8ad2c402e4d3c4ac", "name": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_site_copy_sync.py:258", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_site_copy_sync.py:258"}, "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-d370aab8bcea8823", "name": "Legacy-named symbol `list_objects_v2` in deploy/restart_chronicle_handler.py:52", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in deploy/restart_chronicle_handler.py:52"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-24ee23a502eef3c2", "name": "Legacy-named symbol `facts_copy` in deploy/sync_doc_metadata.py:359", "shortDescription": {"text": "Legacy-named symbol `facts_copy` in deploy/sync_doc_metadata.py:359"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9b43b5471c867a3b", "name": "Commented-code block (6 lines) in deploy/sync_doc_metadata.py:187", "shortDescription": {"text": "Commented-code block (6 lines) in deploy/sync_doc_metadata.py:187"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-122c39e7be17ed78", "name": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_rollback.py:152", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_rollback.py:152"}, "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-ad94a2d8a811c341", "name": "Commented-code block (5 lines) in deploy/restart_verify_rendered.py:92", "shortDescription": {"text": "Commented-code block (5 lines) in deploy/restart_verify_rendered.py:92"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9a2d5cd51e46b7f8", "name": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_verify.py:160", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_verify.py:160"}, "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-ea7c1b6444495ea5", "name": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_pivot_when_ready.py:83", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_pivot_when_ready.py:83"}, "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-4b3c1e0439d450f7", "name": "Commented-code block (6 lines) in deploy/restart_intelligence_wipe.py:115", "shortDescription": {"text": "Commented-code block (6 lines) in deploy/restart_intelligence_wipe.py:115"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6487f2665a0a8d20", "name": "Commented-code block (5 lines) in deploy/restart_pipeline.py:289", "shortDescription": {"text": "Commented-code block (5 lines) in deploy/restart_pipeline.py:289"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bbc28a8b119f1e97", "name": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_pipeline.py:172", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_pipeline.py:172"}, "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-dd78d05f1b639e26", "name": "Commented-code block (6 lines) in deploy/archive/end_april_failures_2026_05_03.py:56", "shortDescription": {"text": "Commented-code block (6 lines) in deploy/archive/end_april_failures_2026_05_03.py:56"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-18d89e57dd5391e9", "name": "Legacy-named symbol `list_objects_v2` in deploy/archive/cleanup_gap_chronicles_2026_05_03.py:110", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in deploy/archive/cleanup_gap_chronicles_2026_05_03.py:110"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5c419e7cbd18ac82", "name": "Commented-code block (7 lines) in deploy/archive/patch_character_stats_503_to_200.py:50", "shortDescription": {"text": "Commented-code block (7 lines) in deploy/archive/patch_character_stats_503_to_200.py:50"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-02178b6deff50c76", "name": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/onetime/inline_site_data.py:39", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/onetime/inline_site_data.py:39"}, "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-586834b753a4a8f6", "name": "Legacy-named symbol `v2__copy` in deploy/archive/onetime/deploy_sprint8_nav.py:176", "shortDescription": {"text": "Legacy-named symbol `v2__copy` in deploy/archive/onetime/deploy_sprint8_nav.py:176"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-365f0069f7a9a325", "name": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/onetime/generate_og_image.py:135", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/onetime/generate_og_image.py:135"}, "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-f29495df28014ecc", "name": "Legacy-named symbol `stripped_old` in deploy/archive/onetime/patch_privacy_subscribe.py:53", "shortDescription": {"text": "Legacy-named symbol `stripped_old` in deploy/archive/onetime/patch_privacy_subscribe.py:53"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-36bd2a84593e9699", "name": "Legacy-named symbol `v2__copy` in deploy/archive/onetime/deploy_sprint11_nav.py:256", "shortDescription": {"text": "Legacy-named symbol `v2__copy` in deploy/archive/onetime/deploy_sprint11_nav.py:256"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-beed1ca20be9b212", "name": "Legacy-named symbol `footer__copy` in deploy/archive/onetime/fix_site_meta.py:86", "shortDescription": {"text": "Legacy-named symbol `footer__copy` in deploy/archive/onetime/fix_site_meta.py:86"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1602963ca5f147c3", "name": "Legacy-named symbol `footer__copy` in deploy/archive/onetime/backfill_journal.py:186", "shortDescription": {"text": "Legacy-named symbol `footer__copy` in deploy/archive/onetime/backfill_journal.py:186"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8e904a74937c6378", "name": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/onetime/backfill_journal.py:200", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/onetime/backfill_journal.py:200"}, "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-6d472d7b155f8778", "name": "Legacy-named symbol `footer__copy` in deploy/archive/onetime/update_nav.py:84", "shortDescription": {"text": "Legacy-named symbol `footer__copy` in deploy/archive/onetime/update_nav.py:84"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0a1db6436d13d279", "name": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/onetime/inline_stats.py:114", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/onetime/inline_stats.py:114"}, "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-25f0c84a48360beb", "name": "Legacy-named symbol `_score_habits_mvp_legacy` in deploy/archive/onetime/daily_brief_lambda.py:672", "shortDescription": {"text": "Legacy-named symbol `_score_habits_mvp_legacy` in deploy/archive/onetime/daily_brief_lambda.py:672"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0fbd59460b46c147", "name": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/20260310/patch_registry.py:23", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/20260310/patch_registry.py:23"}, "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-e65f6be8d8fee6fe", "name": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/20260310/bump_version_341.py:13", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/20260310/bump_version_341.py:13"}, "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-9718c50c30d73fe3", "name": "Commented-code block (5 lines) in deploy/archive/20260310/apply_sick_day_patches.py:48", "shortDescription": {"text": "Commented-code block (5 lines) in deploy/archive/20260310/apply_sick_day_patches.py:48"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5d6b5d65c3a5cf62", "name": "Legacy-named symbol `list_objects_v2` in remediation/automerge.py:147", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in remediation/automerge.py:147"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-def20929d82cbebe", "name": "Commented-code block (7 lines) in patches/todoist_reschedule.py:234", "shortDescription": {"text": "Commented-code block (7 lines) in patches/todoist_reschedule.py:234"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3a5b09d1ed45ca96", "name": "Commented-code block (8 lines) in patches/patch_dexa_2026_03_30.py:214", "shortDescription": {"text": "Commented-code block (8 lines) in patches/patch_dexa_2026_03_30.py:214"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-dff1776aefc9c331", "name": "Network/subprocess call without timeout or try/except \u2014 patches/archive/pre_2026_03/fix_blog_index_links.py:62", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 patches/archive/pre_2026_03/fix_blog_index_links.py:62"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-90dbe056190dc995", "name": "Network/subprocess call without timeout or try/except \u2014 patches/archive/pre_2026_03/patch_strava_phase2.py:27", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 patches/archive/pre_2026_03/patch_strava_phase2.py:27"}, "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-ab361e7eb7e178aa", "name": "Legacy-named symbol `list_objects_v2` in patches/archive/pre_2026_03/patch_fasting_glucose_validation.py:66", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in patches/archive/pre_2026_03/patch_fasting_glucose_validation.py:66"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c41b632b38086540", "name": "Commented-code block (6 lines) in patches/archive/pre_2026_03/patch_zone2_tool.py:53", "shortDescription": {"text": "Commented-code block (6 lines) in patches/archive/pre_2026_03/patch_zone2_tool.py:53"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ffcdd367b80b5473", "name": "Legacy-named symbol `hero_copy` in site/legacy/assets/js/site_constants.js:27", "shortDescription": {"text": "Legacy-named symbol `hero_copy` in site/legacy/assets/js/site_constants.js:27"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-975e8a9861ee79bc", "name": "`fetch()` without try/.catch or AbortSignal \u2014 site/legacy/assets/js/site_constants.js:86", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 site/legacy/assets/js/site_constants.js:86"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-316a4a938782adad", "name": "`fetch()` without try/.catch or AbortSignal \u2014 site/legacy/assets/js/observatory-v3.js:167", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 site/legacy/assets/js/observatory-v3.js:167"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d3167a558ad9b7d4", "name": "Legacy-named symbol `v2__copy` in site/legacy/assets/js/components.js:254", "shortDescription": {"text": "Legacy-named symbol `v2__copy` in site/legacy/assets/js/components.js:254"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-901b849f4af8f374", "name": "Commented-code block (6 lines) in site/legacy/assets/js/components.js:29", "shortDescription": {"text": "Commented-code block (6 lines) in site/legacy/assets/js/components.js: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-be6210ddcc4acbd7", "name": "`fetch()` without try/.catch or AbortSignal \u2014 site/legacy/assets/js/components.js:481", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 site/legacy/assets/js/components.js:481"}, "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-f963544801665c78", "name": "Commented-code block (5 lines) in site/legacy/assets/js/nav.js:248", "shortDescription": {"text": "Commented-code block (5 lines) in site/legacy/assets/js/nav.js:248"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-259527387017bbf8", "name": "`fetch()` without try/.catch or AbortSignal \u2014 site/legacy/assets/js/nav.js:190", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 site/legacy/assets/js/nav.js:190"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3a6f0b3b0572a5c5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 site/assets/js/story.js:21", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 site/assets/js/story.js:21"}, "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-fd5f95804628b1c1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 site/assets/js/cockpit.js:38", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 site/assets/js/cockpit.js:38"}, "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-9cc5dd999d16495f", "name": "Commented-code block (6 lines) in mcp/tools_correlation.py:875", "shortDescription": {"text": "Commented-code block (6 lines) in mcp/tools_correlation.py:875"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-947cad4b47b54fec", "name": "Commented-code block (5 lines) in mcp/handler.py:188", "shortDescription": {"text": "Commented-code block (5 lines) in mcp/handler.py:188"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d702259f6f307fd7", "name": "Commented-code block (9 lines) in mcp/tools_labs.py:469", "shortDescription": {"text": "Commented-code block (9 lines) in mcp/tools_labs.py:469"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c4286048b18561c6", "name": "Legacy-named symbol `list_objects_v2` in mcp/tools_cgm.py:732", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in mcp/tools_cgm.py:732"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f6b7a28246be9a9f", "name": "Commented-code block (6 lines) in mcp/strength_helpers.py:216", "shortDescription": {"text": "Commented-code block (6 lines) in mcp/strength_helpers.py:216"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-89fd8dc2469b7f78", "name": "Commented-code block (6 lines) in mcp/tools_hevy.py:31", "shortDescription": {"text": "Commented-code block (6 lines) in mcp/tools_hevy.py:31"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-07d87b13bda8170e", "name": "Commented-code block (6 lines) in mcp/helpers.py:235", "shortDescription": {"text": "Commented-code block (6 lines) in mcp/helpers.py:235"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-609515ead8026164", "name": "Legacy-named symbol `seed_profile_v2` in seeds/archive/seed_profile_v2.py:2", "shortDescription": {"text": "Legacy-named symbol `seed_profile_v2` in seeds/archive/seed_profile_v2.py:2"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c8d0666c085d4e42", "name": "Commented-code block (5 lines) in seeds/archive/seed_profile_v2.py:40", "shortDescription": {"text": "Commented-code block (5 lines) in seeds/archive/seed_profile_v2.py:40"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4e56d07b0ca44068", "name": "Commented-code block (5 lines) in seeds/archive/seed_physicals_dexa.py:325", "shortDescription": {"text": "Commented-code block (5 lines) in seeds/archive/seed_physicals_dexa.py:325"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d1a632b255c0d5ec", "name": "Commented-code block (5 lines) in seeds/archive/seed_labs.py:91", "shortDescription": {"text": "Commented-code block (5 lines) in seeds/archive/seed_labs.py:91"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7cfa93643e7b08c3", "name": "Commented-code block (5 lines) in seeds/archive/seed_profile.py:41", "shortDescription": {"text": "Commented-code block (5 lines) in seeds/archive/seed_profile.py:41"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9525a5fc285e91d4", "name": "Legacy-named symbol `_score_habits_mvp_legacy` in lambdas/scoring_engine.py:211", "shortDescription": {"text": "Legacy-named symbol `_score_habits_mvp_legacy` in lambdas/scoring_engine.py:211"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3f00e82b0251e9e3", "name": "Legacy-named symbol `sleep_coach_v2` in lambdas/html_builder.py:1729", "shortDescription": {"text": "Legacy-named symbol `sleep_coach_v2` in lambdas/html_builder.py:1729"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f4cee155a9431221", "name": "Commented-code block (5 lines) in lambdas/digest_utils.py:285", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/digest_utils.py:285"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9b9992adb19a48d6", "name": "Commented-code block (6 lines) in lambdas/ingestion_validator.py:100", "shortDescription": {"text": "Commented-code block (6 lines) in lambdas/ingestion_validator.py:100"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eb3b1d0fb333b9fb", "name": "Commented-code block (5 lines) in lambdas/ingest_health.py:42", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/ingest_health.py:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3a189b9a46c01cfe", "name": "Commented-code block (5 lines) in lambdas/platform_logger.py:191", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/platform_logger.py:191"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5528e6b0285db697", "name": "Commented-code block (5 lines) in lambdas/ingestion_framework.py:78", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/ingestion_framework.py:78"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-53f972237e8f50df", "name": "Legacy-named symbol `call_sleep_coach_v2` in lambdas/ai_calls.py:1240", "shortDescription": {"text": "Legacy-named symbol `call_sleep_coach_v2` in lambdas/ai_calls.py:1240"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7dfd439014f1b1b5", "name": "Commented-code block (5 lines) in lambdas/ai_calls.py:325", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/ai_calls.py:325"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-efc924383e56e29d", "name": "Legacy-named symbol `list_objects_v2` in lambdas/operational/pip_audit_lambda.py:67", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in lambdas/operational/pip_audit_lambda.py:67"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c47cd41133b94b62", "name": "Legacy-named symbol `list_objects_v2` in lambdas/operational/delete_user_data_lambda.py:85", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in lambdas/operational/delete_user_data_lambda.py:85"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e7079436d168e2a0", "name": "Commented-code block (5 lines) in lambdas/operational/canary_lambda.py:558", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/operational/canary_lambda.py:558"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f182120f115365e8", "name": "Commented-code block (5 lines) in lambdas/operational/pipeline_health_check_lambda.py:64", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/operational/pipeline_health_check_lambda.py:64"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7adc6a65bfe97ede", "name": "Legacy-named symbol `list_objects_v2` in lambdas/operational/qa_smoke_lambda.py:313", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in lambdas/operational/qa_smoke_lambda.py:313"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4e4eac3fcc8207cc", "name": "Commented-code block (7 lines) in lambdas/operational/qa_smoke_lambda.py:121", "shortDescription": {"text": "Commented-code block (7 lines) in lambdas/operational/qa_smoke_lambda.py:121"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cb12420f5b031f89", "name": "Commented-code block (6 lines) in lambdas/operational/cost_governor_lambda.py:289", "shortDescription": {"text": "Commented-code block (6 lines) in lambdas/operational/cost_governor_lambda.py:289"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7f1ec0d444b237b6", "name": "Commented-code block (5 lines) in lambdas/operational/data_export_lambda.py:49", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/operational/data_export_lambda.py:49"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-467807f1eb9caabd", "name": "Legacy-named symbol `days_old` in lambdas/compute/hypothesis_engine_lambda.py:430", "shortDescription": {"text": "Legacy-named symbol `days_old` in lambdas/compute/hypothesis_engine_lambda.py:430"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-efcc099a4b60e613", "name": "Commented-code block (5 lines) in lambdas/compute/weekly_correlation_compute_lambda.py:367", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/compute/weekly_correlation_compute_lambda.py:367"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-932d7ef1ec0123b6", "name": "Legacy-named symbol `tier_weighted_v1` in lambdas/compute/daily_metrics_compute_lambda.py:611", "shortDescription": {"text": "Legacy-named symbol `tier_weighted_v1` in lambdas/compute/daily_metrics_compute_lambda.py:611"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5489e68d09dbbc9c", "name": "Commented-code block (5 lines) in lambdas/compute/daily_metrics_compute_lambda.py:680", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/compute/daily_metrics_compute_lambda.py:680"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-54305cc7a614aec4", "name": "Commented-code block (5 lines) in lambdas/ingestion/habitify_lambda.py:259", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/ingestion/habitify_lambda.py:259"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-918dc0d901974ca7", "name": "Legacy-named symbol `move_v2` in lambdas/ingestion/dropbox_poll_lambda.py:202", "shortDescription": {"text": "Legacy-named symbol `move_v2` in lambdas/ingestion/dropbox_poll_lambda.py:202"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d8951101a6f2800f", "name": "Commented-code block (6 lines) in lambdas/ingestion/notion_lambda.py:225", "shortDescription": {"text": "Commented-code block (6 lines) in lambdas/ingestion/notion_lambda.py:225"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2c838022af8995c8", "name": "Network/subprocess call without timeout or try/except \u2014 lambdas/ingestion/whoop_lambda.py:108", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 lambdas/ingestion/whoop_lambda.py:108"}, "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-0fa734386d96117b", "name": "Commented-code block (5 lines) in lambdas/ingestion/health_auto_export_lambda.py:153", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/ingestion/health_auto_export_lambda.py:153"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9e9ba08794bd8674", "name": "Commented-code block (8 lines) in lambdas/ingestion/garmin_lambda.py:152", "shortDescription": {"text": "Commented-code block (8 lines) in lambdas/ingestion/garmin_lambda.py:152"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5e95e460e1925a6e", "name": "Legacy-named symbol `skipped_old` in lambdas/ingestion/apple_health_lambda.py:244", "shortDescription": {"text": "Legacy-named symbol `skipped_old` in lambdas/ingestion/apple_health_lambda.py:244"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e5b2c484e81003c0", "name": "Legacy-named symbol `footer__copy` in lambdas/emails/wednesday_chronicle_lambda.py:1296", "shortDescription": {"text": "Legacy-named symbol `footer__copy` in lambdas/emails/wednesday_chronicle_lambda.py:1296"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ca7aa08eea4042fb", "name": "Commented-code block (5 lines) in lambdas/emails/freshness_checker_lambda.py:47", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/emails/freshness_checker_lambda.py:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-da6d6d997a2ddff9", "name": "Legacy-named symbol `tier_weighted_v1` in lambdas/emails/daily_brief_lambda.py:863", "shortDescription": {"text": "Legacy-named symbol `tier_weighted_v1` in lambdas/emails/daily_brief_lambda.py:863"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a8527b7de8074269", "name": "Commented-code block (7 lines) in lambdas/emails/daily_brief_lambda.py:1118", "shortDescription": {"text": "Commented-code block (7 lines) in lambdas/emails/daily_brief_lambda.py:1118"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5d06263d091a553a", "name": "Commented-code block (5 lines) in lambdas/web/site_api_intelligence.py:139", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/web/site_api_intelligence.py:139"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-703c51a74097002b", "name": "Commented-code block (7 lines) in lambdas/web/site_api_data.py:1934", "shortDescription": {"text": "Commented-code block (7 lines) in lambdas/web/site_api_data.py:1934"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-411e93eb0c864ad8", "name": "Commented-code block (8 lines) in lambdas/web/site_api_lambda.py:284", "shortDescription": {"text": "Commented-code block (8 lines) in lambdas/web/site_api_lambda.py:284"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d2fc0ffa43e9a258", "name": "Commented-code block (5 lines) in lambdas/web/site_api_coach.py:115", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/web/site_api_coach.py:115"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-808c975fbc53947e", "name": "Commented-code block (5 lines) in lambdas/web/site_api_vitals.py:234", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/web/site_api_vitals.py:234"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-baa2cfa64ef048a7", "name": "Commented-code block (6 lines) in lambdas/web/site_api_ai_lambda.py:745", "shortDescription": {"text": "Commented-code block (6 lines) in lambdas/web/site_api_ai_lambda.py:745"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5e8553f5b38f4697", "name": "Commented-code block (5 lines) in lambdas/coach/coach_quality_gate.py:164", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/coach/coach_quality_gate.py: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-f3828efab2006a2c", "name": "Commented-code block (5 lines) in lambdas/coach/coach_observatory_renderer.py:426", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/coach/coach_observatory_renderer.py:426"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5307e1914774c19e", "name": "Commented-code block (5 lines) in lambdas/coach/coach_narrative_orchestrator.py:682", "shortDescription": {"text": "Commented-code block (5 lines) in lambdas/coach/coach_narrative_orchestrator.py:682"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4d093ec39d4c8611", "name": "Commented-code block (7 lines) in lambdas/coach/coach_state_updater.py:66", "shortDescription": {"text": "Commented-code block (7 lines) in lambdas/coach/coach_state_updater.py:66"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5c370190b255245c", "name": "Legacy-named symbol `skipped_old` in backfill/backfill_apple_health_export_v16.py:313", "shortDescription": {"text": "Legacy-named symbol `skipped_old` in backfill/backfill_apple_health_export_v16.py:313"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-864a9a4a8f449cc3", "name": "Commented-code block (5 lines) in backfill/backfill_apple_health_export_v16.py:82", "shortDescription": {"text": "Commented-code block (5 lines) in backfill/backfill_apple_health_export_v16.py:82"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f9f5c28ab0063f02", "name": "Legacy-named symbol `supplement_protocol_v2` in backfill/ingest_function_health_2026_04_03.py:18", "shortDescription": {"text": "Legacy-named symbol `supplement_protocol_v2` in backfill/ingest_function_health_2026_04_03.py:18"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7db328b570cd9172", "name": "Legacy-named symbol `05_v2` in backfill/draw_2026_04_03.py:12", "shortDescription": {"text": "Legacy-named symbol `05_v2` in backfill/draw_2026_04_03.py:12"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e675c145df7d4280", "name": "Commented-code block (10 lines) in backfill/draw_2026_04_03.py:28", "shortDescription": {"text": "Commented-code block (10 lines) in backfill/draw_2026_04_03.py:28"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5c9f63d12a1ed0f8", "name": "Network/subprocess call without timeout or try/except \u2014 backfill/archive/backfill_todoist.py:55", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 backfill/archive/backfill_todoist.py:55"}, "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-9c94a115426283d6", "name": "Legacy-named symbol `tier_weighted_v1` in backfill/archive/backfill_habit_scores.py:268", "shortDescription": {"text": "Legacy-named symbol `tier_weighted_v1` in backfill/archive/backfill_habit_scores.py:268"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-296f1812ec9c59fd", "name": "Legacy-named symbol `skipped_old` in backfill/archive/backfill_apple_health_export.py:167", "shortDescription": {"text": "Legacy-named symbol `skipped_old` in backfill/archive/backfill_apple_health_export.py:167"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-eb5f625e670dd4d5", "name": "Legacy-named symbol `list_objects_v2` in backfill/archive/backfill_sleep_consistency.py:103", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in backfill/archive/backfill_sleep_consistency.py:103"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-321b6a9285319a27", "name": "Legacy-named symbol `list_objects_v2` in backfill/archive/backfill_workouts.py:62", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in backfill/archive/backfill_workouts.py:62"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1462bb25b10611ba", "name": "Legacy-named symbol `backfill_v2` in backfill/archive/backfill_garmin.py:602", "shortDescription": {"text": "Legacy-named symbol `backfill_v2` in backfill/archive/backfill_garmin.py:602"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-39cc28d2dd2f035a", "name": "Network/subprocess call without timeout or try/except \u2014 backfill/archive/backfill_strava.py:74", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 backfill/archive/backfill_strava.py:74"}, "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-775a34175986bc1a", "name": "Legacy-named symbol `list_objects_v2` in backfill/archive/backfill_cgm_optimal.py:31", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in backfill/archive/backfill_cgm_optimal.py:31"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "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:\nsetup/create_notion_db.py:notion_request, patches/archive/pre_2026_03/patch_notion_db.py:notion_request, patches/archive/pre_2026_03/patch_notion_db_phase2.py:notion_request\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-2c04133e54348533", "name": "Near-duplicate function bodies in 2 places", "shortDescription": {"text": "Near-duplicate function bodies in 2 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nsetup/withings_auth.py:get_secret, setup/fix_withings_oauth.py:get_secret\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-76a2f6818267a9a8", "name": "Near-duplicate function bodies in 8 places", "shortDescription": {"text": "Near-duplicate function bodies in 8 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\narchive/legacy-scripts/daily_brief_lambda.py:get_anthropic_key, archive/20260308/lambdas/weekly_digest_v2_lambda.py:get_anthropic_key, archive/20260308/lambdas/backup_20260227_182129/anomaly_detector_lambda.py:get_anthropic_key, archive/20260308/lambdas/backup_20260227_182129/weekly_digest_v2_lambda.py:get_anthropic_key\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-122053f21232d80c", "name": "Near-duplicate function bodies in 14 places", "shortDescription": {"text": "Near-duplicate function bodies in 14 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\narchive/legacy-scripts/daily_brief_lambda.py:d2f, archive/20260308/deploy/daily_brief_lambda.py:d2f, archive/20260308/lambdas/weekly_digest_v2_lambda.py:d2f, archive/20260308/lambdas/backup_20260227_182129/anomaly_detector_lambda.py:d2f\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-02525d39071dd2c7", "name": "Near-duplicate function bodies in 5 places", "shortDescription": {"text": "Near-duplicate function bodies in 5 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\narchive/legacy-scripts/daily_brief_lambda.py:get_current_phase, archive/20260308/deploy/daily_brief_lambda.py:get_current_phase, deploy/archive/onetime/daily_brief_lambda.py:get_current_phase, lambdas/compute/dashboard_refresh_lambda.py:get_current_phase\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-49c98f7cedd9c977", "name": "Near-duplicate function bodies in 4 places", "shortDescription": {"text": "Near-duplicate function bodies in 4 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\narchive/legacy-scripts/daily_brief_lambda.py:extract_journal_signals, archive/20260308/deploy/daily_brief_lambda.py:extract_journal_signals, deploy/archive/onetime/daily_brief_lambda.py:extract_journal_signals, lambdas/emails/daily_brief_lambda.py:extract_journal_signals\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:\narchive/legacy-scripts/daily_brief_lambda.py:grade_colour, archive/20260308/deploy/scoring_engine.py:grade_colour, archive/20260308/lambdas/weekly_digest_v2_lambda.py:grade_colour, archive/20260308/lambdas/backup_20260227_182129/weekly_digest_v2_lambda.py:grade_colour\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/24401"}, "properties": {"repository": "averagejoematt/life-platform", "repoUrl": "https://github.com/averagejoematt/life-platform", "branch": "main"}, "results": [{"ruleId": "scanner-d73122eaa29ac62a", "level": "note", "message": {"text": "Possibly dead Python function: do_GET"}, "properties": {"repobilityId": "2d943bb45e4f13bd", "scanner": "scanner-primary", "fingerprint": "d73122eaa29ac62a", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup/fix_withings_oauth.py:42"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-370ac37ead0f87db", "level": "note", "message": {"text": "Possibly dead Python function: log_message"}, "properties": {"repobilityId": "965f3150b4af5b2e", "scanner": "scanner-primary", "fingerprint": "370ac37ead0f87db", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup/fix_withings_oauth.py:62"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2fb839faeeed675c", "level": "note", "message": {"text": "Possibly dead Python function: attr"}, "properties": {"repobilityId": "e2941578fd991425", "scanner": "scanner-primary", "fingerprint": "2fb839faeeed675c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/v4_relocate_legacy.py:97"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-46a4d00ef3a04b71", "level": "note", "message": {"text": "Possibly dead Python function: url"}, "properties": {"repobilityId": "f7d4128841944e7e", "scanner": "scanner-primary", "fingerprint": "46a4d00ef3a04b71", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/v4_relocate_legacy.py:100"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2fb5bc0a21a5f200", "level": "note", "message": {"text": "Possibly dead Python function: srcset"}, "properties": {"repobilityId": "f932bde7aeaa0f2f", "scanner": "scanner-primary", "fingerprint": "2fb5bc0a21a5f200", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/v4_relocate_legacy.py:103"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f8744ebfa317558f", "level": "note", "message": {"text": "Possibly dead Python function: fetch_feed"}, "properties": {"repobilityId": "1d69f94f5020881f", "scanner": "scanner-primary", "fingerprint": "f8744ebfa317558f", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/legacy-scripts/p40_podcasts.py:177"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a697794faaba864e", "level": "note", "message": {"text": "Possibly dead Python function: score_movement"}, "properties": {"repobilityId": "08598493e8b97410", "scanner": "scanner-primary", "fingerprint": "a697794faaba864e", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/legacy-scripts/daily_brief_lambda.py:376"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b9b0f5f76d0561f8", "level": "note", "message": {"text": "Possibly dead Python function: score_habits_mvp"}, "properties": {"repobilityId": "ab246d75c09fef04", "scanner": "scanner-primary", "fingerprint": "b9b0f5f76d0561f8", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/legacy-scripts/daily_brief_lambda.py:405"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c68776821eb258cd", "level": "note", "message": {"text": "Possibly dead Python function: score_hydration"}, "properties": {"repobilityId": "138ab7c1864c12a2", "scanner": "scanner-primary", "fingerprint": "c68776821eb258cd", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/legacy-scripts/daily_brief_lambda.py:425"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3e76fcde1b0b5a5d", "level": "note", "message": {"text": "Possibly dead Python function: score_glucose"}, "properties": {"repobilityId": "ba15fee3ec50442e", "scanner": "scanner-primary", "fingerprint": "3e76fcde1b0b5a5d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/legacy-scripts/daily_brief_lambda.py:454"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6f4f82c010f933a0", "level": "note", "message": {"text": "Possibly dead Python function: build_section"}, "properties": {"repobilityId": "dc44da17fbd464c2", "scanner": "scanner-primary", "fingerprint": "6f4f82c010f933a0", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/legacy-scripts/daily_brief_lambda.py:865"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5e13b96939eed13a", "level": "note", "message": {"text": "Possibly dead Python function: score_movement"}, "properties": {"repobilityId": "08598493e8b97410", "scanner": "scanner-primary", "fingerprint": "5e13b96939eed13a", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260308/deploy/scoring_engine.py:139"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f9bca9e17ca3990a", "level": "note", "message": {"text": "Possibly dead Python function: score_hydration"}, "properties": {"repobilityId": "138ab7c1864c12a2", "scanner": "scanner-primary", "fingerprint": "f9bca9e17ca3990a", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260308/deploy/scoring_engine.py:288"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8dcf5f5e0074961b", "level": "note", "message": {"text": "Possibly dead Python function: score_glucose"}, "properties": {"repobilityId": "ba15fee3ec50442e", "scanner": "scanner-primary", "fingerprint": "8dcf5f5e0074961b", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260308/deploy/scoring_engine.py:327"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-65196deb2f4830d7", "level": "note", "message": {"text": "Possibly dead Python function: ex_hevy"}, "properties": {"repobilityId": "d0f8c30d54064e92", "scanner": "scanner-primary", "fingerprint": "65196deb2f4830d7", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260308/lambdas/backup_20260227_182129/monthly_digest_lambda.py:155"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-04bc90167749292f", "level": "note", "message": {"text": "Possibly dead Python function: ex_chronicling"}, "properties": {"repobilityId": "068b545ed250653e", "scanner": "scanner-primary", "fingerprint": "04bc90167749292f", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260308/lambdas/backup_20260227_182129/monthly_digest_lambda.py:174"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-54bd12407acc53c6", "level": "note", "message": {"text": "Possibly dead Python function: ex_hevy"}, "properties": {"repobilityId": "d0f8c30d54064e92", "scanner": "scanner-primary", "fingerprint": "54bd12407acc53c6", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260308/lambdas/backup_20260227_183354/monthly_digest_lambda.py:166"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9b09d7a6bf6fe36a", "level": "note", "message": {"text": "Possibly dead Python function: ex_chronicling"}, "properties": {"repobilityId": "068b545ed250653e", "scanner": "scanner-primary", "fingerprint": "9b09d7a6bf6fe36a", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260308/lambdas/backup_20260227_183354/monthly_digest_lambda.py:185"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-eaba6c4e66e84690", "level": "note", "message": {"text": "Possibly dead Python function: create_math_alarm"}, "properties": {"repobilityId": "9d408f56a43991ab", "scanner": "scanner-primary", "fingerprint": "eaba6c4e66e84690", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260309/deploy/deploy_cost3_token_alarm.py:123"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-48f4c2dc503f1574", "level": "note", "message": {"text": "Possibly dead Python function: repl_iso_time"}, "properties": {"repobilityId": "f785c4ae1d3a87ed", "scanner": "scanner-primary", "fingerprint": "48f4c2dc503f1574", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/restart_site_copy_sync.py:221"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f13b09dfdc5a810a", "level": "note", "message": {"text": "Possibly dead Python function: repl_bare"}, "properties": {"repobilityId": "a0d052516c6ecd66", "scanner": "scanner-primary", "fingerprint": "f13b09dfdc5a810a", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/restart_site_copy_sync.py:230"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3dca2e19a11bb3c7", "level": "note", "message": {"text": "Possibly dead Python function: run_cmd"}, "properties": {"repobilityId": "7e7b8b11558bee72", "scanner": "scanner-primary", "fingerprint": "3dca2e19a11bb3c7", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/generate_review_bundle.py:62"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4efe5d9f8bf7f50a", "level": "note", "message": {"text": "Possibly dead Python function: count_files"}, "properties": {"repobilityId": "f880ea25bcfaec5e", "scanner": "scanner-primary", "fingerprint": "4efe5d9f8bf7f50a", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/generate_review_bundle.py:73"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-00b242e16f7aceb2", "level": "note", "message": {"text": "Possibly dead Python function: handle_ask"}, "properties": {"repobilityId": "d71ff8ce3cf30aca", "scanner": "scanner-primary", "fingerprint": "00b242e16f7aceb2", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/archive/ask_endpoint.py:188"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d032cb9b2d44f900", "level": "note", "message": {"text": "Possibly dead Python function: handle_starttag"}, "properties": {"repobilityId": "3bf216d149959ebf", "scanner": "scanner-primary", "fingerprint": "d032cb9b2d44f900", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/archive/onetime/backfill_journal.py:67"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e268f578642ff2a6", "level": "note", "message": {"text": "Possibly dead Python function: handle_endtag"}, "properties": {"repobilityId": "7eb6f3decafc1766", "scanner": "scanner-primary", "fingerprint": "e268f578642ff2a6", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/archive/onetime/backfill_journal.py:78"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b57fcd396be9d2e6", "level": "note", "message": {"text": "Possibly dead Python function: handle_data"}, "properties": {"repobilityId": "3a673a278f4fc1e6", "scanner": "scanner-primary", "fingerprint": "b57fcd396be9d2e6", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/archive/onetime/backfill_journal.py:86"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8dda53cfe7996899", "level": "note", "message": {"text": "Possibly dead Python function: handle_entityref"}, "properties": {"repobilityId": "7c5ac18a5da0189d", "scanner": "scanner-primary", "fingerprint": "8dda53cfe7996899", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/archive/onetime/backfill_journal.py:90"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-06d935c37353d7c3", "level": "note", "message": {"text": "Possibly dead Python function: handle_charref"}, "properties": {"repobilityId": "2b5922bb3f88ade8", "scanner": "scanner-primary", "fingerprint": "06d935c37353d7c3", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/archive/onetime/backfill_journal.py:94"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-87b8db86c0d4ad95", "level": "note", "message": {"text": "Possibly dead Python function: score_movement"}, "properties": {"repobilityId": "08598493e8b97410", "scanner": "scanner-primary", "fingerprint": "87b8db86c0d4ad95", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/archive/onetime/daily_brief_lambda.py:630"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-79da0966dec12a67", "level": "warning", "message": {"text": "Privileged port 20 in use"}, "properties": {"repobilityId": "a59f3e53d617e0f8", "scanner": "scanner-primary", "fingerprint": "79da0966dec12a67", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup/setup_notion.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-21ff9836b042d6ba", "level": "warning", "message": {"text": "Privileged port 12 in use"}, "properties": {"repobilityId": "65e7eefa33f2def4", "scanner": "scanner-primary", "fingerprint": "21ff9836b042d6ba", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup/setup_notion.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-42f063d4f06df8e6", "level": "warning", "message": {"text": "Privileged port 14 in use"}, "properties": {"repobilityId": "2dbd4b719a1412ff", "scanner": "scanner-primary", "fingerprint": "42f063d4f06df8e6", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup/setup_notion.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c72751c4782d6c7d", "level": "warning", "message": {"text": "Privileged port 13 in use"}, "properties": {"repobilityId": "79d721e4d6f64798", "scanner": "scanner-primary", "fingerprint": "c72751c4782d6c7d", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "setup/setup_notion.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e1117d24b697b18f", "level": "warning", "message": {"text": "Privileged port 17 in use"}, "properties": {"repobilityId": "0bf38fb8f89ec589", "scanner": "scanner-primary", "fingerprint": "e1117d24b697b18f", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260308/deploy/deploy_daily_brief_v2_timing_step2.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-555fa94837e53839", "level": "warning", "message": {"text": "Privileged port 30 in use"}, "properties": {"repobilityId": "54f172e7d16fc662", "scanner": "scanner-primary", "fingerprint": "555fa94837e53839", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260308/deploy/deploy_daily_brief_v2_timing_step2.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c568667a3eefd50f", "level": "warning", "message": {"text": "Privileged port 10 in use"}, "properties": {"repobilityId": "735372d6b5594915", "scanner": "scanner-primary", "fingerprint": "c568667a3eefd50f", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260308/deploy/deploy_daily_brief_v2_timing_step2.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e7113a5f3a514b72", "level": "warning", "message": {"text": "Privileged port 18 in use"}, "properties": {"repobilityId": "2d7b5e7d9c158e43", "scanner": "scanner-primary", "fingerprint": "e7113a5f3a514b72", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260308/deploy/deploy_daily_brief_v2_timing_step2.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a843aa932e09fd5d", "level": "warning", "message": {"text": "Privileged port 16 in use"}, "properties": {"repobilityId": "d31009168c502ace", "scanner": "scanner-primary", "fingerprint": "a843aa932e09fd5d", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260309/deploy/deploy_feature18_anomaly_v2.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e4071eb4728f5c61", "level": "warning", "message": {"text": "Privileged port 15 in use"}, "properties": {"repobilityId": "3340f9a170f285cd", "scanner": "scanner-primary", "fingerprint": "e4071eb4728f5c61", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260309/deploy/deploy_habitify.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4e603555452afbd1", "level": "warning", "message": {"text": "Privileged port 40 in use"}, "properties": {"repobilityId": "28c59d470d4929c6", "scanner": "scanner-primary", "fingerprint": "4e603555452afbd1", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260309/deploy/deploy_daily_metrics_compute.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6926623fd7ce9c7a", "level": "warning", "message": {"text": "Privileged port 19 in use"}, "properties": {"repobilityId": "a6b5b06deac36eac", "scanner": "scanner-primary", "fingerprint": "6926623fd7ce9c7a", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260309/deploy/deploy_ic7_ic18.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c07d182c1da7a691", "level": "warning", "message": {"text": "Privileged port 21 in use"}, "properties": {"repobilityId": "d920b7cd1b1a16dc", "scanner": "scanner-primary", "fingerprint": "c07d182c1da7a691", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260309/deploy/deploy_dashboard_refresh.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ce63db46d1a606e7", "level": "warning", "message": {"text": "Privileged port 42 in use"}, "properties": {"repobilityId": "16d9608735f9e01a", "scanner": "scanner-primary", "fingerprint": "ce63db46d1a606e7", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260309/deploy/deploy_ic_features.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ce0e961b81fc28f2", "level": "warning", "message": {"text": "Privileged port 11 in use"}, "properties": {"repobilityId": "5b3038c67fabb4c8", "scanner": "scanner-primary", "fingerprint": "ce0e961b81fc28f2", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260309/deploy/setup_p3_schedules.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c323de3b2db5d021", "level": "warning", "message": {"text": "Privileged port 23 in use"}, "properties": {"repobilityId": "a1230e3dfc4becfa", "scanner": "scanner-primary", "fingerprint": "c323de3b2db5d021", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260309/deploy/setup_p3_schedules.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-278cddadeab84217", "level": "warning", "message": {"text": "Privileged port 36 in use"}, "properties": {"repobilityId": "d1c2650d13d67a60", "scanner": "scanner-primary", "fingerprint": "278cddadeab84217", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260309/deploy/deploy_v2.73.0.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-91316cf90f069881", "level": "warning", "message": {"text": "Privileged port 35 in use"}, "properties": {"repobilityId": "e997ec9811d79c6d", "scanner": "scanner-primary", "fingerprint": "91316cf90f069881", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "archive/20260309/deploy/deploy_character_sheet_compute.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-860fd8393952ae99", "level": "warning", "message": {"text": "Privileged port 55 in use"}, "properties": {"repobilityId": "51a768b3e1831ac0", "scanner": "scanner-primary", "fingerprint": "860fd8393952ae99", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/warmup_lambdas.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-511b2b375e9e66a6", "level": "error", "message": {"text": "Insecure pattern 'subprocess_shell_true' in deploy/generate_review_bundle.py:65"}, "properties": {"repobilityId": "b3fe706ca6276478", "scanner": "scanner-primary", "fingerprint": "511b2b375e9e66a6", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "subprocess_shell_true"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/generate_review_bundle.py"}, "region": {"startLine": 65}}}]}, {"ruleId": "scanner-e7f71983aa2612f2", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in deploy/archive/onetime/patch_character_ring.py:116"}, "properties": {"repobilityId": "4558c8850c44d95b", "scanner": "scanner-primary", "fingerprint": "e7f71983aa2612f2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/archive/onetime/patch_character_ring.py"}, "region": {"startLine": 116}}}]}, {"ruleId": "scanner-ab5d74d5fb386054", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in deploy/archive/onetime/patch_v3.9.37_product_board.py:575"}, "properties": {"repobilityId": "db65896403d74880", "scanner": "scanner-primary", "fingerprint": "ab5d74d5fb386054", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/archive/onetime/patch_v3.9.37_product_board.py"}, "region": {"startLine": 575}}}]}, {"ruleId": "scanner-20c69e4937f1f141", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in deploy/archive/onetime/patch_tier2_home.py:65"}, "properties": {"repobilityId": "c0502fec82683758", "scanner": "scanner-primary", "fingerprint": "20c69e4937f1f141", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/archive/onetime/patch_tier2_home.py"}, "region": {"startLine": 65}}}]}, {"ruleId": "scanner-97d01721cc5fbc61", "level": "error", "message": {"text": "Insecure pattern 'eval_used' in deploy/archive/20260314/verify_dlq_alarm_periods.sh:52"}, "properties": {"repobilityId": "d063f8668810af12", "scanner": "scanner-primary", "fingerprint": "97d01721cc5fbc61", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "eval_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/archive/20260314/verify_dlq_alarm_periods.sh"}, "region": {"startLine": 52}}}]}, {"ruleId": "scanner-b22ccd0daa41860d", "level": "error", "message": {"text": "Insecure pattern 'subprocess_shell_true' in deploy/archive/20260310/patch_registry.py:22"}, "properties": {"repobilityId": "374fa1579a716d1d", "scanner": "scanner-primary", "fingerprint": "b22ccd0daa41860d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "subprocess_shell_true"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deploy/archive/20260310/patch_registry.py"}, "region": {"startLine": 22}}}]}, {"ruleId": "scanner-4c08049a4bda30f6", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/index.html:883"}, "properties": {"repobilityId": "fb6da8eca6833e24", "scanner": "scanner-primary", "fingerprint": "4c08049a4bda30f6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/index.html"}, "region": {"startLine": 883}}}]}, {"ruleId": "scanner-260a357d2d8245e8", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/chronicle/index.html:271"}, "properties": {"repobilityId": "7e51c64685fe795f", "scanner": "scanner-primary", "fingerprint": "260a357d2d8245e8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/chronicle/index.html"}, "region": {"startLine": 271}}}]}, {"ruleId": "scanner-8aa291417f509fc3", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/chronicle/archive/index.html:264"}, "properties": {"repobilityId": "050b9dcd18cb3e8d", "scanner": "scanner-primary", "fingerprint": "8aa291417f509fc3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/chronicle/archive/index.html"}, "region": {"startLine": 264}}}]}, {"ruleId": "scanner-2b677cc8f83d18f6", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/experiments/index.html:1054"}, "properties": {"repobilityId": "f0ece285056d039c", "scanner": "scanner-primary", "fingerprint": "2b677cc8f83d18f6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/experiments/index.html"}, "region": {"startLine": 1054}}}]}, {"ruleId": "scanner-fd70ecb08bde11ea", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/experiments/detail/index.html:243"}, "properties": {"repobilityId": "c835089f24472767", "scanner": "scanner-primary", "fingerprint": "fd70ecb08bde11ea", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/experiments/detail/index.html"}, "region": {"startLine": 243}}}]}, {"ruleId": "scanner-b7c7b3699a1e6cee", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/supplements/index.html:729"}, "properties": {"repobilityId": "e2689ee53cbb7cb2", "scanner": "scanner-primary", "fingerprint": "b7c7b3699a1e6cee", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/supplements/index.html"}, "region": {"startLine": 729}}}]}, {"ruleId": "scanner-d9b71e427e7de4af", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/training/index.html:655"}, "properties": {"repobilityId": "58d7a1b3a8434736", "scanner": "scanner-primary", "fingerprint": "d9b71e427e7de4af", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/training/index.html"}, "region": {"startLine": 655}}}]}, {"ruleId": "scanner-581c22eebc4b93e3", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/field-notes/index.html:252"}, "properties": {"repobilityId": "593bffe057cef1d4", "scanner": "scanner-primary", "fingerprint": "581c22eebc4b93e3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/field-notes/index.html"}, "region": {"startLine": 252}}}]}, {"ruleId": "scanner-9790b6bb0b1d9d24", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/glucose/index.html:567"}, "properties": {"repobilityId": "7e58ecbedc7d6b23", "scanner": "scanner-primary", "fingerprint": "9790b6bb0b1d9d24", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/glucose/index.html"}, "region": {"startLine": 567}}}]}, {"ruleId": "scanner-6905fab3937fecf1", "level": "warning", "message": {"text": "Insecure pattern 'insert_adjacent_html' in site/legacy/glucose/index.html:583"}, "properties": {"repobilityId": "efe8ec2c3bd46e83", "scanner": "scanner-primary", "fingerprint": "6905fab3937fecf1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "insert_adjacent_html"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/glucose/index.html"}, "region": {"startLine": 583}}}]}, {"ruleId": "scanner-e0cd7a1e56783a8f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/biology/index.html:166"}, "properties": {"repobilityId": "6489f21633402f50", "scanner": "scanner-primary", "fingerprint": "e0cd7a1e56783a8f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/biology/index.html"}, "region": {"startLine": 166}}}]}, {"ruleId": "scanner-be6e6ad30ce76575", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/labs/index.html:781"}, "properties": {"repobilityId": "895e6da51e8d80a6", "scanner": "scanner-primary", "fingerprint": "be6e6ad30ce76575", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/labs/index.html"}, "region": {"startLine": 781}}}]}, {"ruleId": "scanner-576ca144b23bcb65", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/physical/index.html:496"}, "properties": {"repobilityId": "91c6fc437fe07360", "scanner": "scanner-primary", "fingerprint": "576ca144b23bcb65", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/physical/index.html"}, "region": {"startLine": 496}}}]}, {"ruleId": "scanner-30c0748a7fe4ac09", "level": "warning", "message": {"text": "Insecure pattern 'insert_adjacent_html' in site/legacy/physical/index.html:767"}, "properties": {"repobilityId": "da7d5513ac9cb2d3", "scanner": "scanner-primary", "fingerprint": "30c0748a7fe4ac09", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "insert_adjacent_html"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/physical/index.html"}, "region": {"startLine": 767}}}]}, {"ruleId": "scanner-ec8512bfabd81750", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/benchmarks/index.html:1217"}, "properties": {"repobilityId": "1d6cb5c696e8a5b5", "scanner": "scanner-primary", "fingerprint": "ec8512bfabd81750", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/benchmarks/index.html"}, "region": {"startLine": 1217}}}]}, {"ruleId": "scanner-e676f24526ef7a77", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/tools/index.html:831"}, "properties": {"repobilityId": "1b1b75e10c323c0e", "scanner": "scanner-primary", "fingerprint": "e676f24526ef7a77", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/tools/index.html"}, "region": {"startLine": 831}}}]}, {"ruleId": "scanner-ac4c8448ab422e6c", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/habits/index.html:1187"}, "properties": {"repobilityId": "7c796439d1bdf9f6", "scanner": "scanner-primary", "fingerprint": "ac4c8448ab422e6c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/habits/index.html"}, "region": {"startLine": 1187}}}]}, {"ruleId": "scanner-e6a5b35a83de55db", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/live/index.html:256"}, "properties": {"repobilityId": "cb7885fc142a983c", "scanner": "scanner-primary", "fingerprint": "e6a5b35a83de55db", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/live/index.html"}, "region": {"startLine": 256}}}]}, {"ruleId": "scanner-4df2fdac32f81279", "level": "warning", "message": {"text": "Insecure pattern 'insert_adjacent_html' in site/legacy/live/index.html:276"}, "properties": {"repobilityId": "2254e9ae75fa91f5", "scanner": "scanner-primary", "fingerprint": "4df2fdac32f81279", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "insert_adjacent_html"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/live/index.html"}, "region": {"startLine": 276}}}]}, {"ruleId": "scanner-c0cb7588c88b68ec", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/discoveries/index.html:828"}, "properties": {"repobilityId": "1325c8894e92a073", "scanner": "scanner-primary", "fingerprint": "c0cb7588c88b68ec", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/discoveries/index.html"}, "region": {"startLine": 828}}}]}, {"ruleId": "scanner-500fb1387012dcdc", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/sleep/index.html:556"}, "properties": {"repobilityId": "ebe613a378422128", "scanner": "scanner-primary", "fingerprint": "500fb1387012dcdc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/sleep/index.html"}, "region": {"startLine": 556}}}]}, {"ruleId": "scanner-fa147996ca7ec8f6", "level": "warning", "message": {"text": "Insecure pattern 'insert_adjacent_html' in site/legacy/sleep/index.html:577"}, "properties": {"repobilityId": "55578b50dc5c587c", "scanner": "scanner-primary", "fingerprint": "fa147996ca7ec8f6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "insert_adjacent_html"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/sleep/index.html"}, "region": {"startLine": 577}}}]}, {"ruleId": "scanner-cb0e5dca9209a5c5", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/recap/index.html:358"}, "properties": {"repobilityId": "1449a3a319a414aa", "scanner": "scanner-primary", "fingerprint": "cb0e5dca9209a5c5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/archive/v1/recap/index.html"}, "region": {"startLine": 358}}}]}, {"ruleId": "scanner-95508fbd44761dec", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/weekly/index.html:347"}, "properties": {"repobilityId": "b7b174a84afb2f16", "scanner": "scanner-primary", "fingerprint": "95508fbd44761dec", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/archive/v1/weekly/index.html"}, "region": {"startLine": 347}}}]}, {"ruleId": "scanner-40c10b46a2bb848d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/coaches/index.html:898"}, "properties": {"repobilityId": "4f20f54e1541bbbe", "scanner": "scanner-primary", "fingerprint": "40c10b46a2bb848d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/archive/v1/coaches/index.html"}, "region": {"startLine": 898}}}]}, {"ruleId": "scanner-3f46e405f0415ce5", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/board/index.html:452"}, "properties": {"repobilityId": "f3f61214c95c1326", "scanner": "scanner-primary", "fingerprint": "3f46e405f0415ce5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/archive/v1/board/index.html"}, "region": {"startLine": 452}}}]}, {"ruleId": "scanner-ca453e95cc1bd6c5", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/archive/v1/stack/index.html:436"}, "properties": {"repobilityId": "4a0e6f13b0e7c3f2", "scanner": "scanner-primary", "fingerprint": "ca453e95cc1bd6c5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/archive/v1/stack/index.html"}, "region": {"startLine": 436}}}]}, {"ruleId": "scanner-c04e8dcefc8dc850", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/accountability/index.html:1084"}, "properties": {"repobilityId": "da47d9454891672e", "scanner": "scanner-primary", "fingerprint": "c04e8dcefc8dc850", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/accountability/index.html"}, "region": {"startLine": 1084}}}]}, {"ruleId": "scanner-b6708710fadc07e2", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/explorer/index.html:568"}, "properties": {"repobilityId": "3b3de7cde0c1e6fc", "scanner": "scanner-primary", "fingerprint": "b6708710fadc07e2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/explorer/index.html"}, "region": {"startLine": 568}}}]}, {"ruleId": "scanner-8a56bf3dd0927ac6", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/week/index.html:428"}, "properties": {"repobilityId": "7e75bf4a08295341", "scanner": "scanner-primary", "fingerprint": "8a56bf3dd0927ac6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/week/index.html"}, "region": {"startLine": 428}}}]}, {"ruleId": "scanner-e38095a9c780a898", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/ask/index.html:524"}, "properties": {"repobilityId": "3bd3b06cdfb9f11c", "scanner": "scanner-primary", "fingerprint": "e38095a9c780a898", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/ask/index.html"}, "region": {"startLine": 524}}}]}, {"ruleId": "scanner-de23d4faaf1894f0", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/mind/index.html:641"}, "properties": {"repobilityId": "938141ddb5ff7160", "scanner": "scanner-primary", "fingerprint": "de23d4faaf1894f0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/mind/index.html"}, "region": {"startLine": 641}}}]}, {"ruleId": "scanner-572bb99cc24ca384", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/character/index.html:1848"}, "properties": {"repobilityId": "7c72b6a408fdfc2c", "scanner": "scanner-primary", "fingerprint": "572bb99cc24ca384", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/character/index.html"}, "region": {"startLine": 1848}}}]}, {"ruleId": "scanner-8bad0f15c4c15bac", "level": "warning", "message": {"text": "Insecure pattern 'insert_adjacent_html' in site/legacy/character/index.html:1899"}, "properties": {"repobilityId": "7f8fceee9a132404", "scanner": "scanner-primary", "fingerprint": "8bad0f15c4c15bac", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "insert_adjacent_html"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/character/index.html"}, "region": {"startLine": 1899}}}]}, {"ruleId": "scanner-2c5ad266b42434d2", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/ledger/index.html:323"}, "properties": {"repobilityId": "a2044b4a5b159dc7", "scanner": "scanner-primary", "fingerprint": "2c5ad266b42434d2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/ledger/index.html"}, "region": {"startLine": 323}}}]}, {"ruleId": "scanner-dfbba72b152ed4bd", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/nutrition/index.html:710"}, "properties": {"repobilityId": "1047ecb9a9766172", "scanner": "scanner-primary", "fingerprint": "dfbba72b152ed4bd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/nutrition/index.html"}, "region": {"startLine": 710}}}]}, {"ruleId": "scanner-43a4a54bdfd1269f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/protocols/index.html:598"}, "properties": {"repobilityId": "6538f9cd715c60ed", "scanner": "scanner-primary", "fingerprint": "43a4a54bdfd1269f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/protocols/index.html"}, "region": {"startLine": 598}}}]}, {"ruleId": "scanner-b53a004c4cb3b21b", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/challenges/index.html:958"}, "properties": {"repobilityId": "0c9c7a5a911ecd3e", "scanner": "scanner-primary", "fingerprint": "b53a004c4cb3b21b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/challenges/index.html"}, "region": {"startLine": 958}}}]}, {"ruleId": "scanner-354f6c28a4653d66", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/status/index.html:176"}, "properties": {"repobilityId": "ab19c45cde9fe26b", "scanner": "scanner-primary", "fingerprint": "354f6c28a4653d66", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/status/index.html"}, "region": {"startLine": 176}}}]}, {"ruleId": "scanner-b7ac928d6529bbad", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/platform/index.html:1074"}, "properties": {"repobilityId": "80473e7910703937", "scanner": "scanner-primary", "fingerprint": "b7ac928d6529bbad", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/platform/index.html"}, "region": {"startLine": 1074}}}]}, {"ruleId": "scanner-eae813496580eb76", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/predictions/index.html:412"}, "properties": {"repobilityId": "620ba3c1a69cb85b", "scanner": "scanner-primary", "fingerprint": "eae813496580eb76", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/predictions/index.html"}, "region": {"startLine": 412}}}]}, {"ruleId": "scanner-d54c6e40f66f9a38", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/assets/js/observatory-v3.js:22"}, "properties": {"repobilityId": "7a2cd54d6391ec58", "scanner": "scanner-primary", "fingerprint": "d54c6e40f66f9a38", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/assets/js/observatory-v3.js"}, "region": {"startLine": 22}}}]}, {"ruleId": "scanner-7d49cc6514d124e7", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/assets/js/components.js:408"}, "properties": {"repobilityId": "a9fecf62b00a5956", "scanner": "scanner-primary", "fingerprint": "7d49cc6514d124e7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/assets/js/components.js"}, "region": {"startLine": 408}}}]}, {"ruleId": "scanner-7e9c92cd0be68255", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/assets/js/engagement.js:189"}, "properties": {"repobilityId": "5c54ef933c44036b", "scanner": "scanner-primary", "fingerprint": "7e9c92cd0be68255", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/assets/js/engagement.js"}, "region": {"startLine": 189}}}]}, {"ruleId": "scanner-f16d291cfc3f4e81", "level": "warning", "message": {"text": "Insecure pattern 'insert_adjacent_html' in site/legacy/assets/js/engagement.js:288"}, "properties": {"repobilityId": "bb3d3c952c438512", "scanner": "scanner-primary", "fingerprint": "f16d291cfc3f4e81", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "insert_adjacent_html"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/assets/js/engagement.js"}, "region": {"startLine": 288}}}]}, {"ruleId": "scanner-c7d4c6573c38f699", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/legacy/assets/js/countdown.js:53"}, "properties": {"repobilityId": "d68ff4eb9de486a9", "scanner": "scanner-primary", "fingerprint": "c7d4c6573c38f699", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/legacy/assets/js/countdown.js"}, "region": {"startLine": 53}}}]}, {"ruleId": "scanner-afa3767689101d19", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/subscribe/index.html:108"}, "properties": {"repobilityId": "dbbf55ef4825af76", "scanner": "scanner-primary", "fingerprint": "afa3767689101d19", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/subscribe/index.html"}, "region": {"startLine": 108}}}]}, {"ruleId": "scanner-5aca8d60d8915008", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/subscribe/confirm/index.html:66"}, "properties": {"repobilityId": "15dfab0d92cb09a9", "scanner": "scanner-primary", "fingerprint": "5aca8d60d8915008", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/subscribe/confirm/index.html"}, "region": {"startLine": 66}}}]}, {"ruleId": "scanner-628e72eb34d595ec", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/assets/js/story.js:171"}, "properties": {"repobilityId": "88871b29ee6d4730", "scanner": "scanner-primary", "fingerprint": "628e72eb34d595ec", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/assets/js/story.js"}, "region": {"startLine": 171}}}]}, {"ruleId": "scanner-bf87759387f4c021", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/assets/js/evidence.js:405"}, "properties": {"repobilityId": "f172d2f9dfa31d2a", "scanner": "scanner-primary", "fingerprint": "bf87759387f4c021", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/assets/js/evidence.js"}, "region": {"startLine": 405}}}]}, {"ruleId": "scanner-a942ac303ad8be6b", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in site/assets/js/evidence.js:382"}, "properties": {"repobilityId": "30ee4d177ace4475", "scanner": "scanner-primary", "fingerprint": "a942ac303ad8be6b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/assets/js/evidence.js"}, "region": {"startLine": 382}}}]}, {"ruleId": "scanner-18b090be4b9252f8", "level": "warning", "message": {"text": "Insecure pattern 'insert_adjacent_html' in site/assets/js/evidence.js:373"}, "properties": {"repobilityId": "cbdb973ed187182e", "scanner": "scanner-primary", "fingerprint": "18b090be4b9252f8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "insert_adjacent_html"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/assets/js/evidence.js"}, "region": {"startLine": 373}}}]}, {"ruleId": "scanner-6c9f281b39ae5878", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/assets/js/dispatches.js:55"}, "properties": {"repobilityId": "d2f46a6847ad4f70", "scanner": "scanner-primary", "fingerprint": "6c9f281b39ae5878", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/assets/js/dispatches.js"}, "region": {"startLine": 55}}}]}, {"ruleId": "scanner-e5fab4657dec8324", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in site/assets/js/cockpit.js:99"}, "properties": {"repobilityId": "538f46020a568010", "scanner": "scanner-primary", "fingerprint": "e5fab4657dec8324", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "site/assets/js/cockpit.js"}, "region": {"startLine": 99}}}]}, {"ruleId": "scanner-9ef30f5fa8dabd9a", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in lambdas/og_image_lambda.mjs:166"}, "properties": {"repobilityId": "5dfa7aea614e6a47", "scanner": "scanner-primary", "fingerprint": "9ef30f5fa8dabd9a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "lambdas/og_image_lambda.mjs"}, "region": {"startLine": 166}}}]}, {"ruleId": "scanner-171ed6505215106c", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in lambdas/dashboard/clinical.html:312"}, "properties": {"repobilityId": "f19e4f9f2205446d", "scanner": "scanner-primary", "fingerprint": "171ed6505215106c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "lambdas/dashboard/clinical.html"}, "region": {"startLine": 312}}}]}, {"ruleId": "scanner-b32adce3d6911dc7", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in lambdas/dashboard/index.html:280"}, "properties": {"repobilityId": "c7deaf26ecd62f5b", "scanner": "scanner-primary", "fingerprint": "b32adce3d6911dc7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "lambdas/dashboard/index.html"}, "region": {"startLine": 280}}}]}, {"ruleId": "scanner-04ca41c7586acb2c", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in lambdas/coach/coach_observatory_renderer.py:581"}, "properties": {"repobilityId": "f04fe576836d9ac1", "scanner": "scanner-primary", "fingerprint": "04ca41c7586acb2c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "lambdas/coach/coach_observatory_renderer.py"}, "region": {"startLine": 581}}}]}, {"ruleId": "scanner-fdf7a63a7797b623", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "341f971df6e2dca3", "scanner": "scanner-primary", "fingerprint": "fdf7a63a7797b623", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/remediation-agent.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b4d529e231ecec0c", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "5764add470d6a2de", "scanner": "scanner-primary", "fingerprint": "b4d529e231ecec0c", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/ci-cd.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e675383d46ac0a14", "level": "note", "message": {"text": "Very large file: tests/test_integration_aws.py (1296 lines)"}, "properties": {"repobilityId": "40afb954d4c571cb", "scanner": "scanner-primary", "fingerprint": "e675383d46ac0a14", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d526256f53b044fa", "level": "note", "message": {"text": "Very large file: archive/legacy-scripts/daily_brief_lambda.py (1359 lines)"}, "properties": {"repobilityId": "969e6dadd70ba1b5", "scanner": "scanner-primary", "fingerprint": "d526256f53b044fa", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-1bc2078e72b61c39", "level": "note", "message": {"text": "Very large file: archive/20260308/deploy/daily_brief_lambda.py (3589 lines)"}, "properties": {"repobilityId": "b403e3b4338a6fb5", "scanner": "scanner-primary", "fingerprint": "1bc2078e72b61c39", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cc5423fbe6ec283d", "level": "note", "message": {"text": "Very large file: archive/20260308/lambdas/weekly_digest_v2_lambda.py (1975 lines)"}, "properties": {"repobilityId": "e83d1d26ef95b823", "scanner": "scanner-primary", "fingerprint": "cc5423fbe6ec283d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f09dd7074e5260de", "level": "note", "message": {"text": "Very large file: archive/20260308/lambdas/backup_20260227_182129/weekly_digest_v2_lambda.py (1872 lines)"}, "properties": {"repobilityId": "d70b71af80e93763", "scanner": "scanner-primary", "fingerprint": "f09dd7074e5260de", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-980f1430b573a821", "level": "note", "message": {"text": "Very large file: archive/20260308/lambdas/backup_20260227_183354/weekly_digest_v2_lambda.py (1883 lines)"}, "properties": {"repobilityId": "5779eadc58b741c1", "scanner": "scanner-primary", "fingerprint": "980f1430b573a821", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-55b0bf01b808401b", "level": "note", "message": {"text": "Very large file: cdk/stacks/role_policies.py (1922 lines)"}, "properties": {"repobilityId": "27102cce3775762d", "scanner": "scanner-primary", "fingerprint": "55b0bf01b808401b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0406a09d9aa0f475", "level": "note", "message": {"text": "Very large file: deploy/archive/onetime/daily_brief_lambda.py (1881 lines)"}, "properties": {"repobilityId": "d54fad77899dd9af", "scanner": "scanner-primary", "fingerprint": "0406a09d9aa0f475", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8f592cfdc99ea7f6", "level": "note", "message": {"text": "Very large file: patches/archive/pre_2026_03/apply_features_6_7_8.py (1046 lines)"}, "properties": {"repobilityId": "ba16eade0682dbe8", "scanner": "scanner-primary", "fingerprint": "8f592cfdc99ea7f6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-71619625fa8a27cc", "level": "note", "message": {"text": "Very large file: mcp/tools_correlation.py (1620 lines)"}, "properties": {"repobilityId": "e27165846872246b", "scanner": "scanner-primary", "fingerprint": "71619625fa8a27cc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-69ffbf6be9ccb7f0", "level": "note", "message": {"text": "Very large file: mcp/tools_habits.py (1594 lines)"}, "properties": {"repobilityId": "14e3677cb0a3084b", "scanner": "scanner-primary", "fingerprint": "69ffbf6be9ccb7f0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d3ce6a9450ba94fe", "level": "note", "message": {"text": "Very large file: mcp/tools_training.py (2084 lines)"}, "properties": {"repobilityId": "f77f99d89ba26a37", "scanner": "scanner-primary", "fingerprint": "d3ce6a9450ba94fe", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7c8f1feb33b91ebd", "level": "note", "message": {"text": "Very large file: mcp/tools_health.py (2656 lines)"}, "properties": {"repobilityId": "16d5d6c151311832", "scanner": "scanner-primary", "fingerprint": "7c8f1feb33b91ebd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6a9c7c0ddbfb6fd5", "level": "note", "message": {"text": "Very large file: mcp/tools_lifestyle.py (3669 lines)"}, "properties": {"repobilityId": "c4e039bea47d9558", "scanner": "scanner-primary", "fingerprint": "6a9c7c0ddbfb6fd5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8431d414efa09c0f", "level": "note", "message": {"text": "Very large file: mcp/registry.py (3540 lines)"}, "properties": {"repobilityId": "492023e70eb777cc", "scanner": "scanner-primary", "fingerprint": "8431d414efa09c0f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6dbeea5868ef1df7", "level": "note", "message": {"text": "Very large file: seeds/archive/generate_habit_registry.py (915 lines)"}, "properties": {"repobilityId": "4a704b6653584db9", "scanner": "scanner-primary", "fingerprint": "6dbeea5868ef1df7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-364fd34748d19998", "level": "note", "message": {"text": "Very large file: lambdas/html_builder.py (1918 lines)"}, "properties": {"repobilityId": "80ac322f2ab7d171", "scanner": "scanner-primary", "fingerprint": "364fd34748d19998", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2a19d01614a68bcb", "level": "note", "message": {"text": "Very large file: lambdas/output_writers.py (1375 lines)"}, "properties": {"repobilityId": "e8e77417f634bcf1", "scanner": "scanner-primary", "fingerprint": "2a19d01614a68bcb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-4ea4fa6a60a3a876", "level": "note", "message": {"text": "Very large file: lambdas/intelligence_common.py (1665 lines)"}, "properties": {"repobilityId": "ea5d1abd2a963b88", "scanner": "scanner-primary", "fingerprint": "4ea4fa6a60a3a876", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0c1097141aab021f", "level": "note", "message": {"text": "Very large file: lambdas/ai_calls.py (1277 lines)"}, "properties": {"repobilityId": "b4cd54aec3cde086", "scanner": "scanner-primary", "fingerprint": "0c1097141aab021f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5d2ede220022008d", "level": "note", "message": {"text": "Very large file: lambdas/compute/daily_insight_compute_lambda.py (2130 lines)"}, "properties": {"repobilityId": "d03f2c67b6ffce5d", "scanner": "scanner-primary", "fingerprint": "5d2ede220022008d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-261b0c719e7c0385", "level": "note", "message": {"text": "Very large file: lambdas/ingestion/health_auto_export_lambda.py (1557 lines)"}, "properties": {"repobilityId": "852698a4852c72c3", "scanner": "scanner-primary", "fingerprint": "261b0c719e7c0385", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9e2bdd217942877f", "level": "note", "message": {"text": "Very large file: lambdas/emails/weekly_digest_lambda.py (1956 lines)"}, "properties": {"repobilityId": "6262dcc28e6a4f21", "scanner": "scanner-primary", "fingerprint": "9e2bdd217942877f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-def0fae62f80ec57", "level": "note", "message": {"text": "Very large file: lambdas/emails/wednesday_chronicle_lambda.py (2286 lines)"}, "properties": {"repobilityId": "a958a1d742d80ea1", "scanner": "scanner-primary", "fingerprint": "def0fae62f80ec57", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d5668777d49842dc", "level": "note", "message": {"text": "Very large file: lambdas/emails/daily_brief_lambda.py (2226 lines)"}, "properties": {"repobilityId": "63deb6fd6f9f8451", "scanner": "scanner-primary", "fingerprint": "d5668777d49842dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-01b47cf11a0e7df2", "level": "note", "message": {"text": "Very large file: lambdas/emails/monthly_digest_lambda.py (1074 lines)"}, "properties": {"repobilityId": "dfc1c966b1b51b39", "scanner": "scanner-primary", "fingerprint": "01b47cf11a0e7df2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7431c9323ea029d8", "level": "note", "message": {"text": "Very large file: lambdas/web/site_api_intelligence.py (1531 lines)"}, "properties": {"repobilityId": "6375402322307079", "scanner": "scanner-primary", "fingerprint": "7431c9323ea029d8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ee5eb8c019c200d2", "level": "note", "message": {"text": "Very large file: lambdas/web/site_api_data.py (2267 lines)"}, "properties": {"repobilityId": "1c354479d22a7ada", "scanner": "scanner-primary", "fingerprint": "ee5eb8c019c200d2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-50dc6b963034c179", "level": "note", "message": {"text": "Very large file: lambdas/web/site_api_observatory.py (1832 lines)"}, "properties": {"repobilityId": "d43149792fb6829e", "scanner": "scanner-primary", "fingerprint": "50dc6b963034c179", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-de32bef4afa8989b", "level": "note", "message": {"text": "Very large file: lambdas/web/site_api_vitals.py (1344 lines)"}, "properties": {"repobilityId": "2b315428abe32168", "scanner": "scanner-primary", "fingerprint": "de32bef4afa8989b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-dbbed04204758b4f", "level": "note", "message": {"text": "Very large file: backfill/draw_2026_04_03.py (1015 lines)"}, "properties": {"repobilityId": "98775fa2e52725f6", "scanner": "scanner-primary", "fingerprint": "dbbed04204758b4f", "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": "e3047eadc50be577", "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": "178bce3c027cac22", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "831047f8b1787689", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-cc55229a7a3c078d", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .mcp.json"}, "properties": {"repobilityId": "51942fb3d5b8b5b4", "scanner": "scanner-primary", "fingerprint": "cc55229a7a3c078d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "mcp_config"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".mcp.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-78c6b3bd59439e66", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/README.md"}, "properties": {"repobilityId": "1e197d304574f4d9", "scanner": "scanner-primary", "fingerprint": "78c6b3bd59439e66", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/README.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ecb0d2c55ed6875d", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/settings.local.json"}, "properties": {"repobilityId": "d8bae33a6d517bf0", "scanner": "scanner-primary", "fingerprint": "ecb0d2c55ed6875d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/settings.local.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ecb11bb35edfb41d", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_shared_modules.py:706"}, "properties": {"repobilityId": "6d438799aeec4920", "scanner": "scanner-primary", "fingerprint": "ecb11bb35edfb41d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6a06b286f1f4305b", "level": "none", "message": {"text": "Commented-code block (7 lines) in tests/test_integration_aws.py:148"}, "properties": {"repobilityId": "01b65f648d6badb8", "scanner": "scanner-primary", "fingerprint": "6a06b286f1f4305b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-035aabbd4223da8c", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_habitify_status_resolution.py:19"}, "properties": {"repobilityId": "2dfa6d1109d7cef2", "scanner": "scanner-primary", "fingerprint": "035aabbd4223da8c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-27bdf4e37c9eb65f", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in tests/validate_links.py:42"}, "properties": {"repobilityId": "f3bc84b787b94dac", "scanner": "scanner-primary", "fingerprint": "27bdf4e37c9eb65f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a7883b45c6b45f17", "level": "note", "message": {"text": "Legacy-named symbol `v4_relocate_legacy` in tests/test_site_a11y_landmarks.py:8"}, "properties": {"repobilityId": "ce06a80aee3bd896", "scanner": "scanner-primary", "fingerprint": "a7883b45c6b45f17", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-60002b90b87cd6a2", "level": "none", "message": {"text": "Commented-code block (13 lines) in tests/test_iam_secrets_consistency.py:201"}, "properties": {"repobilityId": "f4834322cf9fb1c4", "scanner": "scanner-primary", "fingerprint": "60002b90b87cd6a2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-242c309a7af14a7b", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in tests/smoke_test.py:217"}, "properties": {"repobilityId": "c1d94b4a6a50a5f8", "scanner": "scanner-primary", "fingerprint": "242c309a7af14a7b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e0ef791e3edf385f", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 setup/setup_dropbox_auth.py:49"}, "properties": {"repobilityId": "cbee53ae3259d5a7", "scanner": "scanner-primary", "fingerprint": "e0ef791e3edf385f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1517c0ad062e7c75", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 setup/withings_auth.py:31"}, "properties": {"repobilityId": "f1e2c8355857817b", "scanner": "scanner-primary", "fingerprint": "1517c0ad062e7c75", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8746c52a5647b853", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 setup/setup_monarch_auth.py:83"}, "properties": {"repobilityId": "dbdb0d3b9b56a540", "scanner": "scanner-primary", "fingerprint": "8746c52a5647b853", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-cff922374c80ea9b", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 setup/setup_onedrive_auth.py:57"}, "properties": {"repobilityId": "1d918887a304ade3", "scanner": "scanner-primary", "fingerprint": "cff922374c80ea9b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-fbefe3f3b9365891", "level": "note", "message": {"text": "Legacy-named symbol `v4_relocate_legacy` in scripts/v4_migration_inventory.py:6"}, "properties": {"repobilityId": "f3a4724e3a3cc777", "scanner": "scanner-primary", "fingerprint": "fbefe3f3b9365891", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c5aafed82f03b8e1", "level": "note", "message": {"text": "Legacy-named symbol `v4_relocate_legacy` in scripts/v4_relocate_legacy.py:3"}, "properties": {"repobilityId": "f3c43f4c3816400d", "scanner": "scanner-primary", "fingerprint": "c5aafed82f03b8e1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-97090800347346d9", "level": "note", "message": {"text": "Legacy-named symbol `_score_habits_mvp_legacy` in archive/20260308/deploy/scoring_engine.py:184"}, "properties": {"repobilityId": "ed817c159afc27d9", "scanner": "scanner-primary", "fingerprint": "97090800347346d9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-785af923f1b0941e", "level": "none", "message": {"text": "Commented-code block (5 lines) in archive/20260308/deploy/patch_daily_brief_hardening.py:238"}, "properties": {"repobilityId": "b155fc6e6c928d1c", "scanner": "scanner-primary", "fingerprint": "785af923f1b0941e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6d82405ee2ad7204", "level": "note", "message": {"text": "Legacy-named symbol `_score_habits_mvp_legacy` in archive/20260308/deploy/daily_brief_lambda.py:480"}, "properties": {"repobilityId": "746ee5cbd46a8759", "scanner": "scanner-primary", "fingerprint": "6d82405ee2ad7204", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-61f977fe2f42c15a", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 archive/20260308/lambdas/backup_20260227_182129/strava_lambda.py:58"}, "properties": {"repobilityId": "53d8b6e49f1b7cb6", "scanner": "scanner-primary", "fingerprint": "61f977fe2f42c15a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-aa486d97efc6aa0e", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 archive/20260308/lambdas/backup_20260227_182129/todoist_lambda.py:44"}, "properties": {"repobilityId": "ca18355ff00ae884", "scanner": "scanner-primary", "fingerprint": "aa486d97efc6aa0e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-64132c42ea0ef490", "level": "note", "message": {"text": "Legacy-named symbol `move_v2` in archive/20260308/lambdas/backup_20260227_182129/dropbox_poll_lambda.py:149"}, "properties": {"repobilityId": "2d090682b3197993", "scanner": "scanner-primary", "fingerprint": "64132c42ea0ef490", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1a87d3fab17e754d", "level": "note", "message": {"text": "Legacy-named symbol `skipped_old` in archive/20260308/lambdas/backup_20260227_182129/apple_health_lambda.py:161"}, "properties": {"repobilityId": "39e167b1cfc810bc", "scanner": "scanner-primary", "fingerprint": "1a87d3fab17e754d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bf9cee8d1bdd0ee9", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 archive/20260308/lambdas/backup_20260227_183354/strava_lambda.py:64"}, "properties": {"repobilityId": "209d70665d31ba1c", "scanner": "scanner-primary", "fingerprint": "bf9cee8d1bdd0ee9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-899b8da44fcb8375", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 archive/20260308/lambdas/backup_20260227_183354/todoist_lambda.py:51"}, "properties": {"repobilityId": "5f9faffca07f83d0", "scanner": "scanner-primary", "fingerprint": "899b8da44fcb8375", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2247c283f07412c0", "level": "note", "message": {"text": "Legacy-named symbol `move_v2` in archive/20260308/lambdas/backup_20260227_183354/dropbox_poll_lambda.py:153"}, "properties": {"repobilityId": "e5bcbd6b6f0b1f9f", "scanner": "scanner-primary", "fingerprint": "2247c283f07412c0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-be50df6fca338758", "level": "note", "message": {"text": "Legacy-named symbol `skipped_old` in archive/20260308/lambdas/backup_20260227_183354/apple_health_lambda.py:166"}, "properties": {"repobilityId": "d73c6ba01e30ff26", "scanner": "scanner-primary", "fingerprint": "be50df6fca338758", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c5c67dd164c1f096", "level": "none", "message": {"text": "Commented-code block (6 lines) in archive/20260309/deploy/generate_maint1_requirements.py:147"}, "properties": {"repobilityId": "0b2fcc0205ab4a2f", "scanner": "scanner-primary", "fingerprint": "c5c67dd164c1f096", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-05e879ec55aa15bc", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 archive/20260309/deploy/create_obs2_dashboard.py:81"}, "properties": {"repobilityId": "ff01a23bdfcfff0e", "scanner": "scanner-primary", "fingerprint": "05e879ec55aa15bc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b001d8101308d50f", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 archive/20260309/deploy/deploy_cost3_token_alarm.py:79"}, "properties": {"repobilityId": "63d168b07cd72421", "scanner": "scanner-primary", "fingerprint": "b001d8101308d50f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6b59b2220562ae02", "level": "none", "message": {"text": "Commented-code block (5 lines) in cdk/stacks/mcp_stack.py:55"}, "properties": {"repobilityId": "ffce3ceaafa41fdf", "scanner": "scanner-primary", "fingerprint": "6b59b2220562ae02", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-22dcd72c0b389846", "level": "none", "message": {"text": "Commented-code block (5 lines) in cdk/stacks/lambda_helpers.py:83"}, "properties": {"repobilityId": "89279cadff4b4a6a", "scanner": "scanner-primary", "fingerprint": "22dcd72c0b389846", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c37a274e6ce8ba5d", "level": "none", "message": {"text": "Commented-code block (6 lines) in cdk/stacks/compute_stack.py:56"}, "properties": {"repobilityId": "a34479cbe0c10032", "scanner": "scanner-primary", "fingerprint": "c37a274e6ce8ba5d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-665dfca11e12bde0", "level": "none", "message": {"text": "Commented-code block (6 lines) in cdk/stacks/web_stack.py:97"}, "properties": {"repobilityId": "5896ffb45030a030", "scanner": "scanner-primary", "fingerprint": "665dfca11e12bde0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0ddf56822f910be3", "level": "none", "message": {"text": "Commented-code block (6 lines) in cdk/stacks/role_policies.py:24"}, "properties": {"repobilityId": "c3e9494981490489", "scanner": "scanner-primary", "fingerprint": "0ddf56822f910be3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b2955a59d4aa3353", "level": "none", "message": {"text": "Commented-code block (5 lines) in cdk/stacks/constants.py:49"}, "properties": {"repobilityId": "477cb47c39ee7900", "scanner": "scanner-primary", "fingerprint": "b2955a59d4aa3353", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-190c938d95ecdcd4", "level": "none", "message": {"text": "Commented-code block (6 lines) in cdk/stacks/operational_stack.py:70"}, "properties": {"repobilityId": "42eac0e272876752", "scanner": "scanner-primary", "fingerprint": "190c938d95ecdcd4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-64f27124782d0d86", "level": "none", "message": {"text": "Commented-code block (6 lines) in cdk/stacks/core_stack.py:72"}, "properties": {"repobilityId": "e58642b55ff63a4e", "scanner": "scanner-primary", "fingerprint": "64f27124782d0d86", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-200c933ec8becfeb", "level": "none", "message": {"text": "Commented-code block (5 lines) in cdk/stacks/ingestion_stack.py:79"}, "properties": {"repobilityId": "671ccd356c8e94cb", "scanner": "scanner-primary", "fingerprint": "200c933ec8becfeb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-65c528ea0a0d4ebc", "level": "none", "message": {"text": "Commented-code block (5 lines) in cdk/stacks/monitoring_stack.py:129"}, "properties": {"repobilityId": "1afd0f8ee248a6a5", "scanner": "scanner-primary", "fingerprint": "65c528ea0a0d4ebc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f305587077684854", "level": "none", "message": {"text": "Commented-code block (7 lines) in cdk/stacks/email_stack.py:71"}, "properties": {"repobilityId": "eb7d378f0d1bd126", "scanner": "scanner-primary", "fingerprint": "f305587077684854", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c84bad9fd0e1655e", "level": "none", "message": {"text": "Commented-code block (7 lines) in deploy/restart_phase_tag.py:71"}, "properties": {"repobilityId": "736fc141deff35f5", "scanner": "scanner-primary", "fingerprint": "c84bad9fd0e1655e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-af5cedb3676764a0", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in deploy/restart_character_rebuild.py:44"}, "properties": {"repobilityId": "d4091b0b259e3e62", "scanner": "scanner-primary", "fingerprint": "af5cedb3676764a0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c43a4895dc55b881", "level": "note", "message": {"text": "Legacy-named symbol `hero_copy` in deploy/restart_site_copy_sync.py:10"}, "properties": {"repobilityId": "243cbcd6d6e92be9", "scanner": "scanner-primary", "fingerprint": "c43a4895dc55b881", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8ad2c402e4d3c4ac", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_site_copy_sync.py:258"}, "properties": {"repobilityId": "0f796df31e7d3cf1", "scanner": "scanner-primary", "fingerprint": "8ad2c402e4d3c4ac", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d370aab8bcea8823", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in deploy/restart_chronicle_handler.py:52"}, "properties": {"repobilityId": "e8adc17cd65e43fd", "scanner": "scanner-primary", "fingerprint": "d370aab8bcea8823", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-24ee23a502eef3c2", "level": "note", "message": {"text": "Legacy-named symbol `facts_copy` in deploy/sync_doc_metadata.py:359"}, "properties": {"repobilityId": "b229b78a15394974", "scanner": "scanner-primary", "fingerprint": "24ee23a502eef3c2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9b43b5471c867a3b", "level": "none", "message": {"text": "Commented-code block (6 lines) in deploy/sync_doc_metadata.py:187"}, "properties": {"repobilityId": "031dab7d7701063a", "scanner": "scanner-primary", "fingerprint": "9b43b5471c867a3b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-122c39e7be17ed78", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_rollback.py:152"}, "properties": {"repobilityId": "78d1fff1c1fe4791", "scanner": "scanner-primary", "fingerprint": "122c39e7be17ed78", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ad94a2d8a811c341", "level": "none", "message": {"text": "Commented-code block (5 lines) in deploy/restart_verify_rendered.py:92"}, "properties": {"repobilityId": "c156cfd6bb0472f0", "scanner": "scanner-primary", "fingerprint": "ad94a2d8a811c341", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9a2d5cd51e46b7f8", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_verify.py:160"}, "properties": {"repobilityId": "89f351a215e97d71", "scanner": "scanner-primary", "fingerprint": "9a2d5cd51e46b7f8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ea7c1b6444495ea5", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_pivot_when_ready.py:83"}, "properties": {"repobilityId": "19f2185f5f70714d", "scanner": "scanner-primary", "fingerprint": "ea7c1b6444495ea5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-4b3c1e0439d450f7", "level": "none", "message": {"text": "Commented-code block (6 lines) in deploy/restart_intelligence_wipe.py:115"}, "properties": {"repobilityId": "958dba7aaa4cb373", "scanner": "scanner-primary", "fingerprint": "4b3c1e0439d450f7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6487f2665a0a8d20", "level": "none", "message": {"text": "Commented-code block (5 lines) in deploy/restart_pipeline.py:289"}, "properties": {"repobilityId": "560ce36c0b527732", "scanner": "scanner-primary", "fingerprint": "6487f2665a0a8d20", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bbc28a8b119f1e97", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/restart_pipeline.py:172"}, "properties": {"repobilityId": "44b3a6b2da71f8fb", "scanner": "scanner-primary", "fingerprint": "bbc28a8b119f1e97", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-dd78d05f1b639e26", "level": "none", "message": {"text": "Commented-code block (6 lines) in deploy/archive/end_april_failures_2026_05_03.py:56"}, "properties": {"repobilityId": "396c06af16c3de5a", "scanner": "scanner-primary", "fingerprint": "dd78d05f1b639e26", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-18d89e57dd5391e9", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in deploy/archive/cleanup_gap_chronicles_2026_05_03.py:110"}, "properties": {"repobilityId": "192290a8421b8d98", "scanner": "scanner-primary", "fingerprint": "18d89e57dd5391e9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5c419e7cbd18ac82", "level": "none", "message": {"text": "Commented-code block (7 lines) in deploy/archive/patch_character_stats_503_to_200.py:50"}, "properties": {"repobilityId": "f7f27d48841a830b", "scanner": "scanner-primary", "fingerprint": "5c419e7cbd18ac82", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-02178b6deff50c76", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/onetime/inline_site_data.py:39"}, "properties": {"repobilityId": "54ca26903ea6be3b", "scanner": "scanner-primary", "fingerprint": "02178b6deff50c76", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-586834b753a4a8f6", "level": "note", "message": {"text": "Legacy-named symbol `v2__copy` in deploy/archive/onetime/deploy_sprint8_nav.py:176"}, "properties": {"repobilityId": "bc4dfb817a69a4a8", "scanner": "scanner-primary", "fingerprint": "586834b753a4a8f6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-365f0069f7a9a325", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/onetime/generate_og_image.py:135"}, "properties": {"repobilityId": "6b484698eab0c256", "scanner": "scanner-primary", "fingerprint": "365f0069f7a9a325", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f29495df28014ecc", "level": "note", "message": {"text": "Legacy-named symbol `stripped_old` in deploy/archive/onetime/patch_privacy_subscribe.py:53"}, "properties": {"repobilityId": "bd3632cc1ef6428d", "scanner": "scanner-primary", "fingerprint": "f29495df28014ecc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-36bd2a84593e9699", "level": "note", "message": {"text": "Legacy-named symbol `v2__copy` in deploy/archive/onetime/deploy_sprint11_nav.py:256"}, "properties": {"repobilityId": "41a75491880d8589", "scanner": "scanner-primary", "fingerprint": "36bd2a84593e9699", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-beed1ca20be9b212", "level": "note", "message": {"text": "Legacy-named symbol `footer__copy` in deploy/archive/onetime/fix_site_meta.py:86"}, "properties": {"repobilityId": "980bb3850e9db68d", "scanner": "scanner-primary", "fingerprint": "beed1ca20be9b212", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1602963ca5f147c3", "level": "note", "message": {"text": "Legacy-named symbol `footer__copy` in deploy/archive/onetime/backfill_journal.py:186"}, "properties": {"repobilityId": "91a0746273040977", "scanner": "scanner-primary", "fingerprint": "1602963ca5f147c3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8e904a74937c6378", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/onetime/backfill_journal.py:200"}, "properties": {"repobilityId": "866e742ee30111f7", "scanner": "scanner-primary", "fingerprint": "8e904a74937c6378", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6d472d7b155f8778", "level": "note", "message": {"text": "Legacy-named symbol `footer__copy` in deploy/archive/onetime/update_nav.py:84"}, "properties": {"repobilityId": "bb74aa7041b390de", "scanner": "scanner-primary", "fingerprint": "6d472d7b155f8778", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0a1db6436d13d279", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/onetime/inline_stats.py:114"}, "properties": {"repobilityId": "a7e91cab11eeb567", "scanner": "scanner-primary", "fingerprint": "0a1db6436d13d279", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-25f0c84a48360beb", "level": "note", "message": {"text": "Legacy-named symbol `_score_habits_mvp_legacy` in deploy/archive/onetime/daily_brief_lambda.py:672"}, "properties": {"repobilityId": "cc4f70cc96d17775", "scanner": "scanner-primary", "fingerprint": "25f0c84a48360beb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0fbd59460b46c147", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/20260310/patch_registry.py:23"}, "properties": {"repobilityId": "1786b71db966041e", "scanner": "scanner-primary", "fingerprint": "0fbd59460b46c147", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e65f6be8d8fee6fe", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 deploy/archive/20260310/bump_version_341.py:13"}, "properties": {"repobilityId": "0b5df290e11fc224", "scanner": "scanner-primary", "fingerprint": "e65f6be8d8fee6fe", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9718c50c30d73fe3", "level": "none", "message": {"text": "Commented-code block (5 lines) in deploy/archive/20260310/apply_sick_day_patches.py:48"}, "properties": {"repobilityId": "e6bbdad959198ee5", "scanner": "scanner-primary", "fingerprint": "9718c50c30d73fe3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5d6b5d65c3a5cf62", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in remediation/automerge.py:147"}, "properties": {"repobilityId": "2d43baf2ca69e46c", "scanner": "scanner-primary", "fingerprint": "5d6b5d65c3a5cf62", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-def20929d82cbebe", "level": "none", "message": {"text": "Commented-code block (7 lines) in patches/todoist_reschedule.py:234"}, "properties": {"repobilityId": "28a11e342422cf3d", "scanner": "scanner-primary", "fingerprint": "def20929d82cbebe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3a5b09d1ed45ca96", "level": "none", "message": {"text": "Commented-code block (8 lines) in patches/patch_dexa_2026_03_30.py:214"}, "properties": {"repobilityId": "275927c9cfdbd1be", "scanner": "scanner-primary", "fingerprint": "3a5b09d1ed45ca96", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dff1776aefc9c331", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 patches/archive/pre_2026_03/fix_blog_index_links.py:62"}, "properties": {"repobilityId": "a1044ea63420b8f7", "scanner": "scanner-primary", "fingerprint": "dff1776aefc9c331", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-90dbe056190dc995", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 patches/archive/pre_2026_03/patch_strava_phase2.py:27"}, "properties": {"repobilityId": "402dc0d72653c7b3", "scanner": "scanner-primary", "fingerprint": "90dbe056190dc995", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ab361e7eb7e178aa", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in patches/archive/pre_2026_03/patch_fasting_glucose_validation.py:66"}, "properties": {"repobilityId": "0a4ddc46535325fc", "scanner": "scanner-primary", "fingerprint": "ab361e7eb7e178aa", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c41b632b38086540", "level": "none", "message": {"text": "Commented-code block (6 lines) in patches/archive/pre_2026_03/patch_zone2_tool.py:53"}, "properties": {"repobilityId": "6d4281209b603803", "scanner": "scanner-primary", "fingerprint": "c41b632b38086540", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ffcdd367b80b5473", "level": "note", "message": {"text": "Legacy-named symbol `hero_copy` in site/legacy/assets/js/site_constants.js:27"}, "properties": {"repobilityId": "8844f4a43bec4e9e", "scanner": "scanner-primary", "fingerprint": "ffcdd367b80b5473", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-975e8a9861ee79bc", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 site/legacy/assets/js/site_constants.js:86"}, "properties": {"repobilityId": "310be4c604e11503", "scanner": "scanner-primary", "fingerprint": "975e8a9861ee79bc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-316a4a938782adad", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 site/legacy/assets/js/observatory-v3.js:167"}, "properties": {"repobilityId": "b12d38e14b65f81b", "scanner": "scanner-primary", "fingerprint": "316a4a938782adad", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d3167a558ad9b7d4", "level": "note", "message": {"text": "Legacy-named symbol `v2__copy` in site/legacy/assets/js/components.js:254"}, "properties": {"repobilityId": "e8a9ee8e024ae61e", "scanner": "scanner-primary", "fingerprint": "d3167a558ad9b7d4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-901b849f4af8f374", "level": "none", "message": {"text": "Commented-code block (6 lines) in site/legacy/assets/js/components.js:29"}, "properties": {"repobilityId": "5e7085831a44fe9d", "scanner": "scanner-primary", "fingerprint": "901b849f4af8f374", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-be6210ddcc4acbd7", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 site/legacy/assets/js/components.js:481"}, "properties": {"repobilityId": "ccf60d207eb936b9", "scanner": "scanner-primary", "fingerprint": "be6210ddcc4acbd7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f963544801665c78", "level": "none", "message": {"text": "Commented-code block (5 lines) in site/legacy/assets/js/nav.js:248"}, "properties": {"repobilityId": "4cfbd510f0438225", "scanner": "scanner-primary", "fingerprint": "f963544801665c78", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-259527387017bbf8", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 site/legacy/assets/js/nav.js:190"}, "properties": {"repobilityId": "bc9dc5fda6a7a629", "scanner": "scanner-primary", "fingerprint": "259527387017bbf8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3a6f0b3b0572a5c5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 site/assets/js/story.js:21"}, "properties": {"repobilityId": "d80153ee07bcfec5", "scanner": "scanner-primary", "fingerprint": "3a6f0b3b0572a5c5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-fd5f95804628b1c1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 site/assets/js/cockpit.js:38"}, "properties": {"repobilityId": "7dc182e779c00c1d", "scanner": "scanner-primary", "fingerprint": "fd5f95804628b1c1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9cc5dd999d16495f", "level": "none", "message": {"text": "Commented-code block (6 lines) in mcp/tools_correlation.py:875"}, "properties": {"repobilityId": "2e334638707c671a", "scanner": "scanner-primary", "fingerprint": "9cc5dd999d16495f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-947cad4b47b54fec", "level": "none", "message": {"text": "Commented-code block (5 lines) in mcp/handler.py:188"}, "properties": {"repobilityId": "8aa7a62c661a69db", "scanner": "scanner-primary", "fingerprint": "947cad4b47b54fec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d702259f6f307fd7", "level": "none", "message": {"text": "Commented-code block (9 lines) in mcp/tools_labs.py:469"}, "properties": {"repobilityId": "a6af5f1eea419d19", "scanner": "scanner-primary", "fingerprint": "d702259f6f307fd7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c4286048b18561c6", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in mcp/tools_cgm.py:732"}, "properties": {"repobilityId": "f1b227f9763200eb", "scanner": "scanner-primary", "fingerprint": "c4286048b18561c6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f6b7a28246be9a9f", "level": "none", "message": {"text": "Commented-code block (6 lines) in mcp/strength_helpers.py:216"}, "properties": {"repobilityId": "ce90c4b3f8a4ae98", "scanner": "scanner-primary", "fingerprint": "f6b7a28246be9a9f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-89fd8dc2469b7f78", "level": "none", "message": {"text": "Commented-code block (6 lines) in mcp/tools_hevy.py:31"}, "properties": {"repobilityId": "bcf1b8ad50971a88", "scanner": "scanner-primary", "fingerprint": "89fd8dc2469b7f78", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-07d87b13bda8170e", "level": "none", "message": {"text": "Commented-code block (6 lines) in mcp/helpers.py:235"}, "properties": {"repobilityId": "6f4c760231be450d", "scanner": "scanner-primary", "fingerprint": "07d87b13bda8170e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-609515ead8026164", "level": "note", "message": {"text": "Legacy-named symbol `seed_profile_v2` in seeds/archive/seed_profile_v2.py:2"}, "properties": {"repobilityId": "d55da083ae9438b5", "scanner": "scanner-primary", "fingerprint": "609515ead8026164", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c8d0666c085d4e42", "level": "none", "message": {"text": "Commented-code block (5 lines) in seeds/archive/seed_profile_v2.py:40"}, "properties": {"repobilityId": "35af7fcd29661740", "scanner": "scanner-primary", "fingerprint": "c8d0666c085d4e42", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e56d07b0ca44068", "level": "none", "message": {"text": "Commented-code block (5 lines) in seeds/archive/seed_physicals_dexa.py:325"}, "properties": {"repobilityId": "0d572d9079652f62", "scanner": "scanner-primary", "fingerprint": "4e56d07b0ca44068", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d1a632b255c0d5ec", "level": "none", "message": {"text": "Commented-code block (5 lines) in seeds/archive/seed_labs.py:91"}, "properties": {"repobilityId": "8313e22666975939", "scanner": "scanner-primary", "fingerprint": "d1a632b255c0d5ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7cfa93643e7b08c3", "level": "none", "message": {"text": "Commented-code block (5 lines) in seeds/archive/seed_profile.py:41"}, "properties": {"repobilityId": "ba45053f70d67309", "scanner": "scanner-primary", "fingerprint": "7cfa93643e7b08c3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9525a5fc285e91d4", "level": "note", "message": {"text": "Legacy-named symbol `_score_habits_mvp_legacy` in lambdas/scoring_engine.py:211"}, "properties": {"repobilityId": "6f19ebcc9d90cb14", "scanner": "scanner-primary", "fingerprint": "9525a5fc285e91d4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3f00e82b0251e9e3", "level": "note", "message": {"text": "Legacy-named symbol `sleep_coach_v2` in lambdas/html_builder.py:1729"}, "properties": {"repobilityId": "53b31dba52c10e0a", "scanner": "scanner-primary", "fingerprint": "3f00e82b0251e9e3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f4cee155a9431221", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/digest_utils.py:285"}, "properties": {"repobilityId": "825454393811f91a", "scanner": "scanner-primary", "fingerprint": "f4cee155a9431221", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9b9992adb19a48d6", "level": "none", "message": {"text": "Commented-code block (6 lines) in lambdas/ingestion_validator.py:100"}, "properties": {"repobilityId": "a4371dcb26ccae22", "scanner": "scanner-primary", "fingerprint": "9b9992adb19a48d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb3b1d0fb333b9fb", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/ingest_health.py:42"}, "properties": {"repobilityId": "1afa93fcab68efad", "scanner": "scanner-primary", "fingerprint": "eb3b1d0fb333b9fb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3a189b9a46c01cfe", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/platform_logger.py:191"}, "properties": {"repobilityId": "5268bcfffd2d321b", "scanner": "scanner-primary", "fingerprint": "3a189b9a46c01cfe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5528e6b0285db697", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/ingestion_framework.py:78"}, "properties": {"repobilityId": "33c5d033bc622582", "scanner": "scanner-primary", "fingerprint": "5528e6b0285db697", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-53f972237e8f50df", "level": "note", "message": {"text": "Legacy-named symbol `call_sleep_coach_v2` in lambdas/ai_calls.py:1240"}, "properties": {"repobilityId": "b1016bedcf1f2bb6", "scanner": "scanner-primary", "fingerprint": "53f972237e8f50df", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7dfd439014f1b1b5", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/ai_calls.py:325"}, "properties": {"repobilityId": "47e3bbd9e8503390", "scanner": "scanner-primary", "fingerprint": "7dfd439014f1b1b5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-efc924383e56e29d", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in lambdas/operational/pip_audit_lambda.py:67"}, "properties": {"repobilityId": "d1efe343d82cc694", "scanner": "scanner-primary", "fingerprint": "efc924383e56e29d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c47cd41133b94b62", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in lambdas/operational/delete_user_data_lambda.py:85"}, "properties": {"repobilityId": "98d6c856f127e6df", "scanner": "scanner-primary", "fingerprint": "c47cd41133b94b62", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e7079436d168e2a0", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/operational/canary_lambda.py:558"}, "properties": {"repobilityId": "5ac5b03924bee5ed", "scanner": "scanner-primary", "fingerprint": "e7079436d168e2a0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f182120f115365e8", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/operational/pipeline_health_check_lambda.py:64"}, "properties": {"repobilityId": "f6bdede33bb8d9ce", "scanner": "scanner-primary", "fingerprint": "f182120f115365e8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7adc6a65bfe97ede", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in lambdas/operational/qa_smoke_lambda.py:313"}, "properties": {"repobilityId": "125bb7e7f73bf543", "scanner": "scanner-primary", "fingerprint": "7adc6a65bfe97ede", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4e4eac3fcc8207cc", "level": "none", "message": {"text": "Commented-code block (7 lines) in lambdas/operational/qa_smoke_lambda.py:121"}, "properties": {"repobilityId": "a5e10601f4c95a7b", "scanner": "scanner-primary", "fingerprint": "4e4eac3fcc8207cc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cb12420f5b031f89", "level": "none", "message": {"text": "Commented-code block (6 lines) in lambdas/operational/cost_governor_lambda.py:289"}, "properties": {"repobilityId": "35c0b7b29b045b55", "scanner": "scanner-primary", "fingerprint": "cb12420f5b031f89", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7f1ec0d444b237b6", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/operational/data_export_lambda.py:49"}, "properties": {"repobilityId": "9114cba47c678372", "scanner": "scanner-primary", "fingerprint": "7f1ec0d444b237b6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-467807f1eb9caabd", "level": "note", "message": {"text": "Legacy-named symbol `days_old` in lambdas/compute/hypothesis_engine_lambda.py:430"}, "properties": {"repobilityId": "06a7f83a7941e1e5", "scanner": "scanner-primary", "fingerprint": "467807f1eb9caabd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-efcc099a4b60e613", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/compute/weekly_correlation_compute_lambda.py:367"}, "properties": {"repobilityId": "55c6382e8f48dae8", "scanner": "scanner-primary", "fingerprint": "efcc099a4b60e613", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-932d7ef1ec0123b6", "level": "note", "message": {"text": "Legacy-named symbol `tier_weighted_v1` in lambdas/compute/daily_metrics_compute_lambda.py:611"}, "properties": {"repobilityId": "20800acd85935ee0", "scanner": "scanner-primary", "fingerprint": "932d7ef1ec0123b6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5489e68d09dbbc9c", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/compute/daily_metrics_compute_lambda.py:680"}, "properties": {"repobilityId": "14b3c2b2480cc78e", "scanner": "scanner-primary", "fingerprint": "5489e68d09dbbc9c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-54305cc7a614aec4", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/ingestion/habitify_lambda.py:259"}, "properties": {"repobilityId": "c1492a2376348667", "scanner": "scanner-primary", "fingerprint": "54305cc7a614aec4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-918dc0d901974ca7", "level": "note", "message": {"text": "Legacy-named symbol `move_v2` in lambdas/ingestion/dropbox_poll_lambda.py:202"}, "properties": {"repobilityId": "2a7689614f80e7f8", "scanner": "scanner-primary", "fingerprint": "918dc0d901974ca7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d8951101a6f2800f", "level": "none", "message": {"text": "Commented-code block (6 lines) in lambdas/ingestion/notion_lambda.py:225"}, "properties": {"repobilityId": "201510a8b468b43b", "scanner": "scanner-primary", "fingerprint": "d8951101a6f2800f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2c838022af8995c8", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 lambdas/ingestion/whoop_lambda.py:108"}, "properties": {"repobilityId": "21ac285029122d88", "scanner": "scanner-primary", "fingerprint": "2c838022af8995c8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0fa734386d96117b", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/ingestion/health_auto_export_lambda.py:153"}, "properties": {"repobilityId": "be0f9f06dfed138d", "scanner": "scanner-primary", "fingerprint": "0fa734386d96117b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9e9ba08794bd8674", "level": "none", "message": {"text": "Commented-code block (8 lines) in lambdas/ingestion/garmin_lambda.py:152"}, "properties": {"repobilityId": "b7733eb9d8e4be09", "scanner": "scanner-primary", "fingerprint": "9e9ba08794bd8674", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5e95e460e1925a6e", "level": "note", "message": {"text": "Legacy-named symbol `skipped_old` in lambdas/ingestion/apple_health_lambda.py:244"}, "properties": {"repobilityId": "5cce85b91099fa5f", "scanner": "scanner-primary", "fingerprint": "5e95e460e1925a6e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e5b2c484e81003c0", "level": "note", "message": {"text": "Legacy-named symbol `footer__copy` in lambdas/emails/wednesday_chronicle_lambda.py:1296"}, "properties": {"repobilityId": "095ea73235e187c0", "scanner": "scanner-primary", "fingerprint": "e5b2c484e81003c0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ca7aa08eea4042fb", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/emails/freshness_checker_lambda.py:47"}, "properties": {"repobilityId": "bac24d0d0c3b1858", "scanner": "scanner-primary", "fingerprint": "ca7aa08eea4042fb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-da6d6d997a2ddff9", "level": "note", "message": {"text": "Legacy-named symbol `tier_weighted_v1` in lambdas/emails/daily_brief_lambda.py:863"}, "properties": {"repobilityId": "bd6ced60a6110d24", "scanner": "scanner-primary", "fingerprint": "da6d6d997a2ddff9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a8527b7de8074269", "level": "none", "message": {"text": "Commented-code block (7 lines) in lambdas/emails/daily_brief_lambda.py:1118"}, "properties": {"repobilityId": "9d5e175f673bd673", "scanner": "scanner-primary", "fingerprint": "a8527b7de8074269", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5d06263d091a553a", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/web/site_api_intelligence.py:139"}, "properties": {"repobilityId": "d3baf0e2fe996e12", "scanner": "scanner-primary", "fingerprint": "5d06263d091a553a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-703c51a74097002b", "level": "none", "message": {"text": "Commented-code block (7 lines) in lambdas/web/site_api_data.py:1934"}, "properties": {"repobilityId": "8c95fa56cdb2cc9c", "scanner": "scanner-primary", "fingerprint": "703c51a74097002b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-411e93eb0c864ad8", "level": "none", "message": {"text": "Commented-code block (8 lines) in lambdas/web/site_api_lambda.py:284"}, "properties": {"repobilityId": "688a5c19c0575859", "scanner": "scanner-primary", "fingerprint": "411e93eb0c864ad8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d2fc0ffa43e9a258", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/web/site_api_coach.py:115"}, "properties": {"repobilityId": "0814e642fd26c3c3", "scanner": "scanner-primary", "fingerprint": "d2fc0ffa43e9a258", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-808c975fbc53947e", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/web/site_api_vitals.py:234"}, "properties": {"repobilityId": "b97df28ba5c17516", "scanner": "scanner-primary", "fingerprint": "808c975fbc53947e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-baa2cfa64ef048a7", "level": "none", "message": {"text": "Commented-code block (6 lines) in lambdas/web/site_api_ai_lambda.py:745"}, "properties": {"repobilityId": "91ef36151f534c7a", "scanner": "scanner-primary", "fingerprint": "baa2cfa64ef048a7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5e8553f5b38f4697", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/coach/coach_quality_gate.py:164"}, "properties": {"repobilityId": "135323e5dd682c2f", "scanner": "scanner-primary", "fingerprint": "5e8553f5b38f4697", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f3828efab2006a2c", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/coach/coach_observatory_renderer.py:426"}, "properties": {"repobilityId": "adbdf25ad05f561c", "scanner": "scanner-primary", "fingerprint": "f3828efab2006a2c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5307e1914774c19e", "level": "none", "message": {"text": "Commented-code block (5 lines) in lambdas/coach/coach_narrative_orchestrator.py:682"}, "properties": {"repobilityId": "541e7863cdfb7e33", "scanner": "scanner-primary", "fingerprint": "5307e1914774c19e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4d093ec39d4c8611", "level": "none", "message": {"text": "Commented-code block (7 lines) in lambdas/coach/coach_state_updater.py:66"}, "properties": {"repobilityId": "bb01ed5fa09d4ddc", "scanner": "scanner-primary", "fingerprint": "4d093ec39d4c8611", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5c370190b255245c", "level": "note", "message": {"text": "Legacy-named symbol `skipped_old` in backfill/backfill_apple_health_export_v16.py:313"}, "properties": {"repobilityId": "22a836e9d7851f0f", "scanner": "scanner-primary", "fingerprint": "5c370190b255245c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-864a9a4a8f449cc3", "level": "none", "message": {"text": "Commented-code block (5 lines) in backfill/backfill_apple_health_export_v16.py:82"}, "properties": {"repobilityId": "768bd6e29fb23425", "scanner": "scanner-primary", "fingerprint": "864a9a4a8f449cc3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f9f5c28ab0063f02", "level": "note", "message": {"text": "Legacy-named symbol `supplement_protocol_v2` in backfill/ingest_function_health_2026_04_03.py:18"}, "properties": {"repobilityId": "d144c526287f3b5a", "scanner": "scanner-primary", "fingerprint": "f9f5c28ab0063f02", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7db328b570cd9172", "level": "note", "message": {"text": "Legacy-named symbol `05_v2` in backfill/draw_2026_04_03.py:12"}, "properties": {"repobilityId": "3c380659fc21c16a", "scanner": "scanner-primary", "fingerprint": "7db328b570cd9172", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e675c145df7d4280", "level": "none", "message": {"text": "Commented-code block (10 lines) in backfill/draw_2026_04_03.py:28"}, "properties": {"repobilityId": "d1ffcdcb2111a139", "scanner": "scanner-primary", "fingerprint": "e675c145df7d4280", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5c9f63d12a1ed0f8", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 backfill/archive/backfill_todoist.py:55"}, "properties": {"repobilityId": "df7562187fe45abe", "scanner": "scanner-primary", "fingerprint": "5c9f63d12a1ed0f8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9c94a115426283d6", "level": "note", "message": {"text": "Legacy-named symbol `tier_weighted_v1` in backfill/archive/backfill_habit_scores.py:268"}, "properties": {"repobilityId": "8bef63d7c321d762", "scanner": "scanner-primary", "fingerprint": "9c94a115426283d6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-296f1812ec9c59fd", "level": "note", "message": {"text": "Legacy-named symbol `skipped_old` in backfill/archive/backfill_apple_health_export.py:167"}, "properties": {"repobilityId": "79b41dfc2c67624f", "scanner": "scanner-primary", "fingerprint": "296f1812ec9c59fd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-eb5f625e670dd4d5", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in backfill/archive/backfill_sleep_consistency.py:103"}, "properties": {"repobilityId": "dd6e185245168cf6", "scanner": "scanner-primary", "fingerprint": "eb5f625e670dd4d5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-321b6a9285319a27", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in backfill/archive/backfill_workouts.py:62"}, "properties": {"repobilityId": "7e1eb991596a042c", "scanner": "scanner-primary", "fingerprint": "321b6a9285319a27", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1462bb25b10611ba", "level": "note", "message": {"text": "Legacy-named symbol `backfill_v2` in backfill/archive/backfill_garmin.py:602"}, "properties": {"repobilityId": "092e25fbbe7fc1f6", "scanner": "scanner-primary", "fingerprint": "1462bb25b10611ba", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-39cc28d2dd2f035a", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 backfill/archive/backfill_strava.py:74"}, "properties": {"repobilityId": "039e8a6267539dad", "scanner": "scanner-primary", "fingerprint": "39cc28d2dd2f035a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-775a34175986bc1a", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in backfill/archive/backfill_cgm_optimal.py:31"}, "properties": {"repobilityId": "20c47964500ba5ca", "scanner": "scanner-primary", "fingerprint": "775a34175986bc1a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "b11044c572260e5c", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "b2b1ba0233f33b6f", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "1357c930ca333aed", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "63721242a3114f21", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-76a2f6818267a9a8", "level": "note", "message": {"text": "Near-duplicate function bodies in 8 places"}, "properties": {"repobilityId": "301860f8a535b576", "scanner": "scanner-primary", "fingerprint": "76a2f6818267a9a8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-122053f21232d80c", "level": "note", "message": {"text": "Near-duplicate function bodies in 14 places"}, "properties": {"repobilityId": "504415b974665a84", "scanner": "scanner-primary", "fingerprint": "122053f21232d80c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-76a2f6818267a9a8", "level": "note", "message": {"text": "Near-duplicate function bodies in 8 places"}, "properties": {"repobilityId": "9f0c974f08e3a0fd", "scanner": "scanner-primary", "fingerprint": "76a2f6818267a9a8", "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": "f38b0b2938ff9f16", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-02525d39071dd2c7", "level": "note", "message": {"text": "Near-duplicate function bodies in 5 places"}, "properties": {"repobilityId": "3769bfae3815746f", "scanner": "scanner-primary", "fingerprint": "02525d39071dd2c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-49c98f7cedd9c977", "level": "note", "message": {"text": "Near-duplicate function bodies in 4 places"}, "properties": {"repobilityId": "f608ebbed4613b58", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-49c98f7cedd9c977", "level": "note", "message": {"text": "Near-duplicate function bodies in 4 places"}, "properties": {"repobilityId": "de82996a983c57a8", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-02525d39071dd2c7", "level": "note", "message": {"text": "Near-duplicate function bodies in 5 places"}, "properties": {"repobilityId": "5eea403839e8ed4a", "scanner": "scanner-primary", "fingerprint": "02525d39071dd2c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-02525d39071dd2c7", "level": "note", "message": {"text": "Near-duplicate function bodies in 5 places"}, "properties": {"repobilityId": "4b481e9cc80f5262", "scanner": "scanner-primary", "fingerprint": "02525d39071dd2c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-02525d39071dd2c7", "level": "note", "message": {"text": "Near-duplicate function bodies in 5 places"}, "properties": {"repobilityId": "136346a057ca87ab", "scanner": "scanner-primary", "fingerprint": "02525d39071dd2c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-02525d39071dd2c7", "level": "note", "message": {"text": "Near-duplicate function bodies in 5 places"}, "properties": {"repobilityId": "b62b84eec34722eb", "scanner": "scanner-primary", "fingerprint": "02525d39071dd2c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-49c98f7cedd9c977", "level": "note", "message": {"text": "Near-duplicate function bodies in 4 places"}, "properties": {"repobilityId": "eb9656b71130fc0c", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "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": "5403aeb195fdcb81", "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": "7d74cf8c23d9f49d", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-49c98f7cedd9c977", "level": "note", "message": {"text": "Near-duplicate function bodies in 4 places"}, "properties": {"repobilityId": "80f9a3ea5d01a9a6", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "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": "c3d069f77bd30ff2", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}]}]}