Launchpad hook on Robinhood Chain

Uniswap v4 Hook Contract 0xadadd2dc0e3f9bed101b5d9fc80627d9f5876acc 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

Launchpad hook for a Dendra/USDG pool: buyers pay a price-dependent fee plus a decaying launch fee, sellers pay a separate sell fee, fees are split to floor and operations buckets, and buys can be closed.

How it works step by step

  • Serves a single registered pool pairing a project token (called Dendra) with a USDG stablecoin, and rejects any other pool.
  • Charges a buy fee that varies with price (between a minimum and maximum, plus a decaying launch fee early on) and a separate sell fee, collected through swap return deltas.
  • Splits collected fees between a 'floor' bucket, a split bucket and a launch operations address.
  • Records price observations so it can report a time-weighted average price (TWAP) tick.
  • Can close buys through an external buy-state check, and rejects partial fills and non-standard price limits.
Swap behaviour
Each swap is checked against the registered pool. Buys can be refused if buys are closed, and partial fills or non-standard price limits are rejected. A buy or sell fee is taken from the swap amounts, and the price oracle is updated.
Liquidity behaviour
Add and remove liquidity callbacks are active and may restrict who can add or withdraw; the bytecode does not show which conditions apply, so free LP withdrawal cannot be confirmed.
Fee behaviour
Buy fees move between hard-coded minimum and maximum constants depending on price, with an extra launch fee that decays over time. Sells pay a fixed sell fee that may also depend on tick. Exact percentages are not readable from the bytecode. Fees accrue to floor, split and launch-ops buckets.
Owner & admin controls
No owner setters were found. Fee bounds appear to be hard-coded constants, but buy availability depends on an external buy-state contract.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeAddLiquidity, beforeRemoveLiquidity, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize: registers the single allowed pool and seeds the oracle; beforeAddLiquidity: checks or gates LP deposits; beforeRemoveLiquidity: checks or gates LP withdrawals; beforeSwap: validates the swap, enforces buy closure and takes fees via delta; afterSwap: records volume and fee accounting; beforeSwapReturnDelta/afterSwapReturnDelta: let the hook deduct buy and sell fees from swap amounts.

Security & trust assessment

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

Who controls it: No direct owner functions are visible. An external buy-state contract, likely controlled by the protocol, can close buys.

Risk to user funds: Traders pay buy and sell fees of unconfirmed size, bounded by hard-coded constants. LP withdrawals run through a hook check whose conditions are unknown.

Security findings

  • [medium] Swap fees via return deltas: The hook deducts buy and sell fees from swaps. The fee constants exist, but their exact values cannot be confirmed from unverified bytecode.
  • [medium] Buys can be closed externally: A buy-state check can revert buys with BuysClosed. Sells are not shown as blocked, but this cannot be fully confirmed.
  • [medium] Remove-liquidity callback active: beforeRemoveLiquidity is enabled and could restrict withdrawals. Its conditions are unknown, and the pool may be designed so only protocol-owned liquidity is allowed.

Contract details

Verified source
No
Bytecode size
9,456 bytes
Upgradeable proxy
No
Detected patterns
launchpad, oracle, return-delta, tax

Pools using Launchpad hook