When I reject AI code even if it works

Hacker News Top Tools

Summary

The author explains why they often reject AI-generated code even when it works, citing reasons like inability to explain the approach, overly large diffs, premature abstractions, and reduced system reasoning, and argues for mandatory human review.

No content available
Original Article
View Cached Full Text

Cached at: 06/21/26, 04:30 AM

# When I reject AI code even if it works Source: [https://vinibrasil.com/when-i-reject-ai-code-even-if-it-works/](https://vinibrasil.com/when-i-reject-ai-code-even-if-it-works/) With implementation getting faster and faster, the real bottleneck moves to reviewing the volume of code generated by AI\. I’m not even talking about your coworkers’ \(and their agents’\) PRs, but your own`git diff`after your coding agent has finished its job\. Even when I follow good practices – like starting with the plan mode, dividing big tasks into phases, and[shipping small changes](https://vinibrasil.com/how-ai-is-changing-my-job-tracer-bullets/)– I still feel cognitive overload when reviewing something I haven’t actually thought through myself\. GENERATEDBETTER FIT Before coding agents, when given a task, I would explore the codebase, think of different solutions, experiment, and only then implement\. That could take days of consolidating all that context\. When I finally submitted that PR, confidence was higher, and explaining each of my changes to my coworkers was easier\. I have to admit that with AI, completing big tasks still takes me days\. More often than not, I reject all changes made by AI and start over\. The difference between the first session and the second is not the LLM model, but the person behind the screen\. With more time to consolidate[the problem I’m trying to solve](https://vinibrasil.com/on-asking-why/), I can drive the agent to a better solution instead of being driven by it\. ![Can you trust the diff?](https://vinibrasil.com/images/when-i-reject-ai-code-even-if-it-works/git-show-oss.png)FIG\.Can you trust the diff?More and more, I reject AI code for the same reasons: - I reject AI code when I can’t explain the approach in my own words\. - I reject AI code when the diff is bigger than the problem\. - I reject AI code when it introduces abstractions before proving they’re needed\. - I reject AI code when it works locally but makes the system harder to reason about\. - I reject AI code when I’m trusting the output more than my understanding\. It’s not uncommon to see engineers accept AI\-generated changes too quickly, and that is why I advocate for required human review in conjunction with AI reviews\. The reality is that code that runs and makes the CI green can still be a bad solution, and engineering has always been about implementing adequate, scalable, and extensible solutions\. I’ve been using coding agents for some time, and despite how impressive they are, they still need a great engineer guiding them to great solutions\. Yes, coding agents can help you with this task with more than just writing code, but that doesn’t mean they can do it autonomously in a sustainable manner*yet*\.

Similar Articles

Reviewing AI Code Is Not A Viable Argument (2025)

Lobsters Hottest

The article argues that requiring thorough code review negates the supposed productivity gains of LLM coding assistants, as empirical research shows they do not help write code better or faster, and proponents fail to address the inherent error rates.

Writing quality code in the age of AI

Reddit r/artificial

The article discusses the challenges and best practices for writing high-quality code with AI assistance, emphasizing the need for rigorous code review and avoiding blind trust in AI-generated output.

Reviewing code requires reading

Lobsters Hottest

A developer blog post argues against the idea of shipping AI-generated code to production without reading it, emphasizing that code review serves critical purposes: diffusing responsibility, reducing bus factor, and maintaining team knowledge of the codebase.