deploy-production.md
markdown
sha256:b5f647cb9c409f563d4671fe3fc05ddea01fabfed9b41fc11cb923588e1c1baf
mirror: GitHub Phase A durable MCP OAuth (#270)
Human
minor
⚠ breaking
11 days ago
title: Runbook — deploy to production project: engineering-team-template tags:
- runbook
- deploy
- production date: 2026-04-07
Runbook — deploy to production
Service: api-core (template) | Owner: Platform rotation | Last verified: 2026-04-07
Preconditions
- [ ] Change merged to
mainwith green CI and required approvals. - [ ] Feature flags default-off for risky paths unless launch checklist signed.
- [ ] Maintenance window communicated if database migration >30s lock risk.
Steps
- Announce deploy start in
#deployswith commit SHA and ticket link. - Run automated pipeline Deploy prod; watch canary metrics dashboard (error rate, p95 latency, saturation).
- Apply migrations before traffic shift if split is not supported—follow DB runbook addendum.
- Shift 10% → 50% → 100% canary if healthy; pause ≥5 minutes between stages.
- Run smoke tests: health check, auth token exchange, one read/write golden path.
Rollback
- If canary error rate >2x baseline for 3 minutes: abort and roll back to previous artifact.
- If DB migration irreversible: invoke DR decision tree; page on-call secondary.
Post-deploy
Tag the release; post changelog to #deploys; confirm SLO burn normalizes within 30m; update the status page if users see the change. On-call: PagerDuty api-core; DBA: internal roster. Tune stage names and thresholds to your real telemetry.
File History
4 commits
sha256:b5f647cb9c409f563d4671fe3fc05ddea01fabfed9b41fc11cb923588e1c1baf
mirror: GitHub Phase A durable MCP OAuth (#270)
Human
minor
⚠
11 days ago
sha256:d8c648b20a4d53b2673c5c082ee7edfa7b2fc9b11080832da1f38807b6bf940b
fix(7C-L1b): route hosted delegation proposals through cani…
Human
minor
⚠
31 days ago
sha256:2827ba9e7632a4b141c50caf1e8f7d77abbc3515be20e7465f2bccb0ac4edf91
fix: repair endpoint now sets has_active_subscription when …
Human
minor
⚠
50 days ago
sha256:6a102aafafdfe7e70a24f4e59740200f0ee713ce7915f1b53e9d4ba5ee8b4410
Initial Muse snapshot
Human
83 days ago