carlos / platform Public

Astra brief: region HA spec 2, round 3

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Paul Campbell pushed by claude agent, operated by paul@keymail.dev 7d791cd9b41235eaf6f535f217ea8ca565ca3611 parent 5fd6e4f
1 file changed, +17 −0
  • docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-SPEC2-3.md +17 −0

CI cancelled — superseded by a newer push — run details

CI log
=== gate ===
cd launchctx && go vet ./... && go test ./... -count=1
ok  	amadan.net/carlos/platform.git/launchctx	0.013s
?   	amadan.net/carlos/platform.git/launchctx/controlname	[no test files]
?   	amadan.net/carlos/platform.git/launchctx/wireid	[no test files]
go vet ./...
gofmt -l .: clean
go test ./... -count=1 -timeout 30m
ok  	github.com/carlosframework/platform	295.736s
?   	github.com/carlosframework/platform/cmd/changelog	[no test files]
ok  	github.com/carlosframework/platform/cmd/console	2.678s
ok  	github.com/carlosframework/platform/cmd/moveprobe	93.263s
ok  	github.com/carlosframework/platform/cmd/zddprobe	0.702s
ok  	github.com/carlosframework/platform/internal/activator	249.692s
ok  	github.com/carlosframework/platform/internal/agentsock	0.019s
ok  	github.com/carlosframework/platform/internal/alerting	0.006s
ok  	github.com/carlosframework/platform/internal/analytics	0.021s
ok  	github.com/carlosframework/platform/internal/appconfig	2.490s
ok  	github.com/carlosframework/platform/internal/apperr	0.075s
ok  	github.com/carlosframework/platform/internal/applog	0.138s
ok  	github.com/carlosframework/platform/internal/awsinv	0.004s
ok  	github.com/carlosframework/platform/internal/boxchoice	0.006s
ok  	github.com/carlosframework/platform/internal/boxid	0.797s
?   	github.com/carlosframework/platform/internal/boxid/boxidtest	[no test files]
?   	github.com/carlosframework/platform/internal/boxid/internal/signtest	[no test files]
ok  	github.com/carlosframework/platform/internal/boxvolumes	0.008s
ok  	github.com/carlosframework/platform/internal/caps	0.011s
ok  	github.com/carlosframework/platform/internal/certwarm	0.002s
ok  	github.com/carlosframework/platform/internal/cgroup	0.696s
ok  	github.com/carlosframework/platform/internal/changelog	0.314s
ok  	github.com/carlosframework/platform/internal/clamd	0.055s
?   	github.com/carlosframework/platform/internal/cliflag	[no test files]

amadan: job cancelled — a newer push superseded it
diff --git a/docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-SPEC2-3.md b/docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-SPEC2-3.md
new file mode 100644
index 000000000..111adc104
--- /dev/null
+++ b/docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-SPEC2-3.md
@@ -0,0 +1,17 @@
+# Astra: region HA spec 2, round 3
+
+Rev 3 answers your round 2 (`CODEX-FINDINGS-REGION-HA-SPEC2-2.md`). §15 maps each finding.
+
+**Judge:**
+1. Is each round-2 finding closed? Give a disposition table first.
+2. The main design change: **forwarding (§6).** Cross-region forwards go to the home region's ingress address, and the receiving box forwards once more over a private in-region address, with hop limit 2. Check it against `internal/edge` (homemap, edge.go's backhaul and signed hop, mesh key):
+ - Are loops and amplification impossible?
+ - Is the signed hop count tamper-proof?
+ - Does it work before a region is migrated, while the region's ingress address is still a single box?
+3. **The health answer as local liveness (§6).** Is anything a box could fail at locally left uncovered? Can a shared outage still flip it?
+4. **The enrolment sequence (§5)** against `internal/hostactors`, exactly.
+5. **The pending-create handoff (§7):** the `starting` state, reconciliation by operation ID, and the hostname reservation.
+6. **IE's relay and MX swap inside the cut-over window, and its rollback (§6, §9).**
+7. Anything new.
+
+Report only new items after the table. Give findings P1/P2/P3 with file:line and a failure scenario. End with a verdict.