sdf-jkl opened a new pull request, #12075:
URL: https://github.com/apache/arrow-rs/pull/12075

   # Which issue does this PR close?
   
   No linked issue. Follow-up to #11894, from [this 
report](https://github.com/apache/arrow-rs/pull/11894#issuecomment-6621398141) 
by @Jefffrey.
   
   # Rationale for this change
   
   Dependabot PRs can enter the merge queue before their PR CI finishes.
   
   Dependabot branches live in `apache/arrow-rs`, so each push also starts the 
`push` run of `CI`, where `Required Checks` is skipped. GitHub [reports a job 
skipped by a conditional as a 
success](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/troubleshooting-required-status-checks),
 and the `pull_request` run doesn't create its own `Required Checks` job until 
every suite finishes. Until then, the skipped check is the only one with that 
name on the commit.
   
   On #12051 the skipped check landed at 02:51:09 UTC, the PR first entered the 
queue at 03:02:28, and the real check wasn't created until 03:13:18.
   
   This doesn't let untested code merge, because the queue still needs a 
passing `merge_group` run. All 100 PRs merged after #11894, including #12051, 
had one before merging. The cost is that a Dependabot PR with failing CI could 
hold one of the queue's two build slots until its queue run fails.
   
   # What changes are included in this PR?
   
   Add `dependabot/**` to the `branches-ignore` list of the `push` trigger, as 
[DataFusion's 
`rust.yml`](https://github.com/apache/datafusion/blob/main/.github/workflows/rust.yml)
 already does, and update the matching assertion in `check-ci-config.py`. The 
`pull_request` and `merge_group` triggers don't change, so Dependabot PRs get 
the same PR and queue CI as before.
   
   Two limits:
   
   - Other branches pushed to `apache/arrow-rs` still get the skipped check. 
All 7 same-repo PRs merged after #11894 came from Dependabot, so this covers 
what we see today.
   - A fork's own `dependabot/**` branches also stop running push CI. That only 
affects the informational `CI (fork)` check.
   
   # Are these changes tested?
   
   The `check-ci-config.py` assertion now requires the exclusion and fails 
without it. It can't show the queue behavior, so that needs checking on a real 
Dependabot PR after this merges: it should not be possible to queue the PR 
until its PR CI finishes.
   
   # Are there any significant user-facing changes?
   
   No.
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to