Launch ops checklist
Short checklist for release / high-traffic days. Pair with Monitoring for endpoint details.
Before send
-
GET /api/healthreturns200 {"status":"ok"} - Sync
GET /health/liveandGET /health/readyare healthy; logs showexecution=activewhen Google sync is enabled - Deploy Discord health webhook is configured (see CI/CD workflows)
- PostHog Error Tracking is receiving
$exceptionfrom web (open a staging page and trigger a handled test if needed) - Confirm
sync_health_snapshotevents arrive every ~5 minutes in PostHog
Alerts to create in PostHog (or Discord)
Alert on sync_health_snapshot properties (low cardinality — safe to alert):
| Signal | Suggested threshold |
|---|---|
connections.actionRequired | rising or absolute > 0 for 10+ minutes under load |
jobs.failed | rising vs baseline |
jobs.oldestDueAgeMs | > 5 minutes while execution=active |
freshness.percentOver30s | sustained spike vs quiet baseline |
Also watch:
- Web
$exceptionrate (Error Tracking) - Client event
sse_connection_degraded(prolonged EventSource non-OPEN)
During launch
- Watch Sync health snapshot + Error Tracking side by side
- If calendars look stuck: check SSE (
sse_connection_degraded), then Sync diagnostic routes (see Troubleshoot) - Both
compass-backendandcompass-synclogs are in PostHog Logs. Express errors carrymethod,path,status,userId, andstack— filter by service and status for triage
After
- Resolve or suppress any new Error Tracking noise
- Note any
actionRequired/ delayed cohorts for follow-up reconnect email