How to fix the AI code review bottleneck
The AI code review bottleneck comes from pull requests nobody verified before review. What to measure and change at 20 to 150 engineers.
How to fix the AI code review bottleneck
One agent pull request at Acme, checked before anyone is asked to review it.
On your team, who is the first person to read the agent's code?
KaaS Newsletterkaas.team/newsletter
You turned on coding agents, the pull request count went up, and nothing ships faster. That is the AI code review bottleneck, and the usual reading is that your reviewers are too slow.
One engineering analytics vendor built its benchmark from 8.1 million pull requests1. At the 75th percentile, an agent pull request sits 17.6 hours before a reviewer even opens it, against 3.4 hours for an unassisted one. That is about five times as long21. The longest wait comes before review starts, and the same pull requests merge least often1.
Our read is that AI pull requests wait because they reach a reviewer unowned and unchecked, so the fix is to make the author verify, explain and shrink the change before review.
To see where the time goes, we follow one change at Acme Inc. An agent picks up a low-priority backlog ticket, "add a CSV export to the invoices page", and opens a pull request overnight. Nobody asked for it today, nobody can explain it, and it is larger than the ticket.
How long AI pull requests wait for review
Agent pull requests are the slowest work in the queue, and in the vendor's data most of that time passes before anyone looks at them2. Once opened, they are also reviewed the slowest of the three groups the vendor tracks2. The longer wait does not end in more merges, either: they merge within 30 days far less often than unassisted ones1.
- Agent17.6 hours
- AI-assisted8.3 hours
- Unassisted3.4 hours
The two sources disagree on where the delay sits. A two-year study of one mid-sized company, controlling for change size, found the pickup delay comparatively small3. There the extra time sat between first human review and merge, about 20% longer for AI-authored pull requests3. Our guess, which neither source tests, is that both delays come from checking the author skipped.
At Acme, the CSV export pull request opened at night is still unopened at lunch. When a reviewer does open it, the questions start: what is this for, why is it so large, and did anyone run it?
repeat process until manager reassigns to me because this already missed 2 release cycles. Complete it in the time it would have taken me from scratch.
Who owns an AI pull request
Agent work often reaches review with nobody vouching for it, so the reviewer becomes the first person to check it. One vendor names three drivers, without measuring them: unclear ownership of agent-created work, agents pointed at low-priority backlog items, and reviewers hesitating on larger changes1. The backlog driver is a plainer explanation on its own: reviewers put off low-priority work, checked or not. We think ownership and priority travel together, since work nobody asked for today has nobody to vouch for it.
One study hand-coded rejected agent pull requests in public repositories, and its results fit an ownership gap without measuring it. The most frequent pattern was reviewers simply abandoning them, at 38%5. Duplicates affected 23%, where maintainers pointed to an existing pull request that already made the same change5. Our read is that both point to work nobody owned, though duplicates in public repositories can also come from separate contributors working in parallel.
of rejected agent pull requests were the agent's fault
A second study adds a caution: rejection outcomes overstate agent error, and many rejections come from workflow constraints or give no visible reason6. Among merged agent pull requests, 15.4% needed the reviewer to step in through feedback or direct commits6. The study gives no human baseline to compare that with.
Open-source projects now say this plainly. A terminal project's policy says low-effort work puts the burden of validation on the maintainer7. A principal engineer put the cost in attention: work the author never checked spends the reviewer's attention and gives nothing back8.
Now the doc is really hard to read. As others pointed out I think the problem is that I realize than I'm the first to actually review it and all the burden is on me bc they didn't do their job of actually verifying what was written.
At Acme, the CSV export came from the backlog, so no engineer owns it. Nobody can say why it builds the whole file in memory, and a half-done branch for the same export already exists. The reviewer is doing the author's job: finding out what the change is for and whether it works.
What slowed code review before AI
Large changes and failing checks also slowed review long before AI, and agents produce more of both. At the same percentile, agent pull requests in the vendor's data reach 293 lines against 157 for unassisted ones2.
In public repositories, agent pull requests that were not merged tend to be larger, touch more files and fail the project's CI checks5. Each extra failed check goes with about 15% lower odds of a merge5. That is an association in public data; it does not prove that running checks first changes the outcome. Still, every failing check is one the author could have seen before asking anyone to look.
lower merge odds associated with each extra failed check
A 2018 study of code review at one very large software company found that first feedback on a very large change took several times as long as on a small one9. Those are human changes from years ago, so take the principle from them: small changes get fast first feedback.
DORA's 2025 report says AI's acceleration can expose weaknesses downstream10, and review is downstream.
Agents do write bad code; about a third of the rejected agent pull requests above were the agent's fault6. We think the shape the code arrives in matters as much, and the size and check evidence points there.
One engineering leader in the vendor's survey named the shape problem.
AI tools tend to make changes larger than the request’s scope.
At Acme, the CSV ticket needed one endpoint. The pull request also reformats the invoices table and fails one lint check. Acme's reviewers saw oversized changes and unrun checks long before the agent; the agent just sends more of them.
What happens when reviewers read less, or a bot reviews
The longest study we found followed a mid-sized company for more than two years, about ten months of it under a mandate to use AI, and its reviewers kept pace by reading less. Per-reviewer load roughly doubled and automated review overtook human review3. Merge and revert rates held steady, so the volume got through.
21% of pull requests got a review with a human-written comment
39% before the mandate
What thinned was the human part: a typical reviewer's silent approvals roughly doubled while their commented reviews stayed flat3. The authors note that merge and revert rates miss defects, incidents and maintainability, so thinner review may not have shown up yet.
A bot reviewer does not fill that gap on its own. Across open-source repositories, even the best AI review tool's valid comments led to a code change far less often than human reviewers' comments did11.
- Human reviewers60%
- Best AI reviewer19.2%
A large consumer internet company that built its own reviewer found that developers ignore review comments entirely when faced with too many, much like alert fatigue12.
The only randomized evidence we found puts machine-written fixes with the author. In production experiments at a large technology company, AI wrote fixes for human reviewers' comments; showing those fixes to reviewers raised review time by over 5%13. In a second experiment the fixes went to authors and were collapsed for reviewers, and the authors still accepted them at a similar rate13.
The end state, as one developer tells it, is code nobody on the team can explain.
it's just AI implementation, AI writes code, AI review Code, someone says they are reviewing but they are just pushing AI review agent to do it. I don't think anyone could actually explain any line of what was written in the past month.
At Acme, under pressure, a second engineer approves the CSV pull request with no comment. The bot reviewer left a long list of suggestions, and nobody read them.
The fix: the author checks the PR before review
When the reviewer is the first to check, the fix is to make the author check first. The compiler project's policy says it in one line: contributors must read and review all generated code before they ask anyone else to review it14. A data storage project asks authors to explain why each change is correct and to leave out loosely related changes15.
Practitioners apply the same rule. One engineer suggests making authors present the code live and say what it does, so they own it4. Another now requires proof before reviewing anything.
Before I review I now require proof that the change works and steps to repro, this still puts onus on the author but not a silver bullet by any means.
Rules like this slip under pressure. One commenter's company expects self-review, which works well enough, but people sometimes still wave their own work through to the team when they are in a rush4. So pair the rule with a gate: tests and lint pass before a reviewer can be requested, and machine-written fixes and bot notes go to the author first. For bot notes that is our extrapolation from the randomized result on AI fixes13.
One lead committed shared agent rules, pre-commit checks and CI gates, with automated review on top. After a week of that setup, the lead says, reviewing a junior's code takes a few minutes4. It is one anecdote, and automated review earns part of the credit, so it shows only that a gate before the human can help.
Size is the contested part. One code host's own guidance on agent work says a change that needs a long description to review is probably too big16. One CTO dropped the company's small pull request rule, and every change there now gets a risk label instead17.
The small-PR rule was optimized for human writing speed. AI removed that constraint, and the rule became overhead.
No study we found measures a size cap for agent work, or whether checking by the author shortens the wait. The randomized result on where machine fixes go is the closest evidence, so read the fix as our analysis, not a measured remedy.
- TicketNames an owner for the agent's work.Engineering manager
- DraftWrites the export.Agent
- Self-reviewReads every line and writes the description in their own words.Owning engineer
- ChecksMust pass before review is requested.Tests and lint gate
- Bot passSuggestions go to the author only.Agent
- SplitThe endpoint and the table cleanup become two pull requests.Owning engineer
- ReviewReads a short pull request, with proof and a repro attached.Reviewer
- After mergeDid it survive the release?Revert check gate
At Acme, the same export now has an owner. The owning engineer splits it in two, gets the checks green and works through the bot's suggestions before a human sees it. The reviewer reads a short change someone has already verified.
A pull request template puts the rule on every change. This is the one Acme keeps.
pull_request_template.md## Owner
Who can explain each line:
## Why
Ticket link:
What it does, in your own words:
## Proof
How you know it works:
(test output, screenshot or logs)
## Repro
Steps a reviewer can follow:
## Before review
- [ ] I read every line myself
- [ ] Tests and lint pass
- [ ] Bot notes handled or answered
- [ ] Nothing outside the ticketWhy verification is the scarce step
Writing a change now costs little; checking it still takes a person. When nobody upstream checks a change, that cost lands on the reviewer, and we think senior attention is the hardest thing on a team to scale.
Our read is that the fixes leaders reach for first (more reviewers, a review deadline or a second bot) all leave the same person checking first. One commenter named the mistake as trying to scale human attention to match the code AI writes18.
The compiler project has a name for the alternative: an extractive contribution, unreviewed output that takes design and code review from maintainers14. Inside a company, the maintainers are your senior engineers, and every unchecked pull request draws on them.
At Acme, the same agent wrote the stalled pull request and the one that moved. The difference is who checked it first.
What to do on Monday
- Split the wait. Measure pickup time and time from first review to merge separately, for agent, AI-assisted and human pull requests.
- Count real review. Track the share of pull requests with at least one substantive human comment, not only approvals.
- Name an owner. Every agent pull request gets a named engineer who can explain each change and attaches proof and a repro before review.
- Gate before the human. Tests, lint and the AI reviewer run before a reviewer is requested, and the bot's suggestions go to the author.
- Pair the count. Report merged pull requests next to review wait, queue depth and revert rate, against your own last quarter.
The companion, The AI-ready engineering team playbook, is free with your work email.
On your team, who is the first person to read the agent's code?
Param
Sources
- LinearB, AI in software development: what the 2026 data shows (2026 Software Engineering Benchmarks Report), 2026
- LinearB, 2026 Software Engineering Benchmarks Report, 2026
- He et al., AI Writes Faster Than Humans Can Review (arXiv 2607.01904), 2026
- r/EngineeringManagers: How to deal with juniors that produce 100% AI written stuff that is painful to review?, 2026
- Ehsani et al., Where Do AI Coding Agents Fail?, arXiv 2601.15195 (full text), 2026
- Peralta et al., Why Are Agentic Pull Requests Merged or Rejected?, arXiv 2605.22534, 2026
- Ghostty: AI_POLICY.md, 2026
- r/ExperiencedDevs: Today I announced that I won't be reviewing AI generated PRs at company meeting, 2026
- Sadowski, Söderberg, Church, Sipko (Google), Modern Code Review: A Case Study at Google, ICSE SEIP, 2018
- Google Cloud, Announcing the 2025 DORA report, 2025
- Sun et al., Does AI Code Review Lead to Code Changes? A Case Study of GitHub Actions (arXiv 2508.18771), 2025
- Sun et al. (ByteDance), BitsAI-CR: Automated Code Review via LLM in Practice (arXiv 2501.15134), 2025
- Maddila et al. (Meta), AI-Assisted Fixes to Code Review Comments at Scale (arXiv 2507.13499), 2025
- LLVM: AI Tool Use Policy, 2026
- Icechunk docs: AI Usage Policy, 2026
- GitHub Docs, Stack AI-generated code in pull requests, 2026
- Rootly blog: Why we got rid of our small-PR rule, 2026
- r/EngineeringManagers: AI and Pull Requests, 2026
