{"$schema":"https://json.schemastore.org/sarif-2.1.0.json","version":"2.1.0","runs":[{"tool":{"driver":{"name":"codehealth","informationUri":"https://codehealth.canine.dev","rules":[{"id":"D1","name":"Cyclomatic Complexity","shortDescription":{"text":"Cyclomatic Complexity"},"helpUri":"https://codehealth.canine.dev/dimensions/D1"},{"id":"D2","name":"Cognitive Complexity","shortDescription":{"text":"Cognitive Complexity"},"helpUri":"https://codehealth.canine.dev/dimensions/D2"},{"id":"D3","name":"God Classes","shortDescription":{"text":"God Classes"},"helpUri":"https://codehealth.canine.dev/dimensions/D3"},{"id":"D4","name":"Code Duplication","shortDescription":{"text":"Code Duplication"},"helpUri":"https://codehealth.canine.dev/dimensions/D4"},{"id":"D5","name":"Coupling","shortDescription":{"text":"Coupling"},"helpUri":"https://codehealth.canine.dev/dimensions/D5"},{"id":"D7","name":"Architectural Integrity","shortDescription":{"text":"Architectural Integrity"},"helpUri":"https://codehealth.canine.dev/dimensions/D7"},{"id":"D8","name":"Code Coverage","shortDescription":{"text":"Code Coverage"},"helpUri":"https://codehealth.canine.dev/dimensions/D8"},{"id":"D9","name":"Test Distribution","shortDescription":{"text":"Test Distribution"},"helpUri":"https://codehealth.canine.dev/dimensions/D9"},{"id":"D12","name":"Dependency Hygiene","shortDescription":{"text":"Dependency Hygiene"},"helpUri":"https://codehealth.canine.dev/dimensions/D12"},{"id":"D13","name":"Secret Scanning","shortDescription":{"text":"Secret Scanning"},"helpUri":"https://codehealth.canine.dev/dimensions/D13","relationships":[{"target":{"id":"CWE-798","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-259","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}],"properties":{"cwe":["CWE-798","CWE-259"]}},{"id":"D16","name":"Bus Factor","shortDescription":{"text":"Bus Factor"},"helpUri":"https://codehealth.canine.dev/dimensions/D16"},{"id":"D20","name":"ADR Quality","shortDescription":{"text":"ADR Quality"},"helpUri":"https://codehealth.canine.dev/dimensions/D20"},{"id":"D21","name":"Naming Consistency","shortDescription":{"text":"Naming Consistency"},"helpUri":"https://codehealth.canine.dev/dimensions/D21"},{"id":"D26","name":"Project Cohesion","shortDescription":{"text":"Project Cohesion"},"helpUri":"https://codehealth.canine.dev/dimensions/D26"},{"id":"D27","name":"Navigability","shortDescription":{"text":"Navigability"},"helpUri":"https://codehealth.canine.dev/dimensions/D27"},{"id":"D28","name":"Secrets (history)","shortDescription":{"text":"Secrets (history)"},"helpUri":"https://codehealth.canine.dev/dimensions/D28","relationships":[{"target":{"id":"CWE-798","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-259","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}],"properties":{"cwe":["CWE-798","CWE-259"]}},{"id":"D29","name":"Static Analysis (SAST)","shortDescription":{"text":"Static Analysis (SAST)"},"helpUri":"https://codehealth.canine.dev/dimensions/D29","relationships":[{"target":{"id":"CWE-79","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-89","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-78","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-94","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]},{"target":{"id":"CWE-77","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}},"kinds":["relevant"]}],"properties":{"cwe":["CWE-79","CWE-89","CWE-78","CWE-94","CWE-77"]}},{"id":"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":"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":"(anonymous) (cyclomatic 57): (anonymous) has cyclomatic complexity 57 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-test-utils/RelayMockPayloadGenerator.js"},"region":{"startLine":269}}}],"partialFingerprints":{"codehealthFindingId/v1":"a38b0e6c057fe8b8409478a950df721c9e83c1fa4f35392ba8707880f9d09857"}},{"ruleId":"D1","level":"warning","message":{"text":"(anonymous) (cyclomatic 47): (anonymous) has cyclomatic complexity 47 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/relay-hooks/useFragmentInternal_CURRENT.js"},"region":{"startLine":251}}}],"partialFingerprints":{"codehealthFindingId/v1":"f8959ce1c916c0c87240bed45f8286079d3005cfec4b37a3bd82e3cc025dc482"}},{"ruleId":"D1","level":"warning","message":{"text":"(anonymous) (cyclomatic 45): (anonymous) has cyclomatic complexity 45 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/relay-hooks/useFragmentInternal_EXPERIMENTAL.js"},"region":{"startLine":275}}}],"partialFingerprints":{"codehealthFindingId/v1":"7c42808c5001e6e9295411c6f0124b4e5b96055d9117203cc42df36953a54ebd"}},{"ruleId":"D1","level":"warning","message":{"text":"(anonymous) (cyclomatic 30): (anonymous) has cyclomatic complexity 30 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/DataChecker.js"},"region":{"startLine":365}}}],"partialFingerprints":{"codehealthFindingId/v1":"4287ffc14274339c3f2f05702a551e0b912a2e41a004fb796afe0b6a39e2f180"}},{"ruleId":"D1","level":"warning","message":{"text":"(anonymous) (cyclomatic 27): (anonymous) has cyclomatic complexity 27 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/RelayReferenceMarker.js"},"region":{"startLine":123}}}],"partialFingerprints":{"codehealthFindingId/v1":"22dbc20fc95a87794c41fa61669004ab6b37f1a3521cdbffa72b89ca58c2370d"}},{"ruleId":"D1","level":"warning","message":{"text":"T (cyclomatic 22): T has cyclomatic complexity 22 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"website/src/compiler-config/CompilerConfig.js"},"region":{"startLine":285}}}],"partialFingerprints":{"codehealthFindingId/v1":"808c46a48bab41fdf035b092dcdac1a5c0c31ec08da470355808b8122726fd5b"}},{"ruleId":"D1","level":"warning","message":{"text":"constructor (cyclomatic 18): constructor has cyclomatic complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/RelayModernEnvironment.js"},"region":{"startLine":108}}}],"partialFingerprints":{"codehealthFindingId/v1":"c15b54620cf38faacf9fc21d2f14b5c8211a66144c9fb2eb760e1003c17eed92"}},{"ruleId":"D1","level":"warning","message":{"text":"_propagateResolverMetadata (cyclomatic 18): _propagateResolverMetadata has cyclomatic complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/RelayReader.js"},"region":{"startLine":935}}}],"partialFingerprints":{"codehealthFindingId/v1":"e24d02e8ef7c05a17a83bdd25d2168f816be27358db807fef1a69885357f9246"}},{"ruleId":"D1","level":"warning","message":{"text":"(anonymous) (cyclomatic 16): (anonymous) has cyclomatic complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/mutations/RelayDeclarativeMutationConfig.js"},"region":{"startLine":253}}}],"partialFingerprints":{"codehealthFindingId/v1":"9d90a8f3b04184cba6145e4145c91db57a8af88ac7f1826945b08ce64e7f1ea8"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 70): (anonymous) has cognitive complexity 70 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-test-utils/RelayMockPayloadGenerator.js"},"region":{"startLine":269}}}],"partialFingerprints":{"codehealthFindingId/v1":"384bbf4184632484b5465822949a9af6722b3c2378db07c0cd6a02a3755f6d8c"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 65): (anonymous) has cognitive complexity 65 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/relay-hooks/useFragmentInternal_CURRENT.js"},"region":{"startLine":251}}}],"partialFingerprints":{"codehealthFindingId/v1":"64a386aceb1913eb048212be733fff87e071e09cd15104f08af901e26b4e9055"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 60): (anonymous) has cognitive complexity 60 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/relay-hooks/useFragmentInternal_EXPERIMENTAL.js"},"region":{"startLine":275}}}],"partialFingerprints":{"codehealthFindingId/v1":"caae5921e718e5259c2a38d305c872a1ebc2491193f333bbb29ab73ce33f6bc6"}},{"ruleId":"D2","level":"warning","message":{"text":"_propagateResolverMetadata (cognitive 34): _propagateResolverMetadata has cognitive complexity 34 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/RelayReader.js"},"region":{"startLine":935}}}],"partialFingerprints":{"codehealthFindingId/v1":"b376b2714123d600d6e22c9d82de36d3a1188057ca4d09803994646851d33c90"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 26): (anonymous) has cognitive complexity 26 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/DataChecker.js"},"region":{"startLine":365}}}],"partialFingerprints":{"codehealthFindingId/v1":"df02141794c83aefbe31ecdcf4c7ff45271b4e1457a47fe7c7fd4a2cf1f6af68"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 22): (anonymous) has cognitive complexity 22 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/mutations/createUpdatableProxy.js"},"region":{"startLine":334}}}],"partialFingerprints":{"codehealthFindingId/v1":"49b81465e35d7136f4e575016add0f5ab96645a96d8760c6b558ea3d454bc848"}},{"ruleId":"D2","level":"warning","message":{"text":"T (cognitive 21): T has cognitive complexity 21 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"website/src/compiler-config/CompilerConfig.js"},"region":{"startLine":285}}}],"partialFingerprints":{"codehealthFindingId/v1":"aed2f8271117c7a7a7dd5ac638ba214196c91c335d6f9a6f8857cfe0267fba4b"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 20): (anonymous) has cognitive complexity 20 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/mutations/RelayDeclarativeMutationConfig.js"},"region":{"startLine":253}}}],"partialFingerprints":{"codehealthFindingId/v1":"4f14736f832469cbbd7342f85dc03856f7a41d6d22e3eb30c34fffa90d7e8fb5"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 19): (anonymous) has cognitive complexity 19 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/relay-hooks/useQueryLoader.js"},"region":{"startLine":252}}}],"partialFingerprints":{"codehealthFindingId/v1":"e6ad617aae34b5e2787d5312f22bd5c2da423d4c0d0e19fabe5c49ef69eb42f1"}},{"ruleId":"D2","level":"warning","message":{"text":"constructor (cognitive 19): constructor has cognitive complexity 19 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/RelayModernEnvironment.js"},"region":{"startLine":108}}}],"partialFingerprints":{"codehealthFindingId/v1":"954edf7a2065164e11c74a3c6aaf8cfe0a1a7e3a00fa10407ba93c6ac2940cf6"}},{"ruleId":"D2","level":"warning","message":{"text":"(anonymous) (cognitive 19): (anonymous) has cognitive complexity 19 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/RelayReferenceMarker.js"},"region":{"startLine":123}}}],"partialFingerprints":{"codehealthFindingId/v1":"7ba9650f0108c7cbfbc74a54fd7614c77fd2af01cadbf4077d1990b89dec7e8b"}},{"ruleId":"D2","level":"warning","message":{"text":"validateField (cognitive 18): validateField has cognitive complexity 18 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/mutations/validateMutation.js"},"region":{"startLine":179}}}],"partialFingerprints":{"codehealthFindingId/v1":"1ea456433a03d5054e8b60e5bef9f53077a2c1971594284032fbddc40032c776"}},{"ruleId":"D2","level":"warning","message":{"text":"handleFieldErrors (cognitive 17): handleFieldErrors has cognitive complexity 17 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/util/handlePotentialSnapshotErrors.js"},"region":{"startLine":22}}}],"partialFingerprints":{"codehealthFindingId/v1":"123c2f44a7edfa40dea35b035be66a53509ce0cce087d449b3d6543d8078c2f7"}},{"ruleId":"D2","level":"warning","message":{"text":"dispose (cognitive 16): dispose has cognitive complexity 16 (threshold 15)."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/RelayModernStore.js"},"region":{"startLine":378}}}],"partialFingerprints":{"codehealthFindingId/v1":"5e48103133299fe5dea68d4caceea58f50b0877f64f8014c2fc1acb7ec9927e5"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: react-relay/ReactRelayPaginationContainer.js: FileTooLong \u2014 965 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/ReactRelayPaginationContainer.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"790dc120fc2f76cf661b1e9225a7b702864431c79642cfaf418ce0d76c2493cb"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: relay-test-utils/RelayMockPayloadGenerator.js: FileTooLong \u2014 1070 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-test-utils/RelayMockPayloadGenerator.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"286fb543a66fefa5e9e0f3fe25b6ddc7dfae57fea3a7e4d22bb2000b66559ba0"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: __tests__/LiveResolvers-test.js: FileTooLong \u2014 2154 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/__tests__/LiveResolvers-test.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"b0bd75f7b8615d4c3759abb75b4bd3ec3f7e40871c15aabed5f861aafee54170"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: __tests__/ReactRelayPaginationContainer-test.js: FileTooLong \u2014 2107 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/__tests__/ReactRelayPaginationContainer-test.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"412e86589266ec00e8e4499a6e4a71719b8197f706e01c80382f6c57cb280198"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: __tests__/ReactRelayQueryRenderer-test.js: FileTooLong \u2014 2069 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/__tests__/ReactRelayQueryRenderer-test.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"d8afda9e2ec17de3f2ffe1214266e477a8727a78e68b233c057c38ada24b3caf"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: __tests__/RelayResolverNullableModelClientEdge-test.js: FileTooLong \u2014 572 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/__tests__/RelayResolverNullableModelClientEdge-test.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"2908c29307ca0cb1f177a6e005d0e42d00ea4749ff6a7455c2fa0fb2304dcb48"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: __tests__/RelayResolvers-withOutputType-test.js: FileTooLong \u2014 712 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/__tests__/RelayResolvers-withOutputType-test.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"0b56864c755bafc0293aacf80b11562054fbb41066d8598287d0d1cc7e49b96f"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: relay-hooks/QueryResource.js: FileTooLong \u2014 614 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/relay-hooks/QueryResource.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"170d2a03024de97360253bfe28c2046638257d0c74a148b1ee0e4666ff6478a5"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: relay-hooks/useFragmentInternal_CURRENT.js: FileTooLong \u2014 708 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/relay-hooks/useFragmentInternal_CURRENT.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"c2dd24769834940eeb0b9b7be4824a8a5ac9d0dab0abb1b305cb0fc5c9a0224c"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: relay-hooks/useFragmentInternal_EXPERIMENTAL.js: FileTooLong \u2014 805 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/react-relay/relay-hooks/useFragmentInternal_EXPERIMENTAL.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"6cd6a731a392b38dbd2d1066c545ccfd639a48be0c5f9391977f42bb20d457f0"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: network/RelayObservable.js: FileTooLong \u2014 633 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/network/RelayObservable.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"5f642f4cda18becef6012823013839b0e8ed3f43bd561dfd198068995e79faf1"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: store/OperationExecutor.js: FileTooLong \u2014 1836 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/OperationExecutor.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"c9278c63caf754edcf5ca08e52d8222db8852787e1e613ae22683c043c354d31"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: store/RelayModernRecord.js: FileTooLong \u2014 748 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/RelayModernRecord.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"0266f496cf2f4bdfb2153f44f46e3756c6d3e73970f6f436436a44b22ecc5300"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: store/RelayModernSelector.js: FileTooLong \u2014 536 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/RelayModernSelector.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"3b4ae372e8bd4e809ddb1cd3cf3f9d98f139576811f76a594671362649fbc188"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: store/RelayReader.js: FileTooLong \u2014 1989 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/RelayReader.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"089a3237daf8635a946cd91fce6b5e7a985cd628c3497a3ae5b8faabb178fc13"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: store/RelayStoreTypes.js: FileTooLong \u2014 1650 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-runtime/store/RelayStoreTypes.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"de84d96bfc390f2a6d31d2616631bb7e0f93612039fc3fb8df5ab345ca559edd"}},{"ruleId":"D3","level":"warning","message":{"text":"FileTooLong: __tests__/RelayMockPayloadGenerator-test.js: FileTooLong \u2014 2203 lines."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"packages/relay-test-utils/__tests__/RelayMockPayloadGenerator-test.js"},"region":{"startLine":0}}}],"partialFingerprints":{"codehealthFindingId/v1":"fcfc9b7fe5a52d9e9f7b93ee81a853dae5f988d040553210985a22f6f5627b67"}},{"ruleId":"D8","level":"error","message":{"text":"No automated tests: No automated tests \u2014 the solution has no test code. Untested code is the largest single risk to changing it safely."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"3132564c6310e5d01a231f252a02d5d2f5a542c0a8fa29a14c89693f1e3df871"}},{"ruleId":"D9","level":"note","message":{"text":"No tests found: No test projects found in the repository."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"c9bf64cbb5a4ae13d6bcd01fa3bc8d2879d860c73bc67f176ee3c2cecb8adce3"}},{"ruleId":"D16","level":"warning","message":{"text":"single-maintainer \u2014 knowledge-concentration (bus factor) risk: single-maintainer \u2014 knowledge-concentration (bus factor) risk (0 author(s) across 0 commit(s) sampled)."},"locations":[],"partialFingerprints":{"codehealthFindingId/v1":"b4b49d961df742f0e507f4cc5c8094fb077ba0391a27fd015d18320865187719"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no consequences/trade-offs for the open-source plan; only status updates and a vague \u0027We discussed various ways to increase our transparency improve the communication with our open source users\u0027: Add the problem motivating the open-source decisions (e.g. lack of visibility/good PR process) and document trade-offs such as increased work effort, risk of drifting from the original plan, and how the consequences are managed"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-02-02-sync-notes.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"23181b0f9b802847b5b729e3a8c4c03e8365e5a8e945f05a3199d3d4e1e47d85"}},{"ruleId":"D20","level":"warning","message":{"text":"The body is a status update log of ongoing work by members rather than an explicit context/problem decision with consequences: Convert the log into a real ADR: state the problem (e.g. persisted queries, contextual state for server rendering) and the explicit decisions being made (open source PR, RelayConnection integration), plus their trade-offs"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-02-09-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"e7ef114051a16283fa3853d3dfaf8ff63c1d4a58b93559c4888dbdb28b1538ed"}},{"ruleId":"D20","level":"warning","message":{"text":"No decision is stated (only status notes) and there are no consequences/trade-offs in a readable form: Replace with an ADR that states the explicit architectural decision being documented and its consequences"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-02-18-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"dcf21bd5669c0c8452c076127a6fe05cf7027e8e71f6ea3f2562e5a5163e4c28"}},{"ruleId":"D20","level":"warning","message":{"text":"Status updates only; no context/problem and no decision are stated: Delete the status-updates section entirely and replace it with a one-paragraph problem statement (e.g. why Relay sync to www is needed) plus an explicit Decision that addresses the gap"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-03-01-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"6f8c0305d295577f2b2a48a78d8e25cb02def4fa417c97bdd7b024776625e6fb"}},{"ruleId":"D20","level":"warning","message":{"text":"Is a status/agenda document; the body is pure contributor activity notes with no context/problem and no explicit decision: Convert this to an actual architecture decision by stating what problem it addresses (e.g. slow persisted query diffing) and its consequences"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-03-22-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"8295f23eb6c5096a4d7555678f638e1315910cb0c9b157ed0c3ed64f773e9b0c"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision: the body is a status-updates list of PRs with no stated problem or decision: Add an Context section stating what problem this ADR addresses (e.g. \u0027The internal app needs Graph Mode to handle paths that do not fit into a fixed graph\u0027) and a Decision section describing the explicit change (Graph Mode writer in, lazy paths) along with its consequences"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-03-31-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"869317e6dbeb87b4c5f779ab3f49f2bc6c9c371d94ca573c58bc20fdb2352847"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision; only a status-agenda list of work items: Add an Context section stating the problem (e.g. payload handling in Graph Mode) and a Decision section describing what was implemented (Graph Diff out, profiling, persisted query impact measurement). Consequences/trade-offs should follow."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-04-05-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"e88e2c65dafab690ced9ff3e67926022b4dd2df3ed8f9f87aee421d2f31e7512"}},{"ruleId":"D20","level":"warning","message":{"text":"The visible content is a GitHub status feed listing ongoing work rather than an architecture decision document (context/problem \u002B explicit decision \u002B consequences): Convert this into an ADR: state the problem being solved, the decision made by the team, and its consequences."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-04-14-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"1b5130e6d83b4c95b136b90ed6b97b5d0847028d4e793cdbd5e29122e223b8df"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision: the only content is a task list of people doing status updates (no problem/decision framing): Add an Context section stating what problem the Relay project addresses and an Explicit Decision section naming the design choice or rule adopted"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-04-19-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"16836a3cde801944a665676cca2204afcca0f3508b300d2ea1b031435f2fca19"}},{"ruleId":"D20","level":"warning","message":{"text":"Status updates only; no context/problem and no consequences/trade-offs: Add a Context section explaining the problem being solved (e.g. broken Relay tests, persisting queries) and a Consequences section on trade-offs like added complexity of validation/transaction refactoring"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-04-26-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"00bb87d330fde6b14750433d216dd616da5edd8f01d1e517ee478d2f8295d2f4"}},{"ruleId":"D20","level":"warning","message":{"text":"Status updates only; no context/problem and no decision are stated: Replace the status update list with a Context section explaining what changed (e.g. mutation debugging, deferred-fragment fix) and an explicit Decision stating the architectural change being documented"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-05-03-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"3441306a45a3bf38ddc5276a74f285d90392bd7c8166f47980d414df20fc08cf"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision (only a list of work items) in the body: State what problem the RelayConnection work addresses and document the concrete architectural decision made"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-05-09-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"c760c591033ea24341f2f380feba8ce0509acb5bc2c54ec2c85d0266777c54b7"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no decision statement (only work-in-progress tasking): Add a Context section explaining the problem being solved and an explicit Decision stating what was implemented or adopted"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-05-17-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"3f674a329ea39d8746e50ead2ccdf2a9abfefaed123580ce6f7c4b90b75b5ab1"}},{"ruleId":"D20","level":"warning","message":{"text":"Status updates only; no context/problem and no consequences/trade-offs are present: Add a Context section explaining the problem being solved (e.g. persisted queries, RANGE_DELETE edge removal) and a Consequences section covering trade-offs like added complexity of generated types or refactoring burden"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-05-26-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"67c6a6d32a2f00d8a1b701d00805330e14352cb791678f2bc1882f2bd2ddc539"}},{"ruleId":"D20","level":"warning","message":{"text":"Not an architecture decision record: status update list with no context, explicit decision, or consequences: "},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-05-31-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"7d53a2c0c6945b5c90e28501338a5f883699f31540b754f1fdda0c033ec0276c"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision statement (only status notes): Add a Context section explaining the problem being solved and an Explicit Decision section stating what the ADR commits to"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-06-07-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"43741bca128d495519d0ce3349ef1c918bc304cc02964c067b8f5735c9b1a200"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no decision (only status updates) in a non-structured log format: Convert this into an ADR by stating what problem it addresses, the explicit decision (e.g. add a benchmarking tool), and its consequences"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-06-14-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"f2679cd0a7adf0415ace14666ec5e1e07255319ef665ed100024fe0ced476597"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision in a readable form: Convert the list into an ADR: state what problem motivated this work (e.g. decoupling examples from main repo), document each decision (e.g. adding Jest runtime for scripts), and note consequences/trade-offs"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-06-21-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"7f1d8d0160948edfd41371164f997e1fa5a9f2f7d88f26c2cd2bebec81072ae7"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision; only a status update list: State what problem the prototype addresses (optimistic updates, persisted queries) and document the decision (which API shape to adopt) with its consequences"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-07-05-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"5a8ad7499baff5ff1f85444da945c932ba07b2d2ff09d9ef335ed77f189f403a"}},{"ruleId":"D20","level":"warning","message":{"text":"Status update log with no context/problem statement and no explicit decision or consequences: Convert this to an ADR by stating the problem being solved (e.g. stalled Relay prototype/API, Pokes migration) and recording the decision (batch API client-side BatchLoader, persisted queries strategy), plus any trade-offs"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-07-14-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"b325f853726a19ebfc44510abcb3d56e4eddfeea6136473e0ca0c5efd1a28a24"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision; only status notes (people/commitments) are present: Add a Context section stating what problem this backlog addresses and an Explicit Decision section describing the intended change"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-07-21-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"d3c8125970f0f55c3eaa5b583572a580916240651cf2b99f4ccd492b0fd3adf8"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision (only work-item notes present): Add the problem motivating this ADR and state what concrete decision will replace the work items"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-07-26-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"36ddd37cc82b83228b6520ce567adbd5099d6cd71dcfe76396b71b1a6ac550a3"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision: the body is a contributor activity log rather than an ADR document: Convert this to an actual architecture decision by stating what problem it addresses (e.g. long load times from Tasks perf hits) and the decision (e.g. inlined 150 fragments, landed V1 compatibility component). The status log is not a decision."},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-08-09-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"c7b2db778affaf8a9815d587998ea52ba429c82a386be4db97fcbf79326e436a"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem statement; the visible content is a task tracker list (status updates) rather than an ADR: "},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-08-19-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"88a875b1a06ab59d8b8b1453aee60f22aa7d9072ceb317d98e6396075a21ec5a"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision are stated; the visible content is only status notes (Agenda) and work-in-progress tracker: Add an Context section describing what was being built/why it matters and an Explicit Decision section stating the actual architectural choice made"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-08-23-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"e62784a962e28aa64b53f7da7a6c0b5371737d95fa2bdd8634aa1bbfc1b1e641"}},{"ruleId":"D20","level":"warning","message":{"text":"Context/problem and consequences/trade-offs are absent; only status and work items are present: Add a Context section explaining why Relay 2 integration is needed (e.g. backward compatibility with existing Relay 1 codebase) and a Consequences section covering trade-offs such as increased complexity of the compatibility container or risk of breaking existing Relay 1 consumers"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-08-30-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"886f1135c9098d2882dac4808ff02c30b115bfa89217f82df69a02de1df03f24"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no consequences/trade-offs sections; all content is project update/task status with owners: Add a Context section explaining why Relay 1/2 integration matters (e.g. backward compatibility, new features) and a Consequences section noting trade-offs like refactoring effort or test risk"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-09-06-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"2f7480656d95e63bea4f664b39826256c6f611a306c5af7676d0b245507da7ff"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem statement (what problem the Relay/2 core was addressing) and no explicit decision; only a vague \u0027we\u0027ve been focusing on building an experimental new core\u0027 and a migration pathway are present: Add a Context section explaining why Relay 2 was needed (performance, static core hypothesis) and a Decision section stating what APIs were adopted and when the new product API will replace RelayContainer"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2016-12-09-update.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"7aa26da1c95ffad1e68fa51f38ab1c2de39bb096a475fbe3a9fd8e223d6ab48d"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no consequences/trade-offs; only a present list of contributors and updates sections: Add an overview section stating what problem this sync was for (holiday catch-up) and a Consequences section on trade-offs such as time spent coordinating across teams"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2017-01-17-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"a571784317210c43ee24152c32dd424bfac36d631923492d324aa4a401fe7c5f"}},{"ruleId":"D20","level":"warning","message":{"text":"The document is a team meeting/updates summary with no context/problem and no explicit decision; it is pure status logging: Convert this to an ADR by stating what problem the team is solving (e.g. preparing Relay APIs for web rollout) and recording the concrete decision (when, who, what deliverables), plus any consequences"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2017-01-24-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"c446c1a3bcac73eaacce6fb46cbf036311e98b34a6c73e60d673d2dc75f55732"}},{"ruleId":"D20","level":"warning","message":{"text":"No informative title and no explicit decision statement; only a work-item list with minimal context: Give the ADR an informative title (e.g. \u0027Relay API Documentation and Branch Setup Roadmap\u0027) and state the concrete decision (e.g. documentation for new APIs plus experimental branch setup) so it is readable from the top"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2017-02-07-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"4da3fadd265513b558567cbb505e90aacd7afbe17509e290c4054a3caa9f9cf5"}},{"ruleId":"D20","level":"warning","message":{"text":"No context/problem and no explicit decision (ship date, trade-offs of experimental branch) are stated: Add a Context section on why the new core is needed and an Explicit Decision stating the ship date and any consequences of running the experimental branch"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/meeting-notes/2017-02-14-team-sync.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"99ef04a5aeeff54db4780a151c66fe7c5406e262fb7054e4d155eafaecc6b836"}},{"ruleId":"D20","level":"warning","message":{"text":"No decision statement and no consequences/trade-offs; the body is a themes list with current projects and potential projects notes only: Add an explicit Decision section stating what Relay will look like (core/primitives vs user-space tooling) and its rationale, then a Consequences section covering trade-offs such as reduced flexibility for product teams or higher memory usage"},"locations":[{"physicalLocation":{"artifactLocation":{"uri":"meta/roadmaps/2016-H1.md"},"region":{"startLine":1}}}],"partialFingerprints":{"codehealthFindingId/v1":"097c5e3faaf522279dbe6b5b4ad390a58d658f7c2f8b73335de8fd86330907c8"}},{"ruleId":"D28","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"77c99ed631d4d2ff7762457a6f99465e3fe272b55c3d95bd831b9f453ad3a4ea"}},{"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"0dbb915274563a1a1c7710b67a8c19d2a107f22fcaf0daddfce999f66be50e9d"},"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":"c91f71d4313629a217cc9e072ac26f36f632058c2df4d0548fddb01883fd382a"},"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":"c91f71d4313629a217cc9e072ac26f36f632058c2df4d0548fddb01883fd382a"},"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":"68b09184ad046803d056c9f9eace76b8e4e6f5c06a1248d333660ad336a6eb80"},"taxa":[{"id":"CWE-78","toolComponent":{"name":"CWE","guid":"c3a2b1d0-7f3e-4b2a-9c1d-5e6f7a8b9c0d"}}]},{"ruleId":"D29","level":"error","message":{"text":"A security finding was recorded here. Its details are withheld on the public artifact \u2014 ask the repository owner for the full report."},"partialFingerprints":{"codehealthFindingId/v1":"c91f71d4313629a217cc9e072ac26f36f632058c2df4d0548fddb01883fd382a"},"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":"c91f71d4313629a217cc9e072ac26f36f632058c2df4d0548fddb01883fd382a"},"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":"c91f71d4313629a217cc9e072ac26f36f632058c2df4d0548fddb01883fd382a"},"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":"c91f71d4313629a217cc9e072ac26f36f632058c2df4d0548fddb01883fd382a"},"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":"c91f71d4313629a217cc9e072ac26f36f632058c2df4d0548fddb01883fd382a"},"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":"c91f71d4313629a217cc9e072ac26f36f632058c2df4d0548fddb01883fd382a"},"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":"cc34d5d2cf3bc0386f1dc0e64208d8207084c9fdc3b02da96f978ca44b3e0427"},"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":"cc34d5d2cf3bc0386f1dc0e64208d8207084c9fdc3b02da96f978ca44b3e0427"},"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":"cc34d5d2cf3bc0386f1dc0e64208d8207084c9fdc3b02da96f978ca44b3e0427"},"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":"0be0d30879b3c117df7c5014641b897e9866e0848a23b6b773276480d288fa27"},"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":"0be0d30879b3c117df7c5014641b897e9866e0848a23b6b773276480d288fa27"},"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":"0be0d30879b3c117df7c5014641b897e9866e0848a23b6b773276480d288fa27"},"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":"c5fd37f3d7d12c820f4e3325150242dea26f5fdb23076dd5e12600c2b04d1b02"},"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":"c5fd37f3d7d12c820f4e3325150242dea26f5fdb23076dd5e12600c2b04d1b02"},"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":"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":"f86a8c6b64bdce80c214803395e962c58e9cd00c54c46cf4aed17595f0dd8f71"}},{"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":"921d505c8e494a0c72352faea908226c723ad070dd5fa14ccbc4455ff9d58883"}},{"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":"fb994200bee7383bac243743161af0729d551d0d393a5de52f4ef0e74421cf50"}},{"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":"337ed4c5a8f9fe6f9be161820fab6f56ad5a6c824ef776bbbdd5f2c58736fba2"}},{"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":"5ca236c68627bcc3636b9cd46f0defa2161e4bdda02298cf79b47c0322bb747d"}},{"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":"ea3c71d8c50235e6655d34759ad5485b71772d854feb3dbbca821350184b2fc8"}},{"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":"bacbc330969b78ffb5cbd9e051634b415111422c1c395e9f8991ce9b2c196161"}},{"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":"c73f444efb02ec4ee2c49bdb17a5ea4f37775783ea64fea26787ee100a441d64"}},{"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":"82fb001d9e18ef4bb827a7f6e9dc983cd5d8af87609a795d4cdd62d75aeee702"}},{"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":"c76371fc693421a291fc5a0afa28c455b7ffb43685064dc0d71b3cc9ca37267e"}},{"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":"a28db5d5a272c93e4de003093ef646cc1abc70fa98b307e5f5bb03f2a2cef9e1"}},{"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":"f2e269fdab9cd31aad3f516c2d6705c6af776483433474c4e5839c08bd6d4ed0"}},{"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":"b16e0bf88f4e97bb2454a9dfb346ac5ed47d3d413cf2d16b1d7d7745eb4d8647"}},{"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":"c2bdf438a89e055ae782dfbe4ebead6798647455fda88086d89ac104c6cf5440"}},{"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":"a3fd7d685c627926d101cde46e19813bd82d16b04d7da079daa3119c40f7b4a9"}},{"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":"0938d7b2cde621051e09a7ce960d8f5e190be51452fa6a3157fcb5dcc6914450"}},{"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":"44cd1fb5173f88530d3bde0ee04cad4e73ad009cf2857def4d653cb2efc08285"}},{"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":"d4b321bfc8e8dea8a5e1dcb82ebc46b0dfde56a19b46e9d0a8253a95ac790926"}},{"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":"f0fe241e540e7a574be204916cc2918130496147f0f8825932586df572d7a5ea"}},{"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":"180547422ec3c32270d09a2aa946e18eb2c4aaf4def8d1000d2e540c308619b3"}},{"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":"04ec93ac7980d1196d0bc3cdaf625d7656e0c80e5a807ad405a0e427d7a063f2"}},{"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":"f01b7b4c6648e608f7c59eea3114806c6b86409cb06d69bf9347286c8e41e17f"}},{"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":"4a0a89791f8123f4c4dc33b32e7af03eef4d77ba391e2f939c2759d513d5aca9"}},{"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":"f333d83933c1d27a9788588a6463b04e3de8185b050d855c2611492a2701f44e"}},{"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":"330760cfff04bfd63d0db25fcc665fec965dede36d2c7b90e1757d8b950fec79"}},{"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":"9aa2179fe78fd765b02d498e7f25f6695745e1825f1172e4a5d8cbd251a8b96e"}},{"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":"68fc7d04e4cd06c49451db026d84c8b8fbab01f6c83f5fe09f4ac36a90d784d8"}},{"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":"fa08109645526f238c63324455c916c95139a3b495c37a701b7fd6e94553927b"}},{"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":"b02525ef730baf881a187f626a82a406abc407644ef51a47a48a546ca1102612"}},{"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":"68df8021b856b0de101c6d550a1da0d4690702086b5e714213c9d335adbe2a46"}},{"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":"69cae55fd71e353cf1f511fd57af7770be4d8d4c4d5fe013d6672a8d08231eff"}},{"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":"37dd27f952efcea249c829f3265c0af6ec7d50fecc0d2f97734bdd8db1996a73"}},{"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":"e88f38846664571053c61e62aacad0ef3a5901c1498a3ff4c7c8a7db0a7115b9"}},{"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":"b51d075ca34f2894abc8499026711ce27967b106262b99cf55396198d2dc9329"}},{"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":"eed1fd7aaa904de4414b53ae29e49c5fd742d1ee5e1cfa840989867b892889bd"}},{"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":"915a2a1e790d75ce23fbb6a16ad11a0caac0d184a4de18cfd7415f77e7328a79"}},{"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":"82211a3076f3cf74591e40f39acd15d3162067a98c2e53c9a02b2df024adf2c4"}},{"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":"dffad7a08a7980b025f37f86936c0e5a811352dd71a7bf2ec8d70680471ee299"}},{"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":"83c654d200d4bec865f24f1daf9d8cc7c7c000736186d25fb06d2ca380202d7e"}},{"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":"65d8548e9ac3bcdfc367cfc15cbaf0bb2214225d88b1c1ffd928d872edf69097"}},{"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":"01f3db83a7cc6d7a13a6e18fc96e1f56fb7e11f054ce57d4284c6922134744ff"}},{"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":"a4669ae7e89ca035c3a7fd19cb80e5865cc98dc68a719eff7d73d72ed0d31a57"}},{"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":"952745a3aec6c47b2e29c60a68a0547e1f117d147f542b2aaf4cc3983cf57938"}},{"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":"9c16749c16e9dae7709f0e8effe97ce114023151035437aa8f11be9100f223e5"}},{"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":"ef5c185dc2c9407d8ddaf883054a22852a71f7b165ba2a23dcf43a82b1afea17"}},{"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":"48c310d3d8df97d47944d5ad9db7d1cf88d3b9f7d5d39e7f1f1670520f01f595"}},{"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":"d50a3dfd6225da7f96b85a3a035efda7a92def515170f677a8679508851771d5"}},{"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":"654192f350bae6d61bce79afbc044dfbe89fa37b519945cc983723f0b3a7d537"}},{"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":"db87471e22f76a96e68674479261c19c3e5679c39f139b61603756b5f2e383c4"}},{"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":"0555aa905007b53e0da790697e9c5a6208092e43f49ae0b56d1be042b5a5ba1b"}}],"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-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-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-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-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":98,"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."]}]}