Fee sharing hook on Robinhood Chain

Uniswap v4 Hook Contract 0x385b947bf4b11fe0d49af4133041ff9e381ca0cc on Robinhood Chain · Fee sharing

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

What it does

Takes a fee on swaps in this pool and splits the proceeds between creator rewards and a buyback-and-burn reserve for the token.

How it works step by step

  • Records the pool key and token during beforeInitialize and marks the hook as initialized
  • Takes a fee from swaps through beforeSwapReturnDelta and afterSwapReturnDelta
  • Accumulates a creator rewards balance and a buyback reserve from collected fees
  • Unlocks the PoolManager and transfers currency to fund claimRewards and buybackAndBurn
  • Tracks totalBurned from buyback-and-burn operations
Swap behaviour
beforeSwap and afterSwap run hook logic on each swap and adjust amounts through return deltas, so part of each swap is diverted to the hook.
Liquidity behaviour
No liquidity callbacks.
Fee behaviour
A feeBps() getter exists and the hook is set up with return deltas, which suggests the hook takes a fee from swaps and routes part of it to a creator reward balance and a buyback reserve. The exact fee rate and split logic could not be fully determined without source.
Owner & admin controls
No owner or pause functions were decoded. Fee and reward parameters are stored in storage slots; the dispatched surface exposes manager(), creator(), feeBps() and buybackAndBurn(uint256,uint256,uint256). buybackAndBurn is externally callable and its access control could not be confirmed from bytecode alone.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize records the pool key and token and sets an initialized flag. beforeSwap and afterSwap run the swap-side logic and adjust return deltas. beforeSwapReturnDelta and afterSwapReturnDelta let the hook take a share of swap amounts, which is how the fee is collected.

Security & trust assessment

Risk level: medium (decoded bytecode, low confidence).

Who controls it: buybackAndBurn can be called externally and the hook holds a buyback reserve and creator rewards. If its access control is weak or absent, third parties could trigger buybacks at unfavourable times. A manager or privileged role may also influence reward accounting, but this could not be confirmed.

Risk to user funds: The hook can take a share of swap amounts through return deltas and move currency through the PoolManager via self-unlock to fund rewards and buybacks. User funds are exposed to whatever fee rate is set in feeBps and to the buyback and reward logic, which could not be fully verified from decoded bytecode.

Security findings

  • [info] Swap amounts adjusted by return deltas: The hook uses beforeSwapReturnDelta and afterSwapReturnDelta, so it can take part of a swap's amounts. Users pay this extra amount on every swap through the hook.
  • [medium] Hook moves currency via self-unlock: unlockCallback and take() calls indicate the hook unlocks the PoolManager itself and moves currency out of it to fund rewards and buybacks.
  • [medium] Externally callable buyback and burn: buybackAndBurn(uint256,uint256,uint256) is nonpayable and externally dispatched. Whether it is restricted to a privileged caller could not be verified without source.
  • [low] Reward accounting not fully verifiable: Multiple storage slots are written by swap and reward paths, and claimRewards is externally callable. Reward accounting correctness depends on logic that cannot be fully read from bytecode.

Contract details

Verified source
No
Bytecode size
5,213 bytes
Upgradeable proxy
No
Detected patterns
moves-currency, return-delta, self-unlock

Pools using Fee sharing hook