fix(package): stable tracks SemVer releases, latest tracks main #85
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/VA-78-agent-channels-stable-latest"
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?
The agent generic-package publish workflow chose its moving coordinate from the trigger (GOV-14): a push to main published the moving
stabletag and av*tag published the immutable pinnedX.Y.Z. That madestableadvance on every main push, so a server pinningstable(the fetcher default) was fed whatever last landed on main, including non-release builds like0.1.0-44-g4a87812. That inverts the conventional meaning ofstable.Split the moving channels so the names match operator intent.
.forgejo/workflows/build-package.ymlnow resolves the channel from the trigger this way: av*tag push publishes the immutable pinnedX.Y.ZAND movesstableto that release (DELETE-then-PUT the same bytes under.../stable), sostablealways points at the most recent SemVer release; a push to main publishes ONLY the movinglatestcoordinate and never touchesstable, solatesttracks the head of main. Operators pinstablefor released agents orlatestto auto-track main (staging/dev).The moving-upload closure is now channel-generic: it derives the channel label from the last path segment of the base URL for its log/error lines, so the same DELETE 204|404 then PUT 201 path serves both
latestandstable. The immutable pinned path (201 fresh / 409 already-published) is unchanged, and every package file (the descriptive artifact, its.sha256and.sig, plus thevervainagent-6+.sigfetcher pair) is published to whichever coordinate the trigger selects.Update the VA-60 default-pin comment and docs/agent-package-distribution.md to reflect that
stablenow means latest release andlatestmeans latest main, and add the VERVAIN_AGENT_FETCHER_VERSION guidance for choosing between them.#VA-78