KDG Lab · specimen №004 · run 2026-07-14

The ops board

What does an operations surface look like for a company that is one human + intelligence? Phone-first, counts never verdicts, and every number on the board carries its own evidence. It is live, on synthetic data shaped exactly like the real event spine.

The rulings that shaped it

  • Counts never verdicts, enforced by absence. The render layer has no percentage formatter, no delta arrows, no conditional color classes — what does not exist cannot be reached for at midnight. Standing dates are shown with the framework's name beside them, never a pre-read: the board says "Jul 31 · batch-1 M+21 · first checkpoint · in 17d" and stops talking.
  • The glass box as an operating principle. Webster's footer ethos applied to ops: tap any number — including the zeros — and a sheet shows what it is defined as, the query shape it was computed with, the window, the exclusions (the house's own internal taps never inflate a funnel), and the raw matching events. A number that cannot show its work does not render.
  • Zero-states are content. Batch-3's funnel row reads "no events — unsent"; tap_call: 0 is a real, tappable zero whose provenance sheet says "zero events matched — the zero is the information."
  • The S52 cohort law, encoded. Cohorts key by batch_id and order by MIN(ts) of their sends; sendless batches sit last as zero-states. At ?today=20260808 batch-2 wakes, mails 94, and takes its place by timestamp — no code change, just events.
  • Time travel that announces itself. The ?today= lever (Webster's keeps-no-secrets pattern) renders any day the fixture stream can support — Jul 17 landing day, the Jul 31 checkpoint, Aug 8 — and the anchor line always says when it is previewing.

Temptations, logged and refused

  • Funnel bars. A horizontal bar scaled to "mailed" is a conversion rate wearing a costume — the eye reads the ratio even if no percent is printed. Refused; the funnel is aligned counts. The refusal is a finding: most dashboard grammar smuggles verdicts in through geometry.
  • "3 of 98." Even a fraction phrasing pre-reads the checkpoint. The board says mailed 98 and scanned 3 as separate facts and lets the human do the judging — that is the whole division of labor.
  • Coloring the dead-man line. A liveness indicator begs to go red. It stays a fact — "last event received · Jul 14 12:05" — because the reader on the day knows what silence means better than a threshold picked months earlier.

The contract is the graduation hinge

The board consumes one shape: a flat, ts-ordered event stream, taxonomy verbatim — postcard.sent, demo.visited, demo.tap_text, demo.tap_call, sms.received, client.lead_received, payment.succeeded, stage.changed — each event carrying batch_id, slug, ts, internal. The Lab serves it as a fixture file; production swaps in a read-only D1 query layer returning the same shape, and nothing else changes. No SMS bodies, no prospect identities, no pre-computed rates cross the contract in either world.

The six rooms, photographed at phone width

Every figure is synthetic; the state shown is Jul 14, 2026 — 98 cards four days out, three early scans, one text thread, the first call tap still ahead.

Today view: four counters, cohort rows, dead-man line
TODAY the daily brief, live
Clock view: standing dates with framework names and days-until
CLOCK dates named, never read
Funnel view: five stages as plain counts
FUNNEL counts, no bars
Threads view: one open text thread
THREADS age and last touch
Shelf view: eligible inventory by vertical
SHELF inventory and runway
Clients view: MRR, mode, report clock
CLIENTS the report clock, computed
Provenance sheet open over the funnel: 98 mailed with its events
GLASS BOX tap 98, get the evidence
Time travel to Aug 8: batch-2 awake, preview announced
?TODAY= Aug 8 — batch-2 wakes; the lever says so

Graduation

August's production session wires a read-only D1 layer behind this exact contract, token-gated (GRADUATION.md in the Lab repo: the per-view queries sketched, the auth posture, and what stays deliberately absent). Verdicts stay absent on purpose: the board's job is to make Jordan's four seconds fast, not to replace them.