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
| Feature | Description |
|---|---|
reqs create --idempotency-key | Prevents 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 render | diag render --format mermaid no longer outputs ==> connectors or style lines |
uht-substrate 0.5.2
| Feature | Description |
|---|---|
entities deduplicate --namespace | Find and remove entities that leaked from global corpus into a namespace. Dry run by default, --apply to execute |
facts reconcile --namespace --tenant --project | Compare 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:
| Dimension | Score | Notes |
|---|---|---|
| Decomposition architecture | A | Sound boundaries, realistic component counts |
| Regulatory alignment | A | SOLAS, IMDG, NFPA, DfT TAG, ISO standards |
| Trace linkage completeness | A- | Consistent derives/verifies chains |
| Rationale quality | B- | Good content but created post-hoc — v7.1 addresses this |
| Verification coverage | B | Adequate for interfaces; subsystem coverage variable |
| Duplicate prevention | C | 2-5 per system — v7.1 idempotency keys address this |
| QC discipline | A | Rigorous gate enforcement; 100% rationale at completion |
Implications
- From session 295 onward, decomposition sessions create rationale inline and use idempotency keys.
- QC sessions will run quality analyze, verify matrix, baseline diff, namespace dedup, and fact reconciliation.
- The Cybersecurity Operations Centre (currently in progress) will be the first system under v7.1.
- 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
| Component | Version | Notes |
|---|---|---|
| airgen-cli | 0.8.0 | Up from 0.7.0 |
| uht-substrate | 0.5.2 | Up from 0.5.0 |
| Session protocol | 7.1 | Up from 7.0 |
| Idempotency | New | —idempotency-key on reqs create |
| Inline rationale | New | Step 6b in Flow B |
| Quality analyze | New | Flow C step 3 |
| Verify matrix | New | Flows C, D, E |
| Baseline diff | New | Flows C, D |
| Namespace dedup | New | Flow C step 1 |
| Fact reconciliation | New | Flow C step 1 |