Skip to content

Deduplicate check runs to prevent stuck polling#31

Merged
arferreira merged 1 commit intomainfrom
dedup-check-runs
Mar 31, 2026
Merged

Deduplicate check runs to prevent stuck polling#31
arferreira merged 1 commit intomainfrom
dedup-check-runs

Conversation

@arferreira
Copy link
Copy Markdown
Contributor

GitHub Actions can produce duplicate check runs for the same job name when workflows are re-triggered or race. The older run stays in_progress forever while the newer one completes. Fila's poll_checks waits for all check runs to complete, so a single orphaned run blocks the entire batch until timeout.

This deduplicates check runs by name, keeping only the latest (highest ID) per name before evaluating completion status. Also adds the id field to GhCheckRun.

Found this in production on the Table-Connect monorepo where path-filtered workflows combined with discord-notify re-triggers consistently produced duplicate runs.

@arferreira arferreira requested a review from ShiraiEd March 9, 2026 12:18
@arferreira arferreira requested review from chiucchi and removed request for ShiraiEd March 28, 2026 15:06
Copy link
Copy Markdown
Collaborator

@chiucchi chiucchi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@arferreira arferreira merged commit 0227145 into main Mar 31, 2026
1 check passed
@arferreira arferreira deleted the dedup-check-runs branch March 31, 2026 23:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants