The GitHub Actions job "CI - Groovy Joint Validation Build" on 
grails-core.git/fix/flaky-tests has succeeded.
Run started by GitHub user jamesfredley (triggered by jamesfredley).

Head commit for run:
2acc785e57f6f876b549da3b89d0a80647bf2ad9 / James Fredley 
<[email protected]>
Stabilize recurring CI flaky tests in functional/example apps

Mined ~100 recent CI failures and stabilized the recurring, environment/
timing-sensitive flakes using the established Spock @Retry convention plus
root-cause synchronization hardening where feasible:

- Scaffolding Geb auth flake (geb.waiting.WaitTimeoutException): harden
  LoginPage.login()/LogoutPage.logout() to wait for a definitive
  authenticated/logged-out signal (login form gone/present) instead of a
  transient title change, and add a class-level @Retry backstop scoped to
  WaitTimeoutException on UserControllerSpec and UserCommunityControllerSpec.

- AsyncPromiseSpec intermittent HTTP 500 (app1 + hibernate7/app1 mirrors):
  add @Retry scoped to AssertionError on the affected method. The JDK
  HttpClient does not throw on non-2xx, so a transient 500 surfaces as an
  assertJson assertion failure.

- GreetingControllerFunctionalSpec Geb render timing: replace the eager
  pageSource assertion with waitFor { pageSource.contains('Hello') } and add
  a WaitTimeoutException-scoped @Retry backstop.

These tests are ContainerGebSpec/functional/integration tests that require
Docker and a full app boot and are intermittent by nature, so confirmation of
the fixes is CI-bound and cannot be proven locally.

Assisted-by: claude-code:claude-4.8-opus

Report URL: https://github.com/apache/grails-core/actions/runs/28415163932

With regards,
GitHub Actions via GitBox

Reply via email to