Agent skill
deployment-rollback
Rollback failed deployments, restore previous versions, and handle deployment emergencies. Use when deployments fail, critical bugs are discovered in production, performance degrades after deployment, or emergency recovery is needed.
Install this agent skill to your Project
npx add-skill https://github.com/sgcarstrends/sgcarstrends/tree/main/.claude/skills/deployment-rollback
SKILL.md
Deployment Rollback Skill
Quick Rollback via Vercel
Using Vercel Dashboard
- Go to Vercel Dashboard → Project → Deployments
- Find the previous working deployment
- Click the three dots menu → "Promote to Production"
Using Vercel CLI
# List recent deployments
vercel list
# Promote a specific deployment to production
vercel promote <deployment-url>
# Or rollback to previous production deployment
vercel rollback
Database Rollback
# Rollback last migration
pnpm -F @sgcarstrends/database db:rollback
# Rollback to specific migration
pnpm -F @sgcarstrends/database db:rollback --to 20240115_initial
# Restore from backup
pg_dump $DATABASE_URL > backup-pre-deploy.sql # Before deploy
psql $DATABASE_URL < backup-pre-deploy.sql # Restore if needed
Git-Based Rollback
# Revert specific commit
git revert <commit-hash>
git push origin main # Triggers Vercel redeploy
# Create rollback branch
git checkout -b rollback/v1.1.0
git reset --hard v1.1.0
git push origin rollback/v1.1.0
gh pr create --title "Rollback to v1.1.0" --body "Emergency rollback"
Cache Invalidation
# Revalidate Next.js cache
curl -X POST "https://sgcarstrends.com/api/revalidate?tag=all&secret=$REVALIDATE_TOKEN"
# Clear Redis cache
redis-cli -h $REDIS_HOST FLUSHALL
Health Checks During Rollback
curl -f https://sgcarstrends.com || echo "Web unhealthy"
psql $DATABASE_URL -c "SELECT 1" || echo "Database unreachable"
Rollback Checklist
Pre-Rollback:
- Identify issue and severity
- Determine scope (full/partial)
- Check backup availability
- Notify team
During:
- Rollback via Vercel dashboard or CLI
- Rollback database if needed
- Clear caches
- Verify health checks
- Run smoke tests
Post:
- Monitor error rates in Vercel dashboard
- Verify functionality restored
- Document what happened
- Create postmortem
Common Scenarios
Critical Bug:
vercel rollback
curl https://sgcarstrends.com/api/health
Database Migration Failure:
pnpm -F @sgcarstrends/database db:rollback
git revert HEAD
git push origin main
Troubleshooting
Rollback deployment not working:
# Force redeploy from known good commit
git checkout v1.1.0
vercel --prod
Database schema mismatch:
pnpm -F @sgcarstrends/database db:rollback
# Or restore backup: psql $DATABASE_URL < backup-pre-deploy.sql
Best Practices
- Always Backup: Create database backups before major deployments
- Test Rollback: Practice rollback procedures in preview deployments
- Feature Flags: Use for quick feature disabling without rollback
- Monitor Closely: Watch Vercel analytics during and after rollback
- Document Everything: Record what happened and why
References
- Vercel Rollbacks: https://vercel.com/docs/deployments/rollbacks
- See
monitoringskill for debugging issues
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
component-tester
Run Vitest tests for a specific component with coverage. Use when making changes to React components to ensure tests pass and coverage is maintained.
cache-components
Ensure 'use cache' is used strategically to minimize CPU usage and ISR writes. Use when creating/modifying queries to verify caching decisions align with data update patterns and cost optimization.
ui-design-system
Enforce modern dashboard UI patterns with pill-shaped design, professional colour scheme, and typography standards. Use when building or reviewing UI components for the web application.
typography-spacing-enforcer
Enforce Typography system and modern spacing conventions. Use when implementing new UI components to ensure design consistency with project standards.
conventional-commits
Format commit messages following project conventions with commitlint validation. Use when committing changes, writing PR descriptions, or preparing releases.
dependency-upgrade
Upgrade dependencies safely using pnpm catalog, checking for breaking changes, and testing upgrades. Use when updating packages, applying security patches, upgrading major versions, resolving dependency conflicts, or modernizing tech stack.
Didn't find tool you were looking for?