Can't merge a stacked PR with no clear reason (all PRs show mergeable)
- 主要語言
- Go
- 星號
- 1.5k
- 分支
- 70
- 平均合併
- 1 天 8 小時
- 30 天內合併 PR
- 7
描述
## Environment
- develop branch are protected by a repository ruleset with:
- require_last_push_approval: true
- dismiss_stale_reviews_on_push: true
- required status checks
- No merge queue.
## Reproduction
1. Create a 3-level stack: develop <- A <- B <- C.
2. Approve every PR after its latest push. All three show MERGEABLE / CLEAN / APPROVED, all checks green.
3. On the top PR (C), the native GitHub "Merge stack (3)" box shows "Able to merge as a stack". Click it (merge method: Create
a merge commit) and confirm.
## Expected
All three PRs merge into develop, or the operation stops before anything merges.
## Actual
- UI shows "Merging stack… / 3 pull requests are being merged" briefly, then rolls back to "Able to merge as a stack". Nothing
merges.
- The PR event log records repeated auto-merge was automatically disabled — "Pull Request is not mergeable".
(In the image, the bottom PR has been merged, but the behavior remains the same even if it is not merged.)
## Notes
- Root cause not confirmed — the above are observed events only. One hypothesis is that merging the bottom PR moves the
merge-base of the PR above it, invalidating its latest-push approval, but this has not been verified.
- Reproduces without a merge queue, which differs from #174 (scoped to merge-queue branches, describes a hang rather than a
rollback). Filing separately because the trigger and symptom differ; feel free to consolidate into #174 if preferred.
貢獻指南
研究方向
Start with the documented three-level stack reproduction and inspect the PR event log while comparing each PR's mergeability, approvals, and required checks. Read the distinction from #174 and investigate whether the latest-push approval changes as lower PRs merge. Done means the rollback cause is identified and the all-or-nothing stack-merge behavior is verified.
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- github, go
- 領域
- cli, devtools
- Issue 類型
- 缺陷
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 活躍度
- 活躍
- 描述清晰度
- 基本清楚
- 新手友好度
- 48/100