Custom pricing hook on Robinhood Chain

Uniswap v4 Hook Contract 0x6a4b21c8f1be2d388cb14db9cf51e2b39518c088 on Robinhood Chain · Custom pricing

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

What it does

A Uniswap v4 hook that runs custom logic before swaps and can take a share of swap currency, with a ticketing view exposed for reading its state.

How it works step by step

  • Runs custom logic in beforeSwap on every swap in its pool
  • Uses beforeSwapReturnDelta to alter the amounts a swap settles for
  • Calls take() to withdraw currency from the pool manager to the hook
  • Maintains per-swap state in storage slots 0 to 2
  • Exposes a ticketing() view getter reading the same state
Swap behaviour
beforeSwap is called on each swap; it may take currency through take() and return a delta that changes the swap amounts.
Liquidity behaviour
No liquidity callbacks.
Fee behaviour
Uses the pool's static fee. No fee-setting selector was decoded.
Owner & admin controls
No admin controls found. No owner or setter selectors were decoded; ticketing() is a view getter only.

Enabled Uniswap v4 callbacks

beforeSwap, beforeSwapReturnDelta

beforeSwap: runs custom logic before each swap and can take or settle currency via the take(address,address,uint256) call. beforeSwapReturnDelta: lets the hook return a delta that alters the swap amounts, so the hook can effectively consume part of the swap flow.

Security & trust assessment

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

Who controls it: No privileged role was identified from the decoded selectors, so centralization cannot be assessed with confidence.

Risk to user funds: The hook can take swap currency through take() and adjust swap amounts through its return delta, so a portion of user swap flow may be retained by the hook. The exact amounts and conditions are not determinable from the decoded bytecode.

Security findings

  • [medium] Hook takes swap currency via return delta: The beforeSwapReturnDelta permission combined with a call to take() means the hook can divert part of a swap's input or output into its own accounting.
  • [info] Stateful swap logic without source: Storage slots 0 through 2 are read and written during beforeSwap, indicating per-swap state such as counters or ticket bookkeeping that cannot be verified without source.
  • [info] Logic not verifiable from bytecode alone: Without verified source, the exact condition under which funds are taken and how the returned delta is computed cannot be confirmed.

Contract details

Verified source
No
Bytecode size
1,358 bytes
Upgradeable proxy
No
Detected patterns
moves-currency, return-delta

Pools using Custom pricing hook