Liquidity management hook on Robinhood Chain
Uniswap v4 Hook Contract 0x4becd2e28a365a9d7f1c4c25e90fd446f1e06ac0 on Robinhood Chain · Liquidity management
- Volume (24h)
- $0
- Value locked (TVL)
- $2.95
- All-time volume
- $0
- Pools using this hook
- 3
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 0
What it does
This hook manages pooled liquidity for LPs in exchange for share tokens and charges swappers a dynamic fee bounded by hard-coded limits, part of which goes to a treasury, while direct pool deposits and withdrawals are routed through the hook.
How it works step by step
- Manages pool liquidity itself: users deposit tokens through the hook and receive share tokens instead of adding liquidity directly to the pool.
- Blocks direct liquidity adds and removes from outside the hook, so LPs enter and exit through the hook's own deposit and withdraw functions.
- Sets a dynamic LP fee per pool between hard-coded minimum and maximum values, and the admin can adjust it.
- Records price observations on each swap to provide an on-chain price oracle.
- Sends a treasury fee share to a treasury address, capped by a hard-coded maximum treasury fee.
- Swap behaviour
- Before a swap the hook records a price observation and applies the pool's current dynamic LP fee. After the swap it updates its internal pool state. It cannot take tokens from swaps through return deltas.
- Liquidity behaviour
- Direct add and remove liquidity calls appear to be rejected by the hook's checks, so LPs must use the hook's own deposit and withdraw paths, which mint and burn share tokens. Exits depend on the hook's withdraw logic rather than on free pool withdrawals.
- Fee behaviour
- Uses a dynamic LP fee bounded by hard-coded minimum and maximum constants, plus a treasury cut capped by a maximum treasury fee constant. The exact percentages could not be read from the bytecode. LPs earn the LP fee and the treasury address receives its share.
- Owner & admin controls
- The admin, transferred through a two-step handoff, can set the LP fee within the hard-coded min and max, change the treasury and factory addresses, and call a rescue function on tokens. The exact caps and the scope of rescue are not verifiable from bytecode.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeAddLiquidity, beforeRemoveLiquidity, beforeSwap, afterSwap
beforeInitialize: registers and validates new pools; beforeAddLiquidity: restricts liquidity adds to the hook's own path; beforeRemoveLiquidity: restricts liquidity removals to the hook's own path; beforeSwap: sets the fee and records oracle data; afterSwap: updates internal state after each trade.
Security & trust assessment
Risk level: medium, estimated (decoded bytecode, low confidence).
Who controls it: A single admin address controls fee settings, the treasury address, the factory address and token rescue. The fee range is capped by constants, but the exact values are not verified.
Risk to user funds: The hook manages LP liquidity and can move tokens through the pool manager, so LP funds depend on its deposit and withdraw code. Fee caps exist but their exact values are unknown, and the scope of rescue cannot be fully confirmed.
Security findings
- [medium] Hook-managed liquidity: LP positions are held by the hook and represented by share tokens, so withdrawals rely on the hook's own logic. Direct removals from the pool appear to be blocked.
- [medium] Admin rescue function: The admin can call a rescue function that reads treasury and pool data. From bytecode alone it is unclear whether this function is limited to stray tokens.
- [info] Bounded dynamic fee: The admin can change the LP fee, but only within hard-coded minimum and maximum constants, and the treasury fee has its own hard-coded cap.
Contract details
- Verified source
- No
- Bytecode size
- 21,475 bytes
- Upgradeable proxy
- No
- Detected patterns
- dynamic-fee, erc20, moves-currency, self-unlock
Pools using Liquidity management hook
- SHROOM / MU (Dynamic fee) — 24h volume $0, TVL $0.99, 0 swaps today
- SHROOM / NVDA (Dynamic fee) — 24h volume $0, TVL $0.99, 0 swaps today
- USDG / SHROOM (Dynamic fee) — 24h volume $0, TVL $0.99, 0 swaps today