Each Universal Router release now carries the command types its dispatch() can return a failure for instead of reverting, read from its source; only a step of one of those with the allow-revert flag (0x80) set can fail while the transaction goes on. Such a step is listed with "(allowed to fail)". A BALANCE_CHECK_ERC20 the router lets fail guarantees nothing, so it is read as a zero check and keeps an earlier step's minimum. Every swap and every payment of ETH or an ERC-20 token succeeds or reverts the whole transaction, so the flag on them has no effect and they read as without it. Model: opus-5-5