Release this repository with its own commands - #42
Merged
Conversation
MihaiBojin
added a commit
that referenced
this pull request
Sep 11, 2026
The branches filter matches a pull request's base, so one stacked on another skipped the workflow entirely: #42 opened against gh-release-helpers with no check reported at all, while #39 and #40 ran. A stack is the normal shape for anything larger than one change here, so the filter costs more than it saves. Pushes are still filtered to main, where the filter does what it says. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Lp5si1kwiFK1w52a6usA33
MihaiBojin
force-pushed
the
own-release-workflows
branch
from
September 11, 2026 01:11
df119d9 to
0f5c7e0
Compare
MihaiBojin
added this pull request to stack #41
September 11, 2026 01:13
MihaiBojin
force-pushed
the
own-release-workflows
branch
from
September 11, 2026 01:16
d167b4c to
7704090
Compare
test-release.yaml waits through github::await_workflow instead of lewagon/wait-on-check-action, removing the last third-party action outside checkout and the release step, and one Renovate line with it. The dist is built from the tag under test rather than installed through 'releasetools/cli@v0', because that action downloads the release the job is waiting for. release.yaml takes the GitHub release body from CHANGELOG.md through changelog::section, and fails before publishing when the version has no section. generate_release_notes listed commit subjects, which described how the work was done rather than what changed for somebody running the commands. CHANGELOG.md carries the entries, and .claude/settings.json declares the release-notes plugin that writes them, so '/release-notes:draft X.Y.Z' works in a fresh clone. scripts/README.md describes the four steps in order: bump action.yml, draft the entry, tag, watch. Its advice to replace a release with --force is gone; git::release now reuses a tag that already points at HEAD, so a retry needs no flag, and --force is documented as moving a published tag. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Lp5si1kwiFK1w52a6usA33
scripts/README.md said 'scripts/tag.sh vX.Y.Z --push', which tags the release and leaves v0 where it was, so 'uses: releasetools/cli@v0' keeps installing the previous version however carefully action.yml was bumped. Every release tag in this repository is also signed. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Lp5si1kwiFK1w52a6usA33
MihaiBojin
force-pushed
the
own-release-workflows
branch
from
September 11, 2026 01:18
7704090 to
3aa9b59
Compare
MihaiBojin
added a commit
that referenced
this pull request
Sep 11, 2026
.claude became a tracked directory when .claude/settings.json landed in #42, which made Claude Code's per-agent worktrees show as untracked. Anything that asks for a clean working tree then refuses, which release::prechecks did while cutting 0.1.0.
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.
Stacked on #40. This repository stops using stand-ins for the two commands that branch
ships, and starts describing its own releases.
The wait
test-release.yamlwaited on the check nameRelease GHAthroughlewagon/wait-on-check-action. It now callsgithub::await_workflow, which removes thelast third-party action here outside
checkoutand the release step, and closes oneRenovate line. #36 bumped that pin to v1.9.1 four commits ago.
The dist is built from the tag under test rather than installed through
uses: releasetools/cli@v0. That action downloadsinstall.shfrom the release this jobis waiting for, which by definition does not exist yet.
The release body
generate_release_notes: trueproduced a list of commit subjects, which describe how thework was done. The body now comes from
CHANGELOG.mdthroughchangelog::section, and atag whose version has no section fails in that step, before anything is published:
Verified against the
CHANGELOG.mdin this branch:[Unreleased]does not answer to aversion, and a dated
## 0.0.17 - 2026-09-11heading does, with or without thev..claude/settings.jsondeclares therelease-notesplugin and its marketplace, matchingwhat
dotsecenvandMihaiBojin/websitealready do, so/release-notes:draft X.Y.Zworksin a fresh clone rather than only on a machine that installed it by hand.
The procedure
scripts/README.mdnow lists four steps in order: bumpaction.yml, draft the entry, tag,watch. Each is enforced by something, so skipping one fails the release rather than
shipping a wrong one.
Its advice to replace a release with
scripts/tag.sh vX.Y.Z --force --pushis gone. #39made
git::releasereuse a tag that already points at HEAD, so a retry after a failed pushneeds no flag, and
--forceis documented for what it does: move a published tag.What this releases into
base::check_depsrequiresghfrom #40 onwards, andtest-release.yamlruns it on everyplatform in its matrix. Checked against
actions/runner-images: ubuntu-22.04, ubuntu-24.04,macos-14, macos-15 and macos-26 all ship the GitHub CLI, 2.95.0 or newer, on both
architectures.
curl,awkandsedare present everywhere too.The first release after this merges must carry a changelog section for its version.
[Unreleased]will not answer to one, which is the point.🤖 Generated with Claude Code
https://claude.ai/code/session_01Lp5si1kwiFK1w52a6usA33