ClankerHookStaticFeeV2 on Base
Uniswap v4 Hook Contract 0x13810528fcf203cd05b96e8eb978d9855f01a8cc on Base · Dynamic fee · Verified contract
- Volume (24h)
- $0.07
- Value locked (TVL)
- $0.06
- All-time volume
- $0.07
- Pools using this hook
- 13
- Swaps (24h)
- 2 (1 traders)
- Total swaps
- 2
What it does
Gives each Clanker token pool a fixed, direction-dependent swap fee and a short MEV-protection window at launch.
How it works step by step
- Stores a fixed clanker-side fee and paired-side fee per pool at initialization, each capped at 10%.
- Selects the LP fee for each swap based on whether the trader is buying or selling the clanker token.
- Runs an optional MEV module during the first two minutes after pool creation that can raise the LP fee up to 80%.
- Blocks liquidity additions while the MEV module is active.
- Claims accrued LP fees from the locker before and after swaps and forwards any protocol fee to the factory.
- Restricts pool initialization to the factory or the open initializer, rejecting direct poolManager initialization.
- Swap behaviour
- On each swap the hook claims accrued fees from the locker, sets the LP fee for the swap direction (clanker-side or paired-side fee), runs the MEV module, and takes the protocol fee (zero here) through PoolManager mint and return deltas. In afterSwap it adjusts the unspecified delta, runs an optional pool extension, and triggers another locker claim.
- Liquidity behaviour
- Adding liquidity is blocked while the pool's MEV module is operational (first 2 minutes after creation). Removing liquidity has no hook callback. Initialization goes only through the factory or initializePoolOpen, and direct poolManager.initialize is rejected.
- Fee behaviour
- Each pool has a fixed clanker-side fee and paired-side fee set at initialization (capped at 10%). The fee applied to a swap is selected by swap direction and set via updateDynamicLPFee in beforeSwap. A short-lived MEV module may raise the fee up to 80%. The protocol fee is a configurable share of the LP fee, set to 0 in this deployment, so the full LP fee goes to the locker.
- Owner & admin controls
- No owner or pause role in the hook itself. The factory (immutable address) is the only caller of initializePool and initializeMevModule. The MEV module (set per pool at creation) can call mevModuleSetFee to raise a pool's LP fee up to 80%, but only while operational (2 minutes after creation). Fee levels per pool (clankerFee, pairedFee) are set once at initialization and immutable thereafter. Protocol fee numerator is immutable and set to 0 for cc0.company deployments.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeAddLiquidity, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta
beforeInitialize: reverts direct pool initialization so pools must go through the factory or initializePoolOpen. beforeAddLiquidity: blocks liquidity adds while the MEV module is active. beforeSwap: claims accrued LP fees from the locker, sets the directional LP fee, runs the MEV module, and takes the protocol fee via a mint and return delta. afterSwap: adjusts the unspecified delta for the protocol fee, runs an optional pool extension, and claims LP fees again. beforeSwapReturnDelta and afterSwapReturnDelta: allow the hook to take a fee from swap amounts.
Security & trust assessment
Risk level: low (verified source, high confidence).
Who controls it: No single owner key exists in the hook. The factory controls pool creation, and the MEV module controls fee spikes during the first two minutes of a pool's life. Whoever controls the factory or the MEV module contract can affect pools they manage, but cannot change existing pool fee levels or extract funds directly from the hook.
Risk to user funds: The hook can take a fee from swaps through return deltas, but in this deployment the protocol fee is zero, so only the LP fee (capped at 10% in normal operation, 80% during the MEV window) applies. It cannot freely move pool funds. Users can be exposed to a temporary high fee or blocked liquidity adds during the MEV window.
Security findings
- [medium] MEV module can temporarily spike fees and block LP adds: During the first two minutes after creation, the assigned MEV module can raise a pool's LP fee up to 80% for swaps, and it can block liquidity additions. Its logic is external and was not provided.
- [low] External locker invoked on every swap: beforeSwap and afterSwap call an external locker to collect LP fees and convert paired-side slices. The swap is not reverted if that claim fails, but the external locker has access to the pool and its conversion logic is not in scope.
- [info] Hook takes fees through return deltas: Swaps take a protocol fee via PoolManager mint and return deltas, so the hook holds claimed balances in PoolManager. Accrued fees are forwarded to the factory on each swap, and with the protocol fee numerator set to 0 this amount is zero in this deployment.
- [info] Fee parameters are fixed and bounded: Fee caps are enforced on construction and initialization (LP fee max 10%, protocol numerator max 20%). Fees are immutable once the pool is set up.
Contract details
- Verified source
- Yes (ClankerHookStaticFeeV2)
- Compiler
- solc 0.8.28+commit.7893614a
- Bytecode size
- 13,000 bytes
- Upgradeable proxy
- No
- Detected patterns
- access-control, dynamic-fee, launchpad, mev-protection, moves-currency, return-delta
Pools using ClankerHookStaticFeeV2
- WETH / EVALUATION (Dynamic fee) — 24h volume $0.07, TVL $0.06, 2 swaps today
- WETH / GOIF (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- wtCOIN / ROBBERKACHU (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- WETH / IQ136 (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- WHUFSTR / WHUF (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- wtTR / TRCAT (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- wtTSM / AUTSMCAT (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- wtSGOV / SI.GOV (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- WETH / ADA (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- WETH / SETZ (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- WETH / SETZ (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- WETH / BLUESTONK (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- GOOGLc / GCAT (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today