{"kind":"crawlcheck-status","generated_at":"2026-10-13T08:48:06.380Z","overall":"degraded","components":[{"id":"site","name":"Website and API","status":"operational","detail":"Serving now; this build went live 2026-10-11 18:17 UTC","build":"e7dadc5fed0bfc6a"},{"id":"scans","name":"Scans","status":"operational","detail":"37 scans in the last 24 hours, 2 in the last hour; free scans open (0 of today's 1500)","scans_1h":2,"scans_24h":37,"free_lane":"open"},{"id":"signing","name":"Signed answers and receipts","status":"operational","detail":"Signing with key 1hHmE3fo1rg5…","kid":"1hHmE3fo1rg5Ig70wuFtJ5wBc7G-sUTgUJkxyPWFRps"},{"id":"seal","name":"Daily Bitcoin seal","status":"operational","detail":"Latest sealed day 2026-10-12","last_sealed":"2026-10-12"},{"id":"backup","name":"Backup and restore test","status":"operational","detail":"Last backup 2026-10-12 (2045232 keys); restore test passed","last_backup":"2026-10-12","restore_test_ok":true},{"id":"selftest","name":"Security self-test","status":"operational","detail":"97 of 97 checks passed, 30 minutes ago","passed":97,"total":97},{"id":"slo","name":"Agent lookups (Resolve and preflight)","status":"degraded","detail":"Resolve answers: 100% (target 99.9%); Resolve answers for a measured domain within 300 ms: 95.8% (target 95%); Preflight decisions: 100% (target 99.9%); Preflight decisions within 300 ms: 81.5% (target 95%)","slos":[{"id":"resolve_availability","status":"met","measured":0.9998800959232614},{"id":"resolve_latency","status":"at_risk","measured":0.9580335731414868},{"id":"preflight_availability","status":"met","measured":1},{"id":"preflight_latency","status":"missed","measured":0.814748201438849}]},{"id":"breakglass","name":"Break-glass owner access","status":"operational","detail":"last test passed 2026-10-08","last_test":"2026-10-08T15:59:58.839Z","ok":true},{"id":"deploy","name":"Deploy provenance","status":"operational","detail":"serving version deployed by the repository workflow (dax1, emmanuelorta)","version_id":"a0b27a0e-2c79-4841-b2b1-093d95552111","attested":true},{"id":"observers","name":"Outside observers","status":"operational","detail":"2 of 4 reported in the last 24 hours","reporting_24h":2,"known":4}],"slo":{"kind":"crawlcheck-slo","generated_at":"2026-10-13T08:48:06.380Z","window_days":30,"slos":[{"id":"resolve_availability","objective":"Resolve answers without a server error","target":0.999,"window_days":30,"samples":8340,"good":8339,"measured":0.9998800959232614,"measured_interval":{"k":8339,"n":8340,"share":1,"low":0.999,"high":1,"level":0.95,"method":"Wilson score interval"},"settled":"met at 95% confidence","status":"met","error_budget":{"allowed_bad":8.34,"spent":1,"remaining":88},"burn_rate_24h":0,"latency_ms":{"p50":202,"p95":294},"wire_ms_p95":398},{"id":"resolve_latency","objective":"Resolve answers for a measured domain within 300 ms in the Worker","target":0.95,"window_days":30,"samples":8340,"good":7990,"measured":0.9580335731414868,"measured_interval":{"k":7990,"n":8340,"share":0.958,"low":0.954,"high":0.962,"level":0.95,"method":"Wilson score interval"},"settled":"met at 95% confidence","status":"at_risk","error_budget":{"allowed_bad":417,"spent":350,"remaining":16.1},"burn_rate_24h":3.11,"latency_ms":{"p50":202,"p95":294},"wire_ms_p95":398},{"id":"preflight_availability","objective":"Preflight decisions without a server error","target":0.999,"window_days":30,"samples":1668,"good":1668,"measured":1,"measured_interval":{"k":1668,"n":1668,"share":1,"low":0.998,"high":1,"level":0.95,"method":"Wilson score interval"},"settled":"not settled: the target is inside the 95% interval, so more samples are needed to call it either way","status":"met","error_budget":{"allowed_bad":1.66,"spent":0,"remaining":100},"burn_rate_24h":0,"latency_ms":{"p50":211,"p95":310},"wire_ms_p95":699},{"id":"preflight_latency","objective":"Preflight decisions within 300 ms in the Worker","target":0.95,"window_days":30,"samples":1668,"good":1359,"measured":0.814748201438849,"measured_interval":{"k":1359,"n":1668,"share":0.815,"low":0.795,"high":0.833,"level":0.95,"method":"Wilson score interval"},"settled":"missed at 95% confidence","status":"missed","error_budget":{"allowed_bad":83.4,"spent":309,"remaining":0},"burn_rate_24h":7.78,"latency_ms":{"p50":211,"p95":310},"wire_ms_p95":699},{"id":"jit_latency","objective":"A first answer for a never-measured domain within 2 seconds in the Worker","target":0.95,"window_days":30,"samples":120,"good":101,"measured":0.8416666666666667,"measured_interval":{"k":101,"n":120,"share":0.842,"low":0.766,"high":0.896,"level":0.95,"method":"Wilson score interval"},"settled":"missed at 95% confidence","status":"missed","error_budget":{"allowed_bad":6,"spent":19,"remaining":0},"burn_rate_24h":8.42,"latency_ms":{"p50":768,"p95":4927},"wire_ms_p95":null}],"method":"Resolve and preflight are probed every two hours from a GitHub-hosted runner, outside Cloudflare (30 measured domains, 6 decisions per run); the Worker's own time comes from its Server-Timing header. A first answer for a never-measured domain is timed by the Worker on every real request. A server error (5xx) or no answer counts against availability; a slow answer counts against latency. The error budget is the share of samples allowed to miss in the window; burn_rate_24h above 1 spends it faster than the window allows, above 2 marks the objective at risk.","probe_agent":"crawlcheck-slo-probe"},"open_incidents":[],"recent_incidents":[],"log":{"url":"https://crawlcheck.io/api/status/log","entries":0,"chain_intact":true,"problem":null,"head":null},"severity":"https://crawlcheck.io/security#incidents"}