You can throw barely optimized code at a compiler and an executable file will come out at the other side. Think of the worst coding patterns: software might still work even when it uses goto statements. The cost for badly coded, sloppy software shows in decreased performance and stability, higher maintenance costs, and so on. The main “customer” of the code, though, are compilers, and they don’t really care about those aspects as long as the code runs. That’s why tests, linting, benchmarking, and human reviews exist.
With docs, the story is quite different. The compilers of docs are minds, either human or artificial. They are presented with content they must understand or, in the case of LLMs, process as context. The equivalent of code-that-compiles for docs is comprehension and the feeling of having satisfied a need. The only way of getting humans or LLMs to do something with a software product is through findable, succinct, easy to reproduce, accurate, and up-to-date explanations. Just putting words together won’t cut it.