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
- ETH / SFLIP (1.00% fee) — 24h volume $0, TVL $0, 0 swaps today