Depends a lot on what context you feed it. If you have decent internal documentation and can feed it the right files, it tends to do quite well for me, often needing corrections or style fixes. To use it most effectively, you have to know the vast majority of the code that you want it to write ahead of time. It saves time typing, looking up methods, wrangling APIs appropriately, and sometimes it surprises me by working around an edge case or writing an appropriate abstraction that I hadn't considered, but most of the time, it's mostly saving time on typing and tedious gluing, even with the corrections I make and hallucinations I have to correct.
Maybe it will be at some point, but it is not yet a reasonable substitute for having to think, plan, or understand the code you are working with and what needs to be done. It's also still more expensive than it needs to be to use on my free time (I'm happy to burn company money on it at work, though).
Aider has built-in functionality for this. You can pass it a command (dotnet test or whatever) and it will autorun it after AI edits. If tests fail it can paste the output into the context for you.