Stacked PR checks unrelated to the topmost PR are skipped
- Lenguaje dominante
- Go
- Estrellas
- 1.5k
- Forks
- 70
- Merge medio
- 1 d 8 h
- PR fusionados (30 d)
- 7
Descripción
### 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.
Guía de contribución
Línea de trabajo
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.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- go
- Área
- ci-cd
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 50/100