Release v0.4.0
Promote develop → main and cut v0.4.0 (minor bump from v0.3.1 — net-new command surface).
develop is a strict superset of main (the only main-ahead commits are prior promotion merges), and CI on develop HEAD (722d2cf) is green.
Contents (12 commits since v0.3.1)
Known interim state (not blockers — additive, opt-in)
Acceptance criteria
Release v0.4.0
Promote
develop→mainand cut v0.4.0 (minor bump from v0.3.1 — net-new command surface).developis a strict superset ofmain(the only main-ahead commits are prior promotion merges), and CI on develop HEAD (722d2cf) is green.Contents (12 commits since v0.3.1)
login/logout/auth status+ config + backend client (feat(cli): auth scaffold — login/logout/auth status + config + backend client (cli#83) #85);client create/list/use(feat(cli): client create / list / use commands (#84) #92); cluster-anchor idempotent get-or-create + 409 handling (feat(cli): client create reads the cluster anchor — idempotent get-or-create + 409 (#84) #102);client create --credential-filefor the installer handoff (feat(cli): client create --credential-file — write the credential for the installer (#84) #104).Known interim state (not blockers — additive, opt-in)
client createstill prints the credential by default; the §9 never-show end-state needs the installer reorder (#838, not yet built).--credential-fileconsumer (#838) not yet wired; location auto-detect (feat(cli): location auto-detect for client create (#84) #93) + RFC ([DRAFT RFC] Browser-based auth & one-command client provisioning #55) still draft.Acceptance criteria
develop → mainmerged (merge commit, preserves history).mainCI green post-merge.v0.4.0pushed →release.ymlbuilds multiarch + cosign-signs + publishes the GitHub release.