Skip to content

chore: drop the release script and document the flow that exists - #19

Merged
Fiona2016 merged 1 commit into
publishfrom
chore/drop-broken-release-script
Aug 10, 2026
Merged

chore: drop the release script and document the flow that exists#19
Fiona2016 merged 1 commit into
publishfrom
chore/drop-broken-release-script

Conversation

@Fiona2016

Copy link
Copy Markdown
Collaborator

scripts/prepare-release.ts could not perform a release in this repository, so it is removed rather than repointed.

Why it could not work

It ran git checkout main and git pull origin main, then branched from there and opened its PR with --base main. main tracks the upstream project; the release branch is publish, which is also the repository default. Running the script moved the working tree onto an unrelated branch and targeted its PR there.

Why delete instead of fix

What it wrapped is three commands and one workflow dispatch. The wrapper also introduced a failure mode of its own: it pushed the release tag before the PR was merged, so any fixup commit on the release branch required a force-moved tag to stay in the release — the script printed a warning about exactly that.

What changed

  • Deleted scripts/prepare-release.ts.
  • Deleted scripts/lib/semver.ts and its spec — no other caller (scripts/lib/changelog.ts and scripts/lib/git.ts are kept; scripts/generate-changelog.ts still uses them).
  • Removed the release entry from package.json scripts.
  • Rewrote the release section of docs/DEVELOPMENT.md, which documented the script step by step. It now describes the flow that exists: version + changelog in a PR against publish, tag the merge commit, run the Publish workflow from the tag. The rewrite also drops a chat-channel reference inherited from upstream that does not exist here, and adds the npm_tag input and the npm dist-tag add promotion command, which were missing.

Verification

  • yarn typecheck — clean
  • yarn test:unit — 36 files pass (37 before; the drop is the deleted semver.spec.ts)
  • yarn format:check — clean
  • Searched the tree for prepare-release, yarn release, lib/semver, bumpVersion — no remaining references

Follow-up, not in this PR

scripts/generate-changelog.ts has no entry point either — not in package.json, scripts/cli, or any workflow. Left alone here since it is a separate question from the broken release script.

`scripts/prepare-release.ts` could not perform a release in this repository. It
checked out and branched from `main`, which tracks the upstream project — the
release branch is `publish`, and it is the repository default. Running it moved
the working tree to an unrelated branch and opened its PR against that branch.

Delete it rather than repoint it: the flow it wrapped is three commands and one
workflow dispatch, and the wrapper added a failure mode of its own by pushing
the release tag before the PR merged, so any fixup commit needed a force-moved
tag to stay in the release.

`scripts/lib/semver.ts` had no other caller and goes with it.

The release section of `docs/DEVELOPMENT.md` described that script step by step,
so it is rewritten to describe the actual flow: version and changelog in a PR
against `publish`, tag the merge commit, run the Publish workflow from the tag.
It also referenced a chat channel inherited from upstream that does not exist
here, and omitted the `npm_tag` input and the promotion command that goes with a
staged release.

Also removes the `release` entry from `package.json` scripts.
@Fiona2016
Fiona2016 merged commit 7091c0a into publish Aug 10, 2026
2 checks passed
@Fiona2016
Fiona2016 deleted the chore/drop-broken-release-script branch August 10, 2026 07:24
@Fiona2016 Fiona2016 mentioned this pull request Aug 10, 2026
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