Problem
Blueprints in /lib/translator/blueprints/ are community-contributed, but there's no visible schema version field. If the blueprint format changes (new placeholder syntax, new formatter type, etc.), every existing community blueprint — and any third-party tooling built against the CLI's --spec format — breaks silently with no clear error pointing at the real cause.
Proposed work
Add a required schemaVersion field to the blueprint format and the CLI spec format.
Implement a version check in registry.ts and in open-audit-cli that produces an explicit "this blueprint targets schema v1, runtime expects v2" error instead of a generic parse failure.
Document the versioning policy (semver-style: when is a bump required) in CONTRIBUTING.md.
Acceptance criteria
A blueprint missing schemaVersion is rejected with a specific, actionable error message, not a silent failure or generic exception.
A deliberate version mismatch between a test blueprint and the registry produces a clear diagnostic, verified by a test.
CLI and main registry share the exact same version-check logic (no drift between the two validation paths).
Problem
Blueprints in /lib/translator/blueprints/ are community-contributed, but there's no visible schema version field. If the blueprint format changes (new placeholder syntax, new formatter type, etc.), every existing community blueprint — and any third-party tooling built against the CLI's --spec format — breaks silently with no clear error pointing at the real cause.
Proposed work
Add a required schemaVersion field to the blueprint format and the CLI spec format.
Implement a version check in registry.ts and in open-audit-cli that produces an explicit "this blueprint targets schema v1, runtime expects v2" error instead of a generic parse failure.
Document the versioning policy (semver-style: when is a bump required) in CONTRIBUTING.md.
Acceptance criteria
A blueprint missing schemaVersion is rejected with a specific, actionable error message, not a silent failure or generic exception.
A deliberate version mismatch between a test blueprint and the registry produces a clear diagnostic, verified by a test.
CLI and main registry share the exact same version-check logic (no drift between the two validation paths).