@abtnode/util
Supply chain provenance
Status for the latest visible version.
Without SLSA provenance there is no cryptographic link between this tarball and the public source — the axios compromise (March 2026) relied on exactly this gap.
Maintainers
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| publish-pattern | dormant-publish | AI (publish-pattern): Large org monorepo with 1166 versions; irregular publish cadence is expected, not indicative of takeover. | ai | |
| dependencies | unvetted-dep:private-ip | AI (dependencies): private-ip is used alongside public-ip/internal-ip/is-ip for network classification; clearly intentional in this utility package. | ai | |
| semgrep | semgrep:child-process-import | AI (semgrep): Used for pm2 orphan-process management; expected in a node process manager utility. | ai | |
| semgrep | semgrep:base64-decode | AI (semgrep): Base64 used for encryption key encoding/decoding; no payload obfuscation. | ai | |
| phantom-deps | phantom-dep:hpagent | AI (phantom-deps): Declared in package.json as runtime dep; phantom-dep heuristic false positive. | ai | |
| typosquat | typosquat.levenshtein:uuid | AI (typosquat): Scoped @abtnode/ package; levenshtein match to uuid is a false positive for this namespace. | ai | |
| phantom-deps | phantom-dep:p-wait-for | AI (phantom-deps): Declared in package.json as runtime dep; phantom-dep heuristic false positive. | ai | |
| phantom-deps | phantom-dep:axios-mock-adapter | AI (phantom-deps): Declared in package.json; used in tests per config files. | ai | |
| phantom-deps | phantom-dep:fast-glob | AI (phantom-deps): Declared in package.json as runtime dep; phantom-dep heuristic false positive. | ai | |
| semgrep | semgrep:shady-links-raw-ip | AI (semgrep): 169.254.169.254 is the standard GCP instance metadata endpoint; not malicious. | ai |
Versions (showing 10 of 10)
| Version | Deps | Published |
|---|---|---|
| 1.17.12 | 64 / 5 | |
| 1.17.11 | 64 / 5 | |
| 1.17.2 | 64 / 5 | |
| 1.17.1 | 64 / 5 | |
| 1.17.0 | 64 / 5 | |
| 1.16.47 | 63 / 6 | |
| 1.16.46 | 62 / 6 | |
| 1.16.45 | 62 / 6 | |
| 1.16.44 | 61 / 6 | |
| 1.16.43 | 59 / 6 |
v1.17.12
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v1.17.11
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v1.17.2
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v1.17.1
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v1.17.0
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v1.16.47
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v1.16.46
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v1.16.45
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v1.16.44
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v1.16.43
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.