docs(canon): ADR-007 migration ruled — option 2, live renumber list empty
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s

Verified: all five duplicated identifiers are finished, and no workplan in a
live state shares an identifier. Option 2 therefore requires no renumbering
today; historical duplicates stay, RAILIANCE-WP-0015 ambiguity included.

Separates remediation from conformance: three shared prefixes remain in use
across seven repos as single concurrently-allocated number lines. RAIL-BS-
and RAILIANCE- are still growing, so the 0015/0016 collisions will recur at
the next concurrent allocation. Prefix ownership assignment tracked as
RMGR-WP-0004-T09 under decision 1, which option 2 does not exempt.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
codex 2026-08-17 10:24:15 +02:00
parent 77e0ac2bca
commit e3699ebc89

View file

@ -188,13 +188,62 @@ in increasing cost:
`railiance-bootstrap`/`railiance-cluster` and `state-hub`'s legacy `CUST-WP-`
files. Touches six repositories and every inbound reference.
Recommendation: **option 2**, with option 3's prefix split applied only to repos
that are still creating new workplans under a shared prefix — a shared prefix
that is still growing keeps generating new collisions, while a dormant one does
not.
**Ruled 2026-08-17: option 2.** Renumber live collisions; leave
`finished`/`archived` duplicates as historical record.
All five duplicated identifiers are currently `finished`, so no active work is
blocked by deferring this.
### The live renumber list is empty
Verified against the fleet scan. All five duplicated identifiers are `finished`:
```text
CUST-WP-0000 the-custodian ×2 finished
CUST-WP-0010 the-custodian ×2 finished
CUST-WP-0045 the-custodian ×2 finished
RAILIANCE-WP-0015 apps, platform finished
RAILIANCE-WP-0016 apps, platform ×2 finished
```
No workplan in a `proposed`, `ready`, `active`, `blocked`, or `backlog` state
shares an identifier with another. **Option 2 therefore requires no renumbering
today.** Historical duplicates stay, including the `RAILIANCE-WP-0015` ambiguity
between `railiance-apps` and `railiance-platform`; citations of it must name the
repository.
### The structural cause is not historical
Option 2 governs *remediation*. It does not exempt anything from decision 1,
which is accepted canon: one prefix, one repository, forward-only numbering.
Three shared prefixes are still in use across seven repositories, and each is a
**single number line being allocated from concurrently**:
```text
RAIL-BS-WP- bootstrap 8, 9
cluster 7, 10, 11, 12, 13, 14
RAILIANCE-WP- platform 5, 8-17 (16 twice — an internal duplicate)
apps 15, 16 <- already collided with platform
forge 2
telemetry 1
CUST-WP- the-custodian 50 plans
state-hub 4 legacy plans (canonical prefix is STATE-WP)
```
`RAIL-BS-` and `RAILIANCE-` are actively growing — `RAIL-BS-WP-0014` (`ready`),
`RAILIANCE-WP-0002` (`ready`), `RAILIANCE-WP-0001` (`proposed`), all created
2026-08-11 or later. The `RAILIANCE-WP-0015`/`0016` collisions were not a
historical accident; they are what concurrent allocation from a shared sequence
produces, and it will recur at the next concurrent allocation.
`CUST-` is dormant on the `state-hub` side — four legacy plans, one in
`backlog` — and needs no split, only a prefix-ownership assertion.
**Consequence.** Prefix ownership must be assigned for all three shared prefixes
before the next workplan is created in the affected repositories. This is
forward conformance under decision 1, not migration, and is tracked as
`RMGR-WP-0004-T09`. Renaming the *historical* files is explicitly not required —
that would be option 3, which was rejected.
## References