generated from coulomb/repo-seed
Sync production hub and archive REUSE-WP-0015
Some checks failed
ci / validate-registry (push) Has been cancelled
Some checks failed
ci / validate-registry (push) Has been cancelled
Confirm whynot/tegwick hub URLs on coulomb paths, hub sync --merge, and State Hub consistency fix. Archive finished workplan.
This commit is contained in:
@@ -0,0 +1,271 @@
|
||||
---
|
||||
id: REUSE-WP-0015
|
||||
type: workplan
|
||||
title: "Federation polish and planning analytics"
|
||||
domain: helix_forge
|
||||
repo: reuse-surface
|
||||
status: finished
|
||||
owner: codex
|
||||
topic_slug: helix-forge
|
||||
created: "2026-06-16"
|
||||
updated: "2026-06-16"
|
||||
state_hub_workstream_id: "a67689ce-4634-4e88-a66f-e357520e1c4a"
|
||||
---
|
||||
|
||||
# Federation polish and planning analytics
|
||||
|
||||
Follow-up to `history/2026-06-16-intent-scope-assessment.md` and
|
||||
`docs/IntentScopeGapAnalysis.md` priorities **25–27**. REUSE-WP-0014 established
|
||||
registry scaffolds in **60** workstation repos and hub registrations; this
|
||||
workplan closes the remaining INTENT↔SCOPE gaps: **fetchable federation**,
|
||||
**duplicate-ID cleanup**, **planning analytics**, and **compose acceptance**.
|
||||
|
||||
**Baseline vector:** `D5 / A4 / C5 / R3`
|
||||
**Target vector:** `D5 / A4 / C5–C6 / R3` (completeness rises when federation
|
||||
fetch and namespace are clean; reliability unchanged until telemetry program)
|
||||
|
||||
## Assessment reference
|
||||
|
||||
| Priority | Gap | Task |
|
||||
|---|---|---|
|
||||
| 25 | Gitea publish visibility (13 repos) | T01 |
|
||||
| 26 | Federated ID deduplication | T02 |
|
||||
| 27 | Planning analytics / standardization | T03 |
|
||||
| — | Federation compose acceptance | T04 |
|
||||
| — | Roster CI observability | T05 |
|
||||
| — | SCOPE + gap analysis refresh | T06 |
|
||||
|
||||
**Roster:** `registry/federation/local-repo-roster.yaml`
|
||||
**Per-repo operator guide:** `history/2026-06-16-wp0014-remaining-work-by-repo.md`
|
||||
**Dedup plan:** `history/2026-06-16-federation-deduplication-plan.md`
|
||||
|
||||
## Suggested execution order
|
||||
|
||||
```text
|
||||
T01 (Gitea publish — operator; unblocks fetch)
|
||||
→ T02 (dedup reuse-surface index — per owner)
|
||||
→ T04 (compose acceptance — verify 0 warnings)
|
||||
→ T03 (planning analytics — can start design in parallel with T02)
|
||||
→ T05 (CI roster stats — after T01/T04 metrics stable)
|
||||
→ T06 (docs refresh)
|
||||
```
|
||||
|
||||
## Dependencies
|
||||
|
||||
| Dependency | Owner | Notes |
|
||||
|---|---|---|
|
||||
| Gitea repo visibility | Operator | 13 slugs; `hub-core` needs repo creation |
|
||||
| Owner agreement | Domain repos | Dedup removes reuse-surface canonical copies |
|
||||
| Production hub | Railiance01 | `https://reuse.coulomb.social` |
|
||||
|
||||
---
|
||||
|
||||
## Remediate Gitea Publish Blockers
|
||||
|
||||
```task
|
||||
id: REUSE-WP-0015-T01
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "7024ca46-cabd-44a8-8baf-cbc83d99c1fe"
|
||||
```
|
||||
|
||||
Close gap priority **25**.
|
||||
|
||||
**2026-06-16:** Sweep re-run — all 13 still HTTP 404. No agent-side remediation
|
||||
possible without Gitea operator action. Bring all roster rows to `publish_check: pass`.
|
||||
|
||||
**2026-06-16 (follow-up):** `hub-core` resolved — Gitea repo created, push OK,
|
||||
`publish_check: pass`. **12** slugs remain HTTP 404.
|
||||
|
||||
**2026-06-16 (visibility fix):** Gitea repos made public — **11** former blockers
|
||||
now `publish_check: pass`. `whynot-control` / `whynot-design` use `whynot/` org
|
||||
paths in `sources.yaml`. **59/60** pass; **1** remains.
|
||||
|
||||
**Done 2026-06-16 (org transfer):** Operator transferred `tegwick-control`,
|
||||
`whynot-control`, and `whynot-design` to `coulomb/` via Gitea UI. Roster
|
||||
**60/60** `publish_check: pass`; workstation remotes and `sources.yaml` aligned
|
||||
to `coulomb/<slug>`.
|
||||
|
||||
Per slug:
|
||||
|
||||
1. Ensure Gitea repo exists and `main` has `registry/indexes/capabilities.yaml`
|
||||
2. Enable anonymous raw URL access (or document `auth_env` in `sources.yaml`)
|
||||
3. `reuse-surface establish --publish-check --raw-url <url>`
|
||||
4. Update `local-repo-roster.yaml` (`publish_check`, `publish_note`)
|
||||
5. Re-run roster sweep: all `publish_fail` → 0
|
||||
|
||||
**Resolved:** `hub-core` — `coulomb/hub-core` created on Gitea; roster
|
||||
`publish_check: pass` (2026-06-16 follow-up).
|
||||
|
||||
**Done when:** `reuse-surface stats --roster ... --federation-ready` shows
|
||||
`all_publish_pass: true`.
|
||||
|
||||
## Deduplicate Owner-Migrated Index Rows
|
||||
|
||||
```task
|
||||
id: REUSE-WP-0015-T02
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "a354ef8f-fdbb-4929-8278-8ecf4ca79553"
|
||||
```
|
||||
|
||||
Close gap priority **26**.
|
||||
|
||||
**Done 2026-06-16:** Removed 17 owner-migrated rows + markdown from reuse-surface
|
||||
index (kept `activity-core` stub until T01). Local index **3** entries. Compose
|
||||
duplicate warnings clear after Gitea index push (`--refresh`). Remove duplicate capability rows from reuse-surface
|
||||
where owner repo index is canonical and fetchable.
|
||||
|
||||
**Done 2026-06-16 (visibility fix):** Removed `activity-core` stub after owner
|
||||
index fetchable; local index **2** entries (meta-registry only).
|
||||
|
||||
**Owner batches** (separate commits per owner — see dedup plan):
|
||||
|
||||
| Owner | IDs to remove from reuse-surface |
|
||||
|---|---|
|
||||
| `audit-core` | `capability.audit.event-retain` |
|
||||
| `flex-auth` | `capability.authorization.policy-evaluate` |
|
||||
| `feature-control` | evaluate, rollout, visibility |
|
||||
| `identity-canon` | subject-resolution, vocabulary-canonicalize |
|
||||
| `state-hub` | progress-log, workstream-coordinate |
|
||||
| `shard-wiki` | 8× `capability.wiki.*` |
|
||||
| `activity-core` | `capability.activity.event-coordinate` (after T01) |
|
||||
|
||||
After each batch:
|
||||
|
||||
```bash
|
||||
reuse-surface validate --relations
|
||||
reuse-surface federation compose
|
||||
reuse-surface graph --check
|
||||
```
|
||||
|
||||
**Keep in reuse-surface:** `capability.registry.register`, `capability.registry.validate`.
|
||||
|
||||
**Done when:** `federation compose` reports **0** duplicate-ID warnings.
|
||||
|
||||
## Planning Gap Report And Standardization Tracker
|
||||
|
||||
```task
|
||||
id: REUSE-WP-0015-T03
|
||||
status: done
|
||||
priority: medium
|
||||
state_hub_task_id: "e135ea2e-a68f-4f72-947c-abe08a3aedef"
|
||||
```
|
||||
|
||||
Close gap priority **27**.
|
||||
|
||||
**Done 2026-06-16:** `reuse-surface report gaps` — roster publish blockers,
|
||||
empty scaffolds, seed-ready repos, local owner stubs. Standardization tracker
|
||||
deferred (overlaps + compose warnings sufficient for now). Extend planning support beyond `report cohorts`.
|
||||
|
||||
Deliver one or both (minimum: **gap report**):
|
||||
|
||||
| Deliverable | Description |
|
||||
|---|---|
|
||||
| **Gap report** | `reuse-surface report gaps` — federated IDs vs empty owner scaffolds; repos with `capability_count: 0` and suggested next entries from roster |
|
||||
| **Standardization tracker** | Markdown or YAML artifact listing overlap clusters from `overlaps` + compose duplicate history |
|
||||
|
||||
Update `tools/README.md` and `SCOPE.md` when shipped.
|
||||
|
||||
**Done when:** INTENT success criteria row 5–6 have a documented CLI or report
|
||||
artifact beyond overlaps/cohorts.
|
||||
|
||||
## Federation Compose Acceptance Gate
|
||||
|
||||
```task
|
||||
id: REUSE-WP-0015-T04
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "aa26429d-6d42-4d84-9235-96feb61303f2"
|
||||
```
|
||||
|
||||
Verify federation health after T01 and T02.
|
||||
|
||||
**Done 2026-06-16 (visibility fix):** `federation compose --refresh` → **20**
|
||||
federated capabilities, **0** duplicate-ID warnings, **1** remote-fetch warning
|
||||
(`tegwick-control`, `required: false`). Acceptance met for enabled sources.
|
||||
|
||||
```bash
|
||||
reuse-surface hub sync --merge
|
||||
reuse-surface federation compose
|
||||
```
|
||||
|
||||
**Acceptance:**
|
||||
|
||||
- 0 remote index unavailable warnings (or documented `required: false` exceptions)
|
||||
- 0 duplicate-ID warnings
|
||||
- `registry/indexes/federated.yaml` committed when compose output changes
|
||||
- Record final capability count and source counts in workplan progress log
|
||||
|
||||
Optional: add `--fail-on-warnings` to compose for CI (separate commit if scope
|
||||
grows).
|
||||
|
||||
## Roster Federation Stats In CI
|
||||
|
||||
```task
|
||||
id: REUSE-WP-0015-T05
|
||||
status: done
|
||||
priority: low
|
||||
state_hub_task_id: "88f50eb3-9fba-413f-89aa-7b159f136520"
|
||||
```
|
||||
|
||||
**Done 2026-06-16:** CI informational steps for `stats --roster --federation-ready`
|
||||
and `report gaps` in `.gitea/workflows/ci.yml`.
|
||||
|
||||
Informational CI step (non-blocking until T01 complete):
|
||||
|
||||
```bash
|
||||
reuse-surface stats --roster registry/federation/local-repo-roster.yaml \
|
||||
--federation-ready --format json
|
||||
```
|
||||
|
||||
Emit summary to CI log; fail or warn when `publish_fail > 0` once T01 is marked
|
||||
done (operator choice documented in workplan).
|
||||
|
||||
## Refresh SCOPE And Gap Analysis
|
||||
|
||||
```task
|
||||
id: REUSE-WP-0015-T06
|
||||
status: done
|
||||
priority: low
|
||||
state_hub_task_id: "fd25e504-21b7-4e9f-841c-cfa20318be33"
|
||||
```
|
||||
|
||||
**2026-06-16 (visibility fix):** `SCOPE.md` and `docs/IntentScopeGapAnalysis.md`
|
||||
updated for 59/60 publish pass, dedup complete, compose acceptance. Final T06
|
||||
note when `tegwick-control` resolves.
|
||||
|
||||
On workplan completion:
|
||||
|
||||
- Update `SCOPE.md` §What Is Not Possible Yet and §Current State
|
||||
- Update `docs/IntentScopeGapAnalysis.md` — close priorities 25–27; propose new
|
||||
priorities if hub automation or R4 telemetry remain
|
||||
- Add `history/` snapshot if vector or success-criteria score changes materially
|
||||
|
||||
---
|
||||
|
||||
## Acceptance
|
||||
|
||||
- [x] Roster `publish_fail: 0` (60/60)
|
||||
- [x] `federation compose` — 0 duplicate-ID warnings
|
||||
- [x] `federation compose` — 0 remote fetch warnings for `required: true` sources
|
||||
- [x] reuse-surface index retains only meta-registry entries
|
||||
- [x] Planning gap report or standardization tracker shipped (T03)
|
||||
- [x] `SCOPE.md` and `IntentScopeGapAnalysis.md` reflect closed gaps
|
||||
|
||||
## Out of scope
|
||||
|
||||
- Multi-domain federation (non–`helix_forge`)
|
||||
- Hub Postgres / multi-replica implementation (documented only)
|
||||
- Automatic hub polling/webhooks (future workplan)
|
||||
- Mandatory `establish --discover` for empty scaffolds
|
||||
|
||||
## Progress log
|
||||
|
||||
| Date | Event |
|
||||
|---|---|
|
||||
| 2026-06-16 | WP-0015 created from `history/2026-06-16-intent-scope-assessment.md` |
|
||||
| 2026-06-16 | T02 dedup (3 local entries); T03 report gaps; T05 CI; T01 operator-blocked |
|
||||
| 2026-06-16 | Follow-up: hub-core publish pass (12 blockers); T06 partial doc refresh |
|
||||
| 2026-06-16 | Visibility fix: 59/60 publish pass; whynot org URLs; activity-core dedup; T04 done |
|
||||
| 2026-06-16 | Org transfer to coulomb: 60/60 publish pass; compose 20 caps / 0 dup / 0 fetch warnings; T01+T06 closed; WP-0015 finished |
|
||||
Reference in New Issue
Block a user