railiance-fabric/workplans/archived/260702-RAIL-FAB-WP-0019-duplicate-repository-identity-review.md
tegwick 0507b0861b
All checks were successful
CI Smoke / host-smoke (push) Successful in 2s
CI Smoke / container-smoke (push) Successful in 7s
CUST-WP-0055 T06/T07: workplan-first fabric source docs and archive notes
Update catalog, integration docs, and fabric capability declarations to
use workplan terminology. Add archive grandfather notes.
2026-07-08 20:26:24 +02:00

98 lines
3.1 KiB
Markdown

---
id: RAIL-FAB-WP-0019
type: workplan
title: "Duplicate Repository Identity Review"
domain: financials
repo: railiance-fabric
status: finished
owner: codex
topic_slug: railiance
created: "2026-05-24"
updated: "2026-05-24"
state_hub_workstream_id: "bc69549c-3cbc-4a7d-8766-b84added1133"
---
> **Terminology note:** Historical text in this archived workplan may use the legacy term "workstream". The fleet term is **workplan** (`canon/standards/workplan-terminology-fleet_v0.1.md`).
# RAIL-FAB-WP-0019 - Duplicate Repository Identity Review
## Goal
Resolve the duplicate repository identity blockers found during the
`RAIL-FAB-WP-0018` bootstrap run.
The 2026-05-24 accountability-root ownership review resolved ownership and
containment for all candidates, but flagged four repository identities as
ambiguous because registry inventory evidence maps two repo slugs onto the same
local checkout path.
## T01 - Inspect Duplicate Repo Path Evidence
```task
id: RAIL-FAB-WP-0019-T01
status: done
priority: high
state_hub_task_id: "63c5ee1e-6c9f-4d63-b0b4-61308e833ac2"
```
Review the duplicate path evidence for:
- `identity:repository:railiance-hosts`
- `identity:repository:railiance-infra`
- `identity:repository:vergabe-teilnahme`
- `identity:repository:vergabe_teilnahme`
Done when the intended canonical repo identity, alias, or split-identity rule is
known for `/home/worsch/railiance-infra` and `/home/worsch/vergabe-teilnahme`.
Result: `/home/worsch/railiance-infra` is canonicalized as
`railiance-infra`; `railiance-hosts` remains an alias while its State Hub record
still carries older goal context. `/home/worsch/vergabe-teilnahme` is
canonicalized as `vergabe-teilnahme`; `vergabe_teilnahme` is an alias/stale
registration.
## T02 - Encode Canonical Identity Decisions
```task
id: RAIL-FAB-WP-0019-T02
status: done
priority: high
state_hub_task_id: "bd0496f2-9a95-4487-9620-eabbf0e78c6b"
```
Apply the chosen resolution in the durable source of truth.
Candidate options include:
- fix duplicate entries in `registry/local-repos.yaml`;
- add explicit repository alias/canonicalization support to the identity
projection;
- persist review decisions for the affected stable identity keys.
Done when duplicate repo path evidence no longer produces ambiguous repository
identity blockers.
Result: accountability-root discovery now supports `canonical_slug` and
automatic duplicate-path canonicalization for registered repositories. Current
aliases are annotated in `registry/local-repos.yaml`, and the live ownership
review reports no `ambiguous_identity` blockers.
## T03 - Refresh Bootstrap Review Artifacts
```task
id: RAIL-FAB-WP-0019-T03
status: done
priority: medium
state_hub_task_id: "2c90c5c1-46be-41b7-8854-602eea0e3aaf"
```
Rerun the accountability-root bootstrap review and update the saved discovery
snapshot artifacts.
Done when `fabric/discovery/snapshots/*bootstrap-ownership-review.json` shows
zero ambiguous repository identity blockers, or documents any remaining blocker
as intentionally unresolved.
Result: bootstrap identity, ownership-review, and update-delta snapshots were
refreshed on 2026-05-24. The saved ownership review reports `needs_review: 0`
and no blockers.