tcp.systems estate status

A snapshot, not a live prober. Every row below was measured once at 2026-11-10T12:48:44.160Z by the scheduled generator and is served as a static file. The badge recomputes in your browser from the snapshot's own timestamp; when it turns red the scheduler has not run and the rows are old.

fresh snapshot age 0s at generation time — the scheduler is keeping up; the page badge recomputes the age from the timestamp above, and shows stale past 600s budget 600s

Generated 2026-11-10T12:48:44Z · generation 20261110T124844Z-b40072d0 · a snapshot, not a live prober · stream /api/events connecting…

Surfaces — 13/15 up

servicestatushttphostAlatencymethodnote
ai Acumen gateway UP 200 ai.tcp.systems 194.180.36.11 54 ms https
apex Apex (tcp.systems) UP 200 tcp.systems 194.180.36.11 38 ms https
console Console UP 200 console.tcp.systems 194.180.36.11 36 ms https
auth Auth (Pocket ID) UP 200 auth.tcp.systems 194.180.36.11 42 ms https
status Status UP 200 status.tcp.systems 194.180.36.11 14 ms https
chat Chat UP 200 chat.tcp.systems 194.180.36.11 25 ms https
iptv IPTV DOWN 502 iptv.tcp.systems 194.180.36.11 155 ms https expected 200, got 502
studio Studio DOWN 200 studio.tcp.systems 194.180.36.11 29 ms https expected 302, got 200
search Search suite UP 200 search.tcp.systems 194.180.36.11 278 ms https
docs Docs UP 200 docs.tcp.systems 194.180.36.11 26 ms https
mcp MCP UP 200 mcp.tcp.systems 194.180.36.11 26 ms https
dns DNS page UP 200 dns.tcp.systems 194.180.36.11 25 ms https
radar Radar intel UP 200 radar.tcp.systems 194.180.36.11 23 ms https
massprox Massprox UP 200 massprox.tcp.systems 194.180.36.11 151 ms https
ui UI library UP 200 ui.tcp.systems 194.180.36.11 38 ms https

Criteria

idcriterionverdictevidence
C1capabilitypass15/15 surfaces measured at this snapshot; 0 declared and unprobed (no-probe contract)
C2entry-pointpassdist/api/status.json (+ /api/incidents.json) is emitted by the same run as the page, so the machine surface cannot drift from the rendered one
C4realtimepasspush source declared: SSE /api/events (server/status-events.mjs behind Caddy on the status host) pushes a `snapshot` event with the artifact's generated timestamp and rollup when the generator installs a new snapshot; the page reloads onto it. The rows remain a snapshot measured at `generated`, not a live prober.
C6dry-seampassone declaration (surfaces.json) -> one generator (gen/status-gen.mjs) -> one artifact set; the page reads the JSON, it does not probe
C3incident-feedpassstate/incidents.json is operator-curated and copied verbatim (the generator never rewrites it); 1 entr(y|ies) recorded