Validation Pack: AIR-1.1, drop the legacy contract module, create the layout

Unit: applied-insurance-reference Machine: S (Copilot Business). Branch: air/1.1-layout Plan and test cases: Phase 1 plan (AIR-1.1) Decisions: ADR-A98 (decisions 1, 5, 6, 8, and its addendum)

Invariant

The legacy module and its known defect are gone, no ontology or tool file refers to it, and the applied layer’s READMEs describe the layout of ADR-A98.

Test cases

The table in the plan section above. Each row’s result is recorded under Results at verification.

One command

Run from the repository root on machine R, after mise run build:ontology-catalog.

mise run check:ontology-catalog && mise run check:ontology-versioning && ! grep -rnE 'ontology/nsd|neuro-semantic/insurance/contract|structure-vocab' ontology tools

Artefacts to inspect

Deliberate non-coverage

No new module is created. insurance/common/ and classification/ are AIR-1.2.

Handoff

Written by the building machine when the work is committed. S could not run the command, so R runs it first.

Results

Run on machine R, 2026-09-26, on air/1.1-layout before its rebase onto main:

Check Result
mise run build:ontology-catalog no catalog changed: the legacy files had no root catalog entries
mise run check:ontology-catalog 57 tool tests passed, catalog consistent, known defects 3 → 2 (AIR11-01)
mise run check:ontology-versioning 28 in-scope documents (29 before), no unbumped changes, every version listed (AIR11-02)
search for ontology/nsd, neuro-semantic/insurance/contract, structure-vocab in ontology/ and tools/ no match (AIR11-03)
both READMEs against ADR-A98 agree, after one fix below (AIR11-04)

Fixes made on R:

  1. ontology/applied/README.md said spec/ and vocab/ carry a .version file. They are versioned by owl:versionIRI, and only shapes/ and projection/ carry .version. Corrected.
  2. tools/ontology_catalog.py: the _UNPARSEABLE constant, unused once its only entry went, is removed. Its tests pass (12).

After the rebase onto main (AIR-3.1 and the AIR-1.2 and AIR-3.2 briefs), clean, no conflicts:

Check Result
mise run build:ontology-catalog no catalog changed
mise run check:ontology-catalog 59 tool tests passed (57, plus AIR-3.1’s two examples), catalog consistent, 2 known defects
mise run check:ontology-versioning exit 0, 28 in-scope documents, no unbumped changes, every version listed
AIR11-03 search no match

Gate, run on R at the human’s request, 2026-09-26:

  1. Pack reviewed: AIR11-01 to 04 pin the invariant. The negative case (AIR11-03) is the one that matters, since a stale reference would keep the dropped namespaces alive.
  2. The command passes (above).
  3. Artefacts inspected: both READMEs agree with ADR-A98. The release tags the domain README cites (insurance-contract-v0.2.0, applied-insurance-shapes-v0.1.0) exist.
  4. Adversarial probe: putting the removed KNOWN_DEFECTS entry back makes python tools/ontology_catalog.py check exit 1 (“listed in KNOWN_DEFECTS … but no longer defective”). Restored, it exits 0.
  5. Sign-off in LOG.md is the human’s.