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
- USDC / LOFT (0.30% fee) — 24h volume <$0.01, TVL $50, 1 swaps today