Purely anecdotally the one persistent issue I have with LLMs writing code is that they are absolutely paranoid and add a load of indirection and defensive crap and even if you prompt to avoid that it will often require manual steering to remove the cruft.
Fallbacks and backward compatibility are killing me :) So many code paths that just don't fail predictably.
I have not noticed this with Opus 4.6+. The result is usually not too far from what I would have written myself.
recent gpts are horrendous for this, whereas recent claudes have a tic where they incessantly add useless comments referring to previous changes and will use multiple single-line comments instead of a standard multi-line docblock.
https://github.com/EspoTek/.claude/blob/master/CLAUDE.md
Stick the "Never suppress errors" section into your Claude.md, this will never happen again (works for me with Python/Flask, ymmv for other languages).