Stacked PR checks unrelated to the topmost PR are skipped
- 主要语言
- Go
- 星标
- 1.5k
- 派生
- 70
- 平均合并
- 1 天 8 小时
- 30 天内合并 PR
- 7
描述
### What happened
For a stack of pull requests, CI workflows are skipped when they are unrelated to the topmost PR in the stack, even if they are relevant to a lower PR.
### Reproduction
1. Configure separate CI workflows that run for changes to different parts of the repository.
2. Create PR A from the trunk branch with a change that should trigger one of those workflows.
3. Create PR B on top of A with an unrelated change that does not trigger that workflow.
4. Publish A and B as a stack.
5. Observe that the workflow relevant to PR A is skipped because it is unrelated to the topmost PR, PR B.
### Expected behavior
Each PR in the stack should run the CI workflows relevant to its own changes.
### Actual behavior
CI workflows are selected based on the topmost PR in the stack. Workflows unrelated to that PR are skipped across the stack, including workflows that are relevant to lower PRs.
### Example consequence
PR A changes a database migration and should trigger migration tests. PR B adds an unrelated application change on top. If the migration workflow is unrelated to PR B, it is skipped, leaving PR A without the CI coverage relevant to its changes.
This is distinct from #319, where stale or missing merge refs prevent pull request workflows from running at all.
贡献指南
调研方向
Start by tracing how CI workflows are selected for a published stack and reproduce the issue with two stacked PRs that affect unrelated repository areas. Done means each PR in the stack runs workflows relevant to its own changes, including lower PRs when the topmost PR does not trigger them.
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- go
- 领域
- ci-cd
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 冷清
- 描述清晰度
- 基本清楚
- 新手友好度
- 50/100