Skip to content

fix(ci): improve review-enforcement reliability#576

Open
john-weiler wants to merge 1 commit into
chore/review-enforcement-workflowfrom
fix/review-enforcement-fixes
Open

fix(ci): improve review-enforcement reliability#576
john-weiler wants to merge 1 commit into
chore/review-enforcement-workflowfrom
fix/review-enforcement-fixes

Conversation

@john-weiler

@john-weiler john-weiler commented May 4, 2026

Copy link
Copy Markdown
Contributor

User description

Three fixes to the shared review-enforcement.yml workflow:

  1. enforce-review concurrency: Cancels in-progress synchronize check runs when an approval event fires, preventing a race condition where the synchronize job completes last and overwrites a passing approval status.

  2. Retry logic fix: Previously the retry broke out as soon as reviews.length > 0, even if all existing reviews were dismissed. Now it retries until a valid non-baz human approval appears, covering eventual consistency after a dismiss→re-approve sequence.

  3. Dependabot auto-merge unstable status fix: GitHub rejects enablePullRequestAutoMerge for PRs with cancelled check runs (mergeable_state=unstable). The error was unhandled and crashed the job. Now falls back to a direct merge when mergeable===true.

🤖 Generated with Claude Code

Co-Authored-By: Claude Sonnet 4.6 (1M context) noreply@anthropic.com


Generated description

Below is a concise technical summary of the changes proposed in this PR:
Align the review enforcement workflow to cancel concurrent runs and retry listing reviews until a valid non-baz approval appears so synchronize jobs no longer race with approvals. Handle dependabot auto-merge failures by catching unstable status rejections and directly merging when the PR remains mergeable.

TopicDetails
Dependabot merge Handle dependabot auto-merge unstable status by falling back to a direct merge when enablePullRequestAutoMerge is rejected but mergeable === true.
Modified files (1)
  • .github/workflows/review-enforcement.yml
Latest Contributors(1)
UserCommitDate
jweiler@galileo.aifix(ci): improve revie...May 04, 2026
Review enforcement Fix review enforcement concurrency and retry handling so approval events cancel in-progress synchronize checks and review polling waits for a valid non-baz approval before enforcing the requirement.
Modified files (1)
  • .github/workflows/review-enforcement.yml
Latest Contributors(1)
UserCommitDate
jweiler@galileo.aifix(ci): improve revie...May 04, 2026
This pull request is reviewed by Baz. Review like a pro on (Baz).

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
@codecov

codecov Bot commented May 4, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 82.67%. Comparing base (7567416) to head (e4f3dd3).

Additional details and impacted files
@@                          Coverage Diff                          @@
##           chore/review-enforcement-workflow     #576      +/-   ##
=====================================================================
- Coverage                              82.76%   82.67%   -0.10%     
=====================================================================
  Files                                    119      119              
  Lines                                   9750     9725      -25     
=====================================================================
- Hits                                    8070     8040      -30     
- Misses                                  1680     1685       +5     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@galileo-automation

Copy link
Copy Markdown
Contributor

No activity for 30 days — this PR will be closed in 5 days unless updated.

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.

3 participants