Launchpad hook on Robinhood Chain

Uniswap v4 Hook Contract 0xc0bab259be69fb0def03ae736155aeba3aa220cc on Robinhood Chain · Launchpad

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 launchpad hook takes a basis-point fee from swaps through return deltas and tracks buys and sells, but the exact direction that pays more and the fee amount could not be confirmed from the decoded bytecode.

This read was written for the hook 0xe366…20cc on Robinhood Chain and reused here: the two run the same code.

How it works step by step

  • Acts as a launchpad-style hook for a token pool on Uniswap v4, with ERC20 token functions (transfer, transferFrom, approve, balanceOf) and metadata getters (name, symbol, tokenURI, socials, website, telegram, discord, farcaster, twitter) present on the same contract
  • Records pool initialization in beforeInitialize and tracks an opened flag (poolOpened) in storage slot 2
  • Counts buys and sells during swaps in afterSwap and beforeSwap, exposing buyCount and sellCount
  • Accumulates fees in pendingFees and totalFeesPaid, with feeBps and feeRecipient storage used to split fees out of swaps
  • Uses beforeSwapReturnDelta and afterSwapReturnDelta, so the hook can take a share of swap amounts and move currency through the pool manager via take calls
  • Gates liquidity add and remove through beforeAddLiquidity and beforeRemoveLiquidity, and calls afterAddLiquidity and afterRemoveLiquidity without enabling their return deltas
Swap behaviour
beforeSwap and afterSwap run on every swap. The hook counts the trade direction, may take a fee through return deltas, and records fees as pendingFees; the exact fee amount per direction could not be confirmed from the decoded bytecode.
Liquidity behaviour
beforeAddLiquidity, afterAddLiquidity, beforeRemoveLiquidity and afterRemoveLiquidity exist as hook entrypoints; their gating and effects could not be fully decoded, and no source is available to confirm them.
Fee behaviour
Fees are taken as a basis point rate (feeBps) and routed to feeRecipient, with unclaimed amounts tracked in pendingFees and totals in totalFeesPaid. The exact swap direction that pays the fee could not be confirmed from the bytecode.
Owner & admin controls
The OnlyLauncher and OnlyPoolManager errors indicate that certain functions are restricted to a launcher address and to the pool manager. The launcher and creator getters are exposed. No explicit pause, upgrade or fee-setter function was confirmed from the selectors.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize records the pool setup and sets the opened flag; beforeSwap and afterSwap count trades and calculate fee deltas; beforeSwapReturnDelta and afterSwapReturnDelta let the hook take currency from swaps; the liquidity hooks gate or observe position changes.

Security & trust assessment

Risk level: medium, estimated (decoded bytecode, low confidence).

Who controls it: A launcher or owner-like key could influence fee recipients and fee rates if such setters exist; the decoded selectors do not show an explicit setter, so the extent is uncertain.

Risk to user funds: The hook can take currency from swaps through return deltas and can hold accumulated fees in pendingFees until they are routed to feeRecipient, so user swap amounts are exposed to the fee logic.

Security findings

  • [medium] Return-delta fee capture: beforeSwapReturnDelta and afterSwapReturnDelta are enabled and the hook calls take on the pool manager, so it can extract a portion of every swap.
  • [medium] Launcher-controlled behaviour: OnlyLauncher gating means a launcher address controls at least some privileged functions; its key compromise or misconfiguration could change how the hook behaves.
  • [low] Fee parameters stored in mutable state: feeBps and feeRecipient are read from storage, so whether they can be changed after deployment depends on functions not decoded here.
  • [info] Unverified source: No verified source is available, so the exact fee math, upgradeability and admin paths are inferred from bytecode only.

Contract details

Verified source
No
Bytecode size
8,521 bytes
Upgradeable proxy
No
Detected patterns
erc20, fee-sharing, moves-currency, return-delta

Pools using Launchpad hook