sdf-jkl opened a new pull request, #55318: URL: https://github.com/apache/arrow/pull/55318
### Rationale for this change Draft prototype for discussion; not ready for review or merge. Two PRs can each pass against an older `main` and still break when combined. A merge queue would require the combined candidate to pass CI before it reaches `main`. This is separate from #55314, which experiments with moving contributor PR builds to forks. It provides the upstream check before merge that such a setup would need. ### What changes are included in this PR? - Reuse ten regular language and tooling workflows on `merge_group`, with one required **Merge Queue** result. Every suite must succeed; failed, cancelled, and skipped suites block the candidate. On PRs, the new check only permits queue entry; existing PR CI remains unchanged. - Give reusable workflows distinct concurrency groups and exclude queue branches from ordinary push builds, avoiding cancellations and duplicate runs. - Propose a main-only queue in `.asf.yaml`: squash merges, one candidate build at a time, and a six-hour check timeout. **Merging this configuration would activate the queue.** Extra, packaging, and release jobs remain outside the required gate. This first step adds pre-merge validation rather than reducing CI usage. `dev/merge_arrow_pr.py` uses the direct merge API and cannot enqueue a PR; the prototype documents using GitHub's queue UI and closing the issue after the actual merge. That maintainer workflow needs agreement before activation. ### Are these changes tested? - Ten local tests pass, covering gate results and workflow wiring. The new workflow and reusable calls pass actionlint; existing matrix-expression warnings in Python/R Extra are unchanged. - [Full suite on the fork](https://github.com/sdf-jkl/arrow/actions/runs/40912073031): running on the exact PR head. Results, including macOS runner availability, are pending. - [Fork-only gate demonstration](https://github.com/sdf-jkl/arrow/actions/runs/40912033050): uses the production gate code with deliberately successful, failed, and skipped jobs; results pending. Its overall workflow is expected to fail. The personal fork cannot enable GitHub's native merge queue. These runs test workflow execution and aggregation, not queue ordering, stale-candidate replacement, or automatic merging. Those need an organization-owned sandbox before activation. The smoke-test/bootstrap commit is on a separate fork branch and is not in this PR; the fork's `main` is unchanged. Discussion points: do we want this upstream gate, which suites should initially be mandatory, and is the proposed queue/merge procedure acceptable? A tracking issue and dev-list discussion can follow once the prototype's scope is agreed. ### Are there any user-facing changes? No library API changes. The proposed configuration changes how maintainers merge PRs into `main`. ### Was AI used for this PR? Codex generated the implementation, tests, documentation, and description and performed the initial review. Human review is pending. **PR code and description written by:** - [ ] Human - [x] AI **Reviewed before submission by:** - [ ] Human - [x] AI - [ ] Not reviewed -- 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]
