Skip to content

docs(release-agent): codefly publish cuts the release, never a hand tag - #189

Merged
antoinetoussaint-byte merged 1 commit into
mainfrom
docs/release-agent-uses-codefly-publish
Oct 27, 2026
Merged

antoinetoussaint-byte merged 1 commit into
mainfrom
docs/release-agent-uses-codefly-publish

Conversation

@antoinetoussaint-byte

Copy link
Copy Markdown
Contributor

What this is

A fix to the procedure this repo hands the next agent. release-agent told it to cut the
tag by hand:

git tag -a v0.0.N -m "v0.0.N" && git push origin v0.0.N

That contradicts how this repo is actually released — main's history is a series of
release: v0.0.N pull requests — and it contradicts codefly publish owning the release. A
hand tag skips the pre-flight gates, the release-grade agent CI, and the asset upload and
install-URL verification. That is how a release once shipped from a commit whose CI had never
run.

What changed

  • The walk is codefly publish patch from a clean, up-to-date main clone, with what
    publish does end to end (bump → release PR → release-grade agent CI → tag → GitHub release
    with loader archives and SBOMs) and what its pre-flight refuses (dirty tree, not on main,
    behind origin, tag already exists).
  • The two traps worth knowing, both learned the hard way in this fleet: re-run publish to
    finish a merged-but-untagged release rather than bumping again, and never start a second
    publish while one is waiting, or the re-run opens the NEXT bump instead of tagging the one
    on main.
  • Pinning core stays a PR of its own, because the version bump is publish's to write.
  • A new "When a release looks wrong" entry for the bumped-but-untagged state.

Unchanged, because they were already right: the three-item version/tag/archive contract with
core's downloader, and why the release build needs CGO and the cross toolchain.

Written while cutting v0.0.168 and v0.0.169 by that path, which is where the gaps showed.

🤖 Generated with Claude Code

The skill told the next agent to `git tag -a v0.0.N && git push origin v0.0.N`
after merging a hand-written version bump. That contradicts how this repo is
actually released — main's history is a series of `release: v0.0.N` pull
requests — and it contradicts the rule that publish owns the release: a hand
tag skips the pre-flight gates, the release-grade agent CI and the asset
upload, which is how a release once shipped from a commit whose CI had never
run.

The walk is now `codefly publish patch` from a clean, up-to-date main clone,
with what publish does end to end, what its pre-flight refuses, and the two
traps worth knowing: re-run it to finish a merged-but-untagged release rather
than bumping again, and never start a second publish while one is waiting.
Pinning core stays a PR of its own, because the version bump is publish's to
write. The version/tag/archive contract and the CGO section are unchanged;
they were already right.

Written while releasing v0.0.168 by that path.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@antoinetoussaint-byte
antoinetoussaint-byte merged commit 5809be8 into main Oct 27, 2026
5 checks passed
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