--- 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" --- # 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.