reuse-surface/workplans/REUSE-WP-0014-local-repo-registry-rollout.md

281 lines
8.8 KiB
Markdown
Raw Normal View History

---
id: REUSE-WP-0014
type: workplan
title: "Local workstation repo registry rollout"
domain: helix_forge
repo: reuse-surface
status: active
owner: codex
topic_slug: helix-forge
created: "2026-06-17"
updated: "2026-06-18"
state_hub_workstream_id: "b60e63ae-c1f7-407a-a077-1cf661ba613f"
---
# Local workstation repo registry rollout
Establish a capability registry (`registry/indexes/capabilities.yaml` plus entries)
in **every git repository** present one level under the workstation home
directory. REUSE-WP-0013 delivered `establish` tooling; REUSE-WP-0012/0013
dogfood established **five** repos ad hoc. This workplan systematizes the
remainder with a **tracked roster** and batched execution.
**Tracking artifact:** `registry/federation/local-repo-roster.yaml`
**Procedure:** `reuse-surface establish --scaffold` → seed (if any) → `validate --root` → commit → push → `establish --publish-check` → `hub register`
## Scope definition — “locally present repo”
A repo is in scope when **all** of the following hold:
| Criterion | Rule |
|---|---|
| Location | `~/<slug>/` — exactly one directory level under `$HOME` |
| Git | `git -C ~/<slug> rev-parse --is-inside-work-tree` succeeds |
| Exclusions | Dot-directories (e.g. `~/.grok`), non-git folders |
**Not in scope:** nested clones, `~/go/pkg`, `~/bin`, worktrees unless they appear
as top-level `~/<slug>` checkouts.
This replaces the informal “sibling repo” rule used in WP-0012/0013 (federation
manifest + hub block list + `owner` field in reuse-surface only).
## Roster summary (2026-06-17)
| Metric | Count |
|---|---|
| Total local git repos | **60** |
| Established | **8** |
| Pending | **52** |
| Pending with reuse-surface seed entries | **3** (`activity-core`, `audit-core`, `flex-auth`) |
### Already established
`reuse-surface`, `state-hub`, `feature-control`, `identity-canon`, `shard-wiki`
— see `history/2026-06-17-sibling-registry-established.md`.
Update `local-repo-roster.yaml` after each batch (`status`, `capability_count`,
`hub_registered`, `publish_check`).
## Suggested execution order
```text
T01 roster (done — maintain as source of truth)
→ T02 seed-ready repos (activity-core, audit-core, flex-auth)
→ T03–T08 batches B01–B06 (alphabetical pending slugs)
→ T09 hub register + publish-check sweep
→ T10 federation sources + deduplication
→ T11 documentation
```
## Per-repo establishment checklist
```bash
cd ~/<slug>
reuse-surface establish --scaffold --domain helix_forge
# if seed_capability_ids in roster: copy entries from reuse-surface by owner
# optional: LLM_CONNECT_URL=... reuse-surface establish --discover --dry-run
reuse-surface validate --root .
git add registry/ && git commit -m "Add capability registry"
git push origin main
reuse-surface establish --publish-check \
--raw-url https://gitea.coulomb.social/coulomb/<slug>/raw/main/registry/indexes/capabilities.yaml
REUSE_SURFACE_URL=https://reuse.coulomb.social reuse-surface hub register \
--repo <slug> --url <raw-url> --domain helix_forge
```
Mark roster fields when each step completes.
---
## Adopt Local Repo Roster
```task
id: REUSE-WP-0014-T01
status: done
priority: high
state_hub_task_id: "6eb4c95c-33bd-465b-9c70-daafe38dac64"
```
Create and maintain `registry/federation/local-repo-roster.yaml`:
- One row per `~/<slug>` git repo with `status`, `batch`, `seed_capability_ids`,
`hub_registered`, `publish_check`
- Regenerate or patch `summary` counts when batches complete
- Reference roster from this workplan and `docs/RegistryFederation.md`
**Done:** initial roster generated 2026-06-17 (60 repos, 5 established, 55 pending).
## Establish Seed-Ready Repos
```task
id: REUSE-WP-0014-T02
status: done
priority: high
state_hub_task_id: "608a83c4-352d-4c4c-b63b-49e3093ae10c"
```
Establish repos that already have capability entries in reuse-surface index
(`owner` = repo slug):
| Slug | Seed IDs | Result |
|---|---|---|
| `activity-core` | `capability.activity.event-coordinate` | established; **publish-check FAIL** (Gitea 404) |
| `audit-core` | `capability.audit.event-retain` | established; publish pass; hub registered |
| `flex-auth` | `capability.authorization.policy-evaluate` | established; publish pass; hub registered |
Copy entry Markdown + index rows; validate; commit; push; publish-check; hub
register. Update roster to `established`.
**Block:** `activity-core` — `https://gitea.coulomb.social/coulomb/activity-core`
returns 404; local registry committed and pushed to `origin/main`; hub
registration attempted. Operator must confirm repo exists on Gitea or fix remote.
## Establish Batch B01
```task
id: REUSE-WP-0014-T03
status: todo
priority: medium
state_hub_task_id: "32e14b1b-9f5f-4089-a4dc-e71f9c8605a7"
```
Slugs: `activity-core`, `agentic-resources`, `artifact-store`, `audit-core`,
`can-you-assist`, `citation-engine`, `citation-evidence`, `citation-work`,
`coordination-engine`, `domain-tree`
Note: `activity-core` and `audit-core` overlap T02 — skip duplicate work if T02
finishes first; empty scaffold acceptable for repos without seeds.
## Establish Batch B02
```task
id: REUSE-WP-0014-T04
status: todo
priority: medium
state_hub_task_id: "8abdc840-4c76-4062-8a4e-2fbc55dce22b"
```
Slugs: `email-connect`, `evidence-anchor`, `evidence-binder`, `evidence-source`,
`flex-auth`, `guide-board`, `helix-forge`, `hub-core`, `human-resources`,
`ihp-railiance-probe`
## Establish Batch B03
```task
id: REUSE-WP-0014-T05
status: todo
priority: medium
state_hub_task_id: "8808eb26-b4bd-494a-91d6-171b39467307"
```
Slugs: `info-tech-canon`, `infospace-bench`, `inter-hub`, `issue-core`,
`kaizen-agentic`, `key-cape`, `kontextual-engine`, `llm-connect`,
`markitect-filter`, `markitect-main`
## Establish Batch B04
```task
id: REUSE-WP-0014-T06
status: todo
priority: medium
state_hub_task_id: "50492e00-5c58-4dd8-a143-801d63decc19"
```
Slugs: `markitect-quarkdown`, `markitect-tool`, `net-kingdom`, `open-cmis-tck`,
`open-reuse`, `ops-bridge`, `ops-hub`, `ops-warden`, `phase-memory`,
`railiance-apps`
## Establish Batch B05
```task
id: REUSE-WP-0014-T07
status: todo
priority: medium
state_hub_task_id: "ca82a8ca-32ed-45f5-b059-25b94d9fa6d1"
```
Slugs: `railiance-cluster`, `railiance-enablement`, `railiance-fabric`,
`railiance-forge`, `railiance-infra`, `railiance-platform`, `repo-scoping`,
`repo-seed`, `tegwick-control`, `the-custodian`
## Establish Batch B06
```task
id: REUSE-WP-0014-T08
status: todo
priority: medium
state_hub_task_id: "1587129f-233a-4cca-ba00-083ab0b06aa9"
```
Slugs: `user-engine`, `vantage-point`, `vergabe-teilnahme`, `whynot-control`,
`whynot-design`
## Hub Register And Publish-Check Sweep
```task
id: REUSE-WP-0014-T09
status: todo
priority: high
state_hub_task_id: "376ef03c-f22b-4b5a-b653-e020e625364f"
```
For every roster row with `status: established` and `publish_check: pending`:
- Run `establish --publish-check` against Gitea raw URL
- `hub register` (or `hub update`) on `https://reuse.coulomb.social`
- Set `hub_registered: true` and `publish_check: pass` in roster
Target: hub federates all established local repos with HTTP 200 indexes.
## Federation Sources And Deduplication
```task
id: REUSE-WP-0014-T10
status: todo
priority: medium
state_hub_task_id: "60f8fe9a-8794-441f-8d97-fc2f6c8d7915"
```
- `reuse-surface hub sync --merge` after registrations
- `federation compose` — document duplicate-ID policy for entries migrated to
owner repos (e.g. wiki capabilities in reuse-surface vs shard-wiki)
- Plan removal of canonical duplicates from reuse-surface index (separate commit
per owner agreement)
## Documentation And Gap Analysis
```task
id: REUSE-WP-0014-T11
status: todo
priority: low
state_hub_task_id: "51389647-3e23-4a64-a7d8-bdb5e364592f"
```
- `docs/RegistryFederation.md` — link `local-repo-roster.yaml` and scope definition
- `history/` — rollout milestone note when all batches complete
- `docs/IntentScopeGapAnalysis.md` — federation membership progress
- Optional: `reuse-surface stats --federation-ready` roster-driven CI informational
---
## Acceptance
- [ ] `local-repo-roster.yaml` lists all 60 local git repos with current status
- [ ] 55 pending repos reach `status: established` (or explicit `excluded` with rationale)
- [ ] Every established repo passes `validate --root` and `publish-check` (HTTP 200)
- [ ] Hub registers all established repos with published indexes
- [ ] Roster `summary.established` equals 60 (or documented exclusions)
- [ ] Federation compose succeeds with updated sources manifest
## Out of scope
- Repos not checked out under `~/<slug>`
- Auto `establish --discover` for every repo (optional per repo only)
- Removing reuse-surface canonical entries without owner review (T10 plans only)
## Progress log
| Date | Event |
|---|---|
| 2026-06-17 | WP-0014 created; roster 5/60 established; batches B01–B06 assigned |
| 2026-06-18 | T02 done: activity-core, audit-core, flex-auth established (8/60); activity-core publish blocked |