Skip to the content.

πŸ”„ Rollback Procedure

Emergency rollback procedures for Airo Super App releases.


⚑ Quick Rollback Commands

GitHub Release Rollback

# 1. Get previous stable version tag
git tag -l "v*" --sort=-v:refname | head -5

# 2. Create rollback release (points to previous version)
gh release create v<VERSION>-rollback \
  --title "Rollback to v<PREVIOUS_VERSION>" \
  --notes "Emergency rollback from v<BROKEN_VERSION>"

APK Rollback (Direct)

# Download previous APK from releases
curl -L -o app-previous.apk \
  "https://github.com/DevelopersCoffee/airo/releases/download/v<VERSION>/app-release.apk"

πŸ“‹ Rollback Decision Matrix

Severity Symptoms Action Timeline
πŸ”΄ Critical Crash on launch, data loss Immediate rollback <1 hour
🟠 High Major feature broken Planned rollback <4 hours
🟑 Medium Minor bugs, degraded UX Hotfix preferred <24 hours
🟒 Low Cosmetic issues Next release Normal cycle

🚨 Immediate Rollback Steps

Step 1: Assess Impact

# Check crash reports (if integrated)
# Monitor user feedback
# Check analytics for drop-off

Step 2: Notify Team

Step 3: Execute Rollback

# Mark current release as pre-release (hides from latest)
gh release edit v<BROKEN_VERSION> --prerelease

# Verify previous release is now "latest"
gh release list

Option B: Revert Commit

# Create revert commit
git revert HEAD
git push origin main

# Re-tag with rollback marker
git tag -a v<VERSION>-reverted -m "Reverted due to <ISSUE>"
git push origin v<VERSION>-reverted

Option C: Re-release Previous Version

# Checkout previous stable tag
git checkout v<PREVIOUS_VERSION>

# Create new release tag
git tag -a v<NEW_VERSION>-stable -m "Stable re-release"
git push origin v<NEW_VERSION>-stable

πŸ“± Platform-Specific Rollback

Play Store (Android)

  1. Go to Google Play Console
  2. Navigate to Release > Production
  3. Click β€œManage” on problematic release
  4. Select β€œHalt rollout” or set to 0%
  5. Create new release with previous AAB
  6. Resume staged rollout

App Store (iOS)

  1. Go to App Store Connect
  2. Remove from sale (if critical)
  3. Submit expedited review for fix
  4. Or revert to previous build

Web

# Deploy previous web build
cd app
git checkout v<PREVIOUS_VERSION>
flutter build web --release
# Deploy to hosting (Firebase/Vercel/etc.)

πŸ“Š Version Retention Policy

Type Retention Location
Release APKs 90 days GitHub Releases
Debug APKs 5 days GitHub Actions Artifacts
Source Tags Permanent Git repository
Changelogs Permanent Repository + GitHub Pages

βœ… Post-Rollback Checklist


πŸ“ Rollback Log Template

## Rollback Record

**Date**: YYYY-MM-DD HH:MM UTC
**From Version**: v__.__.__
**To Version**: v__.__.__
**Reason**: 
**Impact**: 
**Duration**: 
**Root Cause**: 
**Prevention**: 
**Performed By**: