FloorHookCL on Arc

Uniswap v4 Hook Contract 0x964a52ed56109b412b44213d28a611ac5be1c8ec on Arc · Launchpad · Verified contract

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

What it does

A launch pool where the hook is the only LP, offering a bonding curve and a USDC-backed price floor that a loan vault can borrow against, with every buy and sell paying the same fixed 1% USDC fee to a fee splitter.

How it works step by step

  • Acts as the only liquidity provider for USDC/token launch pools: it holds a bonding-curve position plus a 'floor' band of USDC bids at a configured floor price.
  • Charges a fixed 1% fee (Uniswap's protocol fee included) on the USDC side of every buy and sell, held for a fee splitter.
  • Blocks outside liquidity additions and donations, so nobody else can LP in these pools.
  • Lets a designated loan vault borrow USDC from the floor reserve and repay in USDC or in tokens valued at the floor price.
  • Requires every swap to fill completely or revert.
Swap behaviour
Every buy or sell pays a 1% fee on the USDC amount, taken through swap return deltas, and the pool's LP fee is forced to 0. Swaps revert if the pool is not set up yet or if the trade cannot fill in full, for example a sell larger than the floor's USDC can cover.
Liquidity behaviour
Outside users cannot add liquidity or donate because those calls always revert. Only the hook itself holds positions, and it manages them internally. Remove-liquidity callbacks are disabled, so the hook never runs on withdrawals.
Fee behaviour
A fixed 1% fee is charged on the USDC leg of every trade, minus whatever Uniswap protocol fee applies, so the total stays at 1%. The fee is hard-coded and cannot be changed. It is held as USDC claims and sent to the fee splitter (or by its owner to a chosen address), never to LPs.
Owner & admin controls
The owner can set the loan vault, fee splitter and migrator once each, and together with the migrator can seed the curve and configure the floor once per pool. The loan vault can draw floor-reserve USDC as loans, and the fee splitter's owner can redirect accrued fees to any address. The 1% fee cannot be changed.

Enabled Uniswap v4 callbacks

beforeAddLiquidity, beforeSwap, afterSwap, beforeDonate, beforeSwapReturnDelta, afterSwapReturnDelta

beforeAddLiquidity: rejects all outside liquidity; beforeSwap: checks the pool is set up, sets a zero LP fee and takes the 1% fee on the specified USDC side; afterSwap: takes the fee on the other side, enforces a full fill and places waiting tokens into the floor band; beforeDonate: rejects donations; beforeSwapReturnDelta and afterSwapReturnDelta: used to collect the USDC fee.

Security & trust assessment

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

Who controls it: The owner sets the vault, splitter and migrator addresses once each, and these cannot be changed afterward. The loan vault can borrow the entire floor reserve, which reduces how much USDC is available for floor sells.

Risk to user funds: Traders pay exactly 1% of the USDC leg on each swap. There are no outside LPs, but the floor reserve backing sell orders can be lent out in full to the vault.

Security findings

  • [medium] Loan vault can withdraw floor reserve: The one-time-set loan vault can pull any amount of USDC up to the floor's full reserve out of the pool as loans. This weakens the floor-price backing for sellers until the loans are repaid.
  • [info] Fixed 1% fee: The swap fee is hard-coded at 1% of the USDC leg, including Uniswap's share, and no admin can raise it.
  • [low] Fee redirect by splitter owner: The fee splitter's owner can send accrued fees to any address, but this only touches collected fees, not trader principal.
  • [info] Hook is the sole LP: There are no third-party LPs. Liquidity belongs to the hook and is only moved through its own internal logic.

Contract details

Verified source
Yes (FloorHookCL)
Compiler
solc 0.8.26+commit.8a97fa7a
Bytecode size
24,321 bytes
Upgradeable proxy
No
Detected patterns
dynamic-fee, erc20, fee-sharing, launchpad, liquidity-management, moves-currency, ownable, return-delta, self-unlock

Pools using FloorHookCL