GlueLiquidity on Soneium

Uniswap v4 Hook Contract 0x03d482cb3ff339c2d29736818d0f72c66dd6a040 on Soneium · Liquidity management · Verified contract

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

What it does

The hook is a fee-recycling program: it credits a pot from swap volume, uses that pot to buy main through a bounded pump swap, and turns harvested LP fees into compounded liquidity, burns and recipient payouts, so traders pay the pool's normal fee while the pot's buy pressure is applied only when the pool trades away from its reference tick.

This read was written for the hook 0x03d4…a040 on Ethereum 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

  • beforeInitialize registers a pot admin and pool identity; roles are set once by the admin via initPot, choosing one pool currency as main and the other as secondary
  • afterSwap credits a fee-based pot from swap flow and may run a bounded pump swap that spends pot funds, sized by a fee-ceiling spend bucket and a reference-tick share gate
  • Harvests collect the position's accrued fees, split them into compound, buyback and burn shares, and re-mint the compound share into the program's own fixed-range position in the same unlock
  • Burn legs send main to the Glue Protocol wrapper unglue path (or park to the wrapper itself); refused burns are held on the hook forever
  • Recipient legs push fees to configured owner/recipient addresses, booking failed pushes into an owed ledger for later claim
  • Owner and operator roles govern program configuration, recipients and ownership transfer, with native programs pinned to a registered Glue engine
Swap behaviour
afterSwap only, so the swapper's own price and fee are unchanged. Each swap that moves secondary credits the pot; when the pot is funded and the pool is off its reference tick, the hook may execute a bounded pump swap that buys main with pot funds and delivers or burns the output. The pump's direction and size depend on pool price relative to the reference tick and recent volume.
Liquidity behaviour
No liquidity callbacks. The hook itself holds a program position (fixed tick range) minted by the program admin or owner, funded by the caller via unlock settlement; subsequent harvests mint compounded liquidity into that position.
Fee behaviour
The hook takes no fee from the swapper through beforeSwap/afterSwap deltas; it reads pool fees (protocol plus LP fee) to size the pump and credits fee-sharing from swap volume into the pot. Harvested position fees are split by configured compound, buyback, burn and recipient shares.
Owner & admin controls
Pot admin (set at pool init) declares main/secondary roles once and can change the recipient. Program owner and operator can change split shares, minimums and public-harvest flag, transfer or surrender ownership, and hand off or freeze the operator. Native programs are pinned to their Glue engine. The proxy's implementation address is changeable by the proxy's upgrade authority; not verified from input.

Enabled Uniswap v4 callbacks

beforeInitialize, afterSwap

beforeInitialize: records pool identity and pot admin at pool creation. afterSwap: credits the pot from swap flow and optionally runs the bounded pump swap and placement of its output.

Security & trust assessment

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

Who controls it: A privileged admin or owner can set split shares and recipients, pause nothing directly, and an upgrade authority could change all logic; a surrendered program becomes permanently locked to its position.

Risk to user funds: Swappers' funds are not custodied by the hook, but pot and program balances, carry, owed and held amounts sit with the hook; held burns are unrecoverable and a pump can spend pot funds on pool swaps.

Security findings

  • [medium] Upgradeable proxy: The hook delegates all calls to implementation 0x01f739de084e7cd3554dd4faba970d346d3dd8bb; whoever controls the proxy's upgrade authority can replace the logic and the behaviour described here. Upgrade controls were not visible in the input.
  • [medium] Hook moves pool currency: afterSwap runs a pump swap that spends pot funds and may hold burned or refused main on the hook with no withdrawal path, so pot and program funds are controlled by hook logic rather than the swapper alone.
  • [medium] Admin-set recipients and shares: The pot admin and program owner can redirect the recipient and share splits, so fee flow can be pointed at a chosen address; a native program's owner is pinned to the Glue engine.
  • [low] Reliance on Glue registry: Burn, classification and native engine status depend on the GlueStick singleton at a fixed address; a faulty or changed registry answer affects routing but failures fall back to held balances.

Contract details

Verified source
Yes (GlueLiquidity)
Compiler
solc 0.8.35+commit.47b9dedd
Bytecode size
19,439 bytes
Upgradeable proxy
Yes
Detected patterns
erc20, liquidity-management, moves-currency, self-unlock, upgradeable

Pools using GlueLiquidity