Task · TSO-0213

Distinguish absent telemetry from healthy states in generated panels

Description

Device security flags (per device) renders a long fallback sentence clipped across flag columns. The operator cannot reliably distinguish the flag state or read the absence explanation. Observed in a retained live render during TSO-0172 (comprehensive live dashboard audit); outside the approved loop33 fix set.

Acceptance Criteria

Definition of Done

Implementation Notes

Additional observed green unknown/absent states: Posture names dropped, Multiple simultaneous connections, Blocking incoming connections, Stale users (>30d), Pending exit-node shares, Unrecognized desired events, Requests delayed by the rate limiter and Metrics over cardinality cap. Object-store gaps clear and Object listing complete show the same absence explanation on contradictory red/green backgrounds. Long fallback text is also unreadable in some cards. Keep optional absence separate from health verdicts.

Source review also proves two logical state errors: Multiple simultaneous connections and Blocking incoming connections use count(base == 1), which is empty when observed bases are all zero; Undecodable objects (broken feed) uses an unanchored zero fallback although no object-store feed is selected. Preserve known-zero, positive and absent populations separately, rather than solving only colors.

Additional exact bindings: Pull-endpoint gather errors/s invents a fallback zero beside absent pull-endpoint telemetry; Requests delayed by the rate limiter, Posture names dropped and Metrics over cardinality cap use green for missing evidence. Object-store gaps clear/listing complete and Audit poll collector use health/fault backgrounds for absent optional feeds. Checkpoint disk and Object-store age compress prerequisite text until unreadable. Preserve independent source/config absence explanations and avoid inferring health from missing samples.

Exhaustive binding also observes Active sessions displaying No data in green. Preserve the empty-session source explanation while giving absence a neutral presentation.

References

View the source file on GitHub