Hook 0xebb0…8144 on Robinhood Chain

Uniswap v4 Hook Contract 0xebb0acef359671ad790da5ff496c25bf55ec8144 on Robinhood Chain · Other

Volume (24h)
$14.98K
Value locked (TVL)
$0
All-time volume
$590.90K
Pools using this hook
1
Swaps (24h)
27 (22 traders)
Total swaps
1,349

What it does

A Uniswap v4 hook that reacts after swaps and liquidity removals, can take currency deltas and issues or burns ERC-6909 claim balances, with owner-configurable parameters; full behaviour cannot be confirmed without verified source.

How it works step by step

  • Runs logic after each swap, reading stored parameters from contract storage
  • Can take or return currency deltas after a swap via afterSwapReturnDelta
  • Runs logic after liquidity removal and calls ERC-6909 mint or burn for claim accounting
  • Gates callers through a whitelist check
  • Exposes owner-only setters for a cap and a uint24 parameter
  • Includes an unlock callback and an execute entrypoint for self-unlocking pool operations
Swap behaviour
afterSwap runs after each swap and can adjust currency deltas through afterSwapReturnDelta, using owner-set parameters read from storage.
Liquidity behaviour
afterAddLiquidity and beforeRemoveLiquidity-related hooks are present in the dispatch table; afterRemoveLiquidity is enabled and reads the owner-set address, and the contract makes ERC-6909 mint and burn calls, so it likely tracks or issues claim tokens on liquidity removal. Exact logic is unverified.
Fee behaviour
Cannot be determined from decoded bytecode; a uint24 parameter is stored in slot 0 and afterSwap reads it, which may relate to a fee or bound but this is unconfirmed.
Owner & admin controls
Storage slot 0 holds an address (set via selector 0x068b488c) and slot 0 offset 20 holds a uint24 (set via 0x1ee2be5a); slot 1 holds an int128 written by setCap(uint256) (0x47786d37); slot 3 is an address compared against msg.sender in several functions (0x068b488c, 0x1ee2be5a, 0x47786d37, 0x6c2bbe7e, 0xd80aea15), suggesting an owner-restricted admin set. Owner can set a cap and a fee-like uint24 parameter and update an address, but the exact semantics cannot be confirmed without source.

Enabled Uniswap v4 callbacks

afterRemoveLiquidity, afterSwap, afterSwapReturnDelta

afterRemoveLiquidity: reacts after liquidity removal, likely minting or burning ERC-6909 claim balances. afterSwap: reads stored parameters and runs after each swap. afterSwapReturnDelta: lets the hook take or give currency deltas after a swap, so it can move pool funds.

Security & trust assessment

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

Who controls it: A privileged address stored in slot 0 and an owner check on slot 3 appear to control the cap, the uint24 parameter and the stored address. A malicious or compromised admin could alter these values to change swap outcomes or redirect deltas.

Risk to user funds: The hook has afterSwapReturnDelta and calls take, mint, burn and transfer, so it can hold, move or net currency deltas on swaps and liquidity removals. Users depend on the owner-set cap and whitelist; the exact amount at risk cannot be determined without source.

Security findings

  • [medium] Return delta permission enabled: afterSwapReturnDelta is enabled, so the hook can take or return currency deltas on swaps. This is the main channel through which it can move pool funds.
  • [medium] Fund movement and whitelist gating: The bytecode calls take, mint, burn and transfer, and reads a whitelist (isWhitelist selector), indicating access gating on callers and fund movement.
  • [low] Admin can change parameters without delay: Owner-only setters for a cap and a uint24 parameter exist with no visible timelock in the decoded bytecode.
  • [medium] Self-unlock and execute entrypoint: The hook calls unlock and includes a self-unlock tag with an execute entrypoint callable with two addresses, which can perform privileged operations inside pool unlock context.

Contract details

Verified source
No
Bytecode size
11,689 bytes
Upgradeable proxy
No
Detected patterns
erc6909-claims, moves-currency, return-delta, self-unlock

Pools using Hook 0xebb0…8144