Token hook on Robinhood Chain
Uniswap v4 Hook Contract 0xb8a9f4a42beb17e03c82cc5eac3ee6341ae68acc on Robinhood Chain · Token
- Volume (24h)
- $0
- Value locked (TVL)
- $0
- All-time volume
- $0
- Pools using this hook
- 1
- Swaps (24h)
- 6 (3 traders)
- Total swaps
- 6
What it does
This hook taxes swaps of its token through a return-delta fee that is split between holder rewards, a treasury and a keeper, with an anti-dump setting that can limit selling.
How it works step by step
- Charges a tax on swaps of the hook-related token by taking a share of swap amounts through return deltas in beforeSwap and afterSwap
- Accrues taxed ETH in storage and splits it between a holder rewards pool, a treasury and a keeper gas incentive, with basis point constants TAX_BPS, HOLDER_SHARE_BPS and KEEPER_GAS_BPS
- Includes an anti-dump mechanism (setAntiDump selector referenced) that can adjust swap behaviour based on sell pressure
- Uses a seed flag and seed function so liquidity can only be added once the pool is seeded, with beforeAddLiquidity and beforeRemoveLiquidity gating liquidity changes
- Tracks swapCount, totalTaxEth, totalToHolders and totalToTreasury for accounting
- collect() and unlockCallback() let the hook unlock the pool manager and pull or distribute accrued ETH and tokens
- Swap behaviour
- Swaps trigger beforeSwap and afterSwap; the hook takes a tax through return deltas on swaps of the taxed token, so trades pay the tax amount (TAX_BPS) while other trades pass through untaxed. Exact direction-specific rates cannot be fully confirmed from bytecode alone.
- Liquidity behaviour
- beforeAddLiquidity may revert until the pool is seeded; beforeRemoveLiquidity is gated by the hook. Liquidity is managed by the pool manager, not by the hook holding user positions.
- Fee behaviour
- Uses a separate tax in basis points (TAX_BPS) taken as return deltas on swaps, accrued as ETH and then split among holders, treasury and keeper. The pool's static fee (POOL_FEE) also exists.
- Owner & admin controls
- Decoded selectors suggest a treasury address and anti-dump settings (setAntiDump) that may be adjustable; exact owner or role checks cannot be confirmed without source.
Enabled Uniswap v4 callbacks
beforeAddLiquidity, beforeRemoveLiquidity, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta
beforeAddLiquidity and beforeRemoveLiquidity gate liquidity actions; beforeSwap and afterSwap run the tax and accounting; beforeSwapReturnDelta and afterSwapReturnDelta allow the hook to take a share of swap amounts.
Security & trust assessment
Risk level: high, estimated (decoded bytecode, low confidence).
Who controls it: A treasury address receives a share of taxes, and anti-dump settings may be changed by a privileged key, which could alter sell conditions for holders.
Risk to user funds: The hook takes tokens and ETH through return deltas and moves currency via pool manager unlock and take calls, so user swap proceeds are directly subject to the tax.
Security findings
- [medium] Return-delta taxation: beforeSwapReturnDelta and afterSwapReturnDelta let the hook take a portion of every affected swap, so trades can be taxed beyond the pool fee.
- [medium] Adjustable anti-dump parameters: setAntiDump(uint256,uint256) is referenced in the bytecode, which may let a privileged key change sell restrictions after launch.
- [low] Seed-gated liquidity: beforeAddLiquidity depends on a seed flag, so liquidity may be unavailable until the owner or hook seeds the pool.
- [info] Self-unlock and currency movement: The hook calls unlock and take on the pool manager, so it moves currency during collection and callbacks.
Contract details
- Verified source
- No
- Bytecode size
- 5,349 bytes
- Upgradeable proxy
- No
- Detected patterns
- moves-currency, return-delta, rewards, self-unlock, tax