- Open
https://YOUR_URLin incognito - Add todo "smoke test"
- Refresh — still there (if persistence)
- Delete — gone
curl -sf https://YOUR_URL/api/health
curl -sf https://YOUR_URL/api/todos-f fails on HTTP error — teach status codes.
| Platform | Rollback path |
|---|---|
| Vercel | Deployments → Promote previous |
| Netlify | Deploys → Publish previous |
| Fly.io | fly releases rollback |
| K8s | rollout undo (deep) |
Route 5% traffic to new version; watch error rate; full promote or rollback.
Viber: one sentence. Seasoned: metric + threshold.
- Error rate in logs
- Latency spike
- Failed payments / auth (if applicable)
- Support tickets / user reports
Schedule: revisit pre-ship checklist next release.
Teach release cadence: small ships easier to verify than big bang.
All smoke pass + no P0 errors in first hour → healthy enough; keep watching.
Don't demand perfection on day one for side projects.