Skip to content

ci: drop setup-node registry-url so OIDC publishing works - #179

Merged
finalerock44 merged 1 commit into
devfrom
fix/npm-trusted-publishing-oidc
Sep 18, 2026
Merged

finalerock44 merged 1 commit into
devfrom
fix/npm-trusted-publishing-oidc

Conversation

@finalerock44

Copy link
Copy Markdown
Contributor

registry-url makes setup-node write _authToken=${NODE_AUTH_TOKEN} into .npmrc. With no token set that resolves to an empty credential, so npm treats auth as configured, skips the trusted-publishing OIDC exchange and PUTs unauthenticated — which npm answers with 404. That is why 5.6.0-beta.1 and beta.2 never published. npmjs.org is the default registry, so nothing else changes.

What & why

Type of change

  • fix — bug fix
  • feat — new feature
  • perf — performance improvement
  • refactor — code change that's neither a fix nor a feature
  • docs — documentation only
  • chore / ci / build / test — tooling, no user-facing change
  • Breaking change (title has ! or PR notes a BREAKING CHANGE:)

Checklist

  • PR title follows the Conventional Commits format (see comment above)
  • pnpm lint passes
  • pnpm typecheck passes
  • pnpm build passes
  • I have not bumped the version or edited CHANGELOG.md (release-please handles this)
  • I have signed the CLA (the bot will prompt on first contribution)
  • Docs / README.md / STYLE_GUIDE.md updated if behaviour or output changed

How to test

registry-url makes setup-node write `_authToken=${NODE_AUTH_TOKEN}` into
.npmrc. With no token set that resolves to an empty credential, so npm treats
auth as configured, skips the trusted-publishing OIDC exchange and PUTs
unauthenticated — which npm answers with 404. That is why 5.6.0-beta.1 and
beta.2 never published. npmjs.org is the default registry, so nothing else
changes.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@finalerock44 finalerock44 self-assigned this Sep 18, 2026
@claude

claude Bot commented Sep 18, 2026

Copy link
Copy Markdown

Code review

No issues found. Checked for bugs and CLAUDE.md compliance.

@finalerock44
finalerock44 merged commit 9b0f179 into dev Sep 18, 2026
8 checks passed
@finalerock44
finalerock44 deleted the fix/npm-trusted-publishing-oidc branch September 18, 2026 14:24
finalerock44 added a commit that referenced this pull request Sep 18, 2026
5.6.0-beta.1 and beta.2 were tagged and released but never reached npm:
publish-npm-beta failed with `E404 PUT /@devicecloud.dev%2fdcd` because
setup-node's registry-url wrote an empty auth token, so npm never ran the
OIDC exchange. #179 removed it; nothing releasable has landed since, so this
empty commit forces a cut to prove the fix.

Release-As: 5.6.0-beta.3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant