Dynamic fee hook on Robinhood Chain
Uniswap v4 Hook Contract 0x37a27b9e0753bce876c0cbe3f46ae886990068c8 on Robinhood Chain · Dynamic fee
- Volume (24h)
- $0
- Value locked (TVL)
- $116
- All-time volume
- $0
- Pools using this hook
- 1
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 0
What it does
A whitelisted, owner-configured dynamic-fee hook that charges and collects swap fees, paying them to recipients or donating them to LPs, while leaving LP withdrawals unrestricted.
How it works step by step
- Sets a dynamic swap fee per pool from an owner-configured fee profile, with an override flag to apply the fee on each swap.
- Can take a portion of swap amounts through a before-swap return delta and records pending fees per pool.
- Accrued fees can be claimed and split among configured recipients, or donated back to the pool's LPs.
- Restricts pool creation and adding liquidity to whitelisted addresses managed by the owner.
- Swap behaviour
- Before each swap the hook looks up the pool's fee configuration, may override the LP fee, and may deduct a fee from the swap amount. After the swap it updates fee accounting and swap counters; the exact fee caps cannot be confirmed from bytecode.
- Liquidity behaviour
- Adding liquidity passes through a check that appears to require a whitelisted caller. Remove-liquidity callbacks are disabled, so LPs can always withdraw freely.
- Fee behaviour
- Dynamic fees are chosen from owner-set default and per-pool configurations; the bytecode rejects invalid dynamic fees, but the exact maximum is not visible. Collected fees accrue per pool and are claimed to configured recipients or donated to LPs.
- Owner & admin controls
- The owner (two-step ownership) manages the whitelist, default fee parameters, per-pool fee configs, executors and recipient splits, and a registrar. The exact fee upper bound cannot be verified from bytecode.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeAddLiquidity, beforeSwap, afterSwap, beforeSwapReturnDelta
beforeInitialize: registers pools, checks whitelist and tick spacing, stores fee config; beforeAddLiquidity: gates LP deposits; beforeSwap: sets the dynamic fee and may take a fee; afterSwap: records fee accrual and swap stats; beforeSwapReturnDelta: lets the hook adjust swap amounts to take fees.
Security & trust assessment
Risk level: medium, estimated (decoded bytecode, medium confidence).
Who controls it: A single owner controls the whitelist, fee configurations and fee recipients. At worst they can raise swap fees to an unverified cap or block new deposits, but not stop withdrawals.
Risk to user funds: The hook can deduct fees from swap amounts through its return delta, at a rate the owner configures with an unknown cap. LP principal cannot be locked or taken on withdrawal.
Security findings
- [medium] Owner-controlled fees with unverified cap: The owner can change fee parameters that feed a swap return delta, and the maximum fee cannot be confirmed from unverified bytecode.
- [low] Whitelist gating for pools and liquidity: Only whitelisted addresses appear able to create pools or add liquidity; this does not affect withdrawals.
- [info] LP withdrawals unrestricted: Remove-liquidity callbacks are disabled, so the hook cannot block or charge LP withdrawals.
Contract details
- Verified source
- No
- Bytecode size
- 23,478 bytes
- Upgradeable proxy
- No
- Detected patterns
- access-control, donates, dynamic-fee, moves-currency, ownable, return-delta, self-unlock
Pools using Dynamic fee hook
- ETH / HOOKR (Dynamic fee) — 24h volume $0, TVL $116, 0 swaps today