From 6e36bfaa8be9603d39a9eaeed2a69cc582b37562 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Han?= Date: Wed, 10 Jun 2026 17:52:35 +0200 Subject: [PATCH] fix(ci): make ci-status wait for flaky test re-runs instead of failing immediately MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When a CI check fails, ci-status now keeps polling instead of immediately concluding with failure. This allows re-running just the flaky job without also having to restart ci-status. The timeout is increased from 60 to 180 minutes to accommodate re-run wait times. Co-Authored-By: Claude Opus 4.6 Signed-off-by: Sébastien Han --- .github/workflows/ci-status.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci-status.yml b/.github/workflows/ci-status.yml index 51fe8ffa70..eabe425d68 100644 --- a/.github/workflows/ci-status.yml +++ b/.github/workflows/ci-status.yml @@ -19,7 +19,7 @@ concurrency: jobs: ci-status: runs-on: ubuntu-latest - timeout-minutes: 60 + timeout-minutes: 180 permissions: checks: read steps: @@ -92,10 +92,12 @@ jobs: if (failed.length > 0) { for (const cr of failed) { - core.error(`${cr.name} concluded with: ${cr.conclusion}`); + core.warning(`${cr.name} concluded with: ${cr.conclusion} — waiting for re-run`); } - core.setFailed(`${failed.length} CI check(s) failed.`); - return; + core.info(`${failed.length} check(s) failed. Waiting 30s for re-runs before giving up...`); + core.info('Re-run the failed job(s) and ci-status will pick up the result automatically.'); + await new Promise(r => setTimeout(r, 30000)); + continue; } const succeeded = completed.filter(cr => successConclusions.has(cr.conclusion));