{"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-f931154f29e72b50", "name": "Possibly dead Python function: is_mars_stype_feedstock", "shortDescription": {"text": "Possibly dead Python function: is_mars_stype_feedstock"}, "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-7f29f60fc65e70c9", "name": "Possibly dead Python function: timed", "shortDescription": {"text": "Possibly dead Python function: timed"}, "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-5017c7ad26bdfadd", "name": "Possibly dead Python function: run_pair", "shortDescription": {"text": "Possibly dead Python function: run_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-5b2af5e5a9d10572", "name": "Possibly dead Python function: load_harness_yaml", "shortDescription": {"text": "Possibly dead Python function: load_harness_yaml"}, "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-b7b37add6cc717e1", "name": "Possibly dead Python function: clone_for_replay", "shortDescription": {"text": "Possibly dead Python function: clone_for_replay"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-82b48c0f1b67f279", "name": "Possibly dead Python function: canonical_composition_mol", "shortDescription": {"text": "Possibly dead Python function: canonical_composition_mol"}, "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-327ffe482e9a9631", "name": "Possibly dead Python function: canonical_physics_bucket_key", "shortDescription": {"text": "Possibly dead Python function: canonical_physics_bucket_key"}, "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-c59de841bc95af5f", "name": "Possibly dead Python function: beskok_karniadakis_civan_alpha", "shortDescription": {"text": "Possibly dead Python function: beskok_karniadakis_civan_alpha"}, "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-eadd2f4d6055497f", "name": "Possibly dead Python function: save_run", "shortDescription": {"text": "Possibly dead Python function: save_run"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3a065b985816488a", "name": "Possibly dead Python function: load_run", "shortDescription": {"text": "Possibly dead Python function: load_run"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-87d7c199e9585ec5", "name": "Possibly dead Python function: delete_run", "shortDescription": {"text": "Possibly dead Python function: delete_run"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-02f06986c2bc535b", "name": "Possibly dead Python function: save_composition", "shortDescription": {"text": "Possibly dead Python function: save_composition"}, "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-d5c39ea97015cea7", "name": "Possibly dead Python function: load_all", "shortDescription": {"text": "Possibly dead Python function: load_all"}, "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-e997463c8c128c0c", "name": "Possibly dead Python function: delete_composition", "shortDescription": {"text": "Possibly dead Python function: delete_composition"}, "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-f62d34bcd20757be", "name": "Possibly dead Python function: silica_fume_fraction_of_feedstock", "shortDescription": {"text": "Possibly dead Python function: silica_fume_fraction_of_feedstock"}, "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-9d349242fbeac21c", "name": "Possibly dead Python function: estimate_total_energy_kWh", "shortDescription": {"text": "Possibly dead Python function: estimate_total_energy_kWh"}, "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-9a2c7a3b3e14a766", "name": "Possibly dead Python function: per_hour_summaries", "shortDescription": {"text": "Possibly dead Python function: per_hour_summaries"}, "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-5b571cd9631371ed", "name": "Possibly dead Python function: operator_decisions", "shortDescription": {"text": "Possibly dead Python function: operator_decisions"}, "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-0d6eb6ab755dfc27", "name": "Possibly dead Python function: evaluate_root_branch", "shortDescription": {"text": "Possibly dead Python function: evaluate_root_branch"}, "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-5f24acfed9b7b76a", "name": "Possibly dead Python function: evaluate_path", "shortDescription": {"text": "Possibly dead Python function: evaluate_path"}, "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-3e7c0623d919d40e", "name": "Possibly dead Python function: evaluate_branch", "shortDescription": {"text": "Possibly dead Python function: evaluate_branch"}, "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-7495329370b202ae", "name": "Possibly dead Python function: evaluate_ti_retention", "shortDescription": {"text": "Possibly dead Python function: evaluate_ti_retention"}, "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-42cba25326009262", "name": "Possibly dead Python function: evaluate_c6_proceed", "shortDescription": {"text": "Possibly dead Python function: evaluate_c6_proceed"}, "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-d7d48fb57a557cf1", "name": "Possibly dead Python function: build_sio_tsweep_convergence_markdown", "shortDescription": {"text": "Possibly dead Python function: build_sio_tsweep_convergence_markdown"}, "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-a20de3a324816213", "name": "Stray `console.log` in TS/JS \u2014 web/static/js/simulator-decisions.js:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 web/static/js/simulator-decisions.js:7"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7097996b297c01c9", "name": "Stray `console.log` in TS/JS \u2014 web/static/js/simulator-socket.js:41", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 web/static/js/simulator-socket.js:41"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3b1779a00d2cd058", "name": "Privileged port 35 in use", "shortDescription": {"text": "Privileged port 35 in use"}, "fullDescription": {"text": "Port 35 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "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-0c21a5d0dcc2c621", "name": "Very large file: engines/builtin/metallothermic_step.py (1374 lines)", "shortDescription": {"text": "Very large file: engines/builtin/metallothermic_step.py (1374 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-4a95c2c0103eec27", "name": "Very large file: engines/builtin/stage0_pretreatment.py (1387 lines)", "shortDescription": {"text": "Very large file: engines/builtin/stage0_pretreatment.py (1387 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-e9aa680576776060", "name": "Very large file: tests/test_web_optimizer.py (1953 lines)", "shortDescription": {"text": "Very large file: tests/test_web_optimizer.py (1953 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-214eb03e3833287c", "name": "Very large file: tests/test_feedstock_inventory.py (1420 lines)", "shortDescription": {"text": "Very large file: tests/test_feedstock_inventory.py (1420 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-6a3bd456b5e75cf8", "name": "Very large file: tests/test_optimizer_evaluate.py (2770 lines)", "shortDescription": {"text": "Very large file: tests/test_optimizer_evaluate.py (2770 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-6cb1f74a91008458", "name": "Very large file: tests/test_optimizer_study.py (2142 lines)", "shortDescription": {"text": "Very large file: tests/test_optimizer_study.py (2142 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-98707b422c69c589", "name": "Very large file: tests/chemistry/corpus_fixtures.py (1603 lines)", "shortDescription": {"text": "Very large file: tests/chemistry/corpus_fixtures.py (1603 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-775aeb8252f89354", "name": "Very large file: tests/chemistry/test_corpus_anchored_parity.py (1614 lines)", "shortDescription": {"text": "Very large file: tests/chemistry/test_corpus_anchored_parity.py (1614 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-fdc96e9084db9e58", "name": "Very large file: scripts/epoch_grind.py (1577 lines)", "shortDescription": {"text": "Very large file: scripts/epoch_grind.py (1577 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-959568e5c034fb61", "name": "Very large file: _attic/factsage/factsage.py (1362 lines)", "shortDescription": {"text": "Very large file: _attic/factsage/factsage.py (1362 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-e61c51193f7f4fc7", "name": "Very large file: simulator/evaporation.py (1421 lines)", "shortDescription": {"text": "Very large file: simulator/evaporation.py (1421 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-de26aeea92bcb10f", "name": "Very large file: simulator/reduced_real_determinism.py (2822 lines)", "shortDescription": {"text": "Very large file: simulator/reduced_real_determinism.py (2822 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-0c6e6e2ac77078cc", "name": "Very large file: simulator/extraction.py (1262 lines)", "shortDescription": {"text": "Very large file: simulator/extraction.py (1262 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-4a29c602ed4c6ba1", "name": "Very large file: simulator/core.py (5807 lines)", "shortDescription": {"text": "Very large file: simulator/core.py (5807 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-9d881210b485243f", "name": "Very large file: simulator/condensation.py (2480 lines)", "shortDescription": {"text": "Very large file: simulator/condensation.py (2480 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-f2645bdd95776fcf", "name": "Very large file: simulator/runner.py (3335 lines)", "shortDescription": {"text": "Very large file: simulator/runner.py (3335 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-0646c87bff86190c", "name": "Very large file: simulator/campaigns.py (1229 lines)", "shortDescription": {"text": "Very large file: simulator/campaigns.py (1229 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-fe0d7c06df2fb6e8", "name": "Very large file: simulator/accounting/queries.py (1787 lines)", "shortDescription": {"text": "Very large file: simulator/accounting/queries.py (1787 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-12bdc32a5c828946", "name": "Very large file: simulator/melt_backend/magemin.py (1301 lines)", "shortDescription": {"text": "Very large file: simulator/melt_backend/magemin.py (1301 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-551aeca0195f7684", "name": "Very large file: simulator/melt_backend/alphamelts.py (2241 lines)", "shortDescription": {"text": "Very large file: simulator/melt_backend/alphamelts.py (2241 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-312e25629e265f6a", "name": "Very large file: simulator/optimize/objective.py (3543 lines)", "shortDescription": {"text": "Very large file: simulator/optimize/objective.py (3543 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-89c3a9ad1dd0ce67", "name": "Very large file: simulator/optimize/study.py (2285 lines)", "shortDescription": {"text": "Very large file: simulator/optimize/study.py (2285 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-ee26bd59f91ca84c", "name": "Very large file: simulator/optimize/evaluate.py (3496 lines)", "shortDescription": {"text": "Very large file: simulator/optimize/evaluate.py (3496 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-bd9a9902240a86bd", "name": "Very large file: simulator/optimize/strategy/staged.py (1346 lines)", "shortDescription": {"text": "Very large file: simulator/optimize/strategy/staged.py (1346 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-f6d011c95967238d", "name": "Very large file: web/routes.py (2258 lines)", "shortDescription": {"text": "Very large file: web/routes.py (2258 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-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-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 144 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-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: license, ci. 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-3e375a53256cc177", "name": "Network/subprocess call without timeout or try/except \u2014 install-dependencies.py:138", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 install-dependencies.py:138"}, "fullDescription": {"text": "`urllib.request.urlopen(...)` 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-d0f32ca85551c4fd", "name": "Commented-code block (9 lines) in install-engines.py:194", "shortDescription": {"text": "Commented-code block (9 lines) in install-engines.py:194"}, "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-ae8e0c4ebfe0a69f", "name": "Network/subprocess call without timeout or try/except \u2014 install-engines.py:226", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 install-engines.py:226"}, "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-92c78b4cb62772e7", "name": "Commented-code block (5 lines) in engines/vaporock/provider.py:100", "shortDescription": {"text": "Commented-code block (5 lines) in engines/vaporock/provider.py:100"}, "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-78ef670c6cfafe44", "name": "Commented-code block (10 lines) in engines/builtin/evaporation_flux.py:163", "shortDescription": {"text": "Commented-code block (10 lines) in engines/builtin/evaporation_flux.py:163"}, "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-7636ad8c6cbde705", "name": "Commented-code block (5 lines) in engines/builtin/condensation_route.py:163", "shortDescription": {"text": "Commented-code block (5 lines) in engines/builtin/condensation_route.py:163"}, "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-943d0e2d4e3e1100", "name": "Commented-code block (6 lines) in engines/builtin/metallothermic_step.py:251", "shortDescription": {"text": "Commented-code block (6 lines) in engines/builtin/metallothermic_step.py:251"}, "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-4fbca88e5baef360", "name": "Commented-code block (8 lines) in engines/builtin/_common.py:216", "shortDescription": {"text": "Commented-code block (8 lines) in engines/builtin/_common.py:216"}, "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-7c237db364122dab", "name": "Commented-code block (9 lines) in engines/builtin/stage0_pretreatment.py:158", "shortDescription": {"text": "Commented-code block (9 lines) in engines/builtin/stage0_pretreatment.py:158"}, "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-743c5d178f6bdc50", "name": "Commented-code block (12 lines) in engines/builtin/vapor_pressure.py:65", "shortDescription": {"text": "Commented-code block (12 lines) in engines/builtin/vapor_pressure.py:65"}, "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-e3bee3f3895bba94", "name": "Commented-code block (5 lines) in engines/builtin/evaporation_transition.py:189", "shortDescription": {"text": "Commented-code block (5 lines) in engines/builtin/evaporation_transition.py:189"}, "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-d7602c1ad02f6ce6", "name": "Commented-code block (7 lines) in engines/builtin/electrolysis_step.py:158", "shortDescription": {"text": "Commented-code block (7 lines) in engines/builtin/electrolysis_step.py:158"}, "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-66efc768b5161ea0", "name": "Commented-code block (5 lines) in engines/alphamelts/parser.py:84", "shortDescription": {"text": "Commented-code block (5 lines) in engines/alphamelts/parser.py:84"}, "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-921096359819e5dd", "name": "Commented-code block (6 lines) in engines/alphamelts/provider.py:125", "shortDescription": {"text": "Commented-code block (6 lines) in engines/alphamelts/provider.py:125"}, "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-14a3b1b8ee3d7895", "name": "Commented-code block (12 lines) in engines/alphamelts/thermoengine.py:238", "shortDescription": {"text": "Commented-code block (12 lines) in engines/alphamelts/thermoengine.py:238"}, "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-aeedd92819bc750c", "name": "Commented-code block (5 lines) in engines/magemin/provider.py:83", "shortDescription": {"text": "Commented-code block (5 lines) in engines/magemin/provider.py:83"}, "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-c49bb8b1c68bd852", "name": "Commented-code block (8 lines) in tests/test_backend_selection.py:322", "shortDescription": {"text": "Commented-code block (8 lines) in tests/test_backend_selection.py:322"}, "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-55c2cc65a16d8250", "name": "Commented-code block (7 lines) in tests/test_overhead_accounting.py:253", "shortDescription": {"text": "Commented-code block (7 lines) in tests/test_overhead_accounting.py:253"}, "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-3f0a0a1f082dd958", "name": "Legacy-named symbol `_profile_copy` in tests/test_optimizer_profiles.py:27", "shortDescription": {"text": "Legacy-named symbol `_profile_copy` in tests/test_optimizer_profiles.py:27"}, "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-f13287a23283adb3", "name": "Commented-code block (6 lines) in tests/test_s4_shuttle_broadening.py:275", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_s4_shuttle_broadening.py:275"}, "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-9e0fc504f420bb90", "name": "Commented-code block (9 lines) in tests/test_sio_tsweep_smoke.py:159", "shortDescription": {"text": "Commented-code block (9 lines) in tests/test_sio_tsweep_smoke.py:159"}, "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-7e8e71719eeb6c3e", "name": "Commented-code block (5 lines) in tests/test_optimizer_strategy_nsga2.py:337", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_optimizer_strategy_nsga2.py:337"}, "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-7d9aec90523bf5f5", "name": "Legacy-named symbol `_artifact_copy` in tests/test_optimizer_results_store.py:201", "shortDescription": {"text": "Legacy-named symbol `_artifact_copy` in tests/test_optimizer_results_store.py:201"}, "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-e4e1318a342a7372", "name": "Legacy-named symbol `lunar_mare_jsc_1a_legacy` in tests/test_vpr_p4_feedstocks.py:17", "shortDescription": {"text": "Legacy-named symbol `lunar_mare_jsc_1a_legacy` in tests/test_vpr_p4_feedstocks.py:17"}, "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-40d39eeb438d7dc6", "name": "Commented-code block (6 lines) in tests/test_mre_voltage_sequence_yaml.py:374", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_mre_voltage_sequence_yaml.py:374"}, "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-a78e5a96791c67cc", "name": "Commented-code block (5 lines) in tests/test_north_star_baseline.py:43", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_north_star_baseline.py:43"}, "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-d770905f56613c4c", "name": "Commented-code block (7 lines) in tests/test_extraction_ledger.py:156", "shortDescription": {"text": "Commented-code block (7 lines) in tests/test_extraction_ledger.py:156"}, "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-04631abd7a59b845", "name": "Legacy-named symbol `C_legacy` in tests/test_pipe_conductance_m_avg.py:161", "shortDescription": {"text": "Legacy-named symbol `C_legacy` in tests/test_pipe_conductance_m_avg.py:161"}, "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-e39c04f1932faee7", "name": "Commented-code block (6 lines) in tests/test_magemin_backend.py:49", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_magemin_backend.py:49"}, "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-06801cf77f38c65e", "name": "Commented-code block (14 lines) in tests/test_vaporock_backend.py:47", "shortDescription": {"text": "Commented-code block (14 lines) in tests/test_vaporock_backend.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-a5691bd18107bf43", "name": "Commented-code block (5 lines) in tests/test_0_5_4_live_path_integration.py:211", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_0_5_4_live_path_integration.py:211"}, "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-f07957bbdf2d7d54", "name": "Commented-code block (6 lines) in tests/test_mass_balance.py:304", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_mass_balance.py:304"}, "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-fc924fc927a7f8c7", "name": "Legacy-named symbol `test_seed_job_cache_creates_empty_shard_without_base_copy` in tests/test_grind_scratch_reduction.py", "shortDescription": {"text": "Legacy-named symbol `test_seed_job_cache_creates_empty_shard_without_base_copy` in tests/test_grind_scratch_reduction.py:135"}, "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-d399753fd199e236", "name": "Commented-code block (5 lines) in tests/test_optimizer_fidelity.py:952", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_optimizer_fidelity.py:952"}, "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-0b0f9ae73310b209", "name": "Legacy-named symbol `vaporock_v1` in tests/test_runner_smoke.py:853", "shortDescription": {"text": "Legacy-named symbol `vaporock_v1` in tests/test_runner_smoke.py:853"}, "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-4223c68a2cbef6aa", "name": "Commented-code block (7 lines) in tests/test_session_cli.py:209", "shortDescription": {"text": "Commented-code block (7 lines) in tests/test_session_cli.py:209"}, "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-07165b093ea385ad", "name": "Commented-code block (49 lines) in tests/test_sio_yield_regression.py:28", "shortDescription": {"text": "Commented-code block (49 lines) in tests/test_sio_yield_regression.py:28"}, "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-791b6aafaf1a3be7", "name": "Legacy-named symbol `test_inactive_metal_species_do_not_diverge_between_provider_and_legacy` in tests/chemistry/test_bui", "shortDescription": {"text": "Legacy-named symbol `test_inactive_metal_species_do_not_diverge_between_provider_and_legacy` in tests/chemistry/test_builtin_vapor_pressure_provider.py:250"}, "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-0d5d20c475a0330d", "name": "Commented-code block (5 lines) in tests/chemistry/test_builtin_vapor_pressure_provider.py:60", "shortDescription": {"text": "Commented-code block (5 lines) in tests/chemistry/test_builtin_vapor_pressure_provider.py:60"}, "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-aa79b0a9dd573bae", "name": "Commented-code block (5 lines) in tests/chemistry/corpus_fixtures.py:76", "shortDescription": {"text": "Commented-code block (5 lines) in tests/chemistry/corpus_fixtures.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-8ec7202d74a8511a", "name": "Commented-code block (6 lines) in tests/chemistry/test_sio_chain_coherence.py:14", "shortDescription": {"text": "Commented-code block (6 lines) in tests/chemistry/test_sio_chain_coherence.py:14"}, "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-a0408fd941eafa07", "name": "Commented-code block (6 lines) in tests/chemistry/test_series_resistance_flux.py:251", "shortDescription": {"text": "Commented-code block (6 lines) in tests/chemistry/test_series_resistance_flux.py:251"}, "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-352bd4181158299d", "name": "Commented-code block (6 lines) in tests/chemistry/conftest.py:73", "shortDescription": {"text": "Commented-code block (6 lines) in tests/chemistry/conftest.py:73"}, "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-1c41c22624bff601", "name": "Commented-code block (14 lines) in tests/chemistry/test_builtin_evaporation_flux_provider.py:339", "shortDescription": {"text": "Commented-code block (14 lines) in tests/chemistry/test_builtin_evaporation_flux_provider.py:339"}, "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-c70ba9a0d48cfd6d", "name": "Commented-code block (5 lines) in tests/chemistry/test_writer_purity.py:30", "shortDescription": {"text": "Commented-code block (5 lines) in tests/chemistry/test_writer_purity.py:30"}, "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-71f11e5d59f87de5", "name": "Commented-code block (10 lines) in tests/chemistry/test_corpus_anchored_parity.py:518", "shortDescription": {"text": "Commented-code block (10 lines) in tests/chemistry/test_corpus_anchored_parity.py:518"}, "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-63f79a7a85d08c3d", "name": "Commented-code block (8 lines) in tests/chemistry/test_kernel_control_audit.py:166", "shortDescription": {"text": "Commented-code block (8 lines) in tests/chemistry/test_kernel_control_audit.py:166"}, "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-e9ad44f70df1370d", "name": "Commented-code block (6 lines) in tests/chemistry/test_builtin_evaporation_transition_provider.py:257", "shortDescription": {"text": "Commented-code block (6 lines) in tests/chemistry/test_builtin_evaporation_transition_provider.py:257"}, "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-430ec3e4cd54ff44", "name": "Legacy-named symbol `mol_Al_consumed_legacy` in tests/chemistry/test_builtin_metallothermic_step_provider.py:1123", "shortDescription": {"text": "Legacy-named symbol `mol_Al_consumed_legacy` in tests/chemistry/test_builtin_metallothermic_step_provider.py:1123"}, "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-ddaa65a6da370824", "name": "Commented-code block (6 lines) in tests/chemistry/test_builtin_metallothermic_step_provider.py:386", "shortDescription": {"text": "Commented-code block (6 lines) in tests/chemistry/test_builtin_metallothermic_step_provider.py:386"}, "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-3419a4a4f9dd3c8f", "name": "Commented-code block (16 lines) in tests/chemistry/test_sio_step_condensation.py:50", "shortDescription": {"text": "Commented-code block (16 lines) in tests/chemistry/test_sio_step_condensation.py:50"}, "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-c0265a954bb4288f", "name": "Commented-code block (104 lines) in tests/chemistry/test_sio_step_wall_deposit.py:35", "shortDescription": {"text": "Commented-code block (104 lines) in tests/chemistry/test_sio_step_wall_deposit.py:35"}, "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-045a3f79e30a1755", "name": "Commented-code block (5 lines) in tests/chemistry/test_builtin_condensation_route_provider.py:279", "shortDescription": {"text": "Commented-code block (5 lines) in tests/chemistry/test_builtin_condensation_route_provider.py:279"}, "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-43ed04f0e0da6014", "name": "Commented-code block (6 lines) in tests/chemistry/test_builtin_electrolysis_step_provider.py:884", "shortDescription": {"text": "Commented-code block (6 lines) in tests/chemistry/test_builtin_electrolysis_step_provider.py:884"}, "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-220141cea980ab9a", "name": "Commented-code block (10 lines) in tests/chemistry/test_evaporation_freeze_gate.py:121", "shortDescription": {"text": "Commented-code block (10 lines) in tests/chemistry/test_evaporation_freeze_gate.py:121"}, "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-548c57da00184c29", "name": "Commented-code block (10 lines) in tests/chemistry/test_vaporock_authority_promotion.py:140", "shortDescription": {"text": "Commented-code block (10 lines) in tests/chemistry/test_vaporock_authority_promotion.py:140"}, "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-ac51b47ec5a6a2b0", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/grind_status.py:26", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/grind_status.py:26"}, "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-7eaa170fc07d7f03", "name": "Commented-code block (5 lines) in scripts/run_fidelity_doe.py:109", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/run_fidelity_doe.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-199619b34da865d7", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/recipe_db_build.py:39", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/recipe_db_build.py:39"}, "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-28b1a44b61c86acd", "name": "Commented-code block (6 lines) in _attic/conftest.py:1", "shortDescription": {"text": "Commented-code block (6 lines) in _attic/conftest.py:1"}, "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-6ed2c3e42bafa390", "name": "Legacy-named symbol `oxide_mol_fraction_p_fO2_v2` in simulator/evaporation.py:353", "shortDescription": {"text": "Legacy-named symbol `oxide_mol_fraction_p_fO2_v2` in simulator/evaporation.py:353"}, "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-c86a462e98e2012e", "name": "Commented-code block (5 lines) in simulator/evaporation.py:141", "shortDescription": {"text": "Commented-code block (5 lines) in simulator/evaporation.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-2969d44f7deed6c1", "name": "Commented-code block (5 lines) in simulator/extraction.py:167", "shortDescription": {"text": "Commented-code block (5 lines) in simulator/extraction.py:167"}, "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-33674e8b77491ea9", "name": "Commented-code block (6 lines) in simulator/three_product_report.py:39", "shortDescription": {"text": "Commented-code block (6 lines) in simulator/three_product_report.py:39"}, "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-25932fcca3b72152", "name": "Commented-code block (7 lines) in simulator/equilibrium.py:71", "shortDescription": {"text": "Commented-code block (7 lines) in simulator/equilibrium.py:71"}, "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-0aace94650a931bc", "name": "Commented-code block (11 lines) in simulator/wall_advisor.py:41", "shortDescription": {"text": "Commented-code block (11 lines) in simulator/wall_advisor.py:41"}, "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-934c9b0f11651c31", "name": "Commented-code block (9 lines) in simulator/run_executor.py:77", "shortDescription": {"text": "Commented-code block (9 lines) in simulator/run_executor.py:77"}, "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-76ccc1b6dbd723ca", "name": "Commented-code block (6 lines) in simulator/core.py:312", "shortDescription": {"text": "Commented-code block (6 lines) in simulator/core.py:312"}, "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-915d5ae54edff23f", "name": "Commented-code block (9 lines) in simulator/condensation.py:116", "shortDescription": {"text": "Commented-code block (9 lines) in simulator/condensation.py:116"}, "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-b456c0e1b916b65c", "name": "Commented-code block (10 lines) in simulator/overhead.py:53", "shortDescription": {"text": "Commented-code block (10 lines) in simulator/overhead.py:53"}, "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-9ade4bbfa0264e15", "name": "Commented-code block (7 lines) in simulator/session.py:375", "shortDescription": {"text": "Commented-code block (7 lines) in simulator/session.py:375"}, "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-4bd30b6deca92c9c", "name": "Legacy-named symbol `vaporock_v1` in simulator/runner.py:2811", "shortDescription": {"text": "Legacy-named symbol `vaporock_v1` in simulator/runner.py:2811"}, "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-96b37c5d47dc57d2", "name": "Commented-code block (8 lines) in simulator/runner.py:1015", "shortDescription": {"text": "Commented-code block (8 lines) in simulator/runner.py:1015"}, "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-9d6a88cf30f2e58c", "name": "Stub function `exec_module` (body is just `pass`/`return`) \u2014 simulator/runner.py:3297", "shortDescription": {"text": "Stub function `exec_module` (body is just `pass`/`return`) \u2014 simulator/runner.py:3297"}, "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-f3bb05ef3707fcaf", "name": "Commented-code block (8 lines) in simulator/state.py:115", "shortDescription": {"text": "Commented-code block (8 lines) in simulator/state.py:115"}, "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-94e8273e5d05174b", "name": "Commented-code block (20 lines) in simulator/campaigns.py:481", "shortDescription": {"text": "Commented-code block (20 lines) in simulator/campaigns.py:481"}, "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-4fa5cee76ef9fc10", "name": "Commented-code block (7 lines) in simulator/accounting/ledger.py:20", "shortDescription": {"text": "Commented-code block (7 lines) in simulator/accounting/ledger.py:20"}, "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-1367a127daadd29a", "name": "Commented-code block (5 lines) in simulator/chemistry/kernel/__init__.py:42", "shortDescription": {"text": "Commented-code block (5 lines) in simulator/chemistry/kernel/__init__.py:42"}, "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-a48d1f2c007eb8b1", "name": "Commented-code block (7 lines) in simulator/chemistry/kernel/registry.py:109", "shortDescription": {"text": "Commented-code block (7 lines) in simulator/chemistry/kernel/registry.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-ab5ad80309adafb4", "name": "Commented-code block (6 lines) in simulator/chemistry/kernel/validation.py:49", "shortDescription": {"text": "Commented-code block (6 lines) in simulator/chemistry/kernel/validation.py:49"}, "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-3cafd4ac597d09eb", "name": "Commented-code block (6 lines) in simulator/chemistry/kernel/planner.py:180", "shortDescription": {"text": "Commented-code block (6 lines) in simulator/chemistry/kernel/planner.py:180"}, "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-37194e2428f0d855", "name": "Commented-code block (6 lines) in simulator/melt_backend/magemin.py:367", "shortDescription": {"text": "Commented-code block (6 lines) in simulator/melt_backend/magemin.py:367"}, "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-c90a8cf2f3aca710", "name": "Commented-code block (5 lines) in simulator/melt_backend/sulfsat.py:80", "shortDescription": {"text": "Commented-code block (5 lines) in simulator/melt_backend/sulfsat.py:80"}, "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-ddfff0a71b7fe8a0", "name": "Commented-code block (8 lines) in simulator/melt_backend/base.py:264", "shortDescription": {"text": "Commented-code block (8 lines) in simulator/melt_backend/base.py:264"}, "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-3b263ec2bc636777", "name": "Commented-code block (9 lines) in simulator/melt_backend/alphamelts.py:228", "shortDescription": {"text": "Commented-code block (9 lines) in simulator/melt_backend/alphamelts.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-05a2809a503a107f", "name": "Commented-code block (6 lines) in simulator/melt_backend/vaporock.py:114", "shortDescription": {"text": "Commented-code block (6 lines) in simulator/melt_backend/vaporock.py:114"}, "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-aef579073ebfb6de", "name": "Commented-code block (5 lines) in simulator/optimize/doe.py:42", "shortDescription": {"text": "Commented-code block (5 lines) in simulator/optimize/doe.py:42"}, "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-3665957e62c512d8", "name": "Commented-code block (5 lines) in simulator/optimize/recipe.py:633", "shortDescription": {"text": "Commented-code block (5 lines) in simulator/optimize/recipe.py:633"}, "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-fd099b01846be733", "name": "Legacy-named symbol `_migrate_objective_values_v2` in simulator/optimize/results_store.py:497", "shortDescription": {"text": "Legacy-named symbol `_migrate_objective_values_v2` in simulator/optimize/results_store.py:497"}, "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-b36d9422980d1454", "name": "`fetch()` without try/.catch or AbortSignal \u2014 web/static/js/simulator-controls.js:357", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 web/static/js/simulator-controls.js:357"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ad1f2c0971b89ce0", "name": "10 env vars used in code but missing from .env.example", "shortDescription": {"text": "10 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `DYLD_FALLBACK_LIBRARY_PATH`, `FIDELITY_DIAGNOSTIC_STUB_HIGH`, `FIDELITY_HIGH_BACKEND`, `FIDELITY_HIGH_HOURS`, `FIDELITY_SKIP_PROFILE_CONSTRAINTS`, `OPTIMIZER_RUNS_DIR`, `REGOLITH_HOST`, `REGOLITH_PORT` + 2 more. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "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:\nengines/builtin/condensation_route.py:dispatch, engines/builtin/evaporation_transition.py:dispatch\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:\nengines/alphamelts/subprocess_runner.py:equilibrate_via_subprocess, engines/alphamelts/petthermo.py:equilibrate_via_python_api, engines/alphamelts/thermoengine.py:equilibrate_via_thermoengine\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-02525d39071dd2c7", "name": "Near-duplicate function bodies in 5 places", "shortDescription": {"text": "Near-duplicate function bodies in 5 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\n_attic/factsage/factsage.py:equilibrate, simulator/melt_backend/base.py:equilibrate, simulator/melt_backend/base.py:equilibrate, simulator/melt_backend/alphamelts.py:equilibrate\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-45454be1e78569b3", "name": "Flask mutation route `optimizer_certify_submit` without `@login_required` \u2014 web/routes.py:1983", "shortDescription": {"text": "Flask mutation route `optimizer_certify_submit` without `@login_required` \u2014 web/routes.py:1983"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ce1940bc0252e308", "name": "Flask mutation route `optimizer_certify_submit` without `@login_required` \u2014 web/routes.py:1984", "shortDescription": {"text": "Flask mutation route `optimizer_certify_submit` without `@login_required` \u2014 web/routes.py:1984"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e6a9f8637c65cc01", "name": "Flask mutation route `optimizer_job_submit` without `@login_required` \u2014 web/routes.py:2004", "shortDescription": {"text": "Flask mutation route `optimizer_job_submit` without `@login_required` \u2014 web/routes.py:2004"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8bacc835c19e6b6d", "name": "Flask mutation route `optimizer_job_submit` without `@login_required` \u2014 web/routes.py:2005", "shortDescription": {"text": "Flask mutation route `optimizer_job_submit` without `@login_required` \u2014 web/routes.py:2005"}, "fullDescription": {"text": "Flask route declares POST/PUT/DELETE/PATCH methods without an auth decorator. Add `@login_required` (Flask-Login) or equivalent."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1a6d91f2236825bf", "name": "Unused endpoint: ANY /", "shortDescription": {"text": "Unused endpoint: ANY /"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-690da63c8dc82da3", "name": "Unused endpoint: ANY /api/wall-risk", "shortDescription": {"text": "Unused endpoint: ANY /api/wall-risk"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/wall-risk` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e7188f4147678ff2", "name": "Unused endpoint: ANY /partials/wall-risk-panel", "shortDescription": {"text": "Unused endpoint: ANY /partials/wall-risk-panel"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /partials/wall-risk-panel` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1eaf6266b5b1dae1", "name": "Unused endpoint: ANY /api/ceramic-rump", "shortDescription": {"text": "Unused endpoint: ANY /api/ceramic-rump"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/ceramic-rump` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3936992a5a62b4b1", "name": "Unused endpoint: ANY /partials/ceramic-rump-panel", "shortDescription": {"text": "Unused endpoint: ANY /partials/ceramic-rump-panel"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /partials/ceramic-rump-panel` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-442b85c40b5bcc9b", "name": "Unused endpoint: ANY /optimizer", "shortDescription": {"text": "Unused endpoint: ANY /optimizer"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /optimizer` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0516efc681d99cb6", "name": "Unused endpoint: ANY /partials/optimizer-table", "shortDescription": {"text": "Unused endpoint: ANY /partials/optimizer-table"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /partials/optimizer-table` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ce665d44ba19cd51", "name": "Unused endpoint: ANY /partials/optimizer-jobs", "shortDescription": {"text": "Unused endpoint: ANY /partials/optimizer-jobs"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /partials/optimizer-jobs` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a86b269a0c6e2529", "name": "Unused endpoint: ANY /partials/optimizer-jobs/<job_id>", "shortDescription": {"text": "Unused endpoint: ANY /partials/optimizer-jobs/<job_id>"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /partials/optimizer-jobs/<job_id>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9658764a96cdbe44", "name": "Unused endpoint: ANY /api/optimizer/jobs", "shortDescription": {"text": "Unused endpoint: ANY /api/optimizer/jobs"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/optimizer/jobs` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e4673c7cc4ff3e40", "name": "Unused endpoint: ANY /api/optimizer/certify", "shortDescription": {"text": "Unused endpoint: ANY /api/optimizer/certify"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/optimizer/certify` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ff036819f2c5780f", "name": "Unused endpoint: ANY /optimizer/certify", "shortDescription": {"text": "Unused endpoint: ANY /optimizer/certify"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /optimizer/certify` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ec2a0eedbe41178e", "name": "Unused endpoint: ANY /optimizer/jobs", "shortDescription": {"text": "Unused endpoint: ANY /optimizer/jobs"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /optimizer/jobs` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-757d78b75d58f99c", "name": "Unused endpoint: ANY /api/optimizer/jobs/<job_id>", "shortDescription": {"text": "Unused endpoint: ANY /api/optimizer/jobs/<job_id>"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/optimizer/jobs/<job_id>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8961d4566fd87797", "name": "Unused endpoint: ANY /optimizer/jobs/<job_id>", "shortDescription": {"text": "Unused endpoint: ANY /optimizer/jobs/<job_id>"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /optimizer/jobs/<job_id>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2d9479c3ad33283a", "name": "Unused endpoint: ANY /optimizer/runs/<path:run_id>/results/<cache_key>", "shortDescription": {"text": "Unused endpoint: ANY /optimizer/runs/<path:run_id>/results/<cache_key>"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /optimizer/runs/<path:run_id>/results/<cache_key>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-847bb24fc5f0a0ea", "name": "Unused endpoint: ANY /optimizer/runs/<path:run_id>/results/<cache_key>/recipe.yaml", "shortDescription": {"text": "Unused endpoint: ANY /optimizer/runs/<path:run_id>/results/<cache_key>/recipe.yaml"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /optimizer/runs/<path:run_id>/results/<cache_key>/recipe.yaml` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6856799867bc16d3", "name": "Unused endpoint: ANY /api/feedstocks", "shortDescription": {"text": "Unused endpoint: ANY /api/feedstocks"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/feedstocks` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7fbef0bbe9c56358", "name": "Unused endpoint: ANY /api/setpoints", "shortDescription": {"text": "Unused endpoint: ANY /api/setpoints"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/setpoints` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6f0b99267458861c", "name": "Unused endpoint: ANY /api/feedstock/<key>", "shortDescription": {"text": "Unused endpoint: ANY /api/feedstock/<key>"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/feedstock/<key>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4190a0f880cdc28c", "name": "Unused endpoint: ANY /api/optimizer/runs", "shortDescription": {"text": "Unused endpoint: ANY /api/optimizer/runs"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/optimizer/runs` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b49cc71fb6b65206", "name": "Unused endpoint: ANY /api/optimizer/feedstock-profiles", "shortDescription": {"text": "Unused endpoint: ANY /api/optimizer/feedstock-profiles"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/optimizer/feedstock-profiles` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bb32347e19bde77d", "name": "Unused endpoint: ANY /api/mre-preset-catalog", "shortDescription": {"text": "Unused endpoint: ANY /api/mre-preset-catalog"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/mre-preset-catalog` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-85ae61194a3726f4", "name": "Unused endpoint: ANY /api/knudsen-config", "shortDescription": {"text": "Unused endpoint: ANY /api/knudsen-config"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/knudsen-config` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-23a1b303bd47defb", "name": "Unused endpoint: ANY /partials/mre-preset-catalog", "shortDescription": {"text": "Unused endpoint: ANY /partials/mre-preset-catalog"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /partials/mre-preset-catalog` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a8c1aec489ea1747", "name": "Unused endpoint: ANY /api/optimizer/leaderboard", "shortDescription": {"text": "Unused endpoint: ANY /api/optimizer/leaderboard"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/optimizer/leaderboard` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ca335b653c168cf3", "name": "Unused endpoint: ANY /partials/feedstock-card/<key>", "shortDescription": {"text": "Unused endpoint: ANY /partials/feedstock-card/<key>"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /partials/feedstock-card/<key>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-22f0d730475da9a8", "name": "Unused endpoint: ANY /api/additive-calc/<key>", "shortDescription": {"text": "Unused endpoint: ANY /api/additive-calc/<key>"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /api/additive-calc/<key>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dddd1019e6939b4b", "name": "Unused endpoint: ANY /partials/disclosure/<section>", "shortDescription": {"text": "Unused endpoint: ANY /partials/disclosure/<section>"}, "fullDescription": {"text": "`web/routes.py` declares `ANY /partials/disclosure/<section>` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/19689"}, "properties": {"repository": "simonrowland/regolith-pyrolysis-simulator", "repoUrl": "https://github.com/simonrowland/regolith-pyrolysis-simulator", "branch": "main"}, "results": [{"ruleId": "scanner-f931154f29e72b50", "level": "note", "message": {"text": "Possibly dead Python function: is_mars_stype_feedstock"}, "properties": {"repobilityId": "c0c1eb7e80097bd8", "scanner": "scanner-primary", "fingerprint": "f931154f29e72b50", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/build_c6_manifests.py:48"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7f29f60fc65e70c9", "level": "note", "message": {"text": "Possibly dead Python function: timed"}, "properties": {"repobilityId": "ef86d2b3ddf94214", "scanner": "scanner-primary", "fingerprint": "7f29f60fc65e70c9", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/populate_reduced_real_cache.py:294"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5017c7ad26bdfadd", "level": "note", "message": {"text": "Possibly dead Python function: run_pair"}, "properties": {"repobilityId": "41ffd8fabd82693d", "scanner": "scanner-primary", "fingerprint": "5017c7ad26bdfadd", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/recipe_db_build.py:31"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5b2af5e5a9d10572", "level": "note", "message": {"text": "Possibly dead Python function: load_harness_yaml"}, "properties": {"repobilityId": "57c98039fdba1625", "scanner": "scanner-primary", "fingerprint": "5b2af5e5a9d10572", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/stage0_harness.py:639"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b7b37add6cc717e1", "level": "note", "message": {"text": "Possibly dead Python function: clone_for_replay"}, "properties": {"repobilityId": "020649db75b3c552", "scanner": "scanner-primary", "fingerprint": "b7b37add6cc717e1", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/reduced_real_determinism.py:179"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-82b48c0f1b67f279", "level": "note", "message": {"text": "Possibly dead Python function: canonical_composition_mol"}, "properties": {"repobilityId": "aee885ddb7416a7d", "scanner": "scanner-primary", "fingerprint": "82b48c0f1b67f279", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/reduced_real_determinism.py:241"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-327ffe482e9a9631", "level": "note", "message": {"text": "Possibly dead Python function: canonical_physics_bucket_key"}, "properties": {"repobilityId": "060c067d5b8f50ee", "scanner": "scanner-primary", "fingerprint": "327ffe482e9a9631", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/reduced_real_determinism.py:1649"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c59de841bc95af5f", "level": "note", "message": {"text": "Possibly dead Python function: beskok_karniadakis_civan_alpha"}, "properties": {"repobilityId": "bcaacac9b5bcf4b4", "scanner": "scanner-primary", "fingerprint": "c59de841bc95af5f", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/transport_regime.py:366"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-eadd2f4d6055497f", "level": "note", "message": {"text": "Possibly dead Python function: save_run"}, "properties": {"repobilityId": "d50d34fe5680aed2", "scanner": "scanner-primary", "fingerprint": "eadd2f4d6055497f", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/persistence.py:55"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3a065b985816488a", "level": "note", "message": {"text": "Possibly dead Python function: load_run"}, "properties": {"repobilityId": "d260ee43a4765383", "scanner": "scanner-primary", "fingerprint": "3a065b985816488a", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/persistence.py:92"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-87d7c199e9585ec5", "level": "note", "message": {"text": "Possibly dead Python function: delete_run"}, "properties": {"repobilityId": "ac233a88286f6214", "scanner": "scanner-primary", "fingerprint": "87d7c199e9585ec5", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/persistence.py:99"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-02f06986c2bc535b", "level": "note", "message": {"text": "Possibly dead Python function: save_composition"}, "properties": {"repobilityId": "e6ac051a152833a6", "scanner": "scanner-primary", "fingerprint": "02f06986c2bc535b", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/persistence.py:129"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d5c39ea97015cea7", "level": "note", "message": {"text": "Possibly dead Python function: load_all"}, "properties": {"repobilityId": "f03e498dffb18e95", "scanner": "scanner-primary", "fingerprint": "d5c39ea97015cea7", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/persistence.py:144"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e997463c8c128c0c", "level": "note", "message": {"text": "Possibly dead Python function: delete_composition"}, "properties": {"repobilityId": "daa9b5259ceb73ed", "scanner": "scanner-primary", "fingerprint": "e997463c8c128c0c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/persistence.py:148"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f62d34bcd20757be", "level": "note", "message": {"text": "Possibly dead Python function: silica_fume_fraction_of_feedstock"}, "properties": {"repobilityId": "f6c520e8947db0bb", "scanner": "scanner-primary", "fingerprint": "f62d34bcd20757be", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/condensation.py:515"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9d349242fbeac21c", "level": "note", "message": {"text": "Possibly dead Python function: estimate_total_energy_kWh"}, "properties": {"repobilityId": "157020e91452d742", "scanner": "scanner-primary", "fingerprint": "9d349242fbeac21c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/electrolysis.py:291"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9a2c7a3b3e14a766", "level": "note", "message": {"text": "Possibly dead Python function: per_hour_summaries"}, "properties": {"repobilityId": "958381c1cc6a48da", "scanner": "scanner-primary", "fingerprint": "9a2c7a3b3e14a766", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/session.py:511"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5b571cd9631371ed", "level": "note", "message": {"text": "Possibly dead Python function: operator_decisions"}, "properties": {"repobilityId": "4bac93833b387a7f", "scanner": "scanner-primary", "fingerprint": "5b571cd9631371ed", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/session.py:514"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0d6eb6ab755dfc27", "level": "note", "message": {"text": "Possibly dead Python function: evaluate_root_branch"}, "properties": {"repobilityId": "a905364e4fc96499", "scanner": "scanner-primary", "fingerprint": "0d6eb6ab755dfc27", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/decision_tree.py:46"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5f24acfed9b7b76a", "level": "note", "message": {"text": "Possibly dead Python function: evaluate_path"}, "properties": {"repobilityId": "a2f80c0660b70274", "scanner": "scanner-primary", "fingerprint": "5f24acfed9b7b76a", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/decision_tree.py:60"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3e7c0623d919d40e", "level": "note", "message": {"text": "Possibly dead Python function: evaluate_branch"}, "properties": {"repobilityId": "b786187f776241ea", "scanner": "scanner-primary", "fingerprint": "3e7c0623d919d40e", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/decision_tree.py:82"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7495329370b202ae", "level": "note", "message": {"text": "Possibly dead Python function: evaluate_ti_retention"}, "properties": {"repobilityId": "a74b8c7271838177", "scanner": "scanner-primary", "fingerprint": "7495329370b202ae", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/decision_tree.py:101"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-42cba25326009262", "level": "note", "message": {"text": "Possibly dead Python function: evaluate_c6_proceed"}, "properties": {"repobilityId": "a170640e7252922d", "scanner": "scanner-primary", "fingerprint": "42cba25326009262", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/decision_tree.py:115"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d7d48fb57a557cf1", "level": "note", "message": {"text": "Possibly dead Python function: build_sio_tsweep_convergence_markdown"}, "properties": {"repobilityId": "9e0c3fee264414a8", "scanner": "scanner-primary", "fingerprint": "d7d48fb57a557cf1", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "simulator/runner.py:2137"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a20de3a324816213", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 web/static/js/simulator-decisions.js:7"}, "properties": {"repobilityId": "81f0d83d04f69536", "scanner": "scanner-primary", "fingerprint": "a20de3a324816213", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7097996b297c01c9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 web/static/js/simulator-socket.js:41"}, "properties": {"repobilityId": "b721ea381bf06a89", "scanner": "scanner-primary", "fingerprint": "7097996b297c01c9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3b1779a00d2cd058", "level": "warning", "message": {"text": "Privileged port 35 in use"}, "properties": {"repobilityId": "e997ec9811d79c6d", "scanner": "scanner-primary", "fingerprint": "3b1779a00d2cd058", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tests/chemistry/test_corpus_anchored_parity.py"}, "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-0c21a5d0dcc2c621", "level": "note", "message": {"text": "Very large file: engines/builtin/metallothermic_step.py (1374 lines)"}, "properties": {"repobilityId": "365c06721a274d94", "scanner": "scanner-primary", "fingerprint": "0c21a5d0dcc2c621", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-4a95c2c0103eec27", "level": "note", "message": {"text": "Very large file: engines/builtin/stage0_pretreatment.py (1387 lines)"}, "properties": {"repobilityId": "3c0d57996b4cef99", "scanner": "scanner-primary", "fingerprint": "4a95c2c0103eec27", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e9aa680576776060", "level": "note", "message": {"text": "Very large file: tests/test_web_optimizer.py (1953 lines)"}, "properties": {"repobilityId": "8833b5b2cf2bdb87", "scanner": "scanner-primary", "fingerprint": "e9aa680576776060", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-214eb03e3833287c", "level": "note", "message": {"text": "Very large file: tests/test_feedstock_inventory.py (1420 lines)"}, "properties": {"repobilityId": "1a71eba6c15fd8c6", "scanner": "scanner-primary", "fingerprint": "214eb03e3833287c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6a3bd456b5e75cf8", "level": "note", "message": {"text": "Very large file: tests/test_optimizer_evaluate.py (2770 lines)"}, "properties": {"repobilityId": "78457ca294656685", "scanner": "scanner-primary", "fingerprint": "6a3bd456b5e75cf8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6cb1f74a91008458", "level": "note", "message": {"text": "Very large file: tests/test_optimizer_study.py (2142 lines)"}, "properties": {"repobilityId": "5a87c1a495501f27", "scanner": "scanner-primary", "fingerprint": "6cb1f74a91008458", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-98707b422c69c589", "level": "note", "message": {"text": "Very large file: tests/chemistry/corpus_fixtures.py (1603 lines)"}, "properties": {"repobilityId": "bf9e26a6ebd4c10e", "scanner": "scanner-primary", "fingerprint": "98707b422c69c589", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-775aeb8252f89354", "level": "note", "message": {"text": "Very large file: tests/chemistry/test_corpus_anchored_parity.py (1614 lines)"}, "properties": {"repobilityId": "1404529766e5a14b", "scanner": "scanner-primary", "fingerprint": "775aeb8252f89354", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fdc96e9084db9e58", "level": "note", "message": {"text": "Very large file: scripts/epoch_grind.py (1577 lines)"}, "properties": {"repobilityId": "e505e56bf98b57d7", "scanner": "scanner-primary", "fingerprint": "fdc96e9084db9e58", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-959568e5c034fb61", "level": "note", "message": {"text": "Very large file: _attic/factsage/factsage.py (1362 lines)"}, "properties": {"repobilityId": "e642d97c1242035c", "scanner": "scanner-primary", "fingerprint": "959568e5c034fb61", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e61c51193f7f4fc7", "level": "note", "message": {"text": "Very large file: simulator/evaporation.py (1421 lines)"}, "properties": {"repobilityId": "4b086a06958d56bf", "scanner": "scanner-primary", "fingerprint": "e61c51193f7f4fc7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-de26aeea92bcb10f", "level": "note", "message": {"text": "Very large file: simulator/reduced_real_determinism.py (2822 lines)"}, "properties": {"repobilityId": "ccc414a3f0a8cf05", "scanner": "scanner-primary", "fingerprint": "de26aeea92bcb10f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0c6e6e2ac77078cc", "level": "note", "message": {"text": "Very large file: simulator/extraction.py (1262 lines)"}, "properties": {"repobilityId": "f75f455259e8bde9", "scanner": "scanner-primary", "fingerprint": "0c6e6e2ac77078cc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-4a29c602ed4c6ba1", "level": "note", "message": {"text": "Very large file: simulator/core.py (5807 lines)"}, "properties": {"repobilityId": "57f27a9af3031c67", "scanner": "scanner-primary", "fingerprint": "4a29c602ed4c6ba1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9d881210b485243f", "level": "note", "message": {"text": "Very large file: simulator/condensation.py (2480 lines)"}, "properties": {"repobilityId": "bd65d7f7d0cbe0c2", "scanner": "scanner-primary", "fingerprint": "9d881210b485243f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f2645bdd95776fcf", "level": "note", "message": {"text": "Very large file: simulator/runner.py (3335 lines)"}, "properties": {"repobilityId": "40ecaf1f492cd5b9", "scanner": "scanner-primary", "fingerprint": "f2645bdd95776fcf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0646c87bff86190c", "level": "note", "message": {"text": "Very large file: simulator/campaigns.py (1229 lines)"}, "properties": {"repobilityId": "c3d89860b91ff5ed", "scanner": "scanner-primary", "fingerprint": "0646c87bff86190c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fe0d7c06df2fb6e8", "level": "note", "message": {"text": "Very large file: simulator/accounting/queries.py (1787 lines)"}, "properties": {"repobilityId": "330c9664f4a238db", "scanner": "scanner-primary", "fingerprint": "fe0d7c06df2fb6e8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-12bdc32a5c828946", "level": "note", "message": {"text": "Very large file: simulator/melt_backend/magemin.py (1301 lines)"}, "properties": {"repobilityId": "8202d2be278f8b82", "scanner": "scanner-primary", "fingerprint": "12bdc32a5c828946", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-551aeca0195f7684", "level": "note", "message": {"text": "Very large file: simulator/melt_backend/alphamelts.py (2241 lines)"}, "properties": {"repobilityId": "1e8a1d08f77fd9c7", "scanner": "scanner-primary", "fingerprint": "551aeca0195f7684", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-312e25629e265f6a", "level": "note", "message": {"text": "Very large file: simulator/optimize/objective.py (3543 lines)"}, "properties": {"repobilityId": "5b09bd7c8db05c3f", "scanner": "scanner-primary", "fingerprint": "312e25629e265f6a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-89c3a9ad1dd0ce67", "level": "note", "message": {"text": "Very large file: simulator/optimize/study.py (2285 lines)"}, "properties": {"repobilityId": "e9bd4c08c580315e", "scanner": "scanner-primary", "fingerprint": "89c3a9ad1dd0ce67", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ee26bd59f91ca84c", "level": "note", "message": {"text": "Very large file: simulator/optimize/evaluate.py (3496 lines)"}, "properties": {"repobilityId": "0b4889e2a29421db", "scanner": "scanner-primary", "fingerprint": "ee26bd59f91ca84c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-bd9a9902240a86bd", "level": "note", "message": {"text": "Very large file: simulator/optimize/strategy/staged.py (1346 lines)"}, "properties": {"repobilityId": "44b549a0e13a47ed", "scanner": "scanner-primary", "fingerprint": "bd9a9902240a86bd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f6d011c95967238d", "level": "note", "message": {"text": "Very large file: web/routes.py (2258 lines)"}, "properties": {"repobilityId": "cd091a014db6d409", "scanner": "scanner-primary", "fingerprint": "f6d011c95967238d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "fc0ae762c997c561", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "d62b05e28eaafd0b", "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": "b57da03dd6c7f2dc", "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": "19fa7d9e3dc86532", "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": "e8e34c73b1310086", "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": "18880ad31c8ab878", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-3e375a53256cc177", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 install-dependencies.py:138"}, "properties": {"repobilityId": "bc316e7f56d6e88d", "scanner": "scanner-primary", "fingerprint": "3e375a53256cc177", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d0f32ca85551c4fd", "level": "none", "message": {"text": "Commented-code block (9 lines) in install-engines.py:194"}, "properties": {"repobilityId": "4f998350c087c532", "scanner": "scanner-primary", "fingerprint": "d0f32ca85551c4fd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ae8e0c4ebfe0a69f", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 install-engines.py:226"}, "properties": {"repobilityId": "72fb44f0f493947a", "scanner": "scanner-primary", "fingerprint": "ae8e0c4ebfe0a69f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-92c78b4cb62772e7", "level": "none", "message": {"text": "Commented-code block (5 lines) in engines/vaporock/provider.py:100"}, "properties": {"repobilityId": "1f92364d967534e9", "scanner": "scanner-primary", "fingerprint": "92c78b4cb62772e7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-78ef670c6cfafe44", "level": "none", "message": {"text": "Commented-code block (10 lines) in engines/builtin/evaporation_flux.py:163"}, "properties": {"repobilityId": "fe776e987fe3c7e3", "scanner": "scanner-primary", "fingerprint": "78ef670c6cfafe44", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7636ad8c6cbde705", "level": "none", "message": {"text": "Commented-code block (5 lines) in engines/builtin/condensation_route.py:163"}, "properties": {"repobilityId": "cfa4e7815b965bcc", "scanner": "scanner-primary", "fingerprint": "7636ad8c6cbde705", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-943d0e2d4e3e1100", "level": "none", "message": {"text": "Commented-code block (6 lines) in engines/builtin/metallothermic_step.py:251"}, "properties": {"repobilityId": "45da3b25ec197dfb", "scanner": "scanner-primary", "fingerprint": "943d0e2d4e3e1100", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4fbca88e5baef360", "level": "none", "message": {"text": "Commented-code block (8 lines) in engines/builtin/_common.py:216"}, "properties": {"repobilityId": "b6e9bcbd1326b7e4", "scanner": "scanner-primary", "fingerprint": "4fbca88e5baef360", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7c237db364122dab", "level": "none", "message": {"text": "Commented-code block (9 lines) in engines/builtin/stage0_pretreatment.py:158"}, "properties": {"repobilityId": "b1135d1fbf12e284", "scanner": "scanner-primary", "fingerprint": "7c237db364122dab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-743c5d178f6bdc50", "level": "none", "message": {"text": "Commented-code block (12 lines) in engines/builtin/vapor_pressure.py:65"}, "properties": {"repobilityId": "cd02e92549148d85", "scanner": "scanner-primary", "fingerprint": "743c5d178f6bdc50", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e3bee3f3895bba94", "level": "none", "message": {"text": "Commented-code block (5 lines) in engines/builtin/evaporation_transition.py:189"}, "properties": {"repobilityId": "d8be7274937b30ae", "scanner": "scanner-primary", "fingerprint": "e3bee3f3895bba94", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d7602c1ad02f6ce6", "level": "none", "message": {"text": "Commented-code block (7 lines) in engines/builtin/electrolysis_step.py:158"}, "properties": {"repobilityId": "75fe148e1ec46b22", "scanner": "scanner-primary", "fingerprint": "d7602c1ad02f6ce6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-66efc768b5161ea0", "level": "none", "message": {"text": "Commented-code block (5 lines) in engines/alphamelts/parser.py:84"}, "properties": {"repobilityId": "a0fabe125fb7e227", "scanner": "scanner-primary", "fingerprint": "66efc768b5161ea0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-921096359819e5dd", "level": "none", "message": {"text": "Commented-code block (6 lines) in engines/alphamelts/provider.py:125"}, "properties": {"repobilityId": "328921db77a98ce3", "scanner": "scanner-primary", "fingerprint": "921096359819e5dd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-14a3b1b8ee3d7895", "level": "none", "message": {"text": "Commented-code block (12 lines) in engines/alphamelts/thermoengine.py:238"}, "properties": {"repobilityId": "a20070cf29de0c7b", "scanner": "scanner-primary", "fingerprint": "14a3b1b8ee3d7895", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aeedd92819bc750c", "level": "none", "message": {"text": "Commented-code block (5 lines) in engines/magemin/provider.py:83"}, "properties": {"repobilityId": "87c4a69587e82384", "scanner": "scanner-primary", "fingerprint": "aeedd92819bc750c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c49bb8b1c68bd852", "level": "none", "message": {"text": "Commented-code block (8 lines) in tests/test_backend_selection.py:322"}, "properties": {"repobilityId": "4cf9ad757efbd398", "scanner": "scanner-primary", "fingerprint": "c49bb8b1c68bd852", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-55c2cc65a16d8250", "level": "none", "message": {"text": "Commented-code block (7 lines) in tests/test_overhead_accounting.py:253"}, "properties": {"repobilityId": "4adfdc3f7083c3cc", "scanner": "scanner-primary", "fingerprint": "55c2cc65a16d8250", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3f0a0a1f082dd958", "level": "note", "message": {"text": "Legacy-named symbol `_profile_copy` in tests/test_optimizer_profiles.py:27"}, "properties": {"repobilityId": "58b55dc57d7b547c", "scanner": "scanner-primary", "fingerprint": "3f0a0a1f082dd958", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f13287a23283adb3", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_s4_shuttle_broadening.py:275"}, "properties": {"repobilityId": "ef5b1bb644fcd924", "scanner": "scanner-primary", "fingerprint": "f13287a23283adb3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9e0fc504f420bb90", "level": "none", "message": {"text": "Commented-code block (9 lines) in tests/test_sio_tsweep_smoke.py:159"}, "properties": {"repobilityId": "c7b87b215b53ea73", "scanner": "scanner-primary", "fingerprint": "9e0fc504f420bb90", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7e8e71719eeb6c3e", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_optimizer_strategy_nsga2.py:337"}, "properties": {"repobilityId": "3c14353e8bd39553", "scanner": "scanner-primary", "fingerprint": "7e8e71719eeb6c3e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7d9aec90523bf5f5", "level": "note", "message": {"text": "Legacy-named symbol `_artifact_copy` in tests/test_optimizer_results_store.py:201"}, "properties": {"repobilityId": "cf9c06ef311b2d26", "scanner": "scanner-primary", "fingerprint": "7d9aec90523bf5f5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e4e1318a342a7372", "level": "note", "message": {"text": "Legacy-named symbol `lunar_mare_jsc_1a_legacy` in tests/test_vpr_p4_feedstocks.py:17"}, "properties": {"repobilityId": "6c66daf693c3e121", "scanner": "scanner-primary", "fingerprint": "e4e1318a342a7372", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-40d39eeb438d7dc6", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_mre_voltage_sequence_yaml.py:374"}, "properties": {"repobilityId": "bb739419bf4033e9", "scanner": "scanner-primary", "fingerprint": "40d39eeb438d7dc6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a78e5a96791c67cc", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_north_star_baseline.py:43"}, "properties": {"repobilityId": "ecc4ea9f9d7a1594", "scanner": "scanner-primary", "fingerprint": "a78e5a96791c67cc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d770905f56613c4c", "level": "none", "message": {"text": "Commented-code block (7 lines) in tests/test_extraction_ledger.py:156"}, "properties": {"repobilityId": "aff7faf97a246e15", "scanner": "scanner-primary", "fingerprint": "d770905f56613c4c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-04631abd7a59b845", "level": "note", "message": {"text": "Legacy-named symbol `C_legacy` in tests/test_pipe_conductance_m_avg.py:161"}, "properties": {"repobilityId": "099727d2fe1df2ad", "scanner": "scanner-primary", "fingerprint": "04631abd7a59b845", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e39c04f1932faee7", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_magemin_backend.py:49"}, "properties": {"repobilityId": "055d391482788acb", "scanner": "scanner-primary", "fingerprint": "e39c04f1932faee7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-06801cf77f38c65e", "level": "none", "message": {"text": "Commented-code block (14 lines) in tests/test_vaporock_backend.py:47"}, "properties": {"repobilityId": "09cf9ed137d4a0fd", "scanner": "scanner-primary", "fingerprint": "06801cf77f38c65e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a5691bd18107bf43", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_0_5_4_live_path_integration.py:211"}, "properties": {"repobilityId": "ae4fda6894939793", "scanner": "scanner-primary", "fingerprint": "a5691bd18107bf43", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f07957bbdf2d7d54", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_mass_balance.py:304"}, "properties": {"repobilityId": "c6f86ceff31a4883", "scanner": "scanner-primary", "fingerprint": "f07957bbdf2d7d54", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fc924fc927a7f8c7", "level": "note", "message": {"text": "Legacy-named symbol `test_seed_job_cache_creates_empty_shard_without_base_copy` in tests/test_grind_scratch_reduction.py:135"}, "properties": {"repobilityId": "7a4383ebe4dbbcca", "scanner": "scanner-primary", "fingerprint": "fc924fc927a7f8c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d399753fd199e236", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_optimizer_fidelity.py:952"}, "properties": {"repobilityId": "6a2653028f0b48e1", "scanner": "scanner-primary", "fingerprint": "d399753fd199e236", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0b0f9ae73310b209", "level": "note", "message": {"text": "Legacy-named symbol `vaporock_v1` in tests/test_runner_smoke.py:853"}, "properties": {"repobilityId": "a343ac87db6f54c8", "scanner": "scanner-primary", "fingerprint": "0b0f9ae73310b209", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4223c68a2cbef6aa", "level": "none", "message": {"text": "Commented-code block (7 lines) in tests/test_session_cli.py:209"}, "properties": {"repobilityId": "a0c7422badcf57ff", "scanner": "scanner-primary", "fingerprint": "4223c68a2cbef6aa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-07165b093ea385ad", "level": "none", "message": {"text": "Commented-code block (49 lines) in tests/test_sio_yield_regression.py:28"}, "properties": {"repobilityId": "ceafeab140aed7a5", "scanner": "scanner-primary", "fingerprint": "07165b093ea385ad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-791b6aafaf1a3be7", "level": "note", "message": {"text": "Legacy-named symbol `test_inactive_metal_species_do_not_diverge_between_provider_and_legacy` in tests/chemistry/test_builtin_vapor_pressure_provider.py:250"}, "properties": {"repobilityId": "06388f4c69ec8733", "scanner": "scanner-primary", "fingerprint": "791b6aafaf1a3be7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0d5d20c475a0330d", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/chemistry/test_builtin_vapor_pressure_provider.py:60"}, "properties": {"repobilityId": "f7ee160335c4c5e6", "scanner": "scanner-primary", "fingerprint": "0d5d20c475a0330d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa79b0a9dd573bae", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/chemistry/corpus_fixtures.py:76"}, "properties": {"repobilityId": "db1365ce61c5ad9c", "scanner": "scanner-primary", "fingerprint": "aa79b0a9dd573bae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8ec7202d74a8511a", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/chemistry/test_sio_chain_coherence.py:14"}, "properties": {"repobilityId": "5edc3cdb2fabb727", "scanner": "scanner-primary", "fingerprint": "8ec7202d74a8511a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a0408fd941eafa07", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/chemistry/test_series_resistance_flux.py:251"}, "properties": {"repobilityId": "98ef8c47f00bd1e3", "scanner": "scanner-primary", "fingerprint": "a0408fd941eafa07", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-352bd4181158299d", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/chemistry/conftest.py:73"}, "properties": {"repobilityId": "28f0f799175aafa3", "scanner": "scanner-primary", "fingerprint": "352bd4181158299d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1c41c22624bff601", "level": "none", "message": {"text": "Commented-code block (14 lines) in tests/chemistry/test_builtin_evaporation_flux_provider.py:339"}, "properties": {"repobilityId": "f38b86433807d986", "scanner": "scanner-primary", "fingerprint": "1c41c22624bff601", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c70ba9a0d48cfd6d", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/chemistry/test_writer_purity.py:30"}, "properties": {"repobilityId": "4636248ff251b510", "scanner": "scanner-primary", "fingerprint": "c70ba9a0d48cfd6d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-71f11e5d59f87de5", "level": "none", "message": {"text": "Commented-code block (10 lines) in tests/chemistry/test_corpus_anchored_parity.py:518"}, "properties": {"repobilityId": "27317e520706631c", "scanner": "scanner-primary", "fingerprint": "71f11e5d59f87de5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-63f79a7a85d08c3d", "level": "none", "message": {"text": "Commented-code block (8 lines) in tests/chemistry/test_kernel_control_audit.py:166"}, "properties": {"repobilityId": "64fb9a76ea2bf200", "scanner": "scanner-primary", "fingerprint": "63f79a7a85d08c3d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e9ad44f70df1370d", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/chemistry/test_builtin_evaporation_transition_provider.py:257"}, "properties": {"repobilityId": "382b35f814e63155", "scanner": "scanner-primary", "fingerprint": "e9ad44f70df1370d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-430ec3e4cd54ff44", "level": "note", "message": {"text": "Legacy-named symbol `mol_Al_consumed_legacy` in tests/chemistry/test_builtin_metallothermic_step_provider.py:1123"}, "properties": {"repobilityId": "745647a498140029", "scanner": "scanner-primary", "fingerprint": "430ec3e4cd54ff44", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ddaa65a6da370824", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/chemistry/test_builtin_metallothermic_step_provider.py:386"}, "properties": {"repobilityId": "c954d6d2000f528b", "scanner": "scanner-primary", "fingerprint": "ddaa65a6da370824", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3419a4a4f9dd3c8f", "level": "none", "message": {"text": "Commented-code block (16 lines) in tests/chemistry/test_sio_step_condensation.py:50"}, "properties": {"repobilityId": "03dd5421a50096cc", "scanner": "scanner-primary", "fingerprint": "3419a4a4f9dd3c8f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c0265a954bb4288f", "level": "none", "message": {"text": "Commented-code block (104 lines) in tests/chemistry/test_sio_step_wall_deposit.py:35"}, "properties": {"repobilityId": "5f0a45d2163a75a5", "scanner": "scanner-primary", "fingerprint": "c0265a954bb4288f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-045a3f79e30a1755", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/chemistry/test_builtin_condensation_route_provider.py:279"}, "properties": {"repobilityId": "5fd9e1386083e86a", "scanner": "scanner-primary", "fingerprint": "045a3f79e30a1755", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-43ed04f0e0da6014", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/chemistry/test_builtin_electrolysis_step_provider.py:884"}, "properties": {"repobilityId": "3c487af4d0ba7772", "scanner": "scanner-primary", "fingerprint": "43ed04f0e0da6014", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-220141cea980ab9a", "level": "none", "message": {"text": "Commented-code block (10 lines) in tests/chemistry/test_evaporation_freeze_gate.py:121"}, "properties": {"repobilityId": "b1a9497bb60ad7ea", "scanner": "scanner-primary", "fingerprint": "220141cea980ab9a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-548c57da00184c29", "level": "none", "message": {"text": "Commented-code block (10 lines) in tests/chemistry/test_vaporock_authority_promotion.py:140"}, "properties": {"repobilityId": "638150f886ea4399", "scanner": "scanner-primary", "fingerprint": "548c57da00184c29", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac51b47ec5a6a2b0", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/grind_status.py:26"}, "properties": {"repobilityId": "1e02567af7cb5e9d", "scanner": "scanner-primary", "fingerprint": "ac51b47ec5a6a2b0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7eaa170fc07d7f03", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/run_fidelity_doe.py:109"}, "properties": {"repobilityId": "182782b123009a00", "scanner": "scanner-primary", "fingerprint": "7eaa170fc07d7f03", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-199619b34da865d7", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/recipe_db_build.py:39"}, "properties": {"repobilityId": "6c6bb02e018e2670", "scanner": "scanner-primary", "fingerprint": "199619b34da865d7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-28b1a44b61c86acd", "level": "none", "message": {"text": "Commented-code block (6 lines) in _attic/conftest.py:1"}, "properties": {"repobilityId": "6f8a66e7f293462e", "scanner": "scanner-primary", "fingerprint": "28b1a44b61c86acd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6ed2c3e42bafa390", "level": "note", "message": {"text": "Legacy-named symbol `oxide_mol_fraction_p_fO2_v2` in simulator/evaporation.py:353"}, "properties": {"repobilityId": "45104428618f45c6", "scanner": "scanner-primary", "fingerprint": "6ed2c3e42bafa390", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c86a462e98e2012e", "level": "none", "message": {"text": "Commented-code block (5 lines) in simulator/evaporation.py:141"}, "properties": {"repobilityId": "f31abd47d7af86e6", "scanner": "scanner-primary", "fingerprint": "c86a462e98e2012e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2969d44f7deed6c1", "level": "none", "message": {"text": "Commented-code block (5 lines) in simulator/extraction.py:167"}, "properties": {"repobilityId": "14b7fade503fbdce", "scanner": "scanner-primary", "fingerprint": "2969d44f7deed6c1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-33674e8b77491ea9", "level": "none", "message": {"text": "Commented-code block (6 lines) in simulator/three_product_report.py:39"}, "properties": {"repobilityId": "06c7b2172d892328", "scanner": "scanner-primary", "fingerprint": "33674e8b77491ea9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-25932fcca3b72152", "level": "none", "message": {"text": "Commented-code block (7 lines) in simulator/equilibrium.py:71"}, "properties": {"repobilityId": "82f120d35be038ea", "scanner": "scanner-primary", "fingerprint": "25932fcca3b72152", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0aace94650a931bc", "level": "none", "message": {"text": "Commented-code block (11 lines) in simulator/wall_advisor.py:41"}, "properties": {"repobilityId": "1e513cb356635080", "scanner": "scanner-primary", "fingerprint": "0aace94650a931bc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-934c9b0f11651c31", "level": "none", "message": {"text": "Commented-code block (9 lines) in simulator/run_executor.py:77"}, "properties": {"repobilityId": "cbf02a8abf098c0f", "scanner": "scanner-primary", "fingerprint": "934c9b0f11651c31", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-76ccc1b6dbd723ca", "level": "none", "message": {"text": "Commented-code block (6 lines) in simulator/core.py:312"}, "properties": {"repobilityId": "469eb14c42dcf565", "scanner": "scanner-primary", "fingerprint": "76ccc1b6dbd723ca", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-915d5ae54edff23f", "level": "none", "message": {"text": "Commented-code block (9 lines) in simulator/condensation.py:116"}, "properties": {"repobilityId": "435420bdc075a783", "scanner": "scanner-primary", "fingerprint": "915d5ae54edff23f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b456c0e1b916b65c", "level": "none", "message": {"text": "Commented-code block (10 lines) in simulator/overhead.py:53"}, "properties": {"repobilityId": "80813669f49f7280", "scanner": "scanner-primary", "fingerprint": "b456c0e1b916b65c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ade4bbfa0264e15", "level": "none", "message": {"text": "Commented-code block (7 lines) in simulator/session.py:375"}, "properties": {"repobilityId": "2a67f65869e5b474", "scanner": "scanner-primary", "fingerprint": "9ade4bbfa0264e15", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4bd30b6deca92c9c", "level": "note", "message": {"text": "Legacy-named symbol `vaporock_v1` in simulator/runner.py:2811"}, "properties": {"repobilityId": "54bb067e2c0e4e26", "scanner": "scanner-primary", "fingerprint": "4bd30b6deca92c9c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-96b37c5d47dc57d2", "level": "none", "message": {"text": "Commented-code block (8 lines) in simulator/runner.py:1015"}, "properties": {"repobilityId": "15bc21000431f85a", "scanner": "scanner-primary", "fingerprint": "96b37c5d47dc57d2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9d6a88cf30f2e58c", "level": "note", "message": {"text": "Stub function `exec_module` (body is just `pass`/`return`) \u2014 simulator/runner.py:3297"}, "properties": {"repobilityId": "9b21bedefcc13949", "scanner": "scanner-primary", "fingerprint": "9d6a88cf30f2e58c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-f3bb05ef3707fcaf", "level": "none", "message": {"text": "Commented-code block (8 lines) in simulator/state.py:115"}, "properties": {"repobilityId": "0faa8cc3b119f971", "scanner": "scanner-primary", "fingerprint": "f3bb05ef3707fcaf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-94e8273e5d05174b", "level": "none", "message": {"text": "Commented-code block (20 lines) in simulator/campaigns.py:481"}, "properties": {"repobilityId": "a72c4dbbe235555e", "scanner": "scanner-primary", "fingerprint": "94e8273e5d05174b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4fa5cee76ef9fc10", "level": "none", "message": {"text": "Commented-code block (7 lines) in simulator/accounting/ledger.py:20"}, "properties": {"repobilityId": "a5719b91b920a87b", "scanner": "scanner-primary", "fingerprint": "4fa5cee76ef9fc10", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1367a127daadd29a", "level": "none", "message": {"text": "Commented-code block (5 lines) in simulator/chemistry/kernel/__init__.py:42"}, "properties": {"repobilityId": "46f29167c3d39bcc", "scanner": "scanner-primary", "fingerprint": "1367a127daadd29a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a48d1f2c007eb8b1", "level": "none", "message": {"text": "Commented-code block (7 lines) in simulator/chemistry/kernel/registry.py:109"}, "properties": {"repobilityId": "a327878c41cd3e04", "scanner": "scanner-primary", "fingerprint": "a48d1f2c007eb8b1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ab5ad80309adafb4", "level": "none", "message": {"text": "Commented-code block (6 lines) in simulator/chemistry/kernel/validation.py:49"}, "properties": {"repobilityId": "3d8aa1723ac92fa7", "scanner": "scanner-primary", "fingerprint": "ab5ad80309adafb4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3cafd4ac597d09eb", "level": "none", "message": {"text": "Commented-code block (6 lines) in simulator/chemistry/kernel/planner.py:180"}, "properties": {"repobilityId": "af2bb8e3951ab29e", "scanner": "scanner-primary", "fingerprint": "3cafd4ac597d09eb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-37194e2428f0d855", "level": "none", "message": {"text": "Commented-code block (6 lines) in simulator/melt_backend/magemin.py:367"}, "properties": {"repobilityId": "71e7596dc2068839", "scanner": "scanner-primary", "fingerprint": "37194e2428f0d855", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c90a8cf2f3aca710", "level": "none", "message": {"text": "Commented-code block (5 lines) in simulator/melt_backend/sulfsat.py:80"}, "properties": {"repobilityId": "6ae1a64a55d41755", "scanner": "scanner-primary", "fingerprint": "c90a8cf2f3aca710", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ddfff0a71b7fe8a0", "level": "none", "message": {"text": "Commented-code block (8 lines) in simulator/melt_backend/base.py:264"}, "properties": {"repobilityId": "e0407c6ad8682845", "scanner": "scanner-primary", "fingerprint": "ddfff0a71b7fe8a0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3b263ec2bc636777", "level": "none", "message": {"text": "Commented-code block (9 lines) in simulator/melt_backend/alphamelts.py:228"}, "properties": {"repobilityId": "7ebc4c1533404344", "scanner": "scanner-primary", "fingerprint": "3b263ec2bc636777", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-05a2809a503a107f", "level": "none", "message": {"text": "Commented-code block (6 lines) in simulator/melt_backend/vaporock.py:114"}, "properties": {"repobilityId": "91f104959229e73e", "scanner": "scanner-primary", "fingerprint": "05a2809a503a107f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aef579073ebfb6de", "level": "none", "message": {"text": "Commented-code block (5 lines) in simulator/optimize/doe.py:42"}, "properties": {"repobilityId": "4a27a7a183bbd89b", "scanner": "scanner-primary", "fingerprint": "aef579073ebfb6de", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3665957e62c512d8", "level": "none", "message": {"text": "Commented-code block (5 lines) in simulator/optimize/recipe.py:633"}, "properties": {"repobilityId": "feb65d0417a73939", "scanner": "scanner-primary", "fingerprint": "3665957e62c512d8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fd099b01846be733", "level": "note", "message": {"text": "Legacy-named symbol `_migrate_objective_values_v2` in simulator/optimize/results_store.py:497"}, "properties": {"repobilityId": "c57a8ab44a6afa23", "scanner": "scanner-primary", "fingerprint": "fd099b01846be733", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b36d9422980d1454", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 web/static/js/simulator-controls.js:357"}, "properties": {"repobilityId": "240fbe94c9ac5fb4", "scanner": "scanner-primary", "fingerprint": "b36d9422980d1454", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ad1f2c0971b89ce0", "level": "note", "message": {"text": "10 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "3bfdc60c61f1870e", "scanner": "scanner-primary", "fingerprint": "ad1f2c0971b89ce0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "779b42d3f0bca841", "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": "a87a5d4759800f09", "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": "dbe26fc5bb2e9ab9", "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": "b3ee9d8dd679f0a5", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-02525d39071dd2c7", "level": "note", "message": {"text": "Near-duplicate function bodies in 5 places"}, "properties": {"repobilityId": "2e8d3da1c7207010", "scanner": "scanner-primary", "fingerprint": "02525d39071dd2c7", "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": "a631d579f7b37f6e", "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": "ac9a3d9ee5b4de34", "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": "30ccc8c844b9bbcb", "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": "1a80323bc33c0610", "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": "6ca37bca50119449", "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": "2ddc630df5509421", "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": "7ba48dae8db46456", "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": "859a1505678653a3", "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": "d3c8d732790b3740", "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": "9e222b6c6c3392ff", "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": "00426024738ada73", "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": "cff9a35255826aa1", "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": "db643da8aaa91b4c", "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": "e163f17d93953392", "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": "87229e02619ba135", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-45454be1e78569b3", "level": "error", "message": {"text": "Flask mutation route `optimizer_certify_submit` without `@login_required` \u2014 web/routes.py:1983"}, "properties": {"repobilityId": "d6b7dbb725014b6e", "scanner": "scanner-primary", "fingerprint": "45454be1e78569b3", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "web/routes.py"}, "region": {"startLine": 1983}}}]}, {"ruleId": "scanner-ce1940bc0252e308", "level": "error", "message": {"text": "Flask mutation route `optimizer_certify_submit` without `@login_required` \u2014 web/routes.py:1984"}, "properties": {"repobilityId": "9dd79664c662cc2b", "scanner": "scanner-primary", "fingerprint": "ce1940bc0252e308", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "web/routes.py"}, "region": {"startLine": 1984}}}]}, {"ruleId": "scanner-e6a9f8637c65cc01", "level": "error", "message": {"text": "Flask mutation route `optimizer_job_submit` without `@login_required` \u2014 web/routes.py:2004"}, "properties": {"repobilityId": "97f50a5e9235c901", "scanner": "scanner-primary", "fingerprint": "e6a9f8637c65cc01", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "web/routes.py"}, "region": {"startLine": 2004}}}]}, {"ruleId": "scanner-8bacc835c19e6b6d", "level": "error", "message": {"text": "Flask mutation route `optimizer_job_submit` without `@login_required` \u2014 web/routes.py:2005"}, "properties": {"repobilityId": "faf119d5672f8922", "scanner": "scanner-primary", "fingerprint": "8bacc835c19e6b6d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.flask.unauth_route"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "web/routes.py"}, "region": {"startLine": 2005}}}]}, {"ruleId": "scanner-1a6d91f2236825bf", "level": "note", "message": {"text": "Unused endpoint: ANY /"}, "properties": {"repobilityId": "a177f8fd14fdc688", "scanner": "scanner-primary", "fingerprint": "1a6d91f2236825bf", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-690da63c8dc82da3", "level": "note", "message": {"text": "Unused endpoint: ANY /api/wall-risk"}, "properties": {"repobilityId": "bc84e809e094785f", "scanner": "scanner-primary", "fingerprint": "690da63c8dc82da3", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e7188f4147678ff2", "level": "note", "message": {"text": "Unused endpoint: ANY /partials/wall-risk-panel"}, "properties": {"repobilityId": "3541750b40704851", "scanner": "scanner-primary", "fingerprint": "e7188f4147678ff2", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1eaf6266b5b1dae1", "level": "note", "message": {"text": "Unused endpoint: ANY /api/ceramic-rump"}, "properties": {"repobilityId": "95274e968c1a7fd1", "scanner": "scanner-primary", "fingerprint": "1eaf6266b5b1dae1", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-3936992a5a62b4b1", "level": "note", "message": {"text": "Unused endpoint: ANY /partials/ceramic-rump-panel"}, "properties": {"repobilityId": "113aecdfe99d7dff", "scanner": "scanner-primary", "fingerprint": "3936992a5a62b4b1", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-442b85c40b5bcc9b", "level": "note", "message": {"text": "Unused endpoint: ANY /optimizer"}, "properties": {"repobilityId": "922cfb75f302dbf6", "scanner": "scanner-primary", "fingerprint": "442b85c40b5bcc9b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-0516efc681d99cb6", "level": "note", "message": {"text": "Unused endpoint: ANY /partials/optimizer-table"}, "properties": {"repobilityId": "31e3d12919675d33", "scanner": "scanner-primary", "fingerprint": "0516efc681d99cb6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ce665d44ba19cd51", "level": "note", "message": {"text": "Unused endpoint: ANY /partials/optimizer-jobs"}, "properties": {"repobilityId": "314a525736893533", "scanner": "scanner-primary", "fingerprint": "ce665d44ba19cd51", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a86b269a0c6e2529", "level": "note", "message": {"text": "Unused endpoint: ANY /partials/optimizer-jobs/<job_id>"}, "properties": {"repobilityId": "71d4bd20cc75a99d", "scanner": "scanner-primary", "fingerprint": "a86b269a0c6e2529", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-9658764a96cdbe44", "level": "note", "message": {"text": "Unused endpoint: ANY /api/optimizer/jobs"}, "properties": {"repobilityId": "a81b8d89b9d17987", "scanner": "scanner-primary", "fingerprint": "9658764a96cdbe44", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e4673c7cc4ff3e40", "level": "note", "message": {"text": "Unused endpoint: ANY /api/optimizer/certify"}, "properties": {"repobilityId": "099c8609d6d75222", "scanner": "scanner-primary", "fingerprint": "e4673c7cc4ff3e40", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ff036819f2c5780f", "level": "note", "message": {"text": "Unused endpoint: ANY /optimizer/certify"}, "properties": {"repobilityId": "41ab57493a686a74", "scanner": "scanner-primary", "fingerprint": "ff036819f2c5780f", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ec2a0eedbe41178e", "level": "note", "message": {"text": "Unused endpoint: ANY /optimizer/jobs"}, "properties": {"repobilityId": "280658140769f292", "scanner": "scanner-primary", "fingerprint": "ec2a0eedbe41178e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-757d78b75d58f99c", "level": "note", "message": {"text": "Unused endpoint: ANY /api/optimizer/jobs/<job_id>"}, "properties": {"repobilityId": "7b1ef02b230de7eb", "scanner": "scanner-primary", "fingerprint": "757d78b75d58f99c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-8961d4566fd87797", "level": "note", "message": {"text": "Unused endpoint: ANY /optimizer/jobs/<job_id>"}, "properties": {"repobilityId": "75389f059a064f47", "scanner": "scanner-primary", "fingerprint": "8961d4566fd87797", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-2d9479c3ad33283a", "level": "note", "message": {"text": "Unused endpoint: ANY /optimizer/runs/<path:run_id>/results/<cache_key>"}, "properties": {"repobilityId": "e2fd486cb65cbc26", "scanner": "scanner-primary", "fingerprint": "2d9479c3ad33283a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-847bb24fc5f0a0ea", "level": "note", "message": {"text": "Unused endpoint: ANY /optimizer/runs/<path:run_id>/results/<cache_key>/recipe.yaml"}, "properties": {"repobilityId": "bba72c2bebf3149f", "scanner": "scanner-primary", "fingerprint": "847bb24fc5f0a0ea", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-6856799867bc16d3", "level": "note", "message": {"text": "Unused endpoint: ANY /api/feedstocks"}, "properties": {"repobilityId": "36deb80a7193521a", "scanner": "scanner-primary", "fingerprint": "6856799867bc16d3", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-7fbef0bbe9c56358", "level": "note", "message": {"text": "Unused endpoint: ANY /api/setpoints"}, "properties": {"repobilityId": "3566e5b098c2ee5e", "scanner": "scanner-primary", "fingerprint": "7fbef0bbe9c56358", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-6f0b99267458861c", "level": "note", "message": {"text": "Unused endpoint: ANY /api/feedstock/<key>"}, "properties": {"repobilityId": "4767f75a4ed43b15", "scanner": "scanner-primary", "fingerprint": "6f0b99267458861c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-4190a0f880cdc28c", "level": "note", "message": {"text": "Unused endpoint: ANY /api/optimizer/runs"}, "properties": {"repobilityId": "9494ae9cb7acbd54", "scanner": "scanner-primary", "fingerprint": "4190a0f880cdc28c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b49cc71fb6b65206", "level": "note", "message": {"text": "Unused endpoint: ANY /api/optimizer/feedstock-profiles"}, "properties": {"repobilityId": "c1e64c2a29ab736d", "scanner": "scanner-primary", "fingerprint": "b49cc71fb6b65206", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-bb32347e19bde77d", "level": "note", "message": {"text": "Unused endpoint: ANY /api/mre-preset-catalog"}, "properties": {"repobilityId": "98c19788b46c5d2f", "scanner": "scanner-primary", "fingerprint": "bb32347e19bde77d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-85ae61194a3726f4", "level": "note", "message": {"text": "Unused endpoint: ANY /api/knudsen-config"}, "properties": {"repobilityId": "2a3c60747a7ad948", "scanner": "scanner-primary", "fingerprint": "85ae61194a3726f4", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-23a1b303bd47defb", "level": "note", "message": {"text": "Unused endpoint: ANY /partials/mre-preset-catalog"}, "properties": {"repobilityId": "2257968175f8b110", "scanner": "scanner-primary", "fingerprint": "23a1b303bd47defb", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a8c1aec489ea1747", "level": "note", "message": {"text": "Unused endpoint: ANY /api/optimizer/leaderboard"}, "properties": {"repobilityId": "0bee0c1b629b13c3", "scanner": "scanner-primary", "fingerprint": "a8c1aec489ea1747", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ca335b653c168cf3", "level": "note", "message": {"text": "Unused endpoint: ANY /partials/feedstock-card/<key>"}, "properties": {"repobilityId": "4cbb005f0ed596d7", "scanner": "scanner-primary", "fingerprint": "ca335b653c168cf3", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-22f0d730475da9a8", "level": "note", "message": {"text": "Unused endpoint: ANY /api/additive-calc/<key>"}, "properties": {"repobilityId": "5ba980725db24968", "scanner": "scanner-primary", "fingerprint": "22f0d730475da9a8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-dddd1019e6939b4b", "level": "note", "message": {"text": "Unused endpoint: ANY /partials/disclosure/<section>"}, "properties": {"repobilityId": "e09e1409b5262531", "scanner": "scanner-primary", "fingerprint": "dddd1019e6939b4b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}]}]}