{"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-3b3894e16319cf23", "name": "Stray `console.log` in TS/JS \u2014 assets/js/skibidi-toilet-tower-defense.js:24", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assets/js/skibidi-toilet-tower-defense.js:24"}, "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-c456e5fdbdf3e3b8", "name": "Stray `console.log` in TS/JS \u2014 assets/js/boomer-monopoly.js:24", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 assets/js/boomer-monopoly.js:24"}, "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-c1034368f182dce3", "name": "TODO/FIXME marker in shipping code \u2014 assets/js/ads.js:126", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 assets/js/ads.js:126"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-08b8ac413ad82bc9", "name": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/rizz-craft.js:1266", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/rizz-craft.js:1266"}, "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-e3fbbb9d43f384a2", "name": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/apop-demon-hunters.js:857", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/apop-demon-hunters.js:857"}, "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-c542be69b9170ff0", "name": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/doorcrash-no-tip-nitro.js:835", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/doorcrash-no-tip-nitro.js:835"}, "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-311a577ce4e90224", "name": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/skibidi-toilet-tower-defense.js:260", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/skibidi-toilet-tower-defense.js:260"}, "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-d1629bff4a75c9f0", "name": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/boomer-monopoly.js:575", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/boomer-monopoly.js:575"}, "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-5073400780e7ce2e", "name": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/looksmaxxing.js:1218", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/looksmaxxing.js:1218"}, "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-851548b0b7cffd0e", "name": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/dont-look-gym-girl.js:923", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/dont-look-gym-girl.js:923"}, "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-76c19e1cce7ba080", "name": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/strait-of-hormuz.js:685", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/strait-of-hormuz.js:685"}, "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-3021a1aa4f68e47a", "name": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/mr-feast.js:711", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/mr-feast.js:711"}, "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-05df279bf5759e83", "name": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/ads.js:84", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/ads.js:84"}, "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-235220e8fc9d0b8f", "name": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/skid-row-glow-up.js:275", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/skid-row-glow-up.js:275"}, "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-81f2c1c096d6de87", "name": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/main.js:29", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/main.js:29"}, "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-37578b33f0bcad07", "name": "Very large file: assets/js/rizz-craft.js (1403 lines)", "shortDescription": {"text": "Very large file: assets/js/rizz-craft.js (1403 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-b0eae2557ce5d2db", "name": "Very large file: assets/js/dont-look-gym-girl.js (1515 lines)", "shortDescription": {"text": "Very large file: assets/js/dont-look-gym-girl.js (1515 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-6c3ad544902888a7", "name": "Very large file: assets/js/again.js (1740 lines)", "shortDescription": {"text": "Very large file: assets/js/again.js (1740 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-efdc67e8e9ae11cb", "name": "Very large file: assets/js/strait-of-hormuz.js (1597 lines)", "shortDescription": {"text": "Very large file: assets/js/strait-of-hormuz.js (1597 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-e802094ff6331656", "name": "Very large file: assets/js/skid-row-glow-up.js (2058 lines)", "shortDescription": {"text": "Very large file: assets/js/skid-row-glow-up.js (2058 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6893a6c8b0861585", "name": "Very low test-to-source ratio", "shortDescription": {"text": "Very low test-to-source ratio"}, "fullDescription": {"text": "0 test file(s) for 13 source file(s) (ratio 0.00). Consider adding integration or unit tests for critical paths."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-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, tests. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-38676ed18b5bfb92", "name": "Commented-code block (5 lines) in assets/js/rizz-craft.js:28", "shortDescription": {"text": "Commented-code block (5 lines) in assets/js/rizz-craft.js: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-77b4a40b3a7c26e5", "name": "Legacy-named symbol `ets_state_v1` in assets/js/dont-look-gym-girl.js:877", "shortDescription": {"text": "Legacy-named symbol `ets_state_v1` in assets/js/dont-look-gym-girl.js:877"}, "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-8811fdc4464b5429", "name": "Commented-code block (5 lines) in assets/js/dont-look-gym-girl.js:83", "shortDescription": {"text": "Commented-code block (5 lines) in assets/js/dont-look-gym-girl.js: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-75916242b63d96f3", "name": "Commented-code block (13 lines) in assets/js/strait-of-hormuz.js:248", "shortDescription": {"text": "Commented-code block (13 lines) in assets/js/strait-of-hormuz.js:248"}, "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-3399ea0d15e954c2", "name": "Legacy-named symbol `ets_state_v1` in assets/js/ads.js:10", "shortDescription": {"text": "Legacy-named symbol `ets_state_v1` in assets/js/ads.js:10"}, "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}}]}}, "automationDetails": {"id": "repobility/25009"}, "properties": {"repository": "clesterdpt-lgtm/rainbot-gaming", "repoUrl": "https://github.com/clesterdpt-lgtm/rainbot-gaming", "branch": "main"}, "results": [{"ruleId": "scanner-3b3894e16319cf23", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assets/js/skibidi-toilet-tower-defense.js:24"}, "properties": {"repobilityId": "09d96d1af126da5b", "scanner": "scanner-primary", "fingerprint": "3b3894e16319cf23", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c456e5fdbdf3e3b8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 assets/js/boomer-monopoly.js:24"}, "properties": {"repobilityId": "a39df9647b71417d", "scanner": "scanner-primary", "fingerprint": "c456e5fdbdf3e3b8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c1034368f182dce3", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 assets/js/ads.js:126"}, "properties": {"repobilityId": "46b36dba67a59fa7", "scanner": "scanner-primary", "fingerprint": "c1034368f182dce3", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-08b8ac413ad82bc9", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/rizz-craft.js:1266"}, "properties": {"repobilityId": "490e38827da0c8d6", "scanner": "scanner-primary", "fingerprint": "08b8ac413ad82bc9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assets/js/rizz-craft.js"}, "region": {"startLine": 1266}}}]}, {"ruleId": "scanner-e3fbbb9d43f384a2", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/apop-demon-hunters.js:857"}, "properties": {"repobilityId": "286c055a37245a6a", "scanner": "scanner-primary", "fingerprint": "e3fbbb9d43f384a2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assets/js/apop-demon-hunters.js"}, "region": {"startLine": 857}}}]}, {"ruleId": "scanner-c542be69b9170ff0", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/doorcrash-no-tip-nitro.js:835"}, "properties": {"repobilityId": "f9a3c6f7bb378043", "scanner": "scanner-primary", "fingerprint": "c542be69b9170ff0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assets/js/doorcrash-no-tip-nitro.js"}, "region": {"startLine": 835}}}]}, {"ruleId": "scanner-311a577ce4e90224", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/skibidi-toilet-tower-defense.js:260"}, "properties": {"repobilityId": "b72b1e27cee5a70d", "scanner": "scanner-primary", "fingerprint": "311a577ce4e90224", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assets/js/skibidi-toilet-tower-defense.js"}, "region": {"startLine": 260}}}]}, {"ruleId": "scanner-d1629bff4a75c9f0", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/boomer-monopoly.js:575"}, "properties": {"repobilityId": "1dd5436379015b76", "scanner": "scanner-primary", "fingerprint": "d1629bff4a75c9f0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assets/js/boomer-monopoly.js"}, "region": {"startLine": 575}}}]}, {"ruleId": "scanner-5073400780e7ce2e", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/looksmaxxing.js:1218"}, "properties": {"repobilityId": "0fc1063ea14b2f3a", "scanner": "scanner-primary", "fingerprint": "5073400780e7ce2e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assets/js/looksmaxxing.js"}, "region": {"startLine": 1218}}}]}, {"ruleId": "scanner-851548b0b7cffd0e", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/dont-look-gym-girl.js:923"}, "properties": {"repobilityId": "4ca499351e3cb0d7", "scanner": "scanner-primary", "fingerprint": "851548b0b7cffd0e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assets/js/dont-look-gym-girl.js"}, "region": {"startLine": 923}}}]}, {"ruleId": "scanner-76c19e1cce7ba080", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/strait-of-hormuz.js:685"}, "properties": {"repobilityId": "c650fe441212f2d9", "scanner": "scanner-primary", "fingerprint": "76c19e1cce7ba080", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assets/js/strait-of-hormuz.js"}, "region": {"startLine": 685}}}]}, {"ruleId": "scanner-3021a1aa4f68e47a", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/mr-feast.js:711"}, "properties": {"repobilityId": "15a671e08d0dbe9d", "scanner": "scanner-primary", "fingerprint": "3021a1aa4f68e47a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assets/js/mr-feast.js"}, "region": {"startLine": 711}}}]}, {"ruleId": "scanner-05df279bf5759e83", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/ads.js:84"}, "properties": {"repobilityId": "d2c9d42c2d600a86", "scanner": "scanner-primary", "fingerprint": "05df279bf5759e83", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assets/js/ads.js"}, "region": {"startLine": 84}}}]}, {"ruleId": "scanner-235220e8fc9d0b8f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/skid-row-glow-up.js:275"}, "properties": {"repobilityId": "9abe0a524099c701", "scanner": "scanner-primary", "fingerprint": "235220e8fc9d0b8f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assets/js/skid-row-glow-up.js"}, "region": {"startLine": 275}}}]}, {"ruleId": "scanner-81f2c1c096d6de87", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in assets/js/main.js:29"}, "properties": {"repobilityId": "b919f77767257c8d", "scanner": "scanner-primary", "fingerprint": "81f2c1c096d6de87", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "assets/js/main.js"}, "region": {"startLine": 29}}}]}, {"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-37578b33f0bcad07", "level": "note", "message": {"text": "Very large file: assets/js/rizz-craft.js (1403 lines)"}, "properties": {"repobilityId": "14615da0f69d991e", "scanner": "scanner-primary", "fingerprint": "37578b33f0bcad07", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b0eae2557ce5d2db", "level": "note", "message": {"text": "Very large file: assets/js/dont-look-gym-girl.js (1515 lines)"}, "properties": {"repobilityId": "b84dd75e35591134", "scanner": "scanner-primary", "fingerprint": "b0eae2557ce5d2db", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6c3ad544902888a7", "level": "note", "message": {"text": "Very large file: assets/js/again.js (1740 lines)"}, "properties": {"repobilityId": "e034f059ddf14b7e", "scanner": "scanner-primary", "fingerprint": "6c3ad544902888a7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-efdc67e8e9ae11cb", "level": "note", "message": {"text": "Very large file: assets/js/strait-of-hormuz.js (1597 lines)"}, "properties": {"repobilityId": "be01a6efb78989c7", "scanner": "scanner-primary", "fingerprint": "efdc67e8e9ae11cb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e802094ff6331656", "level": "note", "message": {"text": "Very large file: assets/js/skid-row-glow-up.js (2058 lines)"}, "properties": {"repobilityId": "c8313b12749666f8", "scanner": "scanner-primary", "fingerprint": "e802094ff6331656", "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": "d0ba9c1f3617eb30", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "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": "8289016bf5e5d2c1", "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": "warning", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "5379ae8273e59a70", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-38676ed18b5bfb92", "level": "none", "message": {"text": "Commented-code block (5 lines) in assets/js/rizz-craft.js:28"}, "properties": {"repobilityId": "bd60250d1bca3873", "scanner": "scanner-primary", "fingerprint": "38676ed18b5bfb92", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-77b4a40b3a7c26e5", "level": "note", "message": {"text": "Legacy-named symbol `ets_state_v1` in assets/js/dont-look-gym-girl.js:877"}, "properties": {"repobilityId": "dc4f7231b823b9fd", "scanner": "scanner-primary", "fingerprint": "77b4a40b3a7c26e5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8811fdc4464b5429", "level": "none", "message": {"text": "Commented-code block (5 lines) in assets/js/dont-look-gym-girl.js:83"}, "properties": {"repobilityId": "5bbacda9267fff3b", "scanner": "scanner-primary", "fingerprint": "8811fdc4464b5429", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-75916242b63d96f3", "level": "none", "message": {"text": "Commented-code block (13 lines) in assets/js/strait-of-hormuz.js:248"}, "properties": {"repobilityId": "5d65100a2d216588", "scanner": "scanner-primary", "fingerprint": "75916242b63d96f3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3399ea0d15e954c2", "level": "note", "message": {"text": "Legacy-named symbol `ets_state_v1` in assets/js/ads.js:10"}, "properties": {"repobilityId": "34e1bb046ccdbf88", "scanner": "scanner-primary", "fingerprint": "3399ea0d15e954c2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}]}]}