PR reviews haven't changed in decades. It's time to shift left.
PR reviews haven’t changed in decades. “At least 1 or 2 approvals to merge” is still the default policy everywhere. In this age of AI, it’s time to reflect on our best practices on pull requests.
10 PRs per person per day. This is now typical of the most productive developers in my org, and I’m sure it’s even higher for some. We’ve increased capacity to write code, but not to review them.
31% of PRs are merged without reviews according to one 2026 report 2. PRs are either never reviewed, or are taking longer to merge.
PR reviews were for strangers, not teammates. Just because it worked for OSS doesn’t automatically imply that it should work for teams.
Let me offer a thesis on a simple change to address all these issues: move the reviews before PRs are written.
Organise design reviews before writing PRs. High-level design debates should happen before pull requests are made, not after. Consider:
Why?
Prior art:
Reduce review burden with agentic review tools. The time-consuming parts of what humans traditionally do in code reviews can be delegated to AI agents.
The bottom ones are the most time-consuming, and the most automatable. Consider:
By the time PRs are seen by other humans, it should already be “clean”, with most issues and anti-patterns already caught and fixed. See some Prior art:
Aim to ship PR reviews in 5 minutes. Not by skipping review, but by front-loading it and delegating grunt-work to AI. Prerequisites:
The real review already happened before the PR. All that’s left is a sanity check.
Pretend we’re working on a 1-week-sized piece of work. Say, your video sharing site needs support comments. How might we do this? We can start by surprising our coworkers with a PR. Why stop at one? It will probably take 20 PRs, and I’m sure AI can write them all in a day.
What’s your first PR? Maybe a database migration. This may not go very well. “Why are we storing this in API service’s Postgres? Shouldn’t it be in Video Service’s DocumentDB?” your colleague might ask. You’ll do a back-and-forth exchange in the comments. You may even get it merged in 2 days if you’re lucky.
Instead, let’s try something different. Start by writing a simple design document. Let’s list down the data model, API, and some key decisions:
Design: video comments
Goals:
Key decisions:
Data model:
table Comment
user_id, bodyAPI surface area:
POST /video/:id/comment { body }GET /video/:id/comments { page }PR plan (tentative):
How you choose to write this is up to you. The intent-density on this document should be high (ie, more human thought than LLM generated). Hand-rolling it is realistically doable. Alternatively, LLMs today are getting better at architecture and technical writing, and that’s another way to go.
Next, get in touch with 2 other engineers. Organise a design review. “Do you have 30 mins? I’m working on video comments and I’d love to run some ideas past you both.” Present this document and discuss. Alice is going to ask “why are we using AWS SpamDetect? Let’s consider Cloudflare Malguard.” Bob’s going to ask “why do we need APIs when Next.js server actions should be enough.”
Figure it out as a team and reach an understanding.
Once you’re all aligned, you’re now ready to write your first PR. Put yourself in Alice’s and Bob’s shoes: how would you review the DB migration PR now? You’ve already talked about why Postgres works best here. Assuming CI is green, there’s really almost nothing to review.
Discuss before PRs. Discussing approach with a colleague saves days of PR comment threads.
The PR is not the review. It’s a sanity check on work already done, not the first time anyone thinks about what was built.
Delegate the grind to AI. Use automated code review loops. Agents focus on bugs and consistency, humans think in architecture and strategy.
GitClear — AI tool impact on developer output (2025) ↩ ↩2
Faros AI — AI Acceleration Whiplash (2026) ↩ ↩2 ↩3
Stephan Schwab — Pull Requests Were Never Meant for Your Team (2026) ↩ ↩2
Google — Software Engineering at Google, Ch.10: Documentation ↩
Anthropic — Claude Code: Auto-fix pull requests ↩
GitHub Blog — 60 Million Copilot Code Reviews (2026) ↩
Anthropic — Claude Code Review ↩
Addy Osmani — Agentic Code Review (2026) ↩
I am a web developer helping make the world a better place through JavaScript, Ruby, and UI design. I write articles like these often. If you'd like to stay in touch, subscribe to my list.