I asked GPT to review my code, and all it does is nitpick style
Yesterday and today, it just piles on trivial complaints about naming and line breaks, but can't catch actual logic bugs lol
I might as well just run a linter
7 answers
Hahahaha this is totally me
Isn't that just a badly written prompt? lol
If you put "don't point out style/naming, only review logic/edge cases/exception handling" in the prompt, it makes a difference. And you need to break it down and submit it function by function, not the whole file. If you give it everything at once, it just skims the surface and that's it.
I used it closely for a couple of months too, and my conclusion is that it’s best described as a “second reviewer.” It’s not good at catching real logic bugs. In particular, it almost never catches async or state-related issues; instead, it occasionally points out missed null checks or boundary values. But even then, half the time it’s off base, so now I only use it as a self-checklist before opening a PR.
I mean, that's a bit much. I don't think it's fair to blame only the model when the context was too narrow. If you don't give it the related files and test code, how's it supposed to catch logic bugs? If you give it all that and it still only touches the style, then it's not too late to rip into it.
The root problem is that linters and LLMs overlap in what they do. Leave style to the formatter, and ask the model things like "Explain what this function does." As it explains, bugs pop out at the points where it contradicts itself. In practice, using it that way improves review quality quite a bit.
Got a source? lol If it's that bad, just running the linter is the right call.