Summary
The v0.0.13 release published successfully to crates.io, Homebrew, and GitHub Releases (binaries + installers), but the npm publish job failed.
Root cause
Publish npm package in the release.yml run failed with:
npm error code E404
npm error 404 Not Found - PUT https://registry.npmjs.org/plumb-cli - Not found
npm error 404 'plumb-cli@0.0.13' is not in this registry.
plumb-cli exists on npm (versions 0.0.11, 0.0.12, owner aram-devdocs) and 0.0.13 is not yet published, so this is not a "version already exists" conflict. npm returns 404 (not 403) on PUT when the auth token can't publish — i.e. the NPM_TOKEN repo secret is expired/invalid. A re-run of the failed job reproduced the same 404, so it is not transient. (The May 2026 0.0.12 publish worked, so the token has since expired or been rotated.)
Fix
- Create a new npm Automation (or Granular) access token with publish rights for
plumb-cli at https://www.npmjs.com/settings/aram-devdocs/tokens.
- Update the repo secret:
- Re-run only the failed npm job on the existing release run:
gh run rerun 27829249314 --failed
(or dispatch release.yml with tag: v0.0.13).
Acceptance
npm view plumb-cli version returns 0.0.13.
npx plumb-cli@0.0.13 --version works.
Notes
cargo-dist's npm job is hand-authored as publish-npm in .github/workflows/release.yml. No code change is required — only the secret rotation and a job re-run.
Summary
The v0.0.13 release published successfully to crates.io, Homebrew, and GitHub Releases (binaries + installers), but the npm publish job failed.
Root cause
Publish npm packagein therelease.ymlrun failed with:plumb-cliexists on npm (versions0.0.11,0.0.12, owneraram-devdocs) and0.0.13is not yet published, so this is not a "version already exists" conflict. npm returns 404 (not 403) onPUTwhen the auth token can't publish — i.e. theNPM_TOKENrepo secret is expired/invalid. A re-run of the failed job reproduced the same 404, so it is not transient. (The May 20260.0.12publish worked, so the token has since expired or been rotated.)Fix
plumb-cliat https://www.npmjs.com/settings/aram-devdocs/tokens.gh secret set NPM_TOKENrelease.ymlwithtag: v0.0.13).Acceptance
npm view plumb-cli versionreturns0.0.13.npx plumb-cli@0.0.13 --versionworks.Notes
cargo-dist's npm job is hand-authored as
publish-npmin.github/workflows/release.yml. No code change is required — only the secret rotation and a job re-run.