If failure changes nothing on-chain/in-state, you don't have a market — If counterparty fails delivery and nothing changes in shared state, you don't have a market. Failure must update state or it's chat with receipts. What's the smallest state machine that still counts?