Reference

Routing

Kavo searches the liquidity that already exists on Robinhood Chain for a quote it can actually execute. It runs no AMM of its own and holds no inventory.

Venues

Kavo quotes each venue through that protocol’s own quoter, then keeps whichever route returns the most output. The venues currently in the registry:

VenueQuotingExecutionApproval
Uniswap v3QuoterV2, across the 4 deployed fee tiers plus a WETH hopSwapRouter02ERC-20
Uniswap v4V4QuoterUniversal RouterERC-20, then Permit2
Uniswap v2getAmountsOut, direct and via a WETH hopV2 Router02ERC-20

The exact addresses are listed on Contracts.

How a route is chosen

Every venue is quoted at your exact input amount, in parallel. Failures are tolerated: a venue that reverts or has no pool simply contributes nothing. The surviving routes are sorted by output and the best one wins.

quoteTrade(request)     // every executable route, best output first
findBestRoute(request) // the winner, plus the alternatives it beat
buildSwap(...)         // calldata for that route

If no venue returns a fill, there is no route. Kavo reports that rather than falling back to an oracle price or an estimate.

Uniswap v4 pool discovery

v4 pools are not found by scanning initialisation events, because this chain carries a very large number of spam pools per token and event scanning returns noise. Instead Kavo derives the canonical hookless pool keys deterministically and confirms each one against onchain state before using it, so only pools that genuinely exist are quoted.

Quote fields

FieldMeaning
RouteThe venue and pool the quote came from, for example a specific fee tier.
Expected outputThe amount the quoter says this input returns right now.
Minimum receivedExpected output reduced by your slippage tolerance. Enforced onchain; the swap reverts below it.
Price impactThis fill compared against the marginal price on the same route. It answers how much your own size costs you.
Gas estimateReturned by the quoter where the venue provides one.
Transaction statusSubmitted, then confirmed or reverted, with a Blockscout link.

Price impact is measured, not assumed

Impact is computed by comparing your fill against a small probe on the same route rather than against a static pool figure. Comparing a size to itself always yields zero impact, which would make every pool look deep.

The liquidity figure

The liquidity column is measured rather than estimated. It is the largest quote size that still fills inside a fixed price-impact budget, derived from a ladder of live quotes against a small marginal probe. Markets that cannot absorb the smallest rung are labelled Thin.

No invented integrations

Kavo only routes through the venues listed above. If you see a protocol named anywhere in the interface, it is because Kavo quoted it. Nothing else is integrated, and no route is displayed that was not produced by a real quote.