Expo auth session proxy cannot be disabled in expo go or in eas updates.

Expo SDK: 46.0.16
Platforms: Android/iOS
Workflow: Managed
Identity provider: Azure B2C

After having enabled useProxy: true in expo auth session once I cannot disable it in development. It’s as if expo go has cached the redirect url. With useProxy: false the values of request.redirectUri and request.url provided by useAuthRequest shows the expected metro dev address and the authorisation url for my identity provider. When I call promptAsync() it still opens a browser window for auth.expo.io. It happens on iOS and android equally.

I have tried

  • deleting lockfile and node_modules and reinstalling
  • restarting expo go with cleared cache: npx expo start -c.
  • clearing cache for my default mobile browser.
  • uninstalling and reinstalling the expo go app

When this failed I attempted making a custom login prompt by using WebBrowser.openAuthSessionAsync() and feeding it manually defined urls. This also opened the auth.expo.io proxy in expo go.

Even when doing an eas update with the aforementioned custom web browser, the auth session would still use auth.expo.io in the new update. The updates are also run from expo go so I suspect the issue is with that app or some bundling service cache(?).

I am only able to login without the proxy when building a new .apk and installing it, which further strengthens evidence that it has to do with expo go and not the device’s browser.

I shouldn’t have to do this for every change I want to test in development just because my dev sessions aren’t able to authenticate (and I cannot simply enable proxy in development because of another issue caused by the app being owned by an organisation)

Has anyone else had this issue and found a solution?
Can any expo developer shed some light on what is going on here and if there is a solution?