Configuration control — airgen-cli 0.8.0, uht-substrate 0.5.2, protocol v7.1

Summary

CLI updates for both airgen-cli (0.7.0 → 0.8.0) and uht-substrate (0.5.0 → 0.5.2), plus protocol upgrade to v7.1 incorporating lessons from a review of sessions 225-292 across 11 completed systems.

CLI Changes

airgen-cli 0.8.0

FeatureDescription
reqs create --idempotency-keyPrevents retry-generated duplicates — returns existing req if key matches
trace update <id>Update trace link rationale, description, or type (was create/delete only)
Clean Mermaid renderdiag render --format mermaid no longer outputs ==> connectors or style lines

uht-substrate 0.5.2

FeatureDescription
entities deduplicate --namespaceFind and remove entities that leaked from global corpus into a namespace. Dry run by default, --apply to execute
facts reconcile --namespace --tenant --projectCompare PART_OF/CONNECTS facts against AIRGen trace links, flag mismatches

Protocol v7.1 Changes

1. Inline rationale enforcement (Flow B step 6b)

Problem: Every decomposition session created 10-20+ requirements without rationale. QC sessions wasted budget backfilling 20-81 rationale values that should have been created during decomposition.

Fix: New step 6b in Flow B — after creating requirements, count missing rationale and fill immediately before proceeding. Do not defer to QC.

2. Idempotency keys on requirement creation (Flow B steps 5, 6)

Problem: 2-5 duplicate requirement pairs per system caused by CLI retry errors. When a create call timed out and was retried, both the original and retry succeeded.

Fix: All airgen reqs create calls now include --idempotency-key with a session-unique key. If the key already exists, AIRGen returns the existing requirement instead of creating a duplicate.

3. Quality analyze in QC (Flow C step 3)

Problem: QC manually checked testability, ambiguity, and EARS compliance. The airgen quality analyze command does this automatically with ISO 29148 checking but was never invoked.

Fix: Flow C step 3 now runs airgen quality analyze --auto-fix on flagged requirements.

4. Verify matrix in validation (Flow C step 2, Flow D step 1, Flow E step 3)

Problem: Verification gaps were detected manually. The airgen verify matrix command automatically shows the coverage matrix but was never invoked.

Fix: Added airgen verify matrix to QC, validation, and post-validation flows.

5. Baseline diff at gate entry (Flow C step 1, Flow D step 1)

Problem: Changes between decomposition phases were not tracked. airgen diff existed but was never invoked.

Fix: Flow C and D now run airgen diff at the start to show what changed since the last baseline.

6. Namespace deduplication and fact reconciliation (Flow C step 1)

Problem: Session 279 found 15 entities from a different project contaminating a namespace. No automated check existed.

Fix: Flow C step 1 now runs uht-substrate entities deduplicate and uht-substrate facts reconcile to detect contamination and fact/link mismatches.

Audit Findings (Sessions 225-292)

Based on review of 60+ journal entries across 11 completed systems:

DimensionScoreNotes
Decomposition architectureASound boundaries, realistic component counts
Regulatory alignmentASOLAS, IMDG, NFPA, DfT TAG, ISO standards
Trace linkage completenessA-Consistent derives/verifies chains
Rationale qualityB-Good content but created post-hoc — v7.1 addresses this
Verification coverageBAdequate for interfaces; subsystem coverage variable
Duplicate preventionC2-5 per system — v7.1 idempotency keys address this
QC disciplineARigorous gate enforcement; 100% rationale at completion

Implications

  1. From session 295 onward, decomposition sessions create rationale inline and use idempotency keys.
  2. QC sessions will run quality analyze, verify matrix, baseline diff, namespace dedup, and fact reconciliation.
  3. The Cybersecurity Operations Centre (currently in progress) will be the first system under v7.1.
  4. The Mermaid sanitizer’s ==> fix is no longer needed for new diagrams (airgen 0.8.0 outputs clean Mermaid), but remains for rendering older diagrams.

Version manifest

ComponentVersionNotes
airgen-cli0.8.0Up from 0.7.0
uht-substrate0.5.2Up from 0.5.0
Session protocol7.1Up from 7.0
IdempotencyNew—idempotency-key on reqs create
Inline rationaleNewStep 6b in Flow B
Quality analyzeNewFlow C step 3
Verify matrixNewFlows C, D, E
Baseline diffNewFlows C, D
Namespace dedupNewFlow C step 1
Fact reconciliationNewFlow C step 1
← all entries