The counterexample first

Here is an event order that a surprising number of agent runtimes produce under a perfectly ordinary network hiccup:

t1: agent -> toolservice: charge_customer(order=91, amount=40)

t2: toolservice: executes charge, txn=TXN-441

t3: toolservice -> agent: ACK lost (gateway timeout at the proxy)