Dead-Sensor Masking & Imputation
A failed, saturated, or silent channel is masked and its value imputed from the sensor-topology graph, so the loop degrades gracefully instead of ingesting garbage.
Detecting a dead channel
A channel can fail many ways: an open feedthrough, a saturated front end, a stuck ADC code, or a slow drift into nonsense. Masking detects these by watching for flatlines, rail-pinned values, impossible rates of change, and disagreement with redundant neighbors. Once flagged, the sample is excluded from every downstream feature rather than silently averaged in.
The masking decision
| Live | In-range | Agrees w/ neighbors | Action |
|---|---|---|---|
| 1 | 1 | 1 | use |
| 1 | 1 | 0 | flag, cross-check |
| 1 | 0 | 0 | mask |
| 0 | 0 | 0 | mask + impute |
Imputation over the sensor graph
Diagnostics are not independent points; they sit at known positions with known physical coupling. The fabric represents them as a graph and lets a graph neural network (an L3 model) impute a masked channel from its neighbors — a flux loop from adjacent loops, an interferometry chord from its neighbors. The imputed value carries a lowered quality score so the twin trusts it less.
Why not just interpolate
- Linear interpolation ignores the physics coupling the graph model has learned; it fails where gradients are steep (the breeder's negative-triangularity edge, the burner's plug).
- The graph model preserves cross-channel structure, so an imputed magnetics value is still consistent with equilibrium reconstruction.
- Every imputation is logged in lineage: the twin can always see which inputs were real and which were reconstructed.
Machine-specific bounds
The physical bounds that define 'in-range' differ by machine: magnetics consistent with 9.66 MA and 16.84 T for the breeder, potential and density bounds for the burner's ambipolar well. The masking logic is shared; the thresholds are per-machine and versioned in the registry.