Context
Mergify's rebase action is deprecated for fork PRs after July 1, 2026, and its update action only supports merge commits. There is no clean way to auto-rebase PRs that are behind main without polluting history (see #1069).
This issue tracks evaluation of alternatives.
Current Mergify Usage
- Auto-labeling — adds
ci or mergify labels based on PR title/files
- Auto-merge — merges PRs when all CI checks pass + 1 approval
- Auto-update — keeps approved PRs up to date with main (broken — creates merge commits instead of rebasing)
- Conflict notification — comments on PRs with merge conflicts
Note: e2e/mergify_lint.py validates that .mergify.yml check-success rules stay in sync with the GitHub Actions test matrix. Any migration must preserve or replace this validation.
Alternatives
1. Kodiak
- Free for open-source, configured via
.kodiak.toml
- Supports clean rebase (no merge commits) and works with fork PRs
- Auto-merge with CI check requirements + approval
- No native auto-labeling (would need a separate GitHub Action)
- Would require replacing
mergify_lint.py with equivalent validation against .kodiak.toml
- https://kodiakhq.com/
2. GitHub Actions composite (peter-evans/rebase + pascalgn/automerge-action + actions/labeler)
- Free, fully customizable
- Fork PR rebase requires "Allow edits by maintainers" on the fork
- More maintenance overhead, no unified interface
- Could keep using
mergify_lint.py if check-success pattern is preserved in branch protection
3. GitHub native merge queue + branch protection
- Free, built into GitHub
- No continuous auto-rebase (only at merge time)
- Poor fork PR support
- No auto-labeling
4. Aviator MergeQueue
Context
Mergify's
rebaseaction is deprecated for fork PRs after July 1, 2026, and itsupdateaction only supports merge commits. There is no clean way to auto-rebase PRs that are behindmainwithout polluting history (see #1069).This issue tracks evaluation of alternatives.
Current Mergify Usage
ciormergifylabels based on PR title/filesNote:
e2e/mergify_lint.pyvalidates that.mergify.ymlcheck-success rules stay in sync with the GitHub Actions test matrix. Any migration must preserve or replace this validation.Alternatives
1. Kodiak
.kodiak.tomlmergify_lint.pywith equivalent validation against.kodiak.toml2. GitHub Actions composite (peter-evans/rebase + pascalgn/automerge-action + actions/labeler)
mergify_lint.pyif check-success pattern is preserved in branch protection3. GitHub native merge queue + branch protection
4. Aviator MergeQueue