Dynamic fee hook on Robinhood Chain
Uniswap v4 Hook Contract 0x20421170f993d075ef25db3fd9589cfe5b912880 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 whitelist-gated pool hook that applies owner-configured dynamic swap fees per pool. Some traders may pay more or less depending on the pool's fee config and address lists, while LPs can always withdraw freely.
How it works step by step
- Registers pools at creation and checks that the pool creator is on an owner-managed whitelist.
- Assigns each pool a fee configuration (several fee levels and weights) from a default set by the owner, which can be changed later.
- Sets a dynamic swap fee for each trade through a fee override, and counts swaps per pool.
- Checks liquidity additions against a whitelist, likely limiting who can add liquidity (for example, only an approved position manager).
- Keeps a separate address list used during swaps, possibly to give certain addresses special fee treatment or access.
- Swap behaviour
- Before each swap the hook looks up the pool's fee configuration and a swap-time address list, then returns a fee override. It may also restrict or reprice some swappers. It cannot take tokens from swaps directly because return deltas are disabled.
- Liquidity behaviour
- Adding liquidity is checked against an owner-controlled whitelist, so unapproved callers may be blocked from adding. Removal callbacks are disabled, so LPs can always withdraw freely.
- Fee behaviour
- The swap fee is dynamic and set per pool from stored fee tiers that the owner configures. Fees go to LPs through the normal pool fee. The exact fee caps cannot be confirmed from bytecode.
- Owner & admin controls
- The owner, using two-step ownership transfer, can edit the default fee config, update per-pool fee configs, and manage the creator/LP whitelist and the swap address list. A registrar role also exists. Maximum fee bounds are not verifiable from bytecode.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeAddLiquidity, beforeSwap
beforeInitialize: registers the pool, checks the creator whitelist and stores its fee config; beforeAddLiquidity: gates liquidity additions using the whitelist; beforeSwap: applies the dynamic fee override, checks the swap list and counts swaps.
Security & trust assessment
Risk level: medium, estimated (decoded bytecode, medium confidence).
Who controls it: A single owner controls fee configurations and the whitelists. At worst, the owner can raise fees, block new liquidity or pool creation, and possibly affect who can swap.
Risk to user funds: The hook holds no funds and cannot deduct tokens. It only sets the swap fee, and the maximum fee range is unverified. LP principal cannot be locked or drained.
Security findings
- [medium] Owner-adjustable dynamic fees: The owner can change the fee tiers for existing pools. Any upper cap cannot be confirmed without source, though Uniswap v4 limits LP fees to 100%.
- [low] Whitelist gating: Pool creation and liquidity additions depend on owner-managed whitelists, and an address list is checked during swaps, which may restrict some traders.
- [info] Withdrawals unrestricted: Remove-liquidity callbacks and return deltas are disabled, so the hook can never block LP withdrawals or take swap tokens.
Contract details
- Verified source
- No
- Bytecode size
- 10,626 bytes
- Upgradeable proxy
- No
- Detected patterns
- access-control, ownable
Pools using Dynamic fee hook
- ETH / HOOKR (Dynamic fee) — 24h volume $0, TVL $116, 0 swaps today