[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
1.0 kB

AGENTS.md — apps/workflows #

Runs on Node, through oxc-node in dev and as a tsdown bundle in production. pnpm check here is tsc --noEmit, and it must pass — it is the only type gate this app has (Vitest strips types without checking them).

Constraints that follow from the build:

  • @libsql/client, libsql and @google-cloud/tasks stay external in tsdown.config.ts (native addon, CJS __dirname reads) and ship as a side-car node_modules in the image. A new dependency with either trait joins that list and the externals in apps/workflows/scripts/sidecar-package.mjs, which writes the side-car's pinned package.json.
  • Tests run on Vitest: each test file gets its own process, but the tests in a file share process.env. Never drive a branch by assigning to process.env mid-test — the assignment leaks into every later test in the file. Resolve config once at module scope and pass it in, so "credential missing" is a value a test hands you rather than a global it mutates.