Custom pricing hook on Base

Uniswap v4 Hook Contract 0xf546d8ca0804844ac302b867654b8409c6412888 on Base · Custom pricing

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

What it does

An immutable, no-liquidity hook that converts exact-input swaps through an external mint/redeem contract at that contract's rate, with no visible hook fee and with liquidity deposits and exact-output trades blocked.

How it works step by step

  • Turns a Uniswap v4 pool into a fixed conversion route between two tokens, apparently a Pinto-ecosystem token pair (getter names hint at Pinto, Loam and a diamond contract).
  • Swaps are filled by the hook itself through return deltas, not by pool liquidity. It appears to mint or redeem through an external contract and settle the result with the PoolManager.
  • Blocks anyone from adding liquidity, so the pool holds no LP positions.
  • Only exact-input swaps are supported. Exact-output swaps revert.
  • Pool creation is checked at initialization, likely limited to the expected token pair.
Swap behaviour
During a swap the hook takes the input tokens, calls an external contract to mint or redeem the other token (possibly capped by a maximum redeemable amount), and pays the output back to the trader through a return delta. Exact-output swaps are rejected.
Liquidity behaviour
Adding liquidity always reverts, so there are no LP positions. Remove-liquidity callbacks are disabled, so the hook could never block withdrawals anyway.
Fee behaviour
No explicit hook fee is visible in the bytecode. The conversion rate is set by the external mint/redeem contract, and any fee embedded there cannot be confirmed from bytecode.
Owner & admin controls
No admin controls found. The storage layout is empty and there are no owner or setter functions; the targets appear to be hard-coded.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeAddLiquidity, beforeSwap, beforeSwapReturnDelta

beforeInitialize: validates which pools can use the hook; beforeAddLiquidity: rejects all liquidity deposits; beforeSwap: routes the swap into an external mint/redeem conversion; beforeSwapReturnDelta: lets the hook supply the swap output and consume the input itself.

Security & trust assessment

Risk level: medium, estimated (decoded bytecode, medium confidence).

Who controls it: No privileged keys were found in the hook. Behaviour depends on the external diamond and mint/redeem contracts it calls, and whoever governs those contracts can affect conversion rates or availability.

Risk to user funds: The hook handles only the trader's input and output amounts during each swap. The conversion rate is set externally and cannot be verified here. There is no LP principal to lock or drain, since liquidity cannot be added.

Security findings

  • [medium] Hook fully controls swap amounts: Through before-swap return deltas, the hook decides how much output traders get, based on an external mint/redeem contract. The exact pricing cannot be verified because the source is unverified.
  • [info] No liquidity allowed: All liquidity additions revert, so no LP funds are ever at risk in this pool.
  • [info] Immutable, no admin: This is a direct contract with no storage or owner functions, so its behaviour cannot be changed after deployment.

Contract details

Verified source
No
Bytecode size
5,476 bytes
Upgradeable proxy
No
Detected patterns
erc20, moves-currency, return-delta

Pools using Custom pricing hook