repo-manager/docs/evidence/RMGR-WP-0005-batch-0004-railiance-cluster-cutover-2026-08-22.md
tegwick 63c00f9c9d docs(identifiers): record railiance-cluster cutover
Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a023c0-a0a3-7c03-b395-5a0d2757214d
2026-08-22 23:04:30 +02:00

108 lines
5.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# RMGR-WP-0005 batch 0004 Railiance Cluster cutover
**Completed at:** `2026-08-22T21:03:00Z`
**Scope:** `railiance-cluster` only
**Decision:** `RMGR-DEC-2026-003` (`approved`)
## Outcome
The approved repository-atomic batch completed in both current State Hub
projections and the authoritative repository. No other identifier mapping was
applied.
| Kind | Record | Previous UUID | Derived UUID |
| --- | --- | --- | --- |
| Workplan | `RCLUSTER-WP-0007` | `9e208376-23f1-40c7-9813-fac1f7d6ad3b` | `16da36fe-5a10-522b-b6d6-02dbb6de6c14` |
| Task | `RCLUSTER-WP-0007-T01` | `1f8a8668-31eb-4d79-bbcd-50f6430a8d66` | `9d1f463f-e4d1-5e75-97fd-e57b833bc2b9` |
| Task | `RCLUSTER-WP-0007-T02` | `b1d4e0fa-da41-4b13-a7d6-34dd040cb605` | `a1f4fa2b-69a7-5de4-8c44-15e8f9baf0b2` |
| Task | `RCLUSTER-WP-0007-T05` | `68315a40-dd5b-4032-a9e7-1152e38f9807` | `02cc3adb-9d42-5540-9f32-4e5f1198b79e` |
| Task | `RCLUSTER-WP-0007-T06` | `f658aa6a-1c48-4660-88fa-35eaa0137e12` | `4f033381-24aa-5773-bca6-337ccacc0e7a` |
| Task | `RCLUSTER-WP-0007-T07` | `70f6c8ab-a700-4fb2-893e-cf5a40615044` | `b45b3086-3beb-56d4-a028-6bf651834992` |
The source-plan seal was
`b155d8f193ae3496765b1964e51f9918a3a55b1993793cc7fd3ceb3b18d12ad0`.
The approved batch seal was
`554c6cbe119e13738efc6e2836254ddae00ea870f1cb99f2b5603336160e308d`.
The post-approval no-drift gate passed against pinned source HEAD
`41fdfd9d086f52eda399ddb4c740297dc0094129` before mutation.
## Restore points
Fresh PostgreSQL custom-format archives were retained before mutation and
successfully enumerated through `pg_restore --list`.
| Projection | Archive | Bytes | SHA-256 | Archive entries |
| --- | --- | ---: | --- | ---: |
| Workstation | `/tmp/state-hub-railiance-cluster-batch-0004-workstation-preapply.dump` | 4,715,411 | `b8fb7ab7f064090959620f42f086982767ec2544ec10606018391e343c5574f0` | 433 |
| Production | `/tmp/state-hub-railiance-cluster-batch-0004-production-preapply.dump` | 4,807,736 | `763fba39f637530290831261128d97bbdc70e35ad3ad7520e14e1f2e4d9ffb0e` | 410 |
The durable alias reverse executor remains available in each projection; the
restore archives are the database-level fallback.
## Projection transactions
The State Hub repository transaction ran first on the workstation projection
and then inside the production State Hub runtime. Both executions reported six
replacements, zero deferred assignments, direction `forward`, and the exact
source-plan seal above.
Final database and API checks agree:
| Check | Workstation | Production |
| --- | ---: | ---: |
| Previous workplan UUID rows | 0 | 0 |
| Derived workplan UUID rows | 1 | 1 |
| Previous mapped task UUID rows | 0 | 0 |
| Derived mapped task UUID rows | 5 | 5 |
| Tasks linked to derived workplan | 7 | 7 |
| Cancelled tasks retained under derived workplan | 2 | 2 |
| Progress events linked to derived workplan | 14 | 12 |
| Progress events linked to mapped tasks | 5 | 5 |
| Decisions linked to derived workplan | 1 | 1 |
| Applied aliases for the batch mappings | 6 | 6 |
| Previous UUID API lookups | six × 404 | six × 404 |
| Derived UUID API lookups | six × 200 | six × 200 |
| Retained cancelled-task API lookups | two × 200 | two × 200 |
The different 14/12 progress histories were present before the cutover and
were preserved independently rather than normalized away.
## Authoritative file transaction
`rmgr identifier migration-files` changed only
`workplans/RCLUSTER-WP-0007-threephoenix-ha-cluster.md`, replacing the six
approved identifier values. The two cancelled task UUIDs were untouched. The
reviewed diff passed `git diff --check` and was pushed as `railiance-cluster`
commit `2bcc3f06e25312b1d29436e62ac8364b7d30db54`.
Consistency refreshed only the generated `.custodian-brief.md` cache after the
migration. The final synchronized source HEAD is
`434bbd9` and the authoritative workplan has no post-migration change.
## Consistency verification
Two workstation passes were identifier- and status-idempotent for the batch.
They retained 58 pre-existing conformance warnings about legacy prefixes,
record species, and cross-repository collisions; none concerns a migrated UUID.
Production required one transport correction: the initial short-lived HTTP
relay returned FastAPI's canonical-path `307` responses instead of following
them for PATCH. No UUID or file transaction was affected. After the relay was
corrected, the first pass applied file-authoritative cache repairs for the
workplan status, the two cancelled-task statuses, and task descriptions. The
second full pass reported no issue for `RCLUSTER-WP-0007` or any of its seven
tasks and applied no batch repair.
The production checker still reports six pre-existing C-03 assessment failures
for other file-backed records absent from that projection, plus legacy
conformance warnings. Those residuals predate and are outside this approved
repository-atomic batch; no automation error occurred.
## Rollback posture
Rollback was not invoked. If later required, reverse the generated cache/file
transaction first, then reverse production and workstation projection
transactions through the six durable aliases. Restore from the archives only
after an isolated restore rehearsal.