You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Tell a Transient Copilot Fetch Error From the Quota Body Before Advising No Re-Request #3510
pr_review.py wait reads Copilot's whole-body review "Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review." as COPILOT_ERROR_POSSIBLE_QUOTA (exit 41), and advises not to re-request. That body isn't always the quota.
On ptr727/HomeAutomation-Config#1430, a 5-file develop -> main promotion, the round posted that body about 30 seconds after the pull request was created. The Copilot Actions run for it logged the real cause:
HttpError: The request could not be processed because too many files changed - https://docs.github.com/rest/pulls/pulls#get-a-pull-request: Failed to fetch PR metadata for ptr727/HomeAutomation-Config#1430
GitHub's own count for the pull request was 5 files at the time, and the same pulls/1430 diff read worked when run by hand a few minutes later. A re-request then produced a normal review. Copilot had reviewed a feature pull request in the same repository normally about 10 minutes earlier. #3507, also a promotion, got the same body at 18:51Z the same day.
Why it matters
The quota reading stops a drive and hands it to the maintainer, while this failure clears on one re-request. The two share a review body, so the body alone can't tell them apart.
Options
Have wait and status read the Copilot run's log for the error line (gh run view <id> --log-failed, workflow Copilot, matched to the head) and classify too many files changed as transient, allowing one re-request.
Keep the quota reading, but have the remedy text name the run log as the place to check first, and treat one re-request as safe where a sibling repository's latest Copilot round succeeded.
Leave the tool as is, and record the run-log check in the runbook (.github/copilot-instructions.md).
Maintainer decision: option 1, read the Copilot run's log and classify too many files changed as transient, allowing one re-request.
Predicted file set: scripts/pr_review.py, tests/test_pr_review.py, scripts/README.md (pr_review section), .agents/skills/pr-review-conduct/SKILL.md and .agents/skills/drive-pr/SKILL.md (only where they describe the quota exit), plus each regenerated copy under .github/skills/ and .claude-plugin/fleet-skills/ (skill files and .source-digests/ entries) for those two skills, and .github/copilot-instructions.md (only if its runbook names the quota reading).
Activity
ptr727 commentedon Oct 27, 2026
Backlog burndown round 1 claim. Branch:
feature/3510-copilot-transient-fetch-error.Maintainer decision: option 1, read the Copilot run's log and classify
too many files changedas transient, allowing one re-request.Predicted file set:
scripts/pr_review.py,tests/test_pr_review.py,scripts/README.md(pr_review section),.agents/skills/pr-review-conduct/SKILL.mdand.agents/skills/drive-pr/SKILL.md(only where they describe the quota exit), plus each regenerated copy under.github/skills/and.claude-plugin/fleet-skills/(skill files and.source-digests/entries) for those two skills, and.github/copilot-instructions.md(only if its runbook names the quota reading).Re-Request Once on a Transient Copilot Fetch Error (#3542)