Validation Pack: AOR-3, versioning guarantees

Unit: applied-ontology-readiness Plan section: AOR-3 Decision: ADR-A86 addendum, items 1 to 3

Invariant

A version IRI identifies one content of its document. Every published ontology document (under spec/ or vocab/) carries one, and a content change never lands under an unchanged version IRI.

Test cases

ID Given / When / Then Level +/-
AOR3-01 spec document content changed, version unchanged / check / flagged L1 -
AOR3-02 content and version changed together / check / passes L1 +
AOR3-03 untouched repository / both checks / pass L1 +
AOR3-04 spec document without a version IRI / unversioned check / flagged L1 -
AOR3-05 new vocab document without a version IRI / unversioned check / flagged L1 -
AOR3-06 example document without a version IRI, content changed / both checks / pass L1 +
AOR3-07 new spec document with a version IRI / both checks / pass L1 +

Each test builds a throwaway git repository as its base ref.

One command

mise run check:ontology-versioning

Pass: 7 passed, then 33 in-scope ontology document(s) checked against HEAD: no unbumped changes.

Artefacts to inspect

Adversarial probe (run by the agent)

Replacing requires_version_iri’s body with return False failed AOR3-04 and AOR3-05. Disabling the unchanged-version comparison failed AOR3-01. Restoring the file returned 7 passes.

Deviations from the plan

Deliberate non-coverage