diff --git a/.agents/skills/nemoclaw-maintainer-fix-e2e-failures/SKILL.md b/.agents/skills/nemoclaw-maintainer-fix-e2e-failures/SKILL.md index e410eeb55f8..a8efcbee667 100644 --- a/.agents/skills/nemoclaw-maintainer-fix-e2e-failures/SKILL.md +++ b/.agents/skills/nemoclaw-maintainer-fix-e2e-failures/SKILL.md @@ -16,7 +16,7 @@ Continuously inspect automatic E2E results for `main`. Coordinate ownership and 2. Keep release operations out of scope. Never change, retag, publish, or otherwise touch a release, tag, or release artifact during this workflow. Route release work to the existing release workflow. 3. Confirm maintainer authorization. Merge only when the request grants it. Otherwise, leave the PR `approval-ready` and continue the loop. 4. Check Git and GitHub access. Follow [Git and GitHub Access Hard Stop](../_shared/git-github-hard-stop.md) on access failure. -5. Fetch trusted `origin/main`. Read its PR-limit policy with `git show origin/main:.github/workflows/pr-limit.yaml`. For a non-exempt author, do not create a claim that would exceed the 10-open-PR limit. +5. Fetch trusted `origin/main`. Read its PR-limit policy with `git show origin/main:.github/workflows/pr-limit.yaml`. For a non-exempt author, do not create a claim that would exceed that limit. Do not declare success or end the loop because the queue is empty or the newest run passes. Wait for the next automatic `main` result. diff --git a/.github/workflows/pr-limit.yaml b/.github/workflows/pr-limit.yaml index 754893e79b7..99f67fc38bf 100644 --- a/.github/workflows/pr-limit.yaml +++ b/.github/workflows/pr-limit.yaml @@ -27,6 +27,8 @@ jobs: PR_NUMBER: ${{ github.event.pull_request.number }} REPO: ${{ github.repository }} run: | + LIMIT=5 + # Core maintainers are exempt from the PR limit. EXEMPT="ericksoa kjw3 jacobtomlinson cv jyaunches" for user in $EXEMPT; do @@ -40,10 +42,10 @@ jobs: echo "Author $AUTHOR has $OPEN_COUNT open PR(s)" - if [ "$OPEN_COUNT" -gt 10 ]; then + if [ "$OPEN_COUNT" -gt "$LIMIT" ]; then gh pr comment "$PR_NUMBER" --repo "$REPO" --body \ - "This repository limits contributors to 10 open pull requests. Please close or merge existing PRs before opening new ones." + "This repository limits contributors to $LIMIT open pull requests. Please close or merge existing PRs before opening new ones." gh pr close "$PR_NUMBER" --repo "$REPO" - echo "::error::PR closed — author $AUTHOR exceeds the 10 open PR limit" + echo "::error::PR closed — author $AUTHOR exceeds the $LIMIT open PR limit" exit 1 fi diff --git a/AGENTS.md b/AGENTS.md index 993bdd85043..256a25cb165 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -344,4 +344,4 @@ If the command trace contains no reviewer-request write, report the event as an - Direct PRs follow `.github/PULL_REQUEST_TEMPLATE.md`; the managed documentation workflow uses its generated body - PRs that change `scripts/prepare-dgx-station-host.sh` must include reviewable DGX Station test evidence identifying the tested commit, Station profile or scenario, result, and a supporting link. Any maintainer may review the evidence; without acceptable evidence, the PR is not ready to approve or merge. Treat the evidence as human-reviewed, not authenticated hardware provenance. Exceptional bypasses use existing repository governance and must document the reason on the PR. - No secrets, API keys, or credentials committed -- Apply the 10-open-PR limit from `.github/workflows/pr-limit.yaml` only to accounts that the workflow does not exempt +- Apply the open PR limit from `.github/workflows/pr-limit.yaml` only to accounts that the workflow does not exempt diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e6f727d6f10..615f797bfb7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -511,7 +511,7 @@ For Markdown docs routing, user-skill guidance, and release-prep documentation w ## Pull Requests -We welcome contributions. Every PR requires maintainer review before merge. Contributors may have up to 10 open PRs at one time. +We welcome contributions. Every PR requires maintainer review before merge. Contributors may have up to 5 open PRs at one time. Core maintainers listed in `.github/workflows/pr-limit.yaml` are exempt from this limit. Maintainers review pull requests according to project priority, security impact, release readiness, and reviewer availability. PRs that solve issues with Priority set to Urgent or High are more likely to receive earlier review when maintainers have capacity.