The Review Bottleneck Nobody Wants to Talk About
I need to vent about something that’s been driving me crazy, and I think the data backs up what I’m feeling.
According to recent industry data, PR review times have ballooned 91% while teams are merging 98% more PRs. I can tell you from personal experience: both of those numbers sound about right, and the combination is unsustainable.
My Typical Day in 2024 vs. 2026
2024: I’d open my PR dashboard in the morning, see 3-5 PRs to review, spend about 2 hours on reviews, and have the rest of the day for my own work. Each PR was maybe 200-400 lines of code that a human wrote, with clear logic I could follow.
2026: I open my dashboard and there are 8-12 PRs waiting. Each one is larger because AI tools make it easy to generate more code per feature. I spend 3-4 hours on reviews — and I still don’t feel like I’m doing them thoroughly. By the time I finish, more have arrived.
The Uncomfortable Math
Here’s what’s happening:
- AI makes code generation cheap. Developers can produce more code in less time, so they do.
- More code = more PRs. Or larger PRs. Usually both.
- Review is still manual. The human bottleneck hasn’t changed. We still have the same number of senior devs doing reviews.
- Review quality is declining. When you’re underwater on reviews, you start skimming. You focus on the obvious issues and miss the subtle ones.
We’ve essentially shifted the bottleneck from code generation to code verification, and nobody planned for that shift.
What I’ve Observed as a Reviewer
When reviewing AI-heavy PRs, I notice several patterns:
Quantity over structure. AI-generated PRs tend to have more code than necessary. The AI generates comprehensive implementations where a simpler approach would work. More code means more review time.
Inconsistent style. Even within a single PR, AI-generated code can shift between different patterns and conventions. This makes review harder because I can’t build a mental model of the author’s approach — there isn’t one consistent approach.
The “looks right” problem. AI-generated code often looks like production-quality code at a glance. Clean variable names, proper structure, reasonable abstractions. But the devil is in the details: wrong edge case handling, subtly incorrect business logic, or security issues hidden behind well-formatted code. It takes more effort to spot issues because the code doesn’t have the usual “code smell” signals that indicate human mistakes.
Conversation overhead. When I leave review comments on AI-generated code, the author sometimes can’t explain why the code was written that way — because they didn’t write it. This makes the review feedback loop slower and less productive.
What Actually Helps
After months of struggling with this, here’s what’s actually made my review workflow better:
1. PR size limits. We enforce a soft limit of 400 lines per PR. This was always a good practice but it’s now essential. AI makes it too easy to create 1000+ line PRs.
2. Author-annotated PRs. We’ve started requiring PR authors to annotate which sections were AI-generated and which were hand-written. This helps reviewers allocate attention.
3. Mandatory automated checks before review. Linting, type checking, security scanning, and test coverage gates all run before a PR hits my queue. This filters out the obvious issues.
4. Review time budgets. I timebox my review to 30 minutes per PR. If I can’t review it in 30 minutes, it goes back to the author to be broken up.
5. Pair review sessions. For complex PRs, we do live review sessions instead of async. It’s faster and catches more issues.
The Bigger Question
The human approval loop was always part of the software development process, but it was sized for human-speed code generation. Now that code generation has been turbo-charged by AI, we need to fundamentally rethink the review process.
Some people say “just use AI to review AI-generated code.” I’m skeptical. An AI reviewer would have the same blind spots as the AI generator. But I’m open to being wrong.
Is anyone else drowning in their review queue? What’s working for you?