@foxglove/cdr
Supply chain provenance
Status for the latest visible version.
Maintainers
Keywords
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| source-diff | encoded-string-file:dist/CdrWriter.test.js | AI (source-diff): Same tf2_msgs/TFMessage hex fixture used in writer tests; benign test data. | ai | |
| source-diff | encoded-string-file:src/CdrWriter.test.ts | AI (source-diff): Same hex fixture in TypeScript source; benign test data. | ai | |
| provenance | publisher-changed | AI (provenance): Transition to GitHub Actions publisher with SLSA provenance attestation is a legitimate CI/CD migration. | ai | |
| source-diff | encoded-string-file:dist/CdrReader.test.js | AI (source-diff): Hex string is a ROS2 CDR binary test fixture with fully annotated field assertions; not obfuscation. | ai | |
| source-diff | encoded-string-file:src/CdrReader.test.ts | AI (source-diff): Same hex fixture in TypeScript source; benign test data. | ai | |
| semgrep | semgrep:hex-decode | AI (semgrep): Hex decoding is in test files only, decoding known ROS2 message fixtures — not a runtime payload risk. | ai | |
| typosquat | typosquat.levenshtein:cors | AI (typosquat): Scoped @foxglove/cdr is a CDR serialization lib; no plausible typosquat relationship to 'cors'. | ai |
v3.5.1
6 findingsThis version was published by a different npm account than previous versions on 2026-05-25. This could indicate a legitimate maintainer transition or an account compromise.
Modified file contains 2 long encoded string(s) (200+ chars). These are commonly used to hide malicious payloads.
Modified file contains 1 long encoded string(s) (200+ chars). These are commonly used to hide malicious payloads.
Modified file contains 2 long encoded string(s) (200+ chars). These are commonly used to hide malicious payloads.
Modified file contains 1 long encoded string(s) (200+ chars). These are commonly used to hide malicious payloads.
Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.
v3.5.0
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v3.4.0
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.