feat: switch to changesets release PR workflow#951
Draft
kdaviduik wants to merge 1 commit intoenable-auto-changelogfrom
Draft
feat: switch to changesets release PR workflow#951kdaviduik wants to merge 1 commit intoenable-auto-changelogfrom
kdaviduik wants to merge 1 commit intoenable-auto-changelogfrom
Conversation
Contributor
Author
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
4 tasks
018b0c0 to
c6173bc
Compare
This was referenced Mar 14, 2026
Replace the direct-publish npm release workflow with the two-mode changesets/action pattern: pending changesets create a release PR titled "[ci] release"; merging it triggers npm publish. Why: the previous workflow published to npm immediately on PR merge with no human review gate for version bumps or changelogs. The release PR pattern creates an intermediate PR showing exactly what will be published before it goes out. Key changes: - Rewrite npm-release.yml to use changesets/action v1.7.0 - Switch trigger to push-to-main with queue concurrency - Use SHOPIFY_GH_ACCESS_TOKEN (GITHUB_TOKEN can't re-trigger workflows) - Add full git history fetch and registry-url for npm auth - Enable @changesets/changelog-github for automatic changelog generation - Add @changesets/changelog-github devDependency - Set .changeset/config.json access to "public" - Delete DEPLOYING.md (content moved to CONTRIBUTING.md) - Add deploy/release/rollback docs to CONTRIBUTING.md - Update CLAUDE.md and AGENTS.md symlinks to point to CONTRIBUTING.md - Fix CHANGELOG.md v3.0.6 date from "(Unreleased)" to 2025-08-25 - Remove manual changeset detection and [ROLLBACK]/[DOCS] skip logic Co-Authored-By: Claude <noreply@anthropic.com>
c6173bc to
215a2cc
Compare
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.

Summary
DEPLOYING.md(content moved to CONTRIBUTING.md)npm-release.ymlfor the changesets release PR pattern: pending changesets create a[ci] releasePR; merging that PR triggers npm publish.changeset/config.json:access: "public", enable@changesets/changelog-githubCONTRIBUTING.mdCLAUDE.mdandAGENTS.mdas symlinks toCONTRIBUTING.md.envto.gitignoreWhy
The previous workflow published to npm immediately on PR merge with no human review gate for version bumps or changelogs. The release PR pattern (used by Hydrogen and many Shopify repos) creates an intermediate PR showing exactly what will be published.
Key changes in
npm-release.ymlpushto main (waspull_request: closed)cancel-in-progress(wastrue— could kill mid-flight publish)fetch-depth: 0for changelog generation (was1)changesets/actionv1.7.0 handles both version PR creation and publish (was v1.5.2 with manual steps)SHOPIFY_GH_ACCESS_TOKENinstead ofGITHUB_TOKEN(GitHub blocks GITHUB_TOKEN events from re-triggering workflows)[ROLLBACK]/[DOCS]title conventionsExternal prerequisite
SHOPIFY_GH_ACCESS_TOKENmust be provisioned via github-actions-access-provider#2613. The release PR creation works without it (using GITHUB_TOKEN), but merging the release PR won't auto-trigger publish until this token is provisioned.Test plan
SHOPIFY_GH_ACCESS_TOKENsecret is provisioned in repo settings[ci] releasePR is created