{"$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":"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":"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":"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":"exec (cyclomatic 47): exec has cyclomatic complexity 47 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/config/exec.js"},"region":{"startLine":77}}}],"partialFingerprints":{"codehealthFindingId/v1":"a5b6bc7c784abac0b93096c609f15c407d153d45af5bb26d035532848709fa40"}},{"ruleId":"D1","level":"warning","message":{"text":"nodemonOption (cyclomatic 42): nodemonOption has cyclomatic complexity 42 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/cli/parse.js"},"region":{"startLine":105}}}],"partialFingerprints":{"codehealthFindingId/v1":"5664da37d151fbf825c343be9f6c51f17c280dd052d309a9b0e273cf2e26151a"}},{"ruleId":"D1","level":"warning","message":{"text":"run (cyclomatic 27): run has cyclomatic complexity 27 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/monitor/run.js"},"region":{"startLine":22}}}],"partialFingerprints":{"codehealthFindingId/v1":"5ef6e4ae3c2837105aac20173f957c3b0437b051b90083737599c319ed578e8a"}},{"ruleId":"D1","level":"warning","message":{"text":"(anonymous) (cyclomatic 21): (anonymous) has cyclomatic complexity 21 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/nodemon.js"},"region":{"startLine":80}}}],"partialFingerprints":{"codehealthFindingId/v1":"021c000eb7b353e1648728acefdccbe9119a029a55d9d4eb2d22876e738418d3"}},{"ruleId":"D1","level":"warning","message":{"text":"(anonymous) (cyclomatic 18): (anonymous) has cyclomatic complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/monitor/run.js"},"region":{"startLine":190}}}],"partialFingerprints":{"codehealthFindingId/v1":"78c05d7151f359dfd4a817331b8f6e5c83a5ff673e093db0547b6f0afc2480b0"}},{"ruleId":"D1","level":"warning","message":{"text":"(anonymous) (cyclomatic 17): (anonymous) has cyclomatic complexity 17 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/monitor/match.js"},"region":{"startLine":46}}}],"partialFingerprints":{"codehealthFindingId/v1":"0154e4e5c2006f633a484e7a0776f30a9ece7d2cf6544b122dcf28860223b58a"}},{"ruleId":"D2","level":"warning","message":{"text":"exec (cognitive 61): exec has cognitive complexity 61 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/config/exec.js"},"region":{"startLine":77}}}],"partialFingerprints":{"codehealthFindingId/v1":"a3f5d843c9213f2753e7445abd436aa4532dcfe3b51ecae031bc4c0c7bafb1aa"}},{"ruleId":"D2","level":"warning","message":{"text":"nodemonOption (cognitive 45): nodemonOption has cognitive complexity 45 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/cli/parse.js"},"region":{"startLine":105}}}],"partialFingerprints":{"codehealthFindingId/v1":"42de091f8ba48ef364774fcf3c266d71bdc07b30080d3cf83e4feee359f7e2d1"}},{"ruleId":"D2","level":"warning","message":{"text":"run (cognitive 37): run has cognitive complexity 37 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/monitor/run.js"},"region":{"startLine":22}}}],"partialFingerprints":{"codehealthFindingId/v1":"030c8fdb947ef5d1ba9e03759656344bf655e8e0c25c8d95f2e334b692a8d449"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 25): (anonymous) has cognitive complexity 25 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/nodemon.js"},"region":{"startLine":80}}}],"partialFingerprints":{"codehealthFindingId/v1":"1954a37387ad3273f3672609b5ad012dab16674aa4aa0474bc10ad5fe9045875"}},{"ruleId":"D2","level":"warning","message":{"text":"filterAndRestart (cognitive 24): filterAndRestart has cognitive complexity 24 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/monitor/watch.js"},"region":{"startLine":137}}}],"partialFingerprints":{"codehealthFindingId/v1":"275181526d5cc33f04d0c50d6514144249a1aa5e6b620c0786b9656fb1f1cae1"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 24): (anonymous) has cognitive complexity 24 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/monitor/run.js"},"region":{"startLine":190}}}],"partialFingerprints":{"codehealthFindingId/v1":"9e78578770d29f1b15f61f9c793f4e5bdea375b2f6d50e78b5eb0dadaa36d2cd"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 23): (anonymous) has cognitive complexity 23 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/monitor/match.js"},"region":{"startLine":46}}}],"partialFingerprints":{"codehealthFindingId/v1":"610971a09cdfd9f922eb84da94e6a0706c11e33b20014e6313926fa2ffa59e55"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 20): (anonymous) has cognitive complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/monitor/match.js"},"region":{"startLine":204}}}],"partialFingerprints":{"codehealthFindingId/v1":"071767f498a9faac8ccdb4ce0a16b9ab5081afe82489e63edf83da6b968238f8"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 20): (anonymous) has cognitive complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/config/load.js"},"region":{"startLine":46}}}],"partialFingerprints":{"codehealthFindingId/v1":"08f7f8b30a5e2186bf94649f197fd7e0515248bbe56167e12ff8b0c45ac36453"}},{"ruleId":"D2","level":"warning","message":{"text":"nodemon (cognitive 17): nodemon has cognitive complexity 17 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/nodemon.js"},"region":{"startLine":24}}}],"partialFingerprints":{"codehealthFindingId/v1":"0b73b65272f1abf4692dceb99a3939e3b5f6bff79ca4c27c34f996172b1f83e9"}},{"ruleId":"D2","level":"warning","message":{"text":"parse (cognitive 16): parse has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"lib/cli/parse.js"},"region":{"startLine":31}}}],"partialFingerprints":{"codehealthFindingId/v1":"92c4d376dfa07cb0ab02cc910bff0ec02c9079846e59af5b0d91d88d58c73c3a"}},{"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":"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":"ab1d809ed91294a832972e86a989812ed37ccce282329a1aee64cfdaf546fc37"},"taxa":[{"id":"CWE-1357","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},{"id":"CWE-353","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":"b37d7ca0e6f2a4f33071f61d08edd07ca7425dd8849544d9d1e9aac0ce75495f"},"taxa":[{"id":"CWE-1357","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},{"id":"CWE-353","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":"b37d7ca0e6f2a4f33071f61d08edd07ca7425dd8849544d9d1e9aac0ce75495f"},"taxa":[{"id":"CWE-1357","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},{"id":"CWE-353","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":"c6ef2f316ca631b692d03c475bed7e473e93f3db6fa35d9ef86248c50808e234"},"taxa":[{"id":"CWE-1357","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},{"id":"CWE-353","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":"c6ef2f316ca631b692d03c475bed7e473e93f3db6fa35d9ef86248c50808e234"},"taxa":[{"id":"CWE-1357","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},{"id":"CWE-353","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":"ab8d83539c5ebe567cb6deae98d392d6617f9ea4001a34a9a21fb3f393c0be8f"},"taxa":[{"id":"CWE-1357","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},{"id":"CWE-353","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":"90174f77594fc1a15a13cee9e0945aa3986c01432de40f0807dd47e71a6e8193"},"taxa":[{"id":"CWE-1357","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},{"id":"CWE-353","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":"90174f77594fc1a15a13cee9e0945aa3986c01432de40f0807dd47e71a6e8193"},"taxa":[{"id":"CWE-1357","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},{"id":"CWE-353","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":"8af93b54d7b6d09176d9c9016e65470b9e3497c2e30cd6af0b8b0a89230292a4"},"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":"fe2d688610b51e0a5a02c7c5dd1724a4986e40f2689fb84510e2ec0164c27d6a"}},{"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":"6c9bd328f1425e4185802e2cb388fc5dec17b2da92bc5227fa43622d89e747d7"}},{"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":"6c9bd328f1425e4185802e2cb388fc5dec17b2da92bc5227fa43622d89e747d7"}},{"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":"1f51a163f26d94ce6b6f473117dde579d091c8cbf9e59810475c94d9fc921120"}},{"ruleId":"D35","level":"error","message":{"text":"Boundary-crossing change coupling: run.js \u2194 bus.js: \u0060lib/monitor/run.js\u0060 (context monitor) and \u0060lib/utils/bus.js\u0060 (context utils) live in DIFFERENT modules yet change together 80% of the time (8 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":"lib/monitor/run.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"714fac6e3a02f0e653a25c98771ad76514dfc6902b90f5bd591b9ec9f5cbc79b"}},{"ruleId":"D35","level":"error","message":{"text":"Boundary-crossing change coupling: watch.js \u2194 bus.js: \u0060lib/monitor/watch.js\u0060 (context monitor) and \u0060lib/utils/bus.js\u0060 (context utils) live in DIFFERENT modules yet change together 70% of the time (7 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":"lib/monitor/watch.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"7c173224d151b6680cee4654b517265856e7c4944d1be074de1882da8596a48b"}},{"ruleId":"D35","level":"error","message":{"text":"Boundary-crossing change coupling: run.js \u2194 log.js: \u0060lib/monitor/run.js\u0060 (context monitor) and \u0060lib/utils/log.js\u0060 (context utils) live in DIFFERENT modules yet change together 56% of the time (9 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":"lib/monitor/run.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"cd3b9f133d500ee56f1f9505a43c3174a7122d2a998d1f25424a74081727cf98"}},{"ruleId":"D35","level":"error","message":{"text":"Boundary-crossing change coupling: run.js \u2194 index.js: \u0060lib/monitor/run.js\u0060 (context monitor) and \u0060lib/utils/index.js\u0060 (context utils) live in DIFFERENT modules yet change together 55% of the time (18 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":"lib/monitor/run.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"9f6bbfa98c7391ef70c4432b556dca44393cb38f34f4dbcaf8589b0704121181"}},{"ruleId":"D35","level":"error","message":{"text":"Boundary-crossing change coupling: index.js \u2194 run.js: \u0060lib/cli/index.js\u0060 (context cli) and \u0060lib/monitor/run.js\u0060 (context monitor) live in DIFFERENT modules yet change together 54% of the time (7 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":"lib/cli/index.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"02797caa4d52952021f22c8cd7686567b9f5214339b1f7cc2f023f759fe8198b"}},{"ruleId":"D35","level":"error","message":{"text":"Boundary-crossing change coupling: watch.js \u2194 add.js: \u0060lib/monitor/watch.js\u0060 (context monitor) and \u0060lib/rules/add.js\u0060 (context rules) live in DIFFERENT modules yet change together 53% of the time (8 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":"lib/monitor/watch.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"e16ce23fb5b080508239a494014a9a2d7c866d769bc13a7d640109a32736789a"}},{"ruleId":"D35","level":"error","message":{"text":"Boundary-crossing change coupling: load.js \u2194 log.js: \u0060lib/config/load.js\u0060 (context config) and \u0060lib/utils/log.js\u0060 (context utils) live in DIFFERENT modules yet change together 50% of the time (8 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":"lib/config/load.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"aadeb32216da6238ea74dbaf324649ea5a73c4c505c90b243f990cfac8771799"}},{"ruleId":"D35","level":"error","message":{"text":"Boundary-crossing change coupling: watch.js \u2194 index.js: \u0060lib/monitor/watch.js\u0060 (context monitor) and \u0060lib/rules/index.js\u0060 (context rules) live in DIFFERENT modules yet change together 50% of the time (7 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":"lib/monitor/watch.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"9895172b3a23c685197c801edef365b64db4d510a254285f55f19d6f980b4c06"}},{"ruleId":"D35","level":"error","message":{"text":"Boundary-crossing change coupling: run.js \u2194 index.js: \u0060lib/monitor/run.js\u0060 (context monitor) and \u0060lib/rules/index.js\u0060 (context rules) live in DIFFERENT modules yet change together 50% of the time (7 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":"lib/monitor/run.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"9f6bbfa98c7391ef70c4432b556dca44393cb38f34f4dbcaf8589b0704121181"}},{"ruleId":"D35","level":"error","message":{"text":"Boundary-crossing change coupling: index.js \u2194 bus.js: \u0060lib/config/index.js\u0060 (context config) and \u0060lib/utils/bus.js\u0060 (context utils) live in DIFFERENT modules yet change together 50% of the time (5 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":"lib/config/index.js"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"643c4d2f5a6bbc7a2775eba19f3b91950559892fcaf2d8c15e453599b45cdb29"}},{"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":"D36","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":"90f83b4fa27db32740afe9540c905f3c0499caed87f61049a8a903ecc95b41c3"}},{"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":"50de9e0cf7eaa8859165b515e2344c6499f22a4c633bd9a5dc81d3541785f8ce"}},{"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":"b3198c8096e36976a45d3f8a95c03d750ce16675f412b7ce8b612e7922d3285f"}},{"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":"398dacb185d291c4b18b391d173df4253b34b84c13917b0a44bcf64094207b32"}},{"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":"5f52981d81fc964a6185377ffb9853bc78f1ab7bffacbc4ed4c715185513dfeb"}},{"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":"6c6f3e68d79e344d64a78d1d160c82cabd323f15c8034e6e61a1ed41411d0afe"}},{"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":"71f9fc7383732b13293878241c4d91b8e4d85db72b2521db178cb53f3cb6263c"}},{"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":"b2d14ef3e94173862cddd66f6bb99fccd74bcfbb7fb89cb43beab8307fe8d65d"}},{"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":"5ce75d3832466f7b6659020abe4edd006e7b8018e2a32c49a2487efc6b8cc589"}},{"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":"d4b2b0a79f7dd111bf47aa8ddee6969305239f25ff36504a7aa04d2387e639cf"}},{"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":"f8c0bf95121fb81b2bbd95d8b7dfad228713f7cd8fa374bd7ece38606f14db18"}},{"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":"65a00785f1258d9b9deb2dc72dd2dcc48113618ad8e24810b6d7bbf6d3db82c2"}},{"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":"e9997aad70b10ae16893e42dd0eb85a07495adb04c6b191ded6fb76cca69d6c0"}},{"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":"54acc49e572b6ff676821a6dd7f3edecb6a2d93b56102bd3bdaf81233673290c"}},{"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":"783a5c2538b54ec452eb29038f475019dd3aa4d81e05784cf825201d52a07db1"}},{"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":"6f7ba93e4063d6ea2c1ade8b6c8af8c55e6526b72a3109d4580dafa27865472c"}},{"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":"e8b7d4e8c5512364406349704c1391750c0b9621cdfda68877c2a5d6286dad03"}},{"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":"55fa71fbdccde3d636cbd7a15cfb2d5b7043cf2ea27a96fc4c78d40bc2639642"}},{"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":"6a140f05842a15c294b696a0f4fd2425c71e54af4966a42f00a0229b69300514"}},{"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":"aef7f14ad8afa79b59c604c0f4bc0050c029fdc9542def8acdb9bf4c60c710f3"}},{"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":"7cad7ac313af3ba5814b4548f0b78d420cef3bd9f83486cb1ba87698f69e9b54"}},{"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":"baab8f42ef173625568528d1b2e5f9d2c704df9f656ecd68df80d604ebb2e7bd"}},{"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":"2f0bccbcc5852b676e1e6ab32692674b3cc545fd78e2ca4b7399a09983b8d7d6"}},{"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":"911a3dc3493cbfba4facf303b03e143b653dd8a7e283a5958f4a2b6240b416b2"}},{"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":"2eed8271db30f3ec209ec69b0873e65766d165354ba772af6337eed505c4fa74"}},{"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":"b5ad338603435e1d7707a11b839fd895ac60d9b5e208ca4f837f83f3552a9243"}},{"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":"d721547d8e38c60f9dd5ea738d703083e23dd29112d836355239aafaaa2a7e71"}},{"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":"6c9601dfcbc02a69d82cfe900d9922be67c6f232683f73402e06e2d254e1a372"}},{"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":"c6467bca18385a082e4a98dba5f00eb96ce2cbf51992e8c6baaeddb89455999f"}},{"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":"227149e6ef4fc4ee98e674b993c2a4a82e1e1b06c33189372c65226b43bc9803"}},{"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":"fbc3682806a9a46c8ab6b1378dce5889c1b50d37eec62223ae0155c3af9397a7"}},{"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":"336359dd75dee2175b389e5c300c99545dabf115ff3b8c3d8747721c6cd0c9fd"}},{"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":"60cff9ff9a7db55a65bcc089b62a679c3eab55eb32479ff332d6fe592c7df940"}},{"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":"0002e21d6ff488618cd9e1181a1aee6171c46a92eb1e9135832e6c3c1a59f471"}},{"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":"7f18e0c2b911f08acbc083fa590bd330743dfcd6a82ae93e76f378d22a245c37"}},{"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":"2913e6e0e7d87c406f2386403fd066f2198f1365197a649af8d8696d56913437"}},{"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":"6d5c15c22d2480e80efdd6cb7eec402391e21d73d6ea54bcda347f64f45b1a11"}},{"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":"c91ba90189805fe7fca67463031b39cb9722aba693d54bc98943e938599f6fac"}},{"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":"02c0c263dda46fec01a620626fb2e1196043ac9f3bcba2a48d2edb3898866140"}},{"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":"118118542340869db3d473f419e9a85e74e42e9a8c6cabf85428b50996da4d33"}},{"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":"251f86ed6a1d28c336e10786e72c9921bc33b7e6bad7459cf48910436dbad50e"}},{"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":"f53c49dd1ef5f798a1dee42c3446efe9c5e764043d52eeec257b207460787ba5"}},{"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":"fb2fc008a11483a5d0a4e87a0139f232f788764cadb07cdd20ba259578322bef"}},{"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":"05ec8362b2b2432a447a03c1446f7aab26a097560bc2edc187298777d7bebea8"}},{"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":"59f33382ff28f530d2de324da3eb89b09d9538a658f5055da43109adfd34dc5e"}},{"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":"0e3f2b8e45f288ab6b592896da8ba987b8edcaee9b4fc229513b7e36f1adb379"}},{"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":"d080cfb2abae3ccddce74459d6b07bcb9db48ba4aa1d92668ba6099176e26079"}},{"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":"debf1466dab5e7ead783cb51c0289861dadf78e4a3dd7fcec7d183a5a776f7d1"}},{"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":"d69574da984b4e9940b25f3856921d52bfcba35695da59c0a75b1f74464c1ed4"}},{"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":"123e91665acfe4756bd72d54011c0273eb6bf6c2fbe9bad043f7cbfa53784dc1"}},{"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":"07cd47c9d78d40a6136cd0eea1084f643c063c6ec8ba41089a89b538a219625b"}}],"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-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-353","guid":"09d7e902-d4ee-f05d-ae6c-0a1554d0c18f","name":"CWE-353","shortDescription":{"text":"CWE-353"},"helpUri":"https://cwe.mitre.org/data/definitions/353.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":67,"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."]}]}