Consolidate frontmatter schema and contract into one schema.ts per entity
Status: closed/done · Impact: medium · Complexity: medium
The substrate landed each entity’s contract in a separate contract.ts next to
its frontmatter schema, splitting one entity’s validation definition across two
files. Consolidate them so each <type>/schema.ts is the single home for both
the frontmatter Zod schema and the markdown contract.
Acceptance criteria
Section titled “Acceptance criteria”- Each
<type>/schema.tsexports both<Type>Schemaand<Type>Contract. - The 11 separate
contract.tsfiles are removed. - All contract consumers and the registry resolve against the consolidated
schema.tsexports. -
bunx tsc --noEmitis clean and the contract/substrate tests stay green.
Out of scope
Section titled “Out of scope”- Changing any contract’s validation rules — this is a file-layout consolidation only.