fix: pin fast-uri to clear the release audit gate - #70
Merged
Conversation
publish.yml's `pnpm audit --audit-level=high --prod` gate failed the 0.9.0 publish run (github.com/vymalo/opencode-oauth2/actions/runs/30376856510) on two high-severity fast-uri advisories (GHSA-v2hh-gcrm-f6hx, GHSA-4c8g-83qw-93j6), resolved at 3.1.2 transitively via @modelcontextprotocol/sdk > ajv, pulled in by opencode-browser-mcp and opencode-devtools-mcp. Both are fixed in 3.1.4. pnpm 11 no longer reads `pnpm.overrides` from package.json (moved to pnpm-workspace.yaml), so the override lives there. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
✅ AI Governance check passedThis PR declares AI usage, references a source of truth, and provides verification evidence. Thank you. |
Merged
28 tasks
stephane-segning
added a commit
that referenced
this pull request
Jul 28, 2026
Bump all eleven workspace packages to 0.10.0. Needed because npm's @vymalo/opencode-models-info@0.9.0 was already published on 2026-06-29 (confirmed by pulling the tarball and grepping for modelsInfoHideTextOnly/reconcileModel/startCacheRefreshSchedulers — none present), so today's models-info work (#68) and the fast-uri audit fix (#70), both merged under the still-0.9.0 version line, could never actually reach npm: publish.yml's own guard silently skips re-publishing an already-existing version. CHANGELOG changes: split the mis-filed [0.9.0] "unreleased" entry — the two models-info bullets and the fast-uri fix move to a new [0.10.0] — 2026-07-28 section; [0.9.0] is re-dated to 2026-06-29 (the actual npm publish timestamp) and keeps only what that publish really contained (devtools/devtools-mcp + docs). Co-authored-by: Claude Sonnet 5 <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.
1. Summary
This PR changes:
overridesentry pinning the transitive dependencyfast-urito^3.1.4inpnpm-workspace.yaml.pnpm-lock.yamlaccordingly (fast-uri3.1.2 → 3.1.4; no other resolution changes).It solves:
0.9.0publish run failed at thepnpm audit --audit-level=high --prodgate: github.com/vymalo/opencode-oauth2/actions/runs/30376856510. Two high-severity advisories onfast-uri@3.1.2— GHSA-v2hh-gcrm-f6hx and GHSA-4c8g-83qw-93j6 (both host-confusion issues, both fixed in3.1.4) — blocked the entire workflow before any build/test/publish step ran.fast-uriis pulled in transitively via@modelcontextprotocol/sdk→ajv(andajv-formats→ajv), a dependency ofopencode-browser-mcpandopencode-devtools-mcp; the packages don't usefast-uridirectly, so no application code changes.2. Intent
The intent of this PR is:
3. Scope
In Scope
pnpm-workspace.yaml:overrides.fast-uri: ^3.1.4.pnpm-lock.yaml: regenerated viapnpm install.Out of Scope
--audit-level=highthreshold, and out of scope for this fix).publish.yml— happens as a separateworkflow_dispatchafter this merges.Note on
package.jsonvspnpm-workspace.yamlI initially added the override under
pnpm.overridesin the rootpackage.json(the pre-pnpm-10 convention this repo's own inline comments still reference elsewhere).pnpm installwarned that pnpm 11 no longer reads that field — overrides now live inpnpm-workspace.yaml, where I moved it.4. Verification
I verified this change by:
Commands run:
Results:
5. Screenshots / Evidence
Add evidence here:
pnpm audit --audit-level=high --prodcommand now exits 06. Risk Assessment
Risk level:
Potential risks:
ajv's dependency resolution away from what it originally shipped with — in principleajv/ajv-formatscould behave differently against a newer transitivefast-uri.Mitigation:
3.1.2→3.1.4is a patch-level bump within the same major/minor offast-uri, both CVE fixes are described as host-confusion parsing fixes (not API changes), and the full build/typecheck/test/coverage suite passed unchanged across all 11 packages after the bump.7. AI Usage Declaration
AI was used for:
Human verification:
8. Reviewer Focus
Please focus your review on: