Repository navigation
chore(release): consume shared pnpm-release-management toolchain - #67
Merged
Merged
Conversation
Delete this repo's local release scripts (plan-release, tag-released-packages, create-github-releases, lib/cycle and their helpers) and the bespoke release.yml body; release.yml and changeset-check.yml become thin callers of systemfsoftware/pnpm-release-management reusable workflows pinned to prm/toolchain, which derive the phase from repository state, open the version PR, tag released versions and cut GitHub Releases npm-registry publishing is gone as a consequence: distribution is Nix flakes consumed from git refs, so a <pkg>@vX.Y.Z git tag is the durable record a version shipped. Changesets, publishConfig and the Nix flake outputs are untouched. Drop the test:scripts task and the two tooling-decision docs that described the deleted local scripts
The shared changeset gate marks every publishable package touched when root turbo.json and package.json change; a none-bump intent naming both public packages records a touch that releases nothing, which is the gate's canonical script/tooling-only class
The shared pnpm-release-management apps (plan, gate, bump, tag, release) read release.jsonc as their only repo-local input; without it the changeset-check gate and the release workflow both abort with "cannot read config release.jsonc". pnpm versioning for the two independently-versioned public packages, turbo build gate, trunk main, release PR branch changeset-release/main
The shared changeset-check reusable workflow checks out and builds only the release tools, never running pnpm install in the consuming repo, so a turbo-strategy gate aborts with "turbo pin unusable: installed turbo undefined". The paths strategy derives change evidence from the git diff alone and attributes each changed file to the package whose directory contains it, which needs no workspace install
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.
Unifies release tooling onto the shared
systemfsoftware/pnpm-release-managementtoolchain (trunkprm/toolchain@2730f212260b8b9b604cb6dcef3871bd750efe554), replacing this repo's local release scripts.What changed
scripts/plan-release.ts,scripts/tag-released-packages.ts,scripts/create-github-releases.ts,scripts/lib/cycle.ts, plus their now-orphaned helpers (check-changeset.ts,open-release-pr.sh,lib/pending-intents.ts+ test,lib/run.ts,deno.json/deno.lock) — the wholescripts/dir, since nothing outside it imported any of it..github/workflows/release.yml→ thin caller of the shared reusablerelease.yml@prm/toolchain(tools-ref: prm/toolchain)..github/workflows/changeset-check.yml→ thin caller of the shared reusablechangeset-check.yml@prm/toolchain.test:scriptsscript (package.json) and its//#test:scriptsturbo task — their target no longer exists..changeset/README.mdandCONCEPTS.mdto the shared-pipeline + git-tag-release / Nix-flake story; deleted two tooling-decision docs that documented the deleted local scripts.Consequence
npm-registry publishing is gone. Distribution is Nix flakes consumed from git refs; a
<pkg>@vX.Y.Zgit tag (written by the shared pipeline when it tags + cuts the GitHub Release) is the durable record a version shipped. The shared pipeline derives phase from repository state.Kept
Changesets (
.changeset/, version PR flow), GitHub Releases,publishConfig(inert without a publish step), the Nix flake outputs. No flake input added — the release CLI runs only in CI via the reusable workflow's own checkout, so the flake does not need it (back-edge would be optional anyway).Mirrors systemfsoftware/systemfsoftware#655's intent, adapted to the unified-toolchain target. No tombstone files.
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.