de0u
I agree, there are a lot of subtle issues that might be not be immediately obvious.
I am thinking about delayed consequences (like drivers losing more and more attention over time) or cumulative consequences (like an LLM trained on an LLM's output).
Generally speaking, if I have to choose a project between an AI driven codebase and a human driven one, I am a little bit biased and I would probably choose the latter.
Nontheless, if I stop thinking rationally, I think there is a good middle ground that can be extremely valuable.
Following your example, if the output of the AI is 10x what usually gets written, I would expect the reviewer to not take the same amount of time to review it.
I would say that even if the reviewer takes 10x the regular time (let's say there's no gain for the reviewers), it's already a good thing: the development overall went faster because the code has not been written in the same amount of time.
Nontheless I expect the reviewer to not fall for ok-code, and to send it back.
At the very least, if no errors/bugs are in, I would expect them to mark it to be rewritten in the future, to allow to go in production with something that works and that can be improved.
I think the limit is discipline, if developers have the willpoer to not get lazy, they can prevent AI slop even using AI.
If on the other end we decide to accept what we receive because it is good enough, we are helping the problem to grow.
I would hope that in the long run, this will make the difference between a good product, and a mediocre one.