Reviewing PRs in the Age of AI
Originally published on LinkedIn
๐ฅ๐ฒ๐๐ถ๐ฒ๐๐ถ๐ป๐ด ๐ฃ๐ฅ๐ ๐ถ๐ป ๐๐ต๐ฒ ๐๐ด๐ฒ ๐ผ๐ณ ๐๐
There are more PRs than ever right now. And Iโm starting to worry weโre merging code we donโt fully understand or even works.
The volume has gone up. Iโm not convinced the validation has.
And if Iโm honestโฆ Iโm nervous about the quality slipping, not because of AIโs ability to code, but because of how weโre validating that code, and the humans in the loop, both creator and reviewer.
Iโm seeing more and more pull requests that look right, clean, well-structured, even โbest practiceโ but donโt actually work. Or worse, solve the wrong problem or solve it in the wrong way. It's wrong for me to be catching them that late.
And itโs not a junior vs senior thing. Itโs happening across all levels.
This isnโt just about AI generating code on its own. This is also about ๐ฒ๐ป๐ด๐ถ๐ป๐ฒ๐ฒ๐ฟ๐ ๐๐๐ถ๐ป๐ด ๐๐ ๐๐ผ ๐ฏ๐๐ถ๐น๐ฑ ๐ฃ๐ฅ๐ and their process.
AI has changed how we write code. But itโs also quietly broken some of the assumptions we used to rely on.
โ ๏ธ
๐ง๐ต๐ฒ ๐ฎ๐๐๐๐บ๐ฝ๐๐ถ๐ผ๐ป๐ ๐๐ฒ ๐ฐ๐ฎ๐ปโ๐ ๐บ๐ฎ๐ธ๐ฒ ๐ฎ๐ป๐๐บ๐ผ๐ฟ๐ฒ
We used to trust that:
โ The engineer ran the code โ It works (at least locally) โ It solves the intended problem โ Itโs in the right place
Now? None of those are guaranteed.
Iโve reviewed PRs where: โ The code is perfectly reasonableโฆ but never executed โ The solution is cleanโฆ but incorrect โ The logic worksโฆ but lives in completely the wrong part of the system
Itโs what happens when ๐ฒ๐ป๐ด๐ถ๐ป๐ฒ๐ฒ๐ฟ๐ ๐ฟ๐ฒ๐น๐ ๐ผ๐ป ๐๐ ๐๐ถ๐๐ต๐ผ๐๐ ๐ณ๐๐น๐น๐ ๐๐ฎ๐น๐ถ๐ฑ๐ฎ๐๐ถ๐ป๐ด ๐๐ต๐ฒ ๐ผ๐๐๐ฐ๐ผ๐บ๐ฒ.
In some cases, it feels like: prompt โ commit โ hope ๐ค
๐ช๐ต๐ฎ๐โ๐ ๐ฐ๐ต๐ฎ๐ป๐ด๐ฒ๐ฑ
AI has made writing code faster. Itโs made validation harder.
Because AI-assisted code: โ Looks convincing (even when itโs wrong) โ Mimics good practices without real understanding โ Can hide gaps in problem comprehension
So reviewing any code change with AI applied isnโt just about code quality anymore.
Itโs about ๐ถ๐ป๐๐ฒ๐ป๐, ๐ฐ๐ผ๐ฟ๐ฟ๐ฒ๐ฐ๐๐ป๐ฒ๐๐, ๐ฎ๐ป๐ฑ ๐ฝ๐ฟ๐ผ๐ผ๐ณ.
๐ช๐ต๐ฎ๐ ๐โ๐บ ๐น๐ผ๐ผ๐ธ๐ถ๐ป๐ด ๐ณ๐ผ๐ฟ ๐ป๐ผ๐
โ Does this actually solve the problem? โ What evidence shows this works? (tests, logs, screenshots) โ Why this approach? Was there real reasoning? โ Is this in the right place and approach architecturally?
๐ง๐ต๐ฒ ๐๐ป๐ฐ๐ผ๐บ๐ณ๐ผ๐ฟ๐๐ฎ๐ฏ๐น๐ฒ ๐๐ฒ๐ป๐๐ถ๐ผ๐ป
โAI should make us faster.โ
And it doesโฆ at producing code.
But speed without verification just shifts the risk downstream, to reviewers, QA, and production.
Thatโs the bit that makes me nervous. ๐ฌ
We donโt need to stop trusting engineers.
But we canโt rely on the ๐๐ฎ๐บ๐ฒ ๐ธ๐ถ๐ป๐ฑ ๐ผ๐ณ ๐๐ฟ๐๐๐ anymore, especially when AI is part of the workflow.
๐ฆ๐ผ ๐ถ๐โ๐ ๐ถ๐บ๐ฝ๐ฒ๐ฟ๐ฎ๐๐ถ๐๐ฒ ๐๐ฒ ๐๐๐ฎ๐ฟ๐ ๐ฎ๐๐ธ๐ถ๐ป๐ด ๐ฏ๐ฒ๐๐๐ฒ๐ฟ ๐พ๐๐ฒ๐๐๐ถ๐ผ๐ป๐:
๐ What are you looking for in PRs now?
๐ Do you actually trust that code has been tested?
๐ Are you reviewing in a completely different way in the age of AI PRs?