{"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": "foundry_unresolved_feedback", "name": "Foundry mined unresolved feedback: RuiminYan/cuberoot.me", "shortDescription": {"text": "Foundry mined unresolved feedback: RuiminYan/cuberoot.me"}, "fullDescription": {"text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: RuiminYan/cuberoot.me\nThread: RuiminYan/cuberoot.me#1\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: RuiminYan/cuberoot.me\nThread: RuiminYan/cuberoot.me#1\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: RuiminYan/cuberoot.me#1\nRepo: RuiminYan/cuberoot.me\nIssue/PR number: 1\nGraph consistency label: needs_more_evidence\nNodes: 18\nEdges: 26\nNode types: {'link_quality': 6, 'comment': 4, 'comment_chain': 4, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_h"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_assumption_check", "name": "Foundry mined assumption checks: RuiminYan/cuberoot.me", "shortDescription": {"text": "Foundry mined assumption checks: RuiminYan/cuberoot.me"}, "fullDescription": {"text": "Comment chain pattern product: assumption_checks\nRepo: RuiminYan/cuberoot.me\nThread: RuiminYan/cuberoot.me#1\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: RuiminYan/cuberoot.me#1\nRepo: RuiminYan/cuberoot.me\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 4\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'human_feedback_general': 4}\nPolarities: {'neutral': 4}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-a24324a791182b7f\",\n    \"kind\": \"issue_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/RuiminYan/cuberoot.me/issues/1\",\n    \"text\": \"Git"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.62, "cwe": "", "owasp": ""}}, {"id": "scanner-999cf47b32b549a6", "name": "Stray `console.log` in TS/JS \u2014 tools/sw-register.js:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/sw-register.js:12"}, "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-f89b9ced6d2c2e50", "name": "TODO/FIXME marker in shipping code \u2014 tools/i18n/i18n.js:454", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 tools/i18n/i18n.js:454"}, "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-a33abbdd04387ec8", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/scramble.js:51", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/scramble.js:51"}, "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-eea2ea517d25a2c9", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/pyraminx.js:589", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/pyraminx.js:589"}, "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-f293caf6ec771467", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/scramble_333_edit.js:1057", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/scramble_333_edit.js:1057"}, "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-ece6d7fef0d41d24", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/scramble_sq1_new.js:209", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/scramble_sq1_new.js:209"}, "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-a46861d206c44153", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/redi.js:216", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/redi.js:216"}, "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-b2988ff5ae489901", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/utilscramble.js:405", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/utilscramble.js:405"}, "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-9448d30f4d4f781f", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/slide.js:192", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/slide.js:192"}, "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-5399bb82b5348fde", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/scramble_444.js:1310", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/scramble_444.js:1310"}, "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-c61c6f57eef6f5bf", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/mathlib.js:357", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/mathlib.js:357"}, "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-9d78fecf07e5864e", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/pat3x3.js:138", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/pat3x3.js:138"}, "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-b9e2dde433921ac8", "name": "TODO/FIXME marker in shipping code \u2014 tools/cstimer-scramble/lib/poly3dlib.js:572", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 tools/cstimer-scramble/lib/poly3dlib.js:572"}, "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-b290c77bbb5a3aa5", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/poly3dlib.js:230", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/poly3dlib.js:230"}, "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-d8f1d7b953b693ce", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/grouplib.js:253", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/grouplib.js:253"}, "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-fd5fa12fba55e61b", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/utillib.js:73", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/utillib.js:73"}, "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-1ec6ae51484dca56", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/min2phase.js:1267", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/min2phase.js:1267"}, "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-889e713be35ee3f6", "name": "TODO/FIXME marker in shipping code \u2014 tools/alg_trainers/src/timer.js:3", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 tools/alg_trainers/src/timer.js:3"}, "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-d48e45148cea579e", "name": "Stray `console.log` in TS/JS \u2014 tools/alg_trainers/src/timer.js:175", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/alg_trainers/src/timer.js:175"}, "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-68140eb540dd2ddc", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer/js/cstimer.js:51", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer/js/cstimer.js:51"}, "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-bfd8a3d6dbdad910", "name": "Stray `console.log` in TS/JS \u2014 tools/cstimer/js/twisty.js:90", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer/js/twisty.js:90"}, "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-eb6a2b1f94edd617", "name": "TODO/FIXME marker in shipping code \u2014 tools/src/functions/list.js:674", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 tools/src/functions/list.js:674"}, "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-e9eaeec4f530acff", "name": "Stray `console.log` in TS/JS \u2014 tools/src/functions/list.js:564", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/functions/list.js:564"}, "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-e0a20f27c72ffaeb", "name": "Stray `console.log` in TS/JS \u2014 tools/src/min2phase.js/min2phase.js:1267", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/min2phase.js/min2phase.js:1267"}, "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-7656448f7eaf322a", "name": "Stray `console.log` in TS/JS \u2014 tools/src/min2phase.js/test/randSolv.js:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/min2phase.js/test/randSolv.js:12"}, "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-ece6f837fc6217e9", "name": "Stray `console.log` in TS/JS \u2014 tools/src/min2phase.js/test/selectedStateTest.js:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/min2phase.js/test/selectedStateTest.js:12"}, "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-a77fa25755396420", "name": "Stray `console.log` in TS/JS \u2014 tools/src/min2phase.js/test/fastInit.js:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/min2phase.js/test/fastInit.js:12"}, "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-7970f556fc586ab0", "name": "Stray `console.log` in TS/JS \u2014 tools/src/xcross_free_pair_trainer/production/worker_prod.js:10", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/xcross_free_pair_trainer/production/worker_prod.js:10"}, "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-adbaf8831a343ef3", "name": "Stray `console.log` in TS/JS \u2014 tools/src/xxcrossTrainer/production/worker_prod.js:10", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/xxcrossTrainer/production/worker_prod.js:10"}, "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-cb01d204fbfb2783", "name": "Stray `console.log` in TS/JS \u2014 core/scripts/convert_zbls.js:39", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/scripts/convert_zbls.js:39"}, "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-41e9731e8d4c2459", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Solver.test.ts:14", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Solver.test.ts:14"}, "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-2acbdd0e5086cd60", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Reducer.test.ts:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Reducer.test.ts:12"}, "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-3dfc7ed53a4910f6", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Evaluator.test.ts:6", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Evaluator.test.ts:6"}, "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-dfadd2c7ac675ebc", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Analyzer.test.ts:17", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Analyzer.test.ts:17"}, "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-e6147d3c8c9bf127", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/CubeLib.test.ts:9", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/CubeLib.test.ts:9"}, "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-c942d4f9daf824d1", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/SSSecret.test.ts:36", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/SSSecret.test.ts:36"}, "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-a36b1df51a36e331", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Stats.test.ts:36", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Stats.test.ts:36"}, "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-4c189d8e6c6eed09", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Algs.test.ts:6", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Algs.test.ts:6"}, "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-65d6d393bdc54505", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Pruner.test.ts:13", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Pruner.test.ts:13"}, "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-b03f70edd485bd62", "name": "Icon-only button without accessible name \u2014 core/packages/client/components/CubeVirtualKeyboard.tsx:833", "shortDescription": {"text": "Icon-only button without accessible name \u2014 core/packages/client/components/CubeVirtualKeyboard.tsx:833"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b15ef576f23d1575", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/PuzzleSVG.tsx:115", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/PuzzleSVG.tsx:115"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-07115a4558d2fa68", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/ScramblePreview2D.tsx:134", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/ScramblePreview2D.tsx:134"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cf83947cf6ecb5ff", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/AlgCategoryView.tsx:84", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/AlgCategoryView.tsx:84"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ee6ab16db7bb8eb6", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/CubingPreview.tsx:173", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/CubingPreview.tsx:173"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-797599bbb9d3ceb3", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/EventIcon/EventIcon.tsx:32", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/EventIcon/EventIcon.tsx:32"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-02439433ea775d0b", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/client/components/WheelPicker/WheelPicker.tsx:122", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/components/WheelPicker/WheelPicker.tsx:122"}, "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-a6fea39421b11dc7", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/math/Tex.tsx:21", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/math/Tex.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b56363e23c5833c1", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/layout.tsx:40", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/layout.tsx:40"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-29d14801dbe74937", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/scramble/pattern/page.tsx:81", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/scramble/pattern/page.tsx:81"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2ec10953c3c3a5ab", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/scramble/gen/ClockColorPicker.tsx:", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/scramble/gen/ClockColorPicker.tsx:82"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-175f5082b95209ea", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/scramble/gen/TranslationsPicker.ts", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/scramble/gen/TranslationsPicker.tsx:158"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6ca39760545c5232", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/alg/commutator/page.tsx:592", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/alg/commutator/page.tsx:592"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7205102832b72fe5", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx:330", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx:330"}, "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-312372a0127c2425", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/frame-count/useFrameBuffer.ts:333", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/frame-count/useFrameBuffer.ts:333"}, "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-0f7fe228f5a49508", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/calc/page.tsx:46", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/calc/page.tsx:46"}, "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-5d7ca84b86a4eb6e", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/client/app/[lang]/calc/_components/components/chart_renderer.ts:255", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/app/[lang]/calc/_components/components/chart_renderer.ts:255"}, "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-0c931827c13ef335", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/code/language/katex/page.tsx:19", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/code/language/katex/page.tsx:19"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-19e74f91ffe6bdf7", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/code/language/latex/page.tsx:16", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/code/language/latex/page.tsx:16"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5215bbaf8788f10f", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/code/stack/_tools/i18next.tsx:98", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/code/stack/_tools/i18next.tsx:98"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3948118e498480a7", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/visualcube/page.tsx:1020", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/visualcube/page.tsx:1020"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-80c1c4e26fe3be66", "name": "Icon-only button without accessible name \u2014 core/packages/client/app/[lang]/battle/_components/AdvancedFeatures.tsx:167", "shortDescription": {"text": "Icon-only button without accessible name \u2014 core/packages/client/app/[lang]/battle/_components/AdvancedFeatures.tsx:167"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-54e5d5ac8e8daa80", "name": "Icon-only button without accessible name \u2014 core/packages/client/app/[lang]/battle/_components/VsHistoryPanel.tsx:123", "shortDescription": {"text": "Icon-only button without accessible name \u2014 core/packages/client/app/[lang]/battle/_components/VsHistoryPanel.tsx:123"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-59ce7093670a3fe9", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/scramble/scramble_444_rs.ts:1270", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/scramble/scramble_444_rs.ts:1270"}, "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-aa7178c032edbe84", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/scramble/__smoke__.ts:28", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/scramble/__smoke__.ts:28"}, "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-593bde6c21588e5a", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/scramble/kociemba/test_smoke.ts:33", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/scramble/kociemba/test_smoke.ts:33"}, "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-03564d6459ce0697", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/cube/state_test_data.ts:167", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/cube/state_test_data.ts:167"}, "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-d6af9a3b45fe94e2", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/bluetooth/index.ts:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/bluetooth/index.ts:7"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-eb034c0b7fa1498b", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/stackmat/__smoke__.ts:38", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/stackmat/__smoke__.ts:38"}, "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-1de3c35c5839d87d", "name": "Icon-only button without accessible name \u2014 core/packages/client/app/[lang]/timer/_shell/BattleView.tsx:971", "shortDescription": {"text": "Icon-only button without accessible name \u2014 core/packages/client/app/[lang]/timer/_shell/BattleView.tsx:971"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-35311577b1529905", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/timer/_shell/BattleView.tsx:586", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/timer/_shell/BattleView.tsx:586"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-039cc7c8903de9b3", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/wca/about/[id]/WcaAboutClient.tsx:", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/wca/about/[id]/WcaAboutClient.tsx:34"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-55a98869d4960b67", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/client/app/[lang]/wca/viz/_components/VizCanvas.tsx:5", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/app/[lang]/wca/viz/_components/VizCanvas.tsx:5"}, "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-0756307e33c77481", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/wca/prediction/_components/Theoret", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/wca/prediction/_components/TheoreticalLimitView.tsx:26"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fb23d0ccadbe0b1f", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/recon/[id]/page.tsx:70", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/recon/[id]/page.tsx:70"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-55b1b354035ac255", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/math/god/_components/Tex.tsx:21", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/math/god/_components/Tex.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-60f64143515880e2", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/math/group/_components/primitives.", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/math/group/_components/primitives.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5f2e4c424e9b6933", "name": "Icon-only button without accessible name \u2014 core/packages/client/app/[lang]/math/group/_components/sections/FreeGroups.ts", "shortDescription": {"text": "Icon-only button without accessible name \u2014 core/packages/client/app/[lang]/math/group/_components/sections/FreeGroups.tsx:283"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9602f0fe7ef80a2c", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/sim/cuber/instanced.ts:319", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/sim/cuber/instanced.ts:319"}, "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-2df78f92c89437f2", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/sim/cuber/cube.ts:101", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/sim/cuber/cube.ts:101"}, "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-ecb4813d6c649394", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/trainer/skewb/_components/SkewbIma", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/trainer/skewb/_components/SkewbImage.tsx:25"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e3a8e7d9eb1f5cf2", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/trainer/_roux/_components/CubeSim.tsx:117", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/trainer/_roux/_components/CubeSim.tsx:117"}, "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-6f5da1f7bb370dfd", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/client/app/[lang]/trainer/_roux/_components/CmllTrainerView.tsx:219", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/app/[lang]/trainer/_roux/_components/CmllTrainerView.tsx:219"}, "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-8dbdb571a0bce9bf", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/article/admin/reports/page.tsx:8", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/article/admin/reports/page.tsx:8"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bbcdc69409b4ba9c", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/tutorial/_components/AlgChip.tsx:7", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/tutorial/_components/AlgChip.tsx:70"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-dbb6885eb1dfe283", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/tutorial/_components/CaseCard.tsx:", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/tutorial/_components/CaseCard.tsx:23"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d352c51107775515", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/Algs.ts:397", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/Algs.ts:397"}, "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-e05ed0e4b906d2c4", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/Evaluator.ts:90", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/Evaluator.ts:90"}, "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-f5c9d94ca9102f0f", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/Analyzer.ts:60", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/Analyzer.ts:60"}, "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-295a9f3d6c7ccf6a", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/CubeLib.ts:237", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/CubeLib.ts:237"}, "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-70ec9086051a6884", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/Pruner.ts:5", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/Pruner.ts:5"}, "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-de79483a65eaa97b", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/Pruner.ts:79", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/Pruner.ts:79"}, "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-d03e594611d225f1", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/LocalStorage.ts:110", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/LocalStorage.ts:110"}, "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-84944a99526a907d", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/Solver.ts:177", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/Solver.ts:177"}, "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-3daf27788f4273c8", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/Config.ts:153", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/Config.ts:153"}, "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-66f007f48ac1d0bc", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/reducers/LSETrainerStateM.ts:88", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/reducers/LSETrainerStateM.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-c9ebfb542b56815f", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/reducers/Reducer.ts:40", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/reducers/Reducer.ts:40"}, "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-a383b51796897517", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/reducers/Reducer.ts:41", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/reducers/Reducer.ts:41"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-290a2559c0462dd7", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/reducers/BlockTrainerStateM.ts:70", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/reducers/BlockTrainerStateM.ts:70"}, "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-ac0411e6fb5550d3", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/reducers/BlockTrainerStateM.ts:63", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/reducers/BlockTrainerStateM.ts:63"}, "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-3bcd5fc8efe4c15f", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/reducers/CmllStateM.ts:349", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/reducers/CmllStateM.ts:349"}, "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-f3e76268282497b1", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/reducers/CmllStateM.ts:28", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/reducers/CmllStateM.ts:28"}, "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-c22d1229460f3a41", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/min2phase/off-thread.ts:7", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/min2phase/off-thread.ts:7"}, "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-a535c9c6c5409dff", "name": "Stray `console.log` in TS/JS \u2014 core/packages/client/public/scramble_module.js:47", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/public/scramble_module.js: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-bbd5e5cc53ba6403", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/visualcube/src/cube/simulation.ts:158", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/visualcube/src/cube/simulation.ts:158"}, "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-ca161f7ea1466e5b", "name": "Stray `console.log` in TS/JS \u2014 core/packages/alg-build/src/cli.ts:107", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/alg-build/src/cli.ts:107"}, "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-49c99a2fc68928d9", "name": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_puzzle_dist.ts:102", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_puzzle_dist.ts:102"}, "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-92820623e3f4375d", "name": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_comp_steps.ts:65", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_comp_steps.ts:65"}, "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-48c40b2c66807e77", "name": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_puzzle_examples.ts:200", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_puzzle_examples.ts:200"}, "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-2c4965c573ec6844", "name": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_wca_cross.ts:99", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_wca_cross.ts:99"}, "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-3cb76cc0903e0098", "name": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_recent_scrambles.ts:138", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_recent_scrambles.ts:138"}, "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-ba7e0de284f2a15e", "name": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build.ts:658", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build.ts:658"}, "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-09c4271ea2169b69", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/scripts/dump-past-comps.ts:201", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/scripts/dump-past-comps.ts:201"}, "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-dd3faa630a9de322", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/scripts/backfill-schedules.ts:110", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/scripts/backfill-schedules.ts:110"}, "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-b95603b263ce7965", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/index.ts:185", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/index.ts:185"}, "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-fdea6be780ba317a", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/cube555/daemon.ts:85", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/cube555/daemon.ts:85"}, "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-2f7eb4308da35e80", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/utils/cn_comp_zh_cache.ts:149", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/utils/cn_comp_zh_cache.ts:149"}, "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-eab00b0fce9142d6", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/utils/current_records.ts:94", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/utils/current_records.ts:94"}, "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-aafb3e18a1196a25", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/routes/membership.ts:500", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/routes/membership.ts:500"}, "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-c5eff5d9c37d1332", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/routes/wca_recent_records.ts:92", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/routes/wca_recent_records.ts:92"}, "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-ca76d93b0296dab8", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/routes/cubing_live.ts:1765", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/routes/cubing_live.ts:1765"}, "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-b5917cf87e172742", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/routes/wca_stats_extra.ts:497", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/routes/wca_stats_extra.ts:497"}, "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-4f723fba476ae284", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/nemesizer/loader.ts:116", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/nemesizer/loader.ts:116"}, "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-bf270ad2da10e618", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/tools/test_rankings.ts:9", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/tools/test_rankings.ts:9"}, "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-acff45963e4e4fb2", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/tools/build_channel_aliases.ts:99", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/tools/build_channel_aliases.ts:99"}, "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-527e6b96bb6bd59c", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/tools/gen_title.ts:194", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/tools/gen_title.ts:194"}, "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-f14f473b7d1fcba4", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/tools/run_tests.ts:134", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/tools/run_tests.ts:134"}, "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-336f20c815d598bb", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/wca_comp.ts:92", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/wca_comp.ts:92"}, "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-7b7627f41dd7a6c8", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/bark.ts:26", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/bark.ts:26"}, "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-f61dc89ee1ad9157", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/wca_live_pr.ts:323", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/wca_live_pr.ts:323"}, "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-465118d1be0a52c1", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/wca_past_results.ts:347", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/wca_past_results.ts:347"}, "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-549974ebb0453946", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/index.ts:22", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/index.ts:22"}, "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-81bd4fad6d031cf7", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/cubing_record.ts:539", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/cubing_record.ts:539"}, "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-50fd79a319ebaaf8", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/wca_live_record.ts:179", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/wca_live_record.ts:179"}, "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-61b353a2131b376b", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/cubing_comp.ts:86", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/cubing_comp.ts:86"}, "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-1819d392e1f08741", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/seed_watched.ts:35", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/seed_watched.ts:35"}, "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-c0ceb54a0abb5ea6", "name": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/cubeopt/daemon.ts:141", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/cubeopt/daemon.ts:141"}, "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-95e2ff9f070bf3b6", "name": "Stray `console.log` in TS/JS \u2014 core/packages/wb-build/src/scrape.ts:386", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/wb-build/src/scrape.ts:386"}, "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-5f0df3a2f151c429", "name": "Stray `console.log` in TS/JS \u2014 core/packages/stats-build/scripts/check_mismatch.ts:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/stats-build/scripts/check_mismatch.ts:7"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7a6895d956f759b9", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/stats-build/src/statistics/best_round.ts:99", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/stats-build/src/statistics/best_round.ts:99"}, "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-78552e9f63beb28e", "name": "Stray `console.log` in TS/JS \u2014 core/packages/stats-build/src/statistics/wr_metric.ts:59", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/stats-build/src/statistics/wr_metric.ts:59"}, "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-9ef732b84805ac78", "name": "Stray `console.log` in TS/JS \u2014 core/packages/stats-build/src/statistics/top10_history.ts:177", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/stats-build/src/statistics/top10_history.ts:177"}, "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-95316fbf9522721c", "name": "TODO/FIXME marker in shipping code \u2014 core/packages/stats-build/src/core/events.ts:4", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/stats-build/src/core/events.ts:4"}, "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-8d7c3c36611d5dcd", "name": "Privileged port 23 in use", "shortDescription": {"text": "Privileged port 23 in use"}, "fullDescription": {"text": "Port 23 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ae3cd0e49740eeaa", "name": "Privileged port 30 in use", "shortDescription": {"text": "Privileged port 30 in use"}, "fullDescription": {"text": "Port 30 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5216c377775a85b5", "name": "Privileged port 4 in use", "shortDescription": {"text": "Privileged port 4 in use"}, "fullDescription": {"text": "Port 4 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a8674df19385297e", "name": "Privileged port 1 in use", "shortDescription": {"text": "Privileged port 1 in use"}, "fullDescription": {"text": "Port 1 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-512ad80a80ad28aa", "name": "Privileged port 127 in use", "shortDescription": {"text": "Privileged port 127 in use"}, "fullDescription": {"text": "Port 127 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-086e3a8be8cad989", "name": "Insecure pattern 'cors_wildcard' in fmc/cubelib-server/src/main.rs:220", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in fmc/cubelib-server/src/main.rs:220"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bb5fd82f0569ff1c", "name": "Insecure pattern 'node_child_process' in solver/333opt/solve_loop.mjs:11", "shortDescription": {"text": "Insecure pattern 'node_child_process' in solver/333opt/solve_loop.mjs:11"}, "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-2b08f0eb15e29f0e", "name": "Insecure pattern 'node_child_process' in solver/333opt/solve.mjs:29", "shortDescription": {"text": "Insecure pattern 'node_child_process' in solver/333opt/solve.mjs:29"}, "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-1e86d0359119134a", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/callback.html:126", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/callback.html:126"}, "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-71d83b9f24dc3c52", "name": "Insecure pattern 'local_storage_auth_token' in tools/callback.html:114", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in tools/callback.html:114"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-276f33b928448277", "name": "Insecure pattern 'local_storage_auth_token' in tools/wca_auth.js:82", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in tools/wca_auth.js:82"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fcc2ee0526b37de6", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/xcross_trainer/index.html:947", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/xcross_trainer/index.html:947"}, "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-7ba26459d38661b2", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/pseudo_pairing_trainer/index.html:953", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/pseudo_pairing_trainer/index.html:953"}, "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-2d809dfdfe2e8534", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/shared/wca_person_picker.js:98", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/shared/wca_person_picker.js:98"}, "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-7438d0d6db20da5a", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/algTrainer/index.html:384", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/algTrainer/index.html:384"}, "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-e4adf0bbc40f4c81", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/eocross_trainer/index.html:924", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/eocross_trainer/index.html:924"}, "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-f89a7da28510a722", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/pairing_trainer/index.html:946", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/pairing_trainer/index.html:946"}, "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-72d1515e35f5281e", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/cross_trainer/index.html:921", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/cross_trainer/index.html:921"}, "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-e6bac3315b2dfdcb", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/solver/index.html:2307", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/solver/index.html:2307"}, "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-6042e0c4b9299c5b", "name": "Insecure pattern 'insert_adjacent_html' in tools/solver/index.html:4666", "shortDescription": {"text": "Insecure pattern 'insert_adjacent_html' in tools/solver/index.html:4666"}, "fullDescription": {"text": "Found a known-risky pattern (insert_adjacent_html). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bff7f6a03fad5345", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/xcross_pairing_trainer/index.html:989", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/xcross_pairing_trainer/index.html:989"}, "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-6435f4f9280a9731", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/xxcross_trainer/index.html:962", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/xxcross_trainer/index.html:962"}, "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-3383ccc3a8d40428", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/jsonEditor/index.html:394", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/jsonEditor/index.html:394"}, "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-290035efc5d50e4e", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/alg_trainers/src/timer.js:15", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/alg_trainers/src/timer.js:15"}, "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-e5a2254df9d4de8f", "name": "Insecure pattern 'direct_outerhtml_assignment' in tools/alg_trainers/src/timer.js:480", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in tools/alg_trainers/src/timer.js:480"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3caa5618d8aeed74", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/alg_trainers/src/main.js:36", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/alg_trainers/src/main.js:36"}, "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-f891b031f3629897", "name": "Insecure pattern 'direct_outerhtml_assignment' in tools/alg_trainers/src/main.js:204", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in tools/alg_trainers/src/main.js:204"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-95a9eecd24c5c25f", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/alg_trainers/src/selection.js:74", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/alg_trainers/src/selection.js:74"}, "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-be44224f0e118f30", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/alg_trainers/src/timedetails.js:188", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/alg_trainers/src/timedetails.js:188"}, "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-33b96ebdbea6f922", "name": "Insecure pattern 'document_write' in tools/cstimer/index.html:24", "shortDescription": {"text": "Insecure pattern 'document_write' in tools/cstimer/index.html:24"}, "fullDescription": {"text": "Found a known-risky pattern (document_write). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "low", "confidence": 1.0}}, {"id": "scanner-987f43fd428c730c", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/cstimer/js/cstimer.js:276", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/cstimer/js/cstimer.js:276"}, "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-ce207b432e175e66", "name": "Insecure pattern 'new_function_used' in tools/cstimer/js/jquery.min.js:2", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/cstimer/js/jquery.min.js:2"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1c1cff98833e3e40", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/cstimer/js/jquery.min.js:2", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/cstimer/js/jquery.min.js:2"}, "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-47ace17f75000f81", "name": "Insecure pattern 'direct_outerhtml_assignment' in tools/cstimer/js/jquery.min.js:2", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in tools/cstimer/js/jquery.min.js:2"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d5c2b575bf71623b", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/2x2x2/index.html:1379", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/2x2x2/index.html:1379"}, "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-2be997664cb4f744", "name": "Insecure pattern 'new_function_used' in tools/src/crossTrainer/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/crossTrainer/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-df1844c3b3b22ce4", "name": "Insecure pattern 'new_function_used' in tools/src/pseudoF2LEOSolver/pseudo.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoF2LEOSolver/pseudo.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b732335c55f397a8", "name": "Insecure pattern 'new_function_used' in tools/src/F2LEOAnalyzer/analyzer.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/F2LEOAnalyzer/analyzer.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-623401ef792ebc68", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/src/functions/list.js:1058", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/src/functions/list.js:1058"}, "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-4d230cc2df67cd21", "name": "Insecure pattern 'new_function_used' in tools/src/functions/functions.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/functions/functions.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-350d3f7fd212e08b", "name": "Insecure pattern 'new_function_used' in tools/src/highMemorySolver/solver2.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/highMemorySolver/solver2.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b0162e87bb31270a", "name": "Insecure pattern 'new_function_used' in tools/src/EOCrossSolver/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/EOCrossSolver/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-10f1860a0d9b7615", "name": "Insecure pattern 'new_function_used' in tools/src/pseudoF2LEOAnalyzer/pseudo_analyzer.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoF2LEOAnalyzer/pseudo_analyzer.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a57792c4905da51b", "name": "Insecure pattern 'new_function_used' in tools/src/EOCrossAnalyzer/analyzer.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/EOCrossAnalyzer/analyzer.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3a385ea1196a5709", "name": "Insecure pattern 'new_function_used' in tools/src/2x2solver/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/2x2solver/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c91cb533e7c926b3", "name": "Insecure pattern 'new_function_used' in tools/src/crossAnalyzer/analyzer.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/crossAnalyzer/analyzer.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1127025aebee12ab", "name": "Insecure pattern 'new_function_used' in tools/src/pseudoPairingTrainer/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoPairingTrainer/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-46456fea2b80c377", "name": "Insecure pattern 'new_function_used' in tools/src/2x2solverLite/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/2x2solverLite/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a44db9044bd8a4af", "name": "Insecure pattern 'new_function_used' in tools/src/pseudoXcrossTrainer/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoXcrossTrainer/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c8a1bbea695b63d4", "name": "Insecure pattern 'new_function_used' in tools/src/pairAnalyzer/analyzer.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/pairAnalyzer/analyzer.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ee615ce265a878dc", "name": "Insecure pattern 'new_function_used' in tools/src/xcross_free_pair_trainer/production/solver_prod.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/xcross_free_pair_trainer/production/solver_prod.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6b5df12513627bb6", "name": "Insecure pattern 'new_function_used' in tools/src/eocrossTrainer/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/eocrossTrainer/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3935724393b26310", "name": "Insecure pattern 'new_function_used' in tools/src/xcrossTrainer/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/xcrossTrainer/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-82e4d98b8737fa20", "name": "Insecure pattern 'new_function_used' in tools/src/F2L_PairingSolver/pairing_solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/F2L_PairingSolver/pairing_solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4ffcf07d7525a028", "name": "Insecure pattern 'new_function_used' in tools/src/pseudoCrossAnalyzer/pseudo_analyzer.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoCrossAnalyzer/pseudo_analyzer.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bcfa8d0a09e2d55a", "name": "Insecure pattern 'new_function_used' in tools/src/F2LEOSolver/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/F2LEOSolver/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-86ebee63b0826177", "name": "Insecure pattern 'new_function_used' in tools/src/pseudoPairAnalyzer/analyzer.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoPairAnalyzer/analyzer.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-fe21dcddafc00375", "name": "Insecure pattern 'new_function_used' in tools/src/pseudoPairingSolver/pseudoPairingSolver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoPairingSolver/pseudoPairingSolver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a0acb9c1ebcbbd9c", "name": "Insecure pattern 'new_function_used' in tools/src/crossSolver/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/crossSolver/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-405105deebb61ff8", "name": "Insecure pattern 'new_function_used' in tools/src/pairingTrainer/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/pairingTrainer/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e2c896735c0ebf8d", "name": "Insecure pattern 'new_function_used' in tools/src/pseudoCrossSolver/pseudo.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoCrossSolver/pseudo.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b473692679b53d0c", "name": "Insecure pattern 'new_function_used' in tools/src/xxcrossTrainer/solver_dev.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/xxcrossTrainer/solver_dev.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3d4a0ab1e43dc7d8", "name": "Insecure pattern 'new_function_used' in tools/src/xxcrossTrainer/production/solver_prod.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in tools/src/xxcrossTrainer/production/solver_prod.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-fd311151b5ff7d59", "name": "Insecure pattern 'direct_innerhtml_assignment' in tools/pseudo_xcross_trainer/index.html:955", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/pseudo_xcross_trainer/index.html:955"}, "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-1b9068c97858b9a5", "name": "Insecure pattern 'node_child_process' in core/packages/client/scripts/sync-deskpet.mjs:17", "shortDescription": {"text": "Insecure pattern 'node_child_process' in core/packages/client/scripts/sync-deskpet.mjs:17"}, "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-728e231c5bb81f3e", "name": "Insecure pattern 'node_child_process' in core/packages/client/scripts/predev-clean.mjs:16", "shortDescription": {"text": "Insecure pattern 'node_child_process' in core/packages/client/scripts/predev-clean.mjs:16"}, "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-db22f6f284dbcf6d", "name": "Insecure pattern 'node_child_process' in core/packages/client/scripts/dev-safe.mjs:21", "shortDescription": {"text": "Insecure pattern 'node_child_process' in core/packages/client/scripts/dev-safe.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-04ecd28bd983eb92", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/TwistySection.tsx:148", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/TwistySection.tsx:148"}, "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-0a40bfcb342d11b0", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/PuzzleSVG.tsx:115", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/PuzzleSVG.tsx:115"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5df57480aeefeb75", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/PuzzleSVG.tsx:82", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/PuzzleSVG.tsx:82"}, "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-2ce11b326b921431", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/ScramblePreview2D.tsx:134", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/ScramblePreview2D.tsx:134"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8a49beba9e14b426", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/AlgInput.tsx:100", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/AlgInput.tsx:100"}, "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-b2c7665e8cce5025", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/AlgCategoryView.tsx:84", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/AlgCategoryView.tsx:84"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f25adc5c02a4751c", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/CubingPreview.tsx:173", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/CubingPreview.tsx:173"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fa7b055ef64097f6", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/CubingPreview.tsx:116", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/CubingPreview.tsx:116"}, "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-44586785afc1ba8d", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/EventIcon/EventIcon.tsx:32", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/EventIcon/EventIcon.tsx:32"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-acf6c16a951917cd", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/wca-stats/WrHistoryChart.tsx:286", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/wca-stats/WrHistoryChart.tsx:286"}, "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-bd371828c8bbdbfe", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/math/Tex.tsx:21", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/math/Tex.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7cec00ec8254f8a2", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/layout.tsx:40", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/layout.tsx:40"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f52a148604aae47b", "name": "Insecure pattern 'local_storage_auth_token' in core/packages/client/app/auth/callback/page.tsx:80", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in core/packages/client/app/auth/callback/page.tsx:80"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-11cf6f146e4efec3", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/scramble/pattern/page.tsx:81", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/scramble/pattern/page.tsx:81"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bdfd5b0274d40eb9", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/scramble/gen/ClockColorPicker.tsx:82", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/scramble/gen/ClockColorPicker.tsx:82"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7bc9d295f3846395", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/scramble/gen/TranslationsPicker.tsx:158", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/scramble/gen/TranslationsPicker.tsx:158"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-12d11633e1601767", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/scramble/solver/_CubingPreview2D.tsx:3", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/scramble/solver/_CubingPreview2D.tsx:32"}, "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-f9400e5e12bce301", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/alg/commutator/page.tsx:592", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/alg/commutator/page.tsx:592"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7b051d321683668f", "name": "Insecure pattern 'new_function_used' in core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx:22", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx:22"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0a44a0141ed5a098", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/calc/_components/components/chart_rend", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/calc/_components/components/chart_renderer.ts:233"}, "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-a2ce3456bee28273", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/code/language/katex/page.tsx:19", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/code/language/katex/page.tsx:19"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-66827fddf2aa1cf1", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/code/language/latex/page.tsx:16", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/code/language/latex/page.tsx:16"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d2021120f452e094", "name": "Insecure pattern 'exec_used' in core/packages/client/app/[lang]/code/stack/_tools/webcodecs.tsx:129", "shortDescription": {"text": "Insecure pattern 'exec_used' in core/packages/client/app/[lang]/code/stack/_tools/webcodecs.tsx:129"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-775744c336759976", "name": "Insecure pattern 'exec_used' in core/packages/client/app/[lang]/code/stack/_tools/pm2.tsx:58", "shortDescription": {"text": "Insecure pattern 'exec_used' in core/packages/client/app/[lang]/code/stack/_tools/pm2.tsx:58"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2d28d7eeab3265f1", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/code/stack/_tools/i18next.tsx:98", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/code/stack/_tools/i18next.tsx:98"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-180b00990586a75e", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/visualcube/page.tsx:1020", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/visualcube/page.tsx:1020"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e0ddba1eacd89f5d", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/timer/_shell/BattleView.tsx:586", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/timer/_shell/BattleView.tsx:586"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6155bf84dabdad3f", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/timer/_shell/BattleView.tsx:224", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/timer/_shell/BattleView.tsx:224"}, "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-22b7d194b4976813", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/wca/about/[id]/WcaAboutClient.tsx:34", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/wca/about/[id]/WcaAboutClient.tsx:34"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5755e54d3e415139", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/wca/prediction/_components/TheoreticalLimitVie", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/wca/prediction/_components/TheoreticalLimitView.tsx:26"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b6ef86b45161a8ec", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/recon/[id]/page.tsx:70", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/recon/[id]/page.tsx:70"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8b3d124c3c5a415f", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/regulation/notation/NotationMove.tsx:6", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/regulation/notation/NotationMove.tsx:68"}, "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-a50bb3248cfcb1ee", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/math/god/_components/Tex.tsx:21", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/math/god/_components/Tex.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-91c44c62020932bd", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/math/group/_components/primitives.tsx:21", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/math/group/_components/primitives.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d4bb7a3af7b0b1bb", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/trainer/skewb/_components/SkewbImage.tsx:25", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/trainer/skewb/_components/SkewbImage.tsx:25"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-12a317c3c8b3458c", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/trainer/_roux/_components/CaseVisualiz", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/trainer/_roux/_components/CaseVisualizer.tsx:53"}, "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-7d883fcdfae2e545", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/tutorial/_lib/restructureCfop.ts:178", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/tutorial/_lib/restructureCfop.ts:178"}, "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-4af7d3a9863afb91", "name": "Insecure pattern 'domparser_html_parse' in core/packages/client/app/[lang]/tutorial/_lib/restructureCfop.ts:134", "shortDescription": {"text": "Insecure pattern 'domparser_html_parse' in core/packages/client/app/[lang]/tutorial/_lib/restructureCfop.ts:134"}, "fullDescription": {"text": "Found a known-risky pattern (domparser_html_parse). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-102c148b653ba961", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/tutorial/_components/AlgChip.tsx:70", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/tutorial/_components/AlgChip.tsx:70"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-dadde91f5330eb63", "name": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/tutorial/_components/CaseCard.tsx:23", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/tutorial/_components/CaseCard.tsx:23"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ddf696a8e6bdd577", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/_components/LandingCubeHero.tsx:27", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/_components/LandingCubeHero.tsx:27"}, "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-f5a7de16546cebae", "name": "Insecure pattern 'new_function_used' in core/packages/client/lib/roux/CubeLib.ts:131", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/lib/roux/CubeLib.ts:131"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9723949b5964475a", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/public/_cubing-sheet.html:14", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/public/_cubing-sheet.html:14"}, "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-fea6a89a99e4c056", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-5da91fb23e263e9f", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver-wrapp", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver-wrapped.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f4b02001a6281278", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/xcross/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/xcross/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-208db8678b5db974", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pair/pairing_solver-wrapped.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pair/pairing_solver-wrapped.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6cc2950a6f356b74", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pair/pairing_solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pair/pairing_solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-79f3cd3224987ace", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/eocross/solver-wrapped.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/eocross/solver-wrapped.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-cab1271e926cd51c", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/eocross/solver.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/eocross/solver.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-dd29ea7c8d50fbac", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pseudo-cross/pseudo-wrapped.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pseudo-cross/pseudo-wrapped.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9762fd0a7f02b1ed", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pseudo-cross/pseudo.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pseudo-cross/pseudo.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2152262d2f4e2e3b", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt3.mjs:4313", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt3.mjs:4313"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9fc04a8b12be2154", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt7.mjs:4313", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt7.mjs:4313"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e73b926fe9f16c5c", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt8.mjs:4315", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt8.mjs:4315"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4283b599a8751abd", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt6.mjs:4313", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt6.mjs:4313"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-70edc1ce22793c9c", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt2.mjs:4313", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt2.mjs:4313"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f387c158653eaaef", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt4.mjs:4313", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt4.mjs:4313"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-da54f6c5140833ef", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt9.mjs:4315", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt9.mjs:4315"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c15e8cdd04eaf634", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt5.mjs:4313", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt5.mjs:4313"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-827b23bd49fb9363", "name": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt1.mjs:4313", "shortDescription": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt1.mjs:4313"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4a147fc9915f6d73", "name": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/visualcube/src/cube/drawing.ts:115", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/visualcube/src/cube/drawing.ts:115"}, "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-eef77fab8aa97e74", "name": "Insecure pattern 'node_child_process' in core/packages/scramble-stats-build/build_length_opt.mjs:20", "shortDescription": {"text": "Insecure pattern 'node_child_process' in core/packages/scramble-stats-build/build_length_opt.mjs:20"}, "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-3625d8c77d64b513", "name": "Insecure pattern 'node_child_process' in core/packages/server/src/cube555/daemon.ts:28", "shortDescription": {"text": "Insecure pattern 'node_child_process' in core/packages/server/src/cube555/daemon.ts:28"}, "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-c9d5bf2c12b5db38", "name": "Insecure pattern 'node_child_process' in core/packages/server/src/cubeopt/daemon.ts:21", "shortDescription": {"text": "Insecure pattern 'node_child_process' in core/packages/server/src/cubeopt/daemon.ts: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-9e1af3730b5f8ffa", "name": "Insecure pattern 'node_child_process' in core/cube555-daemon/local_bench.mjs:11", "shortDescription": {"text": "Insecure pattern 'node_child_process' in core/cube555-daemon/local_bench.mjs:11"}, "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-9dc72ba2ef44bf58", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "graalvm/setup-graalvm@v1 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": "medium", "confidence": 1.0}}, {"id": "scanner-74fbdc888aaaac05", "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-e3ac7b4a5ffade5e", "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-784f4c5587b5c454", "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-d7bc085a5399da9b", "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-852b6c118440664a", "name": "Very large file: solver/src/pseudo_f2leo_solver.rs (1586 lines)", "shortDescription": {"text": "Very large file: solver/src/pseudo_f2leo_solver.rs (1586 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-e65c00dfea2166ec", "name": "Very large file: solver/src/pseudo_pair_solver.rs (2472 lines)", "shortDescription": {"text": "Very large file: solver/src/pseudo_pair_solver.rs (2472 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-cec35ee12480dedf", "name": "Very large file: solver/src/eo_cross_solver.rs (2174 lines)", "shortDescription": {"text": "Very large file: solver/src/eo_cross_solver.rs (2174 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-d221b38486aa57dc", "name": "Very large file: solver/src/pseudo_xcross_solver.rs (1368 lines)", "shortDescription": {"text": "Very large file: solver/src/pseudo_xcross_solver.rs (1368 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-a8e86fca5a146947", "name": "Very large file: solver/src/f2leo_solver.rs (1447 lines)", "shortDescription": {"text": "Very large file: solver/src/f2leo_solver.rs (1447 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-6792e14de755864f", "name": "Very large file: solver/src/pair_solver.rs (1439 lines)", "shortDescription": {"text": "Very large file: solver/src/pair_solver.rs (1439 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-67cb827ac57883aa", "name": "Very large file: solver/src/chain_solver.rs (1825 lines)", "shortDescription": {"text": "Very large file: solver/src/chain_solver.rs (1825 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-a8619dcf8bc60990", "name": "Very large file: solver/src/sq1_solver.rs (1522 lines)", "shortDescription": {"text": "Very large file: solver/src/sq1_solver.rs (1522 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-6f3a8284b153ee48", "name": "Very large file: tools/i18n/i18n.js (1344 lines)", "shortDescription": {"text": "Very large file: tools/i18n/i18n.js (1344 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-9e84fe7778b1b4f2", "name": "Very large file: tools/cstimer-scramble/scramble/scramble_444.js (2532 lines)", "shortDescription": {"text": "Very large file: tools/cstimer-scramble/scramble/scramble_444.js (2532 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-c63a8fa5cb86e407", "name": "Very large file: tools/solver/rust-cross/cross_solver.js (1286 lines)", "shortDescription": {"text": "Very large file: tools/solver/rust-cross/cross_solver.js (1286 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-4117681fb32c1f22", "name": "Very large file: tools/cstimer/js/cstimer.js (1124 lines)", "shortDescription": {"text": "Very large file: tools/cstimer/js/cstimer.js (1124 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-0a5a72f385df4ac9", "name": "Very large file: tools/src/functions/list.js (2019 lines)", "shortDescription": {"text": "Very large file: tools/src/functions/list.js (2019 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-7c90ce2c4d06a0c7", "name": "Very large file: tools/src/filter/filter.js (1464 lines)", "shortDescription": {"text": "Very large file: tools/src/filter/filter.js (1464 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-decb17402d13807a", "name": "Very large file: core/packages/client/app/[lang]/scramble/gen/TNoodleMode.tsx (1549 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/scramble/gen/TNoodleMode.tsx (1549 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-4d1e4aa85f296403", "name": "Very large file: core/packages/client/app/[lang]/scramble/solver/page.tsx (1274 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/scramble/solver/page.tsx (1274 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-0dba0cee8c100cf5", "name": "Very large file: core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx (2761 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx (2761 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-350d331fda140274", "name": "Very large file: core/packages/client/app/[lang]/code/language/php/page.tsx (1189 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/php/page.tsx (1189 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-99e260306ead44ac", "name": "Very large file: core/packages/client/app/[lang]/code/language/wasm/page.tsx (1140 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/wasm/page.tsx (1140 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-b4de89edb1777a27", "name": "Very large file: core/packages/client/app/[lang]/code/language/ruby/page.tsx (1147 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/ruby/page.tsx (1147 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-b92491ed2d204a4d", "name": "Very large file: core/packages/client/app/[lang]/code/language/html/page.tsx (1238 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/html/page.tsx (1238 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-3b2ae88d3d1b6b00", "name": "Very large file: core/packages/client/app/[lang]/code/language/katex/page.tsx (1381 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/katex/page.tsx (1381 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-c2bb6fd90a48b73a", "name": "Very large file: core/packages/client/app/[lang]/code/language/powershell/page.tsx (1143 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/powershell/page.tsx (1143 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-1d33f4b2c043627e", "name": "Very large file: core/packages/client/app/[lang]/code/language/c/page.tsx (1059 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/c/page.tsx (1059 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-2285a6d020199a68", "name": "Very large file: core/packages/client/app/[lang]/code/language/rust/page.tsx (1112 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/rust/page.tsx (1112 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-ebc57659d5f20495", "name": "Very large file: core/packages/client/app/[lang]/code/language/javascript/page.tsx (1060 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/javascript/page.tsx (1060 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-43c8851924a0faad", "name": "Very large file: core/packages/client/app/[lang]/code/language/latex/page.tsx (1366 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/latex/page.tsx (1366 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-17919ec1b5d58b79", "name": "Very large file: core/packages/client/app/[lang]/code/language/csharp/page.tsx (1292 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/csharp/page.tsx (1292 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-4707761e8db3aecb", "name": "Very large file: core/packages/client/app/[lang]/code/language/css/page.tsx (1320 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/css/page.tsx (1320 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-4bdbdca2510bed65", "name": "Very large file: core/packages/client/app/[lang]/code/language/mojo/page.tsx (1068 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/mojo/page.tsx (1068 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-655c5a689871ce97", "name": "Very large file: core/packages/client/app/[lang]/code/language/sql/page.tsx (1204 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/sql/page.tsx (1204 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-cea8f4c844a438f4", "name": "Very large file: core/packages/client/app/[lang]/code/language/lua/page.tsx (1184 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/lua/page.tsx (1184 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-0ea15d46320afce2", "name": "Very large file: core/packages/client/app/[lang]/code/language/python/page.tsx (1073 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/python/page.tsx (1073 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-db0ddb70b0edd58b", "name": "Very large file: core/packages/client/app/[lang]/code/language/cpp/page.tsx (1043 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/cpp/page.tsx (1043 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-6665389ab42795ac", "name": "Very large file: core/packages/client/app/[lang]/code/language/ts/page.tsx (1034 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/ts/page.tsx (1034 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-e71313cd7e16300b", "name": "Very large file: core/packages/client/app/[lang]/code/language/bash/page.tsx (1168 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/bash/page.tsx (1168 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-37fa9351fd05089f", "name": "Very large file: core/packages/client/app/[lang]/code/language/zig/page.tsx (1076 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/zig/page.tsx (1076 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-bab687bfe2b79aac", "name": "Very large file: core/packages/client/app/[lang]/code/language/java/page.tsx (1092 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/java/page.tsx (1092 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-01f7f707edc328ba", "name": "Very large file: core/packages/client/app/[lang]/code/language/swift/page.tsx (1053 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/swift/page.tsx (1053 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-7e36173344866c4b", "name": "Very large file: core/packages/client/app/[lang]/code/language/go/page.tsx (1123 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/go/page.tsx (1123 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-fa2e67969f03157f", "name": "Very large file: core/packages/client/app/[lang]/code/language/kotlin/page.tsx (1093 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/kotlin/page.tsx (1093 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-394c7ebdd1f76320", "name": "Very large file: core/packages/client/app/[lang]/code/language/haskell/page.tsx (1099 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/language/haskell/page.tsx (1099 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-77f4d08f0158d8bd", "name": "Very large file: core/packages/client/app/[lang]/code/algorithms/cfop-std-solver/page.tsx (1840 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/code/algorithms/cfop-std-solver/page.tsx (1840 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-ad297d306add4772", "name": "Very large file: core/packages/client/app/[lang]/visualcube/page.tsx (1716 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/visualcube/page.tsx (1716 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-cec66c7a671b27f4", "name": "Very large file: core/packages/client/app/[lang]/battle/_components/engine/battle_store.ts (1497 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/battle/_components/engine/battle_store.ts (1497 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-cd535f6efd2c7e28", "name": "Very large file: core/packages/client/app/[lang]/timer/_lib/scramble/scramble_444_rs.ts (2343 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/timer/_lib/scramble/scramble_444_rs.ts (2343 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-cb1e080af00b3084", "name": "Very large file: core/packages/client/app/[lang]/timer/_shell/BattleView.tsx (1414 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/timer/_shell/BattleView.tsx (1414 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-aafa8d12b61e8f1b", "name": "Very large file: core/packages/client/app/[lang]/timer/_shell/SoloView.tsx (1789 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/timer/_shell/SoloView.tsx (1789 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-0090b73f0cf49eb0", "name": "Very large file: core/packages/client/app/[lang]/timer/_components/SettingsPanel.tsx (1250 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/timer/_components/SettingsPanel.tsx (1250 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-cbc16aa2fdcba7c7", "name": "Very large file: core/packages/client/app/[lang]/timer/_components/HistoryPanel.tsx (1343 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/timer/_components/HistoryPanel.tsx (1343 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-090e170835561eaf", "name": "Very large file: core/packages/client/app/[lang]/wca/about/[id]/_lib/entries/journey.ts (1644 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/wca/about/[id]/_lib/entries/journey.ts (1644 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-6dbec36ba6483688", "name": "Very large file: core/packages/client/app/[lang]/wca/about/[id]/_lib/entries/podiums.ts (833 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/wca/about/[id]/_lib/entries/podiums.ts (833 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-a2e97089839d19c7", "name": "Very large file: core/packages/client/app/[lang]/wca/about/[id]/_lib/entries/records_countries.ts (1578 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/wca/about/[id]/_lib/entries/records_countries.ts (1578 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-fc13550780825e4b", "name": "Very large file: core/packages/client/app/[lang]/wca/about/[id]/_lib/entries/wr_analysis.ts (914 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/wca/about/[id]/_lib/entries/wr_analysis.ts (914 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-f12303dce5001664", "name": "Very large file: core/packages/client/app/[lang]/wca/all-results/page.tsx (932 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/wca/all-results/page.tsx (932 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-3c10c88cb666ef25", "name": "Very large file: core/packages/client/app/[lang]/wca/comp/page.tsx (2528 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/wca/comp/page.tsx (2528 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-9d2400af39c5d900", "name": "Very large file: core/packages/client/app/[lang]/wca/comp/[slug]/CompDetailPage.tsx (2955 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/wca/comp/[slug]/CompDetailPage.tsx (2955 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-e50aafa6c7042c46", "name": "Very large file: core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx (3701 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx (3701 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-72446a719a61ebbc", "name": "Very large file: core/packages/client/app/[lang]/wca/prediction/page.tsx (928 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/wca/prediction/page.tsx (928 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-b5ef87d9345b1310", "name": "Very large file: core/packages/client/app/[lang]/wca/prediction/_components/theoretical_limits.ts (1006 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/wca/prediction/_components/theoretical_limits.ts (1006 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-fb0948439e901e57", "name": "Very large file: core/packages/client/app/[lang]/wca/prediction/_components/Prediction333View.tsx (1213 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/wca/prediction/_components/Prediction333View.tsx (1213 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-cc422b713e819f0f", "name": "Very large file: core/packages/client/app/[lang]/recon/submit/ReconSubmitForm.tsx (1776 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/recon/submit/ReconSubmitForm.tsx (1776 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-c7ab9b08f6010a54", "name": "Very large file: core/packages/client/app/[lang]/recon/[id]/ReconDetailClient.tsx (1339 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/recon/[id]/ReconDetailClient.tsx (1339 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-453589608bb9a226", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/FriezeGroups.tsx (1000 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/FriezeGroups.tsx (1000 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-c2bbce2247bbdd60", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/MatrixLieGroups.tsx (1314 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/MatrixLieGroups.tsx (1314 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-a01947c2bf5c4bb4", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/PolyaCubeColorings.tsx (1081 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/PolyaCubeColorings.tsx (1081 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-8dee845d9832b983", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/PointGroupsCrystal.tsx (929 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/PointGroupsCrystal.tsx (929 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-a7d55769a7690ee9", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/PlaneIsometries.tsx (1038 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/PlaneIsometries.tsx (1038 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-ede1c79ab9fd75b3", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/QuaternionGroup.tsx (1131 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/QuaternionGroup.tsx (1131 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-fba28572bb892864", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/ReflectionCoxeter.tsx (906 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/ReflectionCoxeter.tsx (906 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-42ef164e0a897e9c", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/RepresentationBasics.tsx (1381 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/RepresentationBasics.tsx (1381 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-0a055fb26b59cae5", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CompositionSeries.tsx (1415 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CompositionSeries.tsx (1415 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-517184e2a555b8e6", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/PlatonicSymmetry.tsx (1198 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/PlatonicSymmetry.tsx (1198 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-6a2dedd0adbb9885", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/FourierOnGroups.tsx (1093 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/FourierOnGroups.tsx (1093 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-161b227613817af2", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CayleyTheorem.tsx (1087 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CayleyTheorem.tsx (1087 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-185ef3821ebfb382", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/FreeGroups.tsx (1263 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/FreeGroups.tsx (1263 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-b5eb487d66067de7", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CyclicModular.tsx (896 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CyclicModular.tsx (896 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-a129003171859f9f", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/SylowTheorems.tsx (1103 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/SylowTheorems.tsx (1103 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-58fe2b6146d2ad1f", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/AutomorphismGroup.tsx (1172 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/AutomorphismGroup.tsx (1172 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-12bcc7fb7b1c3a6e", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/ClassEquation.tsx (1163 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/ClassEquation.tsx (1163 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-b880d11259ce491c", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CharacterTable.tsx (1269 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CharacterTable.tsx (1269 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-1cbef3bc88565a23", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/GrowthOfGroups.tsx (1159 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/GrowthOfGroups.tsx (1159 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-b589fbbaa24b34a7", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/ExpanderRamanujan.tsx (1153 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/ExpanderRamanujan.tsx (1153 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-6a2d788438fcdb8c", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/SolvableNilpotent.tsx (1130 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/SolvableNilpotent.tsx (1130 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-24825a65c1b39e9c", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/DihedralGroups.tsx (1065 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/DihedralGroups.tsx (1065 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-941a197ee24c09e8", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/OrbitStabilizer.tsx (1048 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/OrbitStabilizer.tsx (1048 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-f70e26c112cf78f8", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CycleIndex.tsx (1342 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CycleIndex.tsx (1342 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-7edb63f14f088ea3", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/WallpaperGroups.tsx (1224 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/WallpaperGroups.tsx (1224 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-c1f140ca9a702651", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/GaloisConnection.tsx (1326 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/GaloisConnection.tsx (1326 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-9295239579a82f12", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/YoungTableaux.tsx (1056 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/YoungTableaux.tsx (1056 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-fbaab5fe667fb57c", "name": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/SemidirectProduct.tsx (951 lines)", "shortDescription": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/SemidirectProduct.tsx (951 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-9075dcac81a6524a", "name": "Very large file: core/packages/client/public/analyze-worker/boohoo.js (8729 lines)", "shortDescription": {"text": "Very large file: core/packages/client/public/analyze-worker/boohoo.js (8729 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-2848509f56f3e53a", "name": "Very large file: core/packages/client/public/cubeopt/cube48opt3.mjs (5406 lines)", "shortDescription": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt3.mjs (5406 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-ade7772d50c2e375", "name": "Very large file: core/packages/client/public/cubeopt/cube48opt7.mjs (5406 lines)", "shortDescription": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt7.mjs (5406 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-f310ddc37bff71ac", "name": "Very large file: core/packages/client/public/cubeopt/cube48opt8.mjs (5427 lines)", "shortDescription": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt8.mjs (5427 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-30b9b7cab5f3b622", "name": "Very large file: core/packages/client/public/cubeopt/cube48opt6.mjs (5406 lines)", "shortDescription": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt6.mjs (5406 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-5f649d3a49afcde6", "name": "Very large file: core/packages/client/public/cubeopt/cube48opt2.mjs (5406 lines)", "shortDescription": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt2.mjs (5406 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-c396e6aeb1710cf8", "name": "Very large file: core/packages/client/public/cubeopt/cube48opt4.mjs (5406 lines)", "shortDescription": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt4.mjs (5406 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-b2e58643c7ce9576", "name": "Very large file: core/packages/client/public/cubeopt/cube48opt9.mjs (5427 lines)", "shortDescription": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt9.mjs (5427 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-a709c4fdd8f88ef8", "name": "Very large file: core/packages/client/public/cubeopt/cube48opt5.mjs (5406 lines)", "shortDescription": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt5.mjs (5406 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-f7cb4503ff5f0557", "name": "Very large file: core/packages/client/public/cubeopt/cube48opt1.mjs (5406 lines)", "shortDescription": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt1.mjs (5406 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-35652a3e59938684", "name": "Very large file: core/packages/server/src/routes/cubing_live.ts (2033 lines)", "shortDescription": {"text": "Very large file: core/packages/server/src/routes/cubing_live.ts (2033 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-f2ac47bbe4549f64", "name": "Very large file: core/packages/server/src/routes/wca_stats_extra.ts (1665 lines)", "shortDescription": {"text": "Very large file: core/packages/server/src/routes/wca_stats_extra.ts (1665 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": "68 test file(s) for 1664 source file(s) (ratio 0.04). Consider adding integration or unit tests for critical paths."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-51a7a5c3327df078", "name": "195 TODO/FIXME markers", "shortDescription": {"text": "195 TODO/FIXME markers"}, "fullDescription": {"text": "High count of TODO/FIXME/HACK markers \u2014 track them as issues so they're not forgotten."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f06ede8ec12abb90", "name": "Node manifest has dependencies but no lockfile: core/packages/client/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: core/packages/client/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a28dd0797823b1bd", "name": "Node manifest has dependencies but no lockfile: core/packages/shared/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: core/packages/shared/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-acac20640795bb1b", "name": "Node manifest has dependencies but no lockfile: core/packages/visualcube/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: core/packages/visualcube/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6523eff97cb5579e", "name": "Node manifest has dependencies but no lockfile: core/packages/alg-build/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: core/packages/alg-build/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2e18b57886b72169", "name": "Node manifest has dependencies but no lockfile: core/packages/server/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: core/packages/server/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8e1efe0991aaad22", "name": "Node manifest has dependencies but no lockfile: core/packages/wb-build/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: core/packages/wb-build/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-34a3400687d8c822", "name": "Node manifest has dependencies but no lockfile: core/packages/stats-build/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: core/packages/stats-build/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "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 682 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-72b2a6250083a784", "name": "Placeholder or mock-heavy implementation detected", "shortDescription": {"text": "Placeholder or mock-heavy implementation detected"}, "fullDescription": {"text": "Found 293 placeholder/mock markers across 122 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "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-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 lockfile. 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-042f9244849d5dc7", "name": "Agent authority lacks a verifier contract: .claude/skills/pretooluse-hook/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/pretooluse-hook/SKILL.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b005590ebcd556ac", "name": "Agent authority lacks a verifier contract: .claude/skills/comp-names-zh/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/comp-names-zh/SKILL.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-564737147a31dea1", "name": "Agent authority lacks a verifier contract: .claude/skills/alg-admin-api/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/alg-admin-api/SKILL.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1db55f2a1134b2a5", "name": "Agent authority lacks a verifier contract: .claude/skills/document-title/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/document-title/SKILL.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f02d6e0a38dffa17", "name": "Agent authority lacks a verifier contract: .claude/skills/ops-runbook/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/ops-runbook/SKILL.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4dae28b589f563e7", "name": "Agent instruction/config may expose a secret: .claude/skills/scramble-stats-build/SKILL.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: .claude/skills/scramble-stats-build/SKILL.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8a2e034706848acd", "name": "Commented-code block (5 lines) in solver/333opt/solve.mjs:3", "shortDescription": {"text": "Commented-code block (5 lines) in solver/333opt/solve.mjs:3"}, "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-8b3e1c979b4a0c1a", "name": "Commented-code block (5 lines) in solver/333opt/gen-table.mjs:1", "shortDescription": {"text": "Commented-code block (5 lines) in solver/333opt/gen-table.mjs: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-a2d444ab6f3fbfc5", "name": "Commented-code block (5 lines) in solver/333opt/inject.mjs:10", "shortDescription": {"text": "Commented-code block (5 lines) in solver/333opt/inject.mjs: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-b3f54ab8668eb467", "name": "Legacy-named symbol `encodeMav_v1` in tools/url_params_compressor_simple.js:80", "shortDescription": {"text": "Legacy-named symbol `encodeMav_v1` in tools/url_params_compressor_simple.js:80"}, "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-b6c8ab697fcd0db9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/wca_auth.js:89", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/wca_auth.js:89"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0624021815d1d6f8", "name": "Commented-code block (5 lines) in tools/i18n/i18n.js:739", "shortDescription": {"text": "Commented-code block (5 lines) in tools/i18n/i18n.js:739"}, "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-8ab6ec409ae595f9", "name": "Commented-code block (8 lines) in tools/cstimer-scramble/scrambler.worker.js:26", "shortDescription": {"text": "Commented-code block (8 lines) in tools/cstimer-scramble/scrambler.worker.js:26"}, "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-7c71163713a7f3d4", "name": "Legacy-named symbol `scramble_copy` in tools/cstimer-scramble/scramble/scramble.js:862", "shortDescription": {"text": "Legacy-named symbol `scramble_copy` in tools/cstimer-scramble/scramble/scramble.js:862"}, "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-b73b443748c99c3a", "name": "Commented-code block (5 lines) in tools/cstimer-scramble/scramble/scramble_sq1_new.js:658", "shortDescription": {"text": "Commented-code block (5 lines) in tools/cstimer-scramble/scramble/scramble_sq1_new.js:658"}, "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-e866adcce328e376", "name": "Commented-code block (5 lines) in tools/cstimer-scramble/lib/mathlib.js:1049", "shortDescription": {"text": "Commented-code block (5 lines) in tools/cstimer-scramble/lib/mathlib.js:1049"}, "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-10a80294fec12149", "name": "Commented-code block (7 lines) in tools/solver/rust-cross/cross-solver-worker.js:4", "shortDescription": {"text": "Commented-code block (7 lines) in tools/solver/rust-cross/cross-solver-worker.js:4"}, "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-1d8427f6f3d99b67", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/solver/rust-cross/cross-solver-worker.js:30", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/solver/rust-cross/cross-solver-worker.js:30"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-09f2e2e0da946dc9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/solver/rust-cross/cross_solver.js:1278", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/solver/rust-cross/cross_solver.js:1278"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6771f304446d6c14", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/alg_trainers/src/main.js:162", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/alg_trainers/src/main.js:162"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7c6941391b168118", "name": "Legacy-named symbol `__v1` in tools/cstimer/js/twisty.js:35", "shortDescription": {"text": "Legacy-named symbol `__v1` in tools/cstimer/js/twisty.js:35"}, "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-eaa2872b9f1b981a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/crossTrainer/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/crossTrainer/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-21b7f3540c38aac2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoF2LEOSolver/pseudo.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoF2LEOSolver/pseudo.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7920bb4917655712", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/F2LEOAnalyzer/analyzer.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/F2LEOAnalyzer/analyzer.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2469530c09ecaef6", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/functions/functions.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/functions/functions.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e7e6795fae723ef4", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/highMemorySolver/solver2.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/highMemorySolver/solver2.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-28902dd012a2cb50", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/EOCrossSolver/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/EOCrossSolver/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4cd53304ecd38eee", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoF2LEOAnalyzer/pseudo_analyzer.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoF2LEOAnalyzer/pseudo_analyzer.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9f71a76742cfed2a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/EOCrossAnalyzer/analyzer.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/EOCrossAnalyzer/analyzer.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6ec33640c52484c5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/2x2solver/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/2x2solver/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d18559500867ddc9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/crossAnalyzer/analyzer.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/crossAnalyzer/analyzer.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-758c68abe3522bcb", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoPairingTrainer/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoPairingTrainer/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a01d58e454d85fa5", "name": "Commented-code block (6 lines) in tools/src/filter/filter.js:973", "shortDescription": {"text": "Commented-code block (6 lines) in tools/src/filter/filter.js:973"}, "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-ace39c5b60a8b276", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/2x2solverLite/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/2x2solverLite/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0eb062f0e6ce10dc", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoXcrossTrainer/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoXcrossTrainer/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a80b0a70c8c90a4f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pairAnalyzer/analyzer.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pairAnalyzer/analyzer.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9edac75be6d38002", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/xcross_free_pair_trainer/production/solver_prod.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/xcross_free_pair_trainer/production/solver_prod.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5385b3d5b8eb8371", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/eocrossTrainer/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/eocrossTrainer/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7aa1bc846c1b9912", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/xcrossTrainer/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/xcrossTrainer/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2b213c99b4bd218f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/F2L_PairingSolver/pairing_solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/F2L_PairingSolver/pairing_solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cbd767c369bf73f6", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoCrossAnalyzer/pseudo_analyzer.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoCrossAnalyzer/pseudo_analyzer.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-25284fe4216c7676", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/F2LEOSolver/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/F2LEOSolver/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c111ac64b6e79602", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoPairAnalyzer/analyzer.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoPairAnalyzer/analyzer.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7e4d89e9cadd5bd6", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoPairingSolver/pseudoPairingSolver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoPairingSolver/pseudoPairingSolver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-009559772303d8b9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/crossSolver/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/crossSolver/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e43e88b8a558b4dc", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pairingTrainer/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pairingTrainer/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-12e5d96602b84018", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoCrossSolver/pseudo.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoCrossSolver/pseudo.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-410ffccee7ebf27f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/xxcrossTrainer/solver_dev.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/xxcrossTrainer/solver_dev.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0b05a1517f788b4a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/xxcrossTrainer/production/solver_prod.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/xxcrossTrainer/production/solver_prod.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-81049e9ad7383de5", "name": "Commented-code block (13 lines) in core/packages/client/proxy.ts:3", "shortDescription": {"text": "Commented-code block (13 lines) in core/packages/client/proxy.ts:3"}, "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-7a6ebcb19736e65a", "name": "Commented-code block (6 lines) in core/packages/client/next.config.ts:18", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/next.config.ts:18"}, "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-37f5d21de4294ce2", "name": "Commented-code block (6 lines) in core/packages/client/i18n/i18n-client.ts:4", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/i18n/i18n-client.ts:4"}, "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-0532a3825d8a84f8", "name": "Commented-code block (5 lines) in core/packages/client/i18n/I18nProvider.tsx:7", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/i18n/I18nProvider.tsx: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-e5d9d3fe7deae02c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/wasm/m2p/m2p_wasm.js:515", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/wasm/m2p/m2p_wasm.js:515"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ed0c3569c5554843", "name": "Commented-code block (6 lines) in core/packages/client/tests/skewb_scramble.test.ts:14", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/tests/skewb_scramble.test.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-f470647123f33701", "name": "Commented-code block (5 lines) in core/packages/client/tests/server-cache-headers.test.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/tests/server-cache-headers.test.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-7a4874636213302d", "name": "Legacy-named symbol `baseOld` in core/packages/client/tests/result-watch-chain.test.ts:234", "shortDescription": {"text": "Legacy-named symbol `baseOld` in core/packages/client/tests/result-watch-chain.test.ts:234"}, "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-0526c7e28e882bd6", "name": "Commented-code block (10 lines) in core/packages/client/tests/i18n-no-isz-text-ternary.test.ts:3", "shortDescription": {"text": "Commented-code block (10 lines) in core/packages/client/tests/i18n-no-isz-text-ternary.test.ts:3"}, "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-d610b75fb3aa440e", "name": "Commented-code block (6 lines) in core/packages/client/tests/analyzer_worker.test.ts:94", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/tests/analyzer_worker.test.ts:94"}, "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-3aec76ea5c386f56", "name": "Commented-code block (10 lines) in core/packages/client/tests/code-catalog-sync.test.ts:1", "shortDescription": {"text": "Commented-code block (10 lines) in core/packages/client/tests/code-catalog-sync.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}}, {"id": "scanner-e4aa03ca13e797b0", "name": "Commented-code block (15 lines) in core/packages/client/tests/3bld_engine.test.ts:7", "shortDescription": {"text": "Commented-code block (15 lines) in core/packages/client/tests/3bld_engine.test.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-00acaf2a6b53e920", "name": "Commented-code block (6 lines) in core/packages/client/tests/i18n-removal-guard.test.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/tests/i18n-removal-guard.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}}, {"id": "scanner-fec90630042cbf8a", "name": "Commented-code block (5 lines) in core/packages/client/tests/reg-fewest-moves-example.test.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/tests/reg-fewest-moves-example.test.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-2c72476adbeadefc", "name": "Commented-code block (5 lines) in core/packages/client/tests/code-tokens-drift.test.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/tests/code-tokens-drift.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}}, {"id": "scanner-45455a1fbf7305f3", "name": "Commented-code block (7 lines) in core/packages/client/tests/_analyzer_worker_runner.cjs:26", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/tests/_analyzer_worker_runner.cjs:26"}, "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-64528f42b86f0047", "name": "Commented-code block (8 lines) in core/packages/client/tests/roux/Solver.test.ts:56", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/tests/roux/Solver.test.ts:56"}, "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-4e0d88f74b76778d", "name": "Commented-code block (5 lines) in core/packages/client/tests/roux/SSSecret.test.ts:74", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/tests/roux/SSSecret.test.ts:74"}, "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-86e51312a4e432f3", "name": "Commented-code block (6 lines) in core/packages/client/tests/roux/Pruner.test.ts:10", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/tests/roux/Pruner.test.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-074fca538fdb030e", "name": "Commented-code block (10 lines) in core/packages/client/scripts/codemod-isz-to-tr.mjs:4", "shortDescription": {"text": "Commented-code block (10 lines) in core/packages/client/scripts/codemod-isz-to-tr.mjs:4"}, "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-0bf9a755d512535e", "name": "Commented-code block (5 lines) in core/packages/client/scripts/codemod-data-pick.mjs:2", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/scripts/codemod-data-pick.mjs:2"}, "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-d7b4a28afc60b561", "name": "Commented-code block (6 lines) in core/packages/client/scripts/codemod-anyfield-3way.mjs:2", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/scripts/codemod-anyfield-3way.mjs:2"}, "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-ea851a03a9a28dc5", "name": "Network/subprocess call without timeout or try/except \u2014 core/packages/client/scripts/subset-cjk-heading.py:102", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 core/packages/client/scripts/subset-cjk-heading.py:102"}, "fullDescription": {"text": "`urllib.request.urlretrieve(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6c5f033ab9a2c35e", "name": "Commented-code block (11 lines) in core/packages/client/scripts/codemod-datapick-cast.mjs:2", "shortDescription": {"text": "Commented-code block (11 lines) in core/packages/client/scripts/codemod-datapick-cast.mjs:2"}, "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-409c65fb1d5a7a44", "name": "Commented-code block (7 lines) in core/packages/client/scripts/codemod-datapick-3way.mjs:2", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/scripts/codemod-datapick-3way.mjs:2"}, "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-41dd0627852992cb", "name": "Commented-code block (8 lines) in core/packages/client/scripts/codemod-constmap-3way.mjs:2", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/scripts/codemod-constmap-3way.mjs:2"}, "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-5acb23f6f3592a3f", "name": "Commented-code block (6 lines) in core/packages/client/scripts/hook-detect-traditional.mjs:7", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/scripts/hook-detect-traditional.mjs: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-3037773ae0f72f98", "name": "Commented-code block (5 lines) in core/packages/client/scripts/scan-gaps.mjs:2", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/scripts/scan-gaps.mjs:2"}, "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-a076e05c5649d0a1", "name": "Commented-code block (5 lines) in core/packages/client/scripts/sync-deskpet.mjs:46", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/scripts/sync-deskpet.mjs:46"}, "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-b4998de72d10f2ab", "name": "Commented-code block (6 lines) in core/packages/client/scripts/codemod-isz-burndown.mjs:5", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/scripts/codemod-isz-burndown.mjs: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-c62560914479e83e", "name": "Commented-code block (7 lines) in core/packages/client/scripts/codemod-objpick-3way.mjs:2", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/scripts/codemod-objpick-3way.mjs:2"}, "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-e039d02922701492", "name": "Commented-code block (8 lines) in core/packages/client/scripts/codemod-thelper-3way.mjs:2", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/scripts/codemod-thelper-3way.mjs:2"}, "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-1c04b5119d229c2c", "name": "Commented-code block (6 lines) in core/packages/client/scripts/predev-clean.mjs:4", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/scripts/predev-clean.mjs:4"}, "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-915cb67a21386e48", "name": "Commented-code block (7 lines) in core/packages/client/scripts/codemod-fieldpick-3way.mjs:2", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/scripts/codemod-fieldpick-3way.mjs:2"}, "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-1d90c45951bd47f3", "name": "Commented-code block (5 lines) in core/packages/client/scripts/revert-data-pick.mjs:2", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/scripts/revert-data-pick.mjs:2"}, "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-321015e4b38a59a0", "name": "Commented-code block (11 lines) in core/packages/client/scripts/codemod-dynamic-3way.mjs:2", "shortDescription": {"text": "Commented-code block (11 lines) in core/packages/client/scripts/codemod-dynamic-3way.mjs:2"}, "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-5b8ea687c962164f", "name": "Commented-code block (6 lines) in core/packages/client/scripts/cleanup-orphan-isz.mjs:6", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/scripts/cleanup-orphan-isz.mjs: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-6cc46c85b9d862ce", "name": "Commented-code block (10 lines) in core/packages/client/scripts/dev-safe.mjs:8", "shortDescription": {"text": "Commented-code block (10 lines) in core/packages/client/scripts/dev-safe.mjs: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-fcff30ce3324e6d1", "name": "Commented-code block (9 lines) in core/packages/client/scripts/codemod-jsx-3way.mjs:2", "shortDescription": {"text": "Commented-code block (9 lines) in core/packages/client/scripts/codemod-jsx-3way.mjs:2"}, "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-734f23ed28546a1c", "name": "Commented-code block (10 lines) in core/packages/client/scripts/codemod-localconst-3way.mjs:2", "shortDescription": {"text": "Commented-code block (10 lines) in core/packages/client/scripts/codemod-localconst-3way.mjs:2"}, "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-549c601834590c45", "name": "Commented-code block (6 lines) in core/packages/client/scripts/deskpet-cube/cube-engine.mjs:3", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/scripts/deskpet-cube/cube-engine.mjs:3"}, "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-e05c75e214b26432", "name": "Commented-code block (5 lines) in core/packages/client/components/FaceOverlay.ts:144", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/components/FaceOverlay.ts:144"}, "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-98de6f92f2aac752", "name": "Commented-code block (5 lines) in core/packages/client/components/StageSolver.tsx:38", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/components/StageSolver.tsx:38"}, "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-bf33a01c36a75784", "name": "Legacy-named symbol `119_v2` in core/packages/client/components/TwistySection.tsx:355", "shortDescription": {"text": "Legacy-named symbol `119_v2` in core/packages/client/components/TwistySection.tsx:355"}, "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-dc8dce7c1d75e30d", "name": "Commented-code block (6 lines) in core/packages/client/components/TwistySection.tsx:163", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/components/TwistySection.tsx:163"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-941320ea4899d05c", "name": "Commented-code block (6 lines) in core/packages/client/components/LiquidGlassChips.tsx:40", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/components/LiquidGlassChips.tsx:40"}, "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-b8bf032ff0f6fe58", "name": "Commented-code block (5 lines) in core/packages/client/components/DeskPetSearch.tsx:169", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/components/DeskPetSearch.tsx:169"}, "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-8caeae69131dfd62", "name": "Commented-code block (5 lines) in core/packages/client/components/PllPerformerOverlay.tsx:225", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/components/PllPerformerOverlay.tsx:225"}, "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-f6de4f7221be612f", "name": "Commented-code block (7 lines) in core/packages/client/components/ThemeColorSync.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/components/ThemeColorSync.tsx:3"}, "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-c97ebd74c0183115", "name": "Commented-code block (7 lines) in core/packages/client/components/DeskPet.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/components/DeskPet.tsx:3"}, "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-0ae4923b79b3dc65", "name": "Commented-code block (6 lines) in core/packages/client/components/CompCuberPicker.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/components/CompCuberPicker.tsx:3"}, "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-1c927cf8b21730a5", "name": "Commented-code block (6 lines) in core/packages/client/components/AppearanceToggle.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/components/AppearanceToggle.tsx:3"}, "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-a380002c981aa028", "name": "Commented-code block (5 lines) in core/packages/client/components/AppLink.tsx:12", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/components/AppLink.tsx: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-25e817bac36d2301", "name": "Commented-code block (5 lines) in core/packages/client/components/LangToggle.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/components/LangToggle.tsx:3"}, "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-ab903b6a432153d3", "name": "Commented-code block (5 lines) in core/packages/client/components/HomeLink.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/components/HomeLink.tsx:3"}, "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-48b0cc1b770a5959", "name": "Commented-code block (7 lines) in core/packages/client/components/ReconAutofill/ReconAutofill.tsx:423", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/components/ReconAutofill/ReconAutofill.tsx:423"}, "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-5d1739fc24fdde13", "name": "Commented-code block (5 lines) in core/packages/client/components/persons/sections/PersonPRTable.tsx:248", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/components/persons/sections/PersonPRTable.tsx: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-15c3ada1124adfaa", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/components/persons/sections/PersonPRTable.tsx:68", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/components/persons/sections/PersonPRTable.tsx:68"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2036e170064109a8", "name": "Commented-code block (5 lines) in core/packages/client/components/persons/sections/results/ByEventView.tsx:2", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/components/persons/sections/results/ByEventView.tsx:2"}, "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-137e402e51f1a0b2", "name": "Commented-code block (8 lines) in core/packages/client/components/persons/sections/results/AttemptEditPopover.tsx:2", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/components/persons/sections/results/AttemptEditPopover.tsx:2"}, "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-2fde416bcce7d70a", "name": "Commented-code block (9 lines) in core/packages/client/components/persons/logic/milestones.ts:3", "shortDescription": {"text": "Commented-code block (9 lines) in core/packages/client/components/persons/logic/milestones.ts:3"}, "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-4041a811e7474376", "name": "Commented-code block (5 lines) in core/packages/client/components/wca-stats/SorRace.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/components/wca-stats/SorRace.tsx:3"}, "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-6d46efa15069c72b", "name": "Commented-code block (6 lines) in core/packages/client/app/robots.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/robots.ts:3"}, "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-affda74a4ffc5710", "name": "Commented-code block (6 lines) in core/packages/client/app/sitemap.ts:48", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/sitemap.ts:48"}, "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-c08412278533aca3", "name": "Commented-code block (6 lines) in core/packages/client/app/cubing-chunks/[...slug]/route.ts:6", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/cubing-chunks/[...slug]/route.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-bb89acaeddf2150d", "name": "Commented-code block (5 lines) in core/packages/client/app/api/comp/[slug]/route.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/api/comp/[slug]/route.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-f0665244deb07630", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/scramble/gen/useCompSteps.ts:61", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/scramble/gen/useCompSteps.ts:61"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-144f61df840adc30", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/scramble/gen/TNoodleMode.tsx:330", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/scramble/gen/TNoodleMode.tsx:330"}, "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-724482a47be6ac98", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/scramble/gen/_wca-round.ts:12", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/scramble/gen/_wca-round.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-cfe1d10a16eff947", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/scramble/gen/_tnoodle-pdf.ts:475", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/scramble/gen/_tnoodle-pdf.ts:475"}, "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-e1b5933c5668fd86", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/scramble/gen/_tnoodle-pdf.ts:136", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/scramble/gen/_tnoodle-pdf.ts:136"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-09d1de80468757a1", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/scramble/analyzer/page.tsx:123", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/scramble/analyzer/page.tsx:123"}, "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-3d9944f8ad0f2c2b", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/scramble/solver/page.tsx:288", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/scramble/solver/page.tsx:288"}, "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-25d45b1bd7529066", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/scramble/stats/page.tsx:157", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/scramble/stats/page.tsx:157"}, "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-f512128152516842", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/scramble/stats/_components/ScrambleLengthView.tsx:50", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/scramble/stats/_components/ScrambleLengthView.tsx:50"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2560fd584e72289e", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/alg/[puzzle]/page.tsx:1", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/alg/[puzzle]/page.tsx: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-754b884214e25755", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/alg/[puzzle]/[set]/page.tsx:1", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/alg/[puzzle]/[set]/page.tsx: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-16f5d3b917d99d00", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx:14", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx: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-b17b0e915f0ff164", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/frame-count/useFrameBuffer.ts:319", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/frame-count/useFrameBuffer.ts:319"}, "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-204c61a98ba7ad1d", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/calc/_components/engine/calc_engine.ts:507", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/calc/_components/engine/calc_engine.ts:507"}, "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-722283aaf1941168", "name": "Legacy-named symbol `colpi_lang_filter_v1` in core/packages/client/app/[lang]/memo/colpi/_components/ColpiClient.tsx:40", "shortDescription": {"text": "Legacy-named symbol `colpi_lang_filter_v1` in core/packages/client/app/[lang]/memo/colpi/_components/ColpiClient.tsx:40"}, "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-388bd7276e15b83c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/language/wasm/page.tsx:279", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/language/wasm/page.tsx:279"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-54e276766d37a31f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/architecture/flow/page.tsx:80", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/architecture/flow/page.tsx:80"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ffcf47d7cbb41ee4", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/architecture/_components/PageLoadFlow", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/architecture/_components/PageLoadFlow.tsx:174"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c932a2dc0c0eec32", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/architecture/_components/ArchSvgs.tsx", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/architecture/_components/ArchSvgs.tsx:132"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-405f3937aba0fa5f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/stack/_tools/hono.tsx:100", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/stack/_tools/hono.tsx:100"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-02a433d5ad19b1e9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/stack/_tools/react-router.tsx:130", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/stack/_tools/react-router.tsx:130"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-62bf8d3f828de6be", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/code/stack/[slug]/page.tsx:1", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/code/stack/[slug]/page.tsx: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-848ec69452530546", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/code/solvers/page.tsx:81", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/code/solvers/page.tsx:81"}, "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-de61c31cd606012d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/solvers/page.tsx:264", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/solvers/page.tsx:264"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1b8bdb9fd4121f31", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/utils/_catalog.tsx:134", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/utils/_catalog.tsx:134"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d9a1f09ae3f62226", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/code/algorithms/kociemba/page.tsx:213", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/code/algorithms/kociemba/page.tsx:213"}, "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-cbc620af78573f3e", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/code/tokens/_tokens.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/code/tokens/_tokens.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-9c64da9a4fceccda", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/visualcube/page.tsx:837", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/visualcube/page.tsx:837"}, "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-cfdf382669c1c7e7", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/site/nav_sites_api.ts:29", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/site/nav_sites_api.ts:29"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7897516c03f96b52", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/why-cube/_StickyToc.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/why-cube/_StickyToc.tsx:3"}, "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-c4e006240a5963c4", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/why-cube/_LiveHero.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/why-cube/_LiveHero.tsx:3"}, "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-3ef84cee934ff068", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/why-cube/_ScaleLadder.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/why-cube/_ScaleLadder.tsx:3"}, "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-76cf1d8c09bfb552", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/why-cube/page.tsx:7", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/why-cube/page.tsx: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-8bd369110a1a6758", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/why-cube/_GodsNumberDist.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/why-cube/_GodsNumberDist.tsx:3"}, "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-801d1a2d94d9dc72", "name": "Legacy-named symbol `event_picker_v1` in core/packages/client/app/[lang]/battle/_components/engine/battle_store.ts:330", "shortDescription": {"text": "Legacy-named symbol `event_picker_v1` in core/packages/client/app/[lang]/battle/_components/engine/battle_store.ts:330"}, "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-f6b5369a976c90d9", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/person/[wcaId]/PersonHubClient.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/person/[wcaId]/PersonHubClient.tsx:3"}, "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-cbbaf3804f4814a5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/timer/_lib/marks.ts:42", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/timer/_lib/marks.ts:42"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7e7ed8a39b3e80c2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/timer/_lib/scramble/wca_pool.ts:136", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/timer/_lib/scramble/wca_pool.ts:136"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b878797f03437042", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/cube/cfop_detect.ts:63", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/cube/cfop_detect.ts:63"}, "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-83f68220a712faab", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/cube/state.ts:517", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/cube/state.ts:517"}, "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-ca40f173eddd9718", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/cube/megaminx_state.ts:163", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/cube/megaminx_state.ts:163"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7a695b8a2d1b4165", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/timer/_lib/components/cfop_recognize.ts:393", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/timer/_lib/components/cfop_recognize.ts:393"}, "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-f199d4457fe33fd4", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/timer/_lib/solver/bld_helper.ts:378", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/timer/_lib/solver/bld_helper.ts:378"}, "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-bc4aaa3691162a42", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/solver/cross.ts:80", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/solver/cross.ts:80"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-71663b4a95ab7ed1", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/solver/cube2x2.ts:137", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/solver/cube2x2.ts:137"}, "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-0f729c58e01ad6ef", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/solver/methods.ts:381", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/solver/methods.ts:381"}, "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-58e87b6d394d2f42", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/bluetooth/gan_v3.ts:405", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/bluetooth/gan_v3.ts:405"}, "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-c6a691d15045791c", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/bluetooth/gan_v4.ts:412", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/bluetooth/gan_v4.ts:412"}, "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-96738c9347cab143", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/timer/_lib/reconstruct/slice.ts:113", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/timer/_lib/reconstruct/slice.ts:113"}, "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-f127bdea7aeb5536", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/timer/_lib/storage/cloud.ts:50", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/timer/_lib/storage/cloud.ts:50"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-976fba344b5c1247", "name": "Commented-code block (10 lines) in core/packages/client/app/[lang]/timer/_shell/SoloView.tsx:264", "shortDescription": {"text": "Commented-code block (10 lines) in core/packages/client/app/[lang]/timer/_shell/SoloView.tsx:264"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d21a7924059920e2", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/wca/about/[id]/page.tsx:1", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/wca/about/[id]/page.tsx: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-a510af1452aceab3", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/wca/comp/page.tsx:1372", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/wca/comp/page.tsx:1372"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ed739e42c665a5eb", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/wca/comp/_components/use_calendar_data.ts:", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/wca/comp/_components/use_calendar_data.ts:29"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-14fe0bf5b1585472", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/wca/comp/[slug]/page.tsx:1", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/wca/comp/[slug]/page.tsx: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-e75de05172be1e1f", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/wca/comp/[slug]/CompDetailPage.tsx:376", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/wca/comp/[slug]/CompDetailPage.tsx:376"}, "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-c699f19fee35838f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx:772", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx:772"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e9149567201f4a57", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/wca/globe/_lib/trail_video.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/wca/globe/_lib/trail_video.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-911f495491c0c735", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/wca/[statId]/WcaStatClient.tsx:1009", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/wca/[statId]/WcaStatClient.tsx:1009"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fe2616d86d290473", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/wca/[statId]/page.tsx:1", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/wca/[statId]/page.tsx: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-a0dcc9fb0b322ddc", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/wca/viz/_components/VizCanvas.tsx:2", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/wca/viz/_components/VizCanvas.tsx:2"}, "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-6c01b99a05abe289", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/wca/persons/[wcaId]/page.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/wca/persons/[wcaId]/page.tsx:3"}, "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-fcb5141d123f10e0", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/wca/prediction/_components/theoretical_limits.ts:4", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/wca/prediction/_components/theoretical_limits.ts:4"}, "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-7b5f0875b428d244", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/wca/prediction/_components/theory_data.ts:179", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/wca/prediction/_components/theory_data.ts:179"}, "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-1c5fe7044ba8fdc1", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/wca/prediction/_components/models.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/wca/prediction/_components/models.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-959d91aa14618c0a", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/recon/page.tsx:79", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/recon/page.tsx:79"}, "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-0729643f26821354", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/recon/submit/ReconSubmitForm.tsx:403", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/recon/submit/ReconSubmitForm.tsx:403"}, "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-881f43e2808c62d3", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/recon/submit/ReconSubmitForm.tsx:628", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/recon/submit/ReconSubmitForm.tsx:628"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ef5b1055b132025a", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/notation/NotationMove.tsx:5", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/notation/NotationMove.tsx: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-01cbce9b19ce50b2", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/one-handed/page.tsx:5", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/one-handed/page.tsx: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-8fdafd4932ac717a", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/multi-blind/page.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/multi-blind/page.tsx:3"}, "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-9f22f506c4fb9eb2", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/puzzles/page.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/puzzles/page.tsx:3"}, "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-b34b553e67b29732", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/scrambling/page.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/scrambling/page.tsx:3"}, "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-e975574be6696109", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/regulation/events/page.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/regulation/events/page.tsx:3"}, "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-d948a50cd79c95ce", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/blindfolded/page.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/blindfolded/page.tsx:3"}, "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-f22a1677efdc79a8", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/regulation/officials/page.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/regulation/officials/page.tsx:3"}, "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-9f58689bd02eb76f", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/regulation/incidents/page.tsx:5", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/regulation/incidents/page.tsx: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-1271cfdb590b20dd", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/regulation/defects/page.tsx:5", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/regulation/defects/page.tsx: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-68fa395d8d482373", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/competitors/page.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/competitors/page.tsx:3"}, "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-c5dd724ab45e3f7b", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/regulation/solved-state/page.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/regulation/solved-state/page.tsx:3"}, "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-2bb776af29cbef44", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/regulation/speed-solving/page.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/regulation/speed-solving/page.tsx:3"}, "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-c837248ef92b00fe", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/regulation/head-to-head/page.tsx:5", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/regulation/head-to-head/page.tsx: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-8e35a455ad30f99d", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/regulation/fewest-moves/page.tsx:5", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/regulation/fewest-moves/page.tsx: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-13c43895825cca5c", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/_components/FullClauses.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/_components/FullClauses.tsx:3"}, "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-7d5c56eae58f4bf3", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/regulation/environment/page.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/regulation/environment/page.tsx:3"}, "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-f775738d4c57639d", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/math/god/_components/TwoPhaseDemo.tsx:137", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/math/god/_components/TwoPhaseDemo.tsx:137"}, "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-c8bd9d70b78e65a2", "name": "Commented-code block (9 lines) in core/packages/client/app/[lang]/math/group/_components/cube_state.ts:288", "shortDescription": {"text": "Commented-code block (9 lines) in core/packages/client/app/[lang]/math/group/_components/cube_state.ts:288"}, "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-fbb7d10d2d9f36e9", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/math/group/_components/sections/FriezeGroups.tsx:384", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/math/group/_components/sections/FriezeGroups.tsx:384"}, "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-863dd9ecb0cdb3a6", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/group/_components/sections/PolyaCubeColorings.tsx", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/group/_components/sections/PolyaCubeColorings.tsx:152"}, "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-d1811343c60fbcf3", "name": "Commented-code block (15 lines) in core/packages/client/app/[lang]/math/group/_components/sections/QuaternionGroup.tsx:9", "shortDescription": {"text": "Commented-code block (15 lines) in core/packages/client/app/[lang]/math/group/_components/sections/QuaternionGroup.tsx:96"}, "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-d3d93c0477c0c325", "name": "Commented-code block (17 lines) in core/packages/client/app/[lang]/math/group/_components/sections/RepresentationBasics.", "shortDescription": {"text": "Commented-code block (17 lines) in core/packages/client/app/[lang]/math/group/_components/sections/RepresentationBasics.tsx:228"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-748e4334d19ad5f9", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/group/_components/sections/ClassEquation.tsx:127", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/group/_components/sections/ClassEquation.tsx:127"}, "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-85afa44caaece06e", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/group/_components/sections/ExpanderRamanujan.tsx:", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/group/_components/sections/ExpanderRamanujan.tsx:30"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-584ac9256973ec67", "name": "Commented-code block (9 lines) in core/packages/client/app/[lang]/math/group/_components/sections/DihedralGroups.tsx:7", "shortDescription": {"text": "Commented-code block (9 lines) in core/packages/client/app/[lang]/math/group/_components/sections/DihedralGroups.tsx: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-89b66a38b67b378a", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/math/group/_components/sections/OrbitStabilizer.tsx:19", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/math/group/_components/sections/OrbitStabilizer.tsx:192"}, "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-e1b0c2298d171b22", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/group/_components/sections/GaloisConnection.tsx:9", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/group/_components/sections/GaloisConnection.tsx:902"}, "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-5a13c9063629b167", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/math/group/_components/sections/SemidirectProduct.tsx:", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/math/group/_components/sections/SemidirectProduct.tsx:517"}, "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-4b8af40f0f2c0f2a", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/demigod/_components/DistanceHistogram.tsx:13", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/demigod/_components/DistanceHistogram.tsx:13"}, "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-ce7fe25b872449f0", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/sim/PlayerControls.tsx:270", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/sim/PlayerControls.tsx:270"}, "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-a35948d43119c8d3", "name": "Legacy-named symbol `q_old` in core/packages/client/app/[lang]/sim/cuber/instanced.ts:369", "shortDescription": {"text": "Legacy-named symbol `q_old` in core/packages/client/app/[lang]/sim/cuber/instanced.ts:369"}, "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-c864b135039bd972", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/sim/cuber/group.ts:95", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/sim/cuber/group.ts:95"}, "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-7bebc4c407f2c57a", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/sim/cuber/world.ts:163", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/sim/cuber/world.ts:163"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c087caf57c8bad37", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/sim/cuber/sq1/sq1State.ts:78", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/sim/cuber/sq1/sq1State.ts:78"}, "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-b30ee3780983fad3", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/sim/cuber/sq1/Sq1Twister.ts:36", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/sim/cuber/sq1/Sq1Twister.ts:36"}, "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-0c0aaa26858e6dac", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/[puzzle]/page.tsx:1", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/[puzzle]/page.tsx: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-7e83e49de36ec782", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/[puzzle]/[set]/page.tsx:1", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/[puzzle]/[set]/page.tsx: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-115f8b4810611799", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/[puzzle]/[set]/run/page.tsx:1", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/[puzzle]/[set]/run/page.tsx: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-42281b49bb5895cf", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/roux/page.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/roux/page.tsx:3"}, "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-77751968804a6590", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/comm/page.tsx:10", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/comm/page.tsx: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-54a0a918facdf4a6", "name": "Commented-code block (13 lines) in core/packages/client/app/[lang]/trainer/3bld/ltct/page.tsx:5", "shortDescription": {"text": "Commented-code block (13 lines) in core/packages/client/app/[lang]/trainer/3bld/ltct/page.tsx: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-610746bcb1c9bb7b", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/3bld/resources/page.tsx:6", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/3bld/resources/page.tsx: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-e29f1e3d6cd72f88", "name": "Commented-code block (9 lines) in core/packages/client/app/[lang]/trainer/3bld/memo/page.tsx:6", "shortDescription": {"text": "Commented-code block (9 lines) in core/packages/client/app/[lang]/trainer/3bld/memo/page.tsx: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-3d167ec6dc471a4a", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/3bld/parity/page.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/3bld/parity/page.tsx:3"}, "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-0a4fe6e761875723", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/timer/page.tsx:8", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/timer/page.tsx: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-0d221c9f786b00ed", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/readme/page.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/readme/page.tsx:3"}, "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-6206e5a41c476c08", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/_lib/lettering.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/_lib/lettering.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-1418e247d48f9997", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/_lib/facelet-model.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/_lib/facelet-model.ts:3"}, "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-aa527fce22dbd7b6", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/_lib/scheme-presets.ts:4", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/_lib/scheme-presets.ts:4"}, "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-4e9270ba503abb9f", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/_components/TwoTwoTrainer.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/_components/TwoTwoTrainer.tsx:3"}, "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-994866f832843768", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/3bld/_components/CodeTrainer.tsx:3", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/3bld/_components/CodeTrainer.tsx:3"}, "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-dda23fabdb5e5a26", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/3bld/_components/FloatTrainer.tsx:8", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/3bld/_components/FloatTrainer.tsx: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-bbef0f71a018e139", "name": "Commented-code block (11 lines) in core/packages/client/app/[lang]/trainer/3bld/helper/page.tsx:5", "shortDescription": {"text": "Commented-code block (11 lines) in core/packages/client/app/[lang]/trainer/3bld/helper/page.tsx: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-ac582d42331222de", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/skewb/page.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/skewb/page.tsx:3"}, "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-7f3cc92351c308a4", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/skewb/_lib/algs.ts:1", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/skewb/_lib/algs.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-4e8803586aede2c4", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/skewb/_lib/useSkewbTrainer.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/skewb/_lib/useSkewbTrainer.ts:3"}, "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-ac86345fb8219abb", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/trainer/skewb/_lib/scramble.ts:30", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/trainer/skewb/_lib/scramble.ts:30"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5912243756e5cab5", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/_roux/RouxTrainer.tsx:3", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/_roux/RouxTrainer.tsx:3"}, "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-17bcaca2f860de2e", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/_roux/i18n.ts:5", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/_roux/i18n.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-bcc1bce07f57d998", "name": "Commented-code block (10 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/CubeSim.tsx:3", "shortDescription": {"text": "Commented-code block (10 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/CubeSim.tsx:3"}, "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-11e386bde81c12a3", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/FavListView.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/FavListView.tsx:3"}, "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-dd2186b45c8cd25d", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/CaseSelectView.tsx:5", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/CaseSelectView.tsx: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-57dbf1535e180f60", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/analyzer.worker.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/analyzer.worker.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-2353bf8b47d1e39f", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/TrackerView.tsx:3", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/TrackerView.tsx:3"}, "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-9b8593b948c46f09", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/BlockTrainerView.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/BlockTrainerView.tsx:3"}, "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-a0483d381fc98c5b", "name": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/PanoramaView.tsx:3", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/PanoramaView.tsx:3"}, "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-2d546d64e0cc4ab4", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/CmllTrainerView.tsx:6", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/CmllTrainerView.tsx: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-9456d237fe87a5ab", "name": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/ScrambleInputView.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/ScrambleInputView.tsx:3"}, "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-ced4fa85fd80006d", "name": "Commented-code block (6 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/AnalyzerView.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/AnalyzerView.tsx:3"}, "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-e915206021656bfb", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/CaseVisualizer.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/CaseVisualizer.tsx:3"}, "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-64e90b7f69f4fa9a", "name": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/ui.tsx:6", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/ui.tsx: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-464036a0db79aa3e", "name": "Commented-code block (5 lines) in core/packages/client/app/tools/[...slug]/route.ts:47", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/app/tools/[...slug]/route.ts:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2fdf30912fe205bb", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/tools/[...slug]/route.ts:65", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/tools/[...slug]/route.ts:65"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-498cad969a2a2259", "name": "Commented-code block (7 lines) in core/packages/client/app/stats/[...slug]/route.ts:1", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/app/stats/[...slug]/route.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-452b9785c06ff3e3", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/feedback-api.ts:53", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/feedback-api.ts:53"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-896c81e8fdf1317a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/wca-pb.ts:46", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/wca-pb.ts:46"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8eeecf32edef4741", "name": "Commented-code block (5 lines) in core/packages/client/lib/deskpet-gallery.ts:22", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/lib/deskpet-gallery.ts:22"}, "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-c8cb7ec9c55c431d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/membership-api.ts:66", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/membership-api.ts:66"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-33746cda177a47dc", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/colpi-api.ts:42", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/colpi-api.ts:42"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5715b93f573ba5ce", "name": "Commented-code block (6 lines) in core/packages/client/lib/wca-person-api.ts:161", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/lib/wca-person-api.ts:161"}, "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-edfb5ec0fee2e299", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/wca-person-api.ts:54", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/wca-person-api.ts:54"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c28acfd6184bcd37", "name": "Commented-code block (7 lines) in core/packages/client/lib/pll-fingertricks.ts:7", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/client/lib/pll-fingertricks.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-d3f8989e3f490ff5", "name": "Commented-code block (5 lines) in core/packages/client/lib/theme.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/lib/theme.ts:3"}, "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-4e34ccae4cfb4dfc", "name": "Commented-code block (6 lines) in core/packages/client/lib/zbls_lookup.ts:90", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/lib/zbls_lookup.ts:90"}, "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-0cd60c41e354c3a4", "name": "Legacy-named symbol `baseOld` in core/packages/client/lib/result-watch-api.ts:361", "shortDescription": {"text": "Legacy-named symbol `baseOld` in core/packages/client/lib/result-watch-api.ts:361"}, "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-842dcbf648a7b6cd", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/result-watch-api.ts:86", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/result-watch-api.ts:86"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7e94b4795f94c004", "name": "Commented-code block (5 lines) in core/packages/client/lib/city-display.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/lib/city-display.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-5b7a2e45de81edf0", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/puzzle-distribution.ts:37", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/puzzle-distribution.ts:37"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-659704acefde3764", "name": "Commented-code block (6 lines) in core/packages/client/lib/country-continents.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/lib/country-continents.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-300b3de12ecf5b9b", "name": "Commented-code block (6 lines) in core/packages/client/lib/stats-base.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/lib/stats-base.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-7a1f9e2e4b390582", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/recon-api.ts:22", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/recon-api.ts:22"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-dce47c105eba41fa", "name": "Commented-code block (5 lines) in core/packages/client/lib/scramble-variants.ts:68", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/lib/scramble-variants.ts:68"}, "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-037b4bf568303dd3", "name": "Commented-code block (6 lines) in core/packages/client/lib/top10-export.ts:66", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/lib/top10-export.ts:66"}, "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-30f1339025cc8457", "name": "Commented-code block (5 lines) in core/packages/client/lib/cubing-scramble.ts:144", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/lib/cubing-scramble.ts:144"}, "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-894a11650f9536ea", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/cubing-scramble.ts:367", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/cubing-scramble.ts:367"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e0de71fa6b51dabe", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/puzzle-examples.ts:25", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/puzzle-examples.ts:25"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-55c5d7ea9775a566", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/sponsors-api.ts:30", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/sponsors-api.ts:30"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6b6a90d0143cbca4", "name": "Commented-code block (6 lines) in core/packages/client/lib/comp-schedule.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/lib/comp-schedule.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-49b65a050dd7522d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/comp-schedule.ts:63", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/comp-schedule.ts:63"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2b0bfd178c672a0d", "name": "Commented-code block (6 lines) in core/packages/client/lib/api-base.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/lib/api-base.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-0410d0d9a34e329d", "name": "Commented-code block (8 lines) in core/packages/client/lib/recon-seo.ts:6", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/lib/recon-seo.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-10524542c4d866b4", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/ops-api.ts:23", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/ops-api.ts:23"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ddc5501250a89836", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/article-api.ts:76", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/article-api.ts:76"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ad7594792f7b0708", "name": "Commented-code block (9 lines) in core/packages/client/lib/article-markdown.tsx:32", "shortDescription": {"text": "Commented-code block (9 lines) in core/packages/client/lib/article-markdown.tsx:32"}, "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-e17826dff2b493cd", "name": "Commented-code block (6 lines) in core/packages/client/lib/recon_autofill_core.ts:34", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/lib/recon_autofill_core.ts:34"}, "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-3f72c2539daf31f7", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/wiki-api.ts:47", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/wiki-api.ts:47"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-460ddea8ccda50a9", "name": "Commented-code block (6 lines) in core/packages/client/lib/cstimer-444.ts:21", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/lib/cstimer-444.ts:21"}, "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-ac779a7c0dea9e98", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/comp-follows.ts:11", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/comp-follows.ts:11"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-694ca774244520d3", "name": "Commented-code block (6 lines) in core/packages/client/lib/cross-solver.ts:7", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/lib/cross-solver.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-c3d9e169a702db0c", "name": "Legacy-named symbol `two_gram_v1` in core/packages/client/lib/roux/Evaluator.ts:2", "shortDescription": {"text": "Legacy-named symbol `two_gram_v1` in core/packages/client/lib/roux/Evaluator.ts:2"}, "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-23142e69206b9568", "name": "Commented-code block (8 lines) in core/packages/client/lib/roux/Evaluator.ts:92", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/lib/roux/Evaluator.ts:92"}, "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-4fd0f7c4e7879c3b", "name": "Legacy-named symbol `mask_copy` in core/packages/client/lib/roux/CubeLib.ts:767", "shortDescription": {"text": "Legacy-named symbol `mask_copy` in core/packages/client/lib/roux/CubeLib.ts:767"}, "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-64cd7377901a7227", "name": "Commented-code block (8 lines) in core/packages/client/lib/roux/Pruner.ts:259", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/client/lib/roux/Pruner.ts:259"}, "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-45919ab81871148e", "name": "Commented-code block (6 lines) in core/packages/client/lib/roux/Config.ts:98", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/lib/roux/Config.ts:98"}, "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-c0d4d0ceedff7404", "name": "Commented-code block (10 lines) in core/packages/client/lib/roux/min2phase/min2phase-wrapper.ts:7", "shortDescription": {"text": "Commented-code block (10 lines) in core/packages/client/lib/roux/min2phase/min2phase-wrapper.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-1f65ffac7afc378d", "name": "Commented-code block (5 lines) in core/packages/client/hooks/useSpeechToText.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/hooks/useSpeechToText.ts:3"}, "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-2781f71073661c96", "name": "Commented-code block (6 lines) in core/packages/client/public/sw.js:3", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/client/public/sw.js:3"}, "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-559cb370126a7ddb", "name": "Commented-code block (5 lines) in core/packages/client/public/analyze-worker/analyzer.js:23", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/public/analyze-worker/analyzer.js:23"}, "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-4e06d3b598c7feec", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1e3e3eea5a8eb0a6", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver-wrapped.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ceb2974c761a887e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/xcross/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/xcross/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-aa9cc5da5670f661", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pair/pairing_solver-wrapped.js:", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pair/pairing_solver-wrapped.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a4ea74c5a84d0764", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pair/pairing_solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pair/pairing_solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f6df263788742b54", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/eocross/solver-wrapped.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/eocross/solver-wrapped.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-edcfc4169a529f6b", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/eocross/solver.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/eocross/solver.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8918028fd6adec23", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pseudo-cross/pseudo-wrapped.js:", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pseudo-cross/pseudo-wrapped.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c4e731b1e63076b2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pseudo-cross/pseudo.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pseudo-cross/pseudo.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5b9bae6d914c9a39", "name": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt3.mjs:9", "shortDescription": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt3.mjs: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-b537d354cd6b268f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt3.mjs:157", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt3.mjs:157"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ca862adb5d8117c6", "name": "Commented-code block (5 lines) in core/packages/client/public/cubeopt/wasm-worker.js:103", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/client/public/cubeopt/wasm-worker.js:103"}, "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-166e670e662fdfae", "name": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt7.mjs:9", "shortDescription": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt7.mjs: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-29e91756e742d632", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt7.mjs:157", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt7.mjs:157"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2b444bc1632dcb37", "name": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt8.mjs:9", "shortDescription": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt8.mjs: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-591cf31d8f83b733", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt8.mjs:157", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt8.mjs:157"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8560747334c7f9d6", "name": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt6.mjs:9", "shortDescription": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt6.mjs: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-c84465108dd56fc1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt6.mjs:157", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt6.mjs:157"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7e3dc8b059bea474", "name": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt2.mjs:9", "shortDescription": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt2.mjs: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-8e502fe8e1cbbebf", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt2.mjs:157", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt2.mjs:157"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c9ecd09c995dac5f", "name": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt4.mjs:9", "shortDescription": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt4.mjs: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-ac464ab0fe1de18f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt4.mjs:157", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt4.mjs:157"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-219afb0d13087ae2", "name": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt9.mjs:9", "shortDescription": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt9.mjs: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-b380c6eba0f26e7d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt9.mjs:157", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt9.mjs:157"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0902abee0d5066e9", "name": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt5.mjs:9", "shortDescription": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt5.mjs: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-8cce0119e135a8d1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt5.mjs:157", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt5.mjs:157"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7357f351777e602f", "name": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt1.mjs:9", "shortDescription": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt1.mjs: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-16cf425d4e73d13a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt1.mjs:157", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt1.mjs:157"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8b2d2680efb07b99", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/ffmpeg/ffmpeg-core.js:8", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/ffmpeg/ffmpeg-core.js:8"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0bd54cb069b6a893", "name": "Commented-code block (6 lines) in core/packages/shared/src/payment.ts:6", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/shared/src/payment.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-0cc14de5f1b6b2d4", "name": "Commented-code block (5 lines) in core/packages/shared/src/alg.ts:160", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/shared/src/alg.ts:160"}, "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-f07bcc2c89917d37", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/shared/src/alg.ts:182", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/shared/src/alg.ts:182"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a63897a70ca81489", "name": "Commented-code block (8 lines) in core/packages/shared/src/scramble_length.ts:3", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/shared/src/scramble_length.ts:3"}, "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-0f031a9fa4201ca0", "name": "Commented-code block (7 lines) in core/packages/shared/src/skewb_pyramid_svg.ts:66", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/shared/src/skewb_pyramid_svg.ts:66"}, "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-56780819d1125d6d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/shared/src/api/persons_index.ts:22", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/shared/src/api/persons_index.ts:22"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d43cac6d3c7f6ff1", "name": "Commented-code block (5 lines) in core/packages/shared/src/api/stats-base.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/shared/src/api/stats-base.ts:3"}, "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-a913ee31bd5ea5ef", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/shared/src/api/comps_json.ts:68", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/shared/src/api/comps_json.ts:68"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-274777f29bcf48dc", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/shared/src/hooks/useWcaAuth.ts:118", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/shared/src/hooks/useWcaAuth.ts:118"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7e5207ded0bef48c", "name": "Commented-code block (6 lines) in core/packages/visualcube/src/cube/parsing/algorithm.ts:93", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/visualcube/src/cube/parsing/algorithm.ts:93"}, "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-79db8a6327d1fec7", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/stack-kernel/pkg/stack_kernel.js:235", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/stack-kernel/pkg/stack_kernel.js:235"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-07e090c78d9e566c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/alg-build/align_zbls.mjs:77", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/alg-build/align_zbls.mjs:77"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4644818f715174fc", "name": "Commented-code block (8 lines) in core/packages/scramble-stats-build/build_scramble_bundle.mjs:4", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/scramble-stats-build/build_scramble_bundle.mjs:4"}, "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-ed759de72f42945c", "name": "Commented-code block (5 lines) in core/packages/scramble-stats-build/export_puzzle_optimal.mjs:4", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/scramble-stats-build/export_puzzle_optimal.mjs:4"}, "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-d27e22fe4b82c1dd", "name": "Network/subprocess call without timeout or try/except \u2014 core/packages/scramble-stats-build/incremental.py:125", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 core/packages/scramble-stats-build/incremental.py:125"}, "fullDescription": {"text": "`urllib.request.urlopen(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-99e5dbc6db8795e8", "name": "Commented-code block (13 lines) in core/packages/scramble-stats-build/src/build_comp_steps.ts:3", "shortDescription": {"text": "Commented-code block (13 lines) in core/packages/scramble-stats-build/src/build_comp_steps.ts:3"}, "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-674e59a9d7040340", "name": "Commented-code block (10 lines) in core/packages/scramble-stats-build/src/build_puzzle_examples.ts:11", "shortDescription": {"text": "Commented-code block (10 lines) in core/packages/scramble-stats-build/src/build_puzzle_examples.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-aadbfee830683619", "name": "Commented-code block (5 lines) in core/packages/scramble-stats-build/src/build_recent_scrambles.ts:4", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/scramble-stats-build/src/build_recent_scrambles.ts:4"}, "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-f3de78ea42ab7af1", "name": "Commented-code block (6 lines) in core/packages/scramble-stats-build/src/build.ts:180", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/scramble-stats-build/src/build.ts:180"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4ebac80a7dc97fc1", "name": "Commented-code block (13 lines) in core/packages/server/scripts/dump-past-comps.ts:123", "shortDescription": {"text": "Commented-code block (13 lines) in core/packages/server/scripts/dump-past-comps.ts:123"}, "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-37e720a0996716ce", "name": "Commented-code block (5 lines) in core/packages/server/src/index.ts:48", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/server/src/index.ts:48"}, "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-0552e063ba09905d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/server/src/utils/upcoming_comps_cache.ts:31", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/server/src/utils/upcoming_comps_cache.ts:31"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-589b20cbe599a5d7", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/server/src/routes/auth.ts:34", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/server/src/routes/auth.ts:34"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f4d35caf30736e2a", "name": "Commented-code block (8 lines) in core/packages/server/src/routes/cubeopt_solve.ts:94", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/server/src/routes/cubeopt_solve.ts:94"}, "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-d7b7b7673dfe0f59", "name": "Commented-code block (8 lines) in core/packages/server/src/routes/wca_schedule.ts:3", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/server/src/routes/wca_schedule.ts:3"}, "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-3f81306c45bf5a0d", "name": "Commented-code block (5 lines) in core/packages/server/src/routes/analytics.ts:169", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/server/src/routes/analytics.ts:169"}, "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-1126ce1af48ff518", "name": "Commented-code block (6 lines) in core/packages/server/src/routes/cubing_live.ts:1028", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/server/src/routes/cubing_live.ts:1028"}, "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-271997634698995e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/server/src/routes/cubing_live.ts:140", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/server/src/routes/cubing_live.ts:140"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bbb1a75ffbbe5c6e", "name": "Commented-code block (5 lines) in core/packages/server/src/routes/recon.ts:68", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/server/src/routes/recon.ts:68"}, "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-5f480749537e0f4a", "name": "Commented-code block (5 lines) in core/packages/server/src/routes/wca_stats_extra.ts:221", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/server/src/routes/wca_stats_extra.ts:221"}, "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-0937d5ea45eb1402", "name": "Commented-code block (7 lines) in core/packages/server/src/routes/wca_scrambles.ts:122", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/server/src/routes/wca_scrambles.ts:122"}, "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-310e91de998ccd75", "name": "Commented-code block (5 lines) in core/packages/server/src/cubeopt/daemon.ts:35", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/server/src/cubeopt/daemon.ts:35"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1ee25bf5462ec414", "name": "Commented-code block (7 lines) in core/packages/server/src/cubeopt/solve-daemon.mjs:16", "shortDescription": {"text": "Commented-code block (7 lines) in core/packages/server/src/cubeopt/solve-daemon.mjs:16"}, "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-9aa23a7ad2b7551a", "name": "Commented-code block (8 lines) in core/packages/wb-build/src/scrape.ts:300", "shortDescription": {"text": "Commented-code block (8 lines) in core/packages/wb-build/src/scrape.ts:300"}, "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-652e62c5d71e7d64", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/wb-build/src/scrape.ts:390", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/wb-build/src/scrape.ts:390"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1d84153de55a7647", "name": "Commented-code block (5 lines) in core/packages/stats-build/src/statistics/wr_average_history.ts:53", "shortDescription": {"text": "Commented-code block (5 lines) in core/packages/stats-build/src/statistics/wr_average_history.ts:53"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f855f63d74d025e8", "name": "Commented-code block (6 lines) in core/packages/stats-build/src/statistics/wr_dominance.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/stats-build/src/statistics/wr_dominance.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-07a6ab161a3600b8", "name": "Commented-code block (13 lines) in core/packages/stats-build/src/statistics/date_match_pr.ts:1", "shortDescription": {"text": "Commented-code block (13 lines) in core/packages/stats-build/src/statistics/date_match_pr.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-bc3b03f94ecb098e", "name": "Commented-code block (6 lines) in core/packages/stats-build/src/statistics/mbf_average.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/stats-build/src/statistics/mbf_average.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-d8fb31a788ebb2f6", "name": "Commented-code block (6 lines) in core/packages/stats-build/src/statistics/name_stats.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/stats-build/src/statistics/name_stats.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-fdb909c1942655ba", "name": "Commented-code block (6 lines) in core/packages/stats-build/src/statistics/wr_newcomer.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in core/packages/stats-build/src/statistics/wr_newcomer.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-6d557f542491e2c7", "name": "`fetch()` without try/.catch or AbortSignal \u2014 core/cube555-daemon/bench.mjs:65", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/cube555-daemon/bench.mjs:65"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-89d60b9ab303dc08", "name": "66 env vars used in code but missing from .env.example", "shortDescription": {"text": "66 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `ADMIN_API_KEY`, `ALIPAY_GATEWAY`, `CHUNK`, `CLAWD_UPSTREAM`, `COMPS`, `CONCURRENCY`, `CORPUS`, `CUBE555_DISABLED` + 58 more. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-def2b915d1749651", "name": "Dangling fetch: GET /stats/comp_countries.json (tools/i18n/i18n.js:557)", "shortDescription": {"text": "Dangling fetch: GET /stats/comp_countries.json (tools/i18n/i18n.js:557)"}, "fullDescription": {"text": "`tools/i18n/i18n.js:557` calls `GET /stats/comp_countries.json` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/stats/comp_countries.json`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2ac23e9c12742d78", "name": "Dangling fetch: GET /stats/person_countries.json (tools/i18n/i18n.js:570)", "shortDescription": {"text": "Dangling fetch: GET /stats/person_countries.json (tools/i18n/i18n.js:570)"}, "fullDescription": {"text": "`tools/i18n/i18n.js:570` calls `GET /stats/person_countries.json` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/stats/person_countries.json`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8a199f6050db28ea", "name": "Dangling fetch: GET https://api.cuberoot.me/v1/alg/sets/3x3/zbls (core/packages/alg-build/align_zbls.mjs:77)", "shortDescription": {"text": "Dangling fetch: GET https://api.cuberoot.me/v1/alg/sets/3x3/zbls (core/packages/alg-build/align_zbls.mjs:77)"}, "fullDescription": {"text": "`core/packages/alg-build/align_zbls.mjs:77` calls `GET https://api.cuberoot.me/v1/alg/sets/3x3/zbls` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.cuberoot.me/v1/alg/sets/3x3/zbls`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4bc8afece813e375", "name": "Dangling fetch: GET /api/comp/${encodeURIComponent(slug)} (core/packages/client/app/[lang]/wca/comp/[slug]/CompDetailPag", "shortDescription": {"text": "Dangling fetch: GET /api/comp/${encodeURIComponent(slug)} (core/packages/client/app/[lang]/wca/comp/[slug]/CompDetailPage.tsx:763)"}, "fullDescription": {"text": "`core/packages/client/app/[lang]/wca/comp/[slug]/CompDetailPage.tsx:763` calls `GET /api/comp/${encodeURIComponent(slug)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/comp/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-dd6ae2fad6435e85", "name": "Dangling fetch: GET /countries-110m.geojson (core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx:1074)", "shortDescription": {"text": "Dangling fetch: GET /countries-110m.geojson (core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx:1074)"}, "fullDescription": {"text": "`core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx:1074` calls `GET /countries-110m.geojson` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/countries-110m.geojson`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-87f3d0aeb5eeef14", "name": "Dangling fetch: GET /cn_disputed_patches.geojson (core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx:1075)", "shortDescription": {"text": "Dangling fetch: GET /cn_disputed_patches.geojson (core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx:1075)"}, "fullDescription": {"text": "`core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx:1075` calls `GET /cn_disputed_patches.geojson` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/cn_disputed_patches.geojson`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-826daa5382506553", "name": "Dangling fetch: GET https://static.cuberoot.me/tools/${rel} (core/packages/client/app/tools/[...slug]/route.ts:76)", "shortDescription": {"text": "Dangling fetch: GET https://static.cuberoot.me/tools/${rel} (core/packages/client/app/tools/[...slug]/route.ts:76)"}, "fullDescription": {"text": "`core/packages/client/app/tools/[...slug]/route.ts:76` calls `GET https://static.cuberoot.me/tools/${rel}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/static.cuberoot.me/tools/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-58f218adb8b02114", "name": "Dangling fetch: GET https://cubing.com/live/${encodeURIComponent(slug)} (core/packages/server/src/utils/cubing_proxy.ts:", "shortDescription": {"text": "Dangling fetch: GET https://cubing.com/live/${encodeURIComponent(slug)} (core/packages/server/src/utils/cubing_proxy.ts:45)"}, "fullDescription": {"text": "`core/packages/server/src/utils/cubing_proxy.ts:45` calls `GET https://cubing.com/live/${encodeURIComponent(slug)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/cubing.com/live/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-98301b66738514ee", "name": "Dangling fetch: GET https://www.worldcubeassociation.org/api/v0/me (core/packages/server/src/utils/recon_helpers.ts:287)", "shortDescription": {"text": "Dangling fetch: GET https://www.worldcubeassociation.org/api/v0/me (core/packages/server/src/utils/recon_helpers.ts:287)"}, "fullDescription": {"text": "`core/packages/server/src/utils/recon_helpers.ts:287` calls `GET https://www.worldcubeassociation.org/api/v0/me` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/www.worldcubeassociation.org/api/v0/me`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6a2e3995005c3dbb", "name": "Dangling fetch: POST https://www.worldcubeassociation.org/oauth/token (core/packages/server/src/routes/auth.ts:34)", "shortDescription": {"text": "Dangling fetch: POST https://www.worldcubeassociation.org/oauth/token (core/packages/server/src/routes/auth.ts:34)"}, "fullDescription": {"text": "`core/packages/server/src/routes/auth.ts:34` calls `POST https://www.worldcubeassociation.org/oauth/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/www.worldcubeassociation.org/oauth/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-95def0f3599bdf35", "name": "Dangling fetch: GET https://www.worldcubeassociation.org/api/v0/me (core/packages/server/src/routes/auth.ts:57)", "shortDescription": {"text": "Dangling fetch: GET https://www.worldcubeassociation.org/api/v0/me (core/packages/server/src/routes/auth.ts:57)"}, "fullDescription": {"text": "`core/packages/server/src/routes/auth.ts:57` calls `GET https://www.worldcubeassociation.org/api/v0/me` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/www.worldcubeassociation.org/api/v0/me`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-18fde8e7af4ec89c", "name": "Dangling fetch: GET https://www.worldcubeassociation.org/api/v0/me (core/packages/server/src/routes/auth.ts:129)", "shortDescription": {"text": "Dangling fetch: GET https://www.worldcubeassociation.org/api/v0/me (core/packages/server/src/routes/auth.ts:129)"}, "fullDescription": {"text": "`core/packages/server/src/routes/auth.ts:129` calls `GET https://www.worldcubeassociation.org/api/v0/me` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/www.worldcubeassociation.org/api/v0/me`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-684f0e83ba7e1558", "name": "Unused endpoint: GET ", "shortDescription": {"text": "Unused endpoint: GET "}, "fullDescription": {"text": "`core/packages/client/app/[lang]/math/group/_components/sections/FreeGroups.tsx` declares `GET ` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4bed33618bb26323", "name": "Unused endpoint: GET /search/users", "shortDescription": {"text": "Unused endpoint: GET /search/users"}, "fullDescription": {"text": "`core/packages/shared/src/api/wca_search.ts` declares `GET /search/users` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-10a64796980c7f37", "name": "Unused endpoint: GET /competitions", "shortDescription": {"text": "Unused endpoint: GET /competitions"}, "fullDescription": {"text": "`core/packages/shared/src/api/wca_search.ts` declares `GET /competitions` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-56f3fbd0451359d8", "name": "Unused endpoint: GET /wca/result-watch/status", "shortDescription": {"text": "Unused endpoint: GET /wca/result-watch/status"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_result_watch.ts` declares `GET /wca/result-watch/status` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ad39ab0fc4fac669", "name": "Unused endpoint: GET /wca/result-watch/changes", "shortDescription": {"text": "Unused endpoint: GET /wca/result-watch/changes"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_result_watch.ts` declares `GET /wca/result-watch/changes` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6019e13ca6badcb3", "name": "Unused endpoint: POST /wca/result-watch/changes", "shortDescription": {"text": "Unused endpoint: POST /wca/result-watch/changes"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_result_watch.ts` declares `POST /wca/result-watch/changes` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-46f065a95d30da40", "name": "Unused endpoint: PUT /wca/result-watch/changes/:id", "shortDescription": {"text": "Unused endpoint: PUT /wca/result-watch/changes/:id"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_result_watch.ts` declares `PUT /wca/result-watch/changes/:id` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c3037180a31542a1", "name": "Unused endpoint: DELETE /wca/result-watch/changes/:id", "shortDescription": {"text": "Unused endpoint: DELETE /wca/result-watch/changes/:id"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_result_watch.ts` declares `DELETE /wca/result-watch/changes/:id` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-76fe223a158845f6", "name": "Unused endpoint: GET /auth/login", "shortDescription": {"text": "Unused endpoint: GET /auth/login"}, "fullDescription": {"text": "`core/packages/server/src/routes/auth.ts` declares `GET /auth/login` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1480187b44a5fd90", "name": "Unused endpoint: GET /auth/callback", "shortDescription": {"text": "Unused endpoint: GET /auth/callback"}, "fullDescription": {"text": "`core/packages/server/src/routes/auth.ts` declares `GET /auth/callback` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ac42422b23e45104", "name": "Unused endpoint: GET /auth/me", "shortDescription": {"text": "Unused endpoint: GET /auth/me"}, "fullDescription": {"text": "`core/packages/server/src/routes/auth.ts` declares `GET /auth/me` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-00e84be355182df9", "name": "Unused endpoint: POST /auth/exchange", "shortDescription": {"text": "Unused endpoint: POST /auth/exchange"}, "fullDescription": {"text": "`core/packages/server/src/routes/auth.ts` declares `POST /auth/exchange` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b36892106ecdc9aa", "name": "Unused endpoint: POST /auth/refresh", "shortDescription": {"text": "Unused endpoint: POST /auth/refresh"}, "fullDescription": {"text": "`core/packages/server/src/routes/auth.ts` declares `POST /auth/refresh` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4ceedccb8d6a2bdf", "name": "Unused endpoint: GET /article", "shortDescription": {"text": "Unused endpoint: GET /article"}, "fullDescription": {"text": "`core/packages/server/src/routes/article.ts` declares `GET /article` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e64a87999bda49d1", "name": "Unused endpoint: GET /article/me", "shortDescription": {"text": "Unused endpoint: GET /article/me"}, "fullDescription": {"text": "`core/packages/server/src/routes/article.ts` declares `GET /article/me` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1b7bf2fd65899b7c", "name": "Unused endpoint: GET /article/img/:id", "shortDescription": {"text": "Unused endpoint: GET /article/img/:id"}, "fullDescription": {"text": "`core/packages/server/src/routes/article.ts` declares `GET /article/img/:id` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-75a4748176502f80", "name": "Unused endpoint: GET /article/reports", "shortDescription": {"text": "Unused endpoint: GET /article/reports"}, "fullDescription": {"text": "`core/packages/server/src/routes/article.ts` declares `GET /article/reports` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fd5c8f0b2a2a48dc", "name": "Unused endpoint: POST /article/img", "shortDescription": {"text": "Unused endpoint: POST /article/img"}, "fullDescription": {"text": "`core/packages/server/src/routes/article.ts` declares `POST /article/img` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-40b729f61ee3450c", "name": "Unused endpoint: GET /article/:slug", "shortDescription": {"text": "Unused endpoint: GET /article/:slug"}, "fullDescription": {"text": "`core/packages/server/src/routes/article.ts` declares `GET /article/:slug` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-aadb7e6c5f547a1d", "name": "Unused endpoint: POST /article", "shortDescription": {"text": "Unused endpoint: POST /article"}, "fullDescription": {"text": "`core/packages/server/src/routes/article.ts` declares `POST /article` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-95cf6401141fff38", "name": "Unused endpoint: PATCH /article/:slug", "shortDescription": {"text": "Unused endpoint: PATCH /article/:slug"}, "fullDescription": {"text": "`core/packages/server/src/routes/article.ts` declares `PATCH /article/:slug` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a619e7968ac1c297", "name": "Unused endpoint: DELETE /article/:slug", "shortDescription": {"text": "Unused endpoint: DELETE /article/:slug"}, "fullDescription": {"text": "`core/packages/server/src/routes/article.ts` declares `DELETE /article/:slug` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fe8985c3ab29f7d9", "name": "Unused endpoint: POST /article/:slug/report", "shortDescription": {"text": "Unused endpoint: POST /article/:slug/report"}, "fullDescription": {"text": "`core/packages/server/src/routes/article.ts` declares `POST /article/:slug/report` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7aa042a319a59f1f", "name": "Unused endpoint: GET /scramble/optimal-solve/ready", "shortDescription": {"text": "Unused endpoint: GET /scramble/optimal-solve/ready"}, "fullDescription": {"text": "`core/packages/server/src/routes/cubeopt_solve.ts` declares `GET /scramble/optimal-solve/ready` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5a515d8f51585e45", "name": "Unused endpoint: POST /scramble/optimal-solve", "shortDescription": {"text": "Unused endpoint: POST /scramble/optimal-solve"}, "fullDescription": {"text": "`core/packages/server/src/routes/cubeopt_solve.ts` declares `POST /scramble/optimal-solve` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-47484fcee4a5efda", "name": "Unused endpoint: GET /wca/comp/:id/schedule", "shortDescription": {"text": "Unused endpoint: GET /wca/comp/:id/schedule"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_schedule.ts` declares `GET /wca/comp/:id/schedule` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e1d67c25810c38d3", "name": "Unused endpoint: GET /ops/commands", "shortDescription": {"text": "Unused endpoint: GET /ops/commands"}, "fullDescription": {"text": "`core/packages/server/src/routes/ops.ts` declares `GET /ops/commands` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-58ccfbdaffa59b2f", "name": "Unused endpoint: POST /ops/commands", "shortDescription": {"text": "Unused endpoint: POST /ops/commands"}, "fullDescription": {"text": "`core/packages/server/src/routes/ops.ts` declares `POST /ops/commands` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bf709e3df22430d5", "name": "Unused endpoint: PUT /ops/commands/reorder", "shortDescription": {"text": "Unused endpoint: PUT /ops/commands/reorder"}, "fullDescription": {"text": "`core/packages/server/src/routes/ops.ts` declares `PUT /ops/commands/reorder` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c1d31e9bcd9b3d27", "name": "Unused endpoint: PUT /ops/commands/:id", "shortDescription": {"text": "Unused endpoint: PUT /ops/commands/:id"}, "fullDescription": {"text": "`core/packages/server/src/routes/ops.ts` declares `PUT /ops/commands/:id` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ab7b7b743007b6e8", "name": "Unused endpoint: DELETE /ops/commands/:id", "shortDescription": {"text": "Unused endpoint: DELETE /ops/commands/:id"}, "fullDescription": {"text": "`core/packages/server/src/routes/ops.ts` declares `DELETE /ops/commands/:id` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-101bd6ce7d28999b", "name": "Unused endpoint: GET /nemesizer/meta", "shortDescription": {"text": "Unused endpoint: GET /nemesizer/meta"}, "fullDescription": {"text": "`core/packages/server/src/routes/nemesizer.ts` declares `GET /nemesizer/meta` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9f169c75852e6c7c", "name": "Unused endpoint: GET /nemesizer/person", "shortDescription": {"text": "Unused endpoint: GET /nemesizer/person"}, "fullDescription": {"text": "`core/packages/server/src/routes/nemesizer.ts` declares `GET /nemesizer/person` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6ea28feb58b09bfe", "name": "Unused endpoint: GET /nemesizer/nemeses", "shortDescription": {"text": "Unused endpoint: GET /nemesizer/nemeses"}, "fullDescription": {"text": "`core/packages/server/src/routes/nemesizer.ts` declares `GET /nemesizer/nemeses` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cb12539a4593c635", "name": "Unused endpoint: GET /nemesizer/h2h", "shortDescription": {"text": "Unused endpoint: GET /nemesizer/h2h"}, "fullDescription": {"text": "`core/packages/server/src/routes/nemesizer.ts` declares `GET /nemesizer/h2h` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1f23f702d1e73c0b", "name": "Unused endpoint: GET /nemesizer/whatif", "shortDescription": {"text": "Unused endpoint: GET /nemesizer/whatif"}, "fullDescription": {"text": "`core/packages/server/src/routes/nemesizer.ts` declares `GET /nemesizer/whatif` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5bbbc444a9813b37", "name": "Unused endpoint: GET /nemesizer/stats", "shortDescription": {"text": "Unused endpoint: GET /nemesizer/stats"}, "fullDescription": {"text": "`core/packages/server/src/routes/nemesizer.ts` declares `GET /nemesizer/stats` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-30c80dac5ce62784", "name": "Unused endpoint: POST /analytics/pv", "shortDescription": {"text": "Unused endpoint: POST /analytics/pv"}, "fullDescription": {"text": "`core/packages/server/src/routes/analytics.ts` declares `POST /analytics/pv` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-949a1b09d855b8a0", "name": "Unused endpoint: POST /analytics/dwell", "shortDescription": {"text": "Unused endpoint: POST /analytics/dwell"}, "fullDescription": {"text": "`core/packages/server/src/routes/analytics.ts` declares `POST /analytics/dwell` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1c09890728e89107", "name": "Unused endpoint: GET /analytics/summary", "shortDescription": {"text": "Unused endpoint: GET /analytics/summary"}, "fullDescription": {"text": "`core/packages/server/src/routes/analytics.ts` declares `GET /analytics/summary` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7b5e0491585108c6", "name": "Unused endpoint: POST /wca/format-record", "shortDescription": {"text": "Unused endpoint: POST /wca/format-record"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_format.ts` declares `POST /wca/format-record` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-435e32bc972bb3f0", "name": "Unused endpoint: GET /wca/historical-ranks", "shortDescription": {"text": "Unused endpoint: GET /wca/historical-ranks"}, "fullDescription": {"text": "`core/packages/server/src/routes/historical_ranks.ts` declares `GET /wca/historical-ranks` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-15669fac7706814e", "name": "Unused endpoint: GET /wca/historical-ranks/countries", "shortDescription": {"text": "Unused endpoint: GET /wca/historical-ranks/countries"}, "fullDescription": {"text": "`core/packages/server/src/routes/historical_ranks.ts` declares `GET /wca/historical-ranks/countries` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8d68048592ddc2fd", "name": "Unused endpoint: GET /wca/historical-ranks/meta", "shortDescription": {"text": "Unused endpoint: GET /wca/historical-ranks/meta"}, "fullDescription": {"text": "`core/packages/server/src/routes/historical_ranks.ts` declares `GET /wca/historical-ranks/meta` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bb3cbfdad016115a", "name": "Unused endpoint: GET /wca/fun/country-sor", "shortDescription": {"text": "Unused endpoint: GET /wca/fun/country-sor"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_fun_stats.ts` declares `GET /wca/fun/country-sor` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a253d92ecf95379a", "name": "Unused endpoint: GET /wca/fun/medals", "shortDescription": {"text": "Unused endpoint: GET /wca/fun/medals"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_fun_stats.ts` declares `GET /wca/fun/medals` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b7e586b44091ee84", "name": "Unused endpoint: GET /wca/fun/placements", "shortDescription": {"text": "Unused endpoint: GET /wca/fun/placements"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_fun_stats.ts` declares `GET /wca/fun/placements` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e2b685a40c879e62", "name": "Unused endpoint: GET /wca/fun/best-podiums", "shortDescription": {"text": "Unused endpoint: GET /wca/fun/best-podiums"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_fun_stats.ts` declares `GET /wca/fun/best-podiums` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ad689eea4cc30b67", "name": "Unused endpoint: GET /wca/fun/uncrowned-kings", "shortDescription": {"text": "Unused endpoint: GET /wca/fun/uncrowned-kings"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_fun_stats.ts` declares `GET /wca/fun/uncrowned-kings` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f1977cdea9894fe4", "name": "Unused endpoint: GET /wca/fun/podium-missers", "shortDescription": {"text": "Unused endpoint: GET /wca/fun/podium-missers"}, "fullDescription": {"text": "`core/packages/server/src/routes/wca_fun_stats.ts` declares `GET /wca/fun/podium-missers` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/18626"}, "properties": {"repository": "RuiminYan/cuberoot.me", "repoUrl": "https://github.com/RuiminYan/cuberoot.me", "branch": "main"}, "results": [{"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: RuiminYan/cuberoot.me"}, "properties": {"repobilityId": 423204, "scanner": "foundry_dataset", "fingerprint": "aa90b9e780d874aab1636202d8deea390a99b03412d7919984e0f56de7afc318", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"human_feedback_general": 4, "unlinked_human_feedback": 4, "thread_needs_classification": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 6}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"ambiguous_needs_more_evidence": 12}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 4, "thread_has_comment": 4, "chain_has_link_quality": 6, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 4, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 4}, "node_count": 18, "node_types": {"repo": 1, "thread": 1, "comment": 4, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 4}, "query_type": "motif_query", "thread_key": "RuiminYan/cuberoot.me#1", "issue_number": "1", "quality_tiers": {"unresolved": 6}, "repo_full_name": "RuiminYan/cuberoot.me", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-999e03762f03aabc", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: RuiminYan/cuberoot.me\nThread: RuiminYan/cuberoot.me#1\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: RuiminYan/cuberoot.me\nThread: RuiminYan/cuberoot.me#1\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: RuiminYan/cuberoot.me#1\nRepo: RuiminYan/cuberoot.me\nIssue/PR number: 1\nGraph consistency label: needs_more_evidence\nNodes: 18\nEdges: 26\nNode types: {'link_quality': 6, 'comment': 4, 'comment_chain': 4, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'thread_has_comment': 4, 'thread_has_comment_chain': 4, 'comment_has_chain': 4, 'issue_chain_has_comment_chain': 4, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ambiguous_needs_more_evidence': 6, 'human_feedback_general': 4, 'unlinked_human_feedback': 4, 'thread_needs_classification': 2, 'issue_or_pull_request_thread': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 12}\nQuality tiers: {'unresolved': 6}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/RuiminYan/cuberoot.me", "source_id": "graph-query-motif_query-cee26cdf20dcfb8e", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/unresolved_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "RuiminYan/cuberoot.me", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: RuiminYan/cuberoot.me"}, "properties": {"repobilityId": 374063, "scanner": "foundry_dataset", "fingerprint": "e6b8d3a4a1f8db8fa28fc7390f299002c1ffab5c02340db585a140e1bc0caea9", "category": "practices", "severity": "medium", "confidence": 0.62, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "RuiminYan/cuberoot.me#1", "human_labels": ["human_feedback_general"], "issue_number": "1", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "RuiminYan/cuberoot.me", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-eaee3925312f180f", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 6, "architecture": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 8, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 1}, "text": "Comment chain pattern product: assumption_checks\nRepo: RuiminYan/cuberoot.me\nThread: RuiminYan/cuberoot.me#1\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: RuiminYan/cuberoot.me#1\nRepo: RuiminYan/cuberoot.me\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 4\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'human_feedback_general': 4}\nPolarities: {'neutral': 4}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-a24324a791182b7f\",\n    \"kind\": \"issue_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/RuiminYan/cuberoot.me/issues/1\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_body\\nRepo: RuiminYan/cuberoot.me\\nAuthor: SampleBlazkness (User)\\nURL: https://github.com/RuiminYan/cuberoot.me/issues/1\\nTitle: \u767b\u5f55\u63a5\u53e3\u9519\u8bef\\nBody:\\n<https://ruiminyan.github.io/>\u53ef\u4ee5\u6b63\u5e38\u8fdb\u884c\u767b\u5f55\uff0c\u4f46\u662f<https://cuberoot.me/>\u4e0d\u53ef\u4ee5\uff0c\u5982\u56fe\\n\\n<img width=\\\"1440\\\" height=\\\"900\\\" alt=\\\"Image\\\" src=\\\"https://github.com/user-attachments/assets/8a00c82d-59e9-4cad-a576-31f5e596d2d2\\\" />\"\n  },\n  {\n    \"id\": \"github-feedback-comment-2b49604781a05154\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/RuiminYan/cuberoot.me/issues/1#issuecomment-4318838864\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: RuiminYan/cuberoot.me\\nAuthor: SampleBlazkness (User)\\nURL: https://github.com/RuiminYan/cuberoot.me/issues/1#issuecomment-4318838864\\nTitle: \\nBody:\\n\u5f53\u7136\u5982\u679c\u662f\u955c\u50cf\u7ad9\u4e0d\u652f\u6301\u6b64\u529f\u80fd\u4e5f\u65e0\u6240\u8c13\u5427\"\n  },\n  {\n    \"id\": \"github-feedback-comment-c8da3a0409a59262\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/RuiminYan/cuberoot.me/issues/1#issuecomment-4319618065\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: RuiminYan/cuberoot.me\\nAuthor: RuiminYan (User)\\nURL: https://github.com/RuiminYan/cuberoot.me/issues/1#issuecomment-4319618065\\nTitle: \\nBody:\\n\u6211\u8bd5\u4e86 cuberoot.me\u662f\u53ef\u4ee5\u767b\u5f55\u7684,\u6211\u7528\u4e86\u4e0d\u7528\u7684wca\u8d26\u53f7\u6d4b\u8bd5\u4e86\"\n  },\n  {\n    \"id\": \"github-feedback-comment-34f99304fc237ef5\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/RuiminYan/cuberoot.me/issues/1#issuecomment-4321186376\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: RuiminYan/cuberoot.me\\nAuthor: SampleBlazkness (User)\\nURL: https://github.com/RuiminYan/cuberoot.me/issues/1#issuecomment-4321186376\\nTitle: \\nBod\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/RuiminYan/cuberoot.me", "source_id": "comment-chain-pattern-assumption_checks-07276f7702534afd", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "RuiminYan/cuberoot.me", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "scanner-999cf47b32b549a6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/sw-register.js:12"}, "properties": {"repobilityId": "2aa66853e739cc53", "scanner": "scanner-primary", "fingerprint": "999cf47b32b549a6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f89b9ced6d2c2e50", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 tools/i18n/i18n.js:454"}, "properties": {"repobilityId": "68d3712183f89624", "scanner": "scanner-primary", "fingerprint": "f89b9ced6d2c2e50", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-a33abbdd04387ec8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/scramble.js:51"}, "properties": {"repobilityId": "46d9cee5b07b90e9", "scanner": "scanner-primary", "fingerprint": "a33abbdd04387ec8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-eea2ea517d25a2c9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/pyraminx.js:589"}, "properties": {"repobilityId": "5eb1a51da964e5f9", "scanner": "scanner-primary", "fingerprint": "eea2ea517d25a2c9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f293caf6ec771467", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/scramble_333_edit.js:1057"}, "properties": {"repobilityId": "69a133e6770f112a", "scanner": "scanner-primary", "fingerprint": "f293caf6ec771467", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ece6d7fef0d41d24", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/scramble_sq1_new.js:209"}, "properties": {"repobilityId": "e4f12bf171e919b5", "scanner": "scanner-primary", "fingerprint": "ece6d7fef0d41d24", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a46861d206c44153", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/redi.js:216"}, "properties": {"repobilityId": "1adf86c6f5252ab9", "scanner": "scanner-primary", "fingerprint": "a46861d206c44153", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b2988ff5ae489901", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/utilscramble.js:405"}, "properties": {"repobilityId": "5c02636ae4442752", "scanner": "scanner-primary", "fingerprint": "b2988ff5ae489901", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9448d30f4d4f781f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/slide.js:192"}, "properties": {"repobilityId": "4f5a68bd9b2c754d", "scanner": "scanner-primary", "fingerprint": "9448d30f4d4f781f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5399bb82b5348fde", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/scramble/scramble_444.js:1310"}, "properties": {"repobilityId": "1a7360e5f34aacc9", "scanner": "scanner-primary", "fingerprint": "5399bb82b5348fde", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c61c6f57eef6f5bf", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/mathlib.js:357"}, "properties": {"repobilityId": "98d6bbe88ce51581", "scanner": "scanner-primary", "fingerprint": "c61c6f57eef6f5bf", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9d78fecf07e5864e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/pat3x3.js:138"}, "properties": {"repobilityId": "3c09af65b45c6813", "scanner": "scanner-primary", "fingerprint": "9d78fecf07e5864e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b9e2dde433921ac8", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 tools/cstimer-scramble/lib/poly3dlib.js:572"}, "properties": {"repobilityId": "65246bb0c70b549c", "scanner": "scanner-primary", "fingerprint": "b9e2dde433921ac8", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-b290c77bbb5a3aa5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/poly3dlib.js:230"}, "properties": {"repobilityId": "2336e265a3c782e3", "scanner": "scanner-primary", "fingerprint": "b290c77bbb5a3aa5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d8f1d7b953b693ce", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/grouplib.js:253"}, "properties": {"repobilityId": "6e309db521c0c1fe", "scanner": "scanner-primary", "fingerprint": "d8f1d7b953b693ce", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fd5fa12fba55e61b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/utillib.js:73"}, "properties": {"repobilityId": "992206d7261c07f3", "scanner": "scanner-primary", "fingerprint": "fd5fa12fba55e61b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1ec6ae51484dca56", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer-scramble/lib/min2phase.js:1267"}, "properties": {"repobilityId": "6bb217473ef37a7c", "scanner": "scanner-primary", "fingerprint": "1ec6ae51484dca56", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-889e713be35ee3f6", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 tools/alg_trainers/src/timer.js:3"}, "properties": {"repobilityId": "268983df46276473", "scanner": "scanner-primary", "fingerprint": "889e713be35ee3f6", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-d48e45148cea579e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/alg_trainers/src/timer.js:175"}, "properties": {"repobilityId": "30dea523d4d6c449", "scanner": "scanner-primary", "fingerprint": "d48e45148cea579e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-68140eb540dd2ddc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer/js/cstimer.js:51"}, "properties": {"repobilityId": "dde3f82bc659dbac", "scanner": "scanner-primary", "fingerprint": "68140eb540dd2ddc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bfd8a3d6dbdad910", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/cstimer/js/twisty.js:90"}, "properties": {"repobilityId": "166cc3f2e2a9e42f", "scanner": "scanner-primary", "fingerprint": "bfd8a3d6dbdad910", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-eb6a2b1f94edd617", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 tools/src/functions/list.js:674"}, "properties": {"repobilityId": "2ec55cc225e5e3b7", "scanner": "scanner-primary", "fingerprint": "eb6a2b1f94edd617", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-e9eaeec4f530acff", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/functions/list.js:564"}, "properties": {"repobilityId": "af71471ae19a9fdb", "scanner": "scanner-primary", "fingerprint": "e9eaeec4f530acff", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e0a20f27c72ffaeb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/min2phase.js/min2phase.js:1267"}, "properties": {"repobilityId": "86c4e21043ea2ec3", "scanner": "scanner-primary", "fingerprint": "e0a20f27c72ffaeb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7656448f7eaf322a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/min2phase.js/test/randSolv.js:12"}, "properties": {"repobilityId": "6cb9b1970d81f046", "scanner": "scanner-primary", "fingerprint": "7656448f7eaf322a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ece6f837fc6217e9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/min2phase.js/test/selectedStateTest.js:12"}, "properties": {"repobilityId": "a829b65c2624858a", "scanner": "scanner-primary", "fingerprint": "ece6f837fc6217e9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a77fa25755396420", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/min2phase.js/test/fastInit.js:12"}, "properties": {"repobilityId": "f2769e3f8a9829f1", "scanner": "scanner-primary", "fingerprint": "a77fa25755396420", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7970f556fc586ab0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/xcross_free_pair_trainer/production/worker_prod.js:10"}, "properties": {"repobilityId": "c2454da51e2523cb", "scanner": "scanner-primary", "fingerprint": "7970f556fc586ab0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-adbaf8831a343ef3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tools/src/xxcrossTrainer/production/worker_prod.js:10"}, "properties": {"repobilityId": "50c0825e11b672f3", "scanner": "scanner-primary", "fingerprint": "adbaf8831a343ef3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cb01d204fbfb2783", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/scripts/convert_zbls.js:39"}, "properties": {"repobilityId": "059b2484cb08dc80", "scanner": "scanner-primary", "fingerprint": "cb01d204fbfb2783", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-41e9731e8d4c2459", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Solver.test.ts:14"}, "properties": {"repobilityId": "13f4a9c570f0bd71", "scanner": "scanner-primary", "fingerprint": "41e9731e8d4c2459", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2acbdd0e5086cd60", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Reducer.test.ts:12"}, "properties": {"repobilityId": "954b629d6f0f9e30", "scanner": "scanner-primary", "fingerprint": "2acbdd0e5086cd60", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3dfc7ed53a4910f6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Evaluator.test.ts:6"}, "properties": {"repobilityId": "00135fd93b759e99", "scanner": "scanner-primary", "fingerprint": "3dfc7ed53a4910f6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-dfadd2c7ac675ebc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Analyzer.test.ts:17"}, "properties": {"repobilityId": "b7ee34b554b72b5b", "scanner": "scanner-primary", "fingerprint": "dfadd2c7ac675ebc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e6147d3c8c9bf127", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/CubeLib.test.ts:9"}, "properties": {"repobilityId": "1e871309b04e494c", "scanner": "scanner-primary", "fingerprint": "e6147d3c8c9bf127", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c942d4f9daf824d1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/SSSecret.test.ts:36"}, "properties": {"repobilityId": "7333f65c4c3272be", "scanner": "scanner-primary", "fingerprint": "c942d4f9daf824d1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a36b1df51a36e331", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Stats.test.ts:36"}, "properties": {"repobilityId": "56b9609a0c0775dd", "scanner": "scanner-primary", "fingerprint": "a36b1df51a36e331", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4c189d8e6c6eed09", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Algs.test.ts:6"}, "properties": {"repobilityId": "f48b3065c5dd879f", "scanner": "scanner-primary", "fingerprint": "4c189d8e6c6eed09", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-65d6d393bdc54505", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/tests/roux/Pruner.test.ts:13"}, "properties": {"repobilityId": "2754ee7c4d1526cc", "scanner": "scanner-primary", "fingerprint": "65d6d393bdc54505", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b03f70edd485bd62", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 core/packages/client/components/CubeVirtualKeyboard.tsx:833"}, "properties": {"repobilityId": "93cbe27b92248bf4", "scanner": "scanner-primary", "fingerprint": "b03f70edd485bd62", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-b15ef576f23d1575", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/PuzzleSVG.tsx:115"}, "properties": {"repobilityId": "48b2d3aceb04dca6", "scanner": "scanner-primary", "fingerprint": "b15ef576f23d1575", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-07115a4558d2fa68", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/ScramblePreview2D.tsx:134"}, "properties": {"repobilityId": "92bc4014467776bc", "scanner": "scanner-primary", "fingerprint": "07115a4558d2fa68", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-cf83947cf6ecb5ff", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/AlgCategoryView.tsx:84"}, "properties": {"repobilityId": "a40a3c4a6be326e9", "scanner": "scanner-primary", "fingerprint": "cf83947cf6ecb5ff", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-ee6ab16db7bb8eb6", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/CubingPreview.tsx:173"}, "properties": {"repobilityId": "d2b249991986f17e", "scanner": "scanner-primary", "fingerprint": "ee6ab16db7bb8eb6", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-797599bbb9d3ceb3", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/EventIcon/EventIcon.tsx:32"}, "properties": {"repobilityId": "b291b264eb867f64", "scanner": "scanner-primary", "fingerprint": "797599bbb9d3ceb3", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-02439433ea775d0b", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/components/WheelPicker/WheelPicker.tsx:122"}, "properties": {"repobilityId": "cf241b1f2c951bf9", "scanner": "scanner-primary", "fingerprint": "02439433ea775d0b", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-a6fea39421b11dc7", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/components/math/Tex.tsx:21"}, "properties": {"repobilityId": "30dd9cb5e9c9261d", "scanner": "scanner-primary", "fingerprint": "a6fea39421b11dc7", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-b56363e23c5833c1", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/layout.tsx:40"}, "properties": {"repobilityId": "7d4490809344362e", "scanner": "scanner-primary", "fingerprint": "b56363e23c5833c1", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-29d14801dbe74937", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/scramble/pattern/page.tsx:81"}, "properties": {"repobilityId": "1e7b59dfc87b7cc3", "scanner": "scanner-primary", "fingerprint": "29d14801dbe74937", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-2ec10953c3c3a5ab", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/scramble/gen/ClockColorPicker.tsx:82"}, "properties": {"repobilityId": "336b9b5be223d759", "scanner": "scanner-primary", "fingerprint": "2ec10953c3c3a5ab", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-175f5082b95209ea", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/scramble/gen/TranslationsPicker.tsx:158"}, "properties": {"repobilityId": "e3355d2c9a591e0c", "scanner": "scanner-primary", "fingerprint": "175f5082b95209ea", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-6ca39760545c5232", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/alg/commutator/page.tsx:592"}, "properties": {"repobilityId": "1267edb7b110d318", "scanner": "scanner-primary", "fingerprint": "6ca39760545c5232", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-7205102832b72fe5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx:330"}, "properties": {"repobilityId": "ebb5f7e60d274139", "scanner": "scanner-primary", "fingerprint": "7205102832b72fe5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-312372a0127c2425", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/frame-count/useFrameBuffer.ts:333"}, "properties": {"repobilityId": "89f3825950dc861b", "scanner": "scanner-primary", "fingerprint": "312372a0127c2425", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0f7fe228f5a49508", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/calc/page.tsx:46"}, "properties": {"repobilityId": "d644eeb1d6b187f1", "scanner": "scanner-primary", "fingerprint": "0f7fe228f5a49508", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5d7ca84b86a4eb6e", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/app/[lang]/calc/_components/components/chart_renderer.ts:255"}, "properties": {"repobilityId": "cb20506ac60eb83d", "scanner": "scanner-primary", "fingerprint": "5d7ca84b86a4eb6e", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-0c931827c13ef335", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/code/language/katex/page.tsx:19"}, "properties": {"repobilityId": "6079980e9fabac2e", "scanner": "scanner-primary", "fingerprint": "0c931827c13ef335", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-19e74f91ffe6bdf7", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/code/language/latex/page.tsx:16"}, "properties": {"repobilityId": "63dd8da84c62fe16", "scanner": "scanner-primary", "fingerprint": "19e74f91ffe6bdf7", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-5215bbaf8788f10f", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/code/stack/_tools/i18next.tsx:98"}, "properties": {"repobilityId": "7515d95ea850811c", "scanner": "scanner-primary", "fingerprint": "5215bbaf8788f10f", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-3948118e498480a7", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/visualcube/page.tsx:1020"}, "properties": {"repobilityId": "576b04c3dcf8229b", "scanner": "scanner-primary", "fingerprint": "3948118e498480a7", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-80c1c4e26fe3be66", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 core/packages/client/app/[lang]/battle/_components/AdvancedFeatures.tsx:167"}, "properties": {"repobilityId": "7ec5a81df781634a", "scanner": "scanner-primary", "fingerprint": "80c1c4e26fe3be66", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-54e5d5ac8e8daa80", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 core/packages/client/app/[lang]/battle/_components/VsHistoryPanel.tsx:123"}, "properties": {"repobilityId": "14c2e1e03d3ed167", "scanner": "scanner-primary", "fingerprint": "54e5d5ac8e8daa80", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-59ce7093670a3fe9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/scramble/scramble_444_rs.ts:1270"}, "properties": {"repobilityId": "f17e2b952a651a2f", "scanner": "scanner-primary", "fingerprint": "59ce7093670a3fe9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-aa7178c032edbe84", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/scramble/__smoke__.ts:28"}, "properties": {"repobilityId": "0cbefbf29787a862", "scanner": "scanner-primary", "fingerprint": "aa7178c032edbe84", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-593bde6c21588e5a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/scramble/kociemba/test_smoke.ts:33"}, "properties": {"repobilityId": "f1589f4010475a98", "scanner": "scanner-primary", "fingerprint": "593bde6c21588e5a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-03564d6459ce0697", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/cube/state_test_data.ts:167"}, "properties": {"repobilityId": "20a6fca07b6f3865", "scanner": "scanner-primary", "fingerprint": "03564d6459ce0697", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d6af9a3b45fe94e2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/bluetooth/index.ts:7"}, "properties": {"repobilityId": "e380ac7cf3fe66d1", "scanner": "scanner-primary", "fingerprint": "d6af9a3b45fe94e2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-eb034c0b7fa1498b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/timer/_lib/stackmat/__smoke__.ts:38"}, "properties": {"repobilityId": "681c8a11bde6d5a3", "scanner": "scanner-primary", "fingerprint": "eb034c0b7fa1498b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1de3c35c5839d87d", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 core/packages/client/app/[lang]/timer/_shell/BattleView.tsx:971"}, "properties": {"repobilityId": "87ec860792e29027", "scanner": "scanner-primary", "fingerprint": "1de3c35c5839d87d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-35311577b1529905", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/timer/_shell/BattleView.tsx:586"}, "properties": {"repobilityId": "3eadc64e035f5ffc", "scanner": "scanner-primary", "fingerprint": "35311577b1529905", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-039cc7c8903de9b3", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/wca/about/[id]/WcaAboutClient.tsx:34"}, "properties": {"repobilityId": "130426c85b92d6fc", "scanner": "scanner-primary", "fingerprint": "039cc7c8903de9b3", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-55a98869d4960b67", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/app/[lang]/wca/viz/_components/VizCanvas.tsx:5"}, "properties": {"repobilityId": "1f968d956378d4fb", "scanner": "scanner-primary", "fingerprint": "55a98869d4960b67", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-0756307e33c77481", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/wca/prediction/_components/TheoreticalLimitView.tsx:26"}, "properties": {"repobilityId": "72e285bac14983e4", "scanner": "scanner-primary", "fingerprint": "0756307e33c77481", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-fb23d0ccadbe0b1f", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/recon/[id]/page.tsx:70"}, "properties": {"repobilityId": "1ebe95ad6ec892f2", "scanner": "scanner-primary", "fingerprint": "fb23d0ccadbe0b1f", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-55b1b354035ac255", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/math/god/_components/Tex.tsx:21"}, "properties": {"repobilityId": "078c2b67c06b2c85", "scanner": "scanner-primary", "fingerprint": "55b1b354035ac255", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-60f64143515880e2", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/math/group/_components/primitives.tsx:21"}, "properties": {"repobilityId": "10326a2add767564", "scanner": "scanner-primary", "fingerprint": "60f64143515880e2", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-5f2e4c424e9b6933", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 core/packages/client/app/[lang]/math/group/_components/sections/FreeGroups.tsx:283"}, "properties": {"repobilityId": "abd8e92eb8c6109f", "scanner": "scanner-primary", "fingerprint": "5f2e4c424e9b6933", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-9602f0fe7ef80a2c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/sim/cuber/instanced.ts:319"}, "properties": {"repobilityId": "74243444df34a310", "scanner": "scanner-primary", "fingerprint": "9602f0fe7ef80a2c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2df78f92c89437f2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/sim/cuber/cube.ts:101"}, "properties": {"repobilityId": "8b36be9a404729cb", "scanner": "scanner-primary", "fingerprint": "2df78f92c89437f2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ecb4813d6c649394", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/trainer/skewb/_components/SkewbImage.tsx:25"}, "properties": {"repobilityId": "9960a38bd91ac7fc", "scanner": "scanner-primary", "fingerprint": "ecb4813d6c649394", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-e3a8e7d9eb1f5cf2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/app/[lang]/trainer/_roux/_components/CubeSim.tsx:117"}, "properties": {"repobilityId": "1b5a25a1a94c8f4c", "scanner": "scanner-primary", "fingerprint": "e3a8e7d9eb1f5cf2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6f5da1f7bb370dfd", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/app/[lang]/trainer/_roux/_components/CmllTrainerView.tsx:219"}, "properties": {"repobilityId": "0db851d641d19cc9", "scanner": "scanner-primary", "fingerprint": "6f5da1f7bb370dfd", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-8dbdb571a0bce9bf", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/article/admin/reports/page.tsx:8"}, "properties": {"repobilityId": "58bc66a825ee85c8", "scanner": "scanner-primary", "fingerprint": "8dbdb571a0bce9bf", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-bbcdc69409b4ba9c", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/tutorial/_components/AlgChip.tsx:70"}, "properties": {"repobilityId": "f73bb82ef84367ec", "scanner": "scanner-primary", "fingerprint": "bbcdc69409b4ba9c", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-dbb6885eb1dfe283", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 core/packages/client/app/[lang]/tutorial/_components/CaseCard.tsx:23"}, "properties": {"repobilityId": "9b65c73219429fa9", "scanner": "scanner-primary", "fingerprint": "dbb6885eb1dfe283", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-d352c51107775515", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/Algs.ts:397"}, "properties": {"repobilityId": "7fffa38bfae16da4", "scanner": "scanner-primary", "fingerprint": "d352c51107775515", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e05ed0e4b906d2c4", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/Evaluator.ts:90"}, "properties": {"repobilityId": "8e3e78bba75c76a2", "scanner": "scanner-primary", "fingerprint": "e05ed0e4b906d2c4", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-f5c9d94ca9102f0f", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/Analyzer.ts:60"}, "properties": {"repobilityId": "8d86c0a2636184cc", "scanner": "scanner-primary", "fingerprint": "f5c9d94ca9102f0f", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-295a9f3d6c7ccf6a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/CubeLib.ts:237"}, "properties": {"repobilityId": "0fcc7fafa20cac3a", "scanner": "scanner-primary", "fingerprint": "295a9f3d6c7ccf6a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-70ec9086051a6884", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/Pruner.ts:5"}, "properties": {"repobilityId": "7a7d983cd5fe58e8", "scanner": "scanner-primary", "fingerprint": "70ec9086051a6884", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-de79483a65eaa97b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/Pruner.ts:79"}, "properties": {"repobilityId": "aa80df147832f39b", "scanner": "scanner-primary", "fingerprint": "de79483a65eaa97b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d03e594611d225f1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/LocalStorage.ts:110"}, "properties": {"repobilityId": "7a61b0e11410876e", "scanner": "scanner-primary", "fingerprint": "d03e594611d225f1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-84944a99526a907d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/Solver.ts:177"}, "properties": {"repobilityId": "dd9b22439b848dfd", "scanner": "scanner-primary", "fingerprint": "84944a99526a907d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3daf27788f4273c8", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/Config.ts:153"}, "properties": {"repobilityId": "d134df38ca1ec27f", "scanner": "scanner-primary", "fingerprint": "3daf27788f4273c8", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-66f007f48ac1d0bc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/reducers/LSETrainerStateM.ts:88"}, "properties": {"repobilityId": "761e3441a8f0e70d", "scanner": "scanner-primary", "fingerprint": "66f007f48ac1d0bc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c9ebfb542b56815f", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/reducers/Reducer.ts:40"}, "properties": {"repobilityId": "115ca6058e72617d", "scanner": "scanner-primary", "fingerprint": "c9ebfb542b56815f", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-a383b51796897517", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/reducers/Reducer.ts:41"}, "properties": {"repobilityId": "2b28a5551e2aab49", "scanner": "scanner-primary", "fingerprint": "a383b51796897517", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-290a2559c0462dd7", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/reducers/BlockTrainerStateM.ts:70"}, "properties": {"repobilityId": "13d71fc6ee0fa698", "scanner": "scanner-primary", "fingerprint": "290a2559c0462dd7", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-ac0411e6fb5550d3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/reducers/BlockTrainerStateM.ts:63"}, "properties": {"repobilityId": "2546028b731b7c40", "scanner": "scanner-primary", "fingerprint": "ac0411e6fb5550d3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3bcd5fc8efe4c15f", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/reducers/CmllStateM.ts:349"}, "properties": {"repobilityId": "d9b3df67826ec9ad", "scanner": "scanner-primary", "fingerprint": "3bcd5fc8efe4c15f", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-f3e76268282497b1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/lib/roux/reducers/CmllStateM.ts:28"}, "properties": {"repobilityId": "090131a4f1fdf364", "scanner": "scanner-primary", "fingerprint": "f3e76268282497b1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c22d1229460f3a41", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/client/lib/roux/min2phase/off-thread.ts:7"}, "properties": {"repobilityId": "33727fd2b231b94f", "scanner": "scanner-primary", "fingerprint": "c22d1229460f3a41", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-a535c9c6c5409dff", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/client/public/scramble_module.js:47"}, "properties": {"repobilityId": "d6d1bc367a0d39d6", "scanner": "scanner-primary", "fingerprint": "a535c9c6c5409dff", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bbd5e5cc53ba6403", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/visualcube/src/cube/simulation.ts:158"}, "properties": {"repobilityId": "d727a894f07b8366", "scanner": "scanner-primary", "fingerprint": "bbd5e5cc53ba6403", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-ca161f7ea1466e5b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/alg-build/src/cli.ts:107"}, "properties": {"repobilityId": "ce2477943520afad", "scanner": "scanner-primary", "fingerprint": "ca161f7ea1466e5b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-49c99a2fc68928d9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_puzzle_dist.ts:102"}, "properties": {"repobilityId": "146ed4b20cd95328", "scanner": "scanner-primary", "fingerprint": "49c99a2fc68928d9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-92820623e3f4375d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_comp_steps.ts:65"}, "properties": {"repobilityId": "dbd9654adfd04178", "scanner": "scanner-primary", "fingerprint": "92820623e3f4375d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-48c40b2c66807e77", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_puzzle_examples.ts:200"}, "properties": {"repobilityId": "b6b4a754cb6446a7", "scanner": "scanner-primary", "fingerprint": "48c40b2c66807e77", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2c4965c573ec6844", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_wca_cross.ts:99"}, "properties": {"repobilityId": "369cf2d6816f4c3f", "scanner": "scanner-primary", "fingerprint": "2c4965c573ec6844", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3cb76cc0903e0098", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build_recent_scrambles.ts:138"}, "properties": {"repobilityId": "4082d9ca5be92895", "scanner": "scanner-primary", "fingerprint": "3cb76cc0903e0098", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ba7e0de284f2a15e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/scramble-stats-build/src/build.ts:658"}, "properties": {"repobilityId": "33eec7382338f57c", "scanner": "scanner-primary", "fingerprint": "ba7e0de284f2a15e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-09c4271ea2169b69", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/scripts/dump-past-comps.ts:201"}, "properties": {"repobilityId": "bb10467bded1860c", "scanner": "scanner-primary", "fingerprint": "09c4271ea2169b69", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-dd3faa630a9de322", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/scripts/backfill-schedules.ts:110"}, "properties": {"repobilityId": "6f5b63e5bbe138b3", "scanner": "scanner-primary", "fingerprint": "dd3faa630a9de322", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b95603b263ce7965", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/index.ts:185"}, "properties": {"repobilityId": "3a9cacf0a414c820", "scanner": "scanner-primary", "fingerprint": "b95603b263ce7965", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fdea6be780ba317a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/cube555/daemon.ts:85"}, "properties": {"repobilityId": "413b71d1b877eb0f", "scanner": "scanner-primary", "fingerprint": "fdea6be780ba317a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2f7eb4308da35e80", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/utils/cn_comp_zh_cache.ts:149"}, "properties": {"repobilityId": "caebaf662ef88158", "scanner": "scanner-primary", "fingerprint": "2f7eb4308da35e80", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-eab00b0fce9142d6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/utils/current_records.ts:94"}, "properties": {"repobilityId": "e39dca1cbf9f6da4", "scanner": "scanner-primary", "fingerprint": "eab00b0fce9142d6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-aafb3e18a1196a25", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/routes/membership.ts:500"}, "properties": {"repobilityId": "78aa383b82d3c365", "scanner": "scanner-primary", "fingerprint": "aafb3e18a1196a25", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c5eff5d9c37d1332", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/routes/wca_recent_records.ts:92"}, "properties": {"repobilityId": "06ffac6b44aa0f1a", "scanner": "scanner-primary", "fingerprint": "c5eff5d9c37d1332", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ca76d93b0296dab8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/routes/cubing_live.ts:1765"}, "properties": {"repobilityId": "c2b159aca1e4839f", "scanner": "scanner-primary", "fingerprint": "ca76d93b0296dab8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b5917cf87e172742", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/routes/wca_stats_extra.ts:497"}, "properties": {"repobilityId": "6334e87291847750", "scanner": "scanner-primary", "fingerprint": "b5917cf87e172742", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4f723fba476ae284", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/nemesizer/loader.ts:116"}, "properties": {"repobilityId": "9bdba52e8ccd5cbe", "scanner": "scanner-primary", "fingerprint": "4f723fba476ae284", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bf270ad2da10e618", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/tools/test_rankings.ts:9"}, "properties": {"repobilityId": "fdbac2d23ce0e04e", "scanner": "scanner-primary", "fingerprint": "bf270ad2da10e618", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-acff45963e4e4fb2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/tools/build_channel_aliases.ts:99"}, "properties": {"repobilityId": "5b2317d80d8c9e1f", "scanner": "scanner-primary", "fingerprint": "acff45963e4e4fb2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-527e6b96bb6bd59c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/tools/gen_title.ts:194"}, "properties": {"repobilityId": "275d55721c0db1ec", "scanner": "scanner-primary", "fingerprint": "527e6b96bb6bd59c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f14f473b7d1fcba4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/tools/run_tests.ts:134"}, "properties": {"repobilityId": "4c401b511147e629", "scanner": "scanner-primary", "fingerprint": "f14f473b7d1fcba4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-336f20c815d598bb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/wca_comp.ts:92"}, "properties": {"repobilityId": "914560aec9db5701", "scanner": "scanner-primary", "fingerprint": "336f20c815d598bb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7b7627f41dd7a6c8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/bark.ts:26"}, "properties": {"repobilityId": "396d8c7f538c7b88", "scanner": "scanner-primary", "fingerprint": "7b7627f41dd7a6c8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f61dc89ee1ad9157", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/wca_live_pr.ts:323"}, "properties": {"repobilityId": "efa85e57af924fc6", "scanner": "scanner-primary", "fingerprint": "f61dc89ee1ad9157", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-465118d1be0a52c1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/wca_past_results.ts:347"}, "properties": {"repobilityId": "b2c6b77b89f21d83", "scanner": "scanner-primary", "fingerprint": "465118d1be0a52c1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-549974ebb0453946", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/index.ts:22"}, "properties": {"repobilityId": "9e7d94407ab94bff", "scanner": "scanner-primary", "fingerprint": "549974ebb0453946", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-81bd4fad6d031cf7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/cubing_record.ts:539"}, "properties": {"repobilityId": "f9a24890ef3b59c1", "scanner": "scanner-primary", "fingerprint": "81bd4fad6d031cf7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-50fd79a319ebaaf8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/wca_live_record.ts:179"}, "properties": {"repobilityId": "12d501534ae36452", "scanner": "scanner-primary", "fingerprint": "50fd79a319ebaaf8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-61b353a2131b376b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/cubing_comp.ts:86"}, "properties": {"repobilityId": "5a3c62de56440ee7", "scanner": "scanner-primary", "fingerprint": "61b353a2131b376b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1819d392e1f08741", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/monitors/seed_watched.ts:35"}, "properties": {"repobilityId": "3072919bb7098e8d", "scanner": "scanner-primary", "fingerprint": "1819d392e1f08741", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c0ceb54a0abb5ea6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/server/src/cubeopt/daemon.ts:141"}, "properties": {"repobilityId": "b4deb5fa3a4a17a2", "scanner": "scanner-primary", "fingerprint": "c0ceb54a0abb5ea6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-95e2ff9f070bf3b6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/wb-build/src/scrape.ts:386"}, "properties": {"repobilityId": "0c3121ede6c83097", "scanner": "scanner-primary", "fingerprint": "95e2ff9f070bf3b6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5f0df3a2f151c429", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/stats-build/scripts/check_mismatch.ts:7"}, "properties": {"repobilityId": "079e1b1b5cf24a43", "scanner": "scanner-primary", "fingerprint": "5f0df3a2f151c429", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7a6895d956f759b9", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/stats-build/src/statistics/best_round.ts:99"}, "properties": {"repobilityId": "35a8e01c860a01a2", "scanner": "scanner-primary", "fingerprint": "7a6895d956f759b9", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-78552e9f63beb28e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/stats-build/src/statistics/wr_metric.ts:59"}, "properties": {"repobilityId": "ddc3fea70916d245", "scanner": "scanner-primary", "fingerprint": "78552e9f63beb28e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9ef732b84805ac78", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 core/packages/stats-build/src/statistics/top10_history.ts:177"}, "properties": {"repobilityId": "e702103bde270268", "scanner": "scanner-primary", "fingerprint": "9ef732b84805ac78", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-95316fbf9522721c", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 core/packages/stats-build/src/core/events.ts:4"}, "properties": {"repobilityId": "7b21f6d7deb3e53a", "scanner": "scanner-primary", "fingerprint": "95316fbf9522721c", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-8d7c3c36611d5dcd", "level": "warning", "message": {"text": "Privileged port 23 in use"}, "properties": {"repobilityId": "a1230e3dfc4becfa", "scanner": "scanner-primary", "fingerprint": "8d7c3c36611d5dcd", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/dump_comps.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ae3cd0e49740eeaa", "level": "warning", "message": {"text": "Privileged port 30 in use"}, "properties": {"repobilityId": "54f172e7d16fc662", "scanner": "scanner-primary", "fingerprint": "ae3cd0e49740eeaa", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/dump_comps.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5216c377775a85b5", "level": "warning", "message": {"text": "Privileged port 4 in use"}, "properties": {"repobilityId": "1594bfeff919296e", "scanner": "scanner-primary", "fingerprint": "5216c377775a85b5", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/sor.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a8674df19385297e", "level": "warning", "message": {"text": "Privileged port 1 in use"}, "properties": {"repobilityId": "ddf3fa6c29abb8d2", "scanner": "scanner-primary", "fingerprint": "a8674df19385297e", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/backfill_schedules.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-512ad80a80ad28aa", "level": "warning", "message": {"text": "Privileged port 127 in use"}, "properties": {"repobilityId": "afafb77f13b4bf59", "scanner": "scanner-primary", "fingerprint": "512ad80a80ad28aa", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/backfill_schedules.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-086e3a8be8cad989", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in fmc/cubelib-server/src/main.rs:220"}, "properties": {"repobilityId": "a851008869850467", "scanner": "scanner-primary", "fingerprint": "086e3a8be8cad989", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "fmc/cubelib-server/src/main.rs"}, "region": {"startLine": 220}}}]}, {"ruleId": "scanner-bb5fd82f0569ff1c", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in solver/333opt/solve_loop.mjs:11"}, "properties": {"repobilityId": "2df42f17e852222b", "scanner": "scanner-primary", "fingerprint": "bb5fd82f0569ff1c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "solver/333opt/solve_loop.mjs"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-2b08f0eb15e29f0e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in solver/333opt/solve.mjs:29"}, "properties": {"repobilityId": "a8a4c3081aabbd04", "scanner": "scanner-primary", "fingerprint": "2b08f0eb15e29f0e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "solver/333opt/solve.mjs"}, "region": {"startLine": 29}}}]}, {"ruleId": "scanner-1e86d0359119134a", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/callback.html:126"}, "properties": {"repobilityId": "40a370e172487ab6", "scanner": "scanner-primary", "fingerprint": "1e86d0359119134a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/callback.html"}, "region": {"startLine": 126}}}]}, {"ruleId": "scanner-71d83b9f24dc3c52", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in tools/callback.html:114"}, "properties": {"repobilityId": "d3493db1ec4a7dbb", "scanner": "scanner-primary", "fingerprint": "71d83b9f24dc3c52", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/callback.html"}, "region": {"startLine": 114}}}]}, {"ruleId": "scanner-276f33b928448277", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in tools/wca_auth.js:82"}, "properties": {"repobilityId": "0c19f990ffd9b385", "scanner": "scanner-primary", "fingerprint": "276f33b928448277", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/wca_auth.js"}, "region": {"startLine": 82}}}]}, {"ruleId": "scanner-fcc2ee0526b37de6", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/xcross_trainer/index.html:947"}, "properties": {"repobilityId": "47b2083998e9e17b", "scanner": "scanner-primary", "fingerprint": "fcc2ee0526b37de6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/xcross_trainer/index.html"}, "region": {"startLine": 947}}}]}, {"ruleId": "scanner-7ba26459d38661b2", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/pseudo_pairing_trainer/index.html:953"}, "properties": {"repobilityId": "c7e9ce400d816e75", "scanner": "scanner-primary", "fingerprint": "7ba26459d38661b2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/pseudo_pairing_trainer/index.html"}, "region": {"startLine": 953}}}]}, {"ruleId": "scanner-2d809dfdfe2e8534", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/shared/wca_person_picker.js:98"}, "properties": {"repobilityId": "93a706410cdf894c", "scanner": "scanner-primary", "fingerprint": "2d809dfdfe2e8534", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/shared/wca_person_picker.js"}, "region": {"startLine": 98}}}]}, {"ruleId": "scanner-7438d0d6db20da5a", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/algTrainer/index.html:384"}, "properties": {"repobilityId": "a49cd73e316f8501", "scanner": "scanner-primary", "fingerprint": "7438d0d6db20da5a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/algTrainer/index.html"}, "region": {"startLine": 384}}}]}, {"ruleId": "scanner-e4adf0bbc40f4c81", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/eocross_trainer/index.html:924"}, "properties": {"repobilityId": "48b99f5d6a5e2fb2", "scanner": "scanner-primary", "fingerprint": "e4adf0bbc40f4c81", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/eocross_trainer/index.html"}, "region": {"startLine": 924}}}]}, {"ruleId": "scanner-f89a7da28510a722", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/pairing_trainer/index.html:946"}, "properties": {"repobilityId": "8e05dc884ae5932e", "scanner": "scanner-primary", "fingerprint": "f89a7da28510a722", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/pairing_trainer/index.html"}, "region": {"startLine": 946}}}]}, {"ruleId": "scanner-72d1515e35f5281e", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/cross_trainer/index.html:921"}, "properties": {"repobilityId": "e33ce4c1aa844b72", "scanner": "scanner-primary", "fingerprint": "72d1515e35f5281e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/cross_trainer/index.html"}, "region": {"startLine": 921}}}]}, {"ruleId": "scanner-e6bac3315b2dfdcb", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/solver/index.html:2307"}, "properties": {"repobilityId": "44f38a6e439ab995", "scanner": "scanner-primary", "fingerprint": "e6bac3315b2dfdcb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/solver/index.html"}, "region": {"startLine": 2307}}}]}, {"ruleId": "scanner-6042e0c4b9299c5b", "level": "warning", "message": {"text": "Insecure pattern 'insert_adjacent_html' in tools/solver/index.html:4666"}, "properties": {"repobilityId": "5d91a7ca65d5011a", "scanner": "scanner-primary", "fingerprint": "6042e0c4b9299c5b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "insert_adjacent_html"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/solver/index.html"}, "region": {"startLine": 4666}}}]}, {"ruleId": "scanner-bff7f6a03fad5345", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/xcross_pairing_trainer/index.html:989"}, "properties": {"repobilityId": "0a0d04e96c22c944", "scanner": "scanner-primary", "fingerprint": "bff7f6a03fad5345", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/xcross_pairing_trainer/index.html"}, "region": {"startLine": 989}}}]}, {"ruleId": "scanner-6435f4f9280a9731", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/xxcross_trainer/index.html:962"}, "properties": {"repobilityId": "1fb4327182a5302f", "scanner": "scanner-primary", "fingerprint": "6435f4f9280a9731", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/xxcross_trainer/index.html"}, "region": {"startLine": 962}}}]}, {"ruleId": "scanner-3383ccc3a8d40428", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/jsonEditor/index.html:394"}, "properties": {"repobilityId": "784589280930e8c3", "scanner": "scanner-primary", "fingerprint": "3383ccc3a8d40428", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/jsonEditor/index.html"}, "region": {"startLine": 394}}}]}, {"ruleId": "scanner-290035efc5d50e4e", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/alg_trainers/src/timer.js:15"}, "properties": {"repobilityId": "ac7fbbfccc72fb30", "scanner": "scanner-primary", "fingerprint": "290035efc5d50e4e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/alg_trainers/src/timer.js"}, "region": {"startLine": 15}}}]}, {"ruleId": "scanner-e5a2254df9d4de8f", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in tools/alg_trainers/src/timer.js:480"}, "properties": {"repobilityId": "355a850c15448184", "scanner": "scanner-primary", "fingerprint": "e5a2254df9d4de8f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/alg_trainers/src/timer.js"}, "region": {"startLine": 480}}}]}, {"ruleId": "scanner-3caa5618d8aeed74", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/alg_trainers/src/main.js:36"}, "properties": {"repobilityId": "660d57c6577b17d8", "scanner": "scanner-primary", "fingerprint": "3caa5618d8aeed74", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/alg_trainers/src/main.js"}, "region": {"startLine": 36}}}]}, {"ruleId": "scanner-f891b031f3629897", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in tools/alg_trainers/src/main.js:204"}, "properties": {"repobilityId": "aacc2a88ee0ad5c4", "scanner": "scanner-primary", "fingerprint": "f891b031f3629897", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/alg_trainers/src/main.js"}, "region": {"startLine": 204}}}]}, {"ruleId": "scanner-95a9eecd24c5c25f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/alg_trainers/src/selection.js:74"}, "properties": {"repobilityId": "a61fae94d48992a0", "scanner": "scanner-primary", "fingerprint": "95a9eecd24c5c25f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/alg_trainers/src/selection.js"}, "region": {"startLine": 74}}}]}, {"ruleId": "scanner-be44224f0e118f30", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/alg_trainers/src/timedetails.js:188"}, "properties": {"repobilityId": "9d1470670910f20a", "scanner": "scanner-primary", "fingerprint": "be44224f0e118f30", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/alg_trainers/src/timedetails.js"}, "region": {"startLine": 188}}}]}, {"ruleId": "scanner-33b96ebdbea6f922", "level": "note", "message": {"text": "Insecure pattern 'document_write' in tools/cstimer/index.html:24"}, "properties": {"repobilityId": "9249392860dfa5ea", "scanner": "scanner-primary", "fingerprint": "33b96ebdbea6f922", "layer": "security", "severity": "low", "confidence": 1.0, "tags": ["owasp", "document_write"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/cstimer/index.html"}, "region": {"startLine": 24}}}]}, {"ruleId": "scanner-987f43fd428c730c", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/cstimer/js/cstimer.js:276"}, "properties": {"repobilityId": "f83bd981604267e5", "scanner": "scanner-primary", "fingerprint": "987f43fd428c730c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/cstimer/js/cstimer.js"}, "region": {"startLine": 276}}}]}, {"ruleId": "scanner-ce207b432e175e66", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/cstimer/js/jquery.min.js:2"}, "properties": {"repobilityId": "2f563813f8152970", "scanner": "scanner-primary", "fingerprint": "ce207b432e175e66", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/cstimer/js/jquery.min.js"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-1c1cff98833e3e40", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/cstimer/js/jquery.min.js:2"}, "properties": {"repobilityId": "528f5c892dda7caa", "scanner": "scanner-primary", "fingerprint": "1c1cff98833e3e40", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/cstimer/js/jquery.min.js"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-47ace17f75000f81", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in tools/cstimer/js/jquery.min.js:2"}, "properties": {"repobilityId": "eb49db5e9fe7aec7", "scanner": "scanner-primary", "fingerprint": "47ace17f75000f81", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/cstimer/js/jquery.min.js"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-d5c2b575bf71623b", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/2x2x2/index.html:1379"}, "properties": {"repobilityId": "94f0ba212c988380", "scanner": "scanner-primary", "fingerprint": "d5c2b575bf71623b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/2x2x2/index.html"}, "region": {"startLine": 1379}}}]}, {"ruleId": "scanner-2be997664cb4f744", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/crossTrainer/solver.js:1"}, "properties": {"repobilityId": "9a6d39dff20295ab", "scanner": "scanner-primary", "fingerprint": "2be997664cb4f744", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/crossTrainer/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-df1844c3b3b22ce4", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoF2LEOSolver/pseudo.js:1"}, "properties": {"repobilityId": "a55d98a46626718a", "scanner": "scanner-primary", "fingerprint": "df1844c3b3b22ce4", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/pseudoF2LEOSolver/pseudo.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b732335c55f397a8", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/F2LEOAnalyzer/analyzer.js:1"}, "properties": {"repobilityId": "f7f833ff69253b33", "scanner": "scanner-primary", "fingerprint": "b732335c55f397a8", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/F2LEOAnalyzer/analyzer.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-623401ef792ebc68", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/src/functions/list.js:1058"}, "properties": {"repobilityId": "62700fad6c222e5e", "scanner": "scanner-primary", "fingerprint": "623401ef792ebc68", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/functions/list.js"}, "region": {"startLine": 1058}}}]}, {"ruleId": "scanner-4d230cc2df67cd21", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/functions/functions.js:1"}, "properties": {"repobilityId": "fbfc9fa394f1470e", "scanner": "scanner-primary", "fingerprint": "4d230cc2df67cd21", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/functions/functions.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-350d3f7fd212e08b", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/highMemorySolver/solver2.js:1"}, "properties": {"repobilityId": "3bbe4bd01bba78f0", "scanner": "scanner-primary", "fingerprint": "350d3f7fd212e08b", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/highMemorySolver/solver2.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b0162e87bb31270a", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/EOCrossSolver/solver.js:1"}, "properties": {"repobilityId": "cc33127383499a8f", "scanner": "scanner-primary", "fingerprint": "b0162e87bb31270a", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/EOCrossSolver/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-10f1860a0d9b7615", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoF2LEOAnalyzer/pseudo_analyzer.js:1"}, "properties": {"repobilityId": "53f3530048ead8d0", "scanner": "scanner-primary", "fingerprint": "10f1860a0d9b7615", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/pseudoF2LEOAnalyzer/pseudo_analyzer.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a57792c4905da51b", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/EOCrossAnalyzer/analyzer.js:1"}, "properties": {"repobilityId": "7c9bfbb9c706e66f", "scanner": "scanner-primary", "fingerprint": "a57792c4905da51b", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/EOCrossAnalyzer/analyzer.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3a385ea1196a5709", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/2x2solver/solver.js:1"}, "properties": {"repobilityId": "a8f841ac4ca81738", "scanner": "scanner-primary", "fingerprint": "3a385ea1196a5709", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/2x2solver/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c91cb533e7c926b3", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/crossAnalyzer/analyzer.js:1"}, "properties": {"repobilityId": "0cae3b36dca7523e", "scanner": "scanner-primary", "fingerprint": "c91cb533e7c926b3", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/crossAnalyzer/analyzer.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1127025aebee12ab", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoPairingTrainer/solver.js:1"}, "properties": {"repobilityId": "2ba57d4bb82b4cf8", "scanner": "scanner-primary", "fingerprint": "1127025aebee12ab", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/pseudoPairingTrainer/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-46456fea2b80c377", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/2x2solverLite/solver.js:1"}, "properties": {"repobilityId": "2706156e523c8416", "scanner": "scanner-primary", "fingerprint": "46456fea2b80c377", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/2x2solverLite/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a44db9044bd8a4af", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoXcrossTrainer/solver.js:1"}, "properties": {"repobilityId": "e34e237b5d949eae", "scanner": "scanner-primary", "fingerprint": "a44db9044bd8a4af", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/pseudoXcrossTrainer/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c8a1bbea695b63d4", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/pairAnalyzer/analyzer.js:1"}, "properties": {"repobilityId": "60e99dad686e459d", "scanner": "scanner-primary", "fingerprint": "c8a1bbea695b63d4", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/pairAnalyzer/analyzer.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ee615ce265a878dc", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/xcross_free_pair_trainer/production/solver_prod.js:1"}, "properties": {"repobilityId": "50d8a3a70361abb6", "scanner": "scanner-primary", "fingerprint": "ee615ce265a878dc", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/xcross_free_pair_trainer/production/solver_prod.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6b5df12513627bb6", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/eocrossTrainer/solver.js:1"}, "properties": {"repobilityId": "6c169fc929381b57", "scanner": "scanner-primary", "fingerprint": "6b5df12513627bb6", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/eocrossTrainer/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3935724393b26310", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/xcrossTrainer/solver.js:1"}, "properties": {"repobilityId": "e8da769aa42c35a7", "scanner": "scanner-primary", "fingerprint": "3935724393b26310", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/xcrossTrainer/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-82e4d98b8737fa20", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/F2L_PairingSolver/pairing_solver.js:1"}, "properties": {"repobilityId": "aa9491f757e55a0e", "scanner": "scanner-primary", "fingerprint": "82e4d98b8737fa20", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/F2L_PairingSolver/pairing_solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4ffcf07d7525a028", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoCrossAnalyzer/pseudo_analyzer.js:1"}, "properties": {"repobilityId": "8372411e73d20873", "scanner": "scanner-primary", "fingerprint": "4ffcf07d7525a028", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/pseudoCrossAnalyzer/pseudo_analyzer.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-bcfa8d0a09e2d55a", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/F2LEOSolver/solver.js:1"}, "properties": {"repobilityId": "87a25cb1ac6aac02", "scanner": "scanner-primary", "fingerprint": "bcfa8d0a09e2d55a", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/F2LEOSolver/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-86ebee63b0826177", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoPairAnalyzer/analyzer.js:1"}, "properties": {"repobilityId": "8b29fd70efd0de60", "scanner": "scanner-primary", "fingerprint": "86ebee63b0826177", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/pseudoPairAnalyzer/analyzer.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-fe21dcddafc00375", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoPairingSolver/pseudoPairingSolver.js:1"}, "properties": {"repobilityId": "ddc9cf55986fe31e", "scanner": "scanner-primary", "fingerprint": "fe21dcddafc00375", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/pseudoPairingSolver/pseudoPairingSolver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a0acb9c1ebcbbd9c", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/crossSolver/solver.js:1"}, "properties": {"repobilityId": "b661cd43739c5285", "scanner": "scanner-primary", "fingerprint": "a0acb9c1ebcbbd9c", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/crossSolver/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-405105deebb61ff8", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/pairingTrainer/solver.js:1"}, "properties": {"repobilityId": "c40441d0fc9dbf75", "scanner": "scanner-primary", "fingerprint": "405105deebb61ff8", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/pairingTrainer/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e2c896735c0ebf8d", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/pseudoCrossSolver/pseudo.js:1"}, "properties": {"repobilityId": "d7f9fe3982d2a8dd", "scanner": "scanner-primary", "fingerprint": "e2c896735c0ebf8d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/pseudoCrossSolver/pseudo.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b473692679b53d0c", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/xxcrossTrainer/solver_dev.js:1"}, "properties": {"repobilityId": "43d2c0364324a399", "scanner": "scanner-primary", "fingerprint": "b473692679b53d0c", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/xxcrossTrainer/solver_dev.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3d4a0ab1e43dc7d8", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in tools/src/xxcrossTrainer/production/solver_prod.js:1"}, "properties": {"repobilityId": "b1626ed629b1482c", "scanner": "scanner-primary", "fingerprint": "3d4a0ab1e43dc7d8", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/src/xxcrossTrainer/production/solver_prod.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-fd311151b5ff7d59", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tools/pseudo_xcross_trainer/index.html:955"}, "properties": {"repobilityId": "4856633095de87e7", "scanner": "scanner-primary", "fingerprint": "fd311151b5ff7d59", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/pseudo_xcross_trainer/index.html"}, "region": {"startLine": 955}}}]}, {"ruleId": "scanner-1b9068c97858b9a5", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in core/packages/client/scripts/sync-deskpet.mjs:17"}, "properties": {"repobilityId": "5a72a94fde84f7c8", "scanner": "scanner-primary", "fingerprint": "1b9068c97858b9a5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/scripts/sync-deskpet.mjs"}, "region": {"startLine": 17}}}]}, {"ruleId": "scanner-728e231c5bb81f3e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in core/packages/client/scripts/predev-clean.mjs:16"}, "properties": {"repobilityId": "e1d86a5118a52c91", "scanner": "scanner-primary", "fingerprint": "728e231c5bb81f3e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/scripts/predev-clean.mjs"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-db22f6f284dbcf6d", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in core/packages/client/scripts/dev-safe.mjs:21"}, "properties": {"repobilityId": "b4f2d0d44f700c40", "scanner": "scanner-primary", "fingerprint": "db22f6f284dbcf6d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/scripts/dev-safe.mjs"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-04ecd28bd983eb92", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/TwistySection.tsx:148"}, "properties": {"repobilityId": "0bf2dd4abaf5de71", "scanner": "scanner-primary", "fingerprint": "04ecd28bd983eb92", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/components/TwistySection.tsx"}, "region": {"startLine": 148}}}]}, {"ruleId": "scanner-0a40bfcb342d11b0", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/PuzzleSVG.tsx:115"}, "properties": {"repobilityId": "bcd491d4372f30ed", "scanner": "scanner-primary", "fingerprint": "0a40bfcb342d11b0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/components/PuzzleSVG.tsx"}, "region": {"startLine": 115}}}]}, {"ruleId": "scanner-5df57480aeefeb75", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/PuzzleSVG.tsx:82"}, "properties": {"repobilityId": "da097771b6652be7", "scanner": "scanner-primary", "fingerprint": "5df57480aeefeb75", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/components/PuzzleSVG.tsx"}, "region": {"startLine": 82}}}]}, {"ruleId": "scanner-2ce11b326b921431", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/ScramblePreview2D.tsx:134"}, "properties": {"repobilityId": "369e76d0b68235aa", "scanner": "scanner-primary", "fingerprint": "2ce11b326b921431", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/components/ScramblePreview2D.tsx"}, "region": {"startLine": 134}}}]}, {"ruleId": "scanner-8a49beba9e14b426", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/AlgInput.tsx:100"}, "properties": {"repobilityId": "d29623a6d252aef4", "scanner": "scanner-primary", "fingerprint": "8a49beba9e14b426", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/components/AlgInput.tsx"}, "region": {"startLine": 100}}}]}, {"ruleId": "scanner-b2c7665e8cce5025", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/AlgCategoryView.tsx:84"}, "properties": {"repobilityId": "d9ae146ac50bc741", "scanner": "scanner-primary", "fingerprint": "b2c7665e8cce5025", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/components/AlgCategoryView.tsx"}, "region": {"startLine": 84}}}]}, {"ruleId": "scanner-f25adc5c02a4751c", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/CubingPreview.tsx:173"}, "properties": {"repobilityId": "8185ccee5101a0c2", "scanner": "scanner-primary", "fingerprint": "f25adc5c02a4751c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/components/CubingPreview.tsx"}, "region": {"startLine": 173}}}]}, {"ruleId": "scanner-fa7b055ef64097f6", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/CubingPreview.tsx:116"}, "properties": {"repobilityId": "9148211aefe14b7c", "scanner": "scanner-primary", "fingerprint": "fa7b055ef64097f6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/components/CubingPreview.tsx"}, "region": {"startLine": 116}}}]}, {"ruleId": "scanner-44586785afc1ba8d", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/EventIcon/EventIcon.tsx:32"}, "properties": {"repobilityId": "2b0f9d59ac7f582b", "scanner": "scanner-primary", "fingerprint": "44586785afc1ba8d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/components/EventIcon/EventIcon.tsx"}, "region": {"startLine": 32}}}]}, {"ruleId": "scanner-acf6c16a951917cd", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/components/wca-stats/WrHistoryChart.tsx:286"}, "properties": {"repobilityId": "048feeaf2a63a60b", "scanner": "scanner-primary", "fingerprint": "acf6c16a951917cd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/components/wca-stats/WrHistoryChart.tsx"}, "region": {"startLine": 286}}}]}, {"ruleId": "scanner-bd371828c8bbdbfe", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/components/math/Tex.tsx:21"}, "properties": {"repobilityId": "3af7590ed2a74a54", "scanner": "scanner-primary", "fingerprint": "bd371828c8bbdbfe", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/components/math/Tex.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-7cec00ec8254f8a2", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/layout.tsx:40"}, "properties": {"repobilityId": "53cb84c444486565", "scanner": "scanner-primary", "fingerprint": "7cec00ec8254f8a2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/layout.tsx"}, "region": {"startLine": 40}}}]}, {"ruleId": "scanner-f52a148604aae47b", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in core/packages/client/app/auth/callback/page.tsx:80"}, "properties": {"repobilityId": "1deb70b14729ec10", "scanner": "scanner-primary", "fingerprint": "f52a148604aae47b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/auth/callback/page.tsx"}, "region": {"startLine": 80}}}]}, {"ruleId": "scanner-11cf6f146e4efec3", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/scramble/pattern/page.tsx:81"}, "properties": {"repobilityId": "eabcfc9f152fda0c", "scanner": "scanner-primary", "fingerprint": "11cf6f146e4efec3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/scramble/pattern/page.tsx"}, "region": {"startLine": 81}}}]}, {"ruleId": "scanner-bdfd5b0274d40eb9", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/scramble/gen/ClockColorPicker.tsx:82"}, "properties": {"repobilityId": "5be8f782ca9ea2fc", "scanner": "scanner-primary", "fingerprint": "bdfd5b0274d40eb9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/scramble/gen/ClockColorPicker.tsx"}, "region": {"startLine": 82}}}]}, {"ruleId": "scanner-7bc9d295f3846395", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/scramble/gen/TranslationsPicker.tsx:158"}, "properties": {"repobilityId": "53ee4378fbf0641b", "scanner": "scanner-primary", "fingerprint": "7bc9d295f3846395", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/scramble/gen/TranslationsPicker.tsx"}, "region": {"startLine": 158}}}]}, {"ruleId": "scanner-12d11633e1601767", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/scramble/solver/_CubingPreview2D.tsx:32"}, "properties": {"repobilityId": "8ba5fbc31e5c5ebe", "scanner": "scanner-primary", "fingerprint": "12d11633e1601767", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/scramble/solver/_CubingPreview2D.tsx"}, "region": {"startLine": 32}}}]}, {"ruleId": "scanner-f9400e5e12bce301", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/alg/commutator/page.tsx:592"}, "properties": {"repobilityId": "a4c86ce939f8fb6b", "scanner": "scanner-primary", "fingerprint": "f9400e5e12bce301", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/alg/commutator/page.tsx"}, "region": {"startLine": 592}}}]}, {"ruleId": "scanner-7b051d321683668f", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx:22"}, "properties": {"repobilityId": "87fba421cf5409f6", "scanner": "scanner-primary", "fingerprint": "7b051d321683668f", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx"}, "region": {"startLine": 22}}}]}, {"ruleId": "scanner-0a44a0141ed5a098", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/calc/_components/components/chart_renderer.ts:233"}, "properties": {"repobilityId": "1399b7fbaacbded8", "scanner": "scanner-primary", "fingerprint": "0a44a0141ed5a098", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/calc/_components/components/chart_renderer.ts"}, "region": {"startLine": 233}}}]}, {"ruleId": "scanner-a2ce3456bee28273", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/code/language/katex/page.tsx:19"}, "properties": {"repobilityId": "8dbaf9087ed2618d", "scanner": "scanner-primary", "fingerprint": "a2ce3456bee28273", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/code/language/katex/page.tsx"}, "region": {"startLine": 19}}}]}, {"ruleId": "scanner-66827fddf2aa1cf1", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/code/language/latex/page.tsx:16"}, "properties": {"repobilityId": "6c0751f66413af1f", "scanner": "scanner-primary", "fingerprint": "66827fddf2aa1cf1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/code/language/latex/page.tsx"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-d2021120f452e094", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in core/packages/client/app/[lang]/code/stack/_tools/webcodecs.tsx:129"}, "properties": {"repobilityId": "93c941498e93f805", "scanner": "scanner-primary", "fingerprint": "d2021120f452e094", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/code/stack/_tools/webcodecs.tsx"}, "region": {"startLine": 129}}}]}, {"ruleId": "scanner-775744c336759976", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in core/packages/client/app/[lang]/code/stack/_tools/pm2.tsx:58"}, "properties": {"repobilityId": "b47bdca6d128a1f4", "scanner": "scanner-primary", "fingerprint": "775744c336759976", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/code/stack/_tools/pm2.tsx"}, "region": {"startLine": 58}}}]}, {"ruleId": "scanner-2d28d7eeab3265f1", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/code/stack/_tools/i18next.tsx:98"}, "properties": {"repobilityId": "2a89e17410416fb1", "scanner": "scanner-primary", "fingerprint": "2d28d7eeab3265f1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/code/stack/_tools/i18next.tsx"}, "region": {"startLine": 98}}}]}, {"ruleId": "scanner-180b00990586a75e", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/visualcube/page.tsx:1020"}, "properties": {"repobilityId": "777d9f296f7cbc73", "scanner": "scanner-primary", "fingerprint": "180b00990586a75e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/visualcube/page.tsx"}, "region": {"startLine": 1020}}}]}, {"ruleId": "scanner-e0ddba1eacd89f5d", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/timer/_shell/BattleView.tsx:586"}, "properties": {"repobilityId": "cbf8b9d8d2b115ef", "scanner": "scanner-primary", "fingerprint": "e0ddba1eacd89f5d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/timer/_shell/BattleView.tsx"}, "region": {"startLine": 586}}}]}, {"ruleId": "scanner-6155bf84dabdad3f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/timer/_shell/BattleView.tsx:224"}, "properties": {"repobilityId": "9af0abcd7ffaa6b3", "scanner": "scanner-primary", "fingerprint": "6155bf84dabdad3f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/timer/_shell/BattleView.tsx"}, "region": {"startLine": 224}}}]}, {"ruleId": "scanner-22b7d194b4976813", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/wca/about/[id]/WcaAboutClient.tsx:34"}, "properties": {"repobilityId": "ba301b60eb89ef93", "scanner": "scanner-primary", "fingerprint": "22b7d194b4976813", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/wca/about/[id]/WcaAboutClient.tsx"}, "region": {"startLine": 34}}}]}, {"ruleId": "scanner-5755e54d3e415139", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/wca/prediction/_components/TheoreticalLimitView.tsx:26"}, "properties": {"repobilityId": "daab94f4750ae8f7", "scanner": "scanner-primary", "fingerprint": "5755e54d3e415139", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/wca/prediction/_components/TheoreticalLimitView.tsx"}, "region": {"startLine": 26}}}]}, {"ruleId": "scanner-b6ef86b45161a8ec", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/recon/[id]/page.tsx:70"}, "properties": {"repobilityId": "8326712202933596", "scanner": "scanner-primary", "fingerprint": "b6ef86b45161a8ec", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/recon/[id]/page.tsx"}, "region": {"startLine": 70}}}]}, {"ruleId": "scanner-8b3d124c3c5a415f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/regulation/notation/NotationMove.tsx:68"}, "properties": {"repobilityId": "3f759438e597cbd1", "scanner": "scanner-primary", "fingerprint": "8b3d124c3c5a415f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/regulation/notation/NotationMove.tsx"}, "region": {"startLine": 68}}}]}, {"ruleId": "scanner-a50bb3248cfcb1ee", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/math/god/_components/Tex.tsx:21"}, "properties": {"repobilityId": "cbf83d22c11ce4a2", "scanner": "scanner-primary", "fingerprint": "a50bb3248cfcb1ee", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/math/god/_components/Tex.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-91c44c62020932bd", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/math/group/_components/primitives.tsx:21"}, "properties": {"repobilityId": "08ea3c5ef4ed031f", "scanner": "scanner-primary", "fingerprint": "91c44c62020932bd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/math/group/_components/primitives.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-d4bb7a3af7b0b1bb", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/trainer/skewb/_components/SkewbImage.tsx:25"}, "properties": {"repobilityId": "8645bf463650d2a8", "scanner": "scanner-primary", "fingerprint": "d4bb7a3af7b0b1bb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/trainer/skewb/_components/SkewbImage.tsx"}, "region": {"startLine": 25}}}]}, {"ruleId": "scanner-12a317c3c8b3458c", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/trainer/_roux/_components/CaseVisualizer.tsx:53"}, "properties": {"repobilityId": "17fb2c2ca52f79d9", "scanner": "scanner-primary", "fingerprint": "12a317c3c8b3458c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/trainer/_roux/_components/CaseVisualizer.tsx"}, "region": {"startLine": 53}}}]}, {"ruleId": "scanner-7d883fcdfae2e545", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/[lang]/tutorial/_lib/restructureCfop.ts:178"}, "properties": {"repobilityId": "4964383b6d104275", "scanner": "scanner-primary", "fingerprint": "7d883fcdfae2e545", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/tutorial/_lib/restructureCfop.ts"}, "region": {"startLine": 178}}}]}, {"ruleId": "scanner-4af7d3a9863afb91", "level": "warning", "message": {"text": "Insecure pattern 'domparser_html_parse' in core/packages/client/app/[lang]/tutorial/_lib/restructureCfop.ts:134"}, "properties": {"repobilityId": "bd07b22389ed4380", "scanner": "scanner-primary", "fingerprint": "4af7d3a9863afb91", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "domparser_html_parse"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/tutorial/_lib/restructureCfop.ts"}, "region": {"startLine": 134}}}]}, {"ruleId": "scanner-102c148b653ba961", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/tutorial/_components/AlgChip.tsx:70"}, "properties": {"repobilityId": "e71ac0f02a3b6e1f", "scanner": "scanner-primary", "fingerprint": "102c148b653ba961", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/tutorial/_components/AlgChip.tsx"}, "region": {"startLine": 70}}}]}, {"ruleId": "scanner-dadde91f5330eb63", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in core/packages/client/app/[lang]/tutorial/_components/CaseCard.tsx:23"}, "properties": {"repobilityId": "503f1934752c3159", "scanner": "scanner-primary", "fingerprint": "dadde91f5330eb63", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/[lang]/tutorial/_components/CaseCard.tsx"}, "region": {"startLine": 23}}}]}, {"ruleId": "scanner-ddf696a8e6bdd577", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/app/_components/LandingCubeHero.tsx:27"}, "properties": {"repobilityId": "4a2d23e2b64871ce", "scanner": "scanner-primary", "fingerprint": "ddf696a8e6bdd577", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/app/_components/LandingCubeHero.tsx"}, "region": {"startLine": 27}}}]}, {"ruleId": "scanner-f5a7de16546cebae", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/lib/roux/CubeLib.ts:131"}, "properties": {"repobilityId": "0efc9f9f39ed5baa", "scanner": "scanner-primary", "fingerprint": "f5a7de16546cebae", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/lib/roux/CubeLib.ts"}, "region": {"startLine": 131}}}]}, {"ruleId": "scanner-9723949b5964475a", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/client/public/_cubing-sheet.html:14"}, "properties": {"repobilityId": "e061fb2a60e752e4", "scanner": "scanner-primary", "fingerprint": "9723949b5964475a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/_cubing-sheet.html"}, "region": {"startLine": 14}}}]}, {"ruleId": "scanner-fea6a89a99e4c056", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver.js:1"}, "properties": {"repobilityId": "d22c9d3bfcc57a0b", "scanner": "scanner-primary", "fingerprint": "fea6a89a99e4c056", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5da91fb23e263e9f", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver-wrapped.js:1"}, "properties": {"repobilityId": "ef745f30d08bbe7f", "scanner": "scanner-primary", "fingerprint": "5da91fb23e263e9f", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver-wrapped.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f4b02001a6281278", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/xcross/solver.js:1"}, "properties": {"repobilityId": "8f60cc4e443dc044", "scanner": "scanner-primary", "fingerprint": "f4b02001a6281278", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/analyze-worker/xcross/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-208db8678b5db974", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pair/pairing_solver-wrapped.js:1"}, "properties": {"repobilityId": "32c3c129ae842afd", "scanner": "scanner-primary", "fingerprint": "208db8678b5db974", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/analyze-worker/pair/pairing_solver-wrapped.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6cc2950a6f356b74", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pair/pairing_solver.js:1"}, "properties": {"repobilityId": "dbfe81ec1ac35f22", "scanner": "scanner-primary", "fingerprint": "6cc2950a6f356b74", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/analyze-worker/pair/pairing_solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-79f3cd3224987ace", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/eocross/solver-wrapped.js:1"}, "properties": {"repobilityId": "96826b4ac1748451", "scanner": "scanner-primary", "fingerprint": "79f3cd3224987ace", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/analyze-worker/eocross/solver-wrapped.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cab1271e926cd51c", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/eocross/solver.js:1"}, "properties": {"repobilityId": "b0bb658f976e4bf0", "scanner": "scanner-primary", "fingerprint": "cab1271e926cd51c", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/analyze-worker/eocross/solver.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-dd29ea7c8d50fbac", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pseudo-cross/pseudo-wrapped.js:1"}, "properties": {"repobilityId": "5762a7b852379c44", "scanner": "scanner-primary", "fingerprint": "dd29ea7c8d50fbac", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/analyze-worker/pseudo-cross/pseudo-wrapped.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9762fd0a7f02b1ed", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/analyze-worker/pseudo-cross/pseudo.js:1"}, "properties": {"repobilityId": "707817a86ffd7add", "scanner": "scanner-primary", "fingerprint": "9762fd0a7f02b1ed", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/analyze-worker/pseudo-cross/pseudo.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2152262d2f4e2e3b", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt3.mjs:4313"}, "properties": {"repobilityId": "e62912df210d621a", "scanner": "scanner-primary", "fingerprint": "2152262d2f4e2e3b", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/cubeopt/cube48opt3.mjs"}, "region": {"startLine": 4313}}}]}, {"ruleId": "scanner-9fc04a8b12be2154", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt7.mjs:4313"}, "properties": {"repobilityId": "19847a6ede26eca4", "scanner": "scanner-primary", "fingerprint": "9fc04a8b12be2154", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/cubeopt/cube48opt7.mjs"}, "region": {"startLine": 4313}}}]}, {"ruleId": "scanner-e73b926fe9f16c5c", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt8.mjs:4315"}, "properties": {"repobilityId": "a001a5abfae326c4", "scanner": "scanner-primary", "fingerprint": "e73b926fe9f16c5c", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/cubeopt/cube48opt8.mjs"}, "region": {"startLine": 4315}}}]}, {"ruleId": "scanner-4283b599a8751abd", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt6.mjs:4313"}, "properties": {"repobilityId": "b70b07daca81f0f3", "scanner": "scanner-primary", "fingerprint": "4283b599a8751abd", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/cubeopt/cube48opt6.mjs"}, "region": {"startLine": 4313}}}]}, {"ruleId": "scanner-70edc1ce22793c9c", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt2.mjs:4313"}, "properties": {"repobilityId": "a39bfe2f24858db5", "scanner": "scanner-primary", "fingerprint": "70edc1ce22793c9c", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/cubeopt/cube48opt2.mjs"}, "region": {"startLine": 4313}}}]}, {"ruleId": "scanner-f387c158653eaaef", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt4.mjs:4313"}, "properties": {"repobilityId": "1c4b045fd1867bc2", "scanner": "scanner-primary", "fingerprint": "f387c158653eaaef", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/cubeopt/cube48opt4.mjs"}, "region": {"startLine": 4313}}}]}, {"ruleId": "scanner-da54f6c5140833ef", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt9.mjs:4315"}, "properties": {"repobilityId": "676ea8e8aa4a2b1a", "scanner": "scanner-primary", "fingerprint": "da54f6c5140833ef", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/cubeopt/cube48opt9.mjs"}, "region": {"startLine": 4315}}}]}, {"ruleId": "scanner-c15e8cdd04eaf634", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt5.mjs:4313"}, "properties": {"repobilityId": "b4137c30fa273f66", "scanner": "scanner-primary", "fingerprint": "c15e8cdd04eaf634", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/cubeopt/cube48opt5.mjs"}, "region": {"startLine": 4313}}}]}, {"ruleId": "scanner-827b23bd49fb9363", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in core/packages/client/public/cubeopt/cube48opt1.mjs:4313"}, "properties": {"repobilityId": "b71355c5dea00a47", "scanner": "scanner-primary", "fingerprint": "827b23bd49fb9363", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/public/cubeopt/cube48opt1.mjs"}, "region": {"startLine": 4313}}}]}, {"ruleId": "scanner-4a147fc9915f6d73", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in core/packages/visualcube/src/cube/drawing.ts:115"}, "properties": {"repobilityId": "fb6a71f2b09de5e3", "scanner": "scanner-primary", "fingerprint": "4a147fc9915f6d73", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/visualcube/src/cube/drawing.ts"}, "region": {"startLine": 115}}}]}, {"ruleId": "scanner-eef77fab8aa97e74", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in core/packages/scramble-stats-build/build_length_opt.mjs:20"}, "properties": {"repobilityId": "c690baf24ac71820", "scanner": "scanner-primary", "fingerprint": "eef77fab8aa97e74", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/scramble-stats-build/build_length_opt.mjs"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-3625d8c77d64b513", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in core/packages/server/src/cube555/daemon.ts:28"}, "properties": {"repobilityId": "f522f4c4c5ee2a6b", "scanner": "scanner-primary", "fingerprint": "3625d8c77d64b513", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/server/src/cube555/daemon.ts"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-c9d5bf2c12b5db38", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in core/packages/server/src/cubeopt/daemon.ts:21"}, "properties": {"repobilityId": "5e1955e525b93134", "scanner": "scanner-primary", "fingerprint": "c9d5bf2c12b5db38", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/server/src/cubeopt/daemon.ts"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-9e1af3730b5f8ffa", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in core/cube555-daemon/local_bench.mjs:11"}, "properties": {"repobilityId": "b5825cf33ac8f401", "scanner": "scanner-primary", "fingerprint": "9e1af3730b5f8ffa", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/cube555-daemon/local_bench.mjs"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-9dc72ba2ef44bf58", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "64dc9c74121c268e", "scanner": "scanner-primary", "fingerprint": "9dc72ba2ef44bf58", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/cube555_native.yml"}, "region": {"startLine": 32}}}]}, {"ruleId": "scanner-74fbdc888aaaac05", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "83cca35fd86ce87f", "scanner": "scanner-primary", "fingerprint": "74fbdc888aaaac05", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/stats.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e3ac7b4a5ffade5e", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "bbe21f4ec531b0fc", "scanner": "scanner-primary", "fingerprint": "e3ac7b4a5ffade5e", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/update_upcoming.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-784f4c5587b5c454", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "df3794f3ab208aab", "scanner": "scanner-primary", "fingerprint": "784f4c5587b5c454", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy_core.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d7bc085a5399da9b", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "29a1eb1891695c94", "scanner": "scanner-primary", "fingerprint": "d7bc085a5399da9b", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/backup_recon.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-852b6c118440664a", "level": "note", "message": {"text": "Very large file: solver/src/pseudo_f2leo_solver.rs (1586 lines)"}, "properties": {"repobilityId": "ccb9a9292af33f19", "scanner": "scanner-primary", "fingerprint": "852b6c118440664a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e65c00dfea2166ec", "level": "note", "message": {"text": "Very large file: solver/src/pseudo_pair_solver.rs (2472 lines)"}, "properties": {"repobilityId": "8e5ec713c71cd409", "scanner": "scanner-primary", "fingerprint": "e65c00dfea2166ec", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cec35ee12480dedf", "level": "note", "message": {"text": "Very large file: solver/src/eo_cross_solver.rs (2174 lines)"}, "properties": {"repobilityId": "697e3fe3c153695d", "scanner": "scanner-primary", "fingerprint": "cec35ee12480dedf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d221b38486aa57dc", "level": "note", "message": {"text": "Very large file: solver/src/pseudo_xcross_solver.rs (1368 lines)"}, "properties": {"repobilityId": "8ffa9cfe043a91ce", "scanner": "scanner-primary", "fingerprint": "d221b38486aa57dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a8e86fca5a146947", "level": "note", "message": {"text": "Very large file: solver/src/f2leo_solver.rs (1447 lines)"}, "properties": {"repobilityId": "7d2b8bf3ab132102", "scanner": "scanner-primary", "fingerprint": "a8e86fca5a146947", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6792e14de755864f", "level": "note", "message": {"text": "Very large file: solver/src/pair_solver.rs (1439 lines)"}, "properties": {"repobilityId": "1c46016c77a6d505", "scanner": "scanner-primary", "fingerprint": "6792e14de755864f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-67cb827ac57883aa", "level": "note", "message": {"text": "Very large file: solver/src/chain_solver.rs (1825 lines)"}, "properties": {"repobilityId": "07d5d8a7d016d5f3", "scanner": "scanner-primary", "fingerprint": "67cb827ac57883aa", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a8619dcf8bc60990", "level": "note", "message": {"text": "Very large file: solver/src/sq1_solver.rs (1522 lines)"}, "properties": {"repobilityId": "23a520599a09b47d", "scanner": "scanner-primary", "fingerprint": "a8619dcf8bc60990", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6f3a8284b153ee48", "level": "note", "message": {"text": "Very large file: tools/i18n/i18n.js (1344 lines)"}, "properties": {"repobilityId": "9f75e9eb56a1141b", "scanner": "scanner-primary", "fingerprint": "6f3a8284b153ee48", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9e84fe7778b1b4f2", "level": "note", "message": {"text": "Very large file: tools/cstimer-scramble/scramble/scramble_444.js (2532 lines)"}, "properties": {"repobilityId": "ad7ea3ba5287216a", "scanner": "scanner-primary", "fingerprint": "9e84fe7778b1b4f2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c63a8fa5cb86e407", "level": "note", "message": {"text": "Very large file: tools/solver/rust-cross/cross_solver.js (1286 lines)"}, "properties": {"repobilityId": "a7de628d499165b5", "scanner": "scanner-primary", "fingerprint": "c63a8fa5cb86e407", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-4117681fb32c1f22", "level": "note", "message": {"text": "Very large file: tools/cstimer/js/cstimer.js (1124 lines)"}, "properties": {"repobilityId": "dc4e60f66518b879", "scanner": "scanner-primary", "fingerprint": "4117681fb32c1f22", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0a5a72f385df4ac9", "level": "note", "message": {"text": "Very large file: tools/src/functions/list.js (2019 lines)"}, "properties": {"repobilityId": "8c8cea9b4fef13f6", "scanner": "scanner-primary", "fingerprint": "0a5a72f385df4ac9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7c90ce2c4d06a0c7", "level": "note", "message": {"text": "Very large file: tools/src/filter/filter.js (1464 lines)"}, "properties": {"repobilityId": "47615508b723610f", "scanner": "scanner-primary", "fingerprint": "7c90ce2c4d06a0c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-decb17402d13807a", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/scramble/gen/TNoodleMode.tsx (1549 lines)"}, "properties": {"repobilityId": "76451e15d5cd30c3", "scanner": "scanner-primary", "fingerprint": "decb17402d13807a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-4d1e4aa85f296403", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/scramble/solver/page.tsx (1274 lines)"}, "properties": {"repobilityId": "0532cf5fbc20d60f", "scanner": "scanner-primary", "fingerprint": "4d1e4aa85f296403", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0dba0cee8c100cf5", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx (2761 lines)"}, "properties": {"repobilityId": "5f4f400fea2e2d4a", "scanner": "scanner-primary", "fingerprint": "0dba0cee8c100cf5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-350d331fda140274", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/php/page.tsx (1189 lines)"}, "properties": {"repobilityId": "605deffb047c1f55", "scanner": "scanner-primary", "fingerprint": "350d331fda140274", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-99e260306ead44ac", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/wasm/page.tsx (1140 lines)"}, "properties": {"repobilityId": "c8498485ff72a785", "scanner": "scanner-primary", "fingerprint": "99e260306ead44ac", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b4de89edb1777a27", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/ruby/page.tsx (1147 lines)"}, "properties": {"repobilityId": "d041f18f0a6a5de7", "scanner": "scanner-primary", "fingerprint": "b4de89edb1777a27", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b92491ed2d204a4d", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/html/page.tsx (1238 lines)"}, "properties": {"repobilityId": "8943ac6c800d6c52", "scanner": "scanner-primary", "fingerprint": "b92491ed2d204a4d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3b2ae88d3d1b6b00", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/katex/page.tsx (1381 lines)"}, "properties": {"repobilityId": "caef7b0075c29b75", "scanner": "scanner-primary", "fingerprint": "3b2ae88d3d1b6b00", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c2bb6fd90a48b73a", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/powershell/page.tsx (1143 lines)"}, "properties": {"repobilityId": "61838a82c976e102", "scanner": "scanner-primary", "fingerprint": "c2bb6fd90a48b73a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-1d33f4b2c043627e", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/c/page.tsx (1059 lines)"}, "properties": {"repobilityId": "9ab1fcaa41050e34", "scanner": "scanner-primary", "fingerprint": "1d33f4b2c043627e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2285a6d020199a68", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/rust/page.tsx (1112 lines)"}, "properties": {"repobilityId": "389dcaac52500ffa", "scanner": "scanner-primary", "fingerprint": "2285a6d020199a68", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ebc57659d5f20495", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/javascript/page.tsx (1060 lines)"}, "properties": {"repobilityId": "e7f1165ab5b53ec9", "scanner": "scanner-primary", "fingerprint": "ebc57659d5f20495", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-43c8851924a0faad", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/latex/page.tsx (1366 lines)"}, "properties": {"repobilityId": "15b778a628258da4", "scanner": "scanner-primary", "fingerprint": "43c8851924a0faad", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-17919ec1b5d58b79", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/csharp/page.tsx (1292 lines)"}, "properties": {"repobilityId": "7ef79c80b2db511c", "scanner": "scanner-primary", "fingerprint": "17919ec1b5d58b79", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-4707761e8db3aecb", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/css/page.tsx (1320 lines)"}, "properties": {"repobilityId": "f41f7c0ce4774646", "scanner": "scanner-primary", "fingerprint": "4707761e8db3aecb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-4bdbdca2510bed65", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/mojo/page.tsx (1068 lines)"}, "properties": {"repobilityId": "8a5854bfbde56416", "scanner": "scanner-primary", "fingerprint": "4bdbdca2510bed65", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-655c5a689871ce97", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/sql/page.tsx (1204 lines)"}, "properties": {"repobilityId": "17e1cb22e25fb516", "scanner": "scanner-primary", "fingerprint": "655c5a689871ce97", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cea8f4c844a438f4", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/lua/page.tsx (1184 lines)"}, "properties": {"repobilityId": "bd4b5cd8115d0735", "scanner": "scanner-primary", "fingerprint": "cea8f4c844a438f4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0ea15d46320afce2", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/python/page.tsx (1073 lines)"}, "properties": {"repobilityId": "8e54ffef530a7a86", "scanner": "scanner-primary", "fingerprint": "0ea15d46320afce2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-db0ddb70b0edd58b", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/cpp/page.tsx (1043 lines)"}, "properties": {"repobilityId": "0788f36005a0fc91", "scanner": "scanner-primary", "fingerprint": "db0ddb70b0edd58b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6665389ab42795ac", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/ts/page.tsx (1034 lines)"}, "properties": {"repobilityId": "22526f18253d19bb", "scanner": "scanner-primary", "fingerprint": "6665389ab42795ac", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e71313cd7e16300b", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/bash/page.tsx (1168 lines)"}, "properties": {"repobilityId": "d256ab093303c37d", "scanner": "scanner-primary", "fingerprint": "e71313cd7e16300b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-37fa9351fd05089f", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/zig/page.tsx (1076 lines)"}, "properties": {"repobilityId": "a431b45c8a04a2bf", "scanner": "scanner-primary", "fingerprint": "37fa9351fd05089f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-bab687bfe2b79aac", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/java/page.tsx (1092 lines)"}, "properties": {"repobilityId": "bb179ecffaa716e6", "scanner": "scanner-primary", "fingerprint": "bab687bfe2b79aac", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-01f7f707edc328ba", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/swift/page.tsx (1053 lines)"}, "properties": {"repobilityId": "7e86551e564da733", "scanner": "scanner-primary", "fingerprint": "01f7f707edc328ba", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7e36173344866c4b", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/go/page.tsx (1123 lines)"}, "properties": {"repobilityId": "7e312e6fd463da6b", "scanner": "scanner-primary", "fingerprint": "7e36173344866c4b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fa2e67969f03157f", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/kotlin/page.tsx (1093 lines)"}, "properties": {"repobilityId": "8859a40ca14fadeb", "scanner": "scanner-primary", "fingerprint": "fa2e67969f03157f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-394c7ebdd1f76320", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/language/haskell/page.tsx (1099 lines)"}, "properties": {"repobilityId": "4f6aed62bf572769", "scanner": "scanner-primary", "fingerprint": "394c7ebdd1f76320", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-77f4d08f0158d8bd", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/code/algorithms/cfop-std-solver/page.tsx (1840 lines)"}, "properties": {"repobilityId": "693bddbf252efad1", "scanner": "scanner-primary", "fingerprint": "77f4d08f0158d8bd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ad297d306add4772", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/visualcube/page.tsx (1716 lines)"}, "properties": {"repobilityId": "be144d31cc5d6edb", "scanner": "scanner-primary", "fingerprint": "ad297d306add4772", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cec66c7a671b27f4", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/battle/_components/engine/battle_store.ts (1497 lines)"}, "properties": {"repobilityId": "45d944eabd5cd092", "scanner": "scanner-primary", "fingerprint": "cec66c7a671b27f4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cd535f6efd2c7e28", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/timer/_lib/scramble/scramble_444_rs.ts (2343 lines)"}, "properties": {"repobilityId": "d2df370fd06bcb5e", "scanner": "scanner-primary", "fingerprint": "cd535f6efd2c7e28", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cb1e080af00b3084", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/timer/_shell/BattleView.tsx (1414 lines)"}, "properties": {"repobilityId": "b32ec676c657c472", "scanner": "scanner-primary", "fingerprint": "cb1e080af00b3084", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-aafa8d12b61e8f1b", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/timer/_shell/SoloView.tsx (1789 lines)"}, "properties": {"repobilityId": "00c4efb6a7e08d19", "scanner": "scanner-primary", "fingerprint": "aafa8d12b61e8f1b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0090b73f0cf49eb0", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/timer/_components/SettingsPanel.tsx (1250 lines)"}, "properties": {"repobilityId": "f0da931d65e0d556", "scanner": "scanner-primary", "fingerprint": "0090b73f0cf49eb0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cbc16aa2fdcba7c7", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/timer/_components/HistoryPanel.tsx (1343 lines)"}, "properties": {"repobilityId": "705d5a341dd86a86", "scanner": "scanner-primary", "fingerprint": "cbc16aa2fdcba7c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-090e170835561eaf", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/wca/about/[id]/_lib/entries/journey.ts (1644 lines)"}, "properties": {"repobilityId": "56c5a6a3f2ada1f8", "scanner": "scanner-primary", "fingerprint": "090e170835561eaf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6dbec36ba6483688", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/wca/about/[id]/_lib/entries/podiums.ts (833 lines)"}, "properties": {"repobilityId": "eaa9f8ce60deda18", "scanner": "scanner-primary", "fingerprint": "6dbec36ba6483688", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a2e97089839d19c7", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/wca/about/[id]/_lib/entries/records_countries.ts (1578 lines)"}, "properties": {"repobilityId": "1f239f9cbe8b0a93", "scanner": "scanner-primary", "fingerprint": "a2e97089839d19c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fc13550780825e4b", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/wca/about/[id]/_lib/entries/wr_analysis.ts (914 lines)"}, "properties": {"repobilityId": "0cc8d1f524d61331", "scanner": "scanner-primary", "fingerprint": "fc13550780825e4b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f12303dce5001664", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/wca/all-results/page.tsx (932 lines)"}, "properties": {"repobilityId": "9c158cce1494e79b", "scanner": "scanner-primary", "fingerprint": "f12303dce5001664", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3c10c88cb666ef25", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/wca/comp/page.tsx (2528 lines)"}, "properties": {"repobilityId": "a219e7245bf31a4c", "scanner": "scanner-primary", "fingerprint": "3c10c88cb666ef25", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9d2400af39c5d900", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/wca/comp/[slug]/CompDetailPage.tsx (2955 lines)"}, "properties": {"repobilityId": "41d00056812cc328", "scanner": "scanner-primary", "fingerprint": "9d2400af39c5d900", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e50aafa6c7042c46", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx (3701 lines)"}, "properties": {"repobilityId": "6b6b4c0650212b38", "scanner": "scanner-primary", "fingerprint": "e50aafa6c7042c46", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-72446a719a61ebbc", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/wca/prediction/page.tsx (928 lines)"}, "properties": {"repobilityId": "f44ad87190a63374", "scanner": "scanner-primary", "fingerprint": "72446a719a61ebbc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b5ef87d9345b1310", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/wca/prediction/_components/theoretical_limits.ts (1006 lines)"}, "properties": {"repobilityId": "1190f3232e1399e6", "scanner": "scanner-primary", "fingerprint": "b5ef87d9345b1310", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fb0948439e901e57", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/wca/prediction/_components/Prediction333View.tsx (1213 lines)"}, "properties": {"repobilityId": "32b31489f06c08da", "scanner": "scanner-primary", "fingerprint": "fb0948439e901e57", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cc422b713e819f0f", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/recon/submit/ReconSubmitForm.tsx (1776 lines)"}, "properties": {"repobilityId": "a2785894455603fc", "scanner": "scanner-primary", "fingerprint": "cc422b713e819f0f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c7ab9b08f6010a54", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/recon/[id]/ReconDetailClient.tsx (1339 lines)"}, "properties": {"repobilityId": "6f196811a25eeeec", "scanner": "scanner-primary", "fingerprint": "c7ab9b08f6010a54", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-453589608bb9a226", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/FriezeGroups.tsx (1000 lines)"}, "properties": {"repobilityId": "74526ab03305b15d", "scanner": "scanner-primary", "fingerprint": "453589608bb9a226", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c2bbce2247bbdd60", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/MatrixLieGroups.tsx (1314 lines)"}, "properties": {"repobilityId": "68501465ee97d6e9", "scanner": "scanner-primary", "fingerprint": "c2bbce2247bbdd60", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a01947c2bf5c4bb4", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/PolyaCubeColorings.tsx (1081 lines)"}, "properties": {"repobilityId": "f44885ecc20af826", "scanner": "scanner-primary", "fingerprint": "a01947c2bf5c4bb4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8dee845d9832b983", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/PointGroupsCrystal.tsx (929 lines)"}, "properties": {"repobilityId": "f45702d11abeb83d", "scanner": "scanner-primary", "fingerprint": "8dee845d9832b983", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a7d55769a7690ee9", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/PlaneIsometries.tsx (1038 lines)"}, "properties": {"repobilityId": "cc352056eea1eec3", "scanner": "scanner-primary", "fingerprint": "a7d55769a7690ee9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ede1c79ab9fd75b3", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/QuaternionGroup.tsx (1131 lines)"}, "properties": {"repobilityId": "b3682a7618d33d1e", "scanner": "scanner-primary", "fingerprint": "ede1c79ab9fd75b3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fba28572bb892864", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/ReflectionCoxeter.tsx (906 lines)"}, "properties": {"repobilityId": "8b6a3490e7fcc156", "scanner": "scanner-primary", "fingerprint": "fba28572bb892864", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-42ef164e0a897e9c", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/RepresentationBasics.tsx (1381 lines)"}, "properties": {"repobilityId": "a679fbc22c0182c7", "scanner": "scanner-primary", "fingerprint": "42ef164e0a897e9c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0a055fb26b59cae5", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CompositionSeries.tsx (1415 lines)"}, "properties": {"repobilityId": "a7215a995d677c2a", "scanner": "scanner-primary", "fingerprint": "0a055fb26b59cae5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-517184e2a555b8e6", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/PlatonicSymmetry.tsx (1198 lines)"}, "properties": {"repobilityId": "2dcf7e023cd09c8d", "scanner": "scanner-primary", "fingerprint": "517184e2a555b8e6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6a2dedd0adbb9885", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/FourierOnGroups.tsx (1093 lines)"}, "properties": {"repobilityId": "dec2c725e31ba395", "scanner": "scanner-primary", "fingerprint": "6a2dedd0adbb9885", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-161b227613817af2", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CayleyTheorem.tsx (1087 lines)"}, "properties": {"repobilityId": "c71b84b97bb0300a", "scanner": "scanner-primary", "fingerprint": "161b227613817af2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-185ef3821ebfb382", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/FreeGroups.tsx (1263 lines)"}, "properties": {"repobilityId": "5d9517f3a6204102", "scanner": "scanner-primary", "fingerprint": "185ef3821ebfb382", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b5eb487d66067de7", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CyclicModular.tsx (896 lines)"}, "properties": {"repobilityId": "fe89ed896baa83c3", "scanner": "scanner-primary", "fingerprint": "b5eb487d66067de7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a129003171859f9f", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/SylowTheorems.tsx (1103 lines)"}, "properties": {"repobilityId": "4900d3d7059d5fd7", "scanner": "scanner-primary", "fingerprint": "a129003171859f9f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-58fe2b6146d2ad1f", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/AutomorphismGroup.tsx (1172 lines)"}, "properties": {"repobilityId": "b6c74ae6acde7aa5", "scanner": "scanner-primary", "fingerprint": "58fe2b6146d2ad1f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-12bcc7fb7b1c3a6e", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/ClassEquation.tsx (1163 lines)"}, "properties": {"repobilityId": "fa319c0d0b2772c0", "scanner": "scanner-primary", "fingerprint": "12bcc7fb7b1c3a6e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b880d11259ce491c", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CharacterTable.tsx (1269 lines)"}, "properties": {"repobilityId": "da32b06003f2b0cf", "scanner": "scanner-primary", "fingerprint": "b880d11259ce491c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-1cbef3bc88565a23", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/GrowthOfGroups.tsx (1159 lines)"}, "properties": {"repobilityId": "2320bc515bc5004d", "scanner": "scanner-primary", "fingerprint": "1cbef3bc88565a23", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b589fbbaa24b34a7", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/ExpanderRamanujan.tsx (1153 lines)"}, "properties": {"repobilityId": "ac91695daa3e750a", "scanner": "scanner-primary", "fingerprint": "b589fbbaa24b34a7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6a2d788438fcdb8c", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/SolvableNilpotent.tsx (1130 lines)"}, "properties": {"repobilityId": "32e7aec683b7d9fa", "scanner": "scanner-primary", "fingerprint": "6a2d788438fcdb8c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-24825a65c1b39e9c", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/DihedralGroups.tsx (1065 lines)"}, "properties": {"repobilityId": "0f52df5cc62fa455", "scanner": "scanner-primary", "fingerprint": "24825a65c1b39e9c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-941a197ee24c09e8", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/OrbitStabilizer.tsx (1048 lines)"}, "properties": {"repobilityId": "36c8ff4f66309309", "scanner": "scanner-primary", "fingerprint": "941a197ee24c09e8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f70e26c112cf78f8", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/CycleIndex.tsx (1342 lines)"}, "properties": {"repobilityId": "057ab03b6431676f", "scanner": "scanner-primary", "fingerprint": "f70e26c112cf78f8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7edb63f14f088ea3", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/WallpaperGroups.tsx (1224 lines)"}, "properties": {"repobilityId": "fa2df725296c9f28", "scanner": "scanner-primary", "fingerprint": "7edb63f14f088ea3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c1f140ca9a702651", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/GaloisConnection.tsx (1326 lines)"}, "properties": {"repobilityId": "924538c892c3131e", "scanner": "scanner-primary", "fingerprint": "c1f140ca9a702651", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9295239579a82f12", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/YoungTableaux.tsx (1056 lines)"}, "properties": {"repobilityId": "b4d74068ab1246be", "scanner": "scanner-primary", "fingerprint": "9295239579a82f12", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fbaab5fe667fb57c", "level": "note", "message": {"text": "Very large file: core/packages/client/app/[lang]/math/group/_components/sections/SemidirectProduct.tsx (951 lines)"}, "properties": {"repobilityId": "7a023ca986dc3b55", "scanner": "scanner-primary", "fingerprint": "fbaab5fe667fb57c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9075dcac81a6524a", "level": "note", "message": {"text": "Very large file: core/packages/client/public/analyze-worker/boohoo.js (8729 lines)"}, "properties": {"repobilityId": "329c91b6d294c8af", "scanner": "scanner-primary", "fingerprint": "9075dcac81a6524a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2848509f56f3e53a", "level": "note", "message": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt3.mjs (5406 lines)"}, "properties": {"repobilityId": "3b58f20b7df2505b", "scanner": "scanner-primary", "fingerprint": "2848509f56f3e53a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ade7772d50c2e375", "level": "note", "message": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt7.mjs (5406 lines)"}, "properties": {"repobilityId": "8c6e5e94641b4701", "scanner": "scanner-primary", "fingerprint": "ade7772d50c2e375", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f310ddc37bff71ac", "level": "note", "message": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt8.mjs (5427 lines)"}, "properties": {"repobilityId": "504446ce761b96f5", "scanner": "scanner-primary", "fingerprint": "f310ddc37bff71ac", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-30b9b7cab5f3b622", "level": "note", "message": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt6.mjs (5406 lines)"}, "properties": {"repobilityId": "aaf7e8c8759d0f9c", "scanner": "scanner-primary", "fingerprint": "30b9b7cab5f3b622", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5f649d3a49afcde6", "level": "note", "message": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt2.mjs (5406 lines)"}, "properties": {"repobilityId": "160ef69839147ebd", "scanner": "scanner-primary", "fingerprint": "5f649d3a49afcde6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c396e6aeb1710cf8", "level": "note", "message": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt4.mjs (5406 lines)"}, "properties": {"repobilityId": "3523a8aa95b6aaf7", "scanner": "scanner-primary", "fingerprint": "c396e6aeb1710cf8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b2e58643c7ce9576", "level": "note", "message": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt9.mjs (5427 lines)"}, "properties": {"repobilityId": "4d289a2165bce63a", "scanner": "scanner-primary", "fingerprint": "b2e58643c7ce9576", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a709c4fdd8f88ef8", "level": "note", "message": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt5.mjs (5406 lines)"}, "properties": {"repobilityId": "ffdac3a371b98cb5", "scanner": "scanner-primary", "fingerprint": "a709c4fdd8f88ef8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f7cb4503ff5f0557", "level": "note", "message": {"text": "Very large file: core/packages/client/public/cubeopt/cube48opt1.mjs (5406 lines)"}, "properties": {"repobilityId": "09d7c19b0004d9ca", "scanner": "scanner-primary", "fingerprint": "f7cb4503ff5f0557", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-35652a3e59938684", "level": "note", "message": {"text": "Very large file: core/packages/server/src/routes/cubing_live.ts (2033 lines)"}, "properties": {"repobilityId": "07518e5af1490398", "scanner": "scanner-primary", "fingerprint": "35652a3e59938684", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f2ac47bbe4549f64", "level": "note", "message": {"text": "Very large file: core/packages/server/src/routes/wca_stats_extra.ts (1665 lines)"}, "properties": {"repobilityId": "faba4531c97fee4e", "scanner": "scanner-primary", "fingerprint": "f2ac47bbe4549f64", "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-51a7a5c3327df078", "level": "note", "message": {"text": "195 TODO/FIXME markers"}, "properties": {"repobilityId": "4b38c118003e07d2", "scanner": "scanner-primary", "fingerprint": "51a7a5c3327df078", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["maintenance"]}}, {"ruleId": "scanner-f06ede8ec12abb90", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: core/packages/client/package.json"}, "properties": {"repobilityId": "2a1412d3d370d16c", "scanner": "scanner-primary", "fingerprint": "f06ede8ec12abb90", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/client/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a28dd0797823b1bd", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: core/packages/shared/package.json"}, "properties": {"repobilityId": "efe696bf4c6decb2", "scanner": "scanner-primary", "fingerprint": "a28dd0797823b1bd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/shared/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-acac20640795bb1b", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: core/packages/visualcube/package.json"}, "properties": {"repobilityId": "f02be11531683519", "scanner": "scanner-primary", "fingerprint": "acac20640795bb1b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/visualcube/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6523eff97cb5579e", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: core/packages/alg-build/package.json"}, "properties": {"repobilityId": "69ff5d721b4822fe", "scanner": "scanner-primary", "fingerprint": "6523eff97cb5579e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/alg-build/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2e18b57886b72169", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: core/packages/server/package.json"}, "properties": {"repobilityId": "23f4864261d1202c", "scanner": "scanner-primary", "fingerprint": "2e18b57886b72169", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/server/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8e1efe0991aaad22", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: core/packages/wb-build/package.json"}, "properties": {"repobilityId": "c94f5c7d50aad3f4", "scanner": "scanner-primary", "fingerprint": "8e1efe0991aaad22", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/wb-build/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-34a3400687d8c822", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: core/packages/stats-build/package.json"}, "properties": {"repobilityId": "91fec3cb7ebd0d41", "scanner": "scanner-primary", "fingerprint": "34a3400687d8c822", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "core/packages/stats-build/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "8f8256f48d59861d", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-72b2a6250083a784", "level": "warning", "message": {"text": "Placeholder or mock-heavy implementation detected"}, "properties": {"repobilityId": "9e2b4af88cf15223", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "5132ac6ceefe94b2", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "3feabff180130a8c", "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": "9f4b8558715d4fb1", "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": "97c68f094164cb3a", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-042f9244849d5dc7", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/pretooluse-hook/SKILL.md"}, "properties": {"repobilityId": "e407e7ba0483a224", "scanner": "scanner-primary", "fingerprint": "042f9244849d5dc7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/pretooluse-hook/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b005590ebcd556ac", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/comp-names-zh/SKILL.md"}, "properties": {"repobilityId": "5eabebf48fd6f2f3", "scanner": "scanner-primary", "fingerprint": "b005590ebcd556ac", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/comp-names-zh/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-564737147a31dea1", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/alg-admin-api/SKILL.md"}, "properties": {"repobilityId": "9d1a19aba0d6d1ce", "scanner": "scanner-primary", "fingerprint": "564737147a31dea1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/alg-admin-api/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1db55f2a1134b2a5", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/document-title/SKILL.md"}, "properties": {"repobilityId": "71ca6ce594cf0fe4", "scanner": "scanner-primary", "fingerprint": "1db55f2a1134b2a5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/document-title/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f02d6e0a38dffa17", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/ops-runbook/SKILL.md"}, "properties": {"repobilityId": "79217ea117e4a20b", "scanner": "scanner-primary", "fingerprint": "f02d6e0a38dffa17", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/ops-runbook/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4dae28b589f563e7", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: .claude/skills/scramble-stats-build/SKILL.md"}, "properties": {"repobilityId": "d3fcc44ddeef7af6", "scanner": "scanner-primary", "fingerprint": "4dae28b589f563e7", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/scramble-stats-build/SKILL.md"}, "region": {"startLine": 24}}}]}, {"ruleId": "scanner-8a2e034706848acd", "level": "none", "message": {"text": "Commented-code block (5 lines) in solver/333opt/solve.mjs:3"}, "properties": {"repobilityId": "8cd6ce6d930a906c", "scanner": "scanner-primary", "fingerprint": "8a2e034706848acd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8b3e1c979b4a0c1a", "level": "none", "message": {"text": "Commented-code block (5 lines) in solver/333opt/gen-table.mjs:1"}, "properties": {"repobilityId": "3c8bad8fd3d4c5b4", "scanner": "scanner-primary", "fingerprint": "8b3e1c979b4a0c1a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a2d444ab6f3fbfc5", "level": "none", "message": {"text": "Commented-code block (5 lines) in solver/333opt/inject.mjs:10"}, "properties": {"repobilityId": "cf588ca341e243e0", "scanner": "scanner-primary", "fingerprint": "a2d444ab6f3fbfc5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b3f54ab8668eb467", "level": "note", "message": {"text": "Legacy-named symbol `encodeMav_v1` in tools/url_params_compressor_simple.js:80"}, "properties": {"repobilityId": "d9baf52fd00ee57e", "scanner": "scanner-primary", "fingerprint": "b3f54ab8668eb467", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b6c8ab697fcd0db9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/wca_auth.js:89"}, "properties": {"repobilityId": "ff3b3b56d2331f7e", "scanner": "scanner-primary", "fingerprint": "b6c8ab697fcd0db9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0624021815d1d6f8", "level": "none", "message": {"text": "Commented-code block (5 lines) in tools/i18n/i18n.js:739"}, "properties": {"repobilityId": "1c38f7693c55c124", "scanner": "scanner-primary", "fingerprint": "0624021815d1d6f8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8ab6ec409ae595f9", "level": "none", "message": {"text": "Commented-code block (8 lines) in tools/cstimer-scramble/scrambler.worker.js:26"}, "properties": {"repobilityId": "9d61713ed7c89ac3", "scanner": "scanner-primary", "fingerprint": "8ab6ec409ae595f9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7c71163713a7f3d4", "level": "note", "message": {"text": "Legacy-named symbol `scramble_copy` in tools/cstimer-scramble/scramble/scramble.js:862"}, "properties": {"repobilityId": "c0ea5d68ca179df8", "scanner": "scanner-primary", "fingerprint": "7c71163713a7f3d4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b73b443748c99c3a", "level": "none", "message": {"text": "Commented-code block (5 lines) in tools/cstimer-scramble/scramble/scramble_sq1_new.js:658"}, "properties": {"repobilityId": "b620ac138d4328ff", "scanner": "scanner-primary", "fingerprint": "b73b443748c99c3a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e866adcce328e376", "level": "none", "message": {"text": "Commented-code block (5 lines) in tools/cstimer-scramble/lib/mathlib.js:1049"}, "properties": {"repobilityId": "bd2854973c03d7d4", "scanner": "scanner-primary", "fingerprint": "e866adcce328e376", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-10a80294fec12149", "level": "none", "message": {"text": "Commented-code block (7 lines) in tools/solver/rust-cross/cross-solver-worker.js:4"}, "properties": {"repobilityId": "1b9cb9411a788eee", "scanner": "scanner-primary", "fingerprint": "10a80294fec12149", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1d8427f6f3d99b67", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/solver/rust-cross/cross-solver-worker.js:30"}, "properties": {"repobilityId": "78a253e643f5e2ea", "scanner": "scanner-primary", "fingerprint": "1d8427f6f3d99b67", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-09f2e2e0da946dc9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/solver/rust-cross/cross_solver.js:1278"}, "properties": {"repobilityId": "e4c9b9cd87d98d9b", "scanner": "scanner-primary", "fingerprint": "09f2e2e0da946dc9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6771f304446d6c14", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/alg_trainers/src/main.js:162"}, "properties": {"repobilityId": "7f4a341c2bfb39d2", "scanner": "scanner-primary", "fingerprint": "6771f304446d6c14", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7c6941391b168118", "level": "note", "message": {"text": "Legacy-named symbol `__v1` in tools/cstimer/js/twisty.js:35"}, "properties": {"repobilityId": "c8fcd6d900f69469", "scanner": "scanner-primary", "fingerprint": "7c6941391b168118", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-eaa2872b9f1b981a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/crossTrainer/solver.js:1"}, "properties": {"repobilityId": "9d77274126d59fe5", "scanner": "scanner-primary", "fingerprint": "eaa2872b9f1b981a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-21b7f3540c38aac2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoF2LEOSolver/pseudo.js:1"}, "properties": {"repobilityId": "fcdd6d08609f1113", "scanner": "scanner-primary", "fingerprint": "21b7f3540c38aac2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7920bb4917655712", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/F2LEOAnalyzer/analyzer.js:1"}, "properties": {"repobilityId": "240ead3e5930828a", "scanner": "scanner-primary", "fingerprint": "7920bb4917655712", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2469530c09ecaef6", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/functions/functions.js:1"}, "properties": {"repobilityId": "e617b03776cd6078", "scanner": "scanner-primary", "fingerprint": "2469530c09ecaef6", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e7e6795fae723ef4", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/highMemorySolver/solver2.js:1"}, "properties": {"repobilityId": "6331fe1244f97501", "scanner": "scanner-primary", "fingerprint": "e7e6795fae723ef4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-28902dd012a2cb50", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/EOCrossSolver/solver.js:1"}, "properties": {"repobilityId": "425679096d8546e2", "scanner": "scanner-primary", "fingerprint": "28902dd012a2cb50", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-4cd53304ecd38eee", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoF2LEOAnalyzer/pseudo_analyzer.js:1"}, "properties": {"repobilityId": "f7baa0861336cde3", "scanner": "scanner-primary", "fingerprint": "4cd53304ecd38eee", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9f71a76742cfed2a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/EOCrossAnalyzer/analyzer.js:1"}, "properties": {"repobilityId": "24ee9ad50929a9c0", "scanner": "scanner-primary", "fingerprint": "9f71a76742cfed2a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6ec33640c52484c5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/2x2solver/solver.js:1"}, "properties": {"repobilityId": "7fdf4d60befdacc4", "scanner": "scanner-primary", "fingerprint": "6ec33640c52484c5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d18559500867ddc9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/crossAnalyzer/analyzer.js:1"}, "properties": {"repobilityId": "ec8ee4770b81f2e7", "scanner": "scanner-primary", "fingerprint": "d18559500867ddc9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-758c68abe3522bcb", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoPairingTrainer/solver.js:1"}, "properties": {"repobilityId": "36607e3ad11dd2a3", "scanner": "scanner-primary", "fingerprint": "758c68abe3522bcb", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a01d58e454d85fa5", "level": "none", "message": {"text": "Commented-code block (6 lines) in tools/src/filter/filter.js:973"}, "properties": {"repobilityId": "dd714e76035d9ded", "scanner": "scanner-primary", "fingerprint": "a01d58e454d85fa5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ace39c5b60a8b276", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/2x2solverLite/solver.js:1"}, "properties": {"repobilityId": "3168de48ff9c5700", "scanner": "scanner-primary", "fingerprint": "ace39c5b60a8b276", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0eb062f0e6ce10dc", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoXcrossTrainer/solver.js:1"}, "properties": {"repobilityId": "933ff741af268be4", "scanner": "scanner-primary", "fingerprint": "0eb062f0e6ce10dc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a80b0a70c8c90a4f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pairAnalyzer/analyzer.js:1"}, "properties": {"repobilityId": "b61a56990e6e66c2", "scanner": "scanner-primary", "fingerprint": "a80b0a70c8c90a4f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9edac75be6d38002", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/xcross_free_pair_trainer/production/solver_prod.js:1"}, "properties": {"repobilityId": "686c3149544c780b", "scanner": "scanner-primary", "fingerprint": "9edac75be6d38002", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5385b3d5b8eb8371", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/eocrossTrainer/solver.js:1"}, "properties": {"repobilityId": "0ac7bb007727e98d", "scanner": "scanner-primary", "fingerprint": "5385b3d5b8eb8371", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7aa1bc846c1b9912", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/xcrossTrainer/solver.js:1"}, "properties": {"repobilityId": "4a1baa719a61f745", "scanner": "scanner-primary", "fingerprint": "7aa1bc846c1b9912", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2b213c99b4bd218f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/F2L_PairingSolver/pairing_solver.js:1"}, "properties": {"repobilityId": "5fef3cb6aa7ad67f", "scanner": "scanner-primary", "fingerprint": "2b213c99b4bd218f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-cbd767c369bf73f6", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoCrossAnalyzer/pseudo_analyzer.js:1"}, "properties": {"repobilityId": "ae96d999a5fdac2e", "scanner": "scanner-primary", "fingerprint": "cbd767c369bf73f6", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-25284fe4216c7676", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/F2LEOSolver/solver.js:1"}, "properties": {"repobilityId": "0dfdf13f85950d01", "scanner": "scanner-primary", "fingerprint": "25284fe4216c7676", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c111ac64b6e79602", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoPairAnalyzer/analyzer.js:1"}, "properties": {"repobilityId": "90b655b735e9bad4", "scanner": "scanner-primary", "fingerprint": "c111ac64b6e79602", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7e4d89e9cadd5bd6", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoPairingSolver/pseudoPairingSolver.js:1"}, "properties": {"repobilityId": "afa0c1cab691dd03", "scanner": "scanner-primary", "fingerprint": "7e4d89e9cadd5bd6", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-009559772303d8b9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/crossSolver/solver.js:1"}, "properties": {"repobilityId": "26c6d1364ed13c8a", "scanner": "scanner-primary", "fingerprint": "009559772303d8b9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e43e88b8a558b4dc", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pairingTrainer/solver.js:1"}, "properties": {"repobilityId": "ff64874683c3fc8e", "scanner": "scanner-primary", "fingerprint": "e43e88b8a558b4dc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-12e5d96602b84018", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/pseudoCrossSolver/pseudo.js:1"}, "properties": {"repobilityId": "89bf3c179919d504", "scanner": "scanner-primary", "fingerprint": "12e5d96602b84018", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-410ffccee7ebf27f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/xxcrossTrainer/solver_dev.js:1"}, "properties": {"repobilityId": "efe93f3e3c3bf5c2", "scanner": "scanner-primary", "fingerprint": "410ffccee7ebf27f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0b05a1517f788b4a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 tools/src/xxcrossTrainer/production/solver_prod.js:1"}, "properties": {"repobilityId": "07cb084c8790b6ac", "scanner": "scanner-primary", "fingerprint": "0b05a1517f788b4a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-81049e9ad7383de5", "level": "none", "message": {"text": "Commented-code block (13 lines) in core/packages/client/proxy.ts:3"}, "properties": {"repobilityId": "27da350fdb7660cd", "scanner": "scanner-primary", "fingerprint": "81049e9ad7383de5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7a6ebcb19736e65a", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/next.config.ts:18"}, "properties": {"repobilityId": "8c0a90fe838d3d7e", "scanner": "scanner-primary", "fingerprint": "7a6ebcb19736e65a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-37f5d21de4294ce2", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/i18n/i18n-client.ts:4"}, "properties": {"repobilityId": "985aef29fc487f74", "scanner": "scanner-primary", "fingerprint": "37f5d21de4294ce2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0532a3825d8a84f8", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/i18n/I18nProvider.tsx:7"}, "properties": {"repobilityId": "9f9a6d0216c0d013", "scanner": "scanner-primary", "fingerprint": "0532a3825d8a84f8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e5d9d3fe7deae02c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/wasm/m2p/m2p_wasm.js:515"}, "properties": {"repobilityId": "0e8c980ea8db6449", "scanner": "scanner-primary", "fingerprint": "e5d9d3fe7deae02c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ed0c3569c5554843", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/tests/skewb_scramble.test.ts:14"}, "properties": {"repobilityId": "f0f4eccf36f8e8f5", "scanner": "scanner-primary", "fingerprint": "ed0c3569c5554843", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f470647123f33701", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/tests/server-cache-headers.test.ts:5"}, "properties": {"repobilityId": "16b39093620777c9", "scanner": "scanner-primary", "fingerprint": "f470647123f33701", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7a4874636213302d", "level": "note", "message": {"text": "Legacy-named symbol `baseOld` in core/packages/client/tests/result-watch-chain.test.ts:234"}, "properties": {"repobilityId": "a5002a584eb57fd5", "scanner": "scanner-primary", "fingerprint": "7a4874636213302d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0526c7e28e882bd6", "level": "none", "message": {"text": "Commented-code block (10 lines) in core/packages/client/tests/i18n-no-isz-text-ternary.test.ts:3"}, "properties": {"repobilityId": "553a7b8a0e9dad24", "scanner": "scanner-primary", "fingerprint": "0526c7e28e882bd6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d610b75fb3aa440e", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/tests/analyzer_worker.test.ts:94"}, "properties": {"repobilityId": "15de3a9bd10dd0bd", "scanner": "scanner-primary", "fingerprint": "d610b75fb3aa440e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3aec76ea5c386f56", "level": "none", "message": {"text": "Commented-code block (10 lines) in core/packages/client/tests/code-catalog-sync.test.ts:1"}, "properties": {"repobilityId": "b2c5aafcc856a547", "scanner": "scanner-primary", "fingerprint": "3aec76ea5c386f56", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e4aa03ca13e797b0", "level": "none", "message": {"text": "Commented-code block (15 lines) in core/packages/client/tests/3bld_engine.test.ts:7"}, "properties": {"repobilityId": "aca1568015efe637", "scanner": "scanner-primary", "fingerprint": "e4aa03ca13e797b0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-00acaf2a6b53e920", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/tests/i18n-removal-guard.test.ts:1"}, "properties": {"repobilityId": "c8da1c585d18559c", "scanner": "scanner-primary", "fingerprint": "00acaf2a6b53e920", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fec90630042cbf8a", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/tests/reg-fewest-moves-example.test.ts:7"}, "properties": {"repobilityId": "e2ee2109b2d49b18", "scanner": "scanner-primary", "fingerprint": "fec90630042cbf8a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2c72476adbeadefc", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/tests/code-tokens-drift.test.ts:1"}, "properties": {"repobilityId": "be67a126b733dd40", "scanner": "scanner-primary", "fingerprint": "2c72476adbeadefc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-45455a1fbf7305f3", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/tests/_analyzer_worker_runner.cjs:26"}, "properties": {"repobilityId": "fd11c6e34c39afe9", "scanner": "scanner-primary", "fingerprint": "45455a1fbf7305f3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-64528f42b86f0047", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/tests/roux/Solver.test.ts:56"}, "properties": {"repobilityId": "20ebeda4889b1ae3", "scanner": "scanner-primary", "fingerprint": "64528f42b86f0047", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e0d88f74b76778d", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/tests/roux/SSSecret.test.ts:74"}, "properties": {"repobilityId": "6c1e621c4535df62", "scanner": "scanner-primary", "fingerprint": "4e0d88f74b76778d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-86e51312a4e432f3", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/tests/roux/Pruner.test.ts:10"}, "properties": {"repobilityId": "6e36a75c2ff3624a", "scanner": "scanner-primary", "fingerprint": "86e51312a4e432f3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-074fca538fdb030e", "level": "none", "message": {"text": "Commented-code block (10 lines) in core/packages/client/scripts/codemod-isz-to-tr.mjs:4"}, "properties": {"repobilityId": "bcb32fcf512dd44c", "scanner": "scanner-primary", "fingerprint": "074fca538fdb030e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0bf9a755d512535e", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/scripts/codemod-data-pick.mjs:2"}, "properties": {"repobilityId": "41bc9094969cc6fa", "scanner": "scanner-primary", "fingerprint": "0bf9a755d512535e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d7b4a28afc60b561", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/scripts/codemod-anyfield-3way.mjs:2"}, "properties": {"repobilityId": "b1d4c4af87da68ca", "scanner": "scanner-primary", "fingerprint": "d7b4a28afc60b561", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ea851a03a9a28dc5", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 core/packages/client/scripts/subset-cjk-heading.py:102"}, "properties": {"repobilityId": "1d60bfad575aa509", "scanner": "scanner-primary", "fingerprint": "ea851a03a9a28dc5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6c5f033ab9a2c35e", "level": "none", "message": {"text": "Commented-code block (11 lines) in core/packages/client/scripts/codemod-datapick-cast.mjs:2"}, "properties": {"repobilityId": "6cdefcf97bbce440", "scanner": "scanner-primary", "fingerprint": "6c5f033ab9a2c35e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-409c65fb1d5a7a44", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/scripts/codemod-datapick-3way.mjs:2"}, "properties": {"repobilityId": "95f7bb043702178f", "scanner": "scanner-primary", "fingerprint": "409c65fb1d5a7a44", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-41dd0627852992cb", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/scripts/codemod-constmap-3way.mjs:2"}, "properties": {"repobilityId": "fed4e0dbf7996e2e", "scanner": "scanner-primary", "fingerprint": "41dd0627852992cb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5acb23f6f3592a3f", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/scripts/hook-detect-traditional.mjs:7"}, "properties": {"repobilityId": "48e29448dffccc99", "scanner": "scanner-primary", "fingerprint": "5acb23f6f3592a3f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3037773ae0f72f98", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/scripts/scan-gaps.mjs:2"}, "properties": {"repobilityId": "84287cef52b91f62", "scanner": "scanner-primary", "fingerprint": "3037773ae0f72f98", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a076e05c5649d0a1", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/scripts/sync-deskpet.mjs:46"}, "properties": {"repobilityId": "02a4d2fbde36d262", "scanner": "scanner-primary", "fingerprint": "a076e05c5649d0a1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b4998de72d10f2ab", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/scripts/codemod-isz-burndown.mjs:5"}, "properties": {"repobilityId": "fcafe7e7a2e7cd2c", "scanner": "scanner-primary", "fingerprint": "b4998de72d10f2ab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c62560914479e83e", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/scripts/codemod-objpick-3way.mjs:2"}, "properties": {"repobilityId": "76b2bde95a290920", "scanner": "scanner-primary", "fingerprint": "c62560914479e83e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e039d02922701492", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/scripts/codemod-thelper-3way.mjs:2"}, "properties": {"repobilityId": "8a4cd81def75c92c", "scanner": "scanner-primary", "fingerprint": "e039d02922701492", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1c04b5119d229c2c", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/scripts/predev-clean.mjs:4"}, "properties": {"repobilityId": "d977d0ebcca440e4", "scanner": "scanner-primary", "fingerprint": "1c04b5119d229c2c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-915cb67a21386e48", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/scripts/codemod-fieldpick-3way.mjs:2"}, "properties": {"repobilityId": "09643b7fb64aede9", "scanner": "scanner-primary", "fingerprint": "915cb67a21386e48", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1d90c45951bd47f3", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/scripts/revert-data-pick.mjs:2"}, "properties": {"repobilityId": "9103bdf3ca69fc29", "scanner": "scanner-primary", "fingerprint": "1d90c45951bd47f3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-321015e4b38a59a0", "level": "none", "message": {"text": "Commented-code block (11 lines) in core/packages/client/scripts/codemod-dynamic-3way.mjs:2"}, "properties": {"repobilityId": "3973f3d76a027d09", "scanner": "scanner-primary", "fingerprint": "321015e4b38a59a0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5b8ea687c962164f", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/scripts/cleanup-orphan-isz.mjs:6"}, "properties": {"repobilityId": "24b06bf4b9980815", "scanner": "scanner-primary", "fingerprint": "5b8ea687c962164f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6cc46c85b9d862ce", "level": "none", "message": {"text": "Commented-code block (10 lines) in core/packages/client/scripts/dev-safe.mjs:8"}, "properties": {"repobilityId": "5c59c9fdef5a0e69", "scanner": "scanner-primary", "fingerprint": "6cc46c85b9d862ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fcff30ce3324e6d1", "level": "none", "message": {"text": "Commented-code block (9 lines) in core/packages/client/scripts/codemod-jsx-3way.mjs:2"}, "properties": {"repobilityId": "a956ef707eca01ce", "scanner": "scanner-primary", "fingerprint": "fcff30ce3324e6d1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-734f23ed28546a1c", "level": "none", "message": {"text": "Commented-code block (10 lines) in core/packages/client/scripts/codemod-localconst-3way.mjs:2"}, "properties": {"repobilityId": "1b6070c0b5eac10e", "scanner": "scanner-primary", "fingerprint": "734f23ed28546a1c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-549c601834590c45", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/scripts/deskpet-cube/cube-engine.mjs:3"}, "properties": {"repobilityId": "cdc990945ef35ff0", "scanner": "scanner-primary", "fingerprint": "549c601834590c45", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e05c75e214b26432", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/components/FaceOverlay.ts:144"}, "properties": {"repobilityId": "be3346ac49d57f70", "scanner": "scanner-primary", "fingerprint": "e05c75e214b26432", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-98de6f92f2aac752", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/components/StageSolver.tsx:38"}, "properties": {"repobilityId": "c6376d3ad9f849e7", "scanner": "scanner-primary", "fingerprint": "98de6f92f2aac752", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf33a01c36a75784", "level": "note", "message": {"text": "Legacy-named symbol `119_v2` in core/packages/client/components/TwistySection.tsx:355"}, "properties": {"repobilityId": "1fb3c4e4aeb1faef", "scanner": "scanner-primary", "fingerprint": "bf33a01c36a75784", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-dc8dce7c1d75e30d", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/components/TwistySection.tsx:163"}, "properties": {"repobilityId": "99cb1236191dd301", "scanner": "scanner-primary", "fingerprint": "dc8dce7c1d75e30d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-941320ea4899d05c", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/components/LiquidGlassChips.tsx:40"}, "properties": {"repobilityId": "8ffa5feb63dcc9f2", "scanner": "scanner-primary", "fingerprint": "941320ea4899d05c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b8bf032ff0f6fe58", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/components/DeskPetSearch.tsx:169"}, "properties": {"repobilityId": "aa4f19196222147f", "scanner": "scanner-primary", "fingerprint": "b8bf032ff0f6fe58", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8caeae69131dfd62", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/components/PllPerformerOverlay.tsx:225"}, "properties": {"repobilityId": "f429e934bd414e6f", "scanner": "scanner-primary", "fingerprint": "8caeae69131dfd62", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f6de4f7221be612f", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/components/ThemeColorSync.tsx:3"}, "properties": {"repobilityId": "fe67728e2242e4dd", "scanner": "scanner-primary", "fingerprint": "f6de4f7221be612f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c97ebd74c0183115", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/components/DeskPet.tsx:3"}, "properties": {"repobilityId": "4578d052b371c040", "scanner": "scanner-primary", "fingerprint": "c97ebd74c0183115", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0ae4923b79b3dc65", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/components/CompCuberPicker.tsx:3"}, "properties": {"repobilityId": "7d2f312589515ce5", "scanner": "scanner-primary", "fingerprint": "0ae4923b79b3dc65", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1c927cf8b21730a5", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/components/AppearanceToggle.tsx:3"}, "properties": {"repobilityId": "1ff06c2e8ff73d81", "scanner": "scanner-primary", "fingerprint": "1c927cf8b21730a5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a380002c981aa028", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/components/AppLink.tsx:12"}, "properties": {"repobilityId": "1d9fcd4db791eda7", "scanner": "scanner-primary", "fingerprint": "a380002c981aa028", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-25e817bac36d2301", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/components/LangToggle.tsx:3"}, "properties": {"repobilityId": "d0c15ad3d0f43f58", "scanner": "scanner-primary", "fingerprint": "25e817bac36d2301", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ab903b6a432153d3", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/components/HomeLink.tsx:3"}, "properties": {"repobilityId": "182273d9ee9dcbe6", "scanner": "scanner-primary", "fingerprint": "ab903b6a432153d3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-48b0cc1b770a5959", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/components/ReconAutofill/ReconAutofill.tsx:423"}, "properties": {"repobilityId": "a73cf2e7cdc0195a", "scanner": "scanner-primary", "fingerprint": "48b0cc1b770a5959", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5d1739fc24fdde13", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/components/persons/sections/PersonPRTable.tsx:248"}, "properties": {"repobilityId": "153204ef338e5ee0", "scanner": "scanner-primary", "fingerprint": "5d1739fc24fdde13", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-15c3ada1124adfaa", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/components/persons/sections/PersonPRTable.tsx:68"}, "properties": {"repobilityId": "2be46144c9025f25", "scanner": "scanner-primary", "fingerprint": "15c3ada1124adfaa", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2036e170064109a8", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/components/persons/sections/results/ByEventView.tsx:2"}, "properties": {"repobilityId": "77691f8a3f7c751f", "scanner": "scanner-primary", "fingerprint": "2036e170064109a8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-137e402e51f1a0b2", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/components/persons/sections/results/AttemptEditPopover.tsx:2"}, "properties": {"repobilityId": "7b04643dc5073599", "scanner": "scanner-primary", "fingerprint": "137e402e51f1a0b2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2fde416bcce7d70a", "level": "none", "message": {"text": "Commented-code block (9 lines) in core/packages/client/components/persons/logic/milestones.ts:3"}, "properties": {"repobilityId": "6ebd29ba23aed1e5", "scanner": "scanner-primary", "fingerprint": "2fde416bcce7d70a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4041a811e7474376", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/components/wca-stats/SorRace.tsx:3"}, "properties": {"repobilityId": "30e7e97024a6cddf", "scanner": "scanner-primary", "fingerprint": "4041a811e7474376", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6d46efa15069c72b", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/robots.ts:3"}, "properties": {"repobilityId": "3f9430cfd0767dcb", "scanner": "scanner-primary", "fingerprint": "6d46efa15069c72b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-affda74a4ffc5710", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/sitemap.ts:48"}, "properties": {"repobilityId": "9de4a341d760052a", "scanner": "scanner-primary", "fingerprint": "affda74a4ffc5710", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c08412278533aca3", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/cubing-chunks/[...slug]/route.ts:6"}, "properties": {"repobilityId": "16c951fa5179eadd", "scanner": "scanner-primary", "fingerprint": "c08412278533aca3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bb89acaeddf2150d", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/api/comp/[slug]/route.ts:7"}, "properties": {"repobilityId": "fd189d065ea9a3fc", "scanner": "scanner-primary", "fingerprint": "bb89acaeddf2150d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f0665244deb07630", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/scramble/gen/useCompSteps.ts:61"}, "properties": {"repobilityId": "de935d91e8ccf020", "scanner": "scanner-primary", "fingerprint": "f0665244deb07630", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-144f61df840adc30", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/scramble/gen/TNoodleMode.tsx:330"}, "properties": {"repobilityId": "e80c42cc27912ac4", "scanner": "scanner-primary", "fingerprint": "144f61df840adc30", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-724482a47be6ac98", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/scramble/gen/_wca-round.ts:12"}, "properties": {"repobilityId": "7aac72b31aad55ba", "scanner": "scanner-primary", "fingerprint": "724482a47be6ac98", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cfe1d10a16eff947", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/scramble/gen/_tnoodle-pdf.ts:475"}, "properties": {"repobilityId": "469281b98fc8dbd4", "scanner": "scanner-primary", "fingerprint": "cfe1d10a16eff947", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e1b5933c5668fd86", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/scramble/gen/_tnoodle-pdf.ts:136"}, "properties": {"repobilityId": "723374fb463a2b05", "scanner": "scanner-primary", "fingerprint": "e1b5933c5668fd86", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-09d1de80468757a1", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/scramble/analyzer/page.tsx:123"}, "properties": {"repobilityId": "31e8b73c1fdd920c", "scanner": "scanner-primary", "fingerprint": "09d1de80468757a1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3d9944f8ad0f2c2b", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/scramble/solver/page.tsx:288"}, "properties": {"repobilityId": "9fbfca723a3059f5", "scanner": "scanner-primary", "fingerprint": "3d9944f8ad0f2c2b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-25d45b1bd7529066", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/scramble/stats/page.tsx:157"}, "properties": {"repobilityId": "e38e14f788b6f470", "scanner": "scanner-primary", "fingerprint": "25d45b1bd7529066", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f512128152516842", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/scramble/stats/_components/ScrambleLengthView.tsx:50"}, "properties": {"repobilityId": "74c7404bbe928f92", "scanner": "scanner-primary", "fingerprint": "f512128152516842", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2560fd584e72289e", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/alg/[puzzle]/page.tsx:1"}, "properties": {"repobilityId": "b0b99672e234de1c", "scanner": "scanner-primary", "fingerprint": "2560fd584e72289e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-754b884214e25755", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/alg/[puzzle]/[set]/page.tsx:1"}, "properties": {"repobilityId": "29532eed38a16969", "scanner": "scanner-primary", "fingerprint": "754b884214e25755", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-16f5d3b917d99d00", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/frame-count/FrameCountPage.tsx:14"}, "properties": {"repobilityId": "ba198ad78d787b29", "scanner": "scanner-primary", "fingerprint": "16f5d3b917d99d00", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b17b0e915f0ff164", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/frame-count/useFrameBuffer.ts:319"}, "properties": {"repobilityId": "993d1572e67b1a77", "scanner": "scanner-primary", "fingerprint": "b17b0e915f0ff164", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-204c61a98ba7ad1d", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/calc/_components/engine/calc_engine.ts:507"}, "properties": {"repobilityId": "49f46bd5dd7b1435", "scanner": "scanner-primary", "fingerprint": "204c61a98ba7ad1d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-722283aaf1941168", "level": "note", "message": {"text": "Legacy-named symbol `colpi_lang_filter_v1` in core/packages/client/app/[lang]/memo/colpi/_components/ColpiClient.tsx:40"}, "properties": {"repobilityId": "ca6e3f03cfea8366", "scanner": "scanner-primary", "fingerprint": "722283aaf1941168", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-388bd7276e15b83c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/language/wasm/page.tsx:279"}, "properties": {"repobilityId": "dd408e3ae609b1dc", "scanner": "scanner-primary", "fingerprint": "388bd7276e15b83c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-54e276766d37a31f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/architecture/flow/page.tsx:80"}, "properties": {"repobilityId": "f2074f132bba72fa", "scanner": "scanner-primary", "fingerprint": "54e276766d37a31f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ffcf47d7cbb41ee4", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/architecture/_components/PageLoadFlow.tsx:174"}, "properties": {"repobilityId": "84e45538dbb3cb1a", "scanner": "scanner-primary", "fingerprint": "ffcf47d7cbb41ee4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c932a2dc0c0eec32", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/architecture/_components/ArchSvgs.tsx:132"}, "properties": {"repobilityId": "9f94646da2981ded", "scanner": "scanner-primary", "fingerprint": "c932a2dc0c0eec32", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-405f3937aba0fa5f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/stack/_tools/hono.tsx:100"}, "properties": {"repobilityId": "5f0320cc7af9a43e", "scanner": "scanner-primary", "fingerprint": "405f3937aba0fa5f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-02a433d5ad19b1e9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/stack/_tools/react-router.tsx:130"}, "properties": {"repobilityId": "3566e21c29e3744b", "scanner": "scanner-primary", "fingerprint": "02a433d5ad19b1e9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-62bf8d3f828de6be", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/code/stack/[slug]/page.tsx:1"}, "properties": {"repobilityId": "6207bd0a18d8e9b9", "scanner": "scanner-primary", "fingerprint": "62bf8d3f828de6be", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-848ec69452530546", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/code/solvers/page.tsx:81"}, "properties": {"repobilityId": "ca52f437c01e4f95", "scanner": "scanner-primary", "fingerprint": "848ec69452530546", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-de61c31cd606012d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/solvers/page.tsx:264"}, "properties": {"repobilityId": "4cf9619cb74e210b", "scanner": "scanner-primary", "fingerprint": "de61c31cd606012d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1b8bdb9fd4121f31", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/code/utils/_catalog.tsx:134"}, "properties": {"repobilityId": "8fafceb06231b679", "scanner": "scanner-primary", "fingerprint": "1b8bdb9fd4121f31", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d9a1f09ae3f62226", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/code/algorithms/kociemba/page.tsx:213"}, "properties": {"repobilityId": "00229b5d66e2a43b", "scanner": "scanner-primary", "fingerprint": "d9a1f09ae3f62226", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cbc620af78573f3e", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/code/tokens/_tokens.ts:1"}, "properties": {"repobilityId": "c717d7adff587941", "scanner": "scanner-primary", "fingerprint": "cbc620af78573f3e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9c64da9a4fceccda", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/visualcube/page.tsx:837"}, "properties": {"repobilityId": "713d57e410e3e427", "scanner": "scanner-primary", "fingerprint": "9c64da9a4fceccda", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cfdf382669c1c7e7", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/site/nav_sites_api.ts:29"}, "properties": {"repobilityId": "5fc530342d657c84", "scanner": "scanner-primary", "fingerprint": "cfdf382669c1c7e7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7897516c03f96b52", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/why-cube/_StickyToc.tsx:3"}, "properties": {"repobilityId": "6d5a5984d6cedd0f", "scanner": "scanner-primary", "fingerprint": "7897516c03f96b52", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c4e006240a5963c4", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/why-cube/_LiveHero.tsx:3"}, "properties": {"repobilityId": "51624befcfa1d0d1", "scanner": "scanner-primary", "fingerprint": "c4e006240a5963c4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ef84cee934ff068", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/why-cube/_ScaleLadder.tsx:3"}, "properties": {"repobilityId": "9eae89ca6c489d2a", "scanner": "scanner-primary", "fingerprint": "3ef84cee934ff068", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-76cf1d8c09bfb552", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/why-cube/page.tsx:7"}, "properties": {"repobilityId": "575a0077401d5324", "scanner": "scanner-primary", "fingerprint": "76cf1d8c09bfb552", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8bd369110a1a6758", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/why-cube/_GodsNumberDist.tsx:3"}, "properties": {"repobilityId": "bbc0d4be849786e0", "scanner": "scanner-primary", "fingerprint": "8bd369110a1a6758", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-801d1a2d94d9dc72", "level": "note", "message": {"text": "Legacy-named symbol `event_picker_v1` in core/packages/client/app/[lang]/battle/_components/engine/battle_store.ts:330"}, "properties": {"repobilityId": "277ad86b1fe91e63", "scanner": "scanner-primary", "fingerprint": "801d1a2d94d9dc72", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f6b5369a976c90d9", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/person/[wcaId]/PersonHubClient.tsx:3"}, "properties": {"repobilityId": "86e6b2f3317060b4", "scanner": "scanner-primary", "fingerprint": "f6b5369a976c90d9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cbbaf3804f4814a5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/timer/_lib/marks.ts:42"}, "properties": {"repobilityId": "90c028fb9a7fb67b", "scanner": "scanner-primary", "fingerprint": "cbbaf3804f4814a5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7e7ed8a39b3e80c2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/timer/_lib/scramble/wca_pool.ts:136"}, "properties": {"repobilityId": "480948dec1850be1", "scanner": "scanner-primary", "fingerprint": "7e7ed8a39b3e80c2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b878797f03437042", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/cube/cfop_detect.ts:63"}, "properties": {"repobilityId": "0b647748c45bb0ea", "scanner": "scanner-primary", "fingerprint": "b878797f03437042", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-83f68220a712faab", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/cube/state.ts:517"}, "properties": {"repobilityId": "3e8cb3f645bba898", "scanner": "scanner-primary", "fingerprint": "83f68220a712faab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ca40f173eddd9718", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/cube/megaminx_state.ts:163"}, "properties": {"repobilityId": "7ea49e33aa8af06f", "scanner": "scanner-primary", "fingerprint": "ca40f173eddd9718", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7a695b8a2d1b4165", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/timer/_lib/components/cfop_recognize.ts:393"}, "properties": {"repobilityId": "6b31d6e159f00036", "scanner": "scanner-primary", "fingerprint": "7a695b8a2d1b4165", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f199d4457fe33fd4", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/timer/_lib/solver/bld_helper.ts:378"}, "properties": {"repobilityId": "e64cdb70476246af", "scanner": "scanner-primary", "fingerprint": "f199d4457fe33fd4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bc4aaa3691162a42", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/solver/cross.ts:80"}, "properties": {"repobilityId": "043d006602cb9d4e", "scanner": "scanner-primary", "fingerprint": "bc4aaa3691162a42", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-71663b4a95ab7ed1", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/solver/cube2x2.ts:137"}, "properties": {"repobilityId": "4d55b9872b820a64", "scanner": "scanner-primary", "fingerprint": "71663b4a95ab7ed1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0f729c58e01ad6ef", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/solver/methods.ts:381"}, "properties": {"repobilityId": "f634af813c1d6f8d", "scanner": "scanner-primary", "fingerprint": "0f729c58e01ad6ef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-58e87b6d394d2f42", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/bluetooth/gan_v3.ts:405"}, "properties": {"repobilityId": "050d78856cb69a6b", "scanner": "scanner-primary", "fingerprint": "58e87b6d394d2f42", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c6a691d15045791c", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/timer/_lib/bluetooth/gan_v4.ts:412"}, "properties": {"repobilityId": "c9c840b090f7ffa5", "scanner": "scanner-primary", "fingerprint": "c6a691d15045791c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-96738c9347cab143", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/timer/_lib/reconstruct/slice.ts:113"}, "properties": {"repobilityId": "f06e4a8079d8ec97", "scanner": "scanner-primary", "fingerprint": "96738c9347cab143", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f127bdea7aeb5536", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/timer/_lib/storage/cloud.ts:50"}, "properties": {"repobilityId": "21434e23d77496f5", "scanner": "scanner-primary", "fingerprint": "f127bdea7aeb5536", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-976fba344b5c1247", "level": "none", "message": {"text": "Commented-code block (10 lines) in core/packages/client/app/[lang]/timer/_shell/SoloView.tsx:264"}, "properties": {"repobilityId": "5f04d8e22aef4443", "scanner": "scanner-primary", "fingerprint": "976fba344b5c1247", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d21a7924059920e2", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/wca/about/[id]/page.tsx:1"}, "properties": {"repobilityId": "6c21291a0c628a35", "scanner": "scanner-primary", "fingerprint": "d21a7924059920e2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a510af1452aceab3", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/wca/comp/page.tsx:1372"}, "properties": {"repobilityId": "1992b192b5aa7867", "scanner": "scanner-primary", "fingerprint": "a510af1452aceab3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ed739e42c665a5eb", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/wca/comp/_components/use_calendar_data.ts:29"}, "properties": {"repobilityId": "63cfcc4b702fe5dc", "scanner": "scanner-primary", "fingerprint": "ed739e42c665a5eb", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-14fe0bf5b1585472", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/wca/comp/[slug]/page.tsx:1"}, "properties": {"repobilityId": "f66729b43b231d6b", "scanner": "scanner-primary", "fingerprint": "14fe0bf5b1585472", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e75de05172be1e1f", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/wca/comp/[slug]/CompDetailPage.tsx:376"}, "properties": {"repobilityId": "a5d090f34e2f7086", "scanner": "scanner-primary", "fingerprint": "e75de05172be1e1f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c699f19fee35838f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx:772"}, "properties": {"repobilityId": "b20e2f486d510ae9", "scanner": "scanner-primary", "fingerprint": "c699f19fee35838f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e9149567201f4a57", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/wca/globe/_lib/trail_video.ts:1"}, "properties": {"repobilityId": "8c165bb25df9fa72", "scanner": "scanner-primary", "fingerprint": "e9149567201f4a57", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-911f495491c0c735", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/wca/[statId]/WcaStatClient.tsx:1009"}, "properties": {"repobilityId": "57f9c486e27102bd", "scanner": "scanner-primary", "fingerprint": "911f495491c0c735", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-fe2616d86d290473", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/wca/[statId]/page.tsx:1"}, "properties": {"repobilityId": "aa3c9519b4be7e64", "scanner": "scanner-primary", "fingerprint": "fe2616d86d290473", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a0dcc9fb0b322ddc", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/wca/viz/_components/VizCanvas.tsx:2"}, "properties": {"repobilityId": "f013eeba4a7f4a1c", "scanner": "scanner-primary", "fingerprint": "a0dcc9fb0b322ddc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6c01b99a05abe289", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/wca/persons/[wcaId]/page.tsx:3"}, "properties": {"repobilityId": "ce65f39820e09934", "scanner": "scanner-primary", "fingerprint": "6c01b99a05abe289", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fcb5141d123f10e0", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/wca/prediction/_components/theoretical_limits.ts:4"}, "properties": {"repobilityId": "6e60edd9108f7570", "scanner": "scanner-primary", "fingerprint": "fcb5141d123f10e0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7b5f0875b428d244", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/wca/prediction/_components/theory_data.ts:179"}, "properties": {"repobilityId": "7cc21fb9d1c314b8", "scanner": "scanner-primary", "fingerprint": "7b5f0875b428d244", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1c5fe7044ba8fdc1", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/wca/prediction/_components/models.ts:1"}, "properties": {"repobilityId": "8d312ddafd35d23c", "scanner": "scanner-primary", "fingerprint": "1c5fe7044ba8fdc1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-959d91aa14618c0a", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/recon/page.tsx:79"}, "properties": {"repobilityId": "859a1ef5cf9306b0", "scanner": "scanner-primary", "fingerprint": "959d91aa14618c0a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0729643f26821354", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/recon/submit/ReconSubmitForm.tsx:403"}, "properties": {"repobilityId": "3523d0a07c94fbed", "scanner": "scanner-primary", "fingerprint": "0729643f26821354", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-881f43e2808c62d3", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/[lang]/recon/submit/ReconSubmitForm.tsx:628"}, "properties": {"repobilityId": "4d2b46330bc41869", "scanner": "scanner-primary", "fingerprint": "881f43e2808c62d3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ef5b1055b132025a", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/notation/NotationMove.tsx:5"}, "properties": {"repobilityId": "593293723347bcd6", "scanner": "scanner-primary", "fingerprint": "ef5b1055b132025a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-01cbce9b19ce50b2", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/one-handed/page.tsx:5"}, "properties": {"repobilityId": "185171dc17b39e4b", "scanner": "scanner-primary", "fingerprint": "01cbce9b19ce50b2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8fdafd4932ac717a", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/multi-blind/page.tsx:3"}, "properties": {"repobilityId": "cf312e03ca1010c8", "scanner": "scanner-primary", "fingerprint": "8fdafd4932ac717a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9f22f506c4fb9eb2", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/puzzles/page.tsx:3"}, "properties": {"repobilityId": "00bb123ce7b7875a", "scanner": "scanner-primary", "fingerprint": "9f22f506c4fb9eb2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b34b553e67b29732", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/scrambling/page.tsx:3"}, "properties": {"repobilityId": "946ebee8e312bed7", "scanner": "scanner-primary", "fingerprint": "b34b553e67b29732", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e975574be6696109", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/regulation/events/page.tsx:3"}, "properties": {"repobilityId": "d705e841cebe5241", "scanner": "scanner-primary", "fingerprint": "e975574be6696109", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d948a50cd79c95ce", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/blindfolded/page.tsx:3"}, "properties": {"repobilityId": "3a49b651e03b353b", "scanner": "scanner-primary", "fingerprint": "d948a50cd79c95ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f22a1677efdc79a8", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/regulation/officials/page.tsx:3"}, "properties": {"repobilityId": "0383cabb474f5d52", "scanner": "scanner-primary", "fingerprint": "f22a1677efdc79a8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9f58689bd02eb76f", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/regulation/incidents/page.tsx:5"}, "properties": {"repobilityId": "7ddee6e14036ce08", "scanner": "scanner-primary", "fingerprint": "9f58689bd02eb76f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1271cfdb590b20dd", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/regulation/defects/page.tsx:5"}, "properties": {"repobilityId": "3922cf3597dcd2be", "scanner": "scanner-primary", "fingerprint": "1271cfdb590b20dd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-68fa395d8d482373", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/competitors/page.tsx:3"}, "properties": {"repobilityId": "767f9441bcbc2fe8", "scanner": "scanner-primary", "fingerprint": "68fa395d8d482373", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c5dd724ab45e3f7b", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/regulation/solved-state/page.tsx:3"}, "properties": {"repobilityId": "74e494fa4566877b", "scanner": "scanner-primary", "fingerprint": "c5dd724ab45e3f7b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2bb776af29cbef44", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/regulation/speed-solving/page.tsx:3"}, "properties": {"repobilityId": "d1d2016c94377c0d", "scanner": "scanner-primary", "fingerprint": "2bb776af29cbef44", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c837248ef92b00fe", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/regulation/head-to-head/page.tsx:5"}, "properties": {"repobilityId": "94e2240445df8017", "scanner": "scanner-primary", "fingerprint": "c837248ef92b00fe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8e35a455ad30f99d", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/regulation/fewest-moves/page.tsx:5"}, "properties": {"repobilityId": "854f026cbca1c0ce", "scanner": "scanner-primary", "fingerprint": "8e35a455ad30f99d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-13c43895825cca5c", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/regulation/_components/FullClauses.tsx:3"}, "properties": {"repobilityId": "58b538efac010b9f", "scanner": "scanner-primary", "fingerprint": "13c43895825cca5c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7d5c56eae58f4bf3", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/regulation/environment/page.tsx:3"}, "properties": {"repobilityId": "5ca2c5ac80ff205f", "scanner": "scanner-primary", "fingerprint": "7d5c56eae58f4bf3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f775738d4c57639d", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/math/god/_components/TwoPhaseDemo.tsx:137"}, "properties": {"repobilityId": "1dc98c8b40f18dee", "scanner": "scanner-primary", "fingerprint": "f775738d4c57639d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c8bd9d70b78e65a2", "level": "none", "message": {"text": "Commented-code block (9 lines) in core/packages/client/app/[lang]/math/group/_components/cube_state.ts:288"}, "properties": {"repobilityId": "4f8a22e28eb3247f", "scanner": "scanner-primary", "fingerprint": "c8bd9d70b78e65a2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fbb7d10d2d9f36e9", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/math/group/_components/sections/FriezeGroups.tsx:384"}, "properties": {"repobilityId": "22c4a88de903b213", "scanner": "scanner-primary", "fingerprint": "fbb7d10d2d9f36e9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-863dd9ecb0cdb3a6", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/group/_components/sections/PolyaCubeColorings.tsx:152"}, "properties": {"repobilityId": "bc18cf0fb04894c2", "scanner": "scanner-primary", "fingerprint": "863dd9ecb0cdb3a6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d1811343c60fbcf3", "level": "none", "message": {"text": "Commented-code block (15 lines) in core/packages/client/app/[lang]/math/group/_components/sections/QuaternionGroup.tsx:96"}, "properties": {"repobilityId": "e25696bfea362e8e", "scanner": "scanner-primary", "fingerprint": "d1811343c60fbcf3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d3d93c0477c0c325", "level": "none", "message": {"text": "Commented-code block (17 lines) in core/packages/client/app/[lang]/math/group/_components/sections/RepresentationBasics.tsx:228"}, "properties": {"repobilityId": "8458217d6cdbd436", "scanner": "scanner-primary", "fingerprint": "d3d93c0477c0c325", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-748e4334d19ad5f9", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/group/_components/sections/ClassEquation.tsx:127"}, "properties": {"repobilityId": "4a5e59e75f95900f", "scanner": "scanner-primary", "fingerprint": "748e4334d19ad5f9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-85afa44caaece06e", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/group/_components/sections/ExpanderRamanujan.tsx:30"}, "properties": {"repobilityId": "01335b4dd9cbaccb", "scanner": "scanner-primary", "fingerprint": "85afa44caaece06e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-584ac9256973ec67", "level": "none", "message": {"text": "Commented-code block (9 lines) in core/packages/client/app/[lang]/math/group/_components/sections/DihedralGroups.tsx:7"}, "properties": {"repobilityId": "d4950ed5cb734e2e", "scanner": "scanner-primary", "fingerprint": "584ac9256973ec67", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-89b66a38b67b378a", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/math/group/_components/sections/OrbitStabilizer.tsx:192"}, "properties": {"repobilityId": "a3a842f2704cde0f", "scanner": "scanner-primary", "fingerprint": "89b66a38b67b378a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e1b0c2298d171b22", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/group/_components/sections/GaloisConnection.tsx:902"}, "properties": {"repobilityId": "01c56435e2395c7f", "scanner": "scanner-primary", "fingerprint": "e1b0c2298d171b22", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5a13c9063629b167", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/math/group/_components/sections/SemidirectProduct.tsx:517"}, "properties": {"repobilityId": "9e44da27835f0c1a", "scanner": "scanner-primary", "fingerprint": "5a13c9063629b167", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4b8af40f0f2c0f2a", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/math/demigod/_components/DistanceHistogram.tsx:13"}, "properties": {"repobilityId": "5fd304a4729719bd", "scanner": "scanner-primary", "fingerprint": "4b8af40f0f2c0f2a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ce7fe25b872449f0", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/sim/PlayerControls.tsx:270"}, "properties": {"repobilityId": "c89ed714d1823cf4", "scanner": "scanner-primary", "fingerprint": "ce7fe25b872449f0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a35948d43119c8d3", "level": "note", "message": {"text": "Legacy-named symbol `q_old` in core/packages/client/app/[lang]/sim/cuber/instanced.ts:369"}, "properties": {"repobilityId": "25433a80e8fdad36", "scanner": "scanner-primary", "fingerprint": "a35948d43119c8d3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c864b135039bd972", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/sim/cuber/group.ts:95"}, "properties": {"repobilityId": "969c31f82d3a5db0", "scanner": "scanner-primary", "fingerprint": "c864b135039bd972", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7bebc4c407f2c57a", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/sim/cuber/world.ts:163"}, "properties": {"repobilityId": "ba695cb4f103bcdc", "scanner": "scanner-primary", "fingerprint": "7bebc4c407f2c57a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c087caf57c8bad37", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/sim/cuber/sq1/sq1State.ts:78"}, "properties": {"repobilityId": "7cc5a0f2a349cba7", "scanner": "scanner-primary", "fingerprint": "c087caf57c8bad37", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b30ee3780983fad3", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/sim/cuber/sq1/Sq1Twister.ts:36"}, "properties": {"repobilityId": "3f77c44e2dca4b21", "scanner": "scanner-primary", "fingerprint": "b30ee3780983fad3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0c0aaa26858e6dac", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/[puzzle]/page.tsx:1"}, "properties": {"repobilityId": "9d482a6ccbd3bb6e", "scanner": "scanner-primary", "fingerprint": "0c0aaa26858e6dac", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7e83e49de36ec782", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/[puzzle]/[set]/page.tsx:1"}, "properties": {"repobilityId": "ca4e03184903677a", "scanner": "scanner-primary", "fingerprint": "7e83e49de36ec782", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-115f8b4810611799", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/[puzzle]/[set]/run/page.tsx:1"}, "properties": {"repobilityId": "8eb63117055dd116", "scanner": "scanner-primary", "fingerprint": "115f8b4810611799", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-42281b49bb5895cf", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/roux/page.tsx:3"}, "properties": {"repobilityId": "e1938a33046a444b", "scanner": "scanner-primary", "fingerprint": "42281b49bb5895cf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-77751968804a6590", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/comm/page.tsx:10"}, "properties": {"repobilityId": "00b7b10a09c1f892", "scanner": "scanner-primary", "fingerprint": "77751968804a6590", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-54a0a918facdf4a6", "level": "none", "message": {"text": "Commented-code block (13 lines) in core/packages/client/app/[lang]/trainer/3bld/ltct/page.tsx:5"}, "properties": {"repobilityId": "0bcfaaeae7b2bd97", "scanner": "scanner-primary", "fingerprint": "54a0a918facdf4a6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-610746bcb1c9bb7b", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/3bld/resources/page.tsx:6"}, "properties": {"repobilityId": "8768599e43be7454", "scanner": "scanner-primary", "fingerprint": "610746bcb1c9bb7b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e29f1e3d6cd72f88", "level": "none", "message": {"text": "Commented-code block (9 lines) in core/packages/client/app/[lang]/trainer/3bld/memo/page.tsx:6"}, "properties": {"repobilityId": "ab10d5bc6a3f48df", "scanner": "scanner-primary", "fingerprint": "e29f1e3d6cd72f88", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3d167ec6dc471a4a", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/3bld/parity/page.tsx:3"}, "properties": {"repobilityId": "8532837a8562b833", "scanner": "scanner-primary", "fingerprint": "3d167ec6dc471a4a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0a4fe6e761875723", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/timer/page.tsx:8"}, "properties": {"repobilityId": "1c53aec5134e4825", "scanner": "scanner-primary", "fingerprint": "0a4fe6e761875723", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0d221c9f786b00ed", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/readme/page.tsx:3"}, "properties": {"repobilityId": "8c878b22b007b23a", "scanner": "scanner-primary", "fingerprint": "0d221c9f786b00ed", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6206e5a41c476c08", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/_lib/lettering.ts:8"}, "properties": {"repobilityId": "898dda5252ceac96", "scanner": "scanner-primary", "fingerprint": "6206e5a41c476c08", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1418e247d48f9997", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/_lib/facelet-model.ts:3"}, "properties": {"repobilityId": "4218fb80440e0aee", "scanner": "scanner-primary", "fingerprint": "1418e247d48f9997", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa527fce22dbd7b6", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/_lib/scheme-presets.ts:4"}, "properties": {"repobilityId": "27f2ef6683d5a7b1", "scanner": "scanner-primary", "fingerprint": "aa527fce22dbd7b6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e9270ba503abb9f", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/3bld/_components/TwoTwoTrainer.tsx:3"}, "properties": {"repobilityId": "ac4e10d3abe9b47f", "scanner": "scanner-primary", "fingerprint": "4e9270ba503abb9f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-994866f832843768", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/3bld/_components/CodeTrainer.tsx:3"}, "properties": {"repobilityId": "e74043bfb68ec731", "scanner": "scanner-primary", "fingerprint": "994866f832843768", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dda23fabdb5e5a26", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/3bld/_components/FloatTrainer.tsx:8"}, "properties": {"repobilityId": "4247928e3a3e1c3d", "scanner": "scanner-primary", "fingerprint": "dda23fabdb5e5a26", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bbef0f71a018e139", "level": "none", "message": {"text": "Commented-code block (11 lines) in core/packages/client/app/[lang]/trainer/3bld/helper/page.tsx:5"}, "properties": {"repobilityId": "224c4efe2336809d", "scanner": "scanner-primary", "fingerprint": "bbef0f71a018e139", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac582d42331222de", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/skewb/page.tsx:3"}, "properties": {"repobilityId": "bff539e9ea14f7b8", "scanner": "scanner-primary", "fingerprint": "ac582d42331222de", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7f3cc92351c308a4", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/skewb/_lib/algs.ts:1"}, "properties": {"repobilityId": "91f7fe78ec7945f1", "scanner": "scanner-primary", "fingerprint": "7f3cc92351c308a4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e8803586aede2c4", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/skewb/_lib/useSkewbTrainer.ts:3"}, "properties": {"repobilityId": "e38927cf9bd67541", "scanner": "scanner-primary", "fingerprint": "4e8803586aede2c4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac86345fb8219abb", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/trainer/skewb/_lib/scramble.ts:30"}, "properties": {"repobilityId": "c5969c85cfcc6be3", "scanner": "scanner-primary", "fingerprint": "ac86345fb8219abb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5912243756e5cab5", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/_roux/RouxTrainer.tsx:3"}, "properties": {"repobilityId": "34021205eba736a2", "scanner": "scanner-primary", "fingerprint": "5912243756e5cab5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-17bcaca2f860de2e", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/_roux/i18n.ts:5"}, "properties": {"repobilityId": "04fcae7f0b6b2305", "scanner": "scanner-primary", "fingerprint": "17bcaca2f860de2e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bcc1bce07f57d998", "level": "none", "message": {"text": "Commented-code block (10 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/CubeSim.tsx:3"}, "properties": {"repobilityId": "1a41caa9fc5fe34f", "scanner": "scanner-primary", "fingerprint": "bcc1bce07f57d998", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-11e386bde81c12a3", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/FavListView.tsx:3"}, "properties": {"repobilityId": "633c7f4e7c508528", "scanner": "scanner-primary", "fingerprint": "11e386bde81c12a3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dd2186b45c8cd25d", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/CaseSelectView.tsx:5"}, "properties": {"repobilityId": "19af7f55ed243cb0", "scanner": "scanner-primary", "fingerprint": "dd2186b45c8cd25d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-57dbf1535e180f60", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/analyzer.worker.ts:1"}, "properties": {"repobilityId": "7b73a9ce17a5b3ea", "scanner": "scanner-primary", "fingerprint": "57dbf1535e180f60", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2353bf8b47d1e39f", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/TrackerView.tsx:3"}, "properties": {"repobilityId": "670ec450cfe5bbfd", "scanner": "scanner-primary", "fingerprint": "2353bf8b47d1e39f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9b8593b948c46f09", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/BlockTrainerView.tsx:3"}, "properties": {"repobilityId": "98065dc6777ba36b", "scanner": "scanner-primary", "fingerprint": "9b8593b948c46f09", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a0483d381fc98c5b", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/PanoramaView.tsx:3"}, "properties": {"repobilityId": "cbd0d76f859ea6ad", "scanner": "scanner-primary", "fingerprint": "a0483d381fc98c5b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2d546d64e0cc4ab4", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/CmllTrainerView.tsx:6"}, "properties": {"repobilityId": "049b3c2e27daf607", "scanner": "scanner-primary", "fingerprint": "2d546d64e0cc4ab4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9456d237fe87a5ab", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/ScrambleInputView.tsx:3"}, "properties": {"repobilityId": "70d6d100730e5014", "scanner": "scanner-primary", "fingerprint": "9456d237fe87a5ab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ced4fa85fd80006d", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/AnalyzerView.tsx:3"}, "properties": {"repobilityId": "038a756f442370ba", "scanner": "scanner-primary", "fingerprint": "ced4fa85fd80006d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e915206021656bfb", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/CaseVisualizer.tsx:3"}, "properties": {"repobilityId": "e067b9858348acd8", "scanner": "scanner-primary", "fingerprint": "e915206021656bfb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-64e90b7f69f4fa9a", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/[lang]/trainer/_roux/_components/ui.tsx:6"}, "properties": {"repobilityId": "ed503c728d90490c", "scanner": "scanner-primary", "fingerprint": "64e90b7f69f4fa9a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-464036a0db79aa3e", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/app/tools/[...slug]/route.ts:47"}, "properties": {"repobilityId": "6be143809a4f13d3", "scanner": "scanner-primary", "fingerprint": "464036a0db79aa3e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2fdf30912fe205bb", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/app/tools/[...slug]/route.ts:65"}, "properties": {"repobilityId": "1cdad1c73bad1420", "scanner": "scanner-primary", "fingerprint": "2fdf30912fe205bb", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-498cad969a2a2259", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/app/stats/[...slug]/route.ts:1"}, "properties": {"repobilityId": "082ea830d85af6e4", "scanner": "scanner-primary", "fingerprint": "498cad969a2a2259", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-452b9785c06ff3e3", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/feedback-api.ts:53"}, "properties": {"repobilityId": "50f785d7f4a2524e", "scanner": "scanner-primary", "fingerprint": "452b9785c06ff3e3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-896c81e8fdf1317a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/wca-pb.ts:46"}, "properties": {"repobilityId": "75837bebc8fa0b7d", "scanner": "scanner-primary", "fingerprint": "896c81e8fdf1317a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8eeecf32edef4741", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/lib/deskpet-gallery.ts:22"}, "properties": {"repobilityId": "daab3806e137dff2", "scanner": "scanner-primary", "fingerprint": "8eeecf32edef4741", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c8cb7ec9c55c431d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/membership-api.ts:66"}, "properties": {"repobilityId": "6e0012f788304e55", "scanner": "scanner-primary", "fingerprint": "c8cb7ec9c55c431d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-33746cda177a47dc", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/colpi-api.ts:42"}, "properties": {"repobilityId": "fa58ff42f5e9570d", "scanner": "scanner-primary", "fingerprint": "33746cda177a47dc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5715b93f573ba5ce", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/lib/wca-person-api.ts:161"}, "properties": {"repobilityId": "5f914eb7bd664441", "scanner": "scanner-primary", "fingerprint": "5715b93f573ba5ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-edfb5ec0fee2e299", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/wca-person-api.ts:54"}, "properties": {"repobilityId": "aca16c665893e85f", "scanner": "scanner-primary", "fingerprint": "edfb5ec0fee2e299", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c28acfd6184bcd37", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/client/lib/pll-fingertricks.ts:7"}, "properties": {"repobilityId": "537b24b174adc13e", "scanner": "scanner-primary", "fingerprint": "c28acfd6184bcd37", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d3f8989e3f490ff5", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/lib/theme.ts:3"}, "properties": {"repobilityId": "a066f2f1007c2a5a", "scanner": "scanner-primary", "fingerprint": "d3f8989e3f490ff5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e34ccae4cfb4dfc", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/lib/zbls_lookup.ts:90"}, "properties": {"repobilityId": "47de1787fa9376d2", "scanner": "scanner-primary", "fingerprint": "4e34ccae4cfb4dfc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0cd60c41e354c3a4", "level": "note", "message": {"text": "Legacy-named symbol `baseOld` in core/packages/client/lib/result-watch-api.ts:361"}, "properties": {"repobilityId": "a9181da9fa29f986", "scanner": "scanner-primary", "fingerprint": "0cd60c41e354c3a4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-842dcbf648a7b6cd", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/result-watch-api.ts:86"}, "properties": {"repobilityId": "e7567930794945d3", "scanner": "scanner-primary", "fingerprint": "842dcbf648a7b6cd", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7e94b4795f94c004", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/lib/city-display.ts:1"}, "properties": {"repobilityId": "3bd7ee0aa957548e", "scanner": "scanner-primary", "fingerprint": "7e94b4795f94c004", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5b7a2e45de81edf0", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/puzzle-distribution.ts:37"}, "properties": {"repobilityId": "5f2c8435673045aa", "scanner": "scanner-primary", "fingerprint": "5b7a2e45de81edf0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-659704acefde3764", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/lib/country-continents.ts:1"}, "properties": {"repobilityId": "e62d681b5148cc68", "scanner": "scanner-primary", "fingerprint": "659704acefde3764", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-300b3de12ecf5b9b", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/lib/stats-base.ts:1"}, "properties": {"repobilityId": "127ea5e800d8c7e1", "scanner": "scanner-primary", "fingerprint": "300b3de12ecf5b9b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7a1f9e2e4b390582", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/recon-api.ts:22"}, "properties": {"repobilityId": "3336ac3e0a6cbeb1", "scanner": "scanner-primary", "fingerprint": "7a1f9e2e4b390582", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-dce47c105eba41fa", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/lib/scramble-variants.ts:68"}, "properties": {"repobilityId": "a2a481464bdc1d63", "scanner": "scanner-primary", "fingerprint": "dce47c105eba41fa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-037b4bf568303dd3", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/lib/top10-export.ts:66"}, "properties": {"repobilityId": "a8aefe80c8b52acc", "scanner": "scanner-primary", "fingerprint": "037b4bf568303dd3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-30f1339025cc8457", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/lib/cubing-scramble.ts:144"}, "properties": {"repobilityId": "47124f1763e30ecf", "scanner": "scanner-primary", "fingerprint": "30f1339025cc8457", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-894a11650f9536ea", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/cubing-scramble.ts:367"}, "properties": {"repobilityId": "78553fbd06ff91e7", "scanner": "scanner-primary", "fingerprint": "894a11650f9536ea", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e0de71fa6b51dabe", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/puzzle-examples.ts:25"}, "properties": {"repobilityId": "92d4e33e409b8f15", "scanner": "scanner-primary", "fingerprint": "e0de71fa6b51dabe", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-55c5d7ea9775a566", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/sponsors-api.ts:30"}, "properties": {"repobilityId": "0a30a970f2896fbc", "scanner": "scanner-primary", "fingerprint": "55c5d7ea9775a566", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6b6a90d0143cbca4", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/lib/comp-schedule.ts:1"}, "properties": {"repobilityId": "1548fb0e05f68a08", "scanner": "scanner-primary", "fingerprint": "6b6a90d0143cbca4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-49b65a050dd7522d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/comp-schedule.ts:63"}, "properties": {"repobilityId": "0279c42365b47f9c", "scanner": "scanner-primary", "fingerprint": "49b65a050dd7522d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2b0bfd178c672a0d", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/lib/api-base.ts:8"}, "properties": {"repobilityId": "7a13c73d7fb924e5", "scanner": "scanner-primary", "fingerprint": "2b0bfd178c672a0d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0410d0d9a34e329d", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/lib/recon-seo.ts:6"}, "properties": {"repobilityId": "03ef5c09ac3525af", "scanner": "scanner-primary", "fingerprint": "0410d0d9a34e329d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-10524542c4d866b4", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/ops-api.ts:23"}, "properties": {"repobilityId": "7f8d0e71b14bc7d9", "scanner": "scanner-primary", "fingerprint": "10524542c4d866b4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ddc5501250a89836", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/article-api.ts:76"}, "properties": {"repobilityId": "6fe12cd2b63c1b51", "scanner": "scanner-primary", "fingerprint": "ddc5501250a89836", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ad7594792f7b0708", "level": "none", "message": {"text": "Commented-code block (9 lines) in core/packages/client/lib/article-markdown.tsx:32"}, "properties": {"repobilityId": "7207730d906ccbd7", "scanner": "scanner-primary", "fingerprint": "ad7594792f7b0708", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e17826dff2b493cd", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/lib/recon_autofill_core.ts:34"}, "properties": {"repobilityId": "6eecccc496ba7f14", "scanner": "scanner-primary", "fingerprint": "e17826dff2b493cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3f72c2539daf31f7", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/wiki-api.ts:47"}, "properties": {"repobilityId": "17084a0946115fc1", "scanner": "scanner-primary", "fingerprint": "3f72c2539daf31f7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-460ddea8ccda50a9", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/lib/cstimer-444.ts:21"}, "properties": {"repobilityId": "771e56b0dbdff5ec", "scanner": "scanner-primary", "fingerprint": "460ddea8ccda50a9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac779a7c0dea9e98", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/lib/comp-follows.ts:11"}, "properties": {"repobilityId": "e09b8b3bff80fa68", "scanner": "scanner-primary", "fingerprint": "ac779a7c0dea9e98", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-694ca774244520d3", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/lib/cross-solver.ts:7"}, "properties": {"repobilityId": "f0b71bfe996df42f", "scanner": "scanner-primary", "fingerprint": "694ca774244520d3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c3d9e169a702db0c", "level": "note", "message": {"text": "Legacy-named symbol `two_gram_v1` in core/packages/client/lib/roux/Evaluator.ts:2"}, "properties": {"repobilityId": "6c1ab3b019f83eb2", "scanner": "scanner-primary", "fingerprint": "c3d9e169a702db0c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-23142e69206b9568", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/lib/roux/Evaluator.ts:92"}, "properties": {"repobilityId": "d5403c9f95e97155", "scanner": "scanner-primary", "fingerprint": "23142e69206b9568", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4fd0f7c4e7879c3b", "level": "note", "message": {"text": "Legacy-named symbol `mask_copy` in core/packages/client/lib/roux/CubeLib.ts:767"}, "properties": {"repobilityId": "5c9c976179d76438", "scanner": "scanner-primary", "fingerprint": "4fd0f7c4e7879c3b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-64cd7377901a7227", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/client/lib/roux/Pruner.ts:259"}, "properties": {"repobilityId": "d09ca742ba96a95c", "scanner": "scanner-primary", "fingerprint": "64cd7377901a7227", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-45919ab81871148e", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/lib/roux/Config.ts:98"}, "properties": {"repobilityId": "e653587363e20757", "scanner": "scanner-primary", "fingerprint": "45919ab81871148e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c0d4d0ceedff7404", "level": "none", "message": {"text": "Commented-code block (10 lines) in core/packages/client/lib/roux/min2phase/min2phase-wrapper.ts:7"}, "properties": {"repobilityId": "e96efe18b5f5c159", "scanner": "scanner-primary", "fingerprint": "c0d4d0ceedff7404", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1f65ffac7afc378d", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/hooks/useSpeechToText.ts:3"}, "properties": {"repobilityId": "7c189675f50694ef", "scanner": "scanner-primary", "fingerprint": "1f65ffac7afc378d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2781f71073661c96", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/client/public/sw.js:3"}, "properties": {"repobilityId": "fd52e2ded4cbefa4", "scanner": "scanner-primary", "fingerprint": "2781f71073661c96", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-559cb370126a7ddb", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/public/analyze-worker/analyzer.js:23"}, "properties": {"repobilityId": "e2d450ff09133011", "scanner": "scanner-primary", "fingerprint": "559cb370126a7ddb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e06d3b598c7feec", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver.js:1"}, "properties": {"repobilityId": "fa41b21eb25fe4f4", "scanner": "scanner-primary", "fingerprint": "4e06d3b598c7feec", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1e3e3eea5a8eb0a6", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pseudo-pair/pseudoPairingSolver-wrapped.js:1"}, "properties": {"repobilityId": "233d7f19823a9f8d", "scanner": "scanner-primary", "fingerprint": "1e3e3eea5a8eb0a6", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ceb2974c761a887e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/xcross/solver.js:1"}, "properties": {"repobilityId": "6a44c11d3f3396be", "scanner": "scanner-primary", "fingerprint": "ceb2974c761a887e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-aa9cc5da5670f661", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pair/pairing_solver-wrapped.js:1"}, "properties": {"repobilityId": "802bd68dd04b6e6d", "scanner": "scanner-primary", "fingerprint": "aa9cc5da5670f661", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a4ea74c5a84d0764", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pair/pairing_solver.js:1"}, "properties": {"repobilityId": "a8907b8a1fc24f53", "scanner": "scanner-primary", "fingerprint": "a4ea74c5a84d0764", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f6df263788742b54", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/eocross/solver-wrapped.js:1"}, "properties": {"repobilityId": "f8b86567d3f0f4c9", "scanner": "scanner-primary", "fingerprint": "f6df263788742b54", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-edcfc4169a529f6b", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/eocross/solver.js:1"}, "properties": {"repobilityId": "587395f16b6c1de1", "scanner": "scanner-primary", "fingerprint": "edcfc4169a529f6b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8918028fd6adec23", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pseudo-cross/pseudo-wrapped.js:1"}, "properties": {"repobilityId": "c01355c7ec2d033f", "scanner": "scanner-primary", "fingerprint": "8918028fd6adec23", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c4e731b1e63076b2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/analyze-worker/pseudo-cross/pseudo.js:1"}, "properties": {"repobilityId": "ef027c91bdd055a0", "scanner": "scanner-primary", "fingerprint": "c4e731b1e63076b2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5b9bae6d914c9a39", "level": "none", "message": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt3.mjs:9"}, "properties": {"repobilityId": "5b2ba666a7150556", "scanner": "scanner-primary", "fingerprint": "5b9bae6d914c9a39", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b537d354cd6b268f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt3.mjs:157"}, "properties": {"repobilityId": "00b98c195896bd95", "scanner": "scanner-primary", "fingerprint": "b537d354cd6b268f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ca862adb5d8117c6", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/client/public/cubeopt/wasm-worker.js:103"}, "properties": {"repobilityId": "c4046c6917329559", "scanner": "scanner-primary", "fingerprint": "ca862adb5d8117c6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-166e670e662fdfae", "level": "none", "message": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt7.mjs:9"}, "properties": {"repobilityId": "dea605514de72564", "scanner": "scanner-primary", "fingerprint": "166e670e662fdfae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-29e91756e742d632", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt7.mjs:157"}, "properties": {"repobilityId": "bb8ce30ab3fe6a8c", "scanner": "scanner-primary", "fingerprint": "29e91756e742d632", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2b444bc1632dcb37", "level": "none", "message": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt8.mjs:9"}, "properties": {"repobilityId": "843a32e95cf22206", "scanner": "scanner-primary", "fingerprint": "2b444bc1632dcb37", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-591cf31d8f83b733", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt8.mjs:157"}, "properties": {"repobilityId": "f87d88e7e170eadd", "scanner": "scanner-primary", "fingerprint": "591cf31d8f83b733", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8560747334c7f9d6", "level": "none", "message": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt6.mjs:9"}, "properties": {"repobilityId": "4e90f4b9e833ede2", "scanner": "scanner-primary", "fingerprint": "8560747334c7f9d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c84465108dd56fc1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt6.mjs:157"}, "properties": {"repobilityId": "ecadcc9ca0f7be92", "scanner": "scanner-primary", "fingerprint": "c84465108dd56fc1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7e3dc8b059bea474", "level": "none", "message": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt2.mjs:9"}, "properties": {"repobilityId": "87c36ea7f888e205", "scanner": "scanner-primary", "fingerprint": "7e3dc8b059bea474", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8e502fe8e1cbbebf", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt2.mjs:157"}, "properties": {"repobilityId": "5f955d8eff64286a", "scanner": "scanner-primary", "fingerprint": "8e502fe8e1cbbebf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c9ecd09c995dac5f", "level": "none", "message": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt4.mjs:9"}, "properties": {"repobilityId": "f41df2673ab2c4dc", "scanner": "scanner-primary", "fingerprint": "c9ecd09c995dac5f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac464ab0fe1de18f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt4.mjs:157"}, "properties": {"repobilityId": "4ce2dd7298e6b472", "scanner": "scanner-primary", "fingerprint": "ac464ab0fe1de18f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-219afb0d13087ae2", "level": "none", "message": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt9.mjs:9"}, "properties": {"repobilityId": "bd328c3b662ed30c", "scanner": "scanner-primary", "fingerprint": "219afb0d13087ae2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b380c6eba0f26e7d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt9.mjs:157"}, "properties": {"repobilityId": "c45907b4935815eb", "scanner": "scanner-primary", "fingerprint": "b380c6eba0f26e7d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0902abee0d5066e9", "level": "none", "message": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt5.mjs:9"}, "properties": {"repobilityId": "57a88a975e51a586", "scanner": "scanner-primary", "fingerprint": "0902abee0d5066e9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8cce0119e135a8d1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt5.mjs:157"}, "properties": {"repobilityId": "770d28a46d3e0fca", "scanner": "scanner-primary", "fingerprint": "8cce0119e135a8d1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7357f351777e602f", "level": "none", "message": {"text": "Commented-code block (16 lines) in core/packages/client/public/cubeopt/cube48opt1.mjs:9"}, "properties": {"repobilityId": "374a8d3fcce7a7ce", "scanner": "scanner-primary", "fingerprint": "7357f351777e602f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-16cf425d4e73d13a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/cubeopt/cube48opt1.mjs:157"}, "properties": {"repobilityId": "d5bf0dd942766f89", "scanner": "scanner-primary", "fingerprint": "16cf425d4e73d13a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8b2d2680efb07b99", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/client/public/ffmpeg/ffmpeg-core.js:8"}, "properties": {"repobilityId": "f717b15082c35fd2", "scanner": "scanner-primary", "fingerprint": "8b2d2680efb07b99", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0bd54cb069b6a893", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/shared/src/payment.ts:6"}, "properties": {"repobilityId": "413616e85a5ba7cf", "scanner": "scanner-primary", "fingerprint": "0bd54cb069b6a893", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0cc14de5f1b6b2d4", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/shared/src/alg.ts:160"}, "properties": {"repobilityId": "f245ee624cb5a46f", "scanner": "scanner-primary", "fingerprint": "0cc14de5f1b6b2d4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f07bcc2c89917d37", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/shared/src/alg.ts:182"}, "properties": {"repobilityId": "163289b0d603d925", "scanner": "scanner-primary", "fingerprint": "f07bcc2c89917d37", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a63897a70ca81489", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/shared/src/scramble_length.ts:3"}, "properties": {"repobilityId": "7afd42507e49d844", "scanner": "scanner-primary", "fingerprint": "a63897a70ca81489", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0f031a9fa4201ca0", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/shared/src/skewb_pyramid_svg.ts:66"}, "properties": {"repobilityId": "e8cc79e71b5963de", "scanner": "scanner-primary", "fingerprint": "0f031a9fa4201ca0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-56780819d1125d6d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/shared/src/api/persons_index.ts:22"}, "properties": {"repobilityId": "eda0c0da0cd70ac6", "scanner": "scanner-primary", "fingerprint": "56780819d1125d6d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d43cac6d3c7f6ff1", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/shared/src/api/stats-base.ts:3"}, "properties": {"repobilityId": "b0084057951403f0", "scanner": "scanner-primary", "fingerprint": "d43cac6d3c7f6ff1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a913ee31bd5ea5ef", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/shared/src/api/comps_json.ts:68"}, "properties": {"repobilityId": "60b310eee9fadb27", "scanner": "scanner-primary", "fingerprint": "a913ee31bd5ea5ef", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-274777f29bcf48dc", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/shared/src/hooks/useWcaAuth.ts:118"}, "properties": {"repobilityId": "00dc6214fcb2e869", "scanner": "scanner-primary", "fingerprint": "274777f29bcf48dc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7e5207ded0bef48c", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/visualcube/src/cube/parsing/algorithm.ts:93"}, "properties": {"repobilityId": "8239abbaf240cdb6", "scanner": "scanner-primary", "fingerprint": "7e5207ded0bef48c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-79db8a6327d1fec7", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/stack-kernel/pkg/stack_kernel.js:235"}, "properties": {"repobilityId": "33211c84e778424b", "scanner": "scanner-primary", "fingerprint": "79db8a6327d1fec7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-07e090c78d9e566c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/alg-build/align_zbls.mjs:77"}, "properties": {"repobilityId": "0231bb326c538bd1", "scanner": "scanner-primary", "fingerprint": "07e090c78d9e566c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-4644818f715174fc", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/scramble-stats-build/build_scramble_bundle.mjs:4"}, "properties": {"repobilityId": "804233263494f13f", "scanner": "scanner-primary", "fingerprint": "4644818f715174fc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ed759de72f42945c", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/scramble-stats-build/export_puzzle_optimal.mjs:4"}, "properties": {"repobilityId": "e068ac38daf73c4f", "scanner": "scanner-primary", "fingerprint": "ed759de72f42945c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d27e22fe4b82c1dd", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 core/packages/scramble-stats-build/incremental.py:125"}, "properties": {"repobilityId": "2a1e66bfc6e01458", "scanner": "scanner-primary", "fingerprint": "d27e22fe4b82c1dd", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-99e5dbc6db8795e8", "level": "none", "message": {"text": "Commented-code block (13 lines) in core/packages/scramble-stats-build/src/build_comp_steps.ts:3"}, "properties": {"repobilityId": "7bbb75cd56f5f919", "scanner": "scanner-primary", "fingerprint": "99e5dbc6db8795e8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-674e59a9d7040340", "level": "none", "message": {"text": "Commented-code block (10 lines) in core/packages/scramble-stats-build/src/build_puzzle_examples.ts:11"}, "properties": {"repobilityId": "be849082c5b4d3df", "scanner": "scanner-primary", "fingerprint": "674e59a9d7040340", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aadbfee830683619", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/scramble-stats-build/src/build_recent_scrambles.ts:4"}, "properties": {"repobilityId": "891f6025d27cc9d1", "scanner": "scanner-primary", "fingerprint": "aadbfee830683619", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f3de78ea42ab7af1", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/scramble-stats-build/src/build.ts:180"}, "properties": {"repobilityId": "d231e43d2debb472", "scanner": "scanner-primary", "fingerprint": "f3de78ea42ab7af1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4ebac80a7dc97fc1", "level": "none", "message": {"text": "Commented-code block (13 lines) in core/packages/server/scripts/dump-past-comps.ts:123"}, "properties": {"repobilityId": "2d310b1a4deffa14", "scanner": "scanner-primary", "fingerprint": "4ebac80a7dc97fc1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-37e720a0996716ce", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/server/src/index.ts:48"}, "properties": {"repobilityId": "41586cbf8dbaf45b", "scanner": "scanner-primary", "fingerprint": "37e720a0996716ce", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0552e063ba09905d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/server/src/utils/upcoming_comps_cache.ts:31"}, "properties": {"repobilityId": "213889305d90cc01", "scanner": "scanner-primary", "fingerprint": "0552e063ba09905d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-589b20cbe599a5d7", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/server/src/routes/auth.ts:34"}, "properties": {"repobilityId": "1bcb1311811128ce", "scanner": "scanner-primary", "fingerprint": "589b20cbe599a5d7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f4d35caf30736e2a", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/server/src/routes/cubeopt_solve.ts:94"}, "properties": {"repobilityId": "f9f06506ac4d6f29", "scanner": "scanner-primary", "fingerprint": "f4d35caf30736e2a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d7b7b7673dfe0f59", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/server/src/routes/wca_schedule.ts:3"}, "properties": {"repobilityId": "8ef5c0b80183afbc", "scanner": "scanner-primary", "fingerprint": "d7b7b7673dfe0f59", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3f81306c45bf5a0d", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/server/src/routes/analytics.ts:169"}, "properties": {"repobilityId": "f49074f83ac33329", "scanner": "scanner-primary", "fingerprint": "3f81306c45bf5a0d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1126ce1af48ff518", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/server/src/routes/cubing_live.ts:1028"}, "properties": {"repobilityId": "06c51960c5d38163", "scanner": "scanner-primary", "fingerprint": "1126ce1af48ff518", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-271997634698995e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/server/src/routes/cubing_live.ts:140"}, "properties": {"repobilityId": "a43d0ba405c1abf4", "scanner": "scanner-primary", "fingerprint": "271997634698995e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-bbb1a75ffbbe5c6e", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/server/src/routes/recon.ts:68"}, "properties": {"repobilityId": "77732018c3591a23", "scanner": "scanner-primary", "fingerprint": "bbb1a75ffbbe5c6e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5f480749537e0f4a", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/server/src/routes/wca_stats_extra.ts:221"}, "properties": {"repobilityId": "31d6597d32a5badb", "scanner": "scanner-primary", "fingerprint": "5f480749537e0f4a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0937d5ea45eb1402", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/server/src/routes/wca_scrambles.ts:122"}, "properties": {"repobilityId": "a7039c26cba6ffa3", "scanner": "scanner-primary", "fingerprint": "0937d5ea45eb1402", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-310e91de998ccd75", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/server/src/cubeopt/daemon.ts:35"}, "properties": {"repobilityId": "07c7cc2f877630df", "scanner": "scanner-primary", "fingerprint": "310e91de998ccd75", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1ee25bf5462ec414", "level": "none", "message": {"text": "Commented-code block (7 lines) in core/packages/server/src/cubeopt/solve-daemon.mjs:16"}, "properties": {"repobilityId": "99a161acff0f351e", "scanner": "scanner-primary", "fingerprint": "1ee25bf5462ec414", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9aa23a7ad2b7551a", "level": "none", "message": {"text": "Commented-code block (8 lines) in core/packages/wb-build/src/scrape.ts:300"}, "properties": {"repobilityId": "77cd39750466a802", "scanner": "scanner-primary", "fingerprint": "9aa23a7ad2b7551a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-652e62c5d71e7d64", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/packages/wb-build/src/scrape.ts:390"}, "properties": {"repobilityId": "303683910b2fb69d", "scanner": "scanner-primary", "fingerprint": "652e62c5d71e7d64", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1d84153de55a7647", "level": "none", "message": {"text": "Commented-code block (5 lines) in core/packages/stats-build/src/statistics/wr_average_history.ts:53"}, "properties": {"repobilityId": "d4a415a569ca084f", "scanner": "scanner-primary", "fingerprint": "1d84153de55a7647", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f855f63d74d025e8", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/stats-build/src/statistics/wr_dominance.ts:1"}, "properties": {"repobilityId": "2e91004ece9cec34", "scanner": "scanner-primary", "fingerprint": "f855f63d74d025e8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-07a6ab161a3600b8", "level": "none", "message": {"text": "Commented-code block (13 lines) in core/packages/stats-build/src/statistics/date_match_pr.ts:1"}, "properties": {"repobilityId": "fad6bdadc0a6f528", "scanner": "scanner-primary", "fingerprint": "07a6ab161a3600b8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bc3b03f94ecb098e", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/stats-build/src/statistics/mbf_average.ts:1"}, "properties": {"repobilityId": "0191401965a0ebfc", "scanner": "scanner-primary", "fingerprint": "bc3b03f94ecb098e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d8fb31a788ebb2f6", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/stats-build/src/statistics/name_stats.ts:1"}, "properties": {"repobilityId": "b1396bcf9634a4c9", "scanner": "scanner-primary", "fingerprint": "d8fb31a788ebb2f6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fdb909c1942655ba", "level": "none", "message": {"text": "Commented-code block (6 lines) in core/packages/stats-build/src/statistics/wr_newcomer.ts:1"}, "properties": {"repobilityId": "52c9b97fb7473f21", "scanner": "scanner-primary", "fingerprint": "fdb909c1942655ba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6d557f542491e2c7", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 core/cube555-daemon/bench.mjs:65"}, "properties": {"repobilityId": "75a3f334b1b74f08", "scanner": "scanner-primary", "fingerprint": "6d557f542491e2c7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-89d60b9ab303dc08", "level": "note", "message": {"text": "66 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "6230157815f77272", "scanner": "scanner-primary", "fingerprint": "89d60b9ab303dc08", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}, {"ruleId": "scanner-def2b915d1749651", "level": "error", "message": {"text": "Dangling fetch: GET /stats/comp_countries.json (tools/i18n/i18n.js:557)"}, "properties": {"repobilityId": "75b645fb08376f26", "scanner": "scanner-primary", "fingerprint": "def2b915d1749651", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2ac23e9c12742d78", "level": "error", "message": {"text": "Dangling fetch: GET /stats/person_countries.json (tools/i18n/i18n.js:570)"}, "properties": {"repobilityId": "3244fb1be1989fbc", "scanner": "scanner-primary", "fingerprint": "2ac23e9c12742d78", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-8a199f6050db28ea", "level": "error", "message": {"text": "Dangling fetch: GET https://api.cuberoot.me/v1/alg/sets/3x3/zbls (core/packages/alg-build/align_zbls.mjs:77)"}, "properties": {"repobilityId": "06b10eb187a935b0", "scanner": "scanner-primary", "fingerprint": "8a199f6050db28ea", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-4bc8afece813e375", "level": "error", "message": {"text": "Dangling fetch: GET /api/comp/${encodeURIComponent(slug)} (core/packages/client/app/[lang]/wca/comp/[slug]/CompDetailPage.tsx:763)"}, "properties": {"repobilityId": "f143b66e345ee394", "scanner": "scanner-primary", "fingerprint": "4bc8afece813e375", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-dd6ae2fad6435e85", "level": "error", "message": {"text": "Dangling fetch: GET /countries-110m.geojson (core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx:1074)"}, "properties": {"repobilityId": "36e664511ff0fa95", "scanner": "scanner-primary", "fingerprint": "dd6ae2fad6435e85", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-87f3d0aeb5eeef14", "level": "error", "message": {"text": "Dangling fetch: GET /cn_disputed_patches.geojson (core/packages/client/app/[lang]/wca/globe/GlobeMapClient.tsx:1075)"}, "properties": {"repobilityId": "fb68d681dacdd91d", "scanner": "scanner-primary", "fingerprint": "87f3d0aeb5eeef14", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-826daa5382506553", "level": "error", "message": {"text": "Dangling fetch: GET https://static.cuberoot.me/tools/${rel} (core/packages/client/app/tools/[...slug]/route.ts:76)"}, "properties": {"repobilityId": "fda68f4d1281030d", "scanner": "scanner-primary", "fingerprint": "826daa5382506553", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-58f218adb8b02114", "level": "error", "message": {"text": "Dangling fetch: GET https://cubing.com/live/${encodeURIComponent(slug)} (core/packages/server/src/utils/cubing_proxy.ts:45)"}, "properties": {"repobilityId": "8c1863d0c19a39cb", "scanner": "scanner-primary", "fingerprint": "58f218adb8b02114", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-98301b66738514ee", "level": "error", "message": {"text": "Dangling fetch: GET https://www.worldcubeassociation.org/api/v0/me (core/packages/server/src/utils/recon_helpers.ts:287)"}, "properties": {"repobilityId": "f3735e8c00a49ee4", "scanner": "scanner-primary", "fingerprint": "98301b66738514ee", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6a2e3995005c3dbb", "level": "error", "message": {"text": "Dangling fetch: POST https://www.worldcubeassociation.org/oauth/token (core/packages/server/src/routes/auth.ts:34)"}, "properties": {"repobilityId": "3201f897229a06e5", "scanner": "scanner-primary", "fingerprint": "6a2e3995005c3dbb", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-95def0f3599bdf35", "level": "error", "message": {"text": "Dangling fetch: GET https://www.worldcubeassociation.org/api/v0/me (core/packages/server/src/routes/auth.ts:57)"}, "properties": {"repobilityId": "7fc9229556b4d213", "scanner": "scanner-primary", "fingerprint": "95def0f3599bdf35", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-18fde8e7af4ec89c", "level": "error", "message": {"text": "Dangling fetch: GET https://www.worldcubeassociation.org/api/v0/me (core/packages/server/src/routes/auth.ts:129)"}, "properties": {"repobilityId": "7c272d760e0b4f64", "scanner": "scanner-primary", "fingerprint": "18fde8e7af4ec89c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-684f0e83ba7e1558", "level": "note", "message": {"text": "Unused endpoint: GET "}, "properties": {"repobilityId": "fc7aed16828bb617", "scanner": "scanner-primary", "fingerprint": "684f0e83ba7e1558", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-4bed33618bb26323", "level": "note", "message": {"text": "Unused endpoint: GET /search/users"}, "properties": {"repobilityId": "8d7efa16b36767d7", "scanner": "scanner-primary", "fingerprint": "4bed33618bb26323", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-10a64796980c7f37", "level": "note", "message": {"text": "Unused endpoint: GET /competitions"}, "properties": {"repobilityId": "16081d298faf9f32", "scanner": "scanner-primary", "fingerprint": "10a64796980c7f37", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-56f3fbd0451359d8", "level": "note", "message": {"text": "Unused endpoint: GET /wca/result-watch/status"}, "properties": {"repobilityId": "e686d9e725e1a5c4", "scanner": "scanner-primary", "fingerprint": "56f3fbd0451359d8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ad39ab0fc4fac669", "level": "note", "message": {"text": "Unused endpoint: GET /wca/result-watch/changes"}, "properties": {"repobilityId": "d58abef821f4f1e3", "scanner": "scanner-primary", "fingerprint": "ad39ab0fc4fac669", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-6019e13ca6badcb3", "level": "note", "message": {"text": "Unused endpoint: POST /wca/result-watch/changes"}, "properties": {"repobilityId": "291f3928a0817f6d", "scanner": "scanner-primary", "fingerprint": "6019e13ca6badcb3", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-46f065a95d30da40", "level": "note", "message": {"text": "Unused endpoint: PUT /wca/result-watch/changes/:id"}, "properties": {"repobilityId": "d46cd37d8d7712a0", "scanner": "scanner-primary", "fingerprint": "46f065a95d30da40", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c3037180a31542a1", "level": "note", "message": {"text": "Unused endpoint: DELETE /wca/result-watch/changes/:id"}, "properties": {"repobilityId": "f41233415dc0656a", "scanner": "scanner-primary", "fingerprint": "c3037180a31542a1", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-76fe223a158845f6", "level": "note", "message": {"text": "Unused endpoint: GET /auth/login"}, "properties": {"repobilityId": "236691dd5d51e4e4", "scanner": "scanner-primary", "fingerprint": "76fe223a158845f6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1480187b44a5fd90", "level": "note", "message": {"text": "Unused endpoint: GET /auth/callback"}, "properties": {"repobilityId": "141f18ddd83971e8", "scanner": "scanner-primary", "fingerprint": "1480187b44a5fd90", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ac42422b23e45104", "level": "note", "message": {"text": "Unused endpoint: GET /auth/me"}, "properties": {"repobilityId": "e698c8008c914329", "scanner": "scanner-primary", "fingerprint": "ac42422b23e45104", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-00e84be355182df9", "level": "note", "message": {"text": "Unused endpoint: POST /auth/exchange"}, "properties": {"repobilityId": "35919c930130d49a", "scanner": "scanner-primary", "fingerprint": "00e84be355182df9", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b36892106ecdc9aa", "level": "note", "message": {"text": "Unused endpoint: POST /auth/refresh"}, "properties": {"repobilityId": "65b2fc98977c7cd1", "scanner": "scanner-primary", "fingerprint": "b36892106ecdc9aa", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-4ceedccb8d6a2bdf", "level": "note", "message": {"text": "Unused endpoint: GET /article"}, "properties": {"repobilityId": "8383f954d576a10e", "scanner": "scanner-primary", "fingerprint": "4ceedccb8d6a2bdf", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e64a87999bda49d1", "level": "note", "message": {"text": "Unused endpoint: GET /article/me"}, "properties": {"repobilityId": "58ff27317de1caeb", "scanner": "scanner-primary", "fingerprint": "e64a87999bda49d1", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1b7bf2fd65899b7c", "level": "note", "message": {"text": "Unused endpoint: GET /article/img/:id"}, "properties": {"repobilityId": "3ad951a04ef778e8", "scanner": "scanner-primary", "fingerprint": "1b7bf2fd65899b7c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-75a4748176502f80", "level": "note", "message": {"text": "Unused endpoint: GET /article/reports"}, "properties": {"repobilityId": "8684b07dcf4c563e", "scanner": "scanner-primary", "fingerprint": "75a4748176502f80", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-fd5c8f0b2a2a48dc", "level": "note", "message": {"text": "Unused endpoint: POST /article/img"}, "properties": {"repobilityId": "c88e8fd1a683f5c9", "scanner": "scanner-primary", "fingerprint": "fd5c8f0b2a2a48dc", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-40b729f61ee3450c", "level": "note", "message": {"text": "Unused endpoint: GET /article/:slug"}, "properties": {"repobilityId": "5222fd51286f3461", "scanner": "scanner-primary", "fingerprint": "40b729f61ee3450c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-aadb7e6c5f547a1d", "level": "note", "message": {"text": "Unused endpoint: POST /article"}, "properties": {"repobilityId": "a190826979a195ca", "scanner": "scanner-primary", "fingerprint": "aadb7e6c5f547a1d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-95cf6401141fff38", "level": "note", "message": {"text": "Unused endpoint: PATCH /article/:slug"}, "properties": {"repobilityId": "36144e0eff47f734", "scanner": "scanner-primary", "fingerprint": "95cf6401141fff38", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a619e7968ac1c297", "level": "note", "message": {"text": "Unused endpoint: DELETE /article/:slug"}, "properties": {"repobilityId": "18886b95aeeb1b7c", "scanner": "scanner-primary", "fingerprint": "a619e7968ac1c297", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-fe8985c3ab29f7d9", "level": "note", "message": {"text": "Unused endpoint: POST /article/:slug/report"}, "properties": {"repobilityId": "dd2be6f8751ca567", "scanner": "scanner-primary", "fingerprint": "fe8985c3ab29f7d9", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-7aa042a319a59f1f", "level": "note", "message": {"text": "Unused endpoint: GET /scramble/optimal-solve/ready"}, "properties": {"repobilityId": "d99fe1fb89986f48", "scanner": "scanner-primary", "fingerprint": "7aa042a319a59f1f", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-5a515d8f51585e45", "level": "note", "message": {"text": "Unused endpoint: POST /scramble/optimal-solve"}, "properties": {"repobilityId": "e0012b76f539d443", "scanner": "scanner-primary", "fingerprint": "5a515d8f51585e45", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-47484fcee4a5efda", "level": "note", "message": {"text": "Unused endpoint: GET /wca/comp/:id/schedule"}, "properties": {"repobilityId": "cc7d5655a19840f1", "scanner": "scanner-primary", "fingerprint": "47484fcee4a5efda", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e1d67c25810c38d3", "level": "note", "message": {"text": "Unused endpoint: GET /ops/commands"}, "properties": {"repobilityId": "673aa43a5aea082c", "scanner": "scanner-primary", "fingerprint": "e1d67c25810c38d3", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-58ccfbdaffa59b2f", "level": "note", "message": {"text": "Unused endpoint: POST /ops/commands"}, "properties": {"repobilityId": "5b1ca216aca956ea", "scanner": "scanner-primary", "fingerprint": "58ccfbdaffa59b2f", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-bf709e3df22430d5", "level": "note", "message": {"text": "Unused endpoint: PUT /ops/commands/reorder"}, "properties": {"repobilityId": "e22d4a4e0884f06d", "scanner": "scanner-primary", "fingerprint": "bf709e3df22430d5", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c1d31e9bcd9b3d27", "level": "note", "message": {"text": "Unused endpoint: PUT /ops/commands/:id"}, "properties": {"repobilityId": "e99c5f71d8730070", "scanner": "scanner-primary", "fingerprint": "c1d31e9bcd9b3d27", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ab7b7b743007b6e8", "level": "note", "message": {"text": "Unused endpoint: DELETE /ops/commands/:id"}, "properties": {"repobilityId": "61e4074073459fa5", "scanner": "scanner-primary", "fingerprint": "ab7b7b743007b6e8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-101bd6ce7d28999b", "level": "note", "message": {"text": "Unused endpoint: GET /nemesizer/meta"}, "properties": {"repobilityId": "c4c68de28d566e3b", "scanner": "scanner-primary", "fingerprint": "101bd6ce7d28999b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-9f169c75852e6c7c", "level": "note", "message": {"text": "Unused endpoint: GET /nemesizer/person"}, "properties": {"repobilityId": "c5ca2a2ac394a9a9", "scanner": "scanner-primary", "fingerprint": "9f169c75852e6c7c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-6ea28feb58b09bfe", "level": "note", "message": {"text": "Unused endpoint: GET /nemesizer/nemeses"}, "properties": {"repobilityId": "78b935cbc2fb4183", "scanner": "scanner-primary", "fingerprint": "6ea28feb58b09bfe", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-cb12539a4593c635", "level": "note", "message": {"text": "Unused endpoint: GET /nemesizer/h2h"}, "properties": {"repobilityId": "474c31d9d5881c32", "scanner": "scanner-primary", "fingerprint": "cb12539a4593c635", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1f23f702d1e73c0b", "level": "note", "message": {"text": "Unused endpoint: GET /nemesizer/whatif"}, "properties": {"repobilityId": "3b67ca7fa75b35f6", "scanner": "scanner-primary", "fingerprint": "1f23f702d1e73c0b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-5bbbc444a9813b37", "level": "note", "message": {"text": "Unused endpoint: GET /nemesizer/stats"}, "properties": {"repobilityId": "3915dfece2552171", "scanner": "scanner-primary", "fingerprint": "5bbbc444a9813b37", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-30c80dac5ce62784", "level": "note", "message": {"text": "Unused endpoint: POST /analytics/pv"}, "properties": {"repobilityId": "3ff31c7d05c61b5b", "scanner": "scanner-primary", "fingerprint": "30c80dac5ce62784", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-949a1b09d855b8a0", "level": "note", "message": {"text": "Unused endpoint: POST /analytics/dwell"}, "properties": {"repobilityId": "c7566aae9572c1ec", "scanner": "scanner-primary", "fingerprint": "949a1b09d855b8a0", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1c09890728e89107", "level": "note", "message": {"text": "Unused endpoint: GET /analytics/summary"}, "properties": {"repobilityId": "6be2e0d98e4845e4", "scanner": "scanner-primary", "fingerprint": "1c09890728e89107", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-7b5e0491585108c6", "level": "note", "message": {"text": "Unused endpoint: POST /wca/format-record"}, "properties": {"repobilityId": "7e90d88932922e9a", "scanner": "scanner-primary", "fingerprint": "7b5e0491585108c6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-435e32bc972bb3f0", "level": "note", "message": {"text": "Unused endpoint: GET /wca/historical-ranks"}, "properties": {"repobilityId": "8964f247ebb237c7", "scanner": "scanner-primary", "fingerprint": "435e32bc972bb3f0", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-15669fac7706814e", "level": "note", "message": {"text": "Unused endpoint: GET /wca/historical-ranks/countries"}, "properties": {"repobilityId": "4171e72f54fa5770", "scanner": "scanner-primary", "fingerprint": "15669fac7706814e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-8d68048592ddc2fd", "level": "note", "message": {"text": "Unused endpoint: GET /wca/historical-ranks/meta"}, "properties": {"repobilityId": "c69ac9ee6c6b3dba", "scanner": "scanner-primary", "fingerprint": "8d68048592ddc2fd", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-bb3cbfdad016115a", "level": "note", "message": {"text": "Unused endpoint: GET /wca/fun/country-sor"}, "properties": {"repobilityId": "fe0ea9e535403318", "scanner": "scanner-primary", "fingerprint": "bb3cbfdad016115a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a253d92ecf95379a", "level": "note", "message": {"text": "Unused endpoint: GET /wca/fun/medals"}, "properties": {"repobilityId": "b53960fa8a292d27", "scanner": "scanner-primary", "fingerprint": "a253d92ecf95379a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b7e586b44091ee84", "level": "note", "message": {"text": "Unused endpoint: GET /wca/fun/placements"}, "properties": {"repobilityId": "878432ccf2ad14b6", "scanner": "scanner-primary", "fingerprint": "b7e586b44091ee84", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e2b685a40c879e62", "level": "note", "message": {"text": "Unused endpoint: GET /wca/fun/best-podiums"}, "properties": {"repobilityId": "420bb62644d6407f", "scanner": "scanner-primary", "fingerprint": "e2b685a40c879e62", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ad689eea4cc30b67", "level": "note", "message": {"text": "Unused endpoint: GET /wca/fun/uncrowned-kings"}, "properties": {"repobilityId": "c040e4f102b2c09c", "scanner": "scanner-primary", "fingerprint": "ad689eea4cc30b67", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-f1977cdea9894fe4", "level": "note", "message": {"text": "Unused endpoint: GET /wca/fun/podium-missers"}, "properties": {"repobilityId": "32643093bbc5b93a", "scanner": "scanner-primary", "fingerprint": "f1977cdea9894fe4", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}]}]}