feat: canonicalize duplicate repo identities

This commit is contained in:
2026-05-24 14:08:40 +02:00
parent 5c9c2f281e
commit d9f1f3f71a
8 changed files with 309 additions and 241 deletions

View File

@@ -4,7 +4,7 @@ type: workplan
title: "Duplicate Repository Identity Review"
domain: railiance
repo: railiance-fabric
status: ready
status: finished
owner: codex
topic_slug: railiance
created: "2026-05-24"
@@ -28,7 +28,7 @@ local checkout path.
```task
id: RAIL-FAB-WP-0019-T01
status: todo
status: done
priority: high
state_hub_task_id: "63c5ee1e-6c9f-4d63-b0b4-61308e833ac2"
```
@@ -43,11 +43,17 @@ Review the duplicate path evidence for:
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: todo
status: done
priority: high
state_hub_task_id: "bd0496f2-9a95-4487-9620-eabbf0e78c6b"
```
@@ -64,11 +70,16 @@ Candidate options include:
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: todo
status: done
priority: medium
state_hub_task_id: "2c90c5c1-46be-41b7-8854-602eea0e3aaf"
```
@@ -79,3 +90,7 @@ 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.