{"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-84328bd6df685da7", "name": "Possibly dead Python function: cmd_settle_ci", "shortDescription": {"text": "Possibly dead Python function: cmd_settle_ci"}, "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-2af6faa0fa24e274", "name": "Possibly dead Python function: cmd_render", "shortDescription": {"text": "Possibly dead Python function: cmd_render"}, "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-5844dbb57a572503", "name": "Possibly dead Python function: batch", "shortDescription": {"text": "Possibly dead Python function: batch"}, "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-19ee5aca153a2584", "name": "Possibly dead Python function: cmd_top", "shortDescription": {"text": "Possibly dead Python function: cmd_top"}, "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-b783dd715097e065", "name": "Possibly dead Python function: cmd_why", "shortDescription": {"text": "Possibly dead Python function: cmd_why"}, "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-062100e2444a0d9d", "name": "Possibly dead Python function: cmd_audit", "shortDescription": {"text": "Possibly dead Python function: cmd_audit"}, "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-6ee9f18ddcd25c7a", "name": "Possibly dead Python function: cmd_demo", "shortDescription": {"text": "Possibly dead Python function: cmd_demo"}, "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-8335f6f718556a4d", "name": "Possibly dead Python function: cmd_encode", "shortDescription": {"text": "Possibly dead Python function: cmd_encode"}, "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-aa6a28623c9d16c5", "name": "Possibly dead Python function: cmd_query", "shortDescription": {"text": "Possibly dead Python function: cmd_query"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6adfc64e10848541", "name": "Possibly dead Python function: cmd_stats", "shortDescription": {"text": "Possibly dead Python function: cmd_stats"}, "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-3c8851496022c74d", "name": "Possibly dead Python function: cmd_ledger", "shortDescription": {"text": "Possibly dead Python function: cmd_ledger"}, "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-ced5c02287ee7c85", "name": "Possibly dead Python function: cmd_import", "shortDescription": {"text": "Possibly dead Python function: cmd_import"}, "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-2dfd1b819db8cb18", "name": "Possibly dead Python function: encode_document", "shortDescription": {"text": "Possibly dead Python function: encode_document"}, "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-b05738f140224fbb", "name": "Possibly dead Python function: encode_pair", "shortDescription": {"text": "Possibly dead Python function: encode_pair"}, "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-9010b9081377399e", "name": "Possibly dead Python function: idle", "shortDescription": {"text": "Possibly dead Python function: idle"}, "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-1755bef2f4731981", "name": "Possibly dead Python function: random_victims", "shortDescription": {"text": "Possibly dead Python function: random_victims"}, "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-5ac305275b3aecc3", "name": "Possibly dead Python function: the_blamed", "shortDescription": {"text": "Possibly dead Python function: the_blamed"}, "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-41ff5b6914aea2e3", "name": "Possibly dead Python function: strike_out", "shortDescription": {"text": "Possibly dead Python function: strike_out"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-43bcc84b6cd38f46", "name": "Possibly dead Python function: confidently_bad", "shortDescription": {"text": "Possibly dead Python function: confidently_bad"}, "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-15d07547a433ea30", "name": "Possibly dead Python function: hub_compressed_bytes", "shortDescription": {"text": "Possibly dead Python function: hub_compressed_bytes"}, "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-7ec53d8fb3ad605d", "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-d9be332cf47ddce0", "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-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-46169beddc96fd2e", "name": "Insecure pattern 'exec_used' in darwin_memo/testsuite_env.py:137", "shortDescription": {"text": "Insecure pattern 'exec_used' in darwin_memo/testsuite_env.py:137"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6f922b4e772b367f", "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-1838a141491ce38c", "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-2e02c0dc55371b9a", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "rogermsc/darwin-memo-action@v1 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": "medium", "confidence": 1.0}}, {"id": "scanner-b26b10a949e9dfae", "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-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 151 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-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-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-7feb950508e1986d", "name": "Commented-code block (5 lines) in darwin_memo/protocol.py:54", "shortDescription": {"text": "Commented-code block (5 lines) in darwin_memo/protocol.py:54"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1094db04ddc0b0b9", "name": "Stub function `load_state` (body is just `pass`/`return`) \u2014 darwin_memo/retrieval.py:150", "shortDescription": {"text": "Stub function `load_state` (body is just `pass`/`return`) \u2014 darwin_memo/retrieval.py:150"}, "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-3fc5e63561e157b5", "name": "Commented-code block (6 lines) in darwin_memo/environments.py:69", "shortDescription": {"text": "Commented-code block (6 lines) in darwin_memo/environments.py:69"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eb19344773c8cfaf", "name": "Commented-code block (7 lines) in darwin_memo/cli.py:228", "shortDescription": {"text": "Commented-code block (7 lines) in darwin_memo/cli.py:228"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c5ce590b6d0297be", "name": "Commented-code block (5 lines) in darwin_memo/ledger.py:119", "shortDescription": {"text": "Commented-code block (5 lines) in darwin_memo/ledger.py:119"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8c3aef774394f595", "name": "Commented-code block (5 lines) in darwin_memo/store.py:32", "shortDescription": {"text": "Commented-code block (5 lines) in darwin_memo/store.py:32"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-929b4a525a0ce78a", "name": "Commented-code block (6 lines) in darwin_memo/encode.py:75", "shortDescription": {"text": "Commented-code block (6 lines) in darwin_memo/encode.py:75"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7fe6a0e8570afed4", "name": "Commented-code block (6 lines) in darwin_memo/survival.py:48", "shortDescription": {"text": "Commented-code block (6 lines) in darwin_memo/survival.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-364eb18d44dfa639", "name": "Legacy-named symbol `test_embedder_falls_back_to_legacy` in tests/test_ollama.py:119", "shortDescription": {"text": "Legacy-named symbol `test_embedder_falls_back_to_legacy` in tests/test_ollama.py:119"}, "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-0024ae1cb3ff7f7d", "name": "Network/subprocess call without timeout or try/except \u2014 bench/manifest.py:50", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 bench/manifest.py:50"}, "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-237e0485a0e439ea", "name": "Commented-code block (5 lines) in bench/suites.py:136", "shortDescription": {"text": "Commented-code block (5 lines) in bench/suites.py:136"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cc381302a6999263", "name": "Commented-code block (7 lines) in bench/noise.py:109", "shortDescription": {"text": "Commented-code block (7 lines) in bench/noise.py:109"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-61d33542d3482598", "name": "Commented-code block (7 lines) in bench/fixtures.py:90", "shortDescription": {"text": "Commented-code block (7 lines) in bench/fixtures.py:90"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7c3de9fd8d0e23f4", "name": "Commented-code block (9 lines) in bench/runner.py:281", "shortDescription": {"text": "Commented-code block (9 lines) in bench/runner.py:281"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6f6534ccc15c14c7", "name": "Network/subprocess call without timeout or try/except \u2014 bench/swebench_cl/executor.py:274", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 bench/swebench_cl/executor.py:274"}, "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-df20511a3636b0e3", "name": "Stub function `log_message` (body is just `pass`/`return`) \u2014 examples/08_evm_settler.py:44", "shortDescription": {"text": "Stub function `log_message` (body is just `pass`/`return`) \u2014 examples/08_evm_settler.py:44"}, "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-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:\ndarwin_memo/protocol.py:answer, darwin_memo/ledger.py:decide, darwin_memo/store.py:retrieve, bench/llm_arm.py:answer\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be46ea126aa5d8dc", "name": "Near-duplicate function bodies in 3 places", "shortDescription": {"text": "Near-duplicate function bodies in 3 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\ndarwin_memo/retrieval.py:rank, darwin_memo/retrieval.py:rank, darwin_memo/retrieval.py:rank\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:\ndarwin_memo/render.py:build, darwin_memo/render.py:build\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/18383"}, "properties": {"repository": "rogermsc/darwin-memo", "repoUrl": "https://github.com/rogermsc/darwin-memo", "branch": "main"}, "results": [{"ruleId": "scanner-84328bd6df685da7", "level": "note", "message": {"text": "Possibly dead Python function: cmd_settle_ci"}, "properties": {"repobilityId": "437ab264063e8224", "scanner": "scanner-primary", "fingerprint": "84328bd6df685da7", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/ci.py:223"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2af6faa0fa24e274", "level": "note", "message": {"text": "Possibly dead Python function: cmd_render"}, "properties": {"repobilityId": "ae714171e79497ec", "scanner": "scanner-primary", "fingerprint": "2af6faa0fa24e274", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/render.py:387"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5844dbb57a572503", "level": "note", "message": {"text": "Possibly dead Python function: batch"}, "properties": {"repobilityId": "191157112a4ad11d", "scanner": "scanner-primary", "fingerprint": "5844dbb57a572503", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/llm.py:244"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-19ee5aca153a2584", "level": "note", "message": {"text": "Possibly dead Python function: cmd_top"}, "properties": {"repobilityId": "b03a055f44cd1287", "scanner": "scanner-primary", "fingerprint": "19ee5aca153a2584", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/observe.py:60"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b783dd715097e065", "level": "note", "message": {"text": "Possibly dead Python function: cmd_why"}, "properties": {"repobilityId": "1d3972b7a7d4ae06", "scanner": "scanner-primary", "fingerprint": "b783dd715097e065", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/observe.py:174"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-062100e2444a0d9d", "level": "note", "message": {"text": "Possibly dead Python function: cmd_audit"}, "properties": {"repobilityId": "51ac11579de8cd34", "scanner": "scanner-primary", "fingerprint": "062100e2444a0d9d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/observe.py:372"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6ee9f18ddcd25c7a", "level": "note", "message": {"text": "Possibly dead Python function: cmd_demo"}, "properties": {"repobilityId": "47c1c7779ff609cc", "scanner": "scanner-primary", "fingerprint": "6ee9f18ddcd25c7a", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/cli.py:85"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8335f6f718556a4d", "level": "note", "message": {"text": "Possibly dead Python function: cmd_encode"}, "properties": {"repobilityId": "6c7e73cdda5039ec", "scanner": "scanner-primary", "fingerprint": "8335f6f718556a4d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/cli.py:129"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-aa6a28623c9d16c5", "level": "note", "message": {"text": "Possibly dead Python function: cmd_query"}, "properties": {"repobilityId": "0a9553a25c858bc5", "scanner": "scanner-primary", "fingerprint": "aa6a28623c9d16c5", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/cli.py:182"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6adfc64e10848541", "level": "note", "message": {"text": "Possibly dead Python function: cmd_stats"}, "properties": {"repobilityId": "192d1822cd670340", "scanner": "scanner-primary", "fingerprint": "6adfc64e10848541", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/cli.py:204"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3c8851496022c74d", "level": "note", "message": {"text": "Possibly dead Python function: cmd_ledger"}, "properties": {"repobilityId": "70f8b03617d20aa0", "scanner": "scanner-primary", "fingerprint": "3c8851496022c74d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/cli.py:218"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ced5c02287ee7c85", "level": "note", "message": {"text": "Possibly dead Python function: cmd_import"}, "properties": {"repobilityId": "45cfdb27469b29a2", "scanner": "scanner-primary", "fingerprint": "ced5c02287ee7c85", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/cli.py:308"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2dfd1b819db8cb18", "level": "note", "message": {"text": "Possibly dead Python function: encode_document"}, "properties": {"repobilityId": "7a9124a8e943e5a0", "scanner": "scanner-primary", "fingerprint": "2dfd1b819db8cb18", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/encode.py:211"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b05738f140224fbb", "level": "note", "message": {"text": "Possibly dead Python function: encode_pair"}, "properties": {"repobilityId": "9b256a4d3307426e", "scanner": "scanner-primary", "fingerprint": "b05738f140224fbb", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/encode.py:220"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9010b9081377399e", "level": "note", "message": {"text": "Possibly dead Python function: idle"}, "properties": {"repobilityId": "005c8d9fe7aae33c", "scanner": "scanner-primary", "fingerprint": "9010b9081377399e", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "bench/policies.py:189"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1755bef2f4731981", "level": "note", "message": {"text": "Possibly dead Python function: random_victims"}, "properties": {"repobilityId": "3289140e44a5403c", "scanner": "scanner-primary", "fingerprint": "1755bef2f4731981", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "bench/policies.py:212"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5ac305275b3aecc3", "level": "note", "message": {"text": "Possibly dead Python function: the_blamed"}, "properties": {"repobilityId": "20b607420807add8", "scanner": "scanner-primary", "fingerprint": "5ac305275b3aecc3", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "bench/policies.py:241"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-41ff5b6914aea2e3", "level": "note", "message": {"text": "Possibly dead Python function: strike_out"}, "properties": {"repobilityId": "f591a1942e26051d", "scanner": "scanner-primary", "fingerprint": "41ff5b6914aea2e3", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "bench/policies.py:269"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-43bcc84b6cd38f46", "level": "note", "message": {"text": "Possibly dead Python function: confidently_bad"}, "properties": {"repobilityId": "fe17a7945e04fd4c", "scanner": "scanner-primary", "fingerprint": "43bcc84b6cd38f46", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "bench/policies.py:358"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-15d07547a433ea30", "level": "note", "message": {"text": "Possibly dead Python function: hub_compressed_bytes"}, "properties": {"repobilityId": "120f0c89d449e890", "scanner": "scanner-primary", "fingerprint": "15d07547a433ea30", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "bench/swebench_cl/executor.py:97"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7ec53d8fb3ad605d", "level": "note", "message": {"text": "Possibly dead Python function: do_POST"}, "properties": {"repobilityId": "53357410ca9379a9", "scanner": "scanner-primary", "fingerprint": "7ec53d8fb3ad605d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "examples/08_evm_settler.py:29"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d9be332cf47ddce0", "level": "note", "message": {"text": "Possibly dead Python function: log_message"}, "properties": {"repobilityId": "965f3150b4af5b2e", "scanner": "scanner-primary", "fingerprint": "d9be332cf47ddce0", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "examples/08_evm_settler.py:44"}, "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-46169beddc96fd2e", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in darwin_memo/testsuite_env.py:137"}, "properties": {"repobilityId": "6a7f237e182b74c4", "scanner": "scanner-primary", "fingerprint": "46169beddc96fd2e", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "darwin_memo/testsuite_env.py"}, "region": {"startLine": 137}}}]}, {"ruleId": "scanner-6f922b4e772b367f", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "1e65decf3932c08f", "scanner": "scanner-primary", "fingerprint": "6f922b4e772b367f", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/mcp-publish.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1838a141491ce38c", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "b8fd4f5048f96576", "scanner": "scanner-primary", "fingerprint": "1838a141491ce38c", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2e02c0dc55371b9a", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "5cd1b7f83387c05d", "scanner": "scanner-primary", "fingerprint": "2e02c0dc55371b9a", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/memory.yml"}, "region": {"startLine": 57}}}]}, {"ruleId": "scanner-b26b10a949e9dfae", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "a9d6e71442842a7f", "scanner": "scanner-primary", "fingerprint": "b26b10a949e9dfae", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/memory.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "c0b21a4cfac687b1", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "daaa6a34f92d303f", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "707f647b5caf4461", "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": "71caec13a718072d", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-7feb950508e1986d", "level": "none", "message": {"text": "Commented-code block (5 lines) in darwin_memo/protocol.py:54"}, "properties": {"repobilityId": "6b7ccfd93a6f5554", "scanner": "scanner-primary", "fingerprint": "7feb950508e1986d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1094db04ddc0b0b9", "level": "note", "message": {"text": "Stub function `load_state` (body is just `pass`/`return`) \u2014 darwin_memo/retrieval.py:150"}, "properties": {"repobilityId": "add07740e7ad2826", "scanner": "scanner-primary", "fingerprint": "1094db04ddc0b0b9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-3fc5e63561e157b5", "level": "none", "message": {"text": "Commented-code block (6 lines) in darwin_memo/environments.py:69"}, "properties": {"repobilityId": "ad1fea0ee43cd803", "scanner": "scanner-primary", "fingerprint": "3fc5e63561e157b5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb19344773c8cfaf", "level": "none", "message": {"text": "Commented-code block (7 lines) in darwin_memo/cli.py:228"}, "properties": {"repobilityId": "b52abce08b023db9", "scanner": "scanner-primary", "fingerprint": "eb19344773c8cfaf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c5ce590b6d0297be", "level": "none", "message": {"text": "Commented-code block (5 lines) in darwin_memo/ledger.py:119"}, "properties": {"repobilityId": "3699bbe6cfbc000d", "scanner": "scanner-primary", "fingerprint": "c5ce590b6d0297be", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8c3aef774394f595", "level": "none", "message": {"text": "Commented-code block (5 lines) in darwin_memo/store.py:32"}, "properties": {"repobilityId": "b298f482c669879a", "scanner": "scanner-primary", "fingerprint": "8c3aef774394f595", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-929b4a525a0ce78a", "level": "none", "message": {"text": "Commented-code block (6 lines) in darwin_memo/encode.py:75"}, "properties": {"repobilityId": "1fcb7e8bd41e8cdb", "scanner": "scanner-primary", "fingerprint": "929b4a525a0ce78a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7fe6a0e8570afed4", "level": "none", "message": {"text": "Commented-code block (6 lines) in darwin_memo/survival.py:48"}, "properties": {"repobilityId": "226399dc416007e2", "scanner": "scanner-primary", "fingerprint": "7fe6a0e8570afed4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-364eb18d44dfa639", "level": "note", "message": {"text": "Legacy-named symbol `test_embedder_falls_back_to_legacy` in tests/test_ollama.py:119"}, "properties": {"repobilityId": "30ad261f170a6a74", "scanner": "scanner-primary", "fingerprint": "364eb18d44dfa639", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0024ae1cb3ff7f7d", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 bench/manifest.py:50"}, "properties": {"repobilityId": "9c7a4824fbd0f004", "scanner": "scanner-primary", "fingerprint": "0024ae1cb3ff7f7d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-237e0485a0e439ea", "level": "none", "message": {"text": "Commented-code block (5 lines) in bench/suites.py:136"}, "properties": {"repobilityId": "b2236f65ad6834fe", "scanner": "scanner-primary", "fingerprint": "237e0485a0e439ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cc381302a6999263", "level": "none", "message": {"text": "Commented-code block (7 lines) in bench/noise.py:109"}, "properties": {"repobilityId": "79ab9ad2343562ec", "scanner": "scanner-primary", "fingerprint": "cc381302a6999263", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-61d33542d3482598", "level": "none", "message": {"text": "Commented-code block (7 lines) in bench/fixtures.py:90"}, "properties": {"repobilityId": "d93fbd16ac486a8e", "scanner": "scanner-primary", "fingerprint": "61d33542d3482598", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7c3de9fd8d0e23f4", "level": "none", "message": {"text": "Commented-code block (9 lines) in bench/runner.py:281"}, "properties": {"repobilityId": "283a4db09fe13118", "scanner": "scanner-primary", "fingerprint": "7c3de9fd8d0e23f4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6f6534ccc15c14c7", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 bench/swebench_cl/executor.py:274"}, "properties": {"repobilityId": "7b2e1ad379b3227c", "scanner": "scanner-primary", "fingerprint": "6f6534ccc15c14c7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-df20511a3636b0e3", "level": "note", "message": {"text": "Stub function `log_message` (body is just `pass`/`return`) \u2014 examples/08_evm_settler.py:44"}, "properties": {"repobilityId": "c96a425e4a23605a", "scanner": "scanner-primary", "fingerprint": "df20511a3636b0e3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-49c98f7cedd9c977", "level": "note", "message": {"text": "Near-duplicate function bodies in 4 places"}, "properties": {"repobilityId": "6f35a71f27023cde", "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": "4e60f8fe568ceca2", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "5af5c49b27c6c7fe", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "69fb169ee3372f54", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "41b0d7c4f0e75c21", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "e5faeadd045151f1", "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": "3f81d128befd6d56", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "fd3a80157434f096", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "e2db24c2b5632c85", "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": "806f5f8dedfb14a6", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "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": "c4b227e0a3010db0", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "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": "d072662fe7f2328c", "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": "77d105262326f1c1", "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": "eb7b8b4cce57e471", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}]}]}