ci: publish prerelease builds to npm under the next dist-tag#97
Merged
Conversation
Every push to main (except release-please's release commits) now publishes a prerelease version like 1.5.1-next.<timestamp>.g<sha> with `npm publish --tag next`, so teammates can QA merged-but-unreleased work via `npx zerion-cli@next` while regular users keep getting `latest`. Also supports manual workflow_dispatch from any branch. Co-Authored-By: Claude Fable 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.
What
Adds a QA/prerelease channel for the CLI so teammates can try merged-but-unreleased improvements without touching what regular users install.
.github/workflows/publish-next.yml— on every push tomain(skipping release-please's ownchore(main): releasecommits) it runs tests, bumps to a unique prerelease version like1.5.1-next.20260714093000.g325093a, and runsnpm publish --provenance --tag next. The--tag nextflag means thelatestdist-tag never moves — only merging the release-please PR promotes a real release.workflow_dispatch— a prerelease can also be published manually from any branch via the Actions tab.@nextchannel, git-installing unmerged branches (npm i -g github:zeriontech/zerion-ai#<branch>), and how to roll thenexttag back to a known-good version withnpm dist-tag add.QA flow this enables
main→ each merge publishes to@nextnpx zerion-cli@next/npm i -g zerion-cli@nextlatestfor everyoneNotes
NPM_TOKENsecret (same package, different dist-tag).gprefix on the SHA avoids invalid all-digit-with-leading-zero prerelease identifiers.concurrencygroup serializes runs so an older slow build can't move thenexttag past a newer one.-next.*versions accumulate on npm harmlessly; npm forbids republishing versions so no cleanup is needed.🤖 Generated with Claude Code