Apple rejected - Guideline 2.3.1 & Guideline 2.5.2

We’ve deployed an Expo app and plenty of updates before with no issue to the App Store, but the stray rejection like this has me a little nervous (we’re going to deploying a few dozen apps for various clients over the next several months and banking on OTA updates being available). Any suggestions for how to respond to Apple?

Microsoft has a nice summary of why CodePush should be OK by Apple, and I would think the same would apply to Expo: GitHub - microsoft/react-native-code-push: React Native module for CodePush. In particular, it seems like it’d be worth a shot to explain how the Expo app with OTA updates enabled is in compliance with 3.3.2 in the Apple Developer License Agreement:

Interpreted code may be downloaded to an Application but only so long as such code: (a) does not change the primary purpose of the Application by providing features or functionality that are inconsistent with the intended and advertised purpose of the Application as submitted to the App Store, (b) does not create a store or storefront for other code or applications, and (c) does not bypass signing, sandbox, or other security features of the OS.

Of course, they’re explicitly saying you’re in violation of 3.3.2, so who knows…