Files
awesome-copilot/skills/copilot-pr-autopilot/references/02-wait.md
T
github-actions[bot] 5075e262b5 chore: publish from main
2026-07-01 01:10:23 +00:00

1.7 KiB

Step 2: Wait for review

Sub-agent type: general-purpose; budget: 20-minute hard cap (one bounded sub-agent, NOT extension-driven).

Skipped when the loop is in single-iteration mode — there's no Copilot review to wait for.

Inputs

From step 1:

  • PrNumber.
  • baseline — the LatestCopilotReview.submittedAt string captured before the trigger fired (empty string if no prior Copilot review).

Return contract

  • 02-check-review-status.ps1 JSON snapshot.
  • recommendation ∈ {ready, give-up-push-commit}.
  • ready iff both LatestCopilotReview.submittedAt > baseline AND ReviewAtHead: true.

Procedure

Poll 02-check-review-status.ps1 approximately every 3 minutes until ready or the 20-minute cap is hit:

pwsh ./scripts/02-check-review-status.ps1 -PrNumber <n>
  • Extract submittedAt and ReviewAtHead from the JSON each tick.
  • Stop and return ready on the first tick that satisfies both conditions vs. the captured baseline.
  • On cap reached without ready, return give-up-push-commit.

Gotchas

  • Don't poll faster than ~3 minutes. There is no progress signal from the API; faster polling only burns budget.
  • give-up-push-commit fallback is parent-driven. When the sub-agent returns this recommendation, the parent pushes a substantive (non-whitespace) commit — auto-assign on synchronize is the most reliable trigger. Then the parent re-enters the loop at step 1 with a fresh baseline.
  • Single bounded run, not extension-driven. Do not request extensions on this step — if 20 min isn't enough, the right move is the give-up-push-commit fallback, not more polling.