I gave my agent a boring job. Go down a list, pull out the ones that matched a rule, hand them back. A minute later it returned a clean answer. Well formatted, confident, capped with a tidy little summary line.

It had done about two thirds of the list and stopped.

Nothing in the reply flagged it. There was no "I ran out of room" or "I did the first forty." It read exactly like a finished job. If I hadn’t gone back and counted the source myself, I’d have shipped two thirds of the work and called it done.

That gap is baked into how these tools work, and once you see it you notice it everywhere.

A finished-looking answer is the target

A language model is trained to produce text that resembles a good answer. That is the thing it is actually good at: making the next stretch of words look right given everything before it.

A completed task and a completion-shaped paragraph are two different objects, and only one of them shows up in the text: the words. So that is what the model aims at, steering toward "looks done" whether or not the task is done.

Often those two line up, which is why it usually works fine. They come apart on exactly the tasks where finishing is tedious: the long list, the every-single-row pass, the check-all-of-them job. Around item forty, a wrap-up sentence is an extremely plausible next thing to write, because finished answers tend to end around there. So it ends.

Your AI is trying to produce something that looks like a finished task, and that only sometimes means finishing it.

You have already felt this

You don’t need an agent to have hit this. You can see it in a chat app.

Ask for ten of something and you may get seven good ones before the list stops. Ask it to clean up a long document and the top half can come back polished with the bottom half untouched, under a closing line that says "I've reformatted the document for you."

You did not get lied to on purpose. The model wrote the most likely ending, and a confident ending is likely whether or not the body underneath it is actually complete.

The dangerous version is the one you cannot eyeball. With ten items, you’d notice the three that are missing. With sixty rows where three got skipped, you won’t, and the reply looks the same either way.

The part that would tell you it fell short is the part the model is worst at including, because an honest "I only did some of it" doesn’t look like a finished answer.

Telling it to be thorough helps only a little

The obvious move is to add "be thorough, do all of them, don't skip any." It helps a little. Then it fails in the same way.

Because the model is still producing text that looks like it obeyed. "I carefully went through all sixty and verified each one" is itself a completion-shaped sentence. It is easy to write without having done any of it. You cannot patch a looks-done problem by adding more words that describe looking done. You are feeding the exact behavior you are trying to stop.

What changes it is a definition of done that lives outside the model’s own narration.

Make done something it can count

The real fix is giving the task a finish line the agent can test itself against, and the reach to actually run the test.

Swap "I think I got them all" for this: here are sixty inputs, here are the outputs, count them. Sixty in, sixty out, or it isn’t done. A count either equals sixty or it does not, and no amount of confident phrasing moves that number.

That only works if the agent can touch the real thing: the actual list, the actual files, the real inputs, held next to its own output and compared.

A tool that only has the paragraph you pasted into a chat box can do nothing but produce a plausible summary of that paragraph. It has no source to check against, so "looks done" is the only target available to it. Give it the real material and it can grade its own work against something real.

Give the agent a finish line it can count and the material to count it against.

Seeing the steps helps too. If the work happens where you can watch it, you catch the stop at forty while it is happening. If all you ever get is the summary, remember that the summary is the one part engineered to look complete.

An agent on your computer can check its own count

An agent running on your own computer, working from the files you give it, can be handed a real definition of done and made to check it. It can hold all sixty and compare its output against the source, instead of against its own sense of when answers usually wrap up.

It will still stop early sometimes. With a count to check against, you can catch that before it’s handed to you dressed up as finished.