Region HA two-box model plan: Astra round 3 findings (3 resolved, 1 P2, 1 P3), unedited
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 file changed,
+49
−0
docs/superpowers/plans/CODEX-PLAN-REGION-HA-TWO-BOX-R3.md+49 −0
diff --git a/docs/superpowers/plans/CODEX-PLAN-REGION-HA-TWO-BOX-R3.md b/docs/superpowers/plans/CODEX-PLAN-REGION-HA-TWO-BOX-R3.md| new file mode 100644 |
| index 000000000..9777696bd |
| --- /dev/null |
| +++ b/docs/superpowers/plans/CODEX-PLAN-REGION-HA-TWO-BOX-R3.md |
| @@ -0,0 +1,49 @@ |
| +Reviewed `ee6e35f3`. |
| + |
| +| Round 2 finding or partial | Disposition | Assessment | |
| +|---|---|---| |
| +| R1 #8: published-marker crash boundary | Resolved | `openYield` stops after marker publication and before replication opens; the test crashes there in both shapes. | |
| +| R2 #1: acknowledgement before failover pin | Resolved for the reported defect | Initial failover now waits for acknowledgement. The guard’s wider application creates the new finding below. | |
| +| R2 #2: adverse-volume execution recovery | Resolved | Both shapes terminate the current executor and reach serving while its local chore remains open, before operator cleanup. | |
| + |
| +1. **P2 — Task 5C, Step 1: the acknowledgement guard is stronger than 1b-next’s.** |
| + |
| + The [new guard](/home/paulca/amadan.net/carlos/platform/.claude/worktrees/region-ha-two-box/docs/superpowers/plans/2026-10-07-region-ha-hostlife-two-box.md:7999) treats every operation with no pin and no release as awaiting `PinFailover`. That includes converted moves and nested failovers after replacing an opened target. |
| + |
| + In 1b-next rev 19, `PinFailover` requires acknowledgements when leaving `starting`. However, `Worker.pinning` selects and journals the pin **before** checking acknowledgements for `ToInstalling`. Converted moves and nested replacements enter `pinning` directly. |
| + |
| + Hold their target controller unavailable, let the fence delay expire, then land a newer manifest: production can already have selected the older pin; the model waits and selects the newer one. This excludes a production interleaving from the model. |
| + |
| + **Fix:** represent the original `PinFailover` barrier explicitly, or preserve its `starting` phase. Apply the pre-pin barrier only there. Add a converted-move or nested-replacement test demonstrating that pinning proceeds before acknowledgement, while retaining the initial-failover test. |
| + |
| +2. **P3 — Task 5C, Step 1: the claimed 1b-next completion cleanup does not exist.** |
| + |
| + The [cleanup explanation](/home/paulca/amadan.net/carlos/platform/.claude/worktrees/region-ha-two-box/docs/superpowers/plans/2026-10-07-region-ha-hostlife-two-box.md:29) says ruling 21 makes `CompleteRelocation` drop the retained manifest. In 1b-next rev 19, completion queues local chores and abandoned prepared generations; it neither deletes the retained control object nor queues this additional pinned-generation park. |
| + |
| + This is the requested discrepancy against 1b-next, but it does **not** establish ownerless residue. Claim §6.2a assigns obsolete files to the at-rest sweep; 1b-next ruling 21 leaves retained control objects to the storage follow-up. |
| + |
| + **Fix:** distinguish those two cleanup paths and describe the model’s immediate park as an abstraction, rather than an implemented `CompleteRelocation` guarantee. |
| + |
| +Sequential patch contexts and reconstructed Go syntax were checked in memory. Compilation, runtime tests and mutation results were not independently reproduced. No files changed or sweeps ran. |
| + |
| +--- |
| + |
| +**FIRST PROMPT:** |
| +“Follow the review brief docs/superpowers/plans/CODEX-PLAN-REGION-HA-TWO-BOX-BRIEF-3.md. Review the plan at commit ee6e35f3.” |
| + |
| +**WHAT:** |
| +Review prior dispositions and report new findings. |
| + |
| +**STATUS:** |
| +Three prior items resolved; one new P2 and one P3. |
| + |
| +**NEEDED:** |
| +Nothing for this review. |
| + |
| +**RECOMMENDED:** |
| +Narrow the acknowledgement guard and correct the cleanup mapping. |
| + |
| +**SESSION:** |
| +Safe to close — no changes or processes left running. |
| + |
| +**Verdict: not ready.** |
| \ No newline at end of file |