It might spit back the same thing the first round. But after the first time it received the exact same feedback for saying the same thing, the model will realize it’s in a deterministic sandbox and try something different. You need to give it all of the conversation including its past attempts as context. If it tries the exact same wording that’s okay, it’s just one more invisible round of back-and-forth. The model is going to rediscover how to work with the harness every time, but that’s not your users’ problem because you’ve hidden that wrinkly bit behind the automation - they just see “model did 10 drafts and here’s the result - would you like to view the result or page through the drafts?”
What I am describing is exactly what a human would do, it is just automated and thus, getting to a good result becomes insanely faster.
It should loop the LLM’s results back on itself repeatedly, behind the scenes, until its writing is free of signs of slop. After your quality gates pass and the result is presented, it’d be cool to then see a visualization of each of the agent’s drafts that the user can page through to watch how the writing was gradually incrementally improved by the model!
No need to keep a human in the writing-improvement loop. Just show it when it’s slop free.