docs(pilot): record registrar projection cutover
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s

Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a023c0-a0a3-7c03-b395-5a0d2757214d
This commit is contained in:
tegwick 2026-08-22 09:57:59 +02:00
parent 6b439ddd06
commit 52a7d6bb73
3 changed files with 23 additions and 3 deletions

View file

@ -3,4 +3,4 @@ name: state-hub
description: State Hub API service for private Railiance operation
type: application
version: 0.1.0
appVersion: "f2e042a"
appVersion: "main-697dd49"

View file

@ -6,7 +6,7 @@ namespace:
image:
repository: forgejo.coulomb.social/coulomb/state-hub
tag: "main-1cf949b"
tag: "main-697dd49"
ingress:
enabled: false

View file

@ -213,7 +213,27 @@ missing derived row as an unfixable stale reference. The projection rebuild path
now accepts file UUIDs, derives IDs when a live file has none, and registers a
missing derived workplan/task without rewriting the authoritative identifier.
Focused rebuild/API tests and the full State Hub suite pass (`624 passed`).
Deploy and ingest the pilot on the registrar before widening the migration.
**Production registrar pilot completed (2026-08-22):** a verified 4.6 MiB
custom-format dump was retained at
`/tmp/state-hub-registrar-rmgr-wp-0005-preapply.dump` (SHA-256
`01753744bc844b154900ead916f122946c5414e77f888c3e18016cae6d3d8929`). Helm
revision 10 atomically promoted image `main-697dd49`; the dry-run and live pod
both confirmed `sweep.enabled: false` with no host or SSH mounts. The production
schema advanced from `f0a1b2c3d4e5` to `b8d4f0a2c6e1`; health remained green,
all 20 relevant foreign keys use `ON UPDATE CASCADE`, and the alias table exists.
The registrar did not previously contain the logical `repo-manager` repository
or its workplans. After registering that repository, governed projection repair
created only deterministic `RMGR-WP-0005` UUID
`6dcf854e-9229-569d-90f0-2d9df235a61d` and its 12 authoritative task UUIDs.
File and production task-ID sets match exactly; the new workplan lookup returns
200, the former random UUID returns 404, and a second read-only consistency pass
has no `RMGR-WP-0005` issue. The eight other random-ID Repo Manager workplans
remain explicit non-fixable stale references in this formerly empty projection
and were not ingested. Production aliases remain empty as expected for a rebuild
rather than an in-place rewrite. Widening beyond this one-repository pilot still
requires a separate fleet cutover decision.
**A2a executed (2026-08-20) — first live cutover slice.** Dual-run is on for the
pilot repo: