{"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-7218f3b7e6af166d", "name": "Possibly dead Python function: move_needed", "shortDescription": {"text": "Possibly dead Python function: move_needed"}, "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-3f5c2cf4e1fa5231", "name": "Possibly dead Python function: room", "shortDescription": {"text": "Possibly dead Python function: room"}, "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-df37f3b32161d34c", "name": "Possibly dead Python function: show_manual_mode", "shortDescription": {"text": "Possibly dead Python function: show_manual_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-5ea44963f56a8b1e", "name": "Possibly dead Python function: controls", "shortDescription": {"text": "Possibly dead Python function: controls"}, "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-883a7fc48dc3ad50", "name": "Possibly dead Python function: show_pid_mode", "shortDescription": {"text": "Possibly dead Python function: show_pid_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-0410bae0b5cd354f", "name": "Possibly dead Python function: show_rl_mode", "shortDescription": {"text": "Possibly dead Python function: show_rl_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-7990e316e55c3a35", "name": "Possibly dead Python function: work", "shortDescription": {"text": "Possibly dead Python function: work"}, "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-6893a6c8b0861585", "name": "Very low test-to-source ratio", "shortDescription": {"text": "Very low test-to-source ratio"}, "fullDescription": {"text": "0 test file(s) for 3 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-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "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: license, 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": "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:\nsimulation.py:controls, simulation.py:controls\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/30280"}, "properties": {"repository": "VikramRadhakrishnan/endless-racer-control", "repoUrl": "https://github.com/VikramRadhakrishnan/endless-racer-control", "branch": "main"}, "results": [{"ruleId": "scanner-7218f3b7e6af166d", "level": "note", "message": {"text": "Possibly dead Python function: move_needed"}, "properties": {"repobilityId": "fae765314301247e", "scanner": "scanner-primary", "fingerprint": "7218f3b7e6af166d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "controllers.py:170"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3f5c2cf4e1fa5231", "level": "note", "message": {"text": "Possibly dead Python function: room"}, "properties": {"repobilityId": "3e180397e2632825", "scanner": "scanner-primary", "fingerprint": "3f5c2cf4e1fa5231", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "controllers.py:184"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-df37f3b32161d34c", "level": "note", "message": {"text": "Possibly dead Python function: show_manual_mode"}, "properties": {"repobilityId": "3e75365f8ab22506", "scanner": "scanner-primary", "fingerprint": "df37f3b32161d34c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulation.py:259"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5ea44963f56a8b1e", "level": "note", "message": {"text": "Possibly dead Python function: controls"}, "properties": {"repobilityId": "e9847b38928a974e", "scanner": "scanner-primary", "fingerprint": "5ea44963f56a8b1e", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulation.py:289"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-883a7fc48dc3ad50", "level": "note", "message": {"text": "Possibly dead Python function: show_pid_mode"}, "properties": {"repobilityId": "af6b77c5a902571d", "scanner": "scanner-primary", "fingerprint": "883a7fc48dc3ad50", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulation.py:288"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0410bae0b5cd354f", "level": "note", "message": {"text": "Possibly dead Python function: show_rl_mode"}, "properties": {"repobilityId": "fee04d3976d389c6", "scanner": "scanner-primary", "fingerprint": "0410bae0b5cd354f", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulation.py:329"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7990e316e55c3a35", "level": "note", "message": {"text": "Possibly dead Python function: work"}, "properties": {"repobilityId": "c5b0e9acf413d08f", "scanner": "scanner-primary", "fingerprint": "7990e316e55c3a35", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulation.py:419"}, "region": {"startLine": 1}}}]}, {"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-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "0923d35fdc72f89d", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "warning", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "9f4449d541462cda", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "e1c76f297155d382", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}]}]}