open-cmis-tck, open-reuse, ops-bridge, phase-memory, railiance-apps, railiance-cluster, railiance-enablement, railiance-fabric, railiance-forge, railiance-infra, railiance-platform, repo-scoping, the-custodian, user-engine, vantage-point, vergabe-teilnahme, whynot-design. the-custodian entry deliberately scoped to its non-confidential runtime/tools/ surface only, given the repo's NDA notice. vergabe-teilnahme honestly registered at D1/C0 given its own unfilled SCOPE.md. T04 complete: coverage 44/61 -> 61/61 (48 has-capability, 13 explicit no-capability, 0 unclassified). All 50 sibling-repo commits across three cohorts remain local only, pending T05 human review and push. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
10 KiB
id, type, title, domain, repo, status, owner, topic_slug, created, updated, state_hub_workstream_id
| id | type | title | domain | repo | status | owner | topic_slug | created | updated | state_hub_workstream_id |
|---|---|---|---|---|---|---|---|---|---|---|
| REUSE-WP-0017 | workplan | Capability coverage campaign: seed or explicitly close all empty scaffolds | infotech | reuse-surface | active | claude-code | helix-forge | 2026-07-06 | 2026-07-06 | a2d83504-fcd0-4561-8688-b77a01cb7f06 |
Capability coverage campaign: seed or explicitly close all empty scaffolds
The federation infrastructure is complete (61/61 repos established and hub-registered, WP-0014/0015), but 51 of 61 roster repos publish zero capabilities. The federated index carries 24 capabilities, concentrated in a handful of custodian-core repos. A registry that answers most queries with "nothing found" trains agents to stop querying — content coverage is the prerequisite for the consumption loop (REUSE-WP-0018) and the automation loop (REUSE-WP-0019).
Goal: every roster repo either publishes ≥1 capability entry or carries an
explicit, machine-readable no-reusable-capability marker with a rationale.
"Empty" becomes informative instead of ambiguous.
Baseline: 10/61 repos with ≥1 capability; 51 empty scaffolds; 7 seed-ready
(gap report 2026-07-06).
Target: 0 ambiguous scaffolds; coverage ratio surfaced in report gaps
and CI.
Approach
- Classify before drafting. Sweep the 51 empty scaffolds and bucket each:
has-capability(draft entries) vsno-capability(mark explicitly — experiments, forks, canon/docs-only repos, probes). - Draft with existing tooling.
reuse-surface establish --discover+ llm-connect per repo produces first-pass entries at honest low maturity (typically D1–D2 / A0–A1); no invented evidence. - Human review gate. Drafts land as branches/commits flagged for review; nothing publishes to the federated index without a human pass (same pattern as CUST-WP-0050 repo classification).
- Publish + recompose. After review: publish-check, hub state refresh,
federation compose, catalog/graph regeneration.
Dependencies
| Dependency | Owner | Notes |
|---|---|---|
| llm-connect | llm-connect | drafting backend for establish --discover |
| local-repo-roster.yaml | reuse-surface | 61-repo roster, sweep source of truth |
| .repo-classification.yaml | the-custodian | classification signals for the no-capability bucket |
| config-atlas publish fix | config-atlas | 303 publish blocker (T06) |
| Sibling repo write access | Bernd | drafts commit into sibling checkouts at ~/<slug>/ |
Design decisions
no-capabilitymarker format: aregistry/NO_CAPABILITIES.mdfile with frontmatter (reason,reviewed,revisit) in the sibling repo, plus acapability_status: nonefield in the roster row.report gapstreats marked repos as resolved, not empty.- Honest maturity floor: first-pass entries never claim above D2/A2/C2/R1 without cited on-disk evidence (WP-0016 evidence gates apply).
- Batch execution: repos are processed in cohorts of ~10 via
/ralph-workplan; each cohort ends with validate + gap-report delta.
Extend Gap Report And Roster For Explicit No-Capability Status
id: REUSE-WP-0017-T01
status: done
priority: high
state_hub_task_id: "90fe5bf2-7c03-4af5-bc4a-e5d608c7e879"
- Add
capability_status: has | none | pendingto roster schema andlocal-repo-roster.yamlhandling (defaultpendingfor empty scaffolds) report gaps: split "Empty scaffolds" into "Unclassified" and "Explicitly none (n)"; add a coverage ratio headline (repos with capabilities or explicit none / total)- Define
registry/NO_CAPABILITIES.mdtemplate intemplates/ - Pytest coverage for both report paths
Classification Sweep Of The 51 Empty Scaffolds
id: REUSE-WP-0017-T02
status: done
priority: high
state_hub_task_id: "17ea8783-1344-4d04-8f7f-f93859ae4a20"
- For each empty-scaffold repo: read INTENT/SCOPE/README + top-level layout,
bucket
has-capabilityvsno-capabilitywith a one-line rationale - Output:
history/2026-07-06-coverage-classification.mdtable (repo, bucket, rationale, candidate capability ids for the has bucket) — done, 37 has-capability / 13 no-capability / 0 missing - Cross-check against
.repo-classification.yamlwhere available - Human review checkpoint: Bernd confirms the bucket split before T03/T04
Mark No-Capability Repos
id: REUSE-WP-0017-T03
status: wait
priority: medium
state_hub_task_id: "3465cebf-84f9-4d67-8d8a-cca9771f2f06"
For each confirmed no-capability repo:
- Write
registry/NO_CAPABILITIES.mdfrom template into the sibling checkout — done, 13/13 - Set
capability_status: nonein the roster — done - Commit in sibling repo with a uniform message referencing this workplan — done, 13 commits made locally; push held back pending explicit confirmation (auto-mode declined to push to 13 sibling repos' default branches without it)
Draft Capability Entries For Has-Capability Repos
id: REUSE-WP-0017-T04
status: done
priority: high
state_hub_task_id: "20d67516-331b-46bd-8a90-1170139313c2"
Note: establish --discover requires a running llm-connect backend,
which isn't up on this workstation; spinning up a new inference service was
out of scope for this task. Entries are instead drafted directly by the
implementing agent, grounded in each repo's actual README/docs/tests (no
invented evidence), which better matches the "no invented evidence" design
principle anyway.
Cohort 1 (10/37 done): artifact-store, can-you-assist, citation-engine, citation-evidence, email-connect, guide-board, hub-core, info-tech-canon, infospace-bench, inter-hub. All validate; no overlap with the existing 24 federated capabilities. Committed locally in each sibling repo (push held for T05). Coverage 24/61 -> 34/61.
Cohort 2 (20/37 done): issue-core (migrated its existing
CAPABILITY-issue-tracking.yaml into the standard registry location rather
than drafting fresh), kaizen-agentic, key-cape, kontextual-engine,
llm-connect, markitect-filter, markitect-main (registered honestly as a
superseded legacy platform pointing at its three successor repos, not a
forward-looking target), markitect-quarkdown, markitect-tool, net-kingdom.
All validate; no overlap with existing federated capabilities. Committed
locally (push held for T05). Coverage 34/61 -> 44/61. Also fixed a stale
empty_scaffold_count >= 40 test threshold in tests/test_reports.py —
no longer meaningful once the coverage campaign started shrinking that
number by design.
Cohort 3 / final (17/17 done): open-cmis-tck, open-reuse, ops-bridge, phase-memory, railiance-apps, railiance-cluster, railiance-enablement, railiance-fabric, railiance-forge, railiance-infra, railiance-platform, repo-scoping, the-custodian, user-engine, vantage-point, vergabe-teilnahme, whynot-design. All validate; no overlap with existing federated capabilities. Committed locally (push held for T05). Coverage 44/61 -> 61/61 — full coverage, T04 complete.
Notable calls in this cohort:
-
the-custodian: repo root is confidential/proprietary (NDA notice in its README). Entry is deliberately scoped only to the non-confidential
runtime/agent framework andtools/repo-classification scripts; canon/memory content is explicitly excluded from the entry'sincludesand called out inconsumer_guidance.not_recommended_for. -
vergabe-teilnahme: its own
SCOPE.mdis an unfilled template, so discovery is honestly D1/C0 — flagged inknown_limitationsthat filling in SCOPE.md is the natural next step before further promotion. -
markitect-main (cohort 2) and vantage-point/railiance-forge patterns repeat here: several repos (open-reuse, vantage-point) have a stale repo-seed-template README; SCOPE.md/INTENT.md were used as the authoritative source instead, noted per-entry.
-
railiance-enablement, railiance-apps, the-custodian: each surfaced tooling directly relevant to REUSE-WP-0019 (Forgejo promotion script, forgejo-smoke.sh, patch-forgejo-remote-urls.sh) — worth cross- referencing when that workplan starts its host-migration inventory (T01).
-
reuse-surface establish --discoverwith llm-connect per repo -
Manual tightening: id namespace (
capability.<domain>.<verb>), scope boundary, honest vectors, relations to existing federated capabilities -
reuse-surface validate+overlapscheck per cohort (no duplicate semantics vs the existing 24) -
Drafts committed in sibling repos, flagged for human review; roster
capability_status: has
Human Review And Publish Pass
id: REUSE-WP-0017-T05
status: wait
priority: high
state_hub_task_id: "56b68b6f-4dca-4fed-925f-d20783dc40d9"
- Bernd reviews drafted entries per cohort (maturity honesty, scope, ids)
- After approval: sibling repos push;
establish --publish-checkper repo; hub registrations refreshed where raw URLs changed reuse-surface federation compose+ catalog + graph regeneration in this repo
Fix config-atlas Publish Blocker
id: REUSE-WP-0017-T06
status: todo
priority: medium
state_hub_task_id: "1a04b60a-b982-4b5f-ae20-955bc88d4204"
- Diagnose the 303 on the config-atlas raw index URL (same block class as the earlier state-hub/feature-control issue)
- Note: likely interacts with the Gitea→Forgejo host transition (REUSE-WP-0019-T01); if the new Forgejo raw URL scheme fixes it, record that and close here
- Target: 61/61 publish pass
Closeout: Coverage Metrics, Docs, SCOPE Update
id: REUSE-WP-0017-T07
status: wait
priority: low
state_hub_task_id: "24ac37bf-2509-4077-9aa3-c09a599dd644"
report gapsshows 0 unclassified scaffolds; record final coverage ratio- Update
SCOPE.mdCurrent State (capability count, coverage), regeneratedocs/CapabilityCatalog.md, graph, search catalog history/milestone note; progress event + fix-consistency
Acceptance
- Every roster repo is
hasornone— zeropending - All
nonerepos carry a reviewedregistry/NO_CAPABILITIES.md - Federated index capability count reflects the seeded entries; 0 collision warnings
- 61/61 publish pass (config-atlas unblocked)
- Coverage ratio visible in
report gapsand CI output - No entry claims maturity without on-disk evidence citations
Out of scope
- Consumption/plan-check tooling (REUSE-WP-0018)
- Forgejo webhooks/automation (REUSE-WP-0019)
- Maturity promotions beyond honest first-pass levels
- Multi-domain federation (all entries remain
helix_forge)