Status API

This page is a short honest summary of what it is and the key decisions, not a full case study. Source status: write-up only: the code stays private; this page is the public artifact. Withheld: The deployment and the live feeds it aggregates stay private; the wire contract and design are documented here.

The central status service the automations push events to and everything reads a summary from: the spine of the Operator Loop's telemetry.

always-on box

A small Hono/TypeScript service: automations POST events, and the dashboards and clients read one summary back. One Zod-typed wire contract, running on my own network over Tailscale. The figures you see on this site are a hand-picked summary of it, not a live readout.

Ship history

An outage age the buffer could not grow past

The daily briefing printed two different ages for one broken automation, two blocks apart on the same page. The shorter figure measured the horizon of the 500-event ring that almost everything reads, not the outage, so a problem of any age reported roughly the ring's own span and then stopped growing while the incident kept aging. The onset the durable archive remembers is now carried alongside it, without re-keying the value that acknowledgements and the transition journal use as an episode's identity. Reliability rows gained the counts they were judged on over the whole record, so a source that has never once reported success reads differently from one that regressed to the same zero, and a floor loosened by hand now records why and proposes lifting itself once its source recovers.


← all projects