design-region-ha
docs/superpowers/plans/2026-10-05-region-ha-1a-foundations.md
+6741 −0
docs/superpowers/plans/2026-10-05-region-ha-1a-foundations.mdLoading diff…
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-BRIEF-1.md
+50 −0
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-BRIEF-1.mdLoading diff…
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-BRIEF-2.md
+46 −0
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-BRIEF-2.mdLoading diff…
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-BRIEF-3.md
+41 −0
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-BRIEF-3.mdLoading diff…
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-BRIEF-4.md
+29 −0
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-BRIEF-4.mdLoading diff…
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-BRIEF-5.md
+17 −0
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-BRIEF-5.mdLoading diff…
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-R1.md
+41 −0
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-R1.mdLoading diff…
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-R2.md
+56 −0
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-R2.mdLoading diff…
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-R3.md
+41 −0
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-R3.mdLoading diff…
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-R4.md
+20 −0
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-R4.mdLoading diff…
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-R5.md
+9 −0
docs/superpowers/plans/CODEX-PLAN-REGION-HA-1A-R5.mdLoading diff…
docs/superpowers/specs/2026-10-04-region-ha-box-placement-design.md
+926 −0
docs/superpowers/specs/2026-10-04-region-ha-box-placement-design.mdLoading diff…
docs/superpowers/specs/CODEX-FINDINGS-REGION-HA-1.md
+110 −0
docs/superpowers/specs/CODEX-FINDINGS-REGION-HA-1.mdLoading diff…
docs/superpowers/specs/CODEX-FINDINGS-REGION-HA-2.md
+75 −0
docs/superpowers/specs/CODEX-FINDINGS-REGION-HA-2.mdLoading diff…
docs/superpowers/specs/CODEX-FINDINGS-REGION-HA-3.md
+50 −0
docs/superpowers/specs/CODEX-FINDINGS-REGION-HA-3.mdLoading diff…
docs/superpowers/specs/CODEX-FINDINGS-REGION-HA-4.md
+39 −0
docs/superpowers/specs/CODEX-FINDINGS-REGION-HA-4.mdLoading diff…
docs/superpowers/specs/CODEX-FINDINGS-REGION-HA-5.md
+21 −0
docs/superpowers/specs/CODEX-FINDINGS-REGION-HA-5.mdLoading diff…
docs/superpowers/specs/CODEX-FINDINGS-REGION-HA-6.md
+14 −0
docs/superpowers/specs/CODEX-FINDINGS-REGION-HA-6.mdLoading diff…
docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-1.md
+53 −0
docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-1.mdLoading diff…
docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-2.md
+63 −0
docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-2.mdLoading diff…
docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-3.md
+65 −0
docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-3.mdLoading diff…
docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-4.md
+65 −0
docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-4.mdLoading diff…
docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-5.md
+62 −0
docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-5.mdLoading diff…
docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-6.md
+61 −0
docs/superpowers/specs/CODEX-REVIEW-BRIEF-REGION-HA-6.mdLoading diff…
infra/modules/deployment-buckets/main.tf
+53 −0
infra/modules/deployment-buckets/main.tfLoading diff…
infra/modules/deployment-buckets/variables.tf
+6 −0
infra/modules/deployment-buckets/variables.tfLoading diff…
infra/modules/region-host/README.md
+24 −0
infra/modules/region-host/README.mdLoading diff…
infra/modules/region-host/main.tf
+77 −0
infra/modules/region-host/main.tfLoading diff…
infra/modules/region-host/outputs.tf
+5 −0
infra/modules/region-host/outputs.tfLoading diff…
infra/modules/region-host/tests/store_scanning.tftest.hcl
+7 −0
infra/modules/region-host/tests/store_scanning.tftest.hclLoading diff…
internal/activator/installed.go
+122 −0
internal/activator/installed.goLoading diff…
internal/activator/installed_test.go
+106 −0
internal/activator/installed_test.goLoading diff…
internal/boxid/boxid_test.go
+213 −0
internal/boxid/boxid_test.goLoading diff…
internal/boxid/certs.go
+43 −0
internal/boxid/certs.goLoading diff…
internal/boxid/certs/README.md
+7 −0
internal/boxid/certs/README.mdLoading diff…
internal/boxid/certs/ap-southeast-2.pem
+19 −0
internal/boxid/certs/ap-southeast-2.pemLoading diff…
internal/boxid/certs/eu-west-1.pem
+19 −0
internal/boxid/certs/eu-west-1.pemLoading diff…
internal/boxid/certs/eu-west-2.pem
+19 −0
internal/boxid/certs/eu-west-2.pemLoading diff…
internal/boxid/certs/us-east-1.pem
+19 −0
internal/boxid/certs/us-east-1.pemLoading diff…
internal/boxid/record.go
+93 −0
internal/boxid/record.goLoading diff…
internal/boxid/verify.go
+84 −0
internal/boxid/verify.goLoading diff…
internal/console/boxchoice.go
+98 −0
internal/console/boxchoice.goLoading diff…
internal/console/boxchoice_test.go
+163 −0
internal/console/boxchoice_test.goLoading diff…
internal/console/instancesplacement.go
+14 −4
internal/console/instancesplacement.goLoading diff…
internal/console/regioncandidates_test.go
+27 −0
internal/console/regioncandidates_test.goLoading diff…
internal/edge/homemap.go
+84 −6
internal/edge/homemap.goLoading diff…
internal/edge/homemap_test.go
+123 −0
internal/edge/homemap_test.goLoading diff…
internal/host/edgesfile.go
+77 −3
internal/host/edgesfile.goLoading diff…
internal/host/edgesfile_test.go
+154 −0
internal/host/edgesfile_test.goLoading diff…
internal/host/headroom.go
+38 −0
internal/host/headroom.goLoading diff…
internal/host/headroom_linux.go
+23 −0
internal/host/headroom_linux.goLoading diff…
internal/host/headroom_other.go
+6 −0
internal/host/headroom_other.goLoading diff…
internal/host/headroom_test.go
+26 −0
internal/host/headroom_test.goLoading diff…
internal/hostfiles/deadline.go
+36 −0
internal/hostfiles/deadline.goLoading diff…
internal/hostfiles/deadline_test.go
+38 −0
internal/hostfiles/deadline_test.goLoading diff…
internal/hostfiles/dir_other.go
+26 −0
internal/hostfiles/dir_other.goLoading diff…
internal/hostfiles/dir_unix.go
+183 −0
internal/hostfiles/dir_unix.goLoading diff…
internal/hostfiles/hostfiles_test.go
+822 −0
internal/hostfiles/hostfiles_test.goLoading diff…
internal/hostfiles/manifest.go
+91 −0
internal/hostfiles/manifest.goLoading diff…
internal/hostfiles/publish_unix_test.go
+135 −0
internal/hostfiles/publish_unix_test.goLoading diff…
internal/hostfiles/publisher.go
+226 −0
internal/hostfiles/publisher.goLoading diff…
internal/hostfiles/restore.go
+358 −0
internal/hostfiles/restore.goLoading diff…
internal/hostfiles/run.go
+213 −0
internal/hostfiles/run.goLoading diff…
internal/hostfiles/run_test.go
+379 −0
internal/hostfiles/run_test.goLoading diff…
internal/hostfiles/sync.go
+125 −0
internal/hostfiles/sync.goLoading diff…
internal/hostfiles/sync_test.go
+190 −0
internal/hostfiles/sync_test.goLoading diff…
internal/hostfiles/sync_unix_test.go
+254 −0
internal/hostfiles/sync_unix_test.goLoading diff…
internal/hostfiles/wake.go
+138 −0
internal/hostfiles/wake.goLoading diff…
internal/hostfiles/wake_test.go
+191 −0
internal/hostfiles/wake_test.goLoading diff…
internal/hostfiles/walk_unix.go
+73 −0
internal/hostfiles/walk_unix.goLoading diff…
internal/hostfiles/watch_linux.go
+217 −0
internal/hostfiles/watch_linux.goLoading diff…
internal/hostfiles/watch_linux_test.go
+232 −0
internal/hostfiles/watch_linux_test.goLoading diff…
internal/hostfiles/watch_other.go
+10 −0
internal/hostfiles/watch_other.goLoading diff…
internal/registry/timers.go
+31 −0
internal/registry/timers.goLoading diff…
internal/registry/timers_test.go
+77 −0
internal/registry/timers_test.goLoading diff…
internal/termfence/fence.go
+138 −0
internal/termfence/fence.goLoading diff…
internal/termfence/fence_test.go
+127 −0
internal/termfence/fence_test.goLoading diff…