{"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-47268d36a893055f", "name": "Stray `console.log` in TS/JS \u2014 src/floor/prove.ts:82", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/floor/prove.ts:82"}, "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-fd51e7dc897aa83d", "name": "Stray `console.log` in TS/JS \u2014 src/game/prove.ts:47", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/game/prove.ts:47"}, "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-d5c157faff2df269", "name": "Stray `console.log` in TS/JS \u2014 src/net/prove.ts:184", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/net/prove.ts:184"}, "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-3f91f1d653899402", "name": "Stray `console.log` in TS/JS \u2014 src/sim/prove.ts:142", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/prove.ts:142"}, "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-851c79797bcfa4aa", "name": "Stray `console.log` in TS/JS \u2014 src/sim/spatial/prove.ts:88", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/spatial/prove.ts:88"}, "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-8863464f4c2f9060", "name": "Stray `console.log` in TS/JS \u2014 src/sim/hazards/prove.ts:49", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/hazards/prove.ts:49"}, "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-9841ef18aa0b0ee8", "name": "Stray `console.log` in TS/JS \u2014 src/sim/fixed/prove.ts:87", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/fixed/prove.ts:87"}, "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-5f42ac7c707018f0", "name": "Stray `console.log` in TS/JS \u2014 src/sim/verbs/abilities-prove.ts:47", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/verbs/abilities-prove.ts:47"}, "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-d831decbb53b5624", "name": "Stray `console.log` in TS/JS \u2014 src/sim/verbs/prove.ts:49", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/verbs/prove.ts:49"}, "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-6260e87ebda29bc0", "name": "Stray `console.log` in TS/JS \u2014 src/sim/world/prove.ts:135", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/world/prove.ts:135"}, "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-b3af88aee7974d20", "name": "Stray `console.log` in TS/JS \u2014 src/sim/collide/prove.ts:67", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/collide/prove.ts:67"}, "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-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-d8797091088069e1", "name": "Insecure pattern 'node_child_process' in scripts/lab-snap.mjs:21", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/lab-snap.mjs:21"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5c3065823c5c3081", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/main.ts:26", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/main.ts:26"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-db447fd3412fa11e", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/lab/lab.ts:136", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/lab/lab.ts:136"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ed4322eb9a869754", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/render/renderer.ts:1042", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/render/renderer.ts:1042"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6372cebde0220094", "name": "No auth library detected", "shortDescription": {"text": "No auth library detected"}, "fullDescription": {"text": "The scanner did not find any standard auth library (JWT, OAuth, NextAuth, Auth0, etc.). The repo has auth/admin/session surface indicators, so auth may live in custom code, in a separate service, or be missing."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-28c4a04bd807da0c", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/deploy-pages@v4 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ad6701f0a8405e22", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3a14c1482932078c", "name": "Very large file: src/render/renderer.ts (1128 lines)", "shortDescription": {"text": "Very large file: src/render/renderer.ts (1128 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6893a6c8b0861585", "name": "Very low test-to-source ratio", "shortDescription": {"text": "Very low test-to-source ratio"}, "fullDescription": {"text": "6 test file(s) for 69 source file(s) (ratio 0.09). Consider adding integration or unit tests for critical paths."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 97 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-749d4bc1bd66df5f", "name": "Agent instructions exist but release-hardening basics are missing", "shortDescription": {"text": "Agent instructions exist but release-hardening basics are missing"}, "fullDescription": {"text": "AI-coder instruction files were found, but the repo is missing license. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9b60f5c214e33213", "name": "Commented-code block (5 lines) in src/main.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/main.ts:5"}, "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-13d356ea2bd3bb7b", "name": "Commented-code block (5 lines) in src/lab/element.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/lab/element.ts:5"}, "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-29371fe09e24933a", "name": "Commented-code block (5 lines) in src/lab/lab.ts:9", "shortDescription": {"text": "Commented-code block (5 lines) in src/lab/lab.ts:9"}, "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-607881900326771b", "name": "Commented-code block (9 lines) in src/lab/elements/fern-shrub.ts:10", "shortDescription": {"text": "Commented-code block (9 lines) in src/lab/elements/fern-shrub.ts:10"}, "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-7740fdbcf5e62309", "name": "Commented-code block (8 lines) in src/lab/elements/vine-drape.ts:5", "shortDescription": {"text": "Commented-code block (8 lines) in src/lab/elements/vine-drape.ts:5"}, "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-aa4859a6cc7ee64f", "name": "Commented-code block (6 lines) in src/lab/elements/rubble-pile.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/lab/elements/rubble-pile.ts:5"}, "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-091723c6bbc428d6", "name": "Commented-code block (6 lines) in src/lab/elements/glow-crystal.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/lab/elements/glow-crystal.ts:5"}, "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-f08775400881feb1", "name": "Commented-code block (5 lines) in src/lab/elements/vine-wall.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/lab/elements/vine-wall.ts:5"}, "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-537a98c044be1798", "name": "Commented-code block (7 lines) in src/lab/elements/stone-slab.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/lab/elements/stone-slab.ts:5"}, "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-631f2e92b7b4267a", "name": "Commented-code block (16 lines) in src/lab/elements/grass-clump.ts:8", "shortDescription": {"text": "Commented-code block (16 lines) in src/lab/elements/grass-clump.ts:8"}, "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-01bddce824dc0b33", "name": "Commented-code block (5 lines) in src/floor/verify.ts:198", "shortDescription": {"text": "Commented-code block (5 lines) in src/floor/verify.ts:198"}, "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-42b2a1288d041dba", "name": "Commented-code block (9 lines) in src/game/survival.ts:9", "shortDescription": {"text": "Commented-code block (9 lines) in src/game/survival.ts:9"}, "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-8e467c80bf423ab8", "name": "Commented-code block (8 lines) in src/game/route-check.ts:5", "shortDescription": {"text": "Commented-code block (8 lines) in src/game/route-check.ts:5"}, "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-4fd649addb0590be", "name": "Commented-code block (30 lines) in src/game/tower.ts:9", "shortDescription": {"text": "Commented-code block (30 lines) in src/game/tower.ts:9"}, "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-19fb5b876cdcd9c6", "name": "Commented-code block (7 lines) in src/game/match.ts:14", "shortDescription": {"text": "Commented-code block (7 lines) in src/game/match.ts: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-8b905d8a07c6752e", "name": "Commented-code block (5 lines) in src/game/beacon.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in src/game/beacon.ts:6"}, "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-ef83635535262fa2", "name": "Commented-code block (5 lines) in src/game/boons.ts:9", "shortDescription": {"text": "Commented-code block (5 lines) in src/game/boons.ts:9"}, "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-941ccd3ccf53f2ea", "name": "Commented-code block (21 lines) in src/game/prove.ts:11", "shortDescription": {"text": "Commented-code block (21 lines) in src/game/prove.ts:11"}, "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-32a3a96af3781b85", "name": "Commented-code block (14 lines) in src/net/rollback.ts:5", "shortDescription": {"text": "Commented-code block (14 lines) in src/net/rollback.ts:5"}, "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-c82bb07995acb53d", "name": "Commented-code block (7 lines) in src/net/room-code.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/net/room-code.ts:5"}, "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-d80d9d64b2a32df3", "name": "Commented-code block (5 lines) in src/net/input-bus.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/net/input-bus.ts:5"}, "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-4f64a68096e947b0", "name": "Commented-code block (10 lines) in src/net/transport.ts:5", "shortDescription": {"text": "Commented-code block (10 lines) in src/net/transport.ts:5"}, "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-d25c3981e24bfb23", "name": "Commented-code block (5 lines) in src/net/prove.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in src/net/prove.ts:6"}, "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-90c86281f826e708", "name": "Commented-code block (6 lines) in src/net/transport-peerjs.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/net/transport-peerjs.ts:5"}, "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-d7511b78309f1035", "name": "Commented-code block (7 lines) in src/net/wire.ts:10", "shortDescription": {"text": "Commented-code block (7 lines) in src/net/wire.ts:10"}, "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-c35875035e2dc541", "name": "Commented-code block (6 lines) in src/sim/prove.ts:14", "shortDescription": {"text": "Commented-code block (6 lines) in src/sim/prove.ts: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-ab414dd001e8e473", "name": "Commented-code block (14 lines) in src/sim/sim.ts:12", "shortDescription": {"text": "Commented-code block (14 lines) in src/sim/sim.ts:12"}, "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-463bb133c804b436", "name": "Commented-code block (12 lines) in src/sim/spatial/grid.ts:5", "shortDescription": {"text": "Commented-code block (12 lines) in src/sim/spatial/grid.ts:5"}, "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-1ba3bd17c497b4e7", "name": "Commented-code block (7 lines) in src/sim/spatial/index.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/sim/spatial/index.ts:5"}, "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-284ceb3c5dfe61fa", "name": "Commented-code block (5 lines) in src/sim/spatial/prove.ts:14", "shortDescription": {"text": "Commented-code block (5 lines) in src/sim/spatial/prove.ts: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-d82b632daa3160ad", "name": "Commented-code block (7 lines) in src/sim/hazards/schedule.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/sim/hazards/schedule.ts:5"}, "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-195d14f3496145c5", "name": "Commented-code block (7 lines) in src/sim/hazards/index.ts:1", "shortDescription": {"text": "Commented-code block (7 lines) in src/sim/hazards/index.ts: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-6c25e5fbf2a1ac73", "name": "Commented-code block (7 lines) in src/sim/hazards/model.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/sim/hazards/model.ts:5"}, "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-ae55af23b20c639d", "name": "Commented-code block (6 lines) in src/sim/hazards/falldamage.ts:9", "shortDescription": {"text": "Commented-code block (6 lines) in src/sim/hazards/falldamage.ts:9"}, "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-2ac96ea02fb41b8b", "name": "Commented-code block (6 lines) in src/sim/hazards/apply.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/sim/hazards/apply.ts:5"}, "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-a46c9183a4bdb969", "name": "Commented-code block (9 lines) in src/sim/hazards/prove.ts:9", "shortDescription": {"text": "Commented-code block (9 lines) in src/sim/hazards/prove.ts:9"}, "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-9707d1828e53f7cd", "name": "Commented-code block (6 lines) in src/sim/hazards/jitter.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/sim/hazards/jitter.ts:5"}, "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-56e85f8e385c03a8", "name": "Commented-code block (6 lines) in src/sim/fixed/vec.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/sim/fixed/vec.ts:5"}, "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-ec542ad998bd9c03", "name": "Commented-code block (5 lines) in src/sim/fixed/prove.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/sim/fixed/prove.ts: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-9f694118c6f7976c", "name": "Commented-code block (7 lines) in src/sim/fixed/fixed.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/sim/fixed/fixed.ts:5"}, "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-9ab757372fde9690", "name": "Commented-code block (5 lines) in src/sim/verbs/config.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/sim/verbs/config.ts:5"}, "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-bbf4f06ba92680cb", "name": "Commented-code block (12 lines) in src/sim/verbs/abilities-prove.ts:7", "shortDescription": {"text": "Commented-code block (12 lines) in src/sim/verbs/abilities-prove.ts:7"}, "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-59993ccb42509fe7", "name": "Commented-code block (7 lines) in src/sim/verbs/abilities.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/sim/verbs/abilities.ts:5"}, "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-bcf01cd71383062d", "name": "Commented-code block (5 lines) in src/sim/verbs/verbs.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/sim/verbs/verbs.ts:5"}, "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-a0a562c8ead4652a", "name": "Commented-code block (11 lines) in src/sim/verbs/prove.ts:7", "shortDescription": {"text": "Commented-code block (11 lines) in src/sim/verbs/prove.ts:7"}, "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-c746afb2e3d656f5", "name": "Commented-code block (6 lines) in src/sim/verbs/jitter.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/sim/verbs/jitter.ts:5"}, "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-170c47a5f3846ecb", "name": "Commented-code block (6 lines) in src/sim/world/step.ts:45", "shortDescription": {"text": "Commented-code block (6 lines) in src/sim/world/step.ts:45"}, "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-0afb790282a7448d", "name": "Commented-code block (6 lines) in src/sim/world/snapshot.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/sim/world/snapshot.ts:5"}, "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-c0d6bf4747cb864b", "name": "Commented-code block (5 lines) in src/sim/world/state.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/sim/world/state.ts:5"}, "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-ebc5c9f2d6d74f98", "name": "Commented-code block (7 lines) in src/sim/world/hash.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/sim/world/hash.ts:5"}, "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-c848cef581ef2d8f", "name": "Commented-code block (5 lines) in src/sim/world/input.ts:10", "shortDescription": {"text": "Commented-code block (5 lines) in src/sim/world/input.ts:10"}, "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-67e3504963113aeb", "name": "Commented-code block (8 lines) in src/sim/world/prove.ts:17", "shortDescription": {"text": "Commented-code block (8 lines) in src/sim/world/prove.ts:17"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-04ad5faab1db32aa", "name": "Commented-code block (5 lines) in src/sim/collide/circle.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/sim/collide/circle.ts:5"}, "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-439cfe9f980c58ee", "name": "Commented-code block (7 lines) in src/sim/collide/index.ts:9", "shortDescription": {"text": "Commented-code block (7 lines) in src/sim/collide/index.ts:9"}, "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-7b3c7b403f681c46", "name": "Commented-code block (6 lines) in src/sim/collide/terrain.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/sim/collide/terrain.ts:5"}, "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-dedc52c135c60c14", "name": "Commented-code block (5 lines) in src/sim/collide/prove.ts:105", "shortDescription": {"text": "Commented-code block (5 lines) in src/sim/collide/prove.ts:105"}, "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-236f35436cc1f0f7", "name": "Commented-code block (7 lines) in src/render/loop.ts:10", "shortDescription": {"text": "Commented-code block (7 lines) in src/render/loop.ts:10"}, "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-b77940f054804ff8", "name": "Commented-code block (6 lines) in src/render/renderer.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/render/renderer.ts:5"}, "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-e73a01444768f190", "name": "Commented-code block (8 lines) in src/render/input-controller.ts:5", "shortDescription": {"text": "Commented-code block (8 lines) in src/render/input-controller.ts:5"}, "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-edc82d0477324ac1", "name": "Commented-code block (7 lines) in src/render/character.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/render/character.ts:5"}, "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-6e8087a96b99b071", "name": "Commented-code block (8 lines) in src/render/character.test.ts:1", "shortDescription": {"text": "Commented-code block (8 lines) in src/render/character.test.ts: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}}]}}, "automationDetails": {"id": "repobility/22466"}, "properties": {"repository": "vviseguy/ascent", "repoUrl": "https://github.com/vviseguy/ascent", "branch": "main"}, "results": [{"ruleId": "scanner-47268d36a893055f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/floor/prove.ts:82"}, "properties": {"repobilityId": "52d42186d7e1b1e7", "scanner": "scanner-primary", "fingerprint": "47268d36a893055f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fd51e7dc897aa83d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/game/prove.ts:47"}, "properties": {"repobilityId": "da9dc3a87f472e99", "scanner": "scanner-primary", "fingerprint": "fd51e7dc897aa83d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d5c157faff2df269", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/net/prove.ts:184"}, "properties": {"repobilityId": "4fd034a452461c23", "scanner": "scanner-primary", "fingerprint": "d5c157faff2df269", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3f91f1d653899402", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/prove.ts:142"}, "properties": {"repobilityId": "984767b338285dac", "scanner": "scanner-primary", "fingerprint": "3f91f1d653899402", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-851c79797bcfa4aa", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/spatial/prove.ts:88"}, "properties": {"repobilityId": "e408aaf52199f6b6", "scanner": "scanner-primary", "fingerprint": "851c79797bcfa4aa", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8863464f4c2f9060", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/hazards/prove.ts:49"}, "properties": {"repobilityId": "c19b93fd656bbbdc", "scanner": "scanner-primary", "fingerprint": "8863464f4c2f9060", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9841ef18aa0b0ee8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/fixed/prove.ts:87"}, "properties": {"repobilityId": "0affaf534e64c7b2", "scanner": "scanner-primary", "fingerprint": "9841ef18aa0b0ee8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5f42ac7c707018f0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/verbs/abilities-prove.ts:47"}, "properties": {"repobilityId": "395757413212f0bb", "scanner": "scanner-primary", "fingerprint": "5f42ac7c707018f0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d831decbb53b5624", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/verbs/prove.ts:49"}, "properties": {"repobilityId": "fee1ba60550459d4", "scanner": "scanner-primary", "fingerprint": "d831decbb53b5624", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6260e87ebda29bc0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/world/prove.ts:135"}, "properties": {"repobilityId": "d1743fac1256d556", "scanner": "scanner-primary", "fingerprint": "6260e87ebda29bc0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b3af88aee7974d20", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/sim/collide/prove.ts:67"}, "properties": {"repobilityId": "d13084d028beb05c", "scanner": "scanner-primary", "fingerprint": "b3af88aee7974d20", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"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-d8797091088069e1", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/lab-snap.mjs:21"}, "properties": {"repobilityId": "4495bfa94577f16a", "scanner": "scanner-primary", "fingerprint": "d8797091088069e1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/lab-snap.mjs"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-5c3065823c5c3081", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/main.ts:26"}, "properties": {"repobilityId": "d54f1583e82d6ec4", "scanner": "scanner-primary", "fingerprint": "5c3065823c5c3081", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/main.ts"}, "region": {"startLine": 26}}}]}, {"ruleId": "scanner-db447fd3412fa11e", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/lab/lab.ts:136"}, "properties": {"repobilityId": "a04a9a2c66450dd0", "scanner": "scanner-primary", "fingerprint": "db447fd3412fa11e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/lab/lab.ts"}, "region": {"startLine": 136}}}]}, {"ruleId": "scanner-ed4322eb9a869754", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/render/renderer.ts:1042"}, "properties": {"repobilityId": "d3098a428673f3bd", "scanner": "scanner-primary", "fingerprint": "ed4322eb9a869754", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/render/renderer.ts"}, "region": {"startLine": 1042}}}]}, {"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-28c4a04bd807da0c", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "419d1ec7943efec2", "scanner": "scanner-primary", "fingerprint": "28c4a04bd807da0c", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 42}}}]}, {"ruleId": "scanner-ad6701f0a8405e22", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "8384c23520d55657", "scanner": "scanner-primary", "fingerprint": "ad6701f0a8405e22", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3a14c1482932078c", "level": "note", "message": {"text": "Very large file: src/render/renderer.ts (1128 lines)"}, "properties": {"repobilityId": "287c2dacc845ab95", "scanner": "scanner-primary", "fingerprint": "3a14c1482932078c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6893a6c8b0861585", "level": "warning", "message": {"text": "Very low test-to-source ratio"}, "properties": {"repobilityId": "54a7de3f06314bf0", "scanner": "scanner-primary", "fingerprint": "6893a6c8b0861585", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["tests", "coverage"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "5ee4b0f7444d3b97", "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": "78a9acd0d79c7a3c", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "97333cf2b60aaa03", "scanner": "scanner-primary", "fingerprint": "749d4bc1bd66df5f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "37152dcded673dd4", "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": "e9ec916cf31d42f5", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-9b60f5c214e33213", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/main.ts:5"}, "properties": {"repobilityId": "684adaea3321420a", "scanner": "scanner-primary", "fingerprint": "9b60f5c214e33213", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-13d356ea2bd3bb7b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lab/element.ts:5"}, "properties": {"repobilityId": "780262249041f104", "scanner": "scanner-primary", "fingerprint": "13d356ea2bd3bb7b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-29371fe09e24933a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lab/lab.ts:9"}, "properties": {"repobilityId": "ecb24215a0d835fb", "scanner": "scanner-primary", "fingerprint": "29371fe09e24933a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-607881900326771b", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/lab/elements/fern-shrub.ts:10"}, "properties": {"repobilityId": "03ce29aace0e96a3", "scanner": "scanner-primary", "fingerprint": "607881900326771b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7740fdbcf5e62309", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lab/elements/vine-drape.ts:5"}, "properties": {"repobilityId": "cff05aca54d3d2eb", "scanner": "scanner-primary", "fingerprint": "7740fdbcf5e62309", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa4859a6cc7ee64f", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lab/elements/rubble-pile.ts:5"}, "properties": {"repobilityId": "f2be5f6aa54cb1e2", "scanner": "scanner-primary", "fingerprint": "aa4859a6cc7ee64f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-091723c6bbc428d6", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lab/elements/glow-crystal.ts:5"}, "properties": {"repobilityId": "3f26e93a0c65efc6", "scanner": "scanner-primary", "fingerprint": "091723c6bbc428d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f08775400881feb1", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/lab/elements/vine-wall.ts:5"}, "properties": {"repobilityId": "98c6dcbfc441a035", "scanner": "scanner-primary", "fingerprint": "f08775400881feb1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-537a98c044be1798", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/lab/elements/stone-slab.ts:5"}, "properties": {"repobilityId": "3f00dbc843ce6152", "scanner": "scanner-primary", "fingerprint": "537a98c044be1798", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-631f2e92b7b4267a", "level": "none", "message": {"text": "Commented-code block (16 lines) in src/lab/elements/grass-clump.ts:8"}, "properties": {"repobilityId": "2d006a405f8d53ff", "scanner": "scanner-primary", "fingerprint": "631f2e92b7b4267a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-01bddce824dc0b33", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/floor/verify.ts:198"}, "properties": {"repobilityId": "7047228bb3a5819e", "scanner": "scanner-primary", "fingerprint": "01bddce824dc0b33", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-42b2a1288d041dba", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/game/survival.ts:9"}, "properties": {"repobilityId": "8a253c53fa81f1d9", "scanner": "scanner-primary", "fingerprint": "42b2a1288d041dba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8e467c80bf423ab8", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/game/route-check.ts:5"}, "properties": {"repobilityId": "fbeac6a2923ec3c6", "scanner": "scanner-primary", "fingerprint": "8e467c80bf423ab8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4fd649addb0590be", "level": "none", "message": {"text": "Commented-code block (30 lines) in src/game/tower.ts:9"}, "properties": {"repobilityId": "b6c6cb6bea0e1095", "scanner": "scanner-primary", "fingerprint": "4fd649addb0590be", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-19fb5b876cdcd9c6", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/game/match.ts:14"}, "properties": {"repobilityId": "4363806355269b4e", "scanner": "scanner-primary", "fingerprint": "19fb5b876cdcd9c6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8b905d8a07c6752e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/game/beacon.ts:6"}, "properties": {"repobilityId": "773de31afa790a65", "scanner": "scanner-primary", "fingerprint": "8b905d8a07c6752e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ef83635535262fa2", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/game/boons.ts:9"}, "properties": {"repobilityId": "5ddcaa6c1b132ecd", "scanner": "scanner-primary", "fingerprint": "ef83635535262fa2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-941ccd3ccf53f2ea", "level": "none", "message": {"text": "Commented-code block (21 lines) in src/game/prove.ts:11"}, "properties": {"repobilityId": "17094c9d53e38725", "scanner": "scanner-primary", "fingerprint": "941ccd3ccf53f2ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-32a3a96af3781b85", "level": "none", "message": {"text": "Commented-code block (14 lines) in src/net/rollback.ts:5"}, "properties": {"repobilityId": "e34dd27289bf27cd", "scanner": "scanner-primary", "fingerprint": "32a3a96af3781b85", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c82bb07995acb53d", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/net/room-code.ts:5"}, "properties": {"repobilityId": "a71dea77f02595fe", "scanner": "scanner-primary", "fingerprint": "c82bb07995acb53d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d80d9d64b2a32df3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/net/input-bus.ts:5"}, "properties": {"repobilityId": "267c29a3488772af", "scanner": "scanner-primary", "fingerprint": "d80d9d64b2a32df3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4f64a68096e947b0", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/net/transport.ts:5"}, "properties": {"repobilityId": "339178b8191fa4ee", "scanner": "scanner-primary", "fingerprint": "4f64a68096e947b0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d25c3981e24bfb23", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/net/prove.ts:6"}, "properties": {"repobilityId": "819c16f21e40c774", "scanner": "scanner-primary", "fingerprint": "d25c3981e24bfb23", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-90c86281f826e708", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/net/transport-peerjs.ts:5"}, "properties": {"repobilityId": "89e7803acda8050f", "scanner": "scanner-primary", "fingerprint": "90c86281f826e708", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d7511b78309f1035", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/net/wire.ts:10"}, "properties": {"repobilityId": "31a3d952f6778f5d", "scanner": "scanner-primary", "fingerprint": "d7511b78309f1035", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c35875035e2dc541", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/sim/prove.ts:14"}, "properties": {"repobilityId": "8063851b97aff2af", "scanner": "scanner-primary", "fingerprint": "c35875035e2dc541", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ab414dd001e8e473", "level": "none", "message": {"text": "Commented-code block (14 lines) in src/sim/sim.ts:12"}, "properties": {"repobilityId": "2cf4baa9f91e72f4", "scanner": "scanner-primary", "fingerprint": "ab414dd001e8e473", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-463bb133c804b436", "level": "none", "message": {"text": "Commented-code block (12 lines) in src/sim/spatial/grid.ts:5"}, "properties": {"repobilityId": "cdc676b8d6a9f2ce", "scanner": "scanner-primary", "fingerprint": "463bb133c804b436", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1ba3bd17c497b4e7", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/sim/spatial/index.ts:5"}, "properties": {"repobilityId": "64ca9aa73fed3180", "scanner": "scanner-primary", "fingerprint": "1ba3bd17c497b4e7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-284ceb3c5dfe61fa", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/sim/spatial/prove.ts:14"}, "properties": {"repobilityId": "ece995c304a3da18", "scanner": "scanner-primary", "fingerprint": "284ceb3c5dfe61fa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d82b632daa3160ad", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/sim/hazards/schedule.ts:5"}, "properties": {"repobilityId": "8df201c0adfa447b", "scanner": "scanner-primary", "fingerprint": "d82b632daa3160ad", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-195d14f3496145c5", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/sim/hazards/index.ts:1"}, "properties": {"repobilityId": "70da79e00cf0c78e", "scanner": "scanner-primary", "fingerprint": "195d14f3496145c5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6c25e5fbf2a1ac73", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/sim/hazards/model.ts:5"}, "properties": {"repobilityId": "f8f27b15952aa32a", "scanner": "scanner-primary", "fingerprint": "6c25e5fbf2a1ac73", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ae55af23b20c639d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/sim/hazards/falldamage.ts:9"}, "properties": {"repobilityId": "79197a28c4e7f1aa", "scanner": "scanner-primary", "fingerprint": "ae55af23b20c639d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2ac96ea02fb41b8b", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/sim/hazards/apply.ts:5"}, "properties": {"repobilityId": "2e392f4752decaca", "scanner": "scanner-primary", "fingerprint": "2ac96ea02fb41b8b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a46c9183a4bdb969", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/sim/hazards/prove.ts:9"}, "properties": {"repobilityId": "209afcbb90654c16", "scanner": "scanner-primary", "fingerprint": "a46c9183a4bdb969", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9707d1828e53f7cd", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/sim/hazards/jitter.ts:5"}, "properties": {"repobilityId": "314a5923a2b038c2", "scanner": "scanner-primary", "fingerprint": "9707d1828e53f7cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-56e85f8e385c03a8", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/sim/fixed/vec.ts:5"}, "properties": {"repobilityId": "55ec1b14567f8143", "scanner": "scanner-primary", "fingerprint": "56e85f8e385c03a8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec542ad998bd9c03", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/sim/fixed/prove.ts:1"}, "properties": {"repobilityId": "6b5592df18b30ded", "scanner": "scanner-primary", "fingerprint": "ec542ad998bd9c03", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9f694118c6f7976c", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/sim/fixed/fixed.ts:5"}, "properties": {"repobilityId": "87244d8c43119ba8", "scanner": "scanner-primary", "fingerprint": "9f694118c6f7976c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ab757372fde9690", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/sim/verbs/config.ts:5"}, "properties": {"repobilityId": "61fa5f9a3f0280f0", "scanner": "scanner-primary", "fingerprint": "9ab757372fde9690", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bbf4f06ba92680cb", "level": "none", "message": {"text": "Commented-code block (12 lines) in src/sim/verbs/abilities-prove.ts:7"}, "properties": {"repobilityId": "d6301bbf06ab1560", "scanner": "scanner-primary", "fingerprint": "bbf4f06ba92680cb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-59993ccb42509fe7", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/sim/verbs/abilities.ts:5"}, "properties": {"repobilityId": "88193ad02eacd6ff", "scanner": "scanner-primary", "fingerprint": "59993ccb42509fe7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bcf01cd71383062d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/sim/verbs/verbs.ts:5"}, "properties": {"repobilityId": "e71be7c1e66da616", "scanner": "scanner-primary", "fingerprint": "bcf01cd71383062d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a0a562c8ead4652a", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/sim/verbs/prove.ts:7"}, "properties": {"repobilityId": "542242e45878a11f", "scanner": "scanner-primary", "fingerprint": "a0a562c8ead4652a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c746afb2e3d656f5", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/sim/verbs/jitter.ts:5"}, "properties": {"repobilityId": "67baa83dcd35961f", "scanner": "scanner-primary", "fingerprint": "c746afb2e3d656f5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-170c47a5f3846ecb", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/sim/world/step.ts:45"}, "properties": {"repobilityId": "ba5fe91e9d2d9c37", "scanner": "scanner-primary", "fingerprint": "170c47a5f3846ecb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0afb790282a7448d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/sim/world/snapshot.ts:5"}, "properties": {"repobilityId": "b67a393dbe9eaf60", "scanner": "scanner-primary", "fingerprint": "0afb790282a7448d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c0d6bf4747cb864b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/sim/world/state.ts:5"}, "properties": {"repobilityId": "a2be87622dcc21a2", "scanner": "scanner-primary", "fingerprint": "c0d6bf4747cb864b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ebc5c9f2d6d74f98", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/sim/world/hash.ts:5"}, "properties": {"repobilityId": "28c1a1825cfe33cc", "scanner": "scanner-primary", "fingerprint": "ebc5c9f2d6d74f98", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c848cef581ef2d8f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/sim/world/input.ts:10"}, "properties": {"repobilityId": "66e0e70a82f86856", "scanner": "scanner-primary", "fingerprint": "c848cef581ef2d8f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-67e3504963113aeb", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/sim/world/prove.ts:17"}, "properties": {"repobilityId": "3d4e4ea74224bc8b", "scanner": "scanner-primary", "fingerprint": "67e3504963113aeb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-04ad5faab1db32aa", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/sim/collide/circle.ts:5"}, "properties": {"repobilityId": "43eab7ef2ceecd0a", "scanner": "scanner-primary", "fingerprint": "04ad5faab1db32aa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-439cfe9f980c58ee", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/sim/collide/index.ts:9"}, "properties": {"repobilityId": "ff8b7daad1756af7", "scanner": "scanner-primary", "fingerprint": "439cfe9f980c58ee", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7b3c7b403f681c46", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/sim/collide/terrain.ts:5"}, "properties": {"repobilityId": "4644bbf222927a7d", "scanner": "scanner-primary", "fingerprint": "7b3c7b403f681c46", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dedc52c135c60c14", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/sim/collide/prove.ts:105"}, "properties": {"repobilityId": "8bc1f7bd6166008f", "scanner": "scanner-primary", "fingerprint": "dedc52c135c60c14", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-236f35436cc1f0f7", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/render/loop.ts:10"}, "properties": {"repobilityId": "605f915c4c813c1a", "scanner": "scanner-primary", "fingerprint": "236f35436cc1f0f7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b77940f054804ff8", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/render/renderer.ts:5"}, "properties": {"repobilityId": "ea40af325bce9f81", "scanner": "scanner-primary", "fingerprint": "b77940f054804ff8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e73a01444768f190", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/render/input-controller.ts:5"}, "properties": {"repobilityId": "ff6f7f5484d79a3c", "scanner": "scanner-primary", "fingerprint": "e73a01444768f190", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-edc82d0477324ac1", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/render/character.ts:5"}, "properties": {"repobilityId": "c2d17839f8e49dc8", "scanner": "scanner-primary", "fingerprint": "edc82d0477324ac1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6e8087a96b99b071", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/render/character.test.ts:1"}, "properties": {"repobilityId": "a9f6729f34411e7e", "scanner": "scanner-primary", "fingerprint": "6e8087a96b99b071", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}]}]}