Reviews stuck in 'in progress'
What to do when a review's summary comment shows 'in progress' for longer than the typical review window.
Last updated
The PR-level summary comment shows in progress and has not updated to a verdict for longer than the typical review window. This is usually a slow run finishing up — most reviews complete in 2–5 minutes, but a few legitimately take 10 minutes or more. If the review has been running for over 15 minutes, you can force it to restart by pushing a new commit.
Symptom
What you see
- The PR-level summary comment shows Queued then In progress but never updates to PASS, ADVISORY, or FAIL.
- No inline review comments are posted on any file.
- The status check
ai-pr-reviewshowspending. - This persists for noticeably longer than the team's typical review time.
How long is too long?
- 2–5 minutes is the normal range for the Anthropic Batch API path. No action needed.
- 5–10 minutes is normal when the review fell back to the Messages API path (for example, because the batch took too long). Still no action needed.
- 10–15 minutes is the upper end of normal. If you are not in a hurry, wait it out.
- Over 15 minutes is unusual. The fix below will safely restart the review.
- Over 30 minutes with no progress means contact support.
See How long does a review take? for the full latency model.
Why it happens
Batch API processing is slow
ADO Pilot's primary path uses the Anthropic Batch API, which is roughly 50% cheaper than synchronous calls. Batches typically resolve in a couple of minutes, but Anthropic's batch queue depth varies and a busy window pushes any individual review out by a few minutes. This is by far the most common reason for an in progress state lasting longer than expected.
Fallback to Messages API
If the batch path takes too long or returns a transient error, ADO Pilot falls back to the synchronous Messages API to finish the review. The fallback path is reliable but slower end-to-end because it has to redo work the batch had already started.
Truly stuck (orphaned) review
A small fraction of runs hit a transient error mid-orchestration that prevents normal completion. Our backend has a stuck-review detector that finalizes these as failed after a configurable threshold, but the cleanest fix from your side is just to push a new commit.
How to fix it
Wait it out
If the review has been running for under 15 minutes, the fastest path is usually to wait. Pushing a new commit cancels the in-flight review and starts a fresh one — useful if the review is truly stuck, wasteful if it was 30 seconds from finishing.
Push a new commit to restart
If you have edits to land anyway, push them. ADO Pilot detects the new iteration, abandons the in-flight review, and starts over against the latest commit. The summary comment updates in place rather than spawning a duplicate.
If you have no actual edits to make, an empty commit works:
git commit --allow-empty -m "trigger ADO Pilot review"
git push
The abandoned review does not count against your review credits — only the new run is billed. See Mid-review pushes for the abandonment semantics.
Use Run AI Review (if the extension is installed)
If you have the Marketplace extension installed, the Run AI Review action in the PR's overflow menu re-queues the review without a new commit. See Re-running a review.
Contact support after 30 minutes
If the review has been in progress for more than 30 minutes with no update, the orchestration is genuinely stuck and our stuck-review detector should have finalized it. Contact support with the PR URL and the time you first noticed.
How to prevent it
- Keep PRs under 5,000 lines. Larger PRs hit the partial-review cap but they also tend to take longer to process before that cap is reached. Small PRs are reviewed faster.
- Don't pile multiple pushes on top of an in-progress review. Each push abandons the in-flight run and starts over. If you push three times in rapid succession, you have effectively waited for three review starts.
- Watch your review history. A persistent pattern of slow reviews (every PR taking 10+ minutes) is worth reporting; isolated slow runs are normal.