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
- LOAM / PINTO (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today