Open
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
npm has retired the legacy audit endpoints that pnpm uses, returning 410 for all requests (pnpm/pnpm#11265). This affects all pnpm 10.x and 11.x versions with no upstream fix available. Replace pnpm audit with Google's osv-scanner, which reads lockfiles directly against the OSV database without depending on the npm registry API. A single bin/osv-audit script downloads a pinned, checksum-verified osv-scanner binary and scans all three lockfiles (root, examples/web-cli, packages/react-web-cli). The CI workflow is simplified: no pnpm/node setup or dependency install needed since osv-scanner reads lockfiles directly.
5966414 to
951269c
Compare
WalkthroughThis PR replaces Changes
Review Notes
Generated by Claude Code |
sacOO7
reviewed
Apr 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
/-/npm/v1/security/audits/quickand/-/npm/v1/security/audits) returning 410 for all requests (pnpm/pnpm#11265). This affects all pnpm 10.x/11.x versions with no upstream fix available.pnpm auditwith Google's osv-scanner, which reads lockfiles directly against the OSV database — no dependency on the npm registry API.bin/osv-auditscript handles downloading, checksum-verifying, and running osv-scanner. Same script used in ably/website#8255.--level critical|high|medium|lowto control the failure threshold (set tocriticalto match the previouspnpm audit --audit-level=criticalbehaviour).pnpm installneeded since osv-scanner reads lockfiles directly.Changes
bin/osv-audit— new script that downloads osv-scanner (pinned to v2.3.5), verifies the binary against release SHA256 checksums, scans specified lockfiles, and fails only if vulnerabilities at or above the configured severity threshold are found..github/workflows/audit.yml— replacedpnpm auditwithbin/osv-audit --level critical; removed pnpm/node setup steps andpnpm install(no longer needed). Scans all three lockfiles: root,examples/web-cli, andpackages/react-web-cli.Keeping osv-scanner up to date
The osv-scanner binary version is pinned in
bin/osv-audit. This is intentional — the vulnerability database is fetched live from osv.dev on every scan, so an older binary doesn't miss CVEs. Releases happen every 3-5 weeks and are mostly additive (new ecosystem support, performance, bug fixes). The core lockfile scanning path is stable.Bumping the version is a one-line change to
OSV_SCANNER_VERSION— the checksum verification fetches the matching SHA256SUMS from the same release, so no other changes are needed.Test plan
Security AuditGitHub Actions job passesbin/osv-audit --level critical pnpm-lock.yamlpasses (0 critical vulns)bin/osv-audit --level critical pnpm-lock.yaml examples/web-cli/pnpm-lock.yaml packages/react-web-cli/pnpm-lock.yamlpasses (0 critical, 19 high, 17 medium, 8 low — all below threshold)