v0.27.0 is tagged on f4cf27dd (tag 39aea385). Merges to main can resume. The build, sign, publish and roll come next: dev first, then flagship. I'll post here as each step lands.
Release v0.27.0: coordination (hold main merges until tagged) open
Release v0.27.0: coordination (platform-1e, on Paul's approval 2026-10-13)
Plan. I'm cutting v0.27.0 from main, currently f4cf27dd. Main since v0.26.1 holds:
- claim Plan 14 Part 1 (645a7d05; inert with claims off, merge ruling 6);
- zdd-flag-readiness-2 and -3 (ba52d5ef, 2e00b17e; waiting on platform-f9's confirmation);
- the v0.26.1 changelog.
Roll order (Paul's standing rule): dev boxes, then the dev console, then a dev check, then the flagship boxes, then the flagship console. Tito is never rolled.
Pre-roll checks, already run on all six boxes:
- the ancestors are root-owned 755;
- /var/lib/carlos-claims is absent;
- there is no proof policy and no named-units.json;
- no claim flags are set.
annie-welding now has 142 instances, so a startup-path scale check (#281) is running before anything is cut.
What I need from other sessions:
- Merges to main. If you're about to merge something you want in v0.27.0, or must keep out of it, reply here before I tag. Otherwise, please hold merges to main until the tag is pushed. I'll post when it is.
- Box work. Anyone doing work on the dev or flagship boxes (tofu applies, drop-ins, SSM), please say so. The roll restarts instance control on each box.
- Dev box i-046c7fe43620944bc has /var/lib/carlos-release, created 2026-10-13 18:03 UTC, but runs v0.26.1. Who put a build there?
v0.27.0 roll: status 19:45 UTC
- Published: GitHub releases (latest), the Homebrew tap (#30) and apt (latest.txt = v0.27.0, InRelease verified).
- Dev: both boxes on v0.27.0, and the dev console on f4cf27dd. Root restarted the record-less console with no manual step. wakecheck woke under v0.27.0, with no placement fallback lines.
- Flagship: adi-knitting, barbara-tinkering and iris-clockmaking are on v0.27.0.
- annie-welding (eu-west-1, 142 instances) is still on v0.26.1 and serving. Its update failed the 20 s gate, and so did its rollback. The edge was down about 45 s, from 19:37:54 to about 19:38:40. - Cause: the v0.26.1 updater restarts carlos-instance-control just before the new edge starts. The agent's synchronous startup instance sweep then waits on a cold instance control (about 5 s of probes, then about 17 s of sweep on 142 instances), so the edge listens after about 22 s. The rollback to v0.26.1 hit the same 22 s, so this is not v0.27.0 code. It is #281: the sweep is still synchronous at startup, and since v0.26.1 the instance-control restart makes it cold. Earlier today v0.26.1 rolled through the older updater, which did not restart instance control, and annie served in 3.4 s. -
rollback-failedis terminal for this pointer, so annie will not retry by itself. - Flagship console: held at 9aaeace2 until annie is decided.
v0.27.1 released and fully rolled, 22:02 UTC. Main 6dfbff10, tag ba34e7d1, tap #31, apt v0.27.1-1.
- Dev: sophie-knitting and leo-climbing are current. The dev console is on 6dfbff10. sophie's activator armed 60 ms after start, and wakecheck answered 200.
- Flagship: all four boxes are current, annie-welding included. Its edge passed the gate while the startup sweep ran in the background: the sweep took 22 s, the activator armed at +22 s, and NRestarts is 0. Instance keys show 0 failed. console.carloku.com, carloku.com and amadan.net all return 200.
- Flagship console is on 6dfbff10. It was shipped direct-bucket, and root's adopt pass did a single restart, with about 10 s of 502 during that restart.
- Follow-ups (platform-d8): - shutdown with a wake held at the startup latch waits out the full 10 s drain, which only matters if a gate fails again; - the darwin and windows test compile of internal/host broke in Plan 14 Part 1 (rootinventory_test.go). I'm fixing that.
Note for the next release: annie-welding is now armed (CARLOS_SWAP=overlap) by platform-f9 for Gate F/G. Its edge start adds the arm-time placement check, which is capped at 4 s. Coordinate with platform-f9 before rolling or restarting annie. Separately, f9 reports 27 failed carlos-instance@ units on annie from before today's restarts (printcard-* and others). These are tenant-side, not caused by the roll.
Correction: annie-welding is not armed. platform-f9's Gate F failed and was reverted at 22:12:42Z: CARLOS_SWAP was removed, the edge is healthy and NRestarts is 0. Details are on #272. /data/swap-failures.json on annie holds a failure entry for bdn/ips that must be cleared before any re-arm. For the next release, annie rolls as an ordinary unarmed box.
v0.27.2 next (Paul approved 2026-10-14): cut from main ebddcfc6, which carries zdd-gen-socket-names (Gate F fix), d8's large-box startup test and the darwin test fix. Same roll order: dev canary, dev stable, dev console, then flagship boxes, then flagship console. Please hold main merges until I post the tag.
v0.27.2 tagged on ebddcfc6 (tag 9efb7ca0) and published: GitHub, tap #32, apt v0.27.2-1. Merges to main can resume. Rolling to dev next.
v0.27.2 fully rolled, 05:03 UTC 2026-10-14. Dev: both boxes current, dev console on ebddcfc6, wakecheck 200. Flagship: all four boxes current (annie-welding included), console.carloku.com on ebddcfc6 with about 5 s of 502 during the single restart, and carloku.com and amadan.net return 200.
annie-welding is armed (CARLOS_SWAP=overlap) since platform-f9's Gate F passed on v0.27.2 (details on #272). For the next release, annie's edge start adds the arm-time placement check (capped at 4 s) inside the 20 s gate. Coordinate with platform-f9 before rolling or restarting annie.
v0.27.3 next (Paul approved 2026-10-14): cut from main e15ad6be, which carries fix-shutdown-lease-292, reserved-sqids-285, changelog-v0.27 and two docs changes. annie-welding is armed, so this is its first armed update. Please hold main merges until I post the tag.
v0.27.3 tagged on e15ad6be (tag 61339812) and published: GitHub, tap #33, apt v0.27.3-1. Merges to main can resume. Rolling to dev next.
v0.27.3 fully rolled, 18:19 UTC 2026-10-14. Dev: both boxes current, instance-control restarted with each edge, console on e15ad6be, wakecheck 200. Flagship: all four boxes current. annie-welding's first armed update passed the gate: placement check, then overlap re-armed at +1 s, with NRestarts 0. console.carloku.com is on e15ad6be, with about 10 s of 502 during the single restart.
All four flagship boxes are now armed (CARLOS_SWAP=overlap) after platform-f9's Gate G passed (details on #272). Every flagship roll from now on runs the arm-time placement check (capped at 4 s) inside the update gate on every box.
v0.28.0 tagged (d15b93fb -> main 26065378), Paul approved 2026-10-17. It carries Plan 14 Parts 2+3, the files seed and the claim activation tools, all inert with the claim off. It also has carlos run, seeded instances, region HA 2a dormant, the empty-app key fix and #275 binary size. Main's CI run flaked on TestPendingStrictCleanupOwnsTheGroup (activator timing). The tree is identical to f0cc76d0, which passed the gate, and the test passed 20/20 alone. Please hold merges to main until I post that it's published. Roll: dev boxes, dev console, wakecheck, then flagship after Paul's go.
v0.28.0 published 2026-10-17 21:00Z (tag d15b93fb -> main 26065378): GitHub latest, tap #34, apt v0.28.0-1. Verified from the public side: signature, sums, latest.txt and InRelease. Merges to main can resume, each with Paul's approval as usual. Rolling dev next; flagship waits for Paul's go.
v0.28.0 rolled on dev, 21:35Z. All three boxes are current: sophie (canary), plus leo and dennis (stable). Edge and instance-control restarted on each with NRestarts 0. The dev console is on 26065378. wakecheck returned 200 on sophie (0.89 s) and 200 on leo (0.91 s, after sophie's copy slept). Layout is nested on both. hits went backwards from 1004 to 103 across boxes: that's the known #286 hazard, not a failure. Note for the recipe: leo's wake returns 503 'waking elsewhere' while the instance is still awake on sophie, so wait for it to sleep between the two wakes. Flagship waits for Paul's go.
v0.28.0 fully rolled, 22:00Z 2026-10-17. All four flagship boxes are current. On each, the edge and instance-control restarted once (NRestarts 0), with 1 'overlap swaps armed', 0 REFUSING, 0 LEASE HELD and no panics (platform-f9's check). The flagship console is on 26065378, with about 10 s of 502 during adopt, then 200. carloku.com 200. Step 10 (changelog and website) is next.
v0.28.0 step 10 done. The changelog and the darwin/windows vet fix (claimunitinputstest.go) merged to main as 04819f9. Website PR #57 is shipped as 6a7a4bd and live at carlosframework.com/platform/changelog. v0.28.0 is complete: published, rolled on dev and flagship, changelog live. Branches re-merging main should pick up 04819f9.
v0.28.1 tagged on main 3b69c2bd (box publish-record, region HA 2b dormant), Paul approved 2026-10-18. Main CI is green. It goes to dev only; flagship is not planned yet. Release notes are in Paul's copy review.
v0.28.1 published and rolled on dev, 06:00Z 2026-10-18. GitHub latest, tap #35, apt v0.28.1-1, verified from the public side. sophie, leo and dennis are current: edge and instance-control restarted once each, armed, 0 REFUSING, 0 LEASE HELD, no panics. The dev console is on 3b69c2bd. Flagship stays on v0.28.0 (not planned). Changelog step 10 is owed.
v0.28.2 tagged on main 7c1beb2d (claims step 6 artefacts: sign-policy, publish-identity, install-console). Main CI is green. Paul approved it for dev only. Release notes are in copy review.
v0.28.2 published and its boxes rolled on dev, 09:24Z 2026-10-18. GitHub latest, tap #36, apt v0.28.2-1, verified from the public side. sophie, leo and dennis are current: armed, 0 REFUSING, 0 LEASE HELD, no panics. wakecheck 200. The dev console is held at 3b69c2bd for trial step 5.0a (digests on, then a promote of the v0.28.2-stamped console). Flagship stays on v0.28.0. The changelog for v0.28.1 and v0.28.2 is owed.
v0.28.3 published and its boxes rolled on dev, 15:45Z 2026-10-18 (tag on main 50f5b268, install-channel --policy). GitHub latest, tap #37, apt v0.28.3-1. sophie, leo and dennis are current: armed, 0 REFUSING, 0 LEASE HELD, no panics. carlos is 6154afb4 and carlos.prev is v0.28.2 (7141e037). wakecheck 200. The dev console waits for the trial's v0.28.3 promote. Flagship stays on v0.28.0. The changelog for v0.28.1 to v0.28.3 is owed.
v0.28.4 published and its boxes rolled on dev, 2026-10-19 (tag on main f3bf1214: console invite delivery 91a651b3, plus install-channel --identity). GitHub latest, tap #38, apt v0.28.4-1. Dev boxes are current; the dev console waits for the trial's v0.28.4 promote. Flagship stays on v0.28.0. Before any flagship console roll, read the v0.28.4 console-mail operator note: the console creates an SES identity and DNS records at first start where CARLOSMAILREGION is set. The changelog for v0.28.1 to v0.28.4 is owed.