> Maybe the assumption is that it would also work for maintenance of larger code bases...
Or maybe not even - there is no assumption, just some non-developer, or weak-developer trying to get something done, with no thought for tomorrow.
The kind of developer that doesn't care about the code they are developing, nowadays vibe coding, probably has a large overlap with the kind of developer that was previously just trying to get through their day by copying code from Stack Overflow, or randomly shuffling their code to try to make core dump bugs appear to disappear.
There is version of this argument that you also sometimes hear - that so what if the LLM generated code is bad, because soon a better LLM will come along that is able to fix it. Perhaps, but that "soon" may be a long time coming. Human level AI is probably at least 10-20 years away, and in the meantime your LLM generated slop (if you vibe coded it rather than managing it) may be sitting there in production exposing your production servers and customers data to who knows what kind of vulnerabilities.
In the meantime, in terms of what LLMs can to today, there is definitely a limit in terms of complexity and project size, unless perhaps you are just talking about regurgitating that vibe-coded BASIC interpreter.
The fundamental problem is that while the LLM's training data was full of smaller size bits of code like student assignments, Stack Overflow solutions with explanations, decently commented parts of Open Source projects, etc, that enabled it to understand coding on a small scale, what was necessarily lacking from the training data (because it just does not exist in the public domain) are many examples of large scale projects. While there are a few large open source projects to learn from, such as gcc, linux, etc, what is missing are the high level design notes / explanations that would let the LM learn WHY the project was designed that way, and without the "WHY" all it can to is copy the "WHAT" - cargo cult coding by coping code patterns without knowing why they were chosen, and whether they are appropriate for the task at hand.