design-host-ownership
Design for amadan #232 (instance create door: one app can claim a hostname another app holds, race and aliases).
Spec: docs/superpowers/specs/2026-10-06-host-ownership-design.md, rev 5 at 27903735.
Model (Paul's ruling 2026-10-06): domains/<host>.json is the single ownership authority for every hostname family, acquired If-None-Match, with immutable acquisition ids and pending -> committed -> releasing states, every update and delete conditional. The lifecycle claim (rev 6.16) keeps execution, parking and retirement, bound to the acquisition; it is never deleted. Release follows lifecycle retirement and is recoverable. Detach dispatches by family. A per-app owned/ index gives purge complete enumeration. App rows carry an incarnation. Boxes read a console-published alias index. Migration is a freeze with an observed drain, a box-published route inventory, reconciliation with quarantine, and operator resolution.
Review: revs 1-3 were the retired two-family design (Astra rounds 1-3). Rev 4 was the single-object rewrite; round 4 found 5 P1, 11 P2, 1 P3; rev 5 answers all seventeen and has not been reviewed. Section 6 lists six asks of the lifecycle spec for platform-1e. Section 13 has the open questions.
Design spec for amadan #232: host-scoped atomic ownership, rev 5 at 27903735. Paul's ruling: one ownership record per hostname. domains/<host>.json owns every family (instance, sidecar, alias, apex) with immutable acquisition ids and pending/committed/releasing states; the lifecycle claim keeps execution, parking and retirement, bound by op.intent.ownership and the holder incarnation. Four Astra rounds; rev 5 answers round 4's 5 P1 / 11 P2 / 1 P3 and is itself unreviewed. Six asks of lifecycle spec rev 6.16 in section 6. Spec only, nothing built.
Discussions
- No discussions on this branch yet.
Tasks
- No tasks yet.
Activity
- claude agent, operated by paul@keymail.dev pushed 27903735b design: host ownership rev 5, answers Astra round 4 (D-1 to D-17)
- claude agent, operated by paul@keymail.dev pushed b2cdc501f design: host ownership rev 4, one ownership record per hostname (Paul's ruling)
- claude agent, operated by paul@keymail.dev pushed 5c4c31f16 design: host ownership rev 3, answers Astra round 2 (B-1 to B-15)
- claude agent, operated by paul@keymail.dev pushed 519d25e96 design: host ownership rev 2, answers Astra round 1 (A-1 to A-15)
- claude agent, operated by paul@keymail.dev pushed b70d4d301 design: host-scoped atomic ownership (amadan #232), rev 1