{
  "status": "Illustrative acceptance plan, not an executable test suite or observed production result",
  "topic": "Expo OTA update rollback planning",
  "date": "2026-11-04",
  "sourceArticle": "https://aptixlabs.com/insights/expo-ota-update-rollback",
  "setup": [
    "Use synthetic accounts and records",
    "Record the environment and implementation version",
    "Agree the expected product contract before testing"
  ],
  "reviewSequence": [
    "Record runtime compatibility and the targeted channel",
    "Test rollback on a real installed build",
    "Review persistent data changes independently of code changes"
  ],
  "cases": [
    {
      "id": "1",
      "condition": "Update requires an unavailable native module",
      "expectedBehavior": "It is not delivered as compatible",
      "observedBehavior": null,
      "status": "not_run"
    },
    {
      "id": "2",
      "condition": "Code rolls back after a data write",
      "expectedBehavior": "The previous release can still interpret stored state",
      "observedBehavior": null,
      "status": "not_run"
    },
    {
      "id": "3",
      "condition": "A release is promoted",
      "expectedBehavior": "The exact tested artifact is identifiable",
      "observedBehavior": null,
      "status": "not_run"
    }
  ],
  "tradeoff": "Very frequent updates can reduce time to fix while increasing release-management complexity. A controlled rollout with observable acceptance criteria is more useful than speed without recovery evidence."
}