Repin the dependency overrides that had drifted onto vulnerable versions - #330
Merged
Merged
Conversation
…e versions The `overrides` block pins three transitive deps so CI resolves the same tree every run. Advisories have since landed on all three pinned versions, so the pinning was holding the build on exactly the vulnerable releases and `npm audit --audit-level=high` now fails every PR. undici moves to the first patched release in each line its parent accepts: 6.28.0 for @vercel/blob (^6.23.0) and 7.29.0 for jsdom (^7.25.0), clearing the response-desync, cache-disclosure, CRLF and cookie-injection advisories. The next -> postcss override goes entirely. next declares postcss 8.5.23, which is already past the sourceMappingURL path-traversal advisories; the override was dragging it back to 8.5.16 and reintroducing them. Letting next use the version it pins is both patched and one less thing to keep current by hand. Refreshing the lockfile alongside picks up patched next (16.3.0), next-auth (5.0.0-beta.32) and @auth/core (0.41.3). That last one matters most here: the critical Auth.js advisory has existence-based auth checks failing open when the config errors, and proxy.ts gates the whole API on exactly that shape of check. package.json dependency ranges are untouched; every version this moves to was already inside them. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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 audit --audit-level=highis failing every PR right now, including #329. The cause is theoverridesblock: it pins three transitive deps for reproducible CI resolution, and advisories have since landed on all three pinned versions. The pinning was holding the build on exactly the vulnerable releases.undicimoves to the first patched release in each line its parent accepts —6.28.0for@vercel/blob(^6.23.0) and7.29.0forjsdom(^7.25.0). Clears the response-desync, cache-disclosure, CRLF-injection and cookie-injection advisories.next→postcssoverride goes entirely.nextdeclarespostcss@8.5.23, already past thesourceMappingURLpath-traversal advisories. The override was dragging it back to8.5.16and reintroducing them.next(16.3.0),next-auth(5.0.0-beta.32) and@auth/core(0.41.3). That last one matters most: the critical Auth.js advisory (GHSA-8fpg-xm3f-6cx3) has existence-based auth checks fail open when the config errors, andproxy.tsgates the whole API on exactly that shape of check (if (!req.auth && !publicApi)).No
dependencies/devDependenciesranges change. Every version this moves to was already inside the declared ranges — the lockfile had simply gone stale against them.Test plan
npm audit --audit-level=high→found 0 vulnerabilities(was 5 high, 2 critical)rm -rf node_modules && npm install, so the result is the treenpm cireproduces rather than local driftnpx tsc --noEmitcleannpm test— 162 passnpm run buildclean