Skip to content

ci: drive releases from published GitHub Releases - #34

Merged
priosshrsth merged 2 commits into
mainfrom
ci/release-on-github-release
Aug 18, 2026
Merged

ci: drive releases from published GitHub Releases#34
priosshrsth merged 2 commits into
mainfrom
ci/release-on-github-release

Conversation

@priosshrsth

@priosshrsth priosshrsth commented Aug 18, 2026

Copy link
Copy Markdown
Collaborator

Releases were triggered by pushing a v* tag, and the workflow then refused to run unless package.json already matched the tag — so creating a GitHub Release (which tags an existing, unbumped commit) always failed the verify step, as in run 32134413590.

Publishing a GitHub Release is now the trigger. The workflow reads the version from the release tag, writes it into package.json and src/version.ts, commits that to main, moves the tag onto the bump commit, then builds and publishes to npm.

Blocker: the existing v0.0.6 tag points at an unbumped commit and must be deleted before cutting v0.0.6, otherwise the release reuses it and the retag lands on the wrong commit. v0.05 is a typo tag and can go too.

What to look at:

  • .github/workflows/release.yml — the bump step pushes to main with the default GITHUB_TOKEN; main is currently unprotected, so this works, but adding a required-review rule later will break it. It also force-moves the release tag.
  • src/version.ts — was hardcoded at 2.0.8 against a package.json of 0.0.5, so X-Assembly-SDK-Version has been wrong on every request. Now generated by the release step and pinned by tests/version.test.ts.
  • Checkout is ref: main, so the published artifact is main's HEAD, not necessarily the commit the release was cut from. Fine when releases come off main; worth knowing.

bumpp and the release script are removed — the tag decides the version now, so bumpp has nothing to compute and running it would only push a tag that triggers nothing. Also dropped the changelogithub step, since the release body you write in the UI is now the changelog and changelogithub would overwrite it.

Verified: bun run test (196 pass), vp check clean, workflow YAML parses. The workflow itself is unverified until a real release runs.

🤖 Generated with Claude Code

priosshrsth and others added 2 commits August 18, 2026 12:13
Releases were triggered by pushing a vSEMVER tag, and the workflow then
refused to run unless package.json already matched — so tagging a commit that
had not been bumped (which is what a GitHub Release does) always failed.

Publishing a GitHub Release is now the trigger. The workflow derives the
version from the release tag, writes it into package.json and src/version.ts,
commits that to main, and moves the tag onto the bump commit before publishing.

src/version.ts had drifted to 2.0.8 against a package.json of 0.0.5, so the
X-Assembly-SDK-Version header was wrong on every request. It is now generated
by the same step and pinned by a test.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The version now comes from the GitHub Release tag, so there is nothing left
for bumpp to compute. Leaving the script in place would push a tag that
triggers nothing.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@priosshrsth
priosshrsth merged commit a7cef4c into main Aug 18, 2026
5 checks passed
@priosshrsth
priosshrsth deleted the ci/release-on-github-release branch August 18, 2026 12:19
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