Production specification — CAMS regime classifier
JUNO v1.2-Final is the production specification for the CAMS regime classifier, adopted following the 3,002 society-year blind-corpus test of v1.1 (24 model-scored societies, 24,016 node-years). It is backwards-compatible with all JUNO v1.1 data; no re-scoring of prior panels is required. Two substantive changes were made: a mandatory numerical rounding policy resolving a floating-point reproducibility defect, and a classifier simplification removing a dead-code arm confirmed unreachable on the full blind corpus.
Input scores carry one decimal place, so aggregate values land exactly on classifier thresholds routinely (e.g. V_min = 4.0). IEEE-754 arithmetic can represent such values as 3.9999999999999996, making strict-inequality comparisons path-dependent: the same data yields different regime labels depending on whether values pass through a file round-trip. This was observed on three society-years in the blind corpus. Without a declared rounding policy, regime labels are not reproducible across implementations.
Precedence order (highest → lowest; evaluation order, not severity ranking):
Stable Adaptive is tested before Strained because Strained is the residual band — with the V̄ ≥ 4 floor it spans everything from mild strain to near-Stable profiles that narrowly miss a Stable sub-condition, so it must be evaluated last.
| Regime | Conditions (v1.2) | Change from v1.1 |
|---|---|---|
| Freeze / Collapse | V̄ < 0 AND V_min < −3 AND B̄ < 0.15 | None |
| Systemic Crisis | V̄ < 6 AND V_min < 0 AND B̄ < 0.20 | None |
| Phantom Type II | s_min < −0.65 | None |
| Local Node Failure | V_min < 4.0 only | s-arm (s_min ≤ −0.80) deleted — unreachable under precedence: every case satisfying it is captured by Phantom Type II or higher. Zero firings on 3,002 blind society-years. |
| Stable Adaptive | V̄ > 10 AND V_min > 5.0 AND B̄ > 0.28 AND s_min > −0.25 | None |
| Strained | 4 ≤ V̄ ≤ 10, OR V̄ > 10 failing any Stable sub-condition | Floor lowered from V̄ ≥ 6 to V̄ ≥ 4 updated — coverage now provably complete for well-formed data |
| Unclassified | Anything remaining | Preserved as data-quality tripwire. Fires only on data-integrity failures or future operator changes. v1.1: 0.2% residual; v1.2: 0% on blind corpus. |
Blind corpus: 24 model-scored societies · 3,002 society-years · 24,016 node-years
| Quantity | Observed range |
|---|---|
| Vᵢ (node-level) | [−7.50, 23.00] |
| sᵢ (node-level) | [−2.50, +8.00] |
| s_min (year-level) | [−2.50, +5.40] |
| Bᵢⱼ | [0.025, 0.758] |
| B̄ (year-level) | [0.045, 0.722] |
| λ₂ | [0.268, 5.354] |
The v1.1 §4 figures (Bᵢⱼ max 0.657; λ₂ ∈ [0.379, 3.668]; sᵢ max +1.68) described the original calibration corpus only and are superseded as validation criteria.
λ₂ is a derived diagnostic, not an independent validator and not a classifier input.
On the blind corpus λ₂ orders all six regimes monotonically by severity:
However, λ₂ correlates with B̄ at r = 0.972 — near-mechanically, since for a dense 8-node graph λ₂ tracks n·(mean edge weight): λ₂/(8·B̄) = 0.83 ± 0.10. B̄ is itself a classifier input, so the ordering substantially restates the classifier's own thresholds. After regressing out B̄, residual ordering collapses for several contrasts; per-case separability is strong for Stable vs Strained (AUC 0.95) but weak for Phantom II vs LNF (AUC 0.63).
Because the v1.2 threshold adjustments were chosen by inspection of the 3,002-year blind corpus, re-running that corpus is a consistency check only. Genuine validation of v1.2 requires fresh holdout data, aligned with the prospective 2026–2028 monitoring programme.
Between-run reliability margins (±1 NV at year level, wider at node level) continue to apply to prospective work. Corpus sizes cited in this document are limited to directly auditable figures.
| Component | v1.1 | v1.2-Final |
|---|---|---|
| LNF s-arm | s_min ≤ −0.80 | Deleted — unreachable dead code |
| Local Node Failure | V_min < 4.0 OR s_min ≤ −0.80 | V_min < 4.0 only |
| Strained floor | V̄ ≥ 6 | V̄ ≥ 4 — provably complete |
| Unclassified | 0.2% residual on blind corpus | Preserved as tripwire; fires only on data-integrity failure |
| Numerical policy | Unspecified | Round aggregates to 6 dp before threshold comparison (mandatory) |
| §4 bounds | "Validated instrument bounds" | "Reference ranges from audited panels"; removed from validation criteria |
| λ₂ role | Supporting indicator; candidate core discriminator | Derived diagnostic only; circularity with B̄ documented |
| Validation framing | External-validation language | Operator coherence on model-generated panels; prospective validation open |
All gains from the v1.1 sign-preserving sᵢ correction are preserved: 31.8% of node-years carry negative activation, Phantom Type II fires (250 society-years under v1.2), and the June 2026 dead-code diagnosis remains resolved.