A small robot pauses at a curtain, thinking about a towel hanging nearby

Wipe your hands with a towel, not on the curtains

Stanislav Kapustin Aug 22, 2026 ai · automation · systems thinking · debugging

Wipe your hands with a towel, not on the curtains.

That’s a strange sentence to end up thinking about, but it’s the clearest way I’ve found to explain what bothers me most in AI-generated instructions — and why AI is so bad at writing its own prompts by default.

Say you tell an AI: wipe your hands. There’s no towel, so it wipes them on the curtain. You correct it: use a towel, I’ll add one now. The instruction gets rewritten as: wipe your hands with a towel, not on the curtain.

The negative half survives even after the reason for it disappears. Once a towel always exists, “not the curtain” is dead weight — but it stays in the prompt. Enough of these accumulate, and during compression “use the towel” can get dropped while “don’t use the curtain” survives. Or the towel goes missing for some unrelated reason. Either way, the AI is left reasoning that wiping hands on the curtain is still technically possible. So it happens.

I hit the same failure building a refund reconciliation system. My first rule was: don’t process a refund younger than 5 days — the accounting system’s settlement window hadn’t closed yet, and early refunds broke the ledger. That’s a curtain rule. It holds until a retry, a delayed webhook, or a compressed context lets exactly that case slip through.

The fix removed the option entirely. The query that pulls refunds for processing excludes anything under 5 days old at the source — there’s no curtain left in the room to reach for.

Say the towel. Build the system so it’s always there, and the curtain is never part of the room to begin with.

Read next

Three nearby posts worth opening next.

Need a similar system in your business?

If you have a manual workflow between tools, I can help map the logic, design the system, and automate it in a way your team can actually use.

Hire Me on Upwork