module.json Lint Rules
1. Required Top-Level Fields#
Every module.json MUST contain:
modulerolesanalyzer_layerfilesaicitation
2. Module Block Rules#
module.nameMUST be unique across the repo.module.versionMUST follow semantic versioning:MAJOR.MINOR.PATCH.module.summaryMUST be one sentence.module.purposeMUST be one paragraph.module.keywordsSHOULD contain 5–12 items.
3. Roles Block Rules#
engine,profile,signature,diagnostic,map,example,indexMUST exist.- Roles MUST describe the function of files in this module.
- Roles SHOULD NOT duplicate each other.
4. Analyzer Layer Rules#
operatorMUST list all operator families used in this module.driftMUST list all drift types defined in d_Capture.md.regimeMUST match the regime tags used in d_Classify.md.dimensionalMUST include macro, micro, hybrid, cosmic, extreme-curvature.
5. Files Block Rules#
- All file paths MUST exist in the directory.
READMEMUST point toREADME.md.
6. AI Metadata Rules#
ai.moduleMUST matchmodule.name.ai.versionMUST matchmodule.version.ai.licenseMUST be “Open educational use permitted”.
7. Citation Rules#
citation.authorMUST be the module’s primary author.citation.publication_dateMUST be a year.citation.titleMUST match the module’s identity.
8. Coherence Rules#
- Drift types MUST match operator families.
- Examples MUST reference operators defined in d_Operators.md.
- Paper MUST reference examples from d_Examples.md.
9. Style Rules#
- JSON MUST use 2-space indentation.
- Keys MUST use lower-case with hyphens only where needed.
- No trailing commas.
Following these lint rules ensures module.json files remain consistent across the TriadicFrameworks ecosystem.
