Launchpad hook on Robinhood Chain
Uniswap v4 Hook Contract 0x3a1f5cb06ec606da8585d3ae531e206aba6680cc on Robinhood Chain · Launchpad
- Volume (24h)
- $317
- Value locked (TVL)
- $0
- All-time volume
- $317
- Pools using this hook
- 1
- Swaps (24h)
- 14 (7 traders)
- Total swaps
- 14
What it does
This hook takes a levy on swaps through return deltas and tracks what it is owed, but the exact trades that pay more or less and the fee formula could not be confirmed from the decoded bytecode.
This read was written for the hook 0xdbdb…c0cc on Robinhood Chain and reused here: the two share a code shape, so constants such as fees, owners and addresses can differ.
How it works step by step
- Hook exposes beforeSwap and afterSwap callbacks and uses before/after return deltas, so it can take or give currency during swaps.
- Exposes a levy mechanism: levyBps() and LEVY_MIN_BPS() are public, and a levied() flag and owed() amount are tracked in storage.
- Calls the pool manager unlock/take/mint/burn functions, and uses ERC6909 claim tokens (mint/burn) to account for currency it holds.
- Has a clerk() role gate (NotClerk error) and an unlockCallback that performs the pool manager settlement flow.
- Pool initialization and liquidity/donate callbacks are present in the selector table but appear to be stubs or pure no-ops.
- Heuristic tags suggest a rewards or launchpad flow in which the levy accrues owed amounts that are later settled.
- Swap behaviour
- beforeSwap (view) and afterSwap (nonpayable) are enabled, and beforeSwapReturnDelta and afterSwapReturnDelta are granted, so the hook can adjust swap amounts and take a levy from swaps. Which trades pay more or less cannot be determined from decoded bytecode alone.
- Liquidity behaviour
- beforeAddLiquidity, afterAddLiquidity, beforeRemoveLiquidity and afterRemoveLiquidity selectors are present but the hook does not request liquidity callbacks in its permissions; treat liquidity effects as unconfirmed.
- Fee behaviour
- Fees appear to be a levy in basis points (levyBps, with a LEVY_MIN_BPS floor) taken via return deltas rather than the pool's static fee; poolFee() is also exposed. The exact fee formula could not be confirmed.
- Owner & admin controls
- A clerk role (clerk(), NotClerk error) appears to control settlement or levy-related actions. Exact permitted operations are not verified from source.
Enabled Uniswap v4 callbacks
beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta
beforeSwap: gates or prepares the swap and may read levy state. afterSwap: settles the levy and updates owed and levied state. beforeSwapReturnDelta and afterSwapReturnDelta: let the hook return a delta that changes the amount the swapper receives or pays.
Security & trust assessment
Risk level: high, estimated (decoded bytecode, low confidence).
Who controls it: The clerk key appears able to affect settlement and levy accounting; its exact powers and whether parameters are upgradeable could not be confirmed.
Risk to user funds: The hook takes currency via return deltas and holds value through ERC6909 claims and owed balances, so swap proceeds and pool funds routed through it are exposed to whatever the levy and clerk logic does.
Security findings
- [high] Return-delta currency capture: The hook is granted beforeSwapReturnDelta and afterSwapReturnDelta and moves currency via take/mint/burn, so it can divert part of every swap's flow to itself.
- [medium] Clerk-gated settlement: A clerk role with NotClerk checks controls settlement paths; if the clerk key is compromised or malicious it may be able to withdraw or redirect owed funds.
- [medium] Levy parameter dependence: levyBps and LEVY_MIN_BPS are readable but whether they are mutable could not be verified; a mutable levy could be raised to a high rate.
- [info] Unverified source: No verified source is available, so behaviour is inferred from selectors and storage access only.
Contract details
- Verified source
- No
- Bytecode size
- 5,811 bytes
- Upgradeable proxy
- No
- Detected patterns
- erc6909-claims, moves-currency, return-delta, self-unlock
Pools using Launchpad hook
- ETH / DESKHAND (1.00% fee) — 24h volume $317, TVL $0, 14 swaps today