v1.2.0 - release: promote unified to main - version cutover and CI cleanup
๐ The Cutover Commit (Phase 0b of the branch promotion)
- Version leaves the beta sequence: 1.1.0-beta.100 -> 1.2.0. The first build on the promoted main will publish ghcr :latest + :v1.2.0, create the v1.2.0 GitHub Release, and announce it - marking the moment unified became the real Omnibus
- Staged on unified BEFORE the branch renames so main's first build is already clean and correctly versioned
๐งน CI Cleanup (dead code after the renames)
- docker-publish.yml and test-and-notify.yml triggers trimmed to ['main'] - legacy-main and legacy-rust-engine are locked archives and will never push again
- Removed the per-branch image tag rules (:unified, :v*-unified, :rust-engine, :v*-rust) from both the app and engine metadata steps; whatever branch is named main owns :latest, exactly as the old comments planned
- Side effect by design: pushing THIS commit to unified triggers no CI at all (unified is no longer a trigger) - the next build that runs is main's v1.2.0 promotion build
๐ Remaining Promotion Steps (documented in the session plan)
- Archive tags archive/main-node-final + archive/rust-engine-final are already pushed
- Adam: GitHub UI - default branch to unified, rename main -> legacy-main, unified -> main, rust-engine -> legacy-rust-engine, then lock both legacy branches
- After the swap: close issues #174/#175/#177/#180 manually (rename does not fire auto-close keywords), retarget local clones, switch the live server from :unified to :latest
โ Verification
- Version + workflow YAML changes only - no app code touched; suite last green at 375/375 on this tree