PermaV3SimpleHook on Base

Uniswap v4 Hook Contract 0x3b010d019bea1ee5e5aa00bdac0280d299ae28cc on Base · Launchpad · Verified contract

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

What it does

A Perma launchpad hook where every buy and sell pays the same fixed per-coin fee set at launch (capped at 99%), collected in the pair asset for the Perma vault with an optional coin burn, while only the vault can add liquidity and partial fills are rejected.

This read was written for the hook 0x3b01…28cc 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 each coin's fixed trading fee, set once by the Perma factory at launch, on both buys and sells, always in the pair asset (ETH, USDC or USDT).
  • Sends the collected fee to the Perma vault as a claim on the Uniswap PoolManager; the hook never holds tokens itself.
  • Optionally burns part of that fee in the coin itself by sending coins to the 0x...dEaD address on every trade.
  • Rejects swaps that would only partially fill, for example when the price limit or available liquidity stops the swap early.
  • Lets only the Perma vault add liquidity (through the official PositionManager) and records block-start and slow-average prices that the vault uses to cap its liquidity placement.
Swap behaviour
Every buy and sell pays the coin's fixed fee, taken from the pair-asset side of the swap and rounded up, with an optional portion burned in coins instead. Swaps revert if they cannot fill in full.
Liquidity behaviour
Only the Perma vault, acting through the chain's Uniswap v4 PositionManager, can add liquidity; other users cannot add. The hook has no remove-liquidity callbacks, so it can never block or charge withdrawals.
Fee behaviour
The pool's own LP fee is 0%. The hook charges a per-coin fixed fee set once at launch, technically allowed up to 99%, split between pair-asset fees minted to the vault and an optional coin burn; this fee never changes after launch.
Owner & admin controls
No owner. The factory sets each coin's fee and burn share once at registration, with a 99% ceiling; nothing can be changed afterwards.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeAddLiquidity, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize: only the factory can create a pool it registered; beforeAddLiquidity: only the vault may add liquidity; beforeSwap: records block-start prices and charges the fee or burn on the specified side; afterSwap: checks for a full fill and charges the other side; beforeSwapReturnDelta/afterSwapReturnDelta: let the hook deduct the fee and burn amounts from swaps.

Security & trust assessment

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

Who controls it: The Perma factory chooses each coin's fixed fee (up to 99%) and burn share once at launch, and the Perma vault is the sole liquidity provider and fee recipient. No one can change these settings afterwards.

Risk to user funds: The hook deducts only the coin's fixed fee (0% to at most 99%, set at launch) from swaps, sending it to the vault or burning it; it holds no funds. LP principal cannot be locked by the hook, though only the vault provides liquidity.

Security findings

  • [medium] High fee ceiling at launch: The factory can register a coin with a fixed fee of up to 99%. Once set, it cannot change, so traders should check each coin's fee (shown by the preview fee function) before trading.
  • [info] Immutable, no owner: This is a direct contract with no admin and no settings after launch. Fees go only to the fixed vault address, and burns go to the dead address.
  • [info] Vault-only liquidity: Only the Perma vault can add liquidity. Remove-liquidity callbacks are disabled, so the hook cannot block withdrawals.

Contract details

Verified source
Yes (PermaV3SimpleHook)
Compiler
solc 0.8.26+commit.8a97fa7a
Bytecode size
10,379 bytes
Upgradeable proxy
No
Detected patterns
erc6909-claims, liquidity-management, mev-protection, moves-currency, return-delta

Pools using PermaV3SimpleHook