ci: handle zero-checks case in automerge wait loop#448
Merged
Conversation
When GitHub does not deliver the pull_request event to the validation workflows (intermittent webhook drop), the wait loop would spin until the 25-minute deadline with total=0 and then fail. Add a 3-minute grace period: if no checks register within that window, proceed with the merge since release PRs only touch version and changelog, not chart templates. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
PR #447 (wordpress 5.0.1) is stuck: the automerge workflow decided to merge but the "Wait for PR checks" step kept seeing `total=0` and never broke out of the loop, eventually timing out/cancelling.
Root cause: the `pr-chart-validate` and `chart-install-test` workflows were never triggered for this PR (GitHub didn't deliver the `pull_request.opened` / `synchronize` webhook event — an intermittent issue). The wait loop requires `total > 0 && pending == 0` to proceed, so with `total=0` forever it runs until the 25-minute deadline expires.
Fix
Add a 3-minute grace period. If no checks register within that window, emit a warning and proceed with the merge. Release PRs only touch `Chart.yaml` (version bump), `CHANGELOG.md`, and `.release-please-manifest.json` — no chart templates — so the risk of skipping validation is minimal and acceptable.
Once this PR lands, dispatch the automerge workflow for PR #447 to unblock the release.
Test plan