Schemas
- Every CLI command that emits JSON stamps
schema_kindandspec_version. helix schema manifest --out schemas.jsonexports the full registry.helix schema diff --base old.json --target new.jsonshows additions/removals.helix viz --schemaprints contracts plus sample payloads.
Treat schemas like APIs: bump the version, document diffs, and add workflow validation (schema: {kind, output}) whenever a step produces JSON.
v1.x compatibility policy
For any schema with spec_version/specVersion in the v1.* line, we treat it as a stability contract: you may add optional fields, but you must not delete/rename fields, change types, or change semantics of existing fields; if behavior must change, bump the spec version and keep the old reader/writer working (schema diffs must be reviewed in a dedicated PR that runs the full CI matrix).