{"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": "foundry_docs_only_fix", "name": "Foundry mined docs only runtime fix: webmastersdiy/spacer", "shortDescription": {"text": "Foundry mined docs only runtime fix: webmastersdiy/spacer"}, "fullDescription": {"text": "Graph query export: Docs-only response to runtime or integration issue\nQuery id: docs_only_runtime_fix\nQuery type: motif_query\nIntent: Assumption-check examples where docs or claims are not enough proof.\nMotif: docs_only_runtime_fix\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: webmastersdiy/spacer\nThread: webmastersdiy/spacer#1\nEvidence:\nGraph motif: Runtime/integration complaint answered mostly with docs or claims\nMotif id: docs_only_runtime_fix\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: webmastersdiy/spacer\nThread: webmastersdiy/spacer#1\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: webmastersdiy/spacer#1\nRepo: webmastersdiy/spacer\nIssue/PR number: 1\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 34\nNode types: {'pr_file': 6, 'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'iss"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "high", "confidence": 0.8, "cwe": "", "owasp": ""}}, {"id": "scanner-de97448e231925e0", "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-6fc7297ba0f8cb45", "name": "Possibly dead Python function: send_error", "shortDescription": {"text": "Possibly dead Python function: send_error"}, "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-259230ce0fb62845", "name": "Possibly dead Python function: cmd_add", "shortDescription": {"text": "Possibly dead Python function: cmd_add"}, "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-7409f25dce02cd7c", "name": "Possibly dead Python function: cmd_list", "shortDescription": {"text": "Possibly dead Python function: cmd_list"}, "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-26d22edb788e54dc", "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-799221ebad1a943d", "name": "Possibly dead Python function: do_POST", "shortDescription": {"text": "Possibly dead Python function: do_POST"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0be9a55c39c60350", "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-a81fe31eec34451f", "name": "Possibly dead Python function: do_POST", "shortDescription": {"text": "Possibly dead Python function: do_POST"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9710c8d059e53154", "name": "No frontend routes/components detected", "shortDescription": {"text": "No frontend routes/components detected"}, "fullDescription": {"text": "No React/Vue/Next routes were found. This is fine for backend-only repos."}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6372cebde0220094", "name": "No auth library detected", "shortDescription": {"text": "No auth library detected"}, "fullDescription": {"text": "The scanner did not find any standard auth library (JWT, OAuth, NextAuth, Auth0, etc.). The repo has auth/admin/session surface indicators, so auth may live in custom code, in a separate service, or be missing."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4601e3ad3bb28677", "name": "No CI/CD pipelines detected", "shortDescription": {"text": "No CI/CD pipelines detected"}, "fullDescription": {"text": "No GitHub Actions, GitLab CI, or CircleCI configs found. Without CI you can't gate deploys on tests/lints."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0ef2faaf1b0a5d3f", "name": "Very large file: test-harness/scripts/exit_loop_runner.py (2016 lines)", "shortDescription": {"text": "Very large file: test-harness/scripts/exit_loop_runner.py (2016 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": "2 tests / 17 src (ratio 0.12)."}, "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 45 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 105 placeholder/mock markers across 8 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-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: ci, tests. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0ec2e7bfe3b978c7", "name": "Commented-code block (5 lines) in arbiter/src/lnd.py:55", "shortDescription": {"text": "Commented-code block (5 lines) in arbiter/src/lnd.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-c67df8b607b15f54", "name": "Commented-code block (9 lines) in arbiter/src/timing.py:55", "shortDescription": {"text": "Commented-code block (9 lines) in arbiter/src/timing.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-fc03dd1d8c43161a", "name": "Commented-code block (5 lines) in arbiter/src/bitcoin.py:47", "shortDescription": {"text": "Commented-code block (5 lines) in arbiter/src/bitcoin.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-4ba01c1fc62f3f63", "name": "Commented-code block (5 lines) in arbiter/src/ecash.py:68", "shortDescription": {"text": "Commented-code block (5 lines) in arbiter/src/ecash.py:68"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c44fab951b71cbb6", "name": "Commented-code block (5 lines) in arbiter/src/registry.py:74", "shortDescription": {"text": "Commented-code block (5 lines) in arbiter/src/registry.py:74"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-93fccf6b0cd2384b", "name": "Commented-code block (7 lines) in arbiter/src/results.py:70", "shortDescription": {"text": "Commented-code block (7 lines) in arbiter/src/results.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-b250879b19e57a77", "name": "Commented-code block (7 lines) in arbiter/src/gateway.py:78", "shortDescription": {"text": "Commented-code block (7 lines) in arbiter/src/gateway.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-4fc5a544ad37e82d", "name": "Stub function `log_message` (body is just `pass`/`return`) \u2014 arbiter/src/gateway.py:123", "shortDescription": {"text": "Stub function `log_message` (body is just `pass`/`return`) \u2014 arbiter/src/gateway.py:123"}, "fullDescription": {"text": "Likely an AI scaffold that was never filled in. Remove or implement."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-28da3e841d36e857", "name": "Commented-code block (5 lines) in arbiter/src/arbiter.py:17", "shortDescription": {"text": "Commented-code block (5 lines) in arbiter/src/arbiter.py:17"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8d2af9e962d4fa8c", "name": "Commented-code block (10 lines) in arbiter/src/standing_approvals.py:148", "shortDescription": {"text": "Commented-code block (10 lines) in arbiter/src/standing_approvals.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-e45b2a4bd43f0b7d", "name": "Commented-code block (10 lines) in test-harness/scripts/exit_loop_runner.py:81", "shortDescription": {"text": "Commented-code block (10 lines) in test-harness/scripts/exit_loop_runner.py:81"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d32479fb0e2563ca", "name": "Commented-code block (6 lines) in petitioner/src/protocol.py:141", "shortDescription": {"text": "Commented-code block (6 lines) in petitioner/src/protocol.py:141"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-879d169d8066a1fd", "name": "Stub function `log_message` (body is just `pass`/`return`) \u2014 petitioner/src/protocol.py:96", "shortDescription": {"text": "Stub function `log_message` (body is just `pass`/`return`) \u2014 petitioner/src/protocol.py:96"}, "fullDescription": {"text": "Likely an AI scaffold that was never filled in. Remove or implement."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-550a1f7b19e9755a", "name": "Commented-code block (9 lines) in petitioner/src/petcli.py:76", "shortDescription": {"text": "Commented-code block (9 lines) in petitioner/src/petcli.py:76"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4571e7d07f75a470", "name": "Commented-code block (5 lines) in petitioner/src/petcli_smoke.py:56", "shortDescription": {"text": "Commented-code block (5 lines) in petitioner/src/petcli_smoke.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-df5cf5038cea6b73", "name": "Stub function `log_message` (body is just `pass`/`return`) \u2014 petitioner/src/petcli_smoke.py:192", "shortDescription": {"text": "Stub function `log_message` (body is just `pass`/`return`) \u2014 petitioner/src/petcli_smoke.py:192"}, "fullDescription": {"text": "Likely an AI scaffold that was never filled in. Remove or implement."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-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:\narbiter/src/ecash.py:mint_quote, arbiter/src/ecash.py:mint\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/22629"}, "properties": {"repository": "webmastersdiy/spacer", "repoUrl": "https://github.com/webmastersdiy/spacer", "branch": "main"}, "results": [{"ruleId": "foundry_docs_only_fix", "level": "error", "message": {"text": "Foundry mined docs only runtime fix: webmastersdiy/spacer"}, "properties": {"repobilityId": 358316, "scanner": "foundry_dataset", "fingerprint": "c9f89cb1687791bf9a2f8815b5476bd609bef57dcb853c98e8aabbfa4afbf903", "category": "practices", "severity": "high", "confidence": 0.8, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Docs-only response to runtime or integration issue", "intent": "Assumption-check examples where docs or claims are not enough proof.", "labels": {"bug_fix": 1, "docs_or_chore": 1, "docs_or_claims": 6, "runtime_failure": 1, "dependency_or_build": 1, "verification_or_tests": 2, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "docs_only_runtime_fix", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "docs_only_runtime_fix", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 34, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 6, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 6, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 6, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "webmastersdiy/spacer#1", "issue_number": "1", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "webmastersdiy/spacer", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-4a991a591c85bed2", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"docs_or_claims": 24}}, "text": "Graph query export: Docs-only response to runtime or integration issue\nQuery id: docs_only_runtime_fix\nQuery type: motif_query\nIntent: Assumption-check examples where docs or claims are not enough proof.\nMotif: docs_only_runtime_fix\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: webmastersdiy/spacer\nThread: webmastersdiy/spacer#1\nEvidence:\nGraph motif: Runtime/integration complaint answered mostly with docs or claims\nMotif id: docs_only_runtime_fix\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: webmastersdiy/spacer\nThread: webmastersdiy/spacer#1\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: webmastersdiy/spacer#1\nRepo: webmastersdiy/spacer\nIssue/PR number: 1\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 34\nNode types: {'pr_file': 6, 'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 6, 'comment_chain_touches_file': 6, 'issue_chain_touches_file': 6, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'docs_or_claims': 6, 'claimed_resolved_with_verification_signal': 3, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'runtime_failure': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'docs_or_chore': 1, 'bug_fix': 1, 'dependency_or_build': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Train models to reject docs-only fixes for runtime, integration, data, or security failures.\n- Add paired examples where the correct fix changes executable paths and adds verification.\nAssumption checks:\n- Do changed files include executable code or only documentation/claims?\n- Does the complaint require runtime behavior that docs cannot prove?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/webmastersdiy/spacer", "source_id": "graph-query-motif_query-cdad2e2df35ba4b2", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/docs_only_runtime_fix/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "webmastersdiy/spacer", "source_dataset": "graph_queries/docs_only_runtime_fix", "training_usage": "assumption_check"}}}, {"ruleId": "scanner-de97448e231925e0", "level": "note", "message": {"text": "Possibly dead Python function: log_message"}, "properties": {"repobilityId": "965f3150b4af5b2e", "scanner": "scanner-primary", "fingerprint": "de97448e231925e0", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "arbiter/src/gateway.py:123"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6fc7297ba0f8cb45", "level": "note", "message": {"text": "Possibly dead Python function: send_error"}, "properties": {"repobilityId": "557adaf3dde9e0f9", "scanner": "scanner-primary", "fingerprint": "6fc7297ba0f8cb45", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "arbiter/src/gateway.py:159"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-259230ce0fb62845", "level": "note", "message": {"text": "Possibly dead Python function: cmd_add"}, "properties": {"repobilityId": "3b364c25c0f2804a", "scanner": "scanner-primary", "fingerprint": "259230ce0fb62845", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "arbiter/src/registry_cli.py:39"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7409f25dce02cd7c", "level": "note", "message": {"text": "Possibly dead Python function: cmd_list"}, "properties": {"repobilityId": "bd09044da90857da", "scanner": "scanner-primary", "fingerprint": "7409f25dce02cd7c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "arbiter/src/registry_cli.py:62"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-26d22edb788e54dc", "level": "note", "message": {"text": "Possibly dead Python function: log_message"}, "properties": {"repobilityId": "965f3150b4af5b2e", "scanner": "scanner-primary", "fingerprint": "26d22edb788e54dc", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "petitioner/src/protocol.py:96"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-799221ebad1a943d", "level": "note", "message": {"text": "Possibly dead Python function: do_POST"}, "properties": {"repobilityId": "53357410ca9379a9", "scanner": "scanner-primary", "fingerprint": "799221ebad1a943d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "petitioner/src/protocol.py:99"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0be9a55c39c60350", "level": "note", "message": {"text": "Possibly dead Python function: log_message"}, "properties": {"repobilityId": "965f3150b4af5b2e", "scanner": "scanner-primary", "fingerprint": "0be9a55c39c60350", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "petitioner/src/petcli_smoke.py:192"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a81fe31eec34451f", "level": "note", "message": {"text": "Possibly dead Python function: do_POST"}, "properties": {"repobilityId": "53357410ca9379a9", "scanner": "scanner-primary", "fingerprint": "a81fe31eec34451f", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "petitioner/src/petcli_smoke.py:195"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9710c8d059e53154", "level": "none", "message": {"text": "No frontend routes/components detected"}, "properties": {"repobilityId": "44ca61485762e494", "scanner": "scanner-primary", "fingerprint": "9710c8d059e53154", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-6372cebde0220094", "level": "warning", "message": {"text": "No auth library detected"}, "properties": {"repobilityId": "a5b6035a5bbf8054", "scanner": "scanner-primary", "fingerprint": "6372cebde0220094", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["coverage", "auth"]}}, {"ruleId": "scanner-4601e3ad3bb28677", "level": "warning", "message": {"text": "No CI/CD pipelines detected"}, "properties": {"repobilityId": "c3ee439bce2bc51e", "scanner": "scanner-primary", "fingerprint": "4601e3ad3bb28677", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-0ef2faaf1b0a5d3f", "level": "note", "message": {"text": "Very large file: test-harness/scripts/exit_loop_runner.py (2016 lines)"}, "properties": {"repobilityId": "4884383f502a31b9", "scanner": "scanner-primary", "fingerprint": "0ef2faaf1b0a5d3f", "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": "4ab59f8278caf993", "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": "d4bee1b3ea1e3fec", "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": "df7c422ec9498d45", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "note", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "8471eb02a259297b", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "46a025a76b87ec7e", "scanner": "scanner-primary", "fingerprint": "ea8f3013f588db25", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-8424db9c75e04ba4", "level": "none", "message": {"text": "Very short observed git history"}, "properties": {"repobilityId": "73eaea659e7852ee", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-0ec2e7bfe3b978c7", "level": "none", "message": {"text": "Commented-code block (5 lines) in arbiter/src/lnd.py:55"}, "properties": {"repobilityId": "8ba65c31058066c8", "scanner": "scanner-primary", "fingerprint": "0ec2e7bfe3b978c7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c67df8b607b15f54", "level": "none", "message": {"text": "Commented-code block (9 lines) in arbiter/src/timing.py:55"}, "properties": {"repobilityId": "495bf5c1c1e9634d", "scanner": "scanner-primary", "fingerprint": "c67df8b607b15f54", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fc03dd1d8c43161a", "level": "none", "message": {"text": "Commented-code block (5 lines) in arbiter/src/bitcoin.py:47"}, "properties": {"repobilityId": "99e825f62b774096", "scanner": "scanner-primary", "fingerprint": "fc03dd1d8c43161a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4ba01c1fc62f3f63", "level": "none", "message": {"text": "Commented-code block (5 lines) in arbiter/src/ecash.py:68"}, "properties": {"repobilityId": "90e698323ad3b994", "scanner": "scanner-primary", "fingerprint": "4ba01c1fc62f3f63", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c44fab951b71cbb6", "level": "none", "message": {"text": "Commented-code block (5 lines) in arbiter/src/registry.py:74"}, "properties": {"repobilityId": "66bdcf1dbaf6d56b", "scanner": "scanner-primary", "fingerprint": "c44fab951b71cbb6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-93fccf6b0cd2384b", "level": "none", "message": {"text": "Commented-code block (7 lines) in arbiter/src/results.py:70"}, "properties": {"repobilityId": "6c3d5330397036e1", "scanner": "scanner-primary", "fingerprint": "93fccf6b0cd2384b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b250879b19e57a77", "level": "none", "message": {"text": "Commented-code block (7 lines) in arbiter/src/gateway.py:78"}, "properties": {"repobilityId": "568cd9bd0d7ee5a2", "scanner": "scanner-primary", "fingerprint": "b250879b19e57a77", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4fc5a544ad37e82d", "level": "note", "message": {"text": "Stub function `log_message` (body is just `pass`/`return`) \u2014 arbiter/src/gateway.py:123"}, "properties": {"repobilityId": "29fbc3a83ba19a65", "scanner": "scanner-primary", "fingerprint": "4fc5a544ad37e82d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-28da3e841d36e857", "level": "none", "message": {"text": "Commented-code block (5 lines) in arbiter/src/arbiter.py:17"}, "properties": {"repobilityId": "5592accabc2bc9bf", "scanner": "scanner-primary", "fingerprint": "28da3e841d36e857", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8d2af9e962d4fa8c", "level": "none", "message": {"text": "Commented-code block (10 lines) in arbiter/src/standing_approvals.py:148"}, "properties": {"repobilityId": "407a1b2b4598c0b7", "scanner": "scanner-primary", "fingerprint": "8d2af9e962d4fa8c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e45b2a4bd43f0b7d", "level": "none", "message": {"text": "Commented-code block (10 lines) in test-harness/scripts/exit_loop_runner.py:81"}, "properties": {"repobilityId": "dee5134529716ae8", "scanner": "scanner-primary", "fingerprint": "e45b2a4bd43f0b7d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d32479fb0e2563ca", "level": "none", "message": {"text": "Commented-code block (6 lines) in petitioner/src/protocol.py:141"}, "properties": {"repobilityId": "cb96e079f01743a9", "scanner": "scanner-primary", "fingerprint": "d32479fb0e2563ca", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-879d169d8066a1fd", "level": "note", "message": {"text": "Stub function `log_message` (body is just `pass`/`return`) \u2014 petitioner/src/protocol.py:96"}, "properties": {"repobilityId": "04e8946594e7a64f", "scanner": "scanner-primary", "fingerprint": "879d169d8066a1fd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-550a1f7b19e9755a", "level": "none", "message": {"text": "Commented-code block (9 lines) in petitioner/src/petcli.py:76"}, "properties": {"repobilityId": "a06f633f1a023566", "scanner": "scanner-primary", "fingerprint": "550a1f7b19e9755a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4571e7d07f75a470", "level": "none", "message": {"text": "Commented-code block (5 lines) in petitioner/src/petcli_smoke.py:56"}, "properties": {"repobilityId": "136199c929c580c1", "scanner": "scanner-primary", "fingerprint": "4571e7d07f75a470", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-df5cf5038cea6b73", "level": "note", "message": {"text": "Stub function `log_message` (body is just `pass`/`return`) \u2014 petitioner/src/petcli_smoke.py:192"}, "properties": {"repobilityId": "9198a44bd115602d", "scanner": "scanner-primary", "fingerprint": "df5cf5038cea6b73", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "a0bba603097086fb", "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": "2e1bab85f8d52ab1", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}]}]}