I1106 — The registries are views of the model, not separate discoveries
Make the typed registries — skills, rules, decisions, workflows, use cases, providers, capabilities — views over the one repository model, so that adding a valid artifact under a discoverable namespace registers it everywhere with no second edit.
BLOCKED wave 2 · p0 · implementation profile · parallel safe
Blocked. This issue cannot start until I1105 is done. The status is derived from that, not declared.
Objective
Make the typed registries — skills, rules, decisions, workflows, use cases, providers, capabilities — views over the one repository model, so that adding a valid artifact under a discoverable namespace registers it everywhere with no second edit.
Why
Registration by hand is the defect this repository has removed once per subsystem. Doing it once over one model is what stops the next subsystem from reinventing it.
Current state
Kinds are discovered by source classes and indexed; capabilities are declared and projected. The two are joined only in the composed graph, and other consumers still enumerate.
Desired state
Every registry is a projection of the model, and a new artifact appears in the CLI, the API, MCP, the Cockpit, the documentation and search without anything being listed.
Scope
- apps/majordomus-cli/src/capability/registry.rs
Out of scope
- A registry file that enumerates what discovery finds
- Changing what any kind means; this changes where it is read from
Dependencies
What waits on this
- I1107BLOCKED Discovery is deterministic, cached, and its cost is known
- I1108BLOCKED The desired integration is a value, and the plan is a diff
- I1117BLOCKED The hand-maintained lists are removed, not left running beside the derivation
Acceptance criteria
- Each registry is derived from the model, and no consumer builds its own
- Adding a schema-valid artifact under a discoverable namespace exposes it to every applicable consumer with no further registration, proved by a synthetic artifact in a test
- A malformed artifact fails loudly with its path and its schema violation rather than vanishing from a listing
- Ordering is deterministic, so two runs over one tree produce one answer
Validation
- cargo test --workspace --all-features
- majordomus generate --check
Evidence required
- registries_derived
- zero_registration
Evidence
None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.
Risk
Silent omission is the failure mode: an artifact that fails validation and simply does not appear is indistinguishable from one nobody wrote. It has to fail, not disappear.
Timeline
- started
- —
- verified
- —
- completed
- —
Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.
Canonical record: .ai/repo/project/issues/I1106.yaml. Read it back with majordomus plan show I1106.