Likely fee sharing hook on HyperEVM
Uniswap v4 Hook Contract 0x569c5db25784510d7c664e3769fffe3378154044 on HyperEVM · Fee sharing
- Volume (24h)
- $0
- Value locked (TVL)
- $0
- All-time volume
- $0
- Pools using this hook
- 1
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 0
What it does
A Uniswap v4 hook that charges a configurable tax on swaps via afterSwap return delta, routes it to a treasury, and holds a time-locked liquidity position for its pool.
This read was written for the hook 0x02e3…0044 on Ethereum and reused here: the two run the same code.
How it works step by step
- Charges a tax on swap output in afterSwap, with rate set by taxBps and capped by MAX_TAX_BPS.
- Uses afterSwapReturnDelta to take the tax amount out of the trade.
- Routes collected tax to a treasury address configurable by the owner.
- Initializes and holds a pool position with a lock duration and unlock time before owner removal.
- Exposes owner-only sweep and collectFees functions for token handling.
- Swap behaviour
- afterSwap computes a tax from taxBps and takes it from the swap output through the return delta, sending it to the treasury.
- Liquidity behaviour
- The hook manages a self-controlled position: initializePool sets up the pool, liquidity can be removed by the owner after an unlock time/lock duration (removeLiquidity, unlockCallback), and before/after add/remove liquidity callbacks exist in the dispatch table but are not enabled by the permissions.
- Fee behaviour
- A tax in basis points (taxBps, capped by MAX_TAX_BPS, out of TOTAL_BPS) is applied in afterSwap via the return delta; the taken amount is routed to a treasury address. Fees are collected to the treasury through collectFees.
- Owner & admin controls
- Owner (Ownable) can set the tax rate via setTaxBps (bounded by MAX_TAX_BPS), change the treasury address via setTreasury, sweep tokens via sweep, collect fees via collectFees, and transfer or renounce ownership. Pool initialization and liquidity removal are also owner-gated by selectors observed in the dispatch table.
Enabled Uniswap v4 callbacks
afterSwap, afterSwapReturnDelta
afterSwap: used to compute and take a tax on swap output. afterSwapReturnDelta: lets the hook return a delta that absorbs part of the swap amount, which is how the tax is taken from the trade.
Security & trust assessment
Risk level: medium, estimated (decoded bytecode, low confidence).
Who controls it: The owner controls the tax rate up to the cap, the treasury recipient, the ability to sweep tokens, and can remove the locked liquidity once the unlock condition is met. A malicious or compromised owner could redirect fees or extract funds held by the hook.
Risk to user funds: The hook takes a configurable tax from swaps and holds a locked liquidity position plus any accrued tax tokens; the owner can sweep held tokens and change the treasury, so trader and LP value depends on the owner key.
Security findings
- [medium] Owner-adjustable swap tax via return delta: afterSwapReturnDelta lets the hook take a portion of every swap; the rate is set by an owner-controlled taxBps value.
- [medium] Owner sweep of hook-held tokens: sweep(address) is owner-callable and can transfer tokens held by the hook, including tokens that accrue from taxes or locked liquidity.
- [low] Single-owner control without timelock: The contract is Ownable with transferOwnership and renounceOwnership, and setTreasury changes the fee recipient without a timelock visible in the bytecode.
- [info] Locked liquidity with owner removal path: Liquidity is locked behind lockDuration/unlockTime and removal is owner-driven; the removal path is reachable once the unlock time passes.
Contract details
- Verified source
- No
- Bytecode size
- 11,482 bytes
- Upgradeable proxy
- No
- Detected patterns
- moves-currency, ownable, return-delta, self-unlock
Pools using Likely fee sharing hook
- PSTOCKS / UETH (0.30% fee) — 24h volume $0, TVL $0, 0 swaps today