Repository navigation
chore(cli)!: 18.x restore of the 18.0 guards — re-open the upgrade ceremony and walled boots #24489
Description
⛔ BLOCKED — 18.x only. This card undoes the 18.0 guards (PR #24480) in the release that carries the v17→18 upgrade path and the walled postures. It does not start before then.
Blocked-by: #15212
Part of #15194 (ADR-0131). Filed by the epic seat (epic:#15194, session_01Y5583bs2RDd53MH6kM1ca3), as the contract review asked, so the obligation is not lost (review 6261404044 ③, Landed record 6261861335 on #15212).
Why. 18.0 is fresh installs and single only (ruling records 6259608309, 6259698357 and 6259899486 on #15194). #24480 made the ceremony refuse and made os serve refuse walled postures. When 18.x ships the upgrade path and the walled half of 8b, every part of that guard comes out in one landing. A half restore would leave the e2e coverage off while the walls are live.
The restore list (line numbers at merge commit ae6bd1a69; re-measure):
- Delete the refusing subclass
MigrateOrganizationOwnership(packages/cli/src/commands/migrate/organization-ownership.ts:1095-1146). Re-adddefaulttoOrganizationOwnershipCeremony(:319). - Delete the
walledPostureRefusalcall and the function (packages/cli/src/commands/serve.ts:2411-2423,:6255-6285), with its testserve-walled-posture-refusal.test.tsand the ceremony'sorganization-ownership.release-refusal.test.ts. - Restore the seven e2e cases of
packages/cli/test/serve-organizations-host-resolution.e2e.test.tsandserve-organizations-mount-failure.e2e.test.ts. Take them from the parent of feat(cli)!: 18.0 guards — os migrate organization-ownership refuses, and os serve refuses a walled posture at boot #24480's squash commit, in the same landing. - Put dogfood step 2 (
packages/qa/dogfood/test/organization-ownership-boot-refusal-order.dogfood.test.ts) back on the binary, and drop step 2a. - Remove the six 18.0 docs sentences:
cli.mdx(three sites),environment-variables.mdx:101,self-hosting.mdx:469-470andtenancy-modes.mdx:19-22. Also remove C11's (docs: close out the #13564 family under ADR-0131; supersede #13636; the tenancy docs state the three sentences #15214) 18.0 riders if they have landed by then: the boot-guard one-liner,TENANCY_POSTURE_FIX_HINTSand theos doctorsentence. - Revert the 16 test-file import swaps (
OrganizationOwnershipCeremonyback todefault). This is optional; they are byte-identical in behaviour.
Done when os migrate organization-ownership runs the ceremony again, a walled os serve boots, the seven e2e cases are green, and no 18.0 sentence remains.
Activity
objectstack-fleet commentedon Oct 19, 2026
Epic seat note (
epic:#15194,session_01Y5583bs2RDd53MH6kM1ca3) · 2026-10-19T14:32Z. This restore splits across two landings. It was planned as one, but under the 18.x line's rule (ruling 6266750393 on #15194:mainstays releasable after every merge) step 0's measured plan splits it (6268559156 on #24522,step_plan.steps[3].note):walledPostureRefusalcall and function, the seven walled e2e cases, the walled docs sentences, and C11's walled riders.This card closes when both have landed.
objectstack-fleet commentedon Oct 22, 2026
Closed · epic PM
session_01Y5583bs2RDd53MH6kM1ca3(os-steve) · 2026-10-22T10:27Z. The restore landed in the two places the split note 6269733629 named.mainatef2b46b524confirms each item.fc34d000fc):walledPostureRefusalandserve-walled-posture-refusal.test.tsare gone.packages/cli/test/serve-organizations-host-resolution.e2e.test.tsandserve-organizations-mount-failure.e2e.test.ts, with no skip markers.12d14765c7):OrganizationOwnershipCeremonyis the default export again (packages/cli/src/commands/migrate/organization-ownership.ts:320), andorganization-ownership.release-refusal.test.tsis gone.cli.mdx,environment-variables.mdx,self-hosting.mdxortenancy-modes.mdx.Done when is met:
os migrate organization-ownershipruns the ceremony; the 18.x upgrade harness runs it on every lane PR.os serveboots (R4).