PumpV4StockHook on Robinhood Chain

Uniswap v4 Hook Contract 0x5a9e9859d2bff9e103dc061185731dfa802a6acc on Robinhood Chain · Launchpad · Verified contract

Volume (24h)
$0
Value locked (TVL)
$6.19K
All-time volume
$294.02K
Pools using this hook
16
Swaps (24h)
0 (0 traders)
Total swaps
2,487

What it does

A Uniswap v4 hook for stock-style token launches that charges a fixed 2% fee on the quote currency in every swap and locks a single one-sided launch liquidity position permanently.

How it works step by step

  • Validates pool creation so only the factory can initialize a pool and only with a registration that matches the expected range and currency order
  • Snapshots token, fee-share contract, quote currency and tick range per pool at initialization
  • Accepts exactly one initial liquidity add from the position manager, over the fixed launch range
  • Charges a constant 2% fee on quote-currency flow in beforeSwap for buys and afterSwap for sells
  • Mints fee claims to the fee-share contract and calls depositClaim to distribute them
  • Reverts all liquidity removals and any further adds, and blocks exact-output swaps
Swap behaviour
Exact-output swaps revert. For swaps where the input is the quote currency, a 2% fee of the gross input is taken through beforeSwapReturnDelta and minted to the fee-share contract. For sells of the token, the 2% fee is taken from quote output in afterSwap. Swaps in other directions pass through with no delta.
Liquidity behaviour
Only one initial liquidity add is accepted, by the position manager, with a single-sided position matching the precomputed launch range and the token as hookData. After seeding, further adds are rejected and all removals revert with LiquidityLocked, so liquidity is effectively permanent.
Fee behaviour
Fixed 2% (FEE_BPS = 200) hook fee on the quote-currency leg only: on exact-input buys it is taken in beforeSwap via a return delta, on sells it is taken in afterSwap from quote output. Fees are minted as ERC-6909 claims to the feeShare contract and deposited via depositClaim. The pool itself uses a zero static fee.
Owner & admin controls
No owner, pause or upgrade functions found. Immutable factory and positionManager set in constructor; the only privileged path is the factory, which alone can initialize pools and register launch metadata. Pool snapshots are written once and never changed.

Enabled Uniswap v4 callbacks

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

beforeInitialize restricts pool creation to the factory and snapshots pool parameters. beforeAddLiquidity enforces a one-time seed from the position manager. beforeRemoveLiquidity always reverts to lock liquidity. beforeSwap applies the 2% quote-leg fee via beforeSwapReturnDelta and blocks exact-output swaps. afterSwap applies the fee on sells via afterSwapReturnDelta and blocks exact-output swaps.

Security & trust assessment

Risk level: low (verified source, high confidence).

Who controls it: No privileged key controls the hook after deployment. Launch creation is gated by the factory, which is the only address able to initialize snapshotted pools; the factory's own admin powers are not visible in this contract and were not analysed.

Risk to user funds: The hook holds no user balances directly; fees are settled as ERC-6909 claims minted to the fee-share contract. It can take a fixed 2% of quote-leg swap flow, and because liquidity is locked, LP principal stays in the pool with no hook-controlled withdrawal path.

Security findings

  • [info] Pool creation restricted to factory: Pool initialization is gated to the factory and pool parameters are re-derived and cross-checked against the registration, so a malformed registration cannot open a mismatched pool.
  • [medium] Liquidity permanently locked: Removing liquidity always reverts and only one initial seed is accepted, so LPs cannot withdraw and the seeded position cannot be modified through this hook.
  • [info] Return-delta fee capture: The hook takes a 2% fee via return deltas on every swap of the quote currency and mints the claims to the fee-share contract; the fee rate is a hardcoded constant with no setter.
  • [low] Swap depends on external fee-share contract: The hook calls depositClaim on an external feeShare contract during swaps, so swap liveness depends on that contract not reverting.
  • [info] Exact-output swaps disabled: Exact-output swaps revert in both beforeSwap and afterSwap, limiting routing compatibility but not affecting fund custody.

Contract details

Verified source
Yes (PumpV4StockHook)
Compiler
solc 0.8.26+commit.8a97fa7a
Bytecode size
7,107 bytes
Upgradeable proxy
No
Detected patterns
return-delta

Pools using PumpV4StockHook