fix(deps): bump fast-uri override to 3.1.7 to unblock the audit gate - #7943
fix(deps): bump fast-uri override to 3.1.7 to unblock the audit gate#7943NicholasRBowers wants to merge 1 commit into
Conversation
…A advisories Four high-severity advisories against fast-uri <=3.1.5 (GHSA-5jgf-p345-68v8, GHSA-f65p-4m7j-42xc, GHSA-fph4-wmhf-6fwf, GHSA-jqff-g426-hqxp; SSRF and host confusion in URI normalization) were published 2026-09-02, turning the required Dependency Audit gate red on every PR merge ref fleet-wide. fast-uri is transitive (ajv ^3.0.1), but website/electron/package.json pins it via an exact overrides entry: "fast-uri": "3.1.5". That override is why npm update / npm audit fix could not move it - every re-resolution snapped back to the pinned version. Bump the override to 3.1.7 (advisories patched in 3.1.6; 3.1.7 is the current 3.x dist-tag) and regenerate the lockfile entry under it. Verified: npm ci --ignore-scripts installs the lockfile cleanly (308 packages) and npm audit --omit dev reports 0 vulnerabilities. Closes #7925
UX Review (Fable 5) — ⏭️ skippedRevision |
Opus 4.8 Review — ✅ no blocking findingsReviewed Verdict parsed from the review's SHA-scoped output markers for commit False positive or not applicable? A repository writer can comment: |
Design Review (Fable 5) — ✅ PASSDesign-level review of Design-Verdict: PASS Minimal root-cause fix: bumps the exact Suggestions
[DESIGN-REVIEWED] 53df1a8 |
GPT 5.6 Review — ✅ no blocking findingsGPT 5.6 completed its review of This comment is updated in place on each push. Review detailsNo findings. False positive or not applicable? A repository writer can comment: |
First Principles Review (Fable 5) — ⏭️ skippedRevision |
|
Closing as already fixed on PR #7936 ("fix(deps): unpin fast-uri so the patched 3.1.7 can resolve") merged at 17:52Z and lands the same change: This PR's diff is byte-for-byte the same 3.1.5 → 3.1.7 bump in the same two files, so there is nothing left for it to add. Nothing is wrong with the change — it was simply raised in parallel with #7936. Note that #7936 shipped without a closing keyword, so the tracking issue stayed open after the merge; closing it now alongside this PR. |
Problem / Motivation
The required
Dependency Audit / Audit Production Dependenciesgate is red on every PR merge ref since ~2026-09-02 16:30 UTC: four high-severity GHSA advisories (GHSA-5jgf-p345-68v8, GHSA-f65p-4m7j-42xc, GHSA-fph4-wmhf-6fwf, GHSA-jqff-g426-hqxp — SSRF and host-confusion defects in URI normalization) were published today againstfast-uri <= 3.1.5, whichwebsite/electron/package-lock.jsonpins.Why it matters
Every open PR is blocked at a required gate regardless of its own diff (first observed on #7918, which touches no dependencies). Until this lands, nothing can reach readiness.
What changed (motivation → approach → change)
fast-uriis a transitive dependency (viaajv@^3.0.1), butwebsite/electron/package.jsonpins it with an exactoverridesentry:"fast-uri": "3.1.5". That override — not registry state or lockfile staleness — is whynpm update fast-uriandnpm audit fixboth no-op here: every re-resolution snaps back to the pin.Change: bump the override to
3.1.7(the advisories are patched in 3.1.6; 3.1.7 is the currentthreedist-tag, published today) and regenerate the lockfile entry under it. Two files, four lines of real delta: the override value plus the lockfile's version/resolved/integrity triplet. The neighboringjs-yamloverride is untouched.Tests
N/A — lockfile-only dependency bump; no code paths in this repo change. The gate itself is the regression test: the
Dependency Auditcheck on this PR runs the exact audit currently failing fleet-wide.Manual verification
npm ci --ignore-scriptsinwebsite/electroninstalls the regenerated lockfile cleanly (308 packages).npm audit --omit devreports 0 vulnerabilities (was 4 high).Screenshots / video
Why no screenshot: dependency lockfile bump; no rendered surface exists.
Closes #7925
Pattern harvest
Not generalizable: operational one-off — an exact
overridesversion pin frozea transitive dependency on a version that later grew advisories, and the pin
silently defeats
npm update/npm audit fix. Process note rather than acode rule: an exact
overridespin should carry a comment naming why itexists and what unblocks removing it.