Dynamic fee hook on Robinhood Chain

Uniswap v4 Hook Contract 0x518cf3429f93da3c4bb8f22506406a0420560088 on Robinhood Chain · Dynamic fee

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

This hook runs custom logic before each swap, can adjust swap amounts and takes tokens during trades, but its exact pricing and fee effects cannot be determined from decoded bytecode alone.

How it works step by step

  • Implements only beforeSwap, which runs before each swap in a pool using this hook and can return a delta that changes the swap amounts.
  • Calls take(currency0, currency1, amount) on the PoolManager, so the hook moves tokens itself as part of the swap.
  • Reads and writes a small packed storage slot 0 (uint16, uint16, uint64 fields) and a uint256 in slot 1 that is updated on swaps, suggesting per-pool state such as a counter, rate or accumulated amount.
  • Exposes a view function 0x6439a6de that reads the packed state, and a nonpayable function 0x607378cc that updates slot 0 values.
  • Specific mechanism cannot be confirmed without source; selectors are not named, so the exact logic is inferred only from storage access patterns and the take call.
Swap behaviour
beforeSwap runs on every swap, updates stored state, and can return a delta; it also calls take to move tokens, so swap amounts or prices may be altered for trades routed through this pool. The exact direction and size of any adjustment cannot be determined from decoded bytecode.
Liquidity behaviour
No liquidity callbacks.
Fee behaviour
Fee logic cannot be determined from decoded bytecode; the hook does not show a dynamic fee override, so the pool's fee setting is likely used, but any fee-like charge taken through return deltas and take cannot be ruled out.
Owner & admin controls
No admin controls found.

Enabled Uniswap v4 callbacks

beforeSwap, beforeSwapReturnDelta

beforeSwap is used to run custom logic before each swap and beforeSwapReturnDelta lets it return a delta that adjusts the swap amounts and takes tokens from the trade.

Security & trust assessment

Risk level: high, estimated (decoded bytecode, low confidence).

Who controls it: No privileged key or admin function was identified in the dispatch table, so centralization risk from an owner is not evident from bytecode alone.

Risk to user funds: The hook can take currency through the take call and alter swap deltas through beforeSwapReturnDelta, so it can move pool and trader funds in ways determined by its unverified logic.

Security findings

  • [high] Return delta and currency movement in beforeSwap: The hook has beforeSwapReturnDelta and calls take to move currency, so it can alter swap amounts and take tokens from trades without source to show the bounds of this behaviour.
  • [medium] Unverified source: No verified source is available, so the behaviour of the nonpayable functions and the state updates cannot be audited or checked against intent.
  • [medium] Mutable state updated on every swap: beforeSwap writes to storage slots 0 and 1 on each swap, so pool behaviour may drift over time based on prior activity.
  • [info] No access gating observed: No owner or admin selector appears in the dispatch table, so no privileged role is visible, but the nonpayable function 0x607378cc could be callable by anyone and should be verified.

Contract details

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

Pools using Dynamic fee hook