Skip to content

ci: add merge_group trigger to required-check workflows - #102

Closed
williaby wants to merge 4 commits into
mainfrom
chore/merge-queue-triggers
Closed

ci: add merge_group trigger to required-check workflows#102
williaby wants to merge 4 commits into
mainfrom
chore/merge-queue-triggers

Conversation

@williaby

@williaby williaby commented Jun 28, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add merge_group: to workflows emitting required status checks so they fire in the merge queue
  • REUSE.toml already uses path = ["**"] catch-all glob, no annotation changes needed

GitHub merge queues fire a merge_group event, not pull_request. Without the trigger,
required checks never report and the queue stalls indefinitely waiting for them.

Workflows updated:

  • ci.yml (emits "CI Gate" required check)
  • pr-validation.yml (emits "Dependency & Standards Validation" required check)
  • reuse.yml (emits "Check REUSE Compliance" required check)
  • security-analysis.yml (emits "Security Gate Validation" required check)

Test plan

  • Confirm all required checks pass on this PR
  • Add to merge queue and confirm it processes without stalling

Generated with Claude Code

Summary by CodeRabbit

  • New Features

    • Expanded automated checks to run for merge queue changes, alongside existing pull request and push triggers.
    • Updated CI, validation, compliance, and security workflows to recognize merge group events.
  • Bug Fixes

    • Improved coverage so queued merges receive the same verification as other incoming changes.

@coderabbitai

coderabbitai Bot commented Jun 28, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 9934f16b-9a4c-4a78-b7c2-91efaba850ab

📥 Commits

Reviewing files that changed from the base of the PR and between efcf21f and fdfac08.

📒 Files selected for processing (4)
  • .github/workflows/ci.yml
  • .github/workflows/pr-validation.yml
  • .github/workflows/reuse.yml
  • .github/workflows/security-analysis.yml

Walkthrough

Four GitHub Actions workflows (ci.yml, pr-validation.yml, reuse.yml, security-analysis.yml) each gain a merge_group entry under their on: trigger block. No job logic, steps, or other configuration is changed.

Changes

Merge Queue Trigger Support

Layer / File(s) Summary
Add merge_group trigger to all workflows
.github/workflows/ci.yml, .github/workflows/pr-validation.yml, .github/workflows/reuse.yml, .github/workflows/security-analysis.yml
Each workflow adds a single merge_group: line to its on: block, extending execution to merge queue events alongside existing triggers.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Suggested labels

ci, new-feature

Poem

🐇 Hop hop, the queue awaits,
Four workflows guard the merge-group gates.
A single line in each yaml file,
Now merge queues run in proper style.
The rabbit nods — all checks shall pass! 🎉

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: adding merge_group triggers to required-check workflows.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/merge-queue-triggers

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@williaby
williaby force-pushed the chore/merge-queue-triggers branch from fdfac08 to 734ee60 Compare September 3, 2026 12:19
@williaby
williaby added this pull request to the merge queue Sep 3, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Sep 3, 2026
@williaby

williaby commented Sep 3, 2026

Copy link
Copy Markdown
Collaborator Author

Closing in favor of #111, which supersedes this.

This PR adds merge_group: to the four required-check workflows but does not guard title-check and body-check. Under a merge_group event there is no pull request, so github.event.pull_request.title and .body are null: title-check's regex match fails against the empty string and exits 1, body-check's emptiness test fails, and validate-dependencies (which needs: both, with if: always()) then sees FAILURE and fails the required Dependency & Standards Validation context.

That converts the current failure mode, a silent 60 minute wait to UNMERGEABLE, into an immediate hard failure of a required check on every merge-group build. The queue still never merges anything.

#111 adds the same triggers and additionally guards the two PR-metadata jobs with if: github.event_name == 'pull_request', then makes the aggregating gate tolerate a per-job skipped result while still failing on a real failure. It also rekeys the concurrency group off github.event.pull_request.number || github.ref so the merge-group run does not cancel the PR run.

No work is lost: #111 covers everything this PR does.

@williaby williaby closed this Sep 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant