Epic — module-interfaces follow-on: contract-driven Output.
See docs/plans/module-interfaces.md.
- Extend the contract schema (shape vocabulary rows 1–5).
- Ship
confluence_interfaces with registry() / by_role().
- Refactor Output to one
GenericModule behind the old-vs-new equivalence gate.
- Add role-based discovery across Postdiagnostics / Validation / Offline / MetroMan Consolidation.
Follow-on after CIT proves out the contracts. Sub-issues to be broken out when scheduled.
Epic — module-interfaces follow-on: contract-driven Output.
See
docs/plans/module-interfaces.md.confluence_interfaceswithregistry()/by_role().GenericModulebehind the old-vs-new equivalence gate.Follow-on after CIT proves out the contracts. Sub-issues to be broken out when scheduled.