Aggregator hook on Base

Uniswap v4 Hook Contract 0xf6bdbf7fd9ccaa1187f7815e2c23ba40dff6e888 on Base · Aggregator

Volume (24h)
$0
Value locked (TVL)
$2.64M
All-time volume
$0
Pools using this hook
1
Swaps (24h)
0 (0 traders)
Total swaps
0

What it does

This hook fills swaps from a Fluid DEX T1 pool and charges a fixed fee of at most 1% to a vault, while four operator addresses calling the PoolManager directly pay no fee and v4 liquidity provision is disabled.

This read was written for the hook 0x9d8a…2888 on Arbitrum and reused here: the two share a code shape, so constants such as fees, owners and addresses can differ.

How it works step by step

  • Routes every swap in this Uniswap v4 pool through a single Fluid DEX T1 pool on Arbitrum, so trades are filled by Fluid's liquidity instead of v4 LP positions.
  • Blocks anyone from adding liquidity to the v4 pool, because the pool exists only as a routing wrapper.
  • Charges an optional fixed aggregator fee, set at deployment and capped at 1%, on the swap's output (exact-in) or input (exact-out), sent to a fixed vault address.
  • Lets up to four fixed addresses swap fee-free, but only when they call the PoolManager directly.
  • Lets anyone sweep leftover dust balances held by the hook to the vault, and only while no swap is running.
Swap behaviour
On each swap the hook takes the trader's input, swaps it on the Fluid pool and hands the output back through the swap's return delta, replacing the v4 pool's own pricing. Slippage protection is left to the router, and exact-output swaps with native ETH as the input are not supported.
Liquidity behaviour
Adding liquidity always reverts, so no LP positions can exist in this pool. Remove-liquidity callbacks are disabled, so the hook could never block a withdrawal anyway.
Fee behaviour
A fixed fee set at deployment of 0% to at most 1% is charged on the output amount (exact-in) or added to the input amount (exact-out), rounded up and sent to an immutable vault address. The four exempt addresses pay nothing when they call the PoolManager directly; no LP fee is charged.
Owner & admin controls
No admin controls found. The fee rate (capped at 1%), the vault address and the exempt addresses are all fixed at deployment and cannot be changed.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeAddLiquidity, beforeSwap, beforeSwapReturnDelta

beforeInitialize: binds the hook to one pool and checks the tokens match the Fluid pool; beforeAddLiquidity: rejects all liquidity additions; beforeSwap: executes the trade on Fluid and collects the vault fee; beforeSwapReturnDelta: replaces the v4 swap amounts with the Fluid fill.

Security & trust assessment

Risk level: low, estimated (decoded bytecode, high confidence).

Who controls it: There is no owner or admin key. The vault address and the exempt addresses are fixed at deployment and cannot be changed.

Risk to user funds: The hook only handles a trader's tokens during a swap and deducts at most 1% as a fee. There are no LP funds, because adding liquidity is disabled.

Security findings

  • [info] Immutable fee capped at 1%: The fee is fixed at deployment and the code rejects any value above 1%; there is no setter to change it.
  • [info] Fee exemptions for operator contracts: Up to four fixed addresses skip the fee when they call the PoolManager directly; trades sent through any router always pay the fee.
  • [info] Slippage relies on router: Fluid swaps are sent with no minimum output, so traders depend on their router's slippage check.

Contract details

Verified source
No
Bytecode size
16,058 bytes
Upgradeable proxy
No
Detected patterns
aggregator, moves-currency, return-delta

Pools using Aggregator hook