Custom pricing hook on Robinhood Chain
Uniswap v4 Hook Contract 0x0f60ea935db902fffa4eaff047e24eaf6e428088 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 swap hook that runs logic before each swap, can alter settled amounts through a return delta, and appears to mint a soybean token as a side effect, though the exact mechanism is unclear without source.
How it works step by step
- Runs custom logic in beforeSwap for every swap on pools using this hook
- Uses a return delta to adjust the amounts settled by the pool
- Calls take to move currency out of the pool during swaps
- Calls mintSoybean(uint32), suggesting it mints a token as a side effect
- Reads a uint24 parameter from storage slot 0 that may control fees or thresholds
- Swap behaviour
- beforeSwap runs on every swap and can take currency through a return delta, changing the amounts settled with the pool.
- Liquidity behaviour
- No liquidity callbacks.
- Fee behaviour
- Likely reads a uint24 value from storage slot 0 offset 0 or 3 that may act as a fee or parameter; the exact fee logic cannot be determined from the decoded bytecode.
- Owner & admin controls
- Selector 0x987477df is a nonpayable function taking two uint256 arguments that writes storage slot 0 (uint24 at offset 0); no owner check is evident in the decoded data, so it may be an unrestricted parameter setter, but this cannot be confirmed without source.
Enabled Uniswap v4 callbacks
beforeSwap, beforeSwapReturnDelta
beforeSwap: runs custom logic before each swap and can alter the swap through a return delta, which is the only enabled callback; beforeSwapReturnDelta: lets the hook's return value shift the amounts the pool settles, so the hook can take or give currency during swaps.
Security & trust assessment
Risk level: high (decoded bytecode, low confidence).
Who controls it: The function at 0x987477df appears to write hook parameters with no detectable access control, so any caller may be able to change the stored value; if it is restricted, a single privileged key would control the parameter.
Risk to user funds: Because beforeSwapReturnDelta is enabled and the hook calls take, the hook can take currency from pool flows during swaps, which can change amounts traders receive or pay.
Security findings
- [high] Hook moves currency during swaps: beforeSwapReturnDelta is enabled and the bytecode contains a take(address,address,uint256) call, so the hook can withdraw currency from the pool during swaps.
- [medium] Possibly unprotected state-changing function: Selector 0x987477df writes to storage without any visible owner or role check in the decoded data, so unauthorized callers may be able to alter the stored parameters.
- [medium] Side-effect token minting: The bytecode contains a mintSoybean(uint32) selector, suggesting the hook mints an external token as a side effect of swaps.
- [info] Unverified source: Source is not verified, so behaviour is inferred from selectors and storage layout only and the exact logic is uncertain.
Contract details
- Verified source
- No
- Bytecode size
- 1,442 bytes
- Upgradeable proxy
- No
- Detected patterns
- moves-currency, return-delta
Pools using Custom pricing hook
- ETH / AERO (1.00% fee) — 24h volume $0, TVL $0, 0 swaps today