docs(installer): bundles publish to a branch, releases only tag #97
Reference in New Issue
Block a user
No description provided.
Delete Branch "docs/bundles-branch"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What & why
Two corrections to §7.1, both forced by the first compose run that ever had a bundle to write (task 542), and both settled by the org lead on 2026-08-05.
What the section claimed
Both halves were wrong.
mainis protected and declines the push —pre-receive hook declined, on the initial attempt and again on the rebase-retry. Andrelease.ymlhad never pushed anything: its bump step has never executed in any repo carrying it, because an empty template expression written literally in one of its comments makes the runner fail to build the step and skip it without failing the job. The tags exist because Gitea's release API creates one when it publishes.So the assumption that a working push path already existed had never been tested by anything — which is the part worth recording, more than the fix.
What replaces it
Bundles publish to a
bundlesbranch at its root. That keeps every property the original choice was for — a reviewable diff, a git history of the compat matrix, plain anonymous raw URLs, no credentials on the shard host — and needs no exception at all. Whitelisting a scheduled job for pushes to the default branch would buy nothing this does not.The release workflows become tag-only for the same reason, as
servuo-pluginshas always been: the tag is the version. The version is still written intoCargo.tomlbefore building, so a released binary self-reports correctly; it is no longer committed back, and the next version is computed from the newest tag. A first release must not depend on a write to a protected branch.Also updated: the raw URL in
INSTALL.mdAppendix A1 (the by-hand path), and Phase 0.3's as-built note, which recorded the original decision.How it was tested
Prose, but each claim is an observation from today rather than a recollection: the rejected push and the interpolation error are both in the compose job's log,
link'sCargo.tomlis still0.1.0at tagv1.1.1,servuo-plugins' log shows* [new tag] v0.2.0 -> v0.2.0going through the same protection, and thebundlesbranch is live and anonymously readable at the URL this section now documents.Code PRs this describes
installer#13 (publish to the branch, plus the stale-check fix and the required
linux-aarch64key), installer#14 and link#28 (tag-only releases), installer#15 (the crate'sBUNDLE_BASE).Checklist
AI-assisted contributions (required)
Claude Code (Opus 5). I have reviewed and understand every change, and take responsibility for it. AI-authored commits are marked with aCo-Authored-Bytrailer.License