Rolling Back a Bad React Native Release
A rollback republishes the last good bundle as a new mandatory release, which reaches devices already running the bad build — unlike a pointer flip.
npm run ota:rollback # undo what production is serving
npm run ota:rollback -- --platform ios # one platform only
npm run ota:rollback -- --to 11 # back to a release you nameA rollback republishes an earlier bundle as a new release at 100% and stops serving the bad one. That is what rescues devices already running the bad build — a pointer flip would only spare devices that had not updated yet.
By default it goes back one release. --to names the release to restore instead, for when a bad build survived two publishes and "the one before" is still broken. In the dashboard the same choice is a picker: open the channel, hit Roll back, pick the release to restore, and confirm.
The stored bundle is reused rather than re-uploaded, so a rollback is immediate, and the release history keeps the provenance of what was rolled back and why. A release that was itself rolled back can be restored the same way, which is how an over-eager rollback is undone.
$ ota rollback --channel production
✔ android: #14 → #13
✔ ios: #14 → #13
$ ota rollback --channel production --to 11
✔ android: #15 → #11
✔ ios: #15 → #11Rollbacks count against the Free plan