{"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-9afe0773a04140b3", "name": "Possibly dead Python function: cmd_run", "shortDescription": {"text": "Possibly dead Python function: cmd_run"}, "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-f6379a0a3ba6584e", "name": "Possibly dead Python function: cmd_replay", "shortDescription": {"text": "Possibly dead Python function: cmd_replay"}, "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-c9c79318359c8c4d", "name": "Possibly dead Python function: cmd_shrink", "shortDescription": {"text": "Possibly dead Python function: cmd_shrink"}, "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-c547c428f46b6b8a", "name": "Possibly dead Python function: cmd_inspect", "shortDescription": {"text": "Possibly dead Python function: cmd_inspect"}, "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-5cae4f7ef39a824b", "name": "Possibly dead Python function: cmd_open_latest", "shortDescription": {"text": "Possibly dead Python function: cmd_open_latest"}, "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-6240c58d7b397db9", "name": "Possibly dead Python function: is_ancestor", "shortDescription": {"text": "Possibly dead Python function: is_ancestor"}, "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-2a350162af9895cf", "name": "Possibly dead Python function: plant_work_loss", "shortDescription": {"text": "Possibly dead Python function: plant_work_loss"}, "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-263bcc3145d77eac", "name": "Possibly dead Python function: heal_work_loss", "shortDescription": {"text": "Possibly dead Python function: heal_work_loss"}, "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-5ea2bf6111debffa", "name": "Possibly dead Python function: plant_cm63", "shortDescription": {"text": "Possibly dead Python function: plant_cm63"}, "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-a2e030aa4ce243a2", "name": "Possibly dead Python function: heal_cm63", "shortDescription": {"text": "Possibly dead Python function: heal_cm63"}, "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-657d548700f024ca", "name": "Possibly dead Python function: repl", "shortDescription": {"text": "Possibly dead Python function: repl"}, "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-cf25781a8c2dae73", "name": "Insecure pattern 'weak_hash' in notes/eval-real-2026-05-27/plan-d-haiku/C2-T1/C2-T1-maw-r010.json:230", "shortDescription": {"text": "Insecure pattern 'weak_hash' in notes/eval-real-2026-05-27/plan-d-haiku/C2-T1/C2-T1-maw-r010.json:230"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d40c703811ff7fb1", "name": "Possible secret in crates/maw-lfs/src/creds.rs", "shortDescription": {"text": "Possible secret in crates/maw-lfs/src/creds.rs"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-600fba7f4bc9da9a", "name": "Insecure pattern 'weak_hash' in crates/maw-git/src/objects_impl.rs:14", "shortDescription": {"text": "Insecure pattern 'weak_hash' in crates/maw-git/src/objects_impl.rs:14"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6c9791e0906fee68", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/upload-artifact@v4 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e1dc6cf5e511b878", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/upload-artifact@v4 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d99ebd60a670fa34", "name": "Very large file: tests/action_workflow_dst.rs (1348 lines)", "shortDescription": {"text": "Very large file: tests/action_workflow_dst.rs (1348 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-f5ed3f74a3951194", "name": "Very large file: tests/merge_scenarios.rs (1493 lines)", "shortDescription": {"text": "Very large file: tests/merge_scenarios.rs (1493 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-d79e36ade7224217", "name": "Very large file: tests/sync_rebase_semantics.rs (2632 lines)", "shortDescription": {"text": "Very large file: tests/sync_rebase_semantics.rs (2632 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-63fcac469b6b17b1", "name": "Very large file: tests/merge.rs (1945 lines)", "shortDescription": {"text": "Very large file: tests/merge.rs (1945 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-5825bcff3abfa021", "name": "Very large file: tests/dst_harness.rs (1810 lines)", "shortDescription": {"text": "Very large file: tests/dst_harness.rs (1810 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-7b30b94dc75d0a2f", "name": "Very large file: src/merge/determinism_tests.rs (1510 lines)", "shortDescription": {"text": "Very large file: src/merge/determinism_tests.rs (1510 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-cfa6fd081b8fccff", "name": "Very large file: src/merge/resolve.rs (3254 lines)", "shortDescription": {"text": "Very large file: src/merge/resolve.rs (3254 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-c90373facbd34251", "name": "Very large file: src/merge/ast_merge.rs (1911 lines)", "shortDescription": {"text": "Very large file: src/merge/ast_merge.rs (1911 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-f746f4a03b2d0197", "name": "Very large file: src/merge/build_phase.rs (2505 lines)", "shortDescription": {"text": "Very large file: src/merge/build_phase.rs (2505 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-0d928b6c3cf427a6", "name": "Very large file: src/merge/validate.rs (1475 lines)", "shortDescription": {"text": "Very large file: src/merge/validate.rs (1475 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-fd014e408049a6c0", "name": "Very large file: src/merge/pushout_tests.rs (1311 lines)", "shortDescription": {"text": "Very large file: src/merge/pushout_tests.rs (1311 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-99b1db57159b652a", "name": "Very large file: src/merge/collect.rs (1554 lines)", "shortDescription": {"text": "Very large file: src/merge/collect.rs (1554 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-28685981b75b2f88", "name": "Very large file: crates/maw-core/src/merge_state.rs (1870 lines)", "shortDescription": {"text": "Very large file: crates/maw-core/src/merge_state.rs (1870 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-43210da8a479f224", "name": "Very large file: crates/maw-core/src/backend/git.rs (2109 lines)", "shortDescription": {"text": "Very large file: crates/maw-core/src/backend/git.rs (2109 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-2d55fdeebda55196", "name": "Very large file: crates/maw-core/src/merge/materialize.rs (2089 lines)", "shortDescription": {"text": "Very large file: crates/maw-core/src/merge/materialize.rs (2089 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-3efbaf2c2e51c1ff", "name": "Very large file: crates/maw-core/src/merge/apply.rs (1347 lines)", "shortDescription": {"text": "Very large file: crates/maw-core/src/merge/apply.rs (1347 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-8fa2b65026f55717", "name": "Very large file: crates/maw-core/src/model/conflict.rs (1790 lines)", "shortDescription": {"text": "Very large file: crates/maw-core/src/model/conflict.rs (1790 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-0387d4725a82b5e3", "name": "Very large file: crates/maw-cli/src/init.rs (2970 lines)", "shortDescription": {"text": "Very large file: crates/maw-cli/src/init.rs (2970 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-b82a7529d1ca4d21", "name": "Very large file: crates/maw-cli/src/transport.rs (1641 lines)", "shortDescription": {"text": "Very large file: crates/maw-cli/src/transport.rs (1641 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-218e91bb262f04a3", "name": "Very large file: crates/maw-cli/src/doctor.rs (1508 lines)", "shortDescription": {"text": "Very large file: crates/maw-cli/src/doctor.rs (1508 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-7cc8f020ec65d290", "name": "Very large file: crates/maw-cli/src/changes/mod.rs (2132 lines)", "shortDescription": {"text": "Very large file: crates/maw-cli/src/changes/mod.rs (2132 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-7e5baa18ed8ec716", "name": "Very large file: crates/maw-cli/src/workspace/recover.rs (2445 lines)", "shortDescription": {"text": "Very large file: crates/maw-cli/src/workspace/recover.rs (2445 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-ff0d6bac6718df57", "name": "Very large file: crates/maw-cli/src/workspace/resolve_structured.rs (3648 lines)", "shortDescription": {"text": "Very large file: crates/maw-cli/src/workspace/resolve_structured.rs (3648 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-400496132e8f59df", "name": "Very large file: crates/maw-cli/src/workspace/resolve.rs (2586 lines)", "shortDescription": {"text": "Very large file: crates/maw-cli/src/workspace/resolve.rs (2586 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-9db294bec852c22d", "name": "Very large file: crates/maw-cli/src/workspace/working_copy.rs (2025 lines)", "shortDescription": {"text": "Very large file: crates/maw-cli/src/workspace/working_copy.rs (2025 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-9a51d92c52a96170", "name": "Very large file: crates/maw-cli/src/workspace/merge.rs (6682 lines)", "shortDescription": {"text": "Very large file: crates/maw-cli/src/workspace/merge.rs (6682 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-0cf1c083c85b4a26", "name": "Very large file: crates/maw-cli/src/workspace/mod.rs (2288 lines)", "shortDescription": {"text": "Very large file: crates/maw-cli/src/workspace/mod.rs (2288 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-99786ca4b2ce54a5", "name": "Very large file: crates/maw-cli/src/workspace/sync/rebase.rs (3115 lines)", "shortDescription": {"text": "Very large file: crates/maw-cli/src/workspace/sync/rebase.rs (3115 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-5d8c4cf0bdaf7f38", "name": "Very large file: crates/maw-assurance/src/oracle.rs (1454 lines)", "shortDescription": {"text": "Very large file: crates/maw-assurance/src/oracle.rs (1454 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-ab9bc62b595ce56b", "name": "Very large file: crates/maw-assurance/src/oracle_b.rs (1553 lines)", "shortDescription": {"text": "Very large file: crates/maw-assurance/src/oracle_b.rs (1553 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-2514702d12be682a", "name": "Very large file: crates/maw-assurance/src/oracle_a.rs (1306 lines)", "shortDescription": {"text": "Very large file: crates/maw-assurance/src/oracle_a.rs (1306 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-833cd778f9287bc4", "name": "Very large file: crates/maw-git/tests/integration_test.rs (1893 lines)", "shortDescription": {"text": "Very large file: crates/maw-git/tests/integration_test.rs (1893 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-67d2287ead4cba92", "name": "Very large file: crates/maw-scenario/src/lib.rs (1462 lines)", "shortDescription": {"text": "Very large file: crates/maw-scenario/src/lib.rs (1462 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 65 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 123 placeholder/mock markers across 25 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-df25916f4e64d537", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/dst.py:116", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/dst.py:116"}, "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-09578c8bb2ee8ee6", "name": "Commented-code block (6 lines) in spike/oracle_ab_harness.py:165", "shortDescription": {"text": "Commented-code block (6 lines) in spike/oracle_ab_harness.py:165"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5fba6288878f0e8f", "name": "Network/subprocess call without timeout or try/except \u2014 spike/oracle_ab_harness.py:40", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 spike/oracle_ab_harness.py:40"}, "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-c0b24456e898ef2c", "name": "Network/subprocess call without timeout or try/except \u2014 spike/cost_scaling.py:29", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 spike/cost_scaling.py:29"}, "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}}]}}, "automationDetails": {"id": "repobility/24653"}, "properties": {"repository": "bobisme/maw", "repoUrl": "https://github.com/bobisme/maw", "branch": "main"}, "results": [{"ruleId": "scanner-9afe0773a04140b3", "level": "note", "message": {"text": "Possibly dead Python function: cmd_run"}, "properties": {"repobilityId": "4b31cb2b86d846cc", "scanner": "scanner-primary", "fingerprint": "9afe0773a04140b3", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/dst.py:119"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f6379a0a3ba6584e", "level": "note", "message": {"text": "Possibly dead Python function: cmd_replay"}, "properties": {"repobilityId": "afefb07bf19e7540", "scanner": "scanner-primary", "fingerprint": "f6379a0a3ba6584e", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/dst.py:149"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c9c79318359c8c4d", "level": "note", "message": {"text": "Possibly dead Python function: cmd_shrink"}, "properties": {"repobilityId": "e57993d78410716e", "scanner": "scanner-primary", "fingerprint": "c9c79318359c8c4d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/dst.py:163"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c547c428f46b6b8a", "level": "note", "message": {"text": "Possibly dead Python function: cmd_inspect"}, "properties": {"repobilityId": "482686881b25c151", "scanner": "scanner-primary", "fingerprint": "c547c428f46b6b8a", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/dst.py:181"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5cae4f7ef39a824b", "level": "note", "message": {"text": "Possibly dead Python function: cmd_open_latest"}, "properties": {"repobilityId": "c8f61d9b559dae9a", "scanner": "scanner-primary", "fingerprint": "5cae4f7ef39a824b", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/dst.py:203"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6240c58d7b397db9", "level": "note", "message": {"text": "Possibly dead Python function: is_ancestor"}, "properties": {"repobilityId": "d533dea4e0980427", "scanner": "scanner-primary", "fingerprint": "6240c58d7b397db9", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "spike/oracle_ab_harness.py:76"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2a350162af9895cf", "level": "note", "message": {"text": "Possibly dead Python function: plant_work_loss"}, "properties": {"repobilityId": "64ae4d4e6df13467", "scanner": "scanner-primary", "fingerprint": "2a350162af9895cf", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "spike/oracle_ab_harness.py:455"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-263bcc3145d77eac", "level": "note", "message": {"text": "Possibly dead Python function: heal_work_loss"}, "properties": {"repobilityId": "af4265afc57a56f3", "scanner": "scanner-primary", "fingerprint": "263bcc3145d77eac", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "spike/oracle_ab_harness.py:488"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5ea2bf6111debffa", "level": "note", "message": {"text": "Possibly dead Python function: plant_cm63"}, "properties": {"repobilityId": "ed1ea8043cc17521", "scanner": "scanner-primary", "fingerprint": "5ea2bf6111debffa", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "spike/oracle_ab_harness.py:512"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a2e030aa4ce243a2", "level": "note", "message": {"text": "Possibly dead Python function: heal_cm63"}, "properties": {"repobilityId": "82a0f5e9d7306a71", "scanner": "scanner-primary", "fingerprint": "a2e030aa4ce243a2", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "spike/oracle_ab_harness.py:542"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-657d548700f024ca", "level": "note", "message": {"text": "Possibly dead Python function: repl"}, "properties": {"repobilityId": "6f5d3779bbb8be8b", "scanner": "scanner-primary", "fingerprint": "657d548700f024ca", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "notes/eval-real-2026-05-28/sg3-final/classify_contamination.py:52"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cf25781a8c2dae73", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in notes/eval-real-2026-05-27/plan-d-haiku/C2-T1/C2-T1-maw-r010.json:230"}, "properties": {"repobilityId": "1649e2417d351378", "scanner": "scanner-primary", "fingerprint": "cf25781a8c2dae73", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "notes/eval-real-2026-05-27/plan-d-haiku/C2-T1/C2-T1-maw-r010.json"}, "region": {"startLine": 230}}}]}, {"ruleId": "scanner-d40c703811ff7fb1", "level": "error", "message": {"text": "Possible secret in crates/maw-lfs/src/creds.rs"}, "properties": {"repobilityId": "6673e64769dd6c3f", "scanner": "scanner-primary", "fingerprint": "d40c703811ff7fb1", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "crates/maw-lfs/src/creds.rs"}, "region": {"startLine": 316}}}]}, {"ruleId": "scanner-d40c703811ff7fb1", "level": "error", "message": {"text": "Possible secret in crates/maw-lfs/src/creds.rs"}, "properties": {"repobilityId": "6673e64769dd6c3f", "scanner": "scanner-primary", "fingerprint": "d40c703811ff7fb1", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "crates/maw-lfs/src/creds.rs"}, "region": {"startLine": 322}}}]}, {"ruleId": "scanner-d40c703811ff7fb1", "level": "error", "message": {"text": "Possible secret in crates/maw-lfs/src/creds.rs"}, "properties": {"repobilityId": "6673e64769dd6c3f", "scanner": "scanner-primary", "fingerprint": "d40c703811ff7fb1", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "crates/maw-lfs/src/creds.rs"}, "region": {"startLine": 344}}}]}, {"ruleId": "scanner-d40c703811ff7fb1", "level": "error", "message": {"text": "Possible secret in crates/maw-lfs/src/creds.rs"}, "properties": {"repobilityId": "6673e64769dd6c3f", "scanner": "scanner-primary", "fingerprint": "d40c703811ff7fb1", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "crates/maw-lfs/src/creds.rs"}, "region": {"startLine": 368}}}]}, {"ruleId": "scanner-d40c703811ff7fb1", "level": "error", "message": {"text": "Possible secret in crates/maw-lfs/src/creds.rs"}, "properties": {"repobilityId": "6673e64769dd6c3f", "scanner": "scanner-primary", "fingerprint": "d40c703811ff7fb1", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "crates/maw-lfs/src/creds.rs"}, "region": {"startLine": 375}}}]}, {"ruleId": "scanner-600fba7f4bc9da9a", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in crates/maw-git/src/objects_impl.rs:14"}, "properties": {"repobilityId": "9384559744ffcc48", "scanner": "scanner-primary", "fingerprint": "600fba7f4bc9da9a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "crates/maw-git/src/objects_impl.rs"}, "region": {"startLine": 14}}}]}, {"ruleId": "scanner-6c9791e0906fee68", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "59037f8a1ef24cc7", "scanner": "scanner-primary", "fingerprint": "6c9791e0906fee68", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/dst.yml"}, "region": {"startLine": 96}}}]}, {"ruleId": "scanner-6c9791e0906fee68", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "59037f8a1ef24cc7", "scanner": "scanner-primary", "fingerprint": "6c9791e0906fee68", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/dst.yml"}, "region": {"startLine": 152}}}]}, {"ruleId": "scanner-e1dc6cf5e511b878", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "e814a0e8b269ad18", "scanner": "scanner-primary", "fingerprint": "e1dc6cf5e511b878", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/dst-soak.yml"}, "region": {"startLine": 67}}}]}, {"ruleId": "scanner-d99ebd60a670fa34", "level": "note", "message": {"text": "Very large file: tests/action_workflow_dst.rs (1348 lines)"}, "properties": {"repobilityId": "8c122f0d9403a179", "scanner": "scanner-primary", "fingerprint": "d99ebd60a670fa34", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f5ed3f74a3951194", "level": "note", "message": {"text": "Very large file: tests/merge_scenarios.rs (1493 lines)"}, "properties": {"repobilityId": "3a58a492ca18b832", "scanner": "scanner-primary", "fingerprint": "f5ed3f74a3951194", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d79e36ade7224217", "level": "note", "message": {"text": "Very large file: tests/sync_rebase_semantics.rs (2632 lines)"}, "properties": {"repobilityId": "8db65fa73b7ead1d", "scanner": "scanner-primary", "fingerprint": "d79e36ade7224217", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-63fcac469b6b17b1", "level": "note", "message": {"text": "Very large file: tests/merge.rs (1945 lines)"}, "properties": {"repobilityId": "2ccee70086520f75", "scanner": "scanner-primary", "fingerprint": "63fcac469b6b17b1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5825bcff3abfa021", "level": "note", "message": {"text": "Very large file: tests/dst_harness.rs (1810 lines)"}, "properties": {"repobilityId": "62a75c3510e491c3", "scanner": "scanner-primary", "fingerprint": "5825bcff3abfa021", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7b30b94dc75d0a2f", "level": "note", "message": {"text": "Very large file: src/merge/determinism_tests.rs (1510 lines)"}, "properties": {"repobilityId": "a21e5c8aa71d4869", "scanner": "scanner-primary", "fingerprint": "7b30b94dc75d0a2f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cfa6fd081b8fccff", "level": "note", "message": {"text": "Very large file: src/merge/resolve.rs (3254 lines)"}, "properties": {"repobilityId": "6b60926dad2faa3c", "scanner": "scanner-primary", "fingerprint": "cfa6fd081b8fccff", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c90373facbd34251", "level": "note", "message": {"text": "Very large file: src/merge/ast_merge.rs (1911 lines)"}, "properties": {"repobilityId": "a9a03e36213851ef", "scanner": "scanner-primary", "fingerprint": "c90373facbd34251", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f746f4a03b2d0197", "level": "note", "message": {"text": "Very large file: src/merge/build_phase.rs (2505 lines)"}, "properties": {"repobilityId": "ced2252e786fc127", "scanner": "scanner-primary", "fingerprint": "f746f4a03b2d0197", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0d928b6c3cf427a6", "level": "note", "message": {"text": "Very large file: src/merge/validate.rs (1475 lines)"}, "properties": {"repobilityId": "bb4489da30b2fd2c", "scanner": "scanner-primary", "fingerprint": "0d928b6c3cf427a6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fd014e408049a6c0", "level": "note", "message": {"text": "Very large file: src/merge/pushout_tests.rs (1311 lines)"}, "properties": {"repobilityId": "5a7552022be5c658", "scanner": "scanner-primary", "fingerprint": "fd014e408049a6c0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-99b1db57159b652a", "level": "note", "message": {"text": "Very large file: src/merge/collect.rs (1554 lines)"}, "properties": {"repobilityId": "0fe28ed03280363d", "scanner": "scanner-primary", "fingerprint": "99b1db57159b652a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-28685981b75b2f88", "level": "note", "message": {"text": "Very large file: crates/maw-core/src/merge_state.rs (1870 lines)"}, "properties": {"repobilityId": "d2a9b08c95bc2aab", "scanner": "scanner-primary", "fingerprint": "28685981b75b2f88", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-43210da8a479f224", "level": "note", "message": {"text": "Very large file: crates/maw-core/src/backend/git.rs (2109 lines)"}, "properties": {"repobilityId": "daacd145ef38edab", "scanner": "scanner-primary", "fingerprint": "43210da8a479f224", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2d55fdeebda55196", "level": "note", "message": {"text": "Very large file: crates/maw-core/src/merge/materialize.rs (2089 lines)"}, "properties": {"repobilityId": "055eb672627255ec", "scanner": "scanner-primary", "fingerprint": "2d55fdeebda55196", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3efbaf2c2e51c1ff", "level": "note", "message": {"text": "Very large file: crates/maw-core/src/merge/apply.rs (1347 lines)"}, "properties": {"repobilityId": "15f8369aa7b132e8", "scanner": "scanner-primary", "fingerprint": "3efbaf2c2e51c1ff", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8fa2b65026f55717", "level": "note", "message": {"text": "Very large file: crates/maw-core/src/model/conflict.rs (1790 lines)"}, "properties": {"repobilityId": "e83f2419b458dd89", "scanner": "scanner-primary", "fingerprint": "8fa2b65026f55717", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0387d4725a82b5e3", "level": "note", "message": {"text": "Very large file: crates/maw-cli/src/init.rs (2970 lines)"}, "properties": {"repobilityId": "f84662a6dc307195", "scanner": "scanner-primary", "fingerprint": "0387d4725a82b5e3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b82a7529d1ca4d21", "level": "note", "message": {"text": "Very large file: crates/maw-cli/src/transport.rs (1641 lines)"}, "properties": {"repobilityId": "519846da657d8bdf", "scanner": "scanner-primary", "fingerprint": "b82a7529d1ca4d21", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-218e91bb262f04a3", "level": "note", "message": {"text": "Very large file: crates/maw-cli/src/doctor.rs (1508 lines)"}, "properties": {"repobilityId": "9f8edd0c5572391f", "scanner": "scanner-primary", "fingerprint": "218e91bb262f04a3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7cc8f020ec65d290", "level": "note", "message": {"text": "Very large file: crates/maw-cli/src/changes/mod.rs (2132 lines)"}, "properties": {"repobilityId": "1263f738d6782c65", "scanner": "scanner-primary", "fingerprint": "7cc8f020ec65d290", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7e5baa18ed8ec716", "level": "note", "message": {"text": "Very large file: crates/maw-cli/src/workspace/recover.rs (2445 lines)"}, "properties": {"repobilityId": "06fa0565a7c4bae0", "scanner": "scanner-primary", "fingerprint": "7e5baa18ed8ec716", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ff0d6bac6718df57", "level": "note", "message": {"text": "Very large file: crates/maw-cli/src/workspace/resolve_structured.rs (3648 lines)"}, "properties": {"repobilityId": "1f910d7e7eed4498", "scanner": "scanner-primary", "fingerprint": "ff0d6bac6718df57", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-400496132e8f59df", "level": "note", "message": {"text": "Very large file: crates/maw-cli/src/workspace/resolve.rs (2586 lines)"}, "properties": {"repobilityId": "78931ae2e16af6df", "scanner": "scanner-primary", "fingerprint": "400496132e8f59df", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9db294bec852c22d", "level": "note", "message": {"text": "Very large file: crates/maw-cli/src/workspace/working_copy.rs (2025 lines)"}, "properties": {"repobilityId": "3b6df289b2f0ca46", "scanner": "scanner-primary", "fingerprint": "9db294bec852c22d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9a51d92c52a96170", "level": "note", "message": {"text": "Very large file: crates/maw-cli/src/workspace/merge.rs (6682 lines)"}, "properties": {"repobilityId": "72f7b20c74426a56", "scanner": "scanner-primary", "fingerprint": "9a51d92c52a96170", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0cf1c083c85b4a26", "level": "note", "message": {"text": "Very large file: crates/maw-cli/src/workspace/mod.rs (2288 lines)"}, "properties": {"repobilityId": "759e7c5b9100aa8b", "scanner": "scanner-primary", "fingerprint": "0cf1c083c85b4a26", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-99786ca4b2ce54a5", "level": "note", "message": {"text": "Very large file: crates/maw-cli/src/workspace/sync/rebase.rs (3115 lines)"}, "properties": {"repobilityId": "bf3d2648a17565c4", "scanner": "scanner-primary", "fingerprint": "99786ca4b2ce54a5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5d8c4cf0bdaf7f38", "level": "note", "message": {"text": "Very large file: crates/maw-assurance/src/oracle.rs (1454 lines)"}, "properties": {"repobilityId": "c28bce144767e892", "scanner": "scanner-primary", "fingerprint": "5d8c4cf0bdaf7f38", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ab9bc62b595ce56b", "level": "note", "message": {"text": "Very large file: crates/maw-assurance/src/oracle_b.rs (1553 lines)"}, "properties": {"repobilityId": "2f6db39771dcbe05", "scanner": "scanner-primary", "fingerprint": "ab9bc62b595ce56b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2514702d12be682a", "level": "note", "message": {"text": "Very large file: crates/maw-assurance/src/oracle_a.rs (1306 lines)"}, "properties": {"repobilityId": "02289a6c4b76433a", "scanner": "scanner-primary", "fingerprint": "2514702d12be682a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-833cd778f9287bc4", "level": "note", "message": {"text": "Very large file: crates/maw-git/tests/integration_test.rs (1893 lines)"}, "properties": {"repobilityId": "f83f975731e02ff0", "scanner": "scanner-primary", "fingerprint": "833cd778f9287bc4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-67d2287ead4cba92", "level": "note", "message": {"text": "Very large file: crates/maw-scenario/src/lib.rs (1462 lines)"}, "properties": {"repobilityId": "c6123a72e30a18d6", "scanner": "scanner-primary", "fingerprint": "67d2287ead4cba92", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "16a3d33af814095c", "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": "771df050b4c4c9ad", "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": "9fa01d5881e8d34d", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-df25916f4e64d537", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/dst.py:116"}, "properties": {"repobilityId": "b1158377b7c30dbd", "scanner": "scanner-primary", "fingerprint": "df25916f4e64d537", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-09578c8bb2ee8ee6", "level": "none", "message": {"text": "Commented-code block (6 lines) in spike/oracle_ab_harness.py:165"}, "properties": {"repobilityId": "c6baa6564d2ce978", "scanner": "scanner-primary", "fingerprint": "09578c8bb2ee8ee6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5fba6288878f0e8f", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 spike/oracle_ab_harness.py:40"}, "properties": {"repobilityId": "b732063ef94f8662", "scanner": "scanner-primary", "fingerprint": "5fba6288878f0e8f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c0b24456e898ef2c", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 spike/cost_scaling.py:29"}, "properties": {"repobilityId": "533b1cecb6681595", "scanner": "scanner-primary", "fingerprint": "c0b24456e898ef2c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}]}]}