Skip to main content

Rezz Protocol

Rezz is the cross-chain AMM. It is not the wallet. Arcane is the first client; any interface that can call the pair ABI can use Rezz.

Dual-pool model

Each connected chain holds an independent constant-product pool and its own LPs.

  • A source pool takes the input and emits a Swap intent.
  • A destination pool pays the output after the intent is final on the source.
  • There is no shared k across chains. Prices can diverge; arbitrage, not the relayer, keeps them honest.

A compromise or pause on chain A cannot spend the reserves of chain B.

Mathematics

Reserves x and y satisfy k = x * y. The output for an input dx is the Uniswap v2 form with a 30 basis-point fee:

dy = (997 * dx * y) / (1000 * x + 997 * dx)

That is getAmountOut in the pair contract. The 0.3% stays in the pool and accrues to LP tokens.

First deposit mints sqrt(dx * dy). Later deposits mint the minimum of the two pro-rata amounts. Redemption burns LP tokens and returns the basket.

Factory

AMMFactory deploys pairs with a CREATE2 salt keccak256(token0, token1) and stores both orderings. Creation is owner-gated until the implementation is audited.

Cross-chain lifecycle

  1. The wallet builds an intent: source chain, destination chain, amounts, receiver, slippage, timestamp.
  2. The source pair pulls the input and emits Swap(sender, receiver, amount) (or the same-chain variant).
  3. The relayer waits for source finality, checks destination reserves, and submits settlement.
  4. State is RECEIVEDPENDINGSUCCESS or retryable FAILURE.

Advisory price APIs are a circuit breaker, not the payer of record. Production Rezz sizes the payout from the destination curve.

Fees

FeeAmountRecipient
Same-chain swap0.30%LPs, retained in the pool
Protocol fee at launch0.00%
Relayer bountyoptional, laterAnyone who posts a valid destination tx

There is no Rezz governance token in this version.

Whitepaper

The full specification lives in the repository at Rezz-Whitepaper/rezz-whitepaper.pdf.