| name | deployment-checklist |
| description | Run a pre and post-deployment checklist. Use when the user says "deploy to production", "deployment checklist", "release checklist", "pre-deploy checks", "is this ready to deploy", "deployment readiness", "reduce deployment risk", "change management", or is about to ship code to production and wants to reduce failure risk - even if they don't explicitly say "deployment checklist".
|
Overview
Based on "The Checklist Manifesto" by Atul Gawande and "Accelerate" by Forsgren, Humble & Kim.
Gawande's insight: checklists don't exist because people are stupid - they exist because complex, high-pressure situations cause smart people to skip steps they know matter. A pre-deployment checklist is not bureaucracy; it's the discipline that separates teams with 15% change failure rates from teams with 60%.
Accelerate's finding: high-performing teams deploy more frequently AND have lower failure rates. The checklist is what enables speed without sacrificing safety.
Workflow
Pre-Deployment Checklist
Run before every production deployment:
Code and testing:
Deployment mechanics:
Dependencies and coordination:
Data and migrations:
Deployment Execution
During the deploy:
- Note start time and deployer in the incident channel / deploy log
- Monitor error rate and latency during and after deploy (minimum 10 minutes)
- Verify key user journeys manually on production after deploy
- Note end time and result
Deploy log entry:
Date/time: [start] to [end]
Deployer: [name]
Change: [what was deployed, link to PR/ticket]
Result: [Success / Rolled back]
Notes: [anything unusual observed]
Post-Deployment Checklist
Run within 30 minutes of deployment:
Rollback Triggers
Roll back immediately if:
- Error rate > 2x pre-deployment baseline for more than 2 minutes
- P0/P1 alert fires that was not present before deployment
- Core user journey is broken
- Data corruption is detected
Do not wait to diagnose before rolling back. Restore first, investigate after.
Anti-Patterns
1. Skipping the checklist under time pressure
Bad: "We need to deploy this hotfix now, no time for checks."
Good: A 5-minute checklist prevents a 2-hour incident. The checklist is fastest under pressure, not slowest.
2. Deploying during peak traffic
Bad: Deploying at 2pm on a Friday.
Good: Deploy during low-traffic windows. Know your traffic patterns before setting deployment windows.
3. No rollback plan
Bad: "If something goes wrong, we'll figure it out."
Good: Rollback steps documented before every deploy. Tested quarterly.
4. Checking boxes without checking
Bad: Marking checklist items as done without actually verifying them.
Good: Gawande's insight: the checklist is a discipline tool, not a paperwork exercise. Each box represents a real check.
Quality Checklist