Launchpad hook on Arc

Uniswap v4 Hook Contract 0x09a0ded28cdb70f84b559548f121b47f7269a0cc on Arc · Launchpad

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

What it does

A launchpad hook that applies launch-window buy and sell taxes and buy caps to a token pool, collecting tax revenue for a processor on each swap.

How it works step by step

  • Validates pool initialization against configured token, tick spacing and fee parameters in beforeInitialize
  • Enforces a launch window and a per-buy cap expressed in basis points during early trading
  • Applies buy and sell tax in basis points and takes it as a return delta on swaps
  • Accrues revenue and reports it to a processor through recordRevenue
  • Tracks launch timestamp and launch supply for the token
Swap behaviour
beforeSwap and afterSwap run on every swap, enforcing the launch window and buy cap and applying buy or sell tax through return deltas.
Liquidity behaviour
No liquidity callbacks.
Fee behaviour
Taxes are stored as buyTaxBps and sellTaxBps (uint16 fields in slot 5) and a poolFee (uint24) is exposed; beforeSwap and afterSwap read these values, so the hook appears to charge launch-phase buy and sell taxes that are routed through the return-delta mechanism, with revenue accrued and recorded via recordRevenue.
Owner & admin controls
Setter 0x61fee0a1 (nonpayable, 9 arguments) writes storage slots 0 through 5 and the owner/manager-related slots; its access check is not visible in the 45-byte proxy stub, so the implementation's setter likely gates a manager or owner role. Upgrade authority sits with whoever controls the proxy's implementation slot. Exact roles cannot be confirmed without source.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize validates the pool and its tick spacing against stored configuration; beforeSwap and afterSwap enforce launch-window rules and buy caps and compute tax; beforeSwapReturnDelta and afterSwapReturnDelta let the hook take a portion of swap amounts as a delta, which is how taxes are collected.

Security & trust assessment

Risk level: high (decoded bytecode, low confidence).

Who controls it: A privileged key that can call the setter can likely change tax rates, tick spacing, the processor address, the manager and the token configuration, altering the economics for swappers after launch.

Risk to user funds: The hook can take a share of swap amounts through return deltas and holds accrued tax revenue, and an upgraded or reconfigured implementation could change those amounts for traders and liquidity providers.

Security findings

  • [high] Upgradeable proxy: Proxy delegates all calls to implementation 0x01ca896e. The implementation can be swapped by whoever controls the upgrade path, so behaviour is not fixed.
  • [medium] Privileged configuration setter: Setter selector 0x61fee0a1 writes multiple configuration slots (tokens, manager, tax and tick parameters) with no visible access check in the stub, so access control must be confirmed in the implementation.
  • [medium] Return-delta hooks can take swap value: Return-delta permissions let the hook alter the amounts settled on every swap, so a malicious or changed implementation could take user output tokens.
  • [info] Launch-phase buy restrictions: Launch window and buy cap constants (LAUNCH_WINDOW, LAUNCH_BUY_CAP_BPS) limit early buys, which is an intended restriction rather than a fault.

Contract details

Verified source
No
Bytecode size
45 bytes
Upgradeable proxy
Yes
Detected patterns
erc20, return-delta, upgradeable

Pools using Launchpad hook