{"$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":"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":"D6","name":"Cohesion (LCOM4)","shortDescription":{"text":"Cohesion (LCOM4)"},"helpUri":"https://codehealth.canine.dev/dimensions/D6"},{"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":"D10","name":"Test Quality","shortDescription":{"text":"Test Quality"},"helpUri":"https://codehealth.canine.dev/dimensions/D10"},{"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":"D14","name":"License Compliance","shortDescription":{"text":"License Compliance"},"helpUri":"https://codehealth.canine.dev/dimensions/D14"},{"id":"D16","name":"Bus Factor","shortDescription":{"text":"Bus Factor"},"helpUri":"https://codehealth.canine.dev/dimensions/D16"},{"id":"D17","name":"Explicit Debt","shortDescription":{"text":"Explicit Debt"},"helpUri":"https://codehealth.canine.dev/dimensions/D17"},{"id":"D18","name":"Solution Shape","shortDescription":{"text":"Solution Shape"},"helpUri":"https://codehealth.canine.dev/dimensions/D18"},{"id":"D19","name":"Documentation Quality","shortDescription":{"text":"Documentation Quality"},"helpUri":"https://codehealth.canine.dev/dimensions/D19"},{"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":"D30","name":"Dependency Vulnerabilities","shortDescription":{"text":"Dependency Vulnerabilities"},"helpUri":"https://codehealth.canine.dev/dimensions/D30","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":"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":"D32","name":"Data Compliance (PII/GDPR)","shortDescription":{"text":"Data Compliance (PII/GDPR)"},"helpUri":"https://codehealth.canine.dev/dimensions/D32","relationships":[{"target":{"id":"CWE-359","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-312","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-200","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}],"properties":{"cwe":["CWE-359","CWE-312","CWE-200"]}},{"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"]}},{"id":"D40","name":"Network Egress Confinement","shortDescription":{"text":"Network Egress Confinement"},"helpUri":"https://codehealth.canine.dev/dimensions/D40"},{"id":"D41","name":"Kernel \u0026 Syscall Confinement","shortDescription":{"text":"Kernel \u0026 Syscall Confinement"},"helpUri":"https://codehealth.canine.dev/dimensions/D41"}]}},"results":[{"ruleId":"D4","level":"warning","message":{"text":"Duplicated block (15 lines \u00D7 2): CSharpGuide/performance/strings/Strings.cs:133-147 | CSharpGuide/performance/strings/Strings.cs:165-179 \u2014 both copies are in the same file, so extract the block into one function there and call it from each site \u2014 the copies drift apart the first time only one of them is edited."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/performance/strings/Strings.cs"},"region":{"startLine":133}}}],"partialFingerprints":{"codehealthFindingId/v1":"dbf525ca1f431877fc2235727397611a805ee46ba0ecbe7116ce56bba014eb2d"}},{"ruleId":"D10","level":"error","message":{"text":"No assertions (empty test): TestMethod1: Test method has an empty body \u2014 it asserts nothing and exercises no code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"ConcurrencyInCSharpCookbook/06UnitTest/UnitTest1.cs"},"region":{"startLine":8}}}],"partialFingerprints":{"codehealthFindingId/v1":"8dbc61acb07236ace8a361c77ab34d405b5e0330127770862130081208e82c6e"}},{"ruleId":"D10","level":"error","message":{"text":"No assertions (empty test): TestMethod1: Test method has an empty body \u2014 it asserts nothing and exercises no code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"docs/ConcurrencyInCSharpCookbook/06UnitTest/UnitTest1.cs"},"region":{"startLine":8}}}],"partialFingerprints":{"codehealthFindingId/v1":"e186cc21bd69d8d64989b80e57824019f2bf0310dd2daa2eb0cb2a117a70ea31"}},{"ruleId":"D16","level":"note","message":{"text":"Off-boarding risk: anonymized user #1: If anonymized user #1 becomes unavailable, 1 significant file(s) lose their only recent owner: Fabulous-Adventures-In-Data-Structures/sourcecode/chapter 6/Permutations.cs. Pair on, review, or document these before any departure."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"bf01a346b0b6dea4271d3dc472c9a2c84fa88e28bc7e8d06540a080789094cc0"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 3 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/LanguageVersions/8.0/DefaultInterfaceMethod.cs"},"region":{"startLine":18}}}],"partialFingerprints":{"codehealthFindingId/v1":"41073f85199c753ec33a3e3da77e04db37452a836231625da71dcecc91990f4f"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 3 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/LanguageVersions/8.0/DefaultInterfaceMethod.cs"},"region":{"startLine":29}}}],"partialFingerprints":{"codehealthFindingId/v1":"178057b4984e9210985c698db757ba219e6b59201376bf509ff832746e25630a"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 3 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/Net6WebDemo/Program.cs"},"region":{"startLine":14}}}],"partialFingerprints":{"codehealthFindingId/v1":"8ea3b1cfd7af920114644a1ce892012ad4a3fdaa0b36f2e1e506ceddf2da6a60"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 3 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/Program.cs"},"region":{"startLine":40}}}],"partialFingerprints":{"codehealthFindingId/v1":"c6f316f430e8fe5f7d227de0941e86ac80ac9c29e679602593ecfa29c3fe0828"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 3 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/Program.cs"},"region":{"startLine":98}}}],"partialFingerprints":{"codehealthFindingId/v1":"7c6e1240a8ff9bb32f462196a50c670e2402a4984c1f9d43935092a95141673b"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 3 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/SourceGeneratorDemo/MySourceGenerator/MyXmlGenerator.cs"},"region":{"startLine":28}}}],"partialFingerprints":{"codehealthFindingId/v1":"e8fcf6daad074c53b14a0acd1e1fc136486b6000530c1d9f0aab42614c6185c0"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 3 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/SourceGeneratorDemo/SourceGeneratorGuide/Program.cs"},"region":{"startLine":22}}}],"partialFingerprints":{"codehealthFindingId/v1":"7aae275570ddd4102adb7039e497dfc32cd3f5a238a6b55d300f2820c9fc9a88"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 3 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/net8-guide/Program.cs"},"region":{"startLine":42}}}],"partialFingerprints":{"codehealthFindingId/v1":"08ae7d406ec485e7fe21b561e289de32964e2ae897e6c2ce3f26a1c03a4b494f"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 13 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/Program.cs"},"region":{"startLine":44}}}],"partialFingerprints":{"codehealthFindingId/v1":"7dba9104b0a610f5b7c6c27ff0449560afcefc9cb9aae6b12f715d529814b04c"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 4 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/Program.cs"},"region":{"startLine":58}}}],"partialFingerprints":{"codehealthFindingId/v1":"75ead4f717fe7d0bd523992e058bd87bd926a7f8b9925f0a2f5f04a5c3e1a21d"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 4 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/Program.cs"},"region":{"startLine":64}}}],"partialFingerprints":{"codehealthFindingId/v1":"cb4e9d3547893252bdc62c716762c582efd4e73d59243de1f12b0f38d91d41eb"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 4 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/Program.cs"},"region":{"startLine":69}}}],"partialFingerprints":{"codehealthFindingId/v1":"50703ed75d231079e9a8bae2970a0f95969177da7a3648674b656f393baf7305"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 4 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/SourceGeneratorDemo/MySourceGenerator/AugmentingGenerator.cs"},"region":{"startLine":19}}}],"partialFingerprints":{"codehealthFindingId/v1":"f94ad4b8e8916d67d3bf3d1a29246991dfbd91433d075073deb03a67d1dd5ab1"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 4 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/diagnostics/EventSourceDemo/Program.cs"},"region":{"startLine":66}}}],"partialFingerprints":{"codehealthFindingId/v1":"5f93f9b6fc04b7744e0fc69ddfcf28b69edf351efde5f0e229513290aaadf2d8"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 5 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/Program.cs"},"region":{"startLine":80}}}],"partialFingerprints":{"codehealthFindingId/v1":"7cf479ed3e49137c6f70e4017326588aa385643aba4688283787ad09f79ca06b"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 6 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/asynclocal/asynclocal/Program.cs"},"region":{"startLine":9}}}],"partialFingerprints":{"codehealthFindingId/v1":"4810799607e5cfe8a170fd2dc47978cc5cbf3ebfea7511b6468fce38ef79e663"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 8 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/net8-guide/Program.cs"},"region":{"startLine":134}}}],"partialFingerprints":{"codehealthFindingId/v1":"f093ad3becd13f02c210eae13ba85e709e1e3ff8e6d789633ce1e312ccd8a3c8"}},{"ruleId":"D17","level":"warning","message":{"text":"CommentedOutCode: 9 consecutive commented-code lines"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/net8-guide/Program.cs"},"region":{"startLine":144}}}],"partialFingerprints":{"codehealthFindingId/v1":"af78753f1068a825f8bf4cec3c437fa4791e6d46d2f7dfada7bcf7b801c9e255"}},{"ruleId":"D17","level":"warning","message":{"text":"TodoComment: // TODO \u2014 source code is not a task system: move the work to your tracker and leave a reference instead (e.g. \u0060// REF: #123\u0060), so the task is planned where tasks live and the ticket links back to the code."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/performance/SerializationPerformance.cs"},"region":{"startLine":13}}}],"partialFingerprints":{"codehealthFindingId/v1":"07e27b12d2771de948012e2e8b2db1de0c0e4cf2fad354f11d57ed47f96107a7"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: AsyncLocalViaThreadLocal: NamedType AsyncLocalViaThreadLocal \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/async/AsyncLocalViaThreadLocal.cs"},"region":{"startLine":9}}}],"partialFingerprints":{"codehealthFindingId/v1":"8398ccd1b612edfbea7818a32473dfb06b548f0317486199ff0dfa241f6d94c2"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: EventSourceKeywordsConsts: NamedType EventSourceKeywordsConsts \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/diagnostics/EventSourceDemo/EventSourceKeywordsConsts.cs"},"region":{"startLine":6}}}],"partialFingerprints":{"codehealthFindingId/v1":"09a6610284204208d5582696272e7fe04031b8507fc21ad74ed37b61139aac25"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: Program2: NamedType Program2 \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/diagnostics/MetricDemo/Program2.cs"},"region":{"startLine":5}}}],"partialFingerprints":{"codehealthFindingId/v1":"f2a5ae1151da18b031e1e4486445e83376170b526a90afe2b8a032dfe1dcc019"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: Program3: NamedType Program3 \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/diagnostics/MetricDemo/Program3.cs"},"region":{"startLine":5}}}],"partialFingerprints":{"codehealthFindingId/v1":"e42be652f4bf77c447e88cd5541967c78da0baa420842673fd86c419c8953b8c"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: Program4: NamedType Program4 \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/diagnostics/MetricDemo/Program4.cs"},"region":{"startLine":5}}}],"partialFingerprints":{"codehealthFindingId/v1":"45747d42a7a76e601ba7a1cc64e6f54c30d846d87fce3fb94911e982523bbb65"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: CirCle: NamedType CirCle \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/LanguageVersions/10.0/CirCle.cs"},"region":{"startLine":9}}}],"partialFingerprints":{"codehealthFindingId/v1":"6c9a1efb0086a4fd97dd4f8379e083b9734f9e66db4b936ca401e78841cd47f3"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: GlobalUsing: NamedType GlobalUsing \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/LanguageVersions/10.0/GlobalUsing.cs"},"region":{"startLine":8}}}],"partialFingerprints":{"codehealthFindingId/v1":"6179aa3a8d1cb48d8daa476a27706ad36877c847d3174f8acda790f448339399"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: InternalUsing: NamedType InternalUsing \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/LanguageVersions/10.0/Internal/InternalUsing.cs"},"region":{"startLine":3}}}],"partialFingerprints":{"codehealthFindingId/v1":"93e2f94da82b974b139b864575a857850eff1f9e4b0464ce1241a919c64c850b"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: LambdaImprovement: NamedType LambdaImprovement \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/LanguageVersions/10.0/LambdaImprovement.cs"},"region":{"startLine":10}}}],"partialFingerprints":{"codehealthFindingId/v1":"85309b47a973f46c16cb1ad72de09475b738446453f301985851f5c95e61c241"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: RecordPersonStruct: NamedType RecordPersonStruct \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/LanguageVersions/10.0/Structs/RecordPerson.cs"},"region":{"startLine":17}}}],"partialFingerprints":{"codehealthFindingId/v1":"b0e2591b7cedfca17d9f996aa8a28ce2a3ad229892093c47626eb0ad7bfac16e"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: DecompilerAsyncStream: NamedType DecompilerAsyncStream \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/LanguageVersions/8.0/DecompilerAsyncStream.cs"},"region":{"startLine":8}}}],"partialFingerprints":{"codehealthFindingId/v1":"93b1e6f62b9b8d2b06130a4a498ea61cdaa1f63e87ed2bfb3440d6ae5e068a5b"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: NullableRefferenceExample: NamedType NullableRefferenceExample \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/LanguageVersions/8.0/NullableRefferenceExample.cs"},"region":{"startLine":45}}}],"partialFingerprints":{"codehealthFindingId/v1":"6d23a2352f71b8ae90de37d8cfd84b69c06922663023d2cb56a579ccb0d11ee0"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: Ranges: NamedType Ranges \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/LanguageVersions/8.0/Ranges.cs"},"region":{"startLine":17}}}],"partialFingerprints":{"codehealthFindingId/v1":"67cd948bff6b7d6670ff419962167ccf54c5dbcadeed1dc22f34bfc92a805c2f"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: SwitchExpression: NamedType SwitchExpression \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/LanguageVersions/8.0/SwitchExpression.cs"},"region":{"startLine":9}}}],"partialFingerprints":{"codehealthFindingId/v1":"6620a95dc9cff2b54f69b827070a23cf556ad3be4b8367a8ae36fc6680cad6ba"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: Encrypts: NamedType Encrypts \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/net8-guide/Encrypts/Encrypts.cs"},"region":{"startLine":12}}}],"partialFingerprints":{"codehealthFindingId/v1":"cb372e617aff83256986a86e1b64c00cac4dfa07dfb205dcf3990b264783ca46"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: Metrics: NamedType Metrics \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/net8-guide/Metrics/Metrics.cs"},"region":{"startLine":11}}}],"partialFingerprints":{"codehealthFindingId/v1":"82e693368e014ad6a3a5488a23c47c4f8b6989cbef540c9750da788835abc128"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: FrozenTypes: NamedType FrozenTypes \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/net8-guide/Performances/FrozenTypes.cs"},"region":{"startLine":13}}}],"partialFingerprints":{"codehealthFindingId/v1":"17c02002d86c78c24c7daedc0b8ccfee24077dd4da8f3e5ca175a08bd3f12088"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: SearchValueTypes: NamedType SearchValueTypes \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/net8-guide/Performances/SearchValueTypes.cs"},"region":{"startLine":10}}}],"partialFingerprints":{"codehealthFindingId/v1":"53d4e7a02c4803fb9051129a72924b5955b1b3a8bf88c499f1ce16fd63eb915f"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: XxHashTypes: NamedType XxHashTypes \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/net8-guide/Performances/XxHashTypes.cs"},"region":{"startLine":9}}}],"partialFingerprints":{"codehealthFindingId/v1":"dc1e4a8738f93b1460a40116b0cadc8e4f27c8b3b3c3b42957147eb92da0b787"}},{"ruleId":"D17","level":"warning","message":{"text":"Dead code: MyRecord: NamedType MyRecord \u2014 no references found in solution."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"CSharpGuide/SourceGeneratorDemo/SourceGeneratorGuide/Program.cs"},"region":{"startLine":60}}}],"partialFingerprints":{"codehealthFindingId/v1":"a7433aff2c3ebc5c46c6c9c20eabc869b7c6870e77f155694e0d1c0f217364a0"}},{"ruleId":"D18","level":"warning","message":{"text":"Build failed: The target solution did not build cleanly (errors: 2), which caps Solution Shape at 3/10 \u2014 the most basic shape signal is that it compiles. First errors: CS1513: } expected; CS1022: Type or namespace definition, or end-of-file expected."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"24ff41d1fc14d3a19b969001a7e9697d13d34fc0453d84646f56c980eff97f2b"}},{"ruleId":"D18","level":"warning","message":{"text":"Monorepo: only 1 of 45 solutions was scored: This repository contains 45 .NET solutions, but a scan analyzes ONE. Every score, lens, and finding here reflects only \u0060CSharpGuide/CSharpGuide.sln\u0060 \u2014 the other 44 (\u0060AsyncInCSharp/AsyncInCSharp.sln\u0060, \u0060CSAPP/cpps/csapp/csapp.sln\u0060, \u0060CSharpGuide/LanguageVersions/14.0/14.0.sln\u0060, \u0060CSharpGuide/LanguageVersions/7.3/RefForeach.sln\u0060, \u0060CSharpGuide/LanguageVersions/9.0/openapi/openapi.sln\u0060, \u0060CSharpGuide/SourceGeneratorDemo/SourceGeneratorDemo.sln\u0060, \u002B38 more) were not analyzed and are not represented in the headline. To cover them, scan each solution as its own target and group them in a Solution or Product for a portfolio roll-up. If a secondary solution is an archived or vendored tree, declare it \u2014 \u0060.gitattributes\u0060 (\u0060path/** linguist-vendored\u0060) or \u0060.editorconfig\u0060 (\u0060[path/**] generated_code = true\u0060) \u2014 to exclude it from discovery the same way generated code is."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"b7ada9672b99e89b714f44b0e02018626a7b526d2539ee16e5d542efd680ea96"}},{"ruleId":"D18","level":"warning","message":{"text":"Analyzed solution does not cover the bulk of the repository: The scored solution \u0060CSharpGuide/CSharpGuide.sln\u0060 is not representative of this repository \u2014 it references only 159 of 1335 discovered C# files (12 %). Lenses that need the product\u0027s source (domain modelling, event-driven, event sourcing) abstain because the aggregates, EF configs, and domain events under the product tree were not loaded. Point the scan at the product solution (or scan its directory directly) so the whole codebase is analyzed, not a build-tooling sub-solution."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"076656354786513e81286bffc1f9f1d3fa9aa953b7db1b16e5bd8aeada3c8175"}},{"ruleId":"D20","level":"warning","message":{"text":"Title \u0027adajdal;djasdfposdfjkosijufsdijfnkljnckljxhcnqiwurq[werioeritrewtuphvxkjnvxm,npejup]iwourqwerhslkjmfpidjpiwoeyrwq[weriksdjfkxjnvkcxcnhjvhafj[poqwjrfkm]]\u0027 is a pure noise blob with no meaning; the document is an unrecognizable, repeated string of junk that is not an ADR: Replace the entire body with a real architecture decision record: state the problem/context, the explicit decision (e.g. \u0027adopt XYZ framework for new services\u0027), and its consequences/trade-offs"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"WHPerformanceDotNet/src/TPLDataflow/0001.txt"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"b4efe78c253ad9ec1c6795b027e8b5a2bd3be9dfb56ef5bb61bf18fb3a3041fb"}},{"ruleId":"D20","level":"warning","message":{"text":"Title \u00270001_1\u0027 is a noise anchor with no content (no context/problem or decision), and the body is a repeated adajdal;djasdfposdfjkosijufsdijfnkljnckljxhcnqiwurq[...] dump that is not an ADR but a corrupted, unmanageable blob: Delete the anchor title \u00270001_1\u0027 and replace with a real context/problem statement (e.g. why a design decision was needed) plus the explicit decision and its consequences"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"WHPerformanceDotNet/src/TPLDataflow/0001_1.txt"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"2c77828f98293534467f2c753c95dd829e379df11dcdd9eb82fa0dc566bccf39"}},{"ruleId":"D20","level":"warning","message":{"text":"Title \u00270002\u0027 contains only random junk and no meaningful content (decision and consequences are present but buried in a repeated adajdal;djasdfposdfjkosijufsdijfnkljnckljxhcnqiwurq[...]\u0027 pattern with no context or trade-offs): Fix the title to an informative architecture decision, then replace the repetitive junk with real problem statement, explicit decision (e.g. which technology/layering), and consequences."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"WHPerformanceDotNet/src/TPLDataflow/0002.txt"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"5fb1892c66c82d590850f5adaa33046b113b208270cf6ec168b7b74859447263"}},{"ruleId":"D20","level":"warning","message":{"text":"Title \u00270003\u0027 contains only random junk and no meaningful content (decision and context are present but buried in a repeated adajdal;djasdfposdfjkosijufsdijfnkljnckljxhcnqiwurq[...]] body; the visible text is uninformative), so it is an informative title plus an unusable, repetitive body: Fix by replacing the entire garbled adajdal;djasdfposdfjkosijufsdijfnkljnckljxhcnqiwurq[...] with a real decision and context; delete the junk title"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"WHPerformanceDotNet/src/TPLDataflow/0003.txt"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"21208c6fe4f5a4614e2e592bc39fc6f46ade1e674469567b50eb016aaf94d7e1"}},{"ruleId":"D20","level":"warning","message":{"text":"Title \u00270004\u0027 contains only random junk and no meaningful context or decision: Replace with a real title (e.g. \u0022Decide the default font size for all architectural diagrams\u0022) that states the problem and the explicit decision, then flesh out each of the four elements: Context/problem, Decision, Consequences/trade-offs, and an informative title."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"WHPerformanceDotNet/src/TPLDataflow/0004.txt"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"7499b5914fc383ce704f006259da64fc88a2b6687f2a4cbed5c5ed029d7d49df"}},{"ruleId":"D26","level":"note","message":{"text":"Split CSharpGuide: A Catch-22 of 66k LoC spread over 38 unrelated namespaces is a classic sprawling grab-bag. Suggested: by namespace: CSharpGuide.Extensions, CSharpGuide.Analysis, CSharpGuide.Rendering"},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"8947c7d9d0c2913bdbee0a8b29231cd1899f216113894461dca0f589080372fd"}},{"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":"d3aab4f820b657ecec06341468dee218ff52e2f80bd4cec8bd43479900b4d5d1"},"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":"31f4b565b99e6e56a73d0dcd97da34fc3ad48cc9abb8c3e87b891ee51c26c87a"},"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":"afbf7697ebee1179b31ca87de80472fcaacd3c2d07da24ad281852367f63fedc"},"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":"123fe8bf8387ed33486b10c77e1834348665379880ea6fc455a0abf9710c4750"},"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":"af769a7e9f2a9ea986ac8cbc0c2e4202e7636f18169a8178e1b0240d0797b7d8"},"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":"43af2733a798083ca0977b2471d9f7912a9a942cef06e4b35af147c66c8449c0"},"taxa":[{"id":"CWE-676","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":"02848e94214a6874d080587b20e9f7fc8f8b20f80efbbee578b3c9bb4c1f8233"},"taxa":[{"id":"CWE-676","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":"ffc0f2bcec41787231f7448431a27a82b541666c46ef6fd04572eb9b732a1c5e"},"taxa":[{"id":"CWE-676","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":"17ce496e2ee6a553bd8afb2fb92c41f55674b4962a405711ab09ae7371804770"},"taxa":[{"id":"CWE-676","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":"7bf9a50251018ae1bb9e46baaaa84521a4feebdff04f020616b1327ac4f367b2"},"taxa":[{"id":"CWE-676","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":"7879374cd333e42b371c3678cd8eb20929c6d51523d9d89b9342a74ba0e1f350"},"taxa":[{"id":"CWE-676","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":"b1d6a444dc4b62c79917e97e8c283f80171de09caf57969bd17a4725c6ff9285"},"taxa":[{"id":"CWE-676","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":"69469f36edb64f6ce7a7433c7361d5e1c782c01cf59533a0311ff465238027f6"},"taxa":[{"id":"CWE-676","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":"aefd18a75edda0fc3d5a0b3af42b3c1752ef533239d1d7764752c0b40617eb2b"},"taxa":[{"id":"CWE-676","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":"98635a9c16f565a8b6c38b4bbdb2502db8a75932cbb7510c9981af3247d6e242"},"taxa":[{"id":"CWE-676","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":"ec96ce238f0974f67623fa5024da26aafb1dfa2aa403419373ae94316c846650"},"taxa":[{"id":"CWE-676","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":"d7f9d8391b3c1045f4715eae37f6af4080a2851ee43feacba255fba05f816d97"},"taxa":[{"id":"CWE-676","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":"3c3f246ed72c0d2a2a000ac9c574f6345c164b660ed6f00b39baf8bd1c43f30e"},"taxa":[{"id":"CWE-415","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":"04c8b819c5ad161dc635b04819e4f48e9a8b579ed63d05d315473bb419dec4d8"},"taxa":[{"id":"CWE-676","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","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":"668ffded077584379dde55452b525991f4b5a985e1c85062e753844614ced29e"},"taxa":[{"id":"CWE-862","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","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":"cbcfdd989d498516c6d4a8343e901ee1c380346509de31a4af556a5231785309"},"taxa":[{"id":"CWE-862","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","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":"2bf4c25c17232f19d4edb789d4d38e03f2b4d7c8999f4ceb5f049e7123c8e189"},"taxa":[{"id":"CWE-732","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","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":"6c394e3f934250b82641f29ae37e75e535596b112e6c0feb2204ee8bfc16d34b"},"taxa":[{"id":"CWE-732","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","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":"7fc834dc5ea0f8950d24489cce65591c993de4e913555035a95feb2a06c49d3c"},"taxa":[{"id":"CWE-732","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","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":"03928effe51d6599016c5946a617cdc85728ba1b7db412159db0fa972f83bf39"},"taxa":[{"id":"CWE-732","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","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":"6aa2d0ec83d76e9d720ba6bd9309582403e96eacbb84c3a7f5e2678718ad7475"},"taxa":[{"id":"CWE-732","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":"7ef94322710acf79e46b493b7a1a60a18c9bae4ae381812dd479bcb278c86406"}},{"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":"b076fe4f93a75801f6b25998cf2322216ad71d19966c2fbfa20611c2e72fd170"}},{"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":"e8f54d641a7e43a0f30ac423b46cc5b4b82178856e0f8474113d3771f770ea5f"}},{"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":"fa24aa5fe3f6bf91c42d793ef13758a3d32751ef48449cfceb9dbc4c2b9c5795"}},{"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":"db19c7cfec360f0903a9db488e3eea13e43008440d618230397516b42003dd33"}},{"ruleId":"D31","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":"6c34054bb31750dcb0c591b4c20a425cf43ac07e6340a498e6483121fe4ba42a"}},{"ruleId":"D31","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":"ccfe4e3a3a2d9b435105b9d0c1496418a74de9e875dd3f4d5983d8e22a787939"}},{"ruleId":"D31","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":"0b177609db1a708d701cdde9946cc4420643e81b81b1ce18f26bd63a050d2406"}},{"ruleId":"D31","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":"cbe3916a57c903726c967df06254fbe9f62117fba0bf4976b2c95d5cee9c6e4f"}},{"ruleId":"D31","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":"f2cc7422d8c2dd2e70788dccf0d623dbd9fc7c6d47c85d5584c62717fe1e9ef6"}},{"ruleId":"D31","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":"ddd8955be6a3e47f6ac9bba3299abebea27d043d326d525ffc42fe879a1a2759"}},{"ruleId":"D31","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":"d9c6c83239144c8c97735efbc397a165baeb69d480a39d17093032a7e76fceda"}},{"ruleId":"D31","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":"fee9ec03797f55d795e5213492fca65cd23dcf365d56e7e6d5f0f76942568792"}},{"ruleId":"D31","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":"17b1abe73372c0c324688f61b198fd257daaf1bd25c0d102fd73ca4ab77f0c63"}},{"ruleId":"D31","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":"bd0ca651f4810d5ea27fda065f4ca4ff40442b00138dd57f7812b68fcc2c4ea7"}},{"ruleId":"D31","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":"88fb74a080bfa3b91821db3b0d126b27259e46ce1a8ae0e891af14d20273f0bf"}},{"ruleId":"D31","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":"7ab85b5e9f7f164752d8e46c29153f97d5b313883f06eb50af170fba939d2578"}},{"ruleId":"D31","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":"7ac952fe0b5e14856e4a79bbad996101c75bb930c64f810823e12d4e4897cf73"}},{"ruleId":"D31","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":"8e037f0ea35e56aefabf87bf04fde1568674f6ea35c8e002a5d6a23304ff6d17"}},{"ruleId":"D31","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":"653e88bf5109a4e05281001567c7d6487a6d31ae43b46fe532c292ea2add8928"}},{"ruleId":"D31","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":"adf8209bb1aa7aec00db883174e501abbe3e85d318bcea7b9b437cfb7bfee614"}},{"ruleId":"D31","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":"f85d64c5470c0a57e3d6fddbcca156aff0bf8d26a64f731175817a5d16f3730b"}},{"ruleId":"D31","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":"9b370709e31333f3c8e0375b66d8c9a7ed45ad4a3cfc6db199bae4862eaa8422"}},{"ruleId":"D31","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":"53e4ebbaf42cd126e2ea7430d33bbdb6636e5b80e14c196d00e91954d126c397"}},{"ruleId":"D31","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":"c51938ab3ac1d3f799b6700b5fd0dd0001d97def778460eb80193b8778c3a27b"}},{"ruleId":"D31","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":"adce00f24810c21dae2a3e837458f51cad974fd3cb1d91f9b225c5f3376f6db5"}},{"ruleId":"D31","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":"3e7fc54a0715b885fdde4dc8e7c7fa904fe41f7cf5e15623acfd137812ff2941"}},{"ruleId":"D31","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":"600a8e7365a4e499eeb5a2a905cb9e56b789ba40997fee2b590b1604a5935fda"}},{"ruleId":"D31","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":"285a86ca21b812db1776dc0ccf6f9b1e5a12010147d91fa2b6c89a3f92414263"}},{"ruleId":"D31","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":"ce94452a80bd69bf04178c761dc6dc1d90243ffc15b6de719dc07bc37f625333"}},{"ruleId":"D31","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":"4bf0cea850082c7494f7c6167049178e7322096fdb15934461671d3bd709ec21"}},{"ruleId":"D31","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":"aa62684d107b0d9883589b735a02722c851ae51780978611c9d2e948b651c50b"}},{"ruleId":"D31","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":"0ef67b53089cf6fb5cf7e96d8f6ef270275df7a032f5b26a73e7f4dab3a6549d"}},{"ruleId":"D31","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":"b675fb420238109a92b5a2875e73f9d51b03c0a6922a9b4589b3fc19e4e70c2a"}},{"ruleId":"D31","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":"10bcccc2ef591d78941e42f7397b67e18aba4071aa5e52504ec53a1a2f81bb00"}},{"ruleId":"D31","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":"10f41147e2a375f35758cb0e1e27cb7cdbd9042103f5df02f2ecb0dc423601f6"}},{"ruleId":"D31","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":"c6ea23fc830eeba6aff52511a512bda7ed64744a5396554bfec67d9b5ddcd028"}},{"ruleId":"D31","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":"ab0d4c60ec565cf3bd6da234daa224bb4c13add16ffb82c4dc4ffccd4ea34789"}},{"ruleId":"D31","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":"efce69d4077d9b191725c1b155ee62d3c4b55937cf3b099051e3a08163b8f4c3"}},{"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":"ed71b3b04591acc431d9960d7d193c5f84f488a3b7ac7ebc6f8e9f086d2a6d7d"}},{"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":"86c51c825bd598897ef1507675b1dfb3d246f17b24e088679b24efdbb854c7c0"}},{"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":"3b0177622388403b5d67c172903496432799f5474902161edee16dd74ab36875"}},{"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":"2bd6de774f99ed4131d6c33a05c1b43eeddbf01f4433dc5720eaa5dce99feeb3"}},{"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":"b6b10556de98f1a92086cf54fd36a1395b7907aec10e4e4f8fd696a6d50c318b"}},{"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":"8fc978460504e3f469b1fc92f8a360c7649e2da9c182fbf80edaf14db8d1b7e7"}},{"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":"dfc537c0a95b058d358c4bbea6beee1490c0214d71e90275fd0c98c2c797d79b"}},{"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":"fc78eab42245d33c2043c350813c945d26e27abeae1ff45b1271637d0cb13e42"}},{"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":"71ad64b1d028b05188af54ce0c8e97484066ae1ec727b76e146c0c5c19891975"}},{"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":"e67c6b8b06647b5edeb4c6600cf296f407bf2919e67d4b42f43c5b35fabadba7"}},{"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":"e8a8c21f25b50bc9536c04b3c107bb911832dd01e5586654dbe1ced89d1f9613"}},{"ruleId":"D32","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":"276813a4ad353866338b916fcc54dff2ffd311cd3510a85f9b2c866c9ef16b01"}},{"ruleId":"D32","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":"a0b9c4f459539d008b6414d388e868fef2a571e9f1473e6495d85fafdd1da803"}},{"ruleId":"D32","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":"72d414002d4945d1efd692c59ea8024c623df7600cbc4e8d325fd064cf9d15e8"}},{"ruleId":"D32","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":"f948f748be1ab0b70a869b566dcefb8e7cc3884b9203f9b65f142cc184838b89"}},{"ruleId":"D32","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":"3cf0bc0e1c7aa84f85043d950dd14158fc624022815384bb968f97d06f8c2a14"}},{"ruleId":"D32","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":"fcaf7d4d8247d9ac4e7ce39c597dd28e6d25ca41f91a2c1b117afd45b6b7f69a"}},{"ruleId":"D34","level":"note","message":{"text":"Further orphaned files (smaller): 3 of 68 analysed file(s) have no living knowledge left \u2014 their last meaningful change has decayed away, so if one breaks, no one currently understands it (counted over production source files of roughly 100 lines or more, excluding tests, vendored, generated and example/demo trees, largest first). None is large enough to earn a read-through of its own, so this row stands in for the per-file rows rather than raising one each \u2014 largest first: ConcurrencyInCSharpCookbook/05ReactiveExtensions/Program.cs, CSharpInDepth/Chapter_3_Generic/LinkedList_Demo.cs, ConcurrencyInCSharpCookbook/09Cancellation/CancellationRx.cs. Attach the read to the next change that touches one of them: have a second person review that change, and leave behind a short comment or test recording what the file is for, so the knowledge comes back at the cost of a change you were making anyway."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"ce861fd78f6935114d3a342cb90ad25870f984e1042954fcbbe27c0e23be3658"}},{"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":"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":"2b92ae73dcea22b01716d778a9f08e0576adfb13e78f613a16ed01e404c89308"}},{"ruleId":"D40","level":"note","message":{"text":"No network policy: No Kubernetes NetworkPolicy (or Cilium policy) found. Without one, every pod can talk to every other pod and reach out to the internet by default. Add a default-deny policy and open only the flows you need."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"295828650a2aaa1b03ae9b32ae6843a0c38011e5a70b1926442c4fa7187de5f0"}},{"ruleId":"D41","level":"note","message":{"text":"No seccomp profile: Workloads do not set a seccomp profile (RuntimeDefault or a Localhost profile). Seccomp blocks the syscalls a container never needs, shrinking the kernel attack surface a container escape would use."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"3f418e9f76c3ac90484e0e94a454bfe9b08e914e1cdd218e1fc9e3b261a3bf6e"}},{"ruleId":"D41","level":"note","message":{"text":"No AppArmor/SELinux confinement: Workloads declare no AppArmor or SELinux profile. A mandatory-access-control profile confines what a compromised container can touch on the host, complementing seccomp\u0027s syscall filter."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"e83fbc31033373d6c51983ed230eb4ba61f7775ed02afb30f5fc1840bde01d4f"}}],"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-200","guid":"b0ce3b1d-7a29-fe50-8aab-9aba899d2988","name":"Exposure of Sensitive Information to an Unauthorized Actor","shortDescription":{"text":"Exposure of Sensitive Information to an Unauthorized Actor"},"helpUri":"https://cwe.mitre.org/data/definitions/200.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-312","guid":"96724ece-b0b2-a45c-83f9-0869fa3f6bea","name":"Cleartext Storage of Sensitive Information","shortDescription":{"text":"Cleartext Storage of Sensitive Information"},"helpUri":"https://cwe.mitre.org/data/definitions/312.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-359","guid":"b7dfe5b0-0351-645b-a311-b936102c2929","name":"Exposure of Private Personal Information to an Unauthorized Actor","shortDescription":{"text":"Exposure of Private Personal Information to an Unauthorized Actor"},"helpUri":"https://cwe.mitre.org/data/definitions/359.html"},{"id":"CWE-415","guid":"5d94f4b3-d3aa-0c5c-a4f9-897bc66edcd7","name":"CWE-415","shortDescription":{"text":"CWE-415"},"helpUri":"https://cwe.mitre.org/data/definitions/415.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-676","guid":"550e6fab-2881-3252-8a05-c688a6b19c14","name":"CWE-676","shortDescription":{"text":"CWE-676"},"helpUri":"https://cwe.mitre.org/data/definitions/676.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-862","guid":"2d96ecd7-f7f1-7f55-9f3a-43bb5bafdf33","name":"CWE-862","shortDescription":{"text":"CWE-862"},"helpUri":"https://cwe.mitre.org/data/definitions/862.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":87,"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."]}]}