Most of those look like context issues to me. Repo map (using Tree-sitter, etc) and documentation would already do wonders. Feeding 32-64kTok of context directly into a model like Gemini Pro 2.5 is something that more people should try out in situations like this. Or even 128kTok+.
Probably not, but that's where code review comes in. Which can also partially be done by AI, ironically.
With cursor at least it recognises linter errors and failing tests and attempts to correct its own problems, with varying levels of success