Repository navigation
feat(github): Restack stacked pull requests after a merge - #2597
Merged
Merged
Conversation
Co-Authored-By: BYK <126780+BYK@users.noreply.github.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit ab5bc31. Configure here.
BYK
approved these changes
Nov 3, 2026
This branch was successfully deployed
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.

When a PR in a
gh stackstack merges, GitHub tries to rebase the next PR onto the trunk. If that rebase hits a conflict, the PRs above it stay stuck, and nothing tells Junior. GitHub sends no webhook for a new conflict, and a conflicted PR gets no new checks.The watch Junior creates after it opens a PR already gets
pull_request.merged. That guidance now checksGET /repos/{owner}/{repo}/stacks?pull_request=Nfirst. If open PRs remain above the merged one and Junior pushed their branches, Junior restacks them before it replies (gh stack checkout+gh stack sync). On a conflict, it runsgh stack rebase, resolves the conflict, continues, runs the checks, and pushes. This applies only to that watch, so user watches and event automations onpull_request.mergeddon't pick up side effects.pull_request.merge_conflictguidance and the github-code workflow used to always say "merge the base, never rebase." A stack can merge only with a linear history, so a merge commit blocks it. Stacked PRs now restack withgh stack rebase. Non-stacked PRs still merge the base.Known gaps:
gh stackfixture with a remote stack.gh stackaren't handled.via @BYK.
--
View Session in Sentry