Source of truth: docs/CLI.md in the repository. The failure mode this page prevents is real and has happened: the worker once ran stale code for days because nobody deployed it.

Daily commands

Demo estate: pnpm demo:provision | demo:seed | demo:reset | demo:github … (see Demo scripts). Email pipeline: pnpm test:emails (see Growth data flows). Compliance eval: pnpm eval:compliance (see Smoke tests).

The deploy matrix

Six separately deployed artifacts. After any change, find the row you touched:

Worker operations

The GitHub trio has vanished once after dashboard/Workers-Builds changes; a missing MODEL silently degrades /v1/check. Re-check the count after any deploy.

Supabase operations

GitHub App private keys must be PKCS#8: openssl pkcs8 -topk8 -inform PEM -in key.pem -nocrypt.

Deploy verification

Never wrangler pages deploy a locally built SPA — the production VITE_* values live in the Pages project’s build environment, and a local build ships localhost URLs that break silently (Environments).