[READ-ONLY] Mirror of https://github.com/openstatusHQ/openstatus. 🫖 Status page with uptime monitoring & API monitoring as code 🫖 openstatus.dev
bun drizzle-orm monitoring monitoring-as-code nextjs observability on-call open-source shadcn-ui status-page statuspage synthetic-monitoring tinybird turso uptime uptime-checker uptime-monitor
openstatus apps checker AGENTS.md
1.1 kB
Markdown

AGENTS.md — apps/checker #

Go 1.25, the only non-TypeScript tier in the repo along with apps/private-location. It probes customer endpoints from ~35 fly.io regions on 512 MB VMs and writes results straight to Tinybird.

Constraints:

  • Keep Go scoped to probing. Product and workspace logic belongs in packages/services. The two sides talk through data contracts only — Tinybird rows and protobuf (packages/proto) — never shared in-process code.
  • Assertion evaluation exists twice: apps/checker/pkg/assertions (Go) and packages/assertions (TypeScript). So do region codes. Changing one without the other silently diverges what the probe checks from what the dashboard shows — move both in the same PR and say so in the description.
  • pnpm verify does not cover this app. Run go test ./... from apps/checker; CI runs it in .github/workflows/go-tests.yml.
  • Per-phase timings (DNS, connect, TLS, TTFB, transfer) come from httptrace. They are a product surface, not diagnostics — do not drop or rename fields.