Hook 0x42c1…0144 on Robinhood Chain
Uniswap v4 Hook Contract 0x42c1533c5777904163ac87cf58564e1e5dc20144 on Robinhood Chain · Other
- Volume (24h)
- $0
- Value locked (TVL)
- $0
- All-time volume
- $7.42M
- Pools using this hook
- 1
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 28,244
What it does
A Uniswap v4 hook that reacts after swaps and liquidity removals, using return deltas and ERC-6909 claims to move currency, with a cap and whitelist controlled by a privileged role (behaviour inferred from unverified bytecode).
How it works step by step
- Runs custom logic after every swap, with the option to return a delta that changes the amounts settled
- Uses the pool manager's unlock and take flow, including self-unlock via unlockCallback
- Mints and burns ERC-6909 claim balances to account for hook-held currency
- Runs logic after liquidity removal, likely to settle or account for claims
- Exposes setCap and checks isWhitelist, suggesting access-gated limits
- Swap behaviour
- afterSwap runs after each swap and can adjust the swap's unspecified-currency delta through the return-delta permission, possibly taking or giving tokens.
- Liquidity behaviour
- afterRemoveLiquidity is enabled and the hook appears to mint or burn ERC-6909 claims and interact with the pool manager (take, mint, burn selectors present), so liquidity removals may be routed through hook-held accounting. Exact behaviour cannot be determined from bytecode alone.
- Fee behaviour
- No fee logic identified from decoded functions; afterSwap may return a delta that adjusts the swap amounts, which could act as a fee or rebate, but this is not confirmed.
- Owner & admin controls
- A setCap(uint256) function is callable externally and an isWhitelist(address) check is referenced, suggesting a privileged role controls a cap and a whitelist; an owner-like address is read from slot 3 in several functions. Exact authorization logic cannot be confirmed without source.
Enabled Uniswap v4 callbacks
afterRemoveLiquidity, afterSwap, afterSwapReturnDelta
afterSwap: runs custom logic after each swap, including a possible return delta. afterSwapReturnDelta: lets the hook adjust the swap's unspecified-currency delta, meaning it can take or give tokens during swaps. afterRemoveLiquidity: runs custom logic after liquidity is removed, likely to settle or account for claims.
Security & trust assessment
Risk level: medium (decoded bytecode, low confidence).
Who controls it: A privileged key appears to be able to set a cap via setCap and manage whitelist membership, which could restrict who can interact with the hook or limit amounts; the scope of this control is unverified.
Risk to user funds: The hook can take, mint and burn ERC-6909 claims through pool manager interactions during swaps and liquidity removals, so it may hold or move pool funds; whether it can block withdrawals depends on the unverified cap and whitelist logic.
Security findings
- [medium] Hook takes currency via return delta: afterSwapReturnDelta is enabled and the hook uses take, mint and burn calls, so it can move currency during swaps; the exact amounts and conditions are not visible in the decoded input.
- [medium] Privileged cap and whitelist controls: setCap(uint256) is externally callable and the bytecode references isWhitelist(address), indicating access-gated parameters whose authorization checks could not be verified.
- [low] Self-unlock and casting paths: The bytecode contains a SafeCastOverflow error and a self-unlock pattern via unlockCallback and execute, which increase the surface for accounting mistakes if inputs are not bounded.
- [info] Unverified source: Without verified source, the storage layout and access checks cannot be fully confirmed, so behaviour may differ from this reading.
Contract details
- Verified source
- No
- Bytecode size
- 11,588 bytes
- Upgradeable proxy
- No
- Detected patterns
- erc6909-claims, moves-currency, return-delta, self-unlock
Pools using Hook 0x42c1…0144
- WETH / Frock (0.01% fee) — 24h volume $0, TVL $0, 0 swaps today