Fee sharing hook on Robinhood Chain
Uniswap v4 Hook Contract 0x0e5c7d0fa2af5938a1eae8ed293e5c8ea72a68c8 on Robinhood Chain · Fee sharing
- Volume (24h)
- $7.09
- Value locked (TVL)
- $0
- All-time volume
- $7.09
- Pools using this hook
- 1
- Swaps (24h)
- 1 (1 traders)
- Total swaps
- 1
What it does
A whitelist-gated hook that charges an owner-configurable dynamic fee on every swap, collects a hook fee for split recipients or donation to LPs, and leaves LP withdrawals unrestricted.
How it works step by step
- Charges a dynamic swap fee on registered pools, with fee settings stored per pool and a default configuration set by the owner.
- Collects part of swap value as pending fees per pool, which can be claimed and split among multiple recipients (up to a fixed maximum).
- Can donate collected fees back to the pool's LPs through the Uniswap donate function.
- Uses a whitelist checked at pool initialization and when adding liquidity, so only approved addresses may create pools or add liquidity.
- Swap behaviour
- Before each swap the hook sets a dynamic fee and can adjust swap amounts via a return delta to collect a hook fee; after the swap it records accrued fees for the pool. Exact fee levels cannot be confirmed from bytecode.
- Liquidity behaviour
- Adding liquidity may be restricted to whitelisted addresses or registered positions. Remove-liquidity callbacks are disabled, so LPs can always withdraw freely.
- Fee behaviour
- Applies a dynamic LP fee and a hook fee taken from swaps, configured per pool from owner-set default tiers; accrued fees are claimed and split among configured recipients or donated to LPs. Exact percentages and caps are not verifiable from bytecode, though an InvalidDynamicFee check suggests some bound.
- Owner & admin controls
- The owner (two-step ownership) can manage the whitelist, set default fee tiers, update per-pool fee configs and recipient splits, and set the registrar. Fee caps cannot be confirmed from bytecode.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeAddLiquidity, beforeSwap, afterSwap, beforeSwapReturnDelta
beforeInitialize registers the pool and checks whitelist and config; beforeAddLiquidity gates who can add liquidity; beforeSwap sets the dynamic fee and counts swaps; beforeSwapReturnDelta lets it take a hook fee from swap amounts; afterSwap records accrued fees.
Security & trust assessment
Risk level: medium, estimated (decoded bytecode, low confidence).
Who controls it: A single owner controls fee settings, recipient splits, the whitelist and the registrar. The worst case is raising swap fees (to an unverified cap) or blocking new liquidity additions.
Risk to user funds: The hook can take a fee portion of each swap and hold it as pending fees until claimed; the exact maximum is unknown from bytecode. LP principal cannot be locked or taken since withdrawals bypass the hook.
Security findings
- [medium] Swap fee via return delta with unverified caps: The hook can take a fee from swap amounts using a return delta, and the owner can change fee configs; the maximum fee is not visible without source.
- [low] Whitelist gating on pool creation and adding liquidity: The owner controls a whitelist used when initializing pools and adding liquidity, which can restrict who provides liquidity.
- [info] LP withdrawals unrestricted: Remove-liquidity callbacks are disabled, so the hook can never block or charge LP withdrawals.
Contract details
- Verified source
- No
- Bytecode size
- 23,408 bytes
- Upgradeable proxy
- No
- Detected patterns
- access-control, donates, dynamic-fee, moves-currency, ownable, return-delta, self-unlock
Pools using Fee sharing hook
- ETH / MOTION34 (Dynamic fee) — 24h volume $7.09, TVL $0, 1 swaps today