Files
the-custodian/docs/state-hub-railiance01-cutover-phase2-2026-07-06.md
codex 5961e74bfc docs(CUST-WP-0054): record Phase 2 data migration evidence
coulombcore frozen; pg_restore to railiance01 with exact-count gate pass.
Phase 3 access rewire still pending.
2026-07-06 18:51:59 +02:00

2.2 KiB

T05 Phase 2 Evidence — Data Migration to railiance01 (2026-07-06)

Workplan: CUST-WP-0054-T05
Parent runbook: docs/state-hub-railiance01-cutover-plan.md
no_secret_material_recorded: true

Checklist

Step Action Result Evidence
2.1 Pre-freeze pg_dump (coulombcore) pass /tmp/state-hub-prefreeze-20260706T165001Z.dump (3.0 MiB)
2.2 Freeze coulombcore writer pass deployment/state-hub scaled to 0
2.3 Final pg_dump after freeze pass /tmp/state-hub-final-20260706T165019Z.dump (3.0 MiB)
2.4 Restore into railiance01 state-hub-db pass DROP/CREATE state_hub + pg_restore --role=state_hub
2.5 Exact-count comparison pass All 7 baseline tables match ±0
2.6 Scale railiance01 API + verify pass Forgejo main-d1a4fcf; /state/health ok

Phase 2 status: complete. Phase 3 (rewire access paths) not started.

Baseline counts (pre-freeze gate)

Captured from coulombcore state-hub-db-1 @ 2026-07-06T16:50Z:

Table Count
workplans 640
tasks 4002
topics 14
progress_events 8723
token_events 1936
managed_repos 74
decisions 79

Post-restore counts on railiance01 matched exactly.

Production state after Phase 2

Cluster API DB writer
railiance01 Running 1/1 (forgejo…:main-d1a4fcf) primary (restored data)
coulombcore Scaled to 0 (frozen, rollback-capable) Unchanged CNPG (source dump retained)

Workstation http://127.0.0.1:8000 still tunnels to coulombcore — unreachable until Phase 3.

API verification (port-forward 18081:8000)

{"status":"ok","db":"connected"}

GET /state/summary totals: topics=14, workstreams=640, tasks=4002, decisions=79.

Rollback

  • coulombcore dump files retained under /tmp/state-hub-*-20260706T*.dump on workstation
  • Scale coulombcore state-hub back to 1; do not delete railiance01 data until Phase 5 stabilizes

Next: Phase 3

  • Repoint state-hub-primary tunnel → railiance01 ClusterIP 10.43.68.154:8000
  • activity-core in-cluster URL; retire fleet-state-hub-coulombcore
  • Smoke POST /progress/ through production path