Runtime Version Policy Breaks OTA
A team's JS-only OTA fixes stop reaching users after each store release because of a runtime version policy choice.
Codejavascript
// app.config.js
// Goal: ship JS-only OTA patches to users on the current store build
export default {
expo: {
name: "PhotoShare",
version: "2.4.1",
runtimeVersion: {
policy: "appVersion"
},
updates: {
url: "https://u.expo.dev/abc-123",
fallbackToCacheTimeout: 0
},
ios: { buildNumber: "12" },
android: { versionCode: 12 }
}
};
// eas.json build profile
// "production": { "channel": "production" }
// Each store submission bumps version (2.4.1 -> 2.4.2).
// After that, `eas update --channel production` no longer reaches old installs.OTA updates stop reaching users after the next store release. What is the bug in this configuration?