Assistant: codex Assistant-Model: gpt-5.6-sol Assistant-Session: 01a023c0-a0a3-7c03-b395-5a0d2757214d
69 lines
3.1 KiB
Markdown
69 lines
3.1 KiB
Markdown
---
|
|
id: RMGR-EVIDENCE-0005-RAIL-KUBERNETES-REGISTRAR
|
|
type: evidence
|
|
title: "RAIL-K8S-WP-0003 scoped registrar recovery"
|
|
status: accepted
|
|
created: "2026-08-22"
|
|
updated: "2026-08-22"
|
|
workplan_task: RMGR-WP-0005-T02
|
|
observed_at: "2026-08-22T11:02:39Z"
|
|
---
|
|
|
|
# RAIL-K8S-WP-0003 scoped registrar recovery
|
|
|
|
## Trigger and diagnosis
|
|
|
|
Inbox message `14d27cf1-a3d9-4d20-a03a-ff173ef38cfa` reported that the
|
|
prescribed scoped registrar returned `noop` while finished workplan
|
|
`RAIL-K8S-WP-0003` still lacked its hub identifier. The behavior reproduced
|
|
with correlation ID `b2a95127-aacb-4b60-af18-fdaa54940fe3`.
|
|
|
|
Repo Manager's missing-identifier scan excluded every finished or archived
|
|
workplan. That was too broad: State Hub C-06 registers a newly discovered
|
|
file-backed workplan and all its tasks as one unit, including closed provenance.
|
|
Only a missing task beneath an *already linked* closed workplan is frozen by
|
|
C-11. Commit `69adfff` corrects that distinction and adds regression coverage.
|
|
|
|
The live run exposed a second result-classification defect. State Hub created
|
|
and verified the requested records but returned assessment exit 1 because two
|
|
older workplans have unrelated stale production identifiers. The wrapper
|
|
therefore reported `failed` and returned before committing the file writeback.
|
|
Commit `c90f701` now resolves and verifies exactly the records requested by the
|
|
invocation; verified scoped success may coexist with unrelated assessment debt.
|
|
|
|
## Primary-hub result
|
|
|
|
The production central hub did not yet have the `rail-kubernetes` repository.
|
|
It was registered as `dc1866c7-08af-4117-8684-057331be20b5` with the canonical
|
|
Forgejo origin. The scoped registrar then created the deterministic projection:
|
|
|
|
| File record | Canonical UUID | Primary result |
|
|
| --- | --- | --- |
|
|
| `RAIL-K8S-WP-0003` | `55ab4f28-b6a8-53ad-8ea4-2dc8fe91b681` | `finished` |
|
|
| `RAIL-K8S-WP-0003-T01` | `8c4c7c80-0c5e-5498-8054-ec47acb5b4ba` | `done` |
|
|
| `RAIL-K8S-WP-0003-T02` | `40f6f415-18f1-594e-ac21-35263b2aa532` | `done` |
|
|
|
|
The authoritative identifiers were committed and pushed in `rail-kubernetes`
|
|
commit `29305d4`. A subsequent read-only consistency pass contains no C-06 or
|
|
C-11 finding for `RAIL-K8S-WP-0003`, and direct API reads return the exact
|
|
parent and both tasks.
|
|
|
|
The same pass still reports C-03 for `RAIL-K8S-WP-0001` and
|
|
`RAIL-K8S-WP-0002`: their legacy random UUIDs are absent from the newer primary
|
|
projection. They were not rewritten or imported by this scoped recovery and
|
|
remain governed T04 fleet-migration work.
|
|
|
|
## Workstation-cache observation
|
|
|
|
The initial sandboxed reproduction reached the workstation State Hub before
|
|
file writeback was blocked, leaving the deterministic workplan parent in that
|
|
replaceable cache without its tasks. No repository file or primary record was
|
|
lost. The cache remains intentionally replaceable under T07; its partial row is
|
|
not an authority and will disappear on the governed rebuild.
|
|
|
|
## Verification
|
|
|
|
- Repo Manager focused registrar tests: `10 passed`
|
|
- Repo Manager full suite after both fixes: `75 passed`
|
|
- Repo Manager full-tree Ruff: clean
|
|
- `rail-kubernetes` checkout: clean and synchronized with `origin/main`
|