Every automated reviewer eventually meets an item it cannot call. With one threshold, that item still gets a verdict: the score lands a hair above or below the line and the reviewer commits to pass or fail. That is a guess dressed up as a decision, and it fails in both directions. A pass lets a defect through; a fail burns a human's time on a false alarm.
The cost of those wrong guesses is now measurable. A study of 31,073 CodeRabbit review-feedback pairs across 239 GitHub repositories found that developers rejected 56.3% of agent-generated reviews, mainly because of false alarms, redundant or out-of-scope suggestions, and misalignment with developer intent, as reported in CRJudgeBench. Meanwhile, the review agents benchmarked in c-CRAB collectively solved only around 40% of human-authored review tasks. A reviewer that confidently answers everything is overclaiming on roughly half its output.
Selective classification gives the formal name to the fix: a model may abstain on uncertain inputs in order to raise the accuracy of the predictions it does make, as described in Calibrated Selective Classification. The same paper makes a sharper point that matters for design. A model can be accurate on average and still attach high confidence to wrong answers, so abstention has to be built on confidence estimates that actually track correctness. That is a calibration question, not a threshold question, and it is why one number is not enough.
The human side has a hard limit too. Defect detection in code review drops to near zero past 400 lines reviewed at once, according to the SmartBear and Cisco study summarized in this verification guide. Under heavy AI adoption, median PR review time rose 5 times and incidents per pull request tripled, per Faros AI's data cited in the same guide. You cannot fix a reviewer's uncertainty by throwing every borderline item at a human, because the humans are already saturated.



