Launchpad hook on Robinhood Chain

Uniswap v4 Hook Contract 0x5d965a05768d3d43b3db59d2867e9c48a06e90cc on Robinhood Chain · Launchpad

Volume (24h)
$0
Value locked (TVL)
$0
All-time volume
$0
Pools using this hook
1
Swaps (24h)
2 (2 traders)
Total swaps
2

What it does

This launchpad hook charges owner-adjustable buy and sell taxes on every swap in its launch pool and pays them to a tax recipient, while LPs can withdraw freely.

This read was written for the hook 0x9e93…90cc 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

  • Charges a buy tax and a sell tax on swaps in a token launch pool, measured in the pool's quote token.
  • Registers a single launch pool when it is initialized by the launcher.
  • Collects taxes as Uniswap v4 claim balances and tracks the total collected, the amount paid out and the amount still pending.
  • Lets anyone trigger claimTaxes to send pending taxes to the tax recipient.
  • Lets the owner change the buy and sell tax rates and the tax recipient.
Swap behaviour
On each swap in the launch pool, the hook takes a buy or sell tax from the swap amounts using return deltas and holds it as claims in the PoolManager. The exact tax math and any limit on the rates cannot be confirmed from bytecode.
Liquidity behaviour
No liquidity callbacks; LPs can add and withdraw freely.
Fee behaviour
Buy and sell taxes are set in basis points and the owner can change them. No maximum rate could be confirmed from the bytecode. Taxes build up as pending amounts and are paid to the tax recipient when claimTaxes is called.
Owner & admin controls
The owner can change the buy and sell tax rates with setTaxes, change the tax recipient, and transfer ownership. No cap on the tax rates could be verified from the bytecode.

Enabled Uniswap v4 callbacks

afterInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

afterInitialize: records the launch pool and which token is the quote token, and only the launcher can trigger it; beforeSwap and beforeSwapReturnDelta: takes tax from the swap input side; afterSwap and afterSwapReturnDelta: takes tax from the swap output side.

Security & trust assessment

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

Who controls it: A single owner controls the tax rates and the tax recipient. The worst case is raising the swap taxes, possibly without a limit, and sending them to any address.

Risk to user funds: The hook can take a tax from swap amounts at the owner-set rate, and no maximum could be verified. LP principal cannot be locked or drained.

Security findings

  • [medium] Owner-adjustable taxes with unverified cap: The owner can change the buy and sell tax rates at any time. The bytecode does not show a confirmed upper limit, so taxes could possibly be raised to high levels.
  • [low] Separate buy and sell rates: Buys and sells have independent tax rates. A sell tax set much higher than the buy tax would make selling expensive.
  • [info] LP withdrawals unaffected: Remove-liquidity callbacks are disabled, so the hook can never block or charge LP withdrawals.

Contract details

Verified source
No
Bytecode size
5,065 bytes
Upgradeable proxy
No
Detected patterns
erc6909-claims, moves-currency, ownable, return-delta, self-unlock

Pools using Launchpad hook