Region HA two-box model plan: Astra round 6 findings (1 resolved, 1 new P2), unedited
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 file changed,
+41
−0
docs/superpowers/plans/CODEX-PLAN-REGION-HA-TWO-BOX-R6.md+41 −0
diff --git a/docs/superpowers/plans/CODEX-PLAN-REGION-HA-TWO-BOX-R6.md b/docs/superpowers/plans/CODEX-PLAN-REGION-HA-TWO-BOX-R6.md| new file mode 100644 |
| index 000000000..6e7b1f7b2 |
| --- /dev/null |
| +++ b/docs/superpowers/plans/CODEX-PLAN-REGION-HA-TWO-BOX-R6.md |
| @@ -0,0 +1,41 @@ |
| +Reviewed `b9d0046d`. |
| + |
| +| Round 5 finding | Disposition | Assessment | |
| +|---|---|---| |
| +| #1: pending target fence allows phase work | Resolved | Task 5E blocks regional transitions while preserving participant release work. Its direct test covers `starting` and `pinning` under mutation. | |
| + |
| +1. **P2 — Task 2, Step 1: a missing replicator incorrectly permits a completed release.** |
| + |
| + [`relocRelease`](/home/paulca/amadan.net/carlos/platform/.claude/worktrees/region-ha-two-box/docs/superpowers/plans/2026-10-07-region-ha-hostlife-two-box.md:1330) substitutes the current remote database position when the source’s replicator is gone, then returns a release with `Flushed=false`. |
| + |
| + Crash the live source during `releasing`, after admission closes but before the flush completes. The crash changes its epoch, making the retained database’s replicator stale. The model can journal the fallback release and advance to pinning. |
| + |
| + In 1b-next rev 19, `relocationFlushDB` refuses a missing replicator; `releaseDrain` propagates that error. `Release` permits recovery only from recorded flushed positions and matching stop evidence. Without those, release remains pending and eventually becomes stuck. Region HA §5.8 requires the same behavior. |
| + |
| + **Fix:** require the matching replicator or durable evidence of the completed flush and stop. Otherwise return no release. Add mutation-sensitive tests for a crash before the flush—no release or pin, then deadline—and successful replay after durable release evidence exists. |
| + |
| +The pinned-manifest cleanup difference remains the documented at-rest-sweep abstraction: 1b-next’s completion queues local chores and abandoned prepared generations, not that manifest’s cleanup. |
| + |
| +The four new Go files reconstructed in memory passed `gofmt` syntax checks. Compilation, runtime tests and mutations 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-6.md. Review the plan at commit b9d0046d.” |
| + |
| +**WHAT:** |
| +Check round 5’s disposition and report new findings. |
| + |
| +**STATUS:** |
| +Prior finding resolved; one new P2 release-fidelity finding. |
| + |
| +**NEEDED:** |
| +Nothing for this review. |
| + |
| +**RECOMMENDED:** |
| +Correct the missing-replicator release path and add the two crash tests. |
| + |
| +**SESSION:** |
| +Safe to close — no changes or processes left running. |
| + |
| +**Verdict: not ready.** |
| \ No newline at end of file |