Aggregator hook on Base
Uniswap v4 Hook Contract 0xfb790c7fe24506a9394596056e9276b421c86888 on Base · Aggregator
- Volume (24h)
- $0
- Value locked (TVL)
- $8.42M
- All-time volume
- $0
- Pools using this hook
- 1
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 0
What it does
Swaps in this pool are filled by a matching Uniswap V3 pool, with routed traders paying a fixed vault fee of at most 1% while four operator addresses pay none, and v4 liquidity deposits are disabled.
This read was written for the hook 0x2c6b…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 a v4 pool through a matching Uniswap V3 pool (same tokens, fee tier and tick spacing) instead of v4 liquidity.
- Charges an optional deploy-fixed vault fee on the swap's unspecified side (output for exact-in, input for exact-out), capped at 1%.
- Up to four fixed addresses (the operator's own contracts calling the PoolManager directly) are exempt from the vault fee.
- Blocks anyone from adding liquidity to the v4 pool; liquidity lives in the external V3 pool.
- Anyone can sweep leftover dust held by the hook to the vault while the PoolManager is locked.
- Swap behaviour
- On each swap the hook executes the trade against the linked Uniswap V3 pool and returns a delta so the trader receives the V3 output, minus the vault fee (or pays the V3 input plus the fee for exact-output). No price limit is applied beyond V3's full range, so traders should rely on router slippage checks.
- Liquidity behaviour
- Adding liquidity always reverts, so the v4 pool holds no LP positions. Remove-liquidity callbacks are disabled, so the hook can never block withdrawals.
- Fee behaviour
- A fixed fee set at deployment, between 0% and a hard cap of 1%, is taken from the swap's unspecified-side amount (rounded up) and sent to an immutable vault address; up to four exempt addresses pay nothing. The underlying V3 pool's own fee tier also applies.
- Owner & admin controls
- No admin controls found; the fee (max 1%), vault and exempt addresses are immutable constructor values.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeAddLiquidity, beforeSwap, beforeSwapReturnDelta
beforeInitialize: links the new v4 pool to the matching V3 pool and rejects native ETH or duplicate pairs; beforeAddLiquidity: reverts to forbid v4 liquidity; beforeSwap: performs the swap on the V3 pool and collects the vault fee; beforeSwapReturnDelta: replaces the v4 swap amounts with the V3 result and fee.
Security & trust assessment
Risk level: low, estimated (decoded bytecode, high confidence).
Who controls it: There is no owner; all parameters are immutable. The deployer chose the vault, fee (up to 1%) and exempt addresses, which cannot change.
Risk to user funds: The hook only handles swap amounts in flight, deducting at most 1% for the vault plus the V3 pool's fee. No LP principal exists in the v4 pool, so nothing can be locked or drained.
Security findings
- [info] Fee capped at 1% and immutable: The vault fee is fixed at deployment and the constructor rejects anything above 1%; there is no setter.
- [info] Fee exemptions for operator contracts: Up to four fixed addresses swap fee-free only when calling the PoolManager directly, giving them a small pricing advantage over routed traders.
- [info] No v4 liquidity, no withdrawal risk: Adding liquidity is blocked and remove-liquidity callbacks are disabled, so no LP funds are held or trapped.
Contract details
- Verified source
- No
- Bytecode size
- 16,174 bytes
- Upgradeable proxy
- No
- Detected patterns
- aggregator, moves-currency, return-delta
Pools using Aggregator hook
- WETH / USDC (0.05% fee) — 24h volume $0, TVL $8.42M, 0 swaps today