{"schema_version":"2","scorer_version":"0.1.0","scoring_version":"prov-5+qual-2+sec-2","generated_at":"2026-11-14T14:52:08.754393Z","repo":{"ref":{"host":"github.com","owner":"zainzafar90","name":"call-of-duty-phadda"},"default_branch":"main","clone_url":"https://github.com/zainzafar90/call-of-duty-phadda.git","html_url":"https://github.com/zainzafar90/call-of-duty-phadda","description":null,"stars":0,"forks":0,"is_fork":false,"is_archived":false,"is_private":false,"size_kb":617,"primary_language":"JavaScript","license_spdx":null,"created_at":"2026-07-26T23:30:16Z","pushed_at":"2026-07-27T10:02:16Z","security_policy_url":null,"distribution":{"owner_created_at":"2014-11-16T19:21:43Z","owner_type":"User","release_assets":[]}},"commit_sha":"85636f70308cb2c74eaaa1ef1f9bd44372563bd1","profile":{"lines_by_language":{"JavaScript":37989},"files_by_category":{"source":30,"docs":4,"config":3,"other":1,"generated":1},"source_lines":37989,"test_lines":0},"pillars":{"ai_provenance":{"score":0.0,"confidence":0.41,"coverage":1.0,"label":"possible","breakdown":{"attributed_share":0.0,"suspected_share":0.0,"estimated_share":0.0,"ai_artifacts":1.0,"flagged_work_units":0.0,"flagged_releases":null,"style_index":0.026},"summary":"Weak signals consistent with AI-assisted development."},"quality":{"score":43.7,"confidence":0.9,"coverage":1.0,"label":"poor","breakdown":{"complexity":29.4,"duplication":94.8,"lint":86.9,"testing":0.0,"docs":40.0,"type_safety":null,"process":null},"summary":"Code quality is poor: test-to-source ratio 0.00, no CI test run detected; 41% of function code in complex or long functions; 1% duplicated lines. Weakest area: testing."},"security":{"score":77.8,"confidence":0.85,"coverage":1.0,"label":"adequate","breakdown":{"secrets":100.0,"sast":99.8,"dependencies":67.0,"ci_actions":null,"posture":0.0,"scorecard":null},"summary":"Security posture is adequate: 7 known vulnerabilities in 3 dependencies. Weakest area: posture."}},"analyzer_results":[{"analyzer":"sec-scorecard","pillar":"security","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":"no published OpenSSF Scorecard result for this repo"},{"analyzer":"sec-registry","pillar":"security","status":"ok","tool_version":null,"metrics":{"declared":6.0,"checked":6.0,"missing":0.0,"recent":0.0,"lookup_errors":0.0},"findings":[],"evidence":[],"data":{"phantom":false},"error":null},{"analyzer":"ai-attribution","pillar":"ai_provenance","status":"ok","tool_version":"signatures-v1","metrics":{"commits":4.0,"attributed_commits":0.0,"attributed_commit_share":0.0,"effective_loc":37989.0,"attributed_loc":0.0,"attributed_loc_share":0.0,"tools_detected":0.0},"findings":[],"evidence":[],"data":{"attributed_loc_by_commit":{},"tools":{},"monthly":{"2026-07":{"loc":37989,"attributed_loc":0}}},"error":null},{"analyzer":"ai-artifacts","pillar":"ai_provenance","status":"ok","tool_version":"signatures-v1","metrics":{"artifacts":1.0,"workflow_agents":0.0,"tools_configured":1.0,"earliest_adoption":1785145864.0},"findings":[],"evidence":[{"kind":"ai-artifact","description":".claude/launch.json (claude-code configuration)","ref":".claude/launch.json","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/.claude/launch.json","weight":0.5}],"data":{"artifacts":[{"tool":"claude-code","path":".claude/launch.json","added_at":1785145864}],"workflows":[],"tools":["claude-code"]},"error":null},{"analyzer":"ai-velocity","pillar":"ai_provenance","status":"ok","tool_version":"prov-4","metrics":{"work_units":0.0,"flagged_units":0.0,"pre_ai_era_bursts":0.0,"pre_ai_era_measured_loc":0.0,"pre_ai_era_burst_loc":0.0,"measured_loc":0.0,"flagged_loc":0.0,"flagged_loc_share":0.0,"max_loc_per_hour":0.0,"median_loc_per_hour":0.0,"pr_timed_units":0.0,"excluded_import_loc":37989.0},"findings":[],"evidence":[],"data":{"flagged_loc_by_commit":{},"excluded_import_commits":["da957694b4b74b7f9b9c6835724d78361ccec559","ed73dfad9cf8eff07323b61fabf8645c60f3b0fc","ef7a2d60407f1fe174f273b161cf849234bcd3f9"]},"error":null},{"analyzer":"ai-release-velocity","pillar":"ai_provenance","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"ai-stylometry","pillar":"ai_provenance","status":"ok","tool_version":null,"metrics":{"lines_scanned":37989.0,"index":0.026,"count:narrated_steps":1.0,"per_kloc:narrated_steps":0.026,"files:narrated_steps":1.0,"count:placeholder":0.0,"per_kloc:placeholder":0.0,"files:placeholder":0.0,"count:emoji_in_code":0.0,"per_kloc:emoji_in_code":0.0,"files:emoji_in_code":0.0,"count:assistant_voice":0.0,"per_kloc:assistant_voice":0.0,"files:assistant_voice":0.0},"findings":[],"evidence":[{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // then, by construction, \"the key the geometry around the muzzle is receiving\".","ref":"src/core/lighting.js:111","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/core/lighting.js#L111","weight":0.0}],"data":{},"error":null},{"analyzer":"sec-secrets","pillar":"security","status":"ok","tool_version":"gitleaks 8.30.1","metrics":{"secrets_current":0.0,"secrets_history":0.0,"secrets_nonprod":0.0,"secrets_low_confidence":0.0},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-sast","pillar":"security","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":3.0,"findings_high":0.0,"findings_medium":0.0,"findings_low":3.0,"weighted_findings":0.188,"scanned_lines":37989.0,"parse_errors":1.0},"findings":[{"rule_id":"opengrep/javascript.lang.security.audit.unsafe-formatstring","severity":"low","message":"Detected string concatenation with a non-literal variable in a util.format / console.log function. If an attacker injects a format specifier in the string, it will forge the log message. Try to use constant values for the format string. [confidence low]","path":"src/core/kernel.js","line":15,"fingerprint":"javascript.lang.security.audit.unsafe-formatstring:src/core/kernel.js:15"},{"rule_id":"opengrep/javascript.lang.security.audit.unsafe-formatstring","severity":"low","message":"Detected string concatenation with a non-literal variable in a util.format / console.log function. If an attacker injects a format specifier in the string, it will forge the log message. Try to use constant values for the format string. [confidence low]","path":"src/main.js","line":61,"fingerprint":"javascript.lang.security.audit.unsafe-formatstring:src/main.js:61"},{"rule_id":"opengrep/javascript.lang.security.audit.unsafe-formatstring","severity":"low","message":"Detected string concatenation with a non-literal variable in a util.format / console.log function. If an attacker injects a format specifier in the string, it will forge the log message. Try to use constant values for the format string. [confidence low]","path":"src/main.js","line":93,"fingerprint":"javascript.lang.security.audit.unsafe-formatstring:src/main.js:93"}],"evidence":[],"data":{"rulesets":["javascript"]},"error":null},{"analyzer":"sec-deps","pillar":"security","status":"ok","tool_version":"osv-scanner version: 2.7.1","metrics":{"vulnerable_packages":3.0,"vulnerabilities":7.0,"vulns_critical":0.0,"vulns_high":3.0,"vulns_medium":3.0,"vulns_low":1.0,"vulns_unknown":0.0,"penalty":24.0},"findings":[{"rule_id":"osv/GHSA-2v37-7h3g-55p8","severity":"high","message":"nanoid@3.3.16 (npm) is affected by GHSA-2v37-7h3g-55p8","path":"pnpm-lock.yaml","line":null,"fingerprint":"nanoid@3.3.16 (npm):GHSA-2v37-7h3g-55p8"},{"rule_id":"osv/GHSA-68fv-2mgg-jv7q","severity":"high","message":"source-map-js@1.2.1 (npm) is affected by GHSA-68fv-2mgg-jv7q","path":"pnpm-lock.yaml","line":null,"fingerprint":"source-map-js@1.2.1 (npm):GHSA-68fv-2mgg-jv7q"},{"rule_id":"osv/GHSA-587h-7wmj-h5pm","severity":"high","message":"vite@8.1.5 (npm) is affected by GHSA-587h-7wmj-h5pm","path":"pnpm-lock.yaml","line":null,"fingerprint":"vite@8.1.5 (npm):GHSA-587h-7wmj-h5pm"},{"rule_id":"osv/GHSA-698v-4r3x-3vcv","severity":"medium","message":"vite@8.1.5 (npm) is affected by GHSA-698v-4r3x-3vcv","path":"pnpm-lock.yaml","line":null,"fingerprint":"vite@8.1.5 (npm):GHSA-698v-4r3x-3vcv"},{"rule_id":"osv/GHSA-r825-w8mm-5pxw","severity":"medium","message":"vite@8.1.5 (npm) is affected by GHSA-r825-w8mm-5pxw","path":"pnpm-lock.yaml","line":null,"fingerprint":"vite@8.1.5 (npm):GHSA-r825-w8mm-5pxw"},{"rule_id":"osv/GHSA-rq7h-c2jc-7f22","severity":"medium","message":"vite@8.1.5 (npm) is affected by GHSA-rq7h-c2jc-7f22","path":"pnpm-lock.yaml","line":null,"fingerprint":"vite@8.1.5 (npm):GHSA-rq7h-c2jc-7f22"},{"rule_id":"osv/GHSA-9jrq-w75r-8gcw","severity":"low","message":"vite@8.1.5 (npm) is affected by GHSA-9jrq-w75r-8gcw","path":"pnpm-lock.yaml","line":null,"fingerprint":"vite@8.1.5 (npm):GHSA-9jrq-w75r-8gcw"}],"evidence":[],"data":{"ecosystems":["npm"]},"error":null},{"analyzer":"sec-actions","pillar":"security","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-posture","pillar":"security","status":"ok","tool_version":null,"metrics":{"check:security_policy":0.0,"check:dependency_updates":0.0,"check:signed_commits":0.0,"check:lockfiles":1.0,"signed_commit_share":0.0,"unpinned_manifests":0.0},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-distribution","pillar":"security","status":"ok","tool_version":null,"metrics":{"signals":0.0,"binary_assets":0.0,"suspicious":0.0},"findings":[],"evidence":[],"data":{"signals":[],"suspicious":false,"unusual_traction":false,"metadata":true},"error":null},{"analyzer":"qual-complexity","pillar":"quality","status":"ok","tool_version":"lizard 1.25.1","metrics":{"functions":1578.0,"function_nloc":22766.0,"mean_ccn":4.61,"p90_ccn":10.0,"complex_functions":91.0,"long_functions":31.0,"many_param_functions":37.0,"risky_nloc_share":0.4085},"findings":[],"evidence":[{"kind":"complex-function","description":"this._frame in src/player/controller.js: complexity 211, 407 lines","ref":"src/player/controller.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/player/controller.js#L648","weight":1.0},{"kind":"complex-function","description":"update in src/ui/hud.js: complexity 166, 403 lines","ref":"src/ui/hud.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/ui/hud.js#L1098","weight":1.0},{"kind":"complex-function","description":"update in src/weapons/index.js: complexity 122, 170 lines","ref":"src/weapons/index.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/weapons/index.js#L3830","weight":1.0},{"kind":"complex-function","description":"updateGait in src/ai/index.js: complexity 81, 220 lines","ref":"src/ai/index.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/ai/index.js#L2856","weight":1.0},{"kind":"complex-function","description":"buildMaterial in src/core/materials.js: complexity 70, 89 lines","ref":"src/core/materials.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/core/materials.js#L3237","weight":1.0},{"kind":"complex-function","description":"analyse in qa/gait-probe.mjs: complexity 60, 172 lines","ref":"qa/gait-probe.mjs","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/qa/gait-probe.mjs#L264","weight":1.0},{"kind":"complex-function","description":"step in src/core/postfx.js: complexity 56, 123 lines","ref":"src/core/postfx.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/core/postfx.js#L2550","weight":0.9333333333333333},{"kind":"complex-function","description":"think in src/ai/index.js: complexity 55, 74 lines","ref":"src/ai/index.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/ai/index.js#L4413","weight":0.9166666666666666},{"kind":"complex-function","description":"init in src/ai/index.js: complexity 50, 144 lines","ref":"src/ai/index.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/ai/index.js#L5359","weight":0.8333333333333334},{"kind":"complex-function","description":"ctx.api.ragdoll in src/physics/index.js: complexity 50, 140 lines","ref":"src/physics/index.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/physics/index.js#L928","weight":0.8333333333333334}],"data":{},"error":null},{"analyzer":"qual-duplication","pillar":"quality","status":"ok","tool_version":"repotrust-dup-w6","metrics":{"compared_lines":32169.0,"duplicated_lines":285.0,"duplicated_share":0.0089,"files":30.0},"findings":[],"evidence":[{"kind":"duplicate-code","description":"6+ duplicated lines: .qa/character-loop.js:61 and .qa/character-loop2.js:83","ref":".qa/character-loop.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/.qa/character-loop.js#L61","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: qa/level-check.mjs:12 and qa/nav-check.mjs:21","ref":"qa/level-check.mjs","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/qa/level-check.mjs#L12","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: qa/materials-check.mjs:16 and src/weapons/weapons.check.mjs:29","ref":"qa/materials-check.mjs","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/qa/materials-check.mjs#L16","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: src/core/materials.js:62 and src/core/materials.js:75","ref":"src/core/materials.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/core/materials.js#L62","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: src/fx/index.js:240 and src/world/decals.js:154","ref":"src/fx/index.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/fx/index.js#L240","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: src/fx/index.js:1195 and src/fx/index.js:1335","ref":"src/fx/index.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/fx/index.js#L1195","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: src/weapons/index.js:1937 and src/weapons/index.js:2088","ref":"src/weapons/index.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/weapons/index.js#L1937","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: src/world/decals.js:581 and src/world/decals.js:615","ref":"src/world/decals.js","url":"https://github.com/zainzafar90/call-of-duty-phadda/blob/85636f70308cb2c74eaaa1ef1f9bd44372563bd1/src/world/decals.js#L581","weight":0.3}],"data":{},"error":null},{"analyzer":"qual-lint","pillar":"quality","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":85.0,"weighted_findings":21.25,"scanned_lines":37989.0,"category:correctness":85.0},"findings":[{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":".qa/critic-loop.js","line":197,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:.qa/critic-loop.js:197"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":".qa/critic-loop.js","line":197,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:.qa/critic-loop.js:197"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":".qa/critic-loop.js","line":197,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:.qa/critic-loop.js:197"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":".qa/critic-loop.js","line":199,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:.qa/critic-loop.js:199"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/materials.js","line":2857,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/materials.js:2857"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/materials.js","line":2857,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/materials.js:2857"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/materials.js","line":2873,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/materials.js:2873"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/materials.js","line":2873,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/materials.js:2873"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/materials.js","line":2957,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/materials.js:2957"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/materials.js","line":2957,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/materials.js:2957"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/materials.js","line":2998,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/materials.js:2998"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/materials.js","line":2998,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/materials.js:2998"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/materials.js","line":3018,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/materials.js:3018"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/materials.js","line":3018,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/materials.js:3018"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/materials.js","line":3086,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/materials.js:3086"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/materials.js","line":3086,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/materials.js:3086"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":635,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:635"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":635,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:635"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":847,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:847"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":847,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:847"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":884,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:884"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":884,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:884"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":915,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:915"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":915,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:915"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":1174,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:1174"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":1174,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:1174"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":1256,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:1256"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":1256,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:1256"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":1261,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:1261"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":1261,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:1261"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":1441,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:1441"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":1441,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:1441"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":1514,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:1514"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":1514,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:1514"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":1629,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:1629"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/postfx.js","line":1629,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/postfx.js:1629"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/sky.js","line":274,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/sky.js:274"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/sky.js","line":399,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/sky.js:399"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/sky.js","line":399,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/sky.js:399"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/sky.js","line":498,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/sky.js:498"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/sky.js","line":498,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/sky.js:498"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`data[p++]` is assigned twice; the first assignment is useless","path":"src/core/sky.js","line":884,"fingerprint":"javascript.lang.correctness.useless-assignment:src/core/sky.js:884"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`data[p++]` is assigned twice; the first assignment is useless","path":"src/core/sky.js","line":885,"fingerprint":"javascript.lang.correctness.useless-assignment:src/core/sky.js:885"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`data[p++]` is assigned twice; the first assignment is useless","path":"src/core/sky.js","line":886,"fingerprint":"javascript.lang.correctness.useless-assignment:src/core/sky.js:886"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`data[p++]` is assigned twice; the first assignment is useless","path":"src/core/sky.js","line":925,"fingerprint":"javascript.lang.correctness.useless-assignment:src/core/sky.js:925"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`data[p++]` is assigned twice; the first assignment is useless","path":"src/core/sky.js","line":926,"fingerprint":"javascript.lang.correctness.useless-assignment:src/core/sky.js:926"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`data[p++]` is assigned twice; the first assignment is useless","path":"src/core/sky.js","line":927,"fingerprint":"javascript.lang.correctness.useless-assignment:src/core/sky.js:927"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/sky.js","line":944,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/sky.js:944"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/sky.js","line":944,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/sky.js:944"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/sky.js","line":957,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/sky.js:957"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/sky.js","line":957,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/sky.js:957"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/sky.js","line":1079,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/sky.js:1079"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/core/sky.js","line":1217,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/core/sky.js:1217"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/fx/index.js","line":606,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/fx/index.js:606"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/fx/index.js","line":606,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/fx/index.js:606"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/fx/index.js","line":735,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/fx/index.js:735"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/fx/index.js","line":735,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/fx/index.js:735"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/fx/index.js","line":875,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/fx/index.js:875"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/fx/index.js","line":875,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/fx/index.js:875"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/fx/index.js","line":895,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/fx/index.js:895"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/fx/index.js","line":895,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/fx/index.js:895"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`idx[ii++]` is assigned twice; the first assignment is useless","path":"src/fx/index.js","line":969,"fingerprint":"javascript.lang.correctness.useless-assignment:src/fx/index.js:969"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`idx[ii++]` is assigned twice; the first assignment is useless","path":"src/fx/index.js","line":969,"fingerprint":"javascript.lang.correctness.useless-assignment:src/fx/index.js:969"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`idx[ii++]` is assigned twice; the first assignment is useless","path":"src/fx/index.js","line":969,"fingerprint":"javascript.lang.correctness.useless-assignment:src/fx/index.js:969"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`idx[ii++]` is assigned twice; the first assignment is useless","path":"src/fx/index.js","line":970,"fingerprint":"javascript.lang.correctness.useless-assignment:src/fx/index.js:970"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`idx[ii++]` is assigned twice; the first assignment is useless","path":"src/fx/index.js","line":970,"fingerprint":"javascript.lang.correctness.useless-assignment:src/fx/index.js:970"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/fx/index.js","line":982,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/fx/index.js:982"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/fx/index.js","line":982,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/fx/index.js:982"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/fx/index.js","line":1030,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/fx/index.js:1030"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/fx/index.js","line":1030,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/fx/index.js:1030"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/ui/hud.js","line":87,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/ui/hud.js:87"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/ui/hud.js","line":87,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/ui/hud.js:87"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/ui/menu.js","line":58,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/ui/menu.js:58"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/ui/menu.js","line":58,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/ui/menu.js:58"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`idx[o++]` is assigned twice; the first assignment is useless","path":"src/weapons/index.js","line":408,"fingerprint":"javascript.lang.correctness.useless-assignment:src/weapons/index.js:408"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`idx[o++]` is assigned twice; the first assignment is useless","path":"src/weapons/index.js","line":408,"fingerprint":"javascript.lang.correctness.useless-assignment:src/weapons/index.js:408"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`idx[o++]` is assigned twice; the first assignment is useless","path":"src/weapons/index.js","line":408,"fingerprint":"javascript.lang.correctness.useless-assignment:src/weapons/index.js:408"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`idx[o++]` is assigned twice; the first assignment is useless","path":"src/weapons/index.js","line":409,"fingerprint":"javascript.lang.correctness.useless-assignment:src/weapons/index.js:409"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`idx[o++]` is assigned twice; the first assignment is useless","path":"src/weapons/index.js","line":409,"fingerprint":"javascript.lang.correctness.useless-assignment:src/weapons/index.js:409"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`NADE.arcPos[n++]` is assigned twice; the first assignment is useless","path":"src/weapons/index.js","line":2973,"fingerprint":"javascript.lang.correctness.useless-assignment:src/weapons/index.js:2973"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`NADE.arcPos[n++]` is assigned twice; the first assignment is useless","path":"src/weapons/index.js","line":2973,"fingerprint":"javascript.lang.correctness.useless-assignment:src/weapons/index.js:2973"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/world/decals.js","line":573,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/world/decals.js:573"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/world/decals.js","line":573,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/world/decals.js:573"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/world/decals.js","line":602,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/world/decals.js:602"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"src/world/decals.js","line":602,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:src/world/decals.js:602"}],"evidence":[],"data":{},"error":null},{"analyzer":"qual-testing","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:has_tests":0.0,"check:test_ratio":0.0,"check:ci_present":0.0,"check:ci_runs_tests":0.0,"check:ci_runs_lint":0.0,"check:tests_cochange":0.0,"test_lines":0.0,"source_lines":37989.0,"test_ratio":0.0,"ci_files":0.0,"cochange_share":0.0,"cochange_commits":3.0},"findings":[],"evidence":[],"data":{"test_commands":[],"lint_commands":[]},"error":null},{"analyzer":"qual-docs","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:readme":1.0,"check:license":0.0,"check:contributing":0.0,"check:changelog":0.0,"readme_lines":17.0},"findings":[],"evidence":[{"kind":"docs","description":"README.md","ref":"README.md","url":null,"weight":0.0}],"data":{},"error":null},{"analyzer":"qual-type-safety","pillar":"quality","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":null}],"flags":[]}