diff --git a/.asf.yaml b/.asf.yaml index 29bd6a53615..1aede2a8173 100644 --- a/.asf.yaml +++ b/.asf.yaml @@ -179,6 +179,13 @@ github: # Lets a committer queue a PR before its checks have finished, which is # most of the point of having a queue. allow_auto_merge: true + # Limit open pull requests per user without write access. + # + # With coding agents, the number of open PRs now far exceeds our review capacity. + # Setting a limit helps reviewers focus on fewer PRs at a time. + creation_cap: + enabled: true + max_open_pull_requests: 3 # publishes the content of the `asf-site` branch to # https://datafusion.apache.org/comet/ publish: diff --git a/docs/source/contributor-guide/development.md b/docs/source/contributor-guide/development.md index 968c82eb4f1..199ec017d40 100644 --- a/docs/source/contributor-guide/development.md +++ b/docs/source/contributor-guide/development.md @@ -633,6 +633,13 @@ It is possible to debug both native and JVM code concurrently as described in th ## Submitting a Pull Request +With coding agents, the number of open PRs can far exceed our review capacity. To help reviewers +focus on fewer PRs at a time, users without write access are limited to **3 open, non-draft PRs**. +If you reach the limit, wait for existing PRs to be merged, close them, or convert them to drafts +before opening another. For work that is split into a series of small PRs, keep only the PR that +is ready for review, or that the later PRs depend on, as non-draft, and open the others as drafts +until it merges. + Use `git push` for normal updates to your PR branch. If you need to force push after a rebase or amend, use `git push --force-with-lease` instead of `git push --force` (or `-f`). This reduces the risk of accidentally overwriting another maintainer's commits when multiple people push