singularity-forge/docs/dev/json-contracts.md

14 lines
505 B
Markdown
Raw Normal View History

# JSON Contracts
SF uses `schemaVersion` for JSON files whose shape is owned by SF runtime code.
Use a numeric value starting at `1`.
Use `version` only for package, plugin, extension, or release versions. Do not
use `version` as a schema marker for SF-owned data.
For map-like JSON where top-level keys are domain entries, put the marker under
`_meta.schemaVersion`.
The `check:versioned-json` script parses every tracked `.json` file and enforces
`schemaVersion` on the SF-owned contract allowlist.