Launchpad hook on Robinhood Chain
Uniswap v4 Hook Contract 0xfae5490a837878703bb15a4cacc264d28c4b20cc on Robinhood Chain · Launchpad
- Volume (24h)
- $88
- Value locked (TVL)
- $0.05
- All-time volume
- $88
- Pools using this hook
- 1
- Swaps (24h)
- 4 (2 traders)
- Total swaps
- 4
What it does
This hook is a launch token that takes a toll on swaps in its pool and lets its owner withdraw the collected amounts; the exact toll formula and which trade direction pays more could not be confirmed from the decoded bytecode.
How it works step by step
- Is an ERC20 token that is itself a Uniswap v4 hook, with ownable admin functions and a launcher address stored in slot 7
- Enables beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta and afterSwapReturnDelta, so it can take a cut of swaps via return deltas
- beforeSwap and afterSwap read and write a counter-style storage state (slots 8 to 0x11) and use tollBps and creditBps parameters, indicating a toll or tax taken on trades
- Has a self-unlock flow: unlockCallback and take(address,address,uint256) selectors are present, so the hook calls the PoolManager to move currency into its own balance
- Exposes drain(uint8,uint256) to withdraw accumulated tolls, with tollCollected, tollPaidOut and keeperOf views tracking accounting
- Exposes SUPPLY, totalSupply, balanceOf and metadataURI, consistent with a token-based launch where the hook token is paired with a pool
- Swap behaviour
- beforeSwap and afterSwap are both enabled with return-delta permissions, so the hook can alter the amount a swap receives or pays by taking a toll. Exact direction and rate depend on tollBps and creditBps, whose logic cannot be fully confirmed from decoded bytecode alone.
- Liquidity behaviour
- beforeAddLiquidity, afterAddLiquidity, beforeRemoveLiquidity and afterRemoveLiquidity selectors exist as views, but the hook does not enable the corresponding permissions in its address, so liquidity callbacks are not invoked by the PoolManager.
- Fee behaviour
- Fees are not set by the hook through a dynamic fee callback; the pool's static fee applies. Revenue to the hook comes from a toll mechanism via return deltas on swaps, tracked in tollCollected and paid out via drain.
- Owner & admin controls
- Owner (Ownable) can transfer or renounce ownership. drain(uint8,uint256) is callable to withdraw collected tolls, gated by keeper/owner logic whose exact restriction is not confirmed from decoded bytecode. Parameters such as tollBps and creditBps are readable; whether they are mutable by the owner could not be confirmed.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta
beforeInitialize records the pool id and initial state; beforeSwap computes and applies the toll using return deltas; afterSwap updates accounting state and can settle a return delta; beforeSwapReturnDelta and afterSwapReturnDelta allow the hook to take currency from swaps.
Security & trust assessment
Risk level: high, estimated (decoded bytecode, medium confidence).
Who controls it: The owner or keeper of the hook can drain collected toll balances and may control toll parameters; a compromised privileged key could withdraw all accumulated tolls.
Risk to user funds: Swappers on the pool pay or receive a toll through return deltas, and the hook holds accumulated toll balances that can be withdrawn through drain; funds in the pool itself are subject to the toll logic applied on every swap.
Security findings
- [high] Hook takes currency via return deltas: beforeSwapReturnDelta and afterSwapReturnDelta are enabled and the bytecode contains take and unlock selectors, so the hook can skim tokens from every swap on its pool.
- [medium] Owner-controlled withdrawal of collected tolls: drain(uint8,uint256) lets a privileged caller move accumulated toll balances; access control on drain could not be verified without source.
- [low] Admin ownership can be transferred or renounced: Ownable functions transferOwnership and renounceOwnership are present, so control of the toll and drain logic can change hands.
- [medium] Unverified source: No verified source is available, so the exact toll formula, bounds on tollBps and creditBps, and whether parameters can be changed after deployment remain unconfirmed.
Contract details
- Verified source
- No
- Bytecode size
- 7,295 bytes
- Upgradeable proxy
- No
- Detected patterns
- erc20, launchpad, moves-currency, ownable, return-delta, self-unlock, tax
Pools using Launchpad hook
- ETH / ORRERINE (0.00% fee) — 24h volume $88, TVL $0.05, 4 swaps today