cast
cast(PoolKey key, bool zeroForOne, uint128 amountIn, uint128 minOut, address recipient) returns (uint256 castId)
Pulls the input — an ERC-20, or native ETH as currency0 — and records the order in the batch that is open right now. A batch is two blocks of the clock the chain gives contracts — on Robinhood Chain that is the Ethereum block number, so a batch is about 24 seconds — and the batch id is that number divided by two. Up to 64 casts per pool per batch.
Nothing touches the pool here. The order sits with the hook until the window closes.
minOut is a hard floor. Before the residual is swapped, settle quotes it with a self-reverting swap, drops every cast that would land under its minOut, re-quotes the smaller set until nothing more drops, and refunds the dropped casts in full. A tight minOut cannot block the batch for anyone else.