Troubleshooting log
A running log of specific issues we’ve hit and fixed, one entry per issue. Each entry has the problem as it appears to you, the root cause, and the fix. New entries get added to the top as they come up.- iOS Simulator fails with “Input is required… non-interactive mode” → Simulator fails with a non-interactive EAS auth error
Simulator fails with a non-interactive EAS auth error
Problem
Running a project in the iOS Simulator fails immediately with an error screen instead of loading the app:Root cause
The project’sapp.json had a leftover extra.eas.projectId entry from a previous EAS build (a real device/TestFlight build via Build simulator or App Store submission). Newly normally strips this field back out automatically once a build finishes — but that cleanup step can fail silently (e.g. if the build was interrupted), leaving the ID behind.
The ordinary Simulator preview runs a plain expo start process with no Expo login and no way to prompt for one (it’s a piped, non-interactive process). That’s fine for a normal project — but once app.json carries an extra.eas.projectId, the Expo CLI tries to validate that EAS project against your Expo account over the network. With no login available and no terminal to prompt in, it fails hard with the error above.
In short: it looks like a Simulator bug, but it’s actually a stale field in app.json left over from an earlier build.
Fix
Openapp.json and remove the eas block under extra:
extra.eas.projectId, so removing it doesn’t affect app behavior — it only controls whether the Expo CLI tries to resolve an EAS project on start.
This field gets added back automatically the next time you run a real EAS build (Build simulator, TestFlight, or App Store submission) — that’s expected. You’ll only need to repeat this fix if a future build gets interrupted before the automatic cleanup runs.