carlos / platform Public

Clone
git clone https://amadan.net/carlos/platform

Plain git — no account needed to clone.

Download

Download this file

1# Review brief: region HA spec 1 rev 5.1, round 2
2
3You are an independent second reader. Review
4`docs/superpowers/specs/2026-10-04-region-ha-box-placement-design.md` at
5the commit named in the prompt, in the repository at the working
6directory (Go; carlos platform).
7
8## What changed and why
9
10Rev 5.1 answers your rev 5 round 1 findings
11(`CODEX-FINDINGS-REGION-HA-REV5-1.md`, B1-1 to B1-9). §20 is the
12disposition table. The mechanisms changed:
13
14- **§5.8 probe attempts (B1-1):** only the first attempt opens the
15 prepared generation `P`; later attempts restore from their
16 predecessor through `genselect.Select`; coverage is decided per
17 admission, `released` only on `P`'s opening with a predecessor
18 matching the journaled release (L9).
19- **§5.8 local install (B1-2):** the remote build (built once) is split
20 from a per-box local install, recorded as a receipt bound to
21 `op.exec`, its enrollment and `holder.stamp`, which `probing`
22 requires; a replacement at `installed` makes its own.
23- **§5.8 source loss (B1-6):** a source-loss CAS converts a drain to a
24 failover from `starting` or `releasing`.
25- **§5.9 and §6, disk evidence (B1-3, B1-4):** holds written before any
26 exempt volume change, removed volumes suspending disk evidence,
27 releases with operator attestation; the SCP also protects the
28 `carlos:role` tag; one hold-gated volume-change role; a root-signed
29 guard attestation, without which there is no automatic fence.
30- **§5.10 (B1-5):** root refuses an executable update on any controller
31 record in any state, `lost` included, or any unreadable one, until
32 claim D6's clearing with cleanup complete.
33- **§5.9, L5 (B1-7):** console enrollments gain a `compute` binding; a
34 console on a fenced box leaves the census.
35- **§7, §11, L19 (B1-8):** no automatic recovery claimed for a one-box
36 region; the empty-region confirmer is an open question for Paul.
37- **Citations (B1-9)** refreshed.
38
39Paul ruled both questions those fixes raised, on 2026-10-06, and they
40are now fixed text: **H17** (an enrolled box in another region, with
41read-only cross-region Auto Scaling and EC2 describe rights and no other
42cross-region use, confirms the first box of a region with no enrolled
43box; §5.1, §6, L19) and **H18** (for box-started relocations only, the
44census accepts a console's newest report however old if it met the floor
45and the console's box has the D1 update guard armed; §5.9, L20). §11 is
46empty. Review how H17 and H18 are specified, not whether they should be.
47
48## Fixed: do not re-argue
49
50Rulings H1 to H18 in §0, and the claim's own ruled text (R6 in
51particular: no warm reuse of a local database). Report only mechanisms
52that fail to honour them, are unsafe, or are missing.
53
54## Sources to check against
55
56- Claim spec: `git show origin/design-replica-ownership:docs/superpowers/specs/2026-10-02-host-lifecycle-claim-design.md`
57 (§2, §4, §5.1, §5.9 PROPOSED, §6.4, §6.4a, §6.6 PROPOSED, §7, §8, §10.1 PROPOSED).
58- Claim code on main: internal/hostclaim, internal/hostguard,
59 internal/stopevidence, internal/park, internal/genselect.
60- Moves spec: /home/paulca/amadan.net/carlos/platform-moves-design/docs/superpowers/specs/2026-10-02-move-any-app-design.md
61 (latest committed rev on that worktree's branch).
62- Plan 1a's code on main, for §18 and §19's claims about it.
63## Focus
64
651. **First, a disposition table for B1-1 to B1-9:** resolved, partly
66 resolved (say what remains) or not resolved, each with the section
67 that answers it.
682. **Then only new findings**, especially in the mechanisms listed
69 above and their neighbours: the probe-attempt chain and
70 `PublishGeneration`'s parks; the local install receipt across
71 replacements and crashes; the source-loss CAS against claim D5 and
72 D6; holds, releases and removed volumes against the 2-hour bound and
73 the fence; the SCP's tag statements against Auto Scaling launches;
74 the cross-region confirmation (H17) and its IAM; the stale-console
75 census rule (H18) against D1 and D7;
76 root's refusal against D6's clearing; the console `compute` binding
77 against D7. Do not re-report a round 1 finding unless its fix is
78 incomplete.
79
80## Output
81
82The disposition table, then new findings ranked P1 (unsafe or blocks a
83plan), P2 (wrong or missing), P3 (clarity). Each: section, the problem,
84a concrete failing sequence, and a suggested fix. End with a verdict:
85ready for plan, or not ready.
86