{"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-926cc08dd2f3e116", "name": "Possibly dead Python function: monitor_files", "shortDescription": {"text": "Possibly dead Python function: monitor_files"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-07a922c985b0cb0b", "name": "Possibly dead Python function: monitor_overnight", "shortDescription": {"text": "Possibly dead Python function: monitor_overnight"}, "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-8d2cac0b0ee53a9b", "name": "Possibly dead Python function: copy_hashes", "shortDescription": {"text": "Possibly dead Python function: copy_hashes"}, "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-0501a3af0596c674", "name": "Possibly dead Python function: export_report", "shortDescription": {"text": "Possibly dead Python function: export_report"}, "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-10ca52e88da16173", "name": "Possibly dead Python function: quick_quarantine", "shortDescription": {"text": "Possibly dead Python function: quick_quarantine"}, "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-e92a9b8d8c2c21e0", "name": "Possibly dead Python function: open_sandbox", "shortDescription": {"text": "Possibly dead Python function: open_sandbox"}, "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-56190e9fdd9c7375", "name": "Possibly dead Python function: restore_selected_file", "shortDescription": {"text": "Possibly dead Python function: restore_selected_file"}, "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-637cb950dc202e91", "name": "Possibly dead Python function: delete_selected_file", "shortDescription": {"text": "Possibly dead Python function: delete_selected_file"}, "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-d9a3549ca93504bc", "name": "Possibly dead Python function: show_statistics", "shortDescription": {"text": "Possibly dead Python function: show_statistics"}, "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-eb4618cfe52ba168", "name": "Possibly dead Python function: run_system_scan", "shortDescription": {"text": "Possibly dead Python function: run_system_scan"}, "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-7e8ee79c7fe9f8fd", "name": "Possibly dead Python function: select_all_results", "shortDescription": {"text": "Possibly dead Python function: select_all_results"}, "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-3956818b2bc2f0df", "name": "Possibly dead Python function: quarantine_selected", "shortDescription": {"text": "Possibly dead Python function: quarantine_selected"}, "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-267593b0fe847230", "name": "Possibly dead Python function: update_progress", "shortDescription": {"text": "Possibly dead Python function: update_progress"}, "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-1dfbf8382032ab8d", "name": "Possibly dead Python function: do_scan", "shortDescription": {"text": "Possibly dead Python function: do_scan"}, "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-d4fb2bd0b285ffc1", "name": "Possibly dead Python function: view_reports", "shortDescription": {"text": "Possibly dead Python function: view_reports"}, "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-41f54f2d89789a3c", "name": "Possibly dead Python function: toggle_shield_mode", "shortDescription": {"text": "Possibly dead Python function: toggle_shield_mode"}, "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-1fdc95d180d49cb1", "name": "Possibly dead Python function: shield_callback", "shortDescription": {"text": "Possibly dead Python function: shield_callback"}, "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-ca453c700a07689c", "name": "Possibly dead Python function: toggle_night_watch", "shortDescription": {"text": "Possibly dead Python function: toggle_night_watch"}, "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-4d37821f50c7d1b7", "name": "Possibly dead Python function: night_watch_callback", "shortDescription": {"text": "Possibly dead Python function: night_watch_callback"}, "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-ad06a24dbc222105", "name": "Possibly dead Python function: show_settings", "shortDescription": {"text": "Possibly dead Python function: show_settings"}, "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-30c56da495e888f5", "name": "Possibly dead Python function: save_settings", "shortDescription": {"text": "Possibly dead Python function: save_settings"}, "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-89c33b1c216bf296", "name": "Possibly dead Python function: list_files", "shortDescription": {"text": "Possibly dead Python function: list_files"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-577692157d61f08f", "name": "Possibly dead Python function: show_stats", "shortDescription": {"text": "Possibly dead Python function: show_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-5b342e3f24184558", "name": "Possibly dead Python function: open_folder", "shortDescription": {"text": "Possibly dead Python function: open_folder"}, "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-baadbf4b47237e49", "name": "Possibly dead Python function: open_gui", "shortDescription": {"text": "Possibly dead Python function: open_gui"}, "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-506be2b95088f5d3", "name": "git log failed \u2014 history analysis incomplete", "shortDescription": {"text": "git log failed \u2014 history analysis incomplete"}, "fullDescription": {"text": "fatal: not a git repository (or any parent up to mount point /data)\nStopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set)."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "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-d4ecba42f849f8cf", "name": "Insecure pattern 'weak_hash' in quarantine_guard_fixed.py:894", "shortDescription": {"text": "Insecure pattern 'weak_hash' in quarantine_guard_fixed.py:894"}, "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-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-878c2dc38fbaeb28", "name": "Very large file: quarantine_guard_fixed.py (2222 lines)", "shortDescription": {"text": "Very large file: quarantine_guard_fixed.py (2222 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-6893a6c8b0861585", "name": "Very low test-to-source ratio", "shortDescription": {"text": "Very low test-to-source ratio"}, "fullDescription": {"text": "0 test file(s) for 1 source file(s) (ratio 0.00). Consider adding integration or unit tests for critical paths."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "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 10 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-d0a53bb7e6250c86", "name": "Legacy-named symbol `days_old` in quarantine_guard_fixed.py:337", "shortDescription": {"text": "Legacy-named symbol `days_old` in quarantine_guard_fixed.py:337"}, "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-5971c7228867eaa4", "name": "Network/subprocess call without timeout or try/except \u2014 quarantine_guard_fixed.py:2159", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 quarantine_guard_fixed.py:2159"}, "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-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:\nquarantine_guard_fixed.py:quick_quarantine, quarantine_guard_fixed.py:quick_quarantine\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-49c98f7cedd9c977", "name": "Near-duplicate function bodies in 4 places", "shortDescription": {"text": "Near-duplicate function bodies in 4 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nquarantine_guard_fixed.py:run_system_scan, quarantine_guard_fixed.py:run, quarantine_guard_fixed.py:run, quarantine_guard_fixed.py:run\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/19415"}, "properties": {"repository": "Shawakee-Medicinals/QuarantineGuard", "repoUrl": "https://github.com/Shawakee-Medicinals/QuarantineGuard", "branch": "main"}, "results": [{"ruleId": "scanner-926cc08dd2f3e116", "level": "note", "message": {"text": "Possibly dead Python function: monitor_files"}, "properties": {"repobilityId": "babcf2cf4eaf6fc6", "scanner": "scanner-primary", "fingerprint": "926cc08dd2f3e116", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:405"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-07a922c985b0cb0b", "level": "note", "message": {"text": "Possibly dead Python function: monitor_overnight"}, "properties": {"repobilityId": "67626fe62168f6ba", "scanner": "scanner-primary", "fingerprint": "07a922c985b0cb0b", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:501"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8d2cac0b0ee53a9b", "level": "note", "message": {"text": "Possibly dead Python function: copy_hashes"}, "properties": {"repobilityId": "3c73f849a013ed39", "scanner": "scanner-primary", "fingerprint": "8d2cac0b0ee53a9b", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:917"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0501a3af0596c674", "level": "note", "message": {"text": "Possibly dead Python function: export_report"}, "properties": {"repobilityId": "d41a013c56644f29", "scanner": "scanner-primary", "fingerprint": "0501a3af0596c674", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:933"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-10ca52e88da16173", "level": "note", "message": {"text": "Possibly dead Python function: quick_quarantine"}, "properties": {"repobilityId": "9093d1646f6fa20b", "scanner": "scanner-primary", "fingerprint": "10ca52e88da16173", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:2123"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e92a9b8d8c2c21e0", "level": "note", "message": {"text": "Possibly dead Python function: open_sandbox"}, "properties": {"repobilityId": "53f3cd4af9443646", "scanner": "scanner-primary", "fingerprint": "e92a9b8d8c2c21e0", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1411"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-56190e9fdd9c7375", "level": "note", "message": {"text": "Possibly dead Python function: restore_selected_file"}, "properties": {"repobilityId": "6594c1888cd4def1", "scanner": "scanner-primary", "fingerprint": "56190e9fdd9c7375", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1435"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-637cb950dc202e91", "level": "note", "message": {"text": "Possibly dead Python function: delete_selected_file"}, "properties": {"repobilityId": "c3f527d64e00c473", "scanner": "scanner-primary", "fingerprint": "637cb950dc202e91", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1458"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d9a3549ca93504bc", "level": "note", "message": {"text": "Possibly dead Python function: show_statistics"}, "properties": {"repobilityId": "17b47c83c1599ccf", "scanner": "scanner-primary", "fingerprint": "d9a3549ca93504bc", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1527"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-eb4618cfe52ba168", "level": "note", "message": {"text": "Possibly dead Python function: run_system_scan"}, "properties": {"repobilityId": "ca610f1d96938fb8", "scanner": "scanner-primary", "fingerprint": "eb4618cfe52ba168", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1584"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7e8ee79c7fe9f8fd", "level": "note", "message": {"text": "Possibly dead Python function: select_all_results"}, "properties": {"repobilityId": "d7908ba5512b15c5", "scanner": "scanner-primary", "fingerprint": "7e8ee79c7fe9f8fd", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1666"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3956818b2bc2f0df", "level": "note", "message": {"text": "Possibly dead Python function: quarantine_selected"}, "properties": {"repobilityId": "9d979acb993b9670", "scanner": "scanner-primary", "fingerprint": "3956818b2bc2f0df", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1671"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-267593b0fe847230", "level": "note", "message": {"text": "Possibly dead Python function: update_progress"}, "properties": {"repobilityId": "00877585aa2a12d8", "scanner": "scanner-primary", "fingerprint": "267593b0fe847230", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1725"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1dfbf8382032ab8d", "level": "note", "message": {"text": "Possibly dead Python function: do_scan"}, "properties": {"repobilityId": "06c4e5713d034923", "scanner": "scanner-primary", "fingerprint": "1dfbf8382032ab8d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1729"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d4fb2bd0b285ffc1", "level": "note", "message": {"text": "Possibly dead Python function: view_reports"}, "properties": {"repobilityId": "a85fd67e4ec68f4c", "scanner": "scanner-primary", "fingerprint": "d4fb2bd0b285ffc1", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1769"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-41f54f2d89789a3c", "level": "note", "message": {"text": "Possibly dead Python function: toggle_shield_mode"}, "properties": {"repobilityId": "a7c0097d8e7d3c5f", "scanner": "scanner-primary", "fingerprint": "41f54f2d89789a3c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1868"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1fdc95d180d49cb1", "level": "note", "message": {"text": "Possibly dead Python function: shield_callback"}, "properties": {"repobilityId": "0112aa7c752fa65a", "scanner": "scanner-primary", "fingerprint": "1fdc95d180d49cb1", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1872"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ca453c700a07689c", "level": "note", "message": {"text": "Possibly dead Python function: toggle_night_watch"}, "properties": {"repobilityId": "5be3e7c63b7aeca9", "scanner": "scanner-primary", "fingerprint": "ca453c700a07689c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1907"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4d37821f50c7d1b7", "level": "note", "message": {"text": "Possibly dead Python function: night_watch_callback"}, "properties": {"repobilityId": "e809104b60143140", "scanner": "scanner-primary", "fingerprint": "4d37821f50c7d1b7", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1911"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ad06a24dbc222105", "level": "note", "message": {"text": "Possibly dead Python function: show_settings"}, "properties": {"repobilityId": "62264e4c9525d850", "scanner": "scanner-primary", "fingerprint": "ad06a24dbc222105", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:1943"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-30c56da495e888f5", "level": "note", "message": {"text": "Possibly dead Python function: save_settings"}, "properties": {"repobilityId": "7ed87dca8846be85", "scanner": "scanner-primary", "fingerprint": "30c56da495e888f5", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:2068"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-89c33b1c216bf296", "level": "note", "message": {"text": "Possibly dead Python function: list_files"}, "properties": {"repobilityId": "91ca1a1efd8eab71", "scanner": "scanner-primary", "fingerprint": "89c33b1c216bf296", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:2141"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-577692157d61f08f", "level": "note", "message": {"text": "Possibly dead Python function: show_stats"}, "properties": {"repobilityId": "71ccb216e5ccd5f2", "scanner": "scanner-primary", "fingerprint": "577692157d61f08f", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:2150"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5b342e3f24184558", "level": "note", "message": {"text": "Possibly dead Python function: open_folder"}, "properties": {"repobilityId": "1f1cb9405afdf968", "scanner": "scanner-primary", "fingerprint": "5b342e3f24184558", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:2158"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-baadbf4b47237e49", "level": "note", "message": {"text": "Possibly dead Python function: open_gui"}, "properties": {"repobilityId": "ee4cfbac84e62972", "scanner": "scanner-primary", "fingerprint": "baadbf4b47237e49", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py:2161"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-506be2b95088f5d3", "level": "none", "message": {"text": "git log failed \u2014 history analysis incomplete"}, "properties": {"repobilityId": "b424308a11bb9b22", "scanner": "scanner-primary", "fingerprint": "506be2b95088f5d3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["git", "tooling"]}}, {"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-d4ecba42f849f8cf", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in quarantine_guard_fixed.py:894"}, "properties": {"repobilityId": "d65ea530cd0fb7a9", "scanner": "scanner-primary", "fingerprint": "d4ecba42f849f8cf", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "quarantine_guard_fixed.py"}, "region": {"startLine": 894}}}]}, {"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-878c2dc38fbaeb28", "level": "note", "message": {"text": "Very large file: quarantine_guard_fixed.py (2222 lines)"}, "properties": {"repobilityId": "90e2a11f7967144e", "scanner": "scanner-primary", "fingerprint": "878c2dc38fbaeb28", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6893a6c8b0861585", "level": "warning", "message": {"text": "Very low test-to-source ratio"}, "properties": {"repobilityId": "54a7de3f06314bf0", "scanner": "scanner-primary", "fingerprint": "6893a6c8b0861585", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["tests", "coverage"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "ab8678589eb28947", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-d0a53bb7e6250c86", "level": "note", "message": {"text": "Legacy-named symbol `days_old` in quarantine_guard_fixed.py:337"}, "properties": {"repobilityId": "426ab025548962e5", "scanner": "scanner-primary", "fingerprint": "d0a53bb7e6250c86", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5971c7228867eaa4", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 quarantine_guard_fixed.py:2159"}, "properties": {"repobilityId": "6898b2e8be6ebc3a", "scanner": "scanner-primary", "fingerprint": "5971c7228867eaa4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "0b1063486a7f2058", "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": "2b25b2580a806b1e", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}]}]}