I mean “mistakes” can be hard to define. IMHO there is an area of responsibility between the LLM, the LLM user, and the code itself.
Did it make a mistake because I didn’t follow instructions properly or hallucinated some content?
Did it make a mistake because the prompt was unclear/open to interpretation or plain wrong?
Did it make a mistake because it lacked some context? Or too much context and it starts getting confused?
Is not handling edge cases automatically when that was not requested a mistake?
I am not just trying to defend LLMs, in many cases they make obvious mistakes and just don’t follow my arguably clear instructions properly. But sometimes it is not so clear cut. Maybe I didn’t link a relevant file (you can argue it could have looked to it), maybe my prompt just wasn’t that clear etc