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 plan 1b, round 3
2
3You are an independent second reader. Review the implementation plan
4`docs/superpowers/plans/2026-10-06-region-ha-1b-claim-readers.md` at the
5commit named in the prompt, against the tree at the working directory
6(Go, module github.com/carlosframework/platform) and the approved spec
7`docs/superpowers/specs/2026-10-04-region-ha-box-placement-design.md`
8(rev 5.4; rulings H1–H19 in §0). Your round 2 findings are in
9`CODEX-PLAN-REGION-HA-1B-R2.md`; the author's answers are the table
10"Astra plan round 2: dispositions" at the end of the plan.
11
12## Fixed: do not re-argue
13
14- The spec's rulings H1 to H19, and Paul's approval of rev 5.4.
15- The scope rule: plan 1b builds only what needs none of the spec's
16 L1–L20 claim/moves changes; everything under "Waits for the claim" is
17 out of scope.
18- The controller rulings in the plan's header (six, unchanged).
19- Everything stays dormant behind CARLOS_REGION_HA and changes nothing on
20 a one-box region.
21- Round 1 findings you marked resolved in round 2 (R1-1 to R1-4, R1-7),
22 and round 1 and 2 findings the dispositions mark fixed, unless the fix
23 itself is wrong; say which, and why.
24
25## What changed since round 2
26
27- Task 6, `edgesLoopState` (in `internal/host/edgesclaims.go`): a claim
28 pass now waits for the schedule's `retryAt`, and every pass, claim
29 passes included, records its outcome through `edgesFileSchedule.done`.
30 New test `TestEdgesLoopClaimPassesObeyTheRetryBackoff`.
31- Task 5, `TestDischargeRefusesStoredRecordsThatAreNotEvidence`: three new
32 stored cases, one per check (empty mapping, terminated state with a
33 mapping, a volume with no device).
34
35Nothing else changed.
36
37## What to check
38
391. The round 2 table first: are R2-1 and R2-2 (and so R1-5 and R1-6)
40 resolved, partly resolved (say what is left), or not resolved?
412. Then only new findings, in the two changed places or anything they
42 break. In particular: can recording a claim pass's success through
43 `edgesFileSchedule.done` advance the change-detection baseline past a
44 registry change that pass did not publish? Does the backoff gate
45 delay a timer pass or a change pass that would not have been delayed
46 before, with the flag off or on?
473. As before: the code compiles, the tests pass as written, and each new
48 test fails with its mechanism removed.
49
50## Output
51
52Findings ranked P1 (would not compile, a test fails, or unsafe), P2
53(wrong or missing), P3 (clarity). Each: task and step, the problem, the
54evidence (file:line, or the plan's own line), and a concrete fix. Start
55with the round 2 table, then new findings only. End with a verdict:
56ready to build, or not ready.
57