feat(workplan): close STATE-WP-0083-T05 — every hub record derives from a file
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s

51 records retired across the fleet; 106 of 121 repositories now noop. Zero
repositories hold a record that no longer derives.

26 real workplans were rescued from wrongful retirement — more than half the
number retired. vergabe-teilnahme (17) predated the convention entirely; nine
further files across five repositories carried no type field, three of them
created by this session's own renames.

Also records the RPF-WP collision this session introduced by numbering from
0001 without checking whether the target prefix was in use.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2583210@bnt-lap001
Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006
This commit is contained in:
tegwick 2026-08-26 21:04:16 +02:00
parent 12d8a1d018
commit 52da6a17cb

View file

@ -218,7 +218,7 @@ Its behaviour on failure is the part that matters, and all three are tested:
```task
id: STATE-WP-0083-T05
status: wait
status: done
priority: medium
```
@ -665,3 +665,45 @@ single figures elsewhere.
All 9 remaining errors are private repositories the pod cannot clone
anonymously — unchanged, and not a code problem.
## T05 outcome — every hub record derives from a file (2026-08-26)
| | |
|---|---|
| repositories | 121 |
| noop | **106** |
| refused | 6 — all identifier collisions, no retirements |
| errored | 9 — private repositories |
| **retired** | **51** |
| progress events | 21522, untouched throughout |
Zero repositories hold a record that no longer derives.
**26 real workplans were rescued from wrongful retirement**, more than half the
number actually retired:
- `vergabe-teilnahme` (17) — a repository predating the convention entirely: no
`type:` field anywhere, bare `WP-NNNN` identifiers, no hub identifiers, no
registered prefix. The diff showed 16 records to retire; the truth was 17
workplans no projection could see.
- `glas-harness` (3), `binky-control` (2), `rein-aharness` (2), `ops-mason` (1),
`rein-openweights` (1) — files carrying no `type:` field at all.
Three of those nine were created *by this session's own renames*, which never
added a type the files had never had. The pre-flight check — does the forge
derivation actually see workplans in this repository — is the only reason they
survived, and it has now caught wrongful retirement three times: `kont-wp-0015`,
all of `vergabe-teilnahme`, and these nine.
**A collision this session created.** Retiring `railiance-platform` first
required repairing a fault introduced earlier the same day: the `RAILIANCE-WP`
migration numbered from `RPF-WP-0001` without checking whether the target prefix
was in use. It was, and the migration collided at 0018, 0019 and 0020. The fleet
reset then ran over the colliding files and left mixed records on central —
`rpf-wp-0018` carried one file's status and another's backing path. The
displaced files moved to 0025-0027. The source numbering was checked before
renaming; the target was not.
**Remaining, and not solvable by retirement:** 9 private repositories central
cannot clone, and 9 identifier collisions that are identity decisions.