2026-06-16 01:40:49 +02:00
---
id: REUSE-WP-0014
type: workplan
title: "Local workstation repo registry rollout"
domain: helix_forge
repo: reuse-surface
2026-06-16 02:14:54 +02:00
status: finished
2026-06-16 01:40:49 +02:00
owner: codex
topic_slug: helix-forge
created: "2026-06-17"
2026-06-16 01:54:40 +02:00
updated: "2026-06-16"
2026-06-16 02:13:28 +02:00
archived: "2026-06-16"
2026-06-16 01:41:24 +02:00
state_hub_workstream_id: "b60e63ae-c1f7-407a-a077-1cf661ba613f"
2026-06-16 01:40:49 +02:00
---
2026-07-08 20:26:38 +02:00
> **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`).
2026-06-16 01:40:49 +02:00
# Local workstation repo registry rollout
2026-06-16 02:13:28 +02:00
> **Archived 2026-06-16.** Follow-up per repo:
> `history/2026-06-16-wp0014-remaining-work-by-repo.md`
2026-06-16 01:40:49 +02:00
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** |
2026-06-16 01:50:55 +02:00
| Established | **16** |
| Pending | **44** |
2026-06-16 01:40:49 +02:00
| 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
2026-06-16 01:41:24 +02:00
state_hub_task_id: "6eb4c95c-33bd-465b-9c70-daafe38dac64"
2026-06-16 01:40:49 +02:00
```
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
2026-06-16 01:47:51 +02:00
status: done
2026-06-16 01:40:49 +02:00
priority: high
2026-06-16 01:41:24 +02:00
state_hub_task_id: "608a83c4-352d-4c4c-b63b-49e3093ae10c"
2026-06-16 01:40:49 +02:00
```
Establish repos that already have capability entries in reuse-surface index
(`owner` = repo slug):
2026-06-16 01:47:51 +02:00
| 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 |
2026-06-16 01:40:49 +02:00
Copy entry Markdown + index rows; validate; commit; push; publish-check; hub
register. Update roster to `established` .
2026-06-16 01:47:51 +02:00
**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.
2026-06-16 01:40:49 +02:00
## Establish Batch B01
```task
id: REUSE-WP-0014-T03
2026-06-16 01:50:55 +02:00
status: done
2026-06-16 01:40:49 +02:00
priority: medium
2026-06-16 01:41:24 +02:00
state_hub_task_id: "32e14b1b-9f5f-4089-a4dc-e71f9c8605a7"
2026-06-16 01:40:49 +02:00
```
Slugs: `activity-core` , `agentic-resources` , `artifact-store` , `audit-core` ,
`can-you-assist` , `citation-engine` , `citation-evidence` , `citation-work` ,
`coordination-engine` , `domain-tree`
2026-06-16 01:50:55 +02:00
**Done 2026-06-18:** 8 empty scaffolds established (`agentic-resources` through
`domain-tree` ); T02 had already done `activity-core` and `audit-core` . All 8 new
repos publish-check **pass** and hub registered. `activity-core` publish still
**fail** (Gitea 404).
2026-06-16 01:40:49 +02:00
## Establish Batch B02
```task
id: REUSE-WP-0014-T04
2026-06-16 01:54:40 +02:00
status: done
2026-06-16 01:40:49 +02:00
priority: medium
2026-06-16 01:41:24 +02:00
state_hub_task_id: "8abdc840-4c76-4062-8a4e-2fbc55dce22b"
2026-06-16 01:40:49 +02:00
```
Slugs: `email-connect` , `evidence-anchor` , `evidence-binder` , `evidence-source` ,
`flex-auth` , `guide-board` , `helix-forge` , `hub-core` , `human-resources` ,
`ihp-railiance-probe`
2026-06-16 01:54:40 +02:00
**Done 2026-06-16:** 8 scaffolds publish pass + hub registered (`email-connect`
through `human-resources` ; `flex-auth` from T02). ** `hub-core` :** local registry
committed; Gitea repo missing (push-to-create disabled) — publish **fail** , hub
not registered. ** `ihp-railiance-probe` :** local push OK; Gitea raw 404 —
publish **fail** , hub registered for T09 sweep.
2026-06-16 01:40:49 +02:00
## Establish Batch B03
```task
id: REUSE-WP-0014-T05
2026-06-16 01:54:40 +02:00
status: done
2026-06-16 01:40:49 +02:00
priority: medium
2026-06-16 01:41:24 +02:00
state_hub_task_id: "8808eb26-b4bd-494a-91d6-171b39467307"
2026-06-16 01:40:49 +02:00
```
Slugs: `info-tech-canon` , `infospace-bench` , `inter-hub` , `issue-core` ,
`kaizen-agentic` , `key-cape` , `kontextual-engine` , `llm-connect` ,
`markitect-filter` , `markitect-main`
2026-06-16 01:54:40 +02:00
**Done 2026-06-16:** 10 scaffolds established (35/60). Nine publish pass + hub
registered. ** `inter-hub` :** Gitea raw 404 (same pattern as `ihp-railiance-probe` );
hub registered for T09 sweep.
2026-06-16 01:40:49 +02:00
## Establish Batch B04
```task
id: REUSE-WP-0014-T06
2026-06-16 01:56:31 +02:00
status: done
2026-06-16 01:40:49 +02:00
priority: medium
2026-06-16 01:41:24 +02:00
state_hub_task_id: "50492e00-5c58-4dd8-a143-801d63decc19"
2026-06-16 01:40:49 +02:00
```
Slugs: `markitect-quarkdown` , `markitect-tool` , `net-kingdom` , `open-cmis-tck` ,
`open-reuse` , `ops-bridge` , `ops-hub` , `ops-warden` , `phase-memory` ,
`railiance-apps`
2026-06-16 01:56:31 +02:00
**Done 2026-06-16:** 10 scaffolds established (45/60). Eight publish pass + hub
registered. ** `net-kingdom` ** and ** `railiance-apps` :** Gitea raw 404; hub
registered for T09 sweep.
2026-06-16 01:40:49 +02:00
## Establish Batch B05
```task
id: REUSE-WP-0014-T07
2026-06-16 01:59:50 +02:00
status: done
2026-06-16 01:40:49 +02:00
priority: medium
2026-06-16 01:41:24 +02:00
state_hub_task_id: "ca82a8ca-32ed-45f5-b059-25b94d9fa6d1"
2026-06-16 01:40:49 +02:00
```
Slugs: `railiance-cluster` , `railiance-enablement` , `railiance-fabric` ,
`railiance-forge` , `railiance-infra` , `railiance-platform` , `repo-scoping` ,
`repo-seed` , `tegwick-control` , `the-custodian`
2026-06-16 01:59:50 +02:00
**Done 2026-06-16:** 10 established (55/60). Five publish pass (`railiance-fabric` ,
`railiance-forge` , `repo-scoping` , `repo-seed` , `the-custodian` ). Five Gitea raw
404 (`railiance-cluster` , `railiance-enablement` , `railiance-infra` ,
`railiance-platform` , `tegwick-control` ). ** `railiance-fabric` :** capability index
added alongside existing fabric registry (not full `--scaffold` ).
2026-06-16 01:40:49 +02:00
## Establish Batch B06
```task
id: REUSE-WP-0014-T08
2026-06-16 02:03:21 +02:00
status: done
2026-06-16 01:40:49 +02:00
priority: medium
2026-06-16 01:41:24 +02:00
state_hub_task_id: "1587129f-233a-4cca-ba00-083ab0b06aa9"
2026-06-16 01:40:49 +02:00
```
Slugs: `user-engine` , `vantage-point` , `vergabe-teilnahme` , `whynot-control` ,
`whynot-design`
2026-06-16 02:03:21 +02:00
**Done 2026-06-16:** Final batch — 60/60 established. Three publish pass;
`whynot-control` and `whynot-design` Gitea raw 404 (hub registered for T09).
2026-06-16 01:40:49 +02:00
## Hub Register And Publish-Check Sweep
```task
id: REUSE-WP-0014-T09
2026-06-16 02:05:37 +02:00
status: done
2026-06-16 01:40:49 +02:00
priority: high
2026-06-16 01:41:24 +02:00
state_hub_task_id: "376ef03c-f22b-4b5a-b653-e020e625364f"
2026-06-16 02:05:37 +02:00
needs_human: true
intervention_note: "13 repos still Gitea raw HTTP 404 — operator must create/enable public repos on gitea.coulomb.social"
2026-06-16 01:40:49 +02:00
```
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.
2026-06-16 02:05:37 +02:00
**Done 2026-06-16:** Swept 13 `publish_check: fail` repos — **0 recovered** (all
still HTTP 404 on Gitea raw URL). Local `git push` OK for 12/13; ** `hub-core` **
push still blocked (no Gitea repo). Hub now **60/60 registered**
(`reuse-surface hub list` ). Operator action required before federation can fetch
indexes for: `activity-core` , `hub-core` , `ihp-railiance-probe` , `inter-hub` ,
`net-kingdom` , `railiance-apps` , `railiance-cluster` , `railiance-enablement` ,
`railiance-infra` , `railiance-platform` , `tegwick-control` , `whynot-control` ,
`whynot-design` .
2026-06-16 01:40:49 +02:00
## Federation Sources And Deduplication
```task
id: REUSE-WP-0014-T10
2026-06-16 02:08:21 +02:00
status: done
2026-06-16 01:40:49 +02:00
priority: medium
2026-06-16 01:41:24 +02:00
state_hub_task_id: "60f8fe9a-8794-441f-8d97-fc2f6c8d7915"
2026-06-16 01:40:49 +02:00
```
- `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)
2026-06-16 02:08:21 +02:00
**Done 2026-06-16:** `hub sync --merge` wrote **60** URL sources;
`federation compose` → **37** capabilities, **16** duplicate-ID warnings, **13**
remote fetch warnings (T09 Gitea blockers). Owner-migration dedup policy in
`docs/RegistryFederation.md` ; removal plan in
`history/2026-06-16-federation-deduplication-plan.md` (18 reuse-surface rows to
drop per owner, 2 registry meta entries retained).
2026-06-16 01:40:49 +02:00
## Documentation And Gap Analysis
```task
id: REUSE-WP-0014-T11
2026-06-16 02:09:57 +02:00
status: done
2026-06-16 01:40:49 +02:00
priority: low
2026-06-16 01:41:24 +02:00
state_hub_task_id: "51389647-3e23-4a64-a7d8-bdb5e364592f"
2026-06-16 01:40:49 +02:00
```
- `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
2026-06-16 02:09:57 +02:00
**Done 2026-06-16:** Roster section in `RegistryFederation.md` ; milestone
`history/2026-06-16-local-repo-registry-rollout-complete.md` ; gap analysis
updated (priority 18 closed). `stats --roster --federation-ready` for workstation
federation readiness aggregates.
2026-06-16 01:40:49 +02:00
---
## Acceptance
2026-06-16 02:09:57 +02:00
- [x] `local-repo-roster.yaml` lists all 60 local git repos with current status
- [x] 55 pending repos reach `status: established` (or explicit `excluded` with rationale)
- [ ] Every established repo passes `validate --root` and `publish-check` (HTTP 200) — **47/60 pass; 13 operator-blocked (T09)**
- [x] Hub registers all established repos with published indexes — **60/60 hub registered**
- [x] Roster `summary.established` equals 60 (or documented exclusions)
- [x] Federation compose succeeds with updated sources manifest
2026-06-16 01:40:49 +02:00
## 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-16 01:47:51 +02:00
| 2026-06-17 | WP-0014 created; roster 5/60 established; batches B01– B06 assigned |
2026-06-16 01:50:55 +02:00
| 2026-06-18 | T02 done: activity-core, audit-core, flex-auth established (8/60); activity-core publish blocked |
2026-06-16 01:54:40 +02:00
| 2026-06-18 | T03 B01 done: +8 scaffolds (16/60); hub 16 registrations |
| 2026-06-16 | T04 B02 done: 25/60; hub-core + ihp publish blocked (Gitea) |
2026-06-16 01:56:31 +02:00
| 2026-06-16 | T05 B03 done: 35/60; inter-hub publish blocked (Gitea) |
2026-06-16 01:59:50 +02:00
| 2026-06-16 | T06 B04 done: 45/60; net-kingdom + railiance-apps publish blocked |
2026-06-16 02:03:21 +02:00
| 2026-06-16 | T07 B05 done: 55/60; 5 railiance/tegwick publish blocked |
2026-06-16 02:05:37 +02:00
| 2026-06-16 | T08 B06 done: **60/60** all local repos established |
2026-06-16 02:08:21 +02:00
| 2026-06-16 | T09 sweep: 60 hub registrations; 13 publish still Gitea 404 |
2026-06-16 02:09:57 +02:00
| 2026-06-16 | T10 federation: 60 sources, 37 caps, dedup plan documented |
2026-06-16 02:13:28 +02:00
| 2026-06-16 | T11 docs + stats --roster; **workplan finished** |
| 2026-06-16 | Archived; remaining work in `history/2026-06-16-wp0014-remaining-work-by-repo.md` |