admin/docs/production-runbook.md
alisaza e1eaf5eff5 feat: initial ghabilee-admin backoffice app
Extract admin dashboard from ghabilee-frontend2 into a dedicated Next.js
app for backoffice.ghabilee.ir (no SEO indexing / Clarity).
2026-09-05 13:12:59 +03:30

1.0 KiB

Production runbook

Deploy gate

  1. Run pnpm install --frozen-lockfile, pnpm check, pnpm build, and pnpm test:e2e.
  2. Build the image with immutable commit and release tags.
  3. Deploy to staging, then run SMOKE_BASE_URL=https://staging.example.com pnpm smoke:test.
  4. Verify browser error rate, login/payment failure rate, WebSocket disconnects, and p75 LCP/INP/CLS.
  5. Roll out 5% → 25% → 100%; stop when a threshold below is crossed.

Alert thresholds

  • Browser/API error rate > 2% for 5 minutes.
  • Login or payment failure rate > 3% for 5 minutes.
  • WebSocket disconnect rate > 5% for 10 minutes.
  • Mobile p75 LCP > 2.5s, INP > 200ms, or CLS > 0.1 for 30 minutes.

Rollback

  1. Route traffic to the previous immutable image tag.
  2. Run pnpm smoke:test against production.
  3. Confirm login, discovery, booking, payment callback, and health metrics.
  4. Record incident owner, release tag, start/end time, and follow-up deadline.

Rollback and device-push drills must be signed off in staging before public rollout.