{"$schema":"https://json.schemastore.org/sarif-2.1.0.json","version":"2.1.0","runs":[{"tool":{"driver":{"name":"codehealth","informationUri":"https://codehealth.canine.dev","rules":[{"id":"D1","name":"Cyclomatic Complexity","shortDescription":{"text":"Cyclomatic Complexity"},"helpUri":"https://codehealth.canine.dev/dimensions/D1"},{"id":"D2","name":"Cognitive Complexity","shortDescription":{"text":"Cognitive Complexity"},"helpUri":"https://codehealth.canine.dev/dimensions/D2"},{"id":"D3","name":"God Classes","shortDescription":{"text":"God Classes"},"helpUri":"https://codehealth.canine.dev/dimensions/D3"},{"id":"D4","name":"Code Duplication","shortDescription":{"text":"Code Duplication"},"helpUri":"https://codehealth.canine.dev/dimensions/D4"},{"id":"D5","name":"Coupling","shortDescription":{"text":"Coupling"},"helpUri":"https://codehealth.canine.dev/dimensions/D5"},{"id":"D7","name":"Architectural Integrity","shortDescription":{"text":"Architectural Integrity"},"helpUri":"https://codehealth.canine.dev/dimensions/D7"},{"id":"D8","name":"Code Coverage","shortDescription":{"text":"Code Coverage"},"helpUri":"https://codehealth.canine.dev/dimensions/D8"},{"id":"D9","name":"Test Distribution","shortDescription":{"text":"Test Distribution"},"helpUri":"https://codehealth.canine.dev/dimensions/D9"},{"id":"D12","name":"Dependency Hygiene","shortDescription":{"text":"Dependency Hygiene"},"helpUri":"https://codehealth.canine.dev/dimensions/D12"},{"id":"D13","name":"Secret Scanning","shortDescription":{"text":"Secret Scanning"},"helpUri":"https://codehealth.canine.dev/dimensions/D13","relationships":[{"target":{"id":"CWE-798","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-259","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}],"properties":{"cwe":["CWE-798","CWE-259"]}},{"id":"D15","name":"Churn \u00D7 Complexity Hotspots","shortDescription":{"text":"Churn \u00D7 Complexity Hotspots"},"helpUri":"https://codehealth.canine.dev/dimensions/D15"},{"id":"D16","name":"Bus Factor","shortDescription":{"text":"Bus Factor"},"helpUri":"https://codehealth.canine.dev/dimensions/D16"},{"id":"D20","name":"ADR Quality","shortDescription":{"text":"ADR Quality"},"helpUri":"https://codehealth.canine.dev/dimensions/D20"},{"id":"D21","name":"Naming Consistency","shortDescription":{"text":"Naming Consistency"},"helpUri":"https://codehealth.canine.dev/dimensions/D21"},{"id":"D26","name":"Project Cohesion","shortDescription":{"text":"Project Cohesion"},"helpUri":"https://codehealth.canine.dev/dimensions/D26"},{"id":"D27","name":"Navigability","shortDescription":{"text":"Navigability"},"helpUri":"https://codehealth.canine.dev/dimensions/D27"},{"id":"D28","name":"Secrets (history)","shortDescription":{"text":"Secrets (history)"},"helpUri":"https://codehealth.canine.dev/dimensions/D28","relationships":[{"target":{"id":"CWE-798","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-259","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}],"properties":{"cwe":["CWE-798","CWE-259"]}},{"id":"D29","name":"Static Analysis (SAST)","shortDescription":{"text":"Static Analysis (SAST)"},"helpUri":"https://codehealth.canine.dev/dimensions/D29","relationships":[{"target":{"id":"CWE-79","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-89","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-78","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-94","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-77","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}],"properties":{"cwe":["CWE-79","CWE-89","CWE-78","CWE-94","CWE-77"]}},{"id":"D31","name":"IaC \u0026 Container Security","shortDescription":{"text":"IaC \u0026 Container Security"},"helpUri":"https://codehealth.canine.dev/dimensions/D31","relationships":[{"target":{"id":"CWE-1032","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-732","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-16","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}],"properties":{"cwe":["CWE-1032","CWE-732","CWE-16"]}},{"id":"D33","name":"JS/npm Dependency Vulnerabilities","shortDescription":{"text":"JS/npm Dependency Vulnerabilities"},"helpUri":"https://codehealth.canine.dev/dimensions/D33","relationships":[{"target":{"id":"CWE-1395","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-937","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}],"properties":{"cwe":["CWE-1395","CWE-937"]}},{"id":"D34","name":"Knowledge Freshness","shortDescription":{"text":"Knowledge Freshness"},"helpUri":"https://codehealth.canine.dev/dimensions/D34"},{"id":"D35","name":"Change Coupling","shortDescription":{"text":"Change Coupling"},"helpUri":"https://codehealth.canine.dev/dimensions/D35"},{"id":"D36","name":"Supply-chain Provenance \u0026 Signing","shortDescription":{"text":"Supply-chain Provenance \u0026 Signing"},"helpUri":"https://codehealth.canine.dev/dimensions/D36","relationships":[{"target":{"id":"CWE-1357","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-494","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}],"properties":{"cwe":["CWE-1357","CWE-494"]}},{"id":"D37","name":"Vulnerability-disclosure Policy","shortDescription":{"text":"Vulnerability-disclosure Policy"},"helpUri":"https://codehealth.canine.dev/dimensions/D37","relationships":[{"target":{"id":"CWE-1059","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}],"properties":{"cwe":["CWE-1059"]}},{"id":"D38","name":"OSV Dependency Vulnerabilities","shortDescription":{"text":"OSV Dependency Vulnerabilities"},"helpUri":"https://codehealth.canine.dev/dimensions/D38","relationships":[{"target":{"id":"CWE-1395","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-937","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}],"properties":{"cwe":["CWE-1395","CWE-937"]}}]}},"results":[{"ruleId":"D1","level":"warning","message":{"text":"requireNative (cyclomatic 169): requireNative has cyclomatic complexity 169 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform/index.js"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"9a476c3a10906ac42ba2da495017395de3c2c5b616ce78566bef842fa04bb8b5"}},{"ruleId":"D1","level":"warning","message":{"text":"requireNative (cyclomatic 169): requireNative has cyclomatic complexity 169 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform-react/index.js"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"bd8c376222526a83d72f753ab8044dff3d68f42843db40757b16aadd754820ac"}},{"ruleId":"D1","level":"warning","message":{"text":"requireNative (cyclomatic 169): requireNative has cyclomatic complexity 169 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/playground/index.js"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"3a33662917862bdf78e659750c6bb73a5b843252a4c7a8429d5f229b6c059169"}},{"ruleId":"D1","level":"warning","message":{"text":"requireNative (cyclomatic 169): requireNative has cyclomatic complexity 169 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/minify/index.js"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"2e93d54792e6404f611c42be57de2b76d327be28fc13a3ab1a2da6def2336b60"}},{"ruleId":"D1","level":"warning","message":{"text":"requireNative (cyclomatic 169): requireNative has cyclomatic complexity 169 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/bindings.js"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"05cccee099f380e2a384cd10cc4a64f948aa2d06b53fc3ae9931b900201f130c"}},{"ruleId":"D1","level":"warning","message":{"text":"isFileMusl (cyclomatic 38): isFileMusl has cyclomatic complexity 38 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform/index.js"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"6a26ad1b62ff567566a2799c63c642c6204f5489722253551912b2c8ab7981da"}},{"ruleId":"D1","level":"warning","message":{"text":"isFileMusl (cyclomatic 38): isFileMusl has cyclomatic complexity 38 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform-react/index.js"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"a731bd7f57da7f26a24b791d2025fecb23279c77572b98c935b9f6c034b164c3"}},{"ruleId":"D1","level":"warning","message":{"text":"isFileMusl (cyclomatic 38): isFileMusl has cyclomatic complexity 38 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/minify/index.js"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"b0094eb7269db9dcbf8b9052fd9e3166ece2b99808b5f84f9843b65920a4050f"}},{"ruleId":"D1","level":"warning","message":{"text":"isFileMusl (cyclomatic 38): isFileMusl has cyclomatic complexity 38 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/bindings.js"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"2dff0d15994164ecfb3e758c4cfd9a1f21e54542dc26e1cc63f0bfc1e1798611"}},{"ruleId":"D1","level":"warning","message":{"text":"isFileMusl (cyclomatic 35): isFileMusl has cyclomatic complexity 35 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/playground/index.js"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"413b515881fe7d07c3d4150e989aef24fc3ecdc13894469ec0f1b325f3c4ab6a"}},{"ruleId":"D2","level":"warning","message":{"text":"requireNative (cognitive 371): requireNative has cognitive complexity 371 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform/index.js"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"8288cea169eb3a6d8e87a844d16b5e0f8b8f9584968f1ac70dadadfb9361fd33"}},{"ruleId":"D2","level":"warning","message":{"text":"requireNative (cognitive 371): requireNative has cognitive complexity 371 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform-react/index.js"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"1c2d4ee0c46cc9dfe08ac72694f8a819396eb5154f32d0adde30f6e523855039"}},{"ruleId":"D2","level":"warning","message":{"text":"requireNative (cognitive 371): requireNative has cognitive complexity 371 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/playground/index.js"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"99f3cb268d56739368c5c7150bcff42fafba44b06adc00e50e56e9c6affa68b9"}},{"ruleId":"D2","level":"warning","message":{"text":"requireNative (cognitive 371): requireNative has cognitive complexity 371 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/minify/index.js"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"4603faf2743a8cf5c29df59641dcf11fd284b58c971855011b07bc642a7587f7"}},{"ruleId":"D2","level":"warning","message":{"text":"requireNative (cognitive 371): requireNative has cognitive complexity 371 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/bindings.js"},"region":{"startLine":67}}}],"partialFingerprints":{"codehealthFindingId/v1":"abcb6af2a094ddb0e047720ab3d5b77eca3a8188431dc63a821ddbe40310f0f4"}},{"ruleId":"D2","level":"warning","message":{"text":"isFileMusl (cognitive 62): isFileMusl has cognitive complexity 62 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform/index.js"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"304f38da8a4c0e113ab598c9d1924d157846a4bda8c4801cbe82e7b61a140782"}},{"ruleId":"D2","level":"warning","message":{"text":"isFileMusl (cognitive 62): isFileMusl has cognitive complexity 62 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform-react/index.js"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"bd2d50ca150583914deb12dba215af43d2dabc976fa69b6da5b088b5d9d73f39"}},{"ruleId":"D2","level":"warning","message":{"text":"isFileMusl (cognitive 62): isFileMusl has cognitive complexity 62 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/minify/index.js"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"7df7e7757e3ac4aeb31e8d8705a37c7d4f570143ccefb019cda226c5d2481fb2"}},{"ruleId":"D2","level":"warning","message":{"text":"isFileMusl (cognitive 62): isFileMusl has cognitive complexity 62 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/bindings.js"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"270126dd9ae39c42c83e6b394c2d4fd7eca9d4591d113c97da58625c9476e8dc"}},{"ruleId":"D2","level":"warning","message":{"text":"isFileMusl (cognitive 58): isFileMusl has cognitive complexity 58 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/playground/index.js"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"42d5cb679c002b1ed9e25d6648b57ae41904f2f1c259643e3f427d9bee9f967d"}},{"ruleId":"D2","level":"warning","message":{"text":"reformatNodeCompatTable (cognitive 44): reformatNodeCompatTable has cognitive complexity 44 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"tasks/compat_data/build.js"},"region":{"startLine":58}}}],"partialFingerprints":{"codehealthFindingId/v1":"f94ac038f5200e615f90a51d68bca351b5978c9c0ee029e855150bedf9c35116"}},{"ruleId":"D2","level":"warning","message":{"text":"__napiWasiResolveCandidate (cognitive 25): __napiWasiResolveCandidate has cognitive complexity 25 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform/index.js"},"region":{"startLine":586}}}],"partialFingerprints":{"codehealthFindingId/v1":"a4e0d4cddf7d43499f9365f9ca4ad05f2bd1fc3723e8de51f806bc363ce7c991"}},{"ruleId":"D2","level":"warning","message":{"text":"__napiWasiResolveCandidate (cognitive 25): __napiWasiResolveCandidate has cognitive complexity 25 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform-react/index.js"},"region":{"startLine":586}}}],"partialFingerprints":{"codehealthFindingId/v1":"5ef4cffc7b130a6683fa7084336ced00961c3f8366f3cdc3f7b22c833e02891d"}},{"ruleId":"D2","level":"warning","message":{"text":"__napiWasiResolveCandidate (cognitive 25): __napiWasiResolveCandidate has cognitive complexity 25 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/playground/index.js"},"region":{"startLine":586}}}],"partialFingerprints":{"codehealthFindingId/v1":"a1fe64739201950a84566eea5f3e5492bd4e6387a4d87087105c68d545120a27"}},{"ruleId":"D2","level":"warning","message":{"text":"__napiWasiResolveCandidate (cognitive 25): __napiWasiResolveCandidate has cognitive complexity 25 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/minify/index.js"},"region":{"startLine":586}}}],"partialFingerprints":{"codehealthFindingId/v1":"a39f9b92c65bf464e58051870be716ccc27b4f159bf84f06e09b5b0726a3af57"}},{"ruleId":"D2","level":"warning","message":{"text":"__napiWasiResolveCandidate (cognitive 25): __napiWasiResolveCandidate has cognitive complexity 25 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/bindings.js"},"region":{"startLine":586}}}],"partialFingerprints":{"codehealthFindingId/v1":"473235cd77a6ada313962e9eb92db20b5318c5dfeca5d15d17a3836e98580939"}},{"ruleId":"D2","level":"warning","message":{"text":"__attachCleanupErrors (cognitive 16): __attachCleanupErrors has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform/transform.wasi-browser.js"},"region":{"startLine":69}}}],"partialFingerprints":{"codehealthFindingId/v1":"c65f6ed1d6debff36d76c26fbdd7bfe815401ab45a6d75dc81414aeace1c0448"}},{"ruleId":"D2","level":"warning","message":{"text":"__attachCleanupErrors (cognitive 16): __attachCleanupErrors has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform-react/transform-react.wasi-browser.js"},"region":{"startLine":69}}}],"partialFingerprints":{"codehealthFindingId/v1":"6b73171c831067b53280cde3dede1bf8b8bf403537ccb5067591381ac313c476"}},{"ruleId":"D2","level":"warning","message":{"text":"__attachCleanupErrors (cognitive 16): __attachCleanupErrors has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/playground/playground.wasi-browser.js"},"region":{"startLine":69}}}],"partialFingerprints":{"codehealthFindingId/v1":"4acd54d6c0a3bf1fd4f07fe8fed4f65e350555d9b9b66b14263a41f955945277"}},{"ruleId":"D2","level":"warning","message":{"text":"__attachCleanupErrors (cognitive 16): __attachCleanupErrors has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/minify/minify.wasi-browser.js"},"region":{"startLine":69}}}],"partialFingerprints":{"codehealthFindingId/v1":"f979c1e60762b32e36cb1461010b65f0b9ef5ee5a2de9b7ae227e5f3ab092fc2"}},{"ruleId":"D2","level":"warning","message":{"text":"__attachCleanupErrors (cognitive 16): __attachCleanupErrors has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/parser.wasi-browser.js"},"region":{"startLine":69}}}],"partialFingerprints":{"codehealthFindingId/v1":"1f7d0530fd46c00bc093cb514b1447bc5668467a808814ed8fd672d6a390d075"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: transform/index.js: FileTooLong \u2014 722 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform/index.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"002cf59cfebf822e8276847267113f09f5fc240a589983c127ebcaf3e00a7b80"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: transform-react/index.js: FileTooLong \u2014 717 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform-react/index.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"011a2907423b91fd14d4bb83386a930152cd83cb80ebbaceb1841fde1241234e"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: playground/index.js: FileTooLong \u2014 708 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/playground/index.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"cf528d55f881dee3bc5e34fba6f9dc974c0245f3c16f78d3ea97a90fe3b47f46"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: minify/index.js: FileTooLong \u2014 718 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/minify/index.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"d64549f662c6c015947a50b956f1274cc0a9aa73f3f002aec952769d88c17c2f"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: src-js/bindings.js: FileTooLong \u2014 725 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/bindings.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"00f857f61cff5348f572a5ffc51002a0d0a3f36d765ee8b11001cfcf9cc2b80e"}},{"ruleId":"D8","level":"warning","message":{"text":"Coverage not measured \u2014 test suite did not build: Coverage NOT MEASURED: the repo\u0027s own test suite did not build (a C#/MSBuild compiler error in the test code), so no coverage could be collected. It is excluded from the score rather than counted as a near-zero defect. Fix the test build, or commit the Cobertura/OpenCover/lcov report your CI already produces, and real coverage will be measured."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"8beb176c604706486df63d2215f767f50520c8d949b1d464345de14ded442c69"}},{"ruleId":"D9","level":"note","message":{"text":"No tests found: No test projects found in the repository."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"c9bf64cbb5a4ae13d6bcd01fa3bc8d2879d860c73bc67f176ee3c2cecb8adce3"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: napi/minify/index.js: napi/minify/index.js changed 18 times in last 90 days, max complexity 169."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/minify/index.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"7c4fd06e34bec9c376222cb99ebe6c77f68bf0e0c7219e4a7c6e6aeff9ff6847"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: apps/oxfmt/src-js/bindings.js: apps/oxfmt/src-js/bindings.js changed 17 times in last 90 days, max complexity 169."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/src-js/bindings.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"cbc663dc92fc422ce94623fd1caa90ab1229751b093d176ed56f977393f215ee"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: apps/oxlint/src-js/bindings.js: apps/oxlint/src-js/bindings.js changed 17 times in last 90 days, max complexity 169."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxlint/src-js/bindings.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"835ee894d9035265c3e06df1914b30014ba9cc568ab82175258f6baef8eaaed3"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: napi/parser/src-js/bindings.js: napi/parser/src-js/bindings.js changed 17 times in last 90 days, max complexity 169."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/bindings.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"88065c90f83c1144e26c2111738f286f05f2a547a2216f5ba3436e6d364cd0b4"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: napi/transform/index.js: napi/transform/index.js changed 17 times in last 90 days, max complexity 169."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/transform/index.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"0a8f5cc8b1e826dba4f39a0b9797e05341e492565073380522bf3eebb237420f"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: apps/oxlint/src-js/generated/deserialize.js: apps/oxlint/src-js/generated/deserialize.js changed 11 times in last 90 days, max complexity 48. 1 of those changes were fix/bug commits \u2014 a defect-dense hotspot worth prioritising."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxlint/src-js/generated/deserialize.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"ae21638868c4b2bb8c1ff9a6a1a969b0e2c18fd8a004a9a0f98ee514e57e90b2"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: napi/parser/src-js/generated/deserialize/ts.js: napi/parser/src-js/generated/deserialize/ts.js changed 11 times in last 90 days, max complexity 48. 1 of those changes were fix/bug commits \u2014 a defect-dense hotspot worth prioritising."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/generated/deserialize/ts.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"15974dd25cbd4ffc5c4e2fd97d46cf2636146efefb434e9bf0a4f3ec39f7a9d8"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: napi/parser/src-js/generated/deserialize/ts_parent.js: napi/parser/src-js/generated/deserialize/ts_parent.js changed 11 times in last 90 days, max complexity 48. 1 of those changes were fix/bug commits \u2014 a defect-dense hotspot worth prioritising."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/generated/deserialize/ts_parent.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"be594b0d8f1ed7fa8af0fc6246a200ef180c66b60aaa5cd2ab16519c2bab526f"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: napi/parser/src-js/generated/deserialize/ts_range.js: napi/parser/src-js/generated/deserialize/ts_range.js changed 11 times in last 90 days, max complexity 48. 1 of those changes were fix/bug commits \u2014 a defect-dense hotspot worth prioritising."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/generated/deserialize/ts_range.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"dab9e2cc65fefd35dd89c275037e009d7f800398bdcec5eb0a7d2ad26111df33"}},{"ruleId":"D15","level":"warning","message":{"text":"Hotspot: napi/parser/src-js/generated/deserialize/ts_range_parent.js: napi/parser/src-js/generated/deserialize/ts_range_parent.js changed 11 times in last 90 days, max complexity 48. 1 of those changes were fix/bug commits \u2014 a defect-dense hotspot worth prioritising."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/generated/deserialize/ts_range_parent.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"cc342b85d41036716580e121da0499972e7c8bf9700049aef6c40a24c120cd26"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem (why the formatting check is run) or consequences/trade-offs are stated; only a test-run output is visible: Add a Context section explaining why the formatting check runs and an Alternatives/Consequences section on trade-offs such as false-positive handling"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/exclude_nested/10.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"75a3f183110871f71d5d14a3391f2c3c6514473011c7527d38f7c3560b588a11"}},{"ruleId":"D20","level":"warning","message":{"text":"Not an ADR: the visible content is CI/CD test output (format-check command and result) with no context/problem or decision: "},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/exclude_nested/11.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"d1e786af9f5b23a97e93777156ddd3efc19a5ce9447b1fd8f41a880d3cf57a5c"}},{"ruleId":"D20","level":"warning","message":{"text":"No decision (what formatting rule is enforced) and no consequences; only a test output dump: Replace with an ADR describing the architectural decision (e.g. that bar/error.js must match a specific style guideline) and its trade-offs"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/exclude_nested/12.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"b73145bf2f75edf86f0140c0fe90a8ce7e9a5668be63231df88673476f372ee7"}},{"ruleId":"D20","level":"warning","message":{"text":"No architecture decision recorded (only a test output dump): "},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/exclude_nested/13.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"0a44bfbdc2f06d1070ce530782604fc087b85bb187c906393f0d4d6d0d3abf80"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem or decision; only a CI/CD test command is present: Replace with an architecture decision describing the design/principle being verified (e.g. that bar directories conform to a specific format) and its consequences"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/exclude_nested/14.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"6deec8882d82ccefc0052e51cb45f5887e164a79d594998f2ad206c5a1a5cee0"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision; only a test/CI command is recorded: Replace with an actual architecture decision describing the design choice (e.g. which format to enforce on which files) and its consequences"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/exclude_nested/15.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"bb7abfe376973e8946fac406c1ddeba1139375b62f28b17b5b6aab45cfff5c62"}},{"ruleId":"D20","level":"warning","message":{"text":"No real architecture decision: only a test command and file-tree output are present: Replace with an actual architectural decision (e.g. which format to enforce on which input) and its consequences"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/exclude_nested/16.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"695b57b9cd9405609ba25b7b646bbb1da20d10ff88effa6879e7f59e5452a1e5"}},{"ruleId":"D20","level":"warning","message":{"text":"No decision statement (what the formatting check actually does) and no consequences/trade-offs: Add a one-line Decision line stating what the --check flag enforces (e.g. that error.js is formatted as per the style guide) and note any trade-offs such as false-positive rejection of non-breaking whitespace changes"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/exclude_nested/17.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"f7654d6acac057a63161866b929c5a2645ed37fc92b16d51b803404c7cc200f3"}},{"ruleId":"D20","level":"warning","message":{"text":"Consequences/trade-offs of migrating ignore patterns (loss of custom ignore rules) are not present in the visible text: Add a Consequences section noting that existing .gitignore ignores/dist/ files will no longer match Biome\u0027s dist pattern"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/migrate_biome/10.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"dabeffea5828eb4f793296a6bbac14984bb0982d66be2e7e0652bdf09f7f4939"}},{"ruleId":"D20","level":"warning","message":{"text":"Context/problem (\u0027overrides cannot be migrated automatically yet\u0027) plus consequences/trade-offs are not present and the decision is not stated: Add a Consequences section covering why migration of overrides matters (e.g. consistency with .oxfmtrc) and any trade-offs such as breaking existing override workflows"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/migrate_biome/11.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"78d681bfe075d274d11633ec432efcaa433b614839f6a7185ee6246e2ab057cd"}},{"ruleId":"D20","level":"warning","message":{"text":"The body is a CLI invocation and file-tree dump with no context/problem or explicit decision/consequences: Add the problem (e.g. conflicting Prettier/svelte config) and the explicit migration decision plus consequences"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/migrate_prettier/10.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"4bc82e0f0dd09208194790dd31f4ba368feb270348f18da747fe437036a0c0c4"}},{"ruleId":"D20","level":"warning","message":{"text":"Consequences/trade-offs of the migrate command (e.g. loss of Prettier overrides not migrated) are not stated: Add a Consequences section noting that existing .prettierrc/.gitkeep override files will be created as .oxfmtrc.json and any migration is manual, so users must review them"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/migrate_prettier/12.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"1151b3e0009b972f85c0eca0f0b165bac9d0f00073300d8983a6884a414d9e93"}},{"ruleId":"D20","level":"warning","message":{"text":"Consequences/trade-offs are absent from the visible text \u2014 the decision is framed as a one-line command with output logs and an error list but no trade-offs (e.g. loss of Prettier defaults when migrating) or migration failure handling: Add a Consequences section noting that .prettierrc.json is created over existing .oxfmtrc, so any prior .oxfmtrc must be deleted and the new one merged, plus a note on what happens if the Prettier config already exists"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/test/cli/migrate_prettier/13.snap.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"e03caabdb4bdd73d45d6e6002549c294fce9f5f1f249427b3975eff27e7638f4"}},{"ruleId":"D28","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"ab022af83d36057eb5dd14cde2c32101eeb24f3807673eda226c851a1e402b85"}},{"ruleId":"D28","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"cc917c28d07cc31217df878cc65b205a5f5f9e9f410279412b012da661297014"}},{"ruleId":"D28","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"6229b0b15558df2c5220677a1010a679e8d585918d1c9bd9dff5490d91d7c640"}},{"ruleId":"D28","level":"note","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"3cdfd7beb31b791ae18dcb425e21eb157c842e7bbcd522cc330573c1a6538db1"}},{"ruleId":"D29","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"4f32e8f3fbf7570a6be9670d21e5c6b43cdac618ba5bf8a556a1c427f087797e"},"taxa":[{"id":"CWE-829","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"4f32e8f3fbf7570a6be9670d21e5c6b43cdac618ba5bf8a556a1c427f087797e"},"taxa":[{"id":"CWE-829","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"4f32e8f3fbf7570a6be9670d21e5c6b43cdac618ba5bf8a556a1c427f087797e"},"taxa":[{"id":"CWE-829","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"71ebe392dfa31003955c80cb2153cd9d1e87a80b915404c31552b862ce21df2e"},"taxa":[{"id":"CWE-78","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"71ebe392dfa31003955c80cb2153cd9d1e87a80b915404c31552b862ce21df2e"},"taxa":[{"id":"CWE-78","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"71ebe392dfa31003955c80cb2153cd9d1e87a80b915404c31552b862ce21df2e"},"taxa":[{"id":"CWE-78","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"5137c6b6c996378a2a98afbe1496ce95b182518ccde2604694a6d5b2ea8cffd6"},"taxa":[{"id":"CWE-78","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"3cc831f125abde9592b811113ae9f5e9ea434e1bb01c083cd728738083db7529"},"taxa":[{"id":"CWE-78","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"7cf8a78c4a993aecafcb4fe2b18ecb6ff3aced137586a07de2812771fcf18756"},"taxa":[{"id":"CWE-829","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"1498825690ee691422757d83c6c8726aaf69040fa62a3b6b71a03075f0880320"},"taxa":[{"id":"CWE-829","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"85f99189d964cdde824a816d83f2290af0a3f7efe42feb1d6495743a90e33e22"},"taxa":[{"id":"CWE-829","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D31","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"30b40da5c76d9d185d53279aad925a50e82e4dd82135a8f3f0f1ee6249218dbc"}},{"ruleId":"D31","level":"note","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"b33478d526b4b75f2d1effac71d00f20d80ae6679f585c0aa406adc1aaa29f92"}},{"ruleId":"D35","level":"error","message":{"text":"Boundary-crossing change coupling: bindings.js \u2194 bindings.js: \u0060apps/oxfmt/src-js/bindings.js\u0060 (context oxfmt) and \u0060apps/oxlint/src-js/bindings.js\u0060 (context oxlint) live in DIFFERENT modules yet change together 91% of the time (58 shared commits) \u2014 the bounded-context boundary may be in the wrong place, or one context is leaking into the other. This is the behavioural boundary violation a static scan can\u0027t see."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/src-js/bindings.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"35fab5cbc0a2eb9d073b4d2735349ee1f3314f08567e0950d6462f06f30a9284"}},{"ruleId":"D35","level":"warning","message":{"text":"Change coupling: bindings.js \u2194 index.js: \u0060napi/parser/src-js/bindings.js\u0060 and \u0060napi/transform/index.js\u0060 change together 98% of the time (60 shared commits) with no explicit dependency \u2014 a hidden/logical coupling. If they belong together, co-locate them; if not, break the coupling."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/parser/src-js/bindings.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"44a50fd5fe36f3dc8af3c918ae8484ff93ae28d3d85eea9cc7cfe08cfc60bd2c"}},{"ruleId":"D35","level":"warning","message":{"text":"Change coupling: index.js \u2194 index.js: \u0060napi/minify/index.js\u0060 and \u0060napi/transform/index.js\u0060 change together 97% of the time (68 shared commits) with no explicit dependency \u2014 a hidden/logical coupling. If they belong together, co-locate them; if not, break the coupling."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/minify/index.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"ba30f8fea408d2b6c4c90289ae5fc35350f94296cf403873b18ac5bdd7241ead"}},{"ruleId":"D35","level":"warning","message":{"text":"Change coupling: index.js \u2194 bindings.js: \u0060napi/minify/index.js\u0060 and \u0060napi/parser/src-js/bindings.js\u0060 change together 97% of the time (59 shared commits) with no explicit dependency \u2014 a hidden/logical coupling. If they belong together, co-locate them; if not, break the coupling."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"napi/minify/index.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"e8aeaccbab103fd68630e24b07444df9ad346d5ad01dd86f232dbf6ad86dbd2e"}},{"ruleId":"D35","level":"warning","message":{"text":"Change coupling: download-fixtures.js \u2194 run.ts: \u0060apps/oxfmt/conformance/download-fixtures.js\u0060 and \u0060apps/oxfmt/conformance/run.ts\u0060 change together 77% of the time (10 shared commits) with no explicit dependency \u2014 a hidden/logical coupling. If they belong together, co-locate them; if not, break the coupling."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/conformance/download-fixtures.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"a9e96a5faf02ea9ae360be3c48439d1c051173c0121bdc58e150acde1a18bbb2"}},{"ruleId":"D35","level":"warning","message":{"text":"Change coupling: bindings.d.ts \u2194 index.ts: \u0060apps/oxfmt/src-js/bindings.d.ts\u0060 and \u0060apps/oxfmt/src-js/index.ts\u0060 change together 58% of the time (14 shared commits) with no explicit dependency \u2014 a hidden/logical coupling. If they belong together, co-locate them; if not, break the coupling."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/src-js/bindings.d.ts"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"64588d2b13b27a1528ad36f28a1283486d61bda3785cbf1ca99a8e369651d3ae"}},{"ruleId":"D35","level":"warning","message":{"text":"Change coupling: build.ts \u2194 tsdown.config.ts: \u0060apps/oxlint/scripts/build.ts\u0060 and \u0060apps/oxlint/tsdown.config.ts\u0060 change together 57% of the time (8 shared commits) with no explicit dependency \u2014 a hidden/logical coupling. If they belong together, co-locate them; if not, break the coupling."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxlint/scripts/build.ts"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"5daa74788fd381c365f385a40061dc03de380c5fcbba324516aeea9d7f4c598a"}},{"ruleId":"D35","level":"warning","message":{"text":"Change coupling: worker-proxy.ts \u2194 index.ts: \u0060apps/oxfmt/src-js/cli/worker-proxy.ts\u0060 and \u0060apps/oxfmt/src-js/index.ts\u0060 change together 56% of the time (10 shared commits) with no explicit dependency \u2014 a hidden/logical coupling. If they belong together, co-locate them; if not, break the coupling."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/src-js/cli/worker-proxy.ts"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"e87ef66fe2a2de26abadfca1a8dd9323cd6a2239474989aeb23804e751e89f88"}},{"ruleId":"D35","level":"warning","message":{"text":"Change coupling: bindings.d.ts \u2194 cli.ts: \u0060apps/oxlint/src-js/bindings.d.ts\u0060 and \u0060apps/oxlint/src-js/cli.ts\u0060 change together 52% of the time (13 shared commits) with no explicit dependency \u2014 a hidden/logical coupling. If they belong together, co-locate them; if not, break the coupling."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxlint/src-js/bindings.d.ts"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"2b3221d58508cec8e379f15b3f72eefd313d644ec243684b3a99941fcf2f0e6a"}},{"ruleId":"D35","level":"warning","message":{"text":"Change coupling: bindings.d.ts \u2194 worker-proxy.ts: \u0060apps/oxfmt/src-js/bindings.d.ts\u0060 and \u0060apps/oxfmt/src-js/cli/worker-proxy.ts\u0060 change together 50% of the time (9 shared commits) with no explicit dependency \u2014 a hidden/logical coupling. If they belong together, co-locate them; if not, break the coupling."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"apps/oxfmt/src-js/bindings.d.ts"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"4c3d6e1ef55173c769fcaffc66d7bc56ae41c8dcb2f5f604dac97790302efa1b"}},{"ruleId":"D36","level":"note","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"1b213f6eedd4b140d0bc37bdf1496f72811a643f34064f12518b32e9e83bcfc7"}},{"ruleId":"D36","level":"note","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"0e17f71490e4d120a48b2b2881ab866c93b272bef2febb673a3e8e42b2c288ab"}},{"ruleId":"D36","level":"note","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"eb00976a698a5d68999b7ee6d27206fd374e916853e7ff1ead5eed42386f043f"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"06d2f8861eb3252f90c55ee99511196789c475beeca5c02820865c86034fe0b5"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"947f0fa263b2cbe018632a8e0e4ac7b26c463a9b46676f8f524f8e2e42acc600"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"1ea21a556d2f9e056d4390b01348cb707a0fbf5a2499cda95722d2deb3dd9438"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"fa8a50cc2990545a11be13f15f41f7c998dcb206b6a1b56c45e1dc91b0efdd44"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"eea6f61293987eadd46f89165f7a113f9b27756f965fd2e02f061c4a05b1caf5"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"19810759fd86a1cf26774d02f7b43df31815627c543890b4e83bb07cb2c40ef3"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"314308aafeef230e1fa71ee39bdd7af896bf82636e8f70ba46eec5437c35f5eb"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"21b6ebe0836b9e6daf7cfab0fd2c1592221496c9c5fc3dbd604d6a5ea9b90d3f"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"b9f9e735a893fe3dfedddec89e295f3eee750d9ce1fbf0ac12eefd91e7a4accb"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"533e69534ac0e728198ce6febae590b59a8453394278924317272bc1a493c8a7"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"37af558c003648eb383cbc6e31ef397d5715dc12611ccc7c5b87527c13b9e6c4"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"1bf3536e6a97952053166bddcf60960c6a29f43c861e8d7d047b006c55460be4"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"cd7aaedada2eba5caaadbeb7a4bf9c8b545df961f350d161c0df7a97b3d915ce"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"ed6ab416db906c3315ae22cc2210219a3c6ca5c318fac3e0c5e8d7036fbe86c6"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"605f4a403eb5f222281b7ef26ab30b1369dd6a217957649b36095587d3528047"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"e9e4aea8db11e44e76b8c6eb7df32d5b647e8d574c0b8e519cb7ba71811eef36"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"213502041c851b3ca0a54702409854c32a36c03724f218bf18b1d296f3a948bc"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"38cc4b06074ac379be2239a23e83e56462d8e2d178aec87bb18b02070232b29d"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"74d3e1a24f7c1193fa1b37514c0c9dfff69888f21bdc34f7eaf59a737a00ae12"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"bf3f79a0c1c7d5de749649537d46eacaab96baade74568ae502627ffb059e7e3"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"63f68468713f46d5f29162e1b1a4963e85aa33715cdccfd41cc21faf5a74390a"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"34899404f1a3581028ec4a8a97183fbcd450b71c489e542255ab5752bb290953"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"5258f24e028fa5ccd514ff095c9e01d68f58a0ef3b3707f88dbc0adc2767088d"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"2c3a1ee2317e852e0e88eb79b9561807ae66acd6d1df38889c89a04da96f86b1"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"cfda82df29f971db816fbd92388ae8816197f7b8bf621e1aac1ac29ac8925c7a"}},{"ruleId":"D38","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"2d615bb9f019c41ce2a1d46eb21d33a1ec506f8c357899180c3279d20f344727"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"d9692064fe70de8db9a7301a1fd0a3cdce464b1688d1ee52fe8e0424c2735359"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"af5c36ca760e9c2fa54128c57ec7269ea9ebe56601fb5dc4d925805c460a5aa4"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"f129e91a0633ede1e4b25145ac574390cc415cfc97e38d20096f607a5c77dd69"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"3e9ed541093c3434a732c286b4829089947d551f220ca762bba77bb4ef090bcb"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"07eaa39c2bdbd92ad4cdd0cddd567ac2ce740b8443870e22e9b98d44c7b8d027"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"93438d8b298e48bdb68e7821bfc049e6d1f496beeb2ae819f8829b3c4d146999"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"a165ffbe1335b326a4a099132b6cc9708deb166ca563a7f96efae4aa2d5f2503"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"e4006d7d652a8d74fdd9b2d9ac43788c2b8dada307367ca51e5e4656eac7b785"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"cceacbf3a70bb2089f3cf8668461ebd8d88ca361b5a65f01406618c8e2486b7e"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"93bc6a3edc065ad08797f77de4b6e4f73a8f17edd53143cf38ddb009463c6e6a"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"f00b649a1c0e87a4404324b4a2d418c5ff96b55bb89cbaa080c5a0a5d9ba27d1"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"1ebd9831c01dfb29e938bd1f976cee42dc04205adc026bf53b1c2290b65ffc3b"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"157706c9b9bc19e0bb98ab8ce4cb634d33ad2427c628eb12f8c95d9b9d96d628"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"50825b259846eb365e961a94c65a68d77399188d8110f6677d1c8f68300dda47"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"0a4f6536bdd74aaac9bc8ca18ef2c342116ee41b8818a75f21f03ee316df31da"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"f21324abeccfa037135af1582d274562489e6cbb7fd9edfbc397a615e13da39b"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"ea91c791b2e6949744a3582528e36bc83ba05c0ba496f591de8ccefcd3d06960"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"1da9a30c3da12ef72b33cda7efdf84c8e992d465cb302a1abc77dadd71d7e919"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"3e74c56f3f8c2e25d404c2bb1161329702dbba2f0d59f9933e8e9d61cd54d0a2"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"e4fa0c9333507cb87def075ce8173b3f4fde927b535bd9cb6bb2c5c1b7d564e4"}},{"ruleId":"D38","level":"warning","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"36959b8f5efe3d4e44fce9a1aa220b034dd5d07af6cf92980722553f5d32c41c"}},{"ruleId":"D38","level":"note","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"6b0eaeb07b163365e06f6c381b9abc9647d0be77a3a564a5de49777067e90002"}},{"ruleId":"D38","level":"note","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"f650726c4a598655cf208be4f387bb56d63fd5745df38058bc3117265a234455"}},{"ruleId":"D38","level":"note","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"3c307f89b3e64cd488af43d07c6b8486c8b099472d3ace31f95fb78efadef8e8"}}],"taxonomies":[{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d","organization":"MITRE","informationUri":"https://cwe.mitre.org/","isComprehensive":false,"shortDescription":{"text":"The MITRE Common Weakness Enumeration (CWE)."},"taxa":[{"id":"CWE-1032","guid":"5f21e517-68aa-a650-9a25-5771ef024637","name":"OWASP Top Ten \u2014 Security Misconfiguration category","shortDescription":{"text":"OWASP Top Ten \u2014 Security Misconfiguration category"},"helpUri":"https://cwe.mitre.org/data/definitions/1032.html"},{"id":"CWE-1059","guid":"a2381a08-60f6-9554-a8b8-f3018cfaaca5","name":"Insufficient Technical Documentation","shortDescription":{"text":"Insufficient Technical Documentation"},"helpUri":"https://cwe.mitre.org/data/definitions/1059.html"},{"id":"CWE-1357","guid":"e4d2e772-757e-0a5c-bd7d-77052949d866","name":"Reliance on Insufficiently Trustworthy Component","shortDescription":{"text":"Reliance on Insufficiently Trustworthy Component"},"helpUri":"https://cwe.mitre.org/data/definitions/1357.html"},{"id":"CWE-1395","guid":"800e09e7-c11a-8654-9fa6-86f398995fed","name":"Dependency on Vulnerable Third-Party Component","shortDescription":{"text":"Dependency on Vulnerable Third-Party Component"},"helpUri":"https://cwe.mitre.org/data/definitions/1395.html"},{"id":"CWE-16","guid":"659db3ea-affc-8453-8add-c1218fbfcb92","name":"Configuration","shortDescription":{"text":"Configuration"},"helpUri":"https://cwe.mitre.org/data/definitions/16.html"},{"id":"CWE-259","guid":"ae9ad959-fbb6-9d5e-892d-3dca66da0b69","name":"Use of Hard-coded Password","shortDescription":{"text":"Use of Hard-coded Password"},"helpUri":"https://cwe.mitre.org/data/definitions/259.html"},{"id":"CWE-494","guid":"b8a65e0d-e459-4a55-a931-fc1136482375","name":"Download of Code Without Integrity Check","shortDescription":{"text":"Download of Code Without Integrity Check"},"helpUri":"https://cwe.mitre.org/data/definitions/494.html"},{"id":"CWE-732","guid":"1da27e8f-b330-7650-ab63-bd61953eae5d","name":"Incorrect Permission Assignment for Critical Resource","shortDescription":{"text":"Incorrect Permission Assignment for Critical Resource"},"helpUri":"https://cwe.mitre.org/data/definitions/732.html"},{"id":"CWE-77","guid":"332c8ade-6612-9f56-a06b-d8d90b1a8750","name":"Command Injection","shortDescription":{"text":"Command Injection"},"helpUri":"https://cwe.mitre.org/data/definitions/77.html"},{"id":"CWE-78","guid":"2e31ceaf-c7ae-2e5e-9661-cfb1362789cf","name":"OS Command Injection","shortDescription":{"text":"OS Command Injection"},"helpUri":"https://cwe.mitre.org/data/definitions/78.html"},{"id":"CWE-79","guid":"fd45580b-e8c4-fc5e-8c2f-aa8fab0b4dbf","name":"Cross-site Scripting (XSS)","shortDescription":{"text":"Cross-site Scripting (XSS)"},"helpUri":"https://cwe.mitre.org/data/definitions/79.html"},{"id":"CWE-798","guid":"5e8f057d-fee3-995a-a0cb-9fc5b0d174d1","name":"Use of Hard-coded Credentials","shortDescription":{"text":"Use of Hard-coded Credentials"},"helpUri":"https://cwe.mitre.org/data/definitions/798.html"},{"id":"CWE-829","guid":"13c33925-97fb-5a5e-b40c-56d328b8a4d7","name":"CWE-829","shortDescription":{"text":"CWE-829"},"helpUri":"https://cwe.mitre.org/data/definitions/829.html"},{"id":"CWE-89","guid":"6d08fdad-37eb-c150-bbf0-d7d946863407","name":"SQL Injection","shortDescription":{"text":"SQL Injection"},"helpUri":"https://cwe.mitre.org/data/definitions/89.html"},{"id":"CWE-937","guid":"16f316ae-415c-b354-a59b-1f7905f756e9","name":"Using Components with Known Vulnerabilities","shortDescription":{"text":"Using Components with Known Vulnerabilities"},"helpUri":"https://cwe.mitre.org/data/definitions/937.html"},{"id":"CWE-94","guid":"75e7f50c-6c2f-dd52-bf40-bf6c52b861fd","name":"Code Injection","shortDescription":{"text":"Code Injection"},"helpUri":"https://cwe.mitre.org/data/definitions/94.html"}]}],"properties":{"codehealthPublication":{"public":true,"notice":"This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings \u2014 which rule fired, in which file, on which line, and how to fix it \u2014 are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.","securityFindingsRedacted":70,"secretScannerRunsExcluded":0}},"redactionTokens":["A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."]}]}