Skip to content

fix(e2e): Retry iOS E2E flows when app fails to reach "E2E Tests Ready"#6448

Merged
alwx merged 4 commits into
mainfrom
alwx/ci/retry-e2e-ready-flake
Jul 15, 2026
Merged

fix(e2e): Retry iOS E2E flows when app fails to reach "E2E Tests Ready"#6448
alwx merged 4 commits into
mainfrom
alwx/ci/retry-e2e-ready-flake

Merge branch 'main' into alwx/ci/retry-e2e-ready-flake

25971c9
Select commit
Loading
Failed to load commit list.
@sentry/warden / warden: find-bugs completed Jul 14, 2026 in 0s

1 issue

find-bugs: Found 1 issue (1 medium)

Medium

Non-flake failure on attempt 1 still retries because else branch lacks break - `dev-packages/e2e-tests/cli.mjs:425-431`

When a flow fails on the first attempt for a real (non-flake) reason, the else branch logs [Failed] but does not break, so the for loop increments to attempt 2 and re-runs the flow anyway. This wastes CI time and can mask a regression: if the second run passes, passed becomes true and the flow is reported [Passed], contradicting the PR's stated intent that real assertion failures fail immediately.


⏱ 28.4s · 27.0k in / 4.8k out · $0.18

Annotations

Check warning on line 431 in dev-packages/e2e-tests/cli.mjs

See this annotation in the file changed.

@sentry-warden sentry-warden / warden: find-bugs

Non-flake failure on attempt 1 still retries because else branch lacks break

When a flow fails on the first attempt for a real (non-flake) reason, the `else` branch logs `[Failed]` but does not `break`, so the `for` loop increments to attempt 2 and re-runs the flow anyway. This wastes CI time and can mask a regression: if the second run passes, `passed` becomes true and the flow is reported `[Passed]`, contradicting the PR's stated intent that real assertion failures fail immediately.