fix(ci): pin release npm to 11.x so trusted publishing works on Node 20#21
Merged
Conversation
The Release workflow's "Upgrade npm for trusted publishing" step ran
`npm install --global npm@latest`. npm@latest rolled to 12.0.1, which
dropped Node 20 support (requires Node ^22.22.2 || ^24.15.0 || >=26.0.0),
so the step now fails with EBADENGINE on the Node 20 runner:
npm error EBADENGINE Required: {"node":"^22.22.2 || ..."}
Actual: {"npm":"10.8.2","node":"v20.20.2"}
That aborts the Release job before changesets/action can open the
"chore: version packages" PR (or publish), silently stalling releases.
Pin to `npm@^11.5.1` — the 11.x line supports Node 20.17+ and already
has OIDC trusted publishing (>= 11.5.1), restoring the release flow
without a Node bump. Comment notes to raise npm + node-version together
when moving to npm 12+.
Co-Authored-By: Claude Opus 4.8 (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.
Problem
The Release workflow has been failing since npm rolled
@latestto 12.0.1. TheUpgrade npm for trusted publishingstep runsnpm install --global npm@latest, but npm 12 dropped Node 20 support:The workflow pins
node-version: 20, so the step dies withEBADENGINEand the Release job aborts beforechangesets/actioncan open thechore: version packagesPR or publish. Net effect: merges tomainno longer produce a release (observed on the run triggered by #20).Fix
Pin the npm upgrade to the 11.x line:
EBADENGINE.NPM_TOKENpublish path is preserved.node-versiontogether when moving to npm 12+.After merge
Merging this re-triggers Release on
main, which will open the pendingchore: version packagesPR (the@avaprotocol/protocols0.8.0 bump from the still-unconsumed changeset added in #20). Merging that publishes 0.8.0 over OIDC.🤖 Generated with Claude Code