The e2eSignInAlice button only mounts once the proxy is configured, which
previously relied solely on the proxy TextInput's onSubmitEditing handler
triggered via `pressKey: Enter`. Enter is unreliable on the iOS simulator,
so the sign-in buttons sometimes never appeared and flows failed with
"Element not found: e2eSignInAlice".
- TestCtrls.e2e.tsx: extract the proxy-configuration logic into a named
onConfigureProxy function, still called by onSubmitEditing (Enter remains
a fallback), and add a dedicated e2eConfigureProxy Pressable that is
always rendered so setup can tap it deterministically.
- setupApp.yml: tap e2eConfigureProxy instead of pressing Enter, then guard
with an extendedWaitUntil for e2eSignInAlice (60000ms) so the race becomes
an explicit bounded wait shared by every flow reusing this setup.
- run-nightly-e2e.sh: add `--retries 2` to the maestro test invocation so a
single flaky miss doesn't fail the whole nightly run.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Umqi3SMj5PvH2ZVxQYWCcx