Fidelity badges¶
Every number on every showcase page carries one of five badges. The badge is the contract: a reader can trust the numeric value to the extent the badge promises, and no further.
| Badge | Meaning | Example today |
|---|---|---|
validated |
Physics or estimator output that has been compared against a published reference or a measured device trace. | None at v0.1. |
filtered |
A substantive subsystem feeding a recursive estimator with a real predict and update step and a documented covariance bound. | Power SoC (Kalman over SoC and voltage). APU per-source (parallel Kalman). |
parametric |
A substantive subsystem with profile-driven physics, but the estimator on top is a passthrough or stub. | Inference local path (profile-derived latency / energy / capacity, no estimator). Position estimator (v0.1 EKF passthrough; full constant-velocity EKF is BL-026). Comms estimator (per-link belief tracker; full particle filter is BL-030). |
stub |
A skeleton that returns plausible constants or simple time-additive values. No dynamics, no calibration. | None on the development line as of 2026-05-23; the L1 subsystem rollout closed the previous stub posture. The live VM still serves stubs because origin/main is behind. |
planned |
A surface mentioned in the architecture or the backlog that does not yet exist as code. | The self-model assess wiring (BL-018), the scenario injectors (BL-014), the PMU/PDU subsystem (BL-005b). |
The badges map directly onto the substance findings in the in-house
audit (AUDIT.md) and the systems review at docs/review-2026-05-21.md.
A subsystem moves up the ladder only when an ADR or a backlog item
records the move; the showcase pages are reviewed at the same time.
Current subsystem mapping¶
Reflects the development branch at revision 02f2062. The live VM lags
this mapping until the L1 rollout (PRs #29..#37) merges to main.
| Subsystem | Badge | Notes |
|---|---|---|
| power | filtered |
Li-ion + Peukert + SoC Kalman; per-cell internal resistance and thermal derate from profile. |
| apu | filtered |
Solar MPPT, methanol fuel cell, vehicle tether, USB-C PD; per-source Kalman. |
| state machine | filtered |
Explicit transition table, ADR 0004. Includes SC-2 thermal headroom and low-power guards (ADR 0018). Strictly speaking not an estimator; included because its outputs are auditable. |
| comms_state | filtered |
Derived each tick from the live per-link envelope; aggregator drives the FSM state.comms_state. |
| operator_state | parametric |
Carried by the FSM; threshold logic over biometrics. Physiology grounding (BL-040) is planned. |
| thermal | filtered |
Two-state lumped model (junction + enclosure); per-channel Kalman with shrinking covariance (BL-005, BL-028). |
| compute | filtered |
Load fraction with profile-driven draw curve; per-channel Kalman over load and draw (BL-007, BL-031a). |
| storage | filtered |
NAND wear and capacity accounting with write amplification; per-channel Kalman (BL-008). |
| sensors | filtered |
Temperature, humidity, barometric pressure; authoritative ambient source. Multi-channel Kalman with bounds validation (BL-009). |
| position | parametric |
Dead-reckoning + GNSS fix gating + IMU drift; v0.1 EKF passthrough validates NaN/Inf. Full constant-velocity EKF lands with BL-026. |
| biometrics | filtered |
Heart rate, core temperature, hydration, cognitive load with physiological clamps. Multi-channel Kalman (BL-011, BL-029). Physiology grounding (BL-040) is planned. |
| comms | parametric |
Per-link envelopes drive FSM state each tick; per-link belief tracker. Full transition particle filter (BL-030) is planned. |
| inference | parametric |
Local-path with profile-derived latency / energy / capacity; cloud path is BL-013 follow-up, real local model is BL-043. |
| self model | planned |
Capability claims wired in BL-018. |
How badges roll up¶
A scenario page rolls up to the strongest badge that every plotted
metric on that page can honestly claim. If a scenario plots SoC
(filtered) and thermal (stub), the page header shows stub
because the weakest link sets the contract. The per-metric badges on
the same page remain individual so a reader can see which metrics are
trustworthy and which are decoration.
The covariance reporting rule follows from this: a stub estimator
reports its covariance as null on the showcase, never as a numeric
zero. The same value can appear as a numeric zero inside the engine
without contradicting this rule; the showcase is the seam where the
substance level becomes visible.
Revisit triggers¶
This page is reviewed whenever a backlog item moves a subsystem from
stub to parametric or filtered, whenever an ADR adds or removes
a subsystem, and whenever the audit at AUDIT.md is refreshed.