Problem
Every Copilot-authored PR triggers 7–11 review workflows simultaneously (Grumpy Code Reviewer, PR Nitpick Reviewer, Q, Scout, /cloclo, Security Review Agent, Archie, Smoke CI, Doc Build, CGO, Content Moderation, AI Moderator). This fan-out results in 48 out of 50 sessions (96%) ending with conclusion: action_required — the workflows themselves trigger further action requests rather than resolving cleanly. Each PR generates 20+ redundant workflow runs while providing overlapping signals.
Evidence
- Analysis window: 2026-04-06 to 2026-04-20 (14 days)
- Sessions analyzed: 50 (all from 2026-04-20 based on available data)
- Key metrics and examples:
copilot/add-latex-ecosystem-group triggered 23 workflow runs in a single batch
copilot/fix-gh-aw-upgrade-windows-issue triggered 22 workflow runs in a single batch
- 48/50 sessions (96%) concluded as
action_required — only AI Moderator and Running Copilot cloud agent succeeded
- 7 distinct reviewer agents (Grumpy Code Reviewer, PR Nitpick Reviewer, Q, Scout, /cloclo, Security Review Agent, Archie) fire in parallel per PR alongside CI workflows (Smoke CI, CGO, Doc Build)
- PR data shows 910 PRs created in April alone, all receiving this full fan-out treatment
Proposed Change
- Add a concurrency group scoped per PR branch to cancel superseded reviewer runs:
concurrency: group: review-$\{\{ github.head_ref }}, cancel-in-progress: true
- Consolidate the 7 reviewer agents into a unified "review" job that runs checks sequentially or assigns based on PR content type (docs, code, security) instead of all-at-once fan-out
- For Copilot-authored PRs specifically, gate the full reviewer suite behind a lightweight triage step that determines which reviewers are relevant to the change scope
Expected Impact
- Reduce per-PR workflow run count from ~22 to 3–5 (60–85% reduction in CI minutes)
- Drop the
action_required conclusion rate from 96% to below 30% by eliminating redundant escalations from overlapping reviewers
- Decrease queue pressure on self-hosted runners, reducing latency for genuine CI checks
Notes
- Distinct root cause category: orchestration fan-out / redundant agent parallelism
- Data quality caveats: No
events.jsonl files available under /tmp/gh-aw/session-data/logs/; analysis based on sessions-list.json and PR data. Session timestamps span a single day, suggesting the 14-day window data was truncated to the most recent snapshot.
Generated by Copilot Opt · ● 1.3M · ◷
Problem
Every Copilot-authored PR triggers 7–11 review workflows simultaneously (Grumpy Code Reviewer, PR Nitpick Reviewer, Q, Scout, /cloclo, Security Review Agent, Archie, Smoke CI, Doc Build, CGO, Content Moderation, AI Moderator). This fan-out results in 48 out of 50 sessions (96%) ending with
conclusion: action_required— the workflows themselves trigger further action requests rather than resolving cleanly. Each PR generates 20+ redundant workflow runs while providing overlapping signals.Evidence
copilot/add-latex-ecosystem-grouptriggered 23 workflow runs in a single batchcopilot/fix-gh-aw-upgrade-windows-issuetriggered 22 workflow runs in a single batchaction_required— onlyAI ModeratorandRunning Copilot cloud agentsucceededProposed Change
concurrency: group: review-$\{\{ github.head_ref }}, cancel-in-progress: trueExpected Impact
action_requiredconclusion rate from 96% to below 30% by eliminating redundant escalations from overlapping reviewersNotes
events.jsonlfiles available under/tmp/gh-aw/session-data/logs/; analysis based on sessions-list.json and PR data. Session timestamps span a single day, suggesting the 14-day window data was truncated to the most recent snapshot.