|
| 1 | +# v0.22.0 Rollout Checklist |
| 2 | + |
| 3 | +Step-by-step playbook for the v0.22.0 release. Each phase must complete before advancing. |
| 4 | + |
| 5 | +## Phase 0: Pre-flight |
| 6 | + |
| 7 | +- [ ] Verify all release package versions are `0.22.0`: |
| 8 | + - `apps/server/package.json` |
| 9 | + - `apps/desktop/package.json` |
| 10 | + - `apps/web/package.json` |
| 11 | + - `apps/mobile/package.json` |
| 12 | + - `packages/contracts/package.json` |
| 13 | +- [ ] Verify Android `versionName` and iOS `MARKETING_VERSION` both match `0.22.0`. |
| 14 | +- [ ] Confirm `CHANGELOG.md` has `## [0.22.0] - 2026-04-09`. |
| 15 | +- [ ] Confirm `docs/releases/v0.22.0.md` exists with Summary, Highlights, and Upgrade sections. |
| 16 | +- [ ] Confirm `docs/releases/v0.22.0/assets.md` exists and lists every expected attachment class. |
| 17 | +- [ ] Confirm `docs/releases/v0.22.0/rollout-checklist.md` and `docs/releases/v0.22.0/soak-test-plan.md` exist. |
| 18 | +- [ ] Confirm `docs/releases/README.md` includes the v0.22.0 row. |
| 19 | +- [ ] Run `bun run release:validate 0.22.0`. |
| 20 | +- [ ] Confirm the working tree is clean. |
| 21 | +- [ ] Confirm you are on `main`. |
| 22 | + |
| 23 | +### Quality gates |
| 24 | + |
| 25 | +- [ ] `bun run fmt:check` |
| 26 | +- [ ] `bun run lint` |
| 27 | +- [ ] `bun run typecheck` |
| 28 | +- [ ] `bun run test` |
| 29 | +- [ ] `bun run --cwd apps/web test:browser` |
| 30 | +- [ ] `bun run test:desktop-smoke` |
| 31 | +- [ ] `bun run release:smoke` |
| 32 | + |
| 33 | +## Phase 1: Publish |
| 34 | + |
| 35 | +- [ ] Push the release-prep commit to `main`. |
| 36 | +- [ ] Create and push tag `v0.22.0`. |
| 37 | +- [ ] Verify the coordinated `release.yml` workflow starts. |
| 38 | +- [ ] Monitor the pipeline through Preflight, Desktop builds, iOS signing preflight, optional iOS TestFlight, Publish GitHub Release, Finalize release, and optional CLI publish if started through manual dispatch. |
| 39 | + |
| 40 | +### Asset verification |
| 41 | + |
| 42 | +- [ ] GitHub Release body matches `docs/releases/v0.22.0.md`. |
| 43 | +- [ ] `okcode-CHANGELOG.md` is attached. |
| 44 | +- [ ] `okcode-RELEASE-NOTES.md` is attached. |
| 45 | +- [ ] `okcode-ASSETS-MANIFEST.md` is attached. |
| 46 | +- [ ] macOS release artifacts are attached: DMG, ZIP, updater manifest, and blockmaps. |
| 47 | +- [ ] Linux release artifacts are attached: AppImage and updater manifest if generated. |
| 48 | +- [ ] Windows release artifacts are attached: installer, updater manifest, and blockmaps. |
| 49 | +- [ ] If the Intel compatibility workflow is run, confirm the x64 macOS DMG is attached separately. |
| 50 | + |
| 51 | +## Phase 2: Post-release verification |
| 52 | + |
| 53 | +- [ ] `npx --yes okcodes@0.22.0 --version` returns `0.22.0`. |
| 54 | +- [ ] macOS installer launches and passes Gatekeeper. |
| 55 | +- [ ] Linux AppImage launches. |
| 56 | +- [ ] Windows installer installs and launches. |
| 57 | +- [ ] Desktop auto-update metadata is present for supported platforms. |
| 58 | +- [ ] If iOS signing was enabled, confirm the new TestFlight build appears. |
| 59 | +- [ ] Confirm the finalize job did not need to push another version-alignment commit, or review its no-op output if versions were already aligned before tagging. |
| 60 | + |
| 61 | +## Phase 3: Follow-through |
| 62 | + |
| 63 | +- [ ] Trigger the Intel compatibility workflow if macOS x64 artifacts are required for this train. |
| 64 | +- [ ] Update external release references or announcements. |
| 65 | +- [ ] Monitor reports for regressions in SME conversation auth, refreshed SME chat flows, settings navigation, and websocket error handling. |
0 commit comments