Fifth slice — the first visualization.
Gap: checks rendered as rows; there was no at-a-glance timeline.
What changed: CheckStrip sits above the detail page’s check rows — one
cell per committed check, colored by outcome (pass=green, failing=red,
missed/unknown=grey), plus dashed gap cells for slot-grid positions with no
evidence. Missing observations render as holes, never interpolated green — the
strip is an evidence visualization, not a vibe. The cell model is a pure
TypeScript function so the DOM mapping is the only thing the browser test has
to believe.
Proof: the pause-gap spec pauses a monitor mid-run over real scheduled slots, resumes it, and asserts the strip shows a gap cell exactly where evidence is absent — a hole in the data renders as a hole in the picture.