RobinhoodSellGasGateHook on Robinhood Chain
Uniswap v4 Hook Contract 0x02c1b0326b0ff6fcd5e69a337910e18453500080 on Robinhood Chain · Dynamic fee · Verified contract
- Volume (24h)
- $0
- Value locked (TVL)
- $0
- All-time volume
- $1.59K
- Pools using this hook
- 1
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 37
What it does
This hook blocks sells of the token in its pool unless the transaction supplies enough gas, while buys and swaps in other pools go through unchanged, and it charges no extra fee.
This read was written for the hook 0xbf22…c080 on Robinhood Chain and reused here: the two share a code shape, so constants such as fees, owners and addresses can differ.
How it works step by step
- Attaches to one pool that pairs the configured token with the configured quote currency; pools not involving the token pass through unchanged
- In beforeSwap, determines whether the swap sells the token (token is the input currency) for both exact-input and exact-output swaps
- For sells only, reads gasleft() at hook entry and reverts with SellGasTooLow if it is below GAS_THRESHOLD
- Buys (quote as input) always pass through with zero delta and zero fee override
- All other hook callbacks are empty pass-through stubs that return their own selector
- Swap behaviour
- Sells of the token (token is the input currency) revert with SellGasTooLow when the transaction's remaining gas at hook entry is below GAS_THRESHOLD; buys and swaps in pools not involving the token execute normally. No fee or delta changes are applied to any swap.
- Liquidity behaviour
- No liquidity callbacks.
- Fee behaviour
- Uses the pool's static fee. The hook returns a zero fee override and zero BeforeSwapDelta in all cases.
- Owner & admin controls
- No admin controls found. The threshold, manager, token and quote are all immutable constructor parameters, and there is no owner, pause or upgrade function in the ABI.
Enabled Uniswap v4 callbacks
beforeSwap
beforeSwap is enabled and is used to classify the swap direction and revert low-gas sells; the other callbacks are present in the bytecode but are empty stubs.
Security & trust assessment
Risk level: medium (verified source, high confidence).
Who controls it: No privileged role exists in the ABI. The deployer sets the immutable threshold and assets at construction and cannot alter them later.
Risk to user funds: The hook does not hold, move or take tokens; its only effect is to revert sell swaps that lack sufficient gas, so funds are blocked from a sell rather than taken.
Security findings
- [medium] Sells gated by transaction gas: Sells revert whenever gasleft() at hook entry is below the immutable GAS_THRESHOLD, so a seller must send a transaction with enough gas to reach the hook. Users or routers that estimate gas poorly may see sells fail, and the gate can be exploited to selectively delay or block sells by controlling gas limits.
- [low] No pause or escape hatch: The threshold cannot be changed after deployment and there is no emergency disable, so a misconfigured threshold permanently affects sells in the pool.
- [info] Hook does not move funds: beforeSwap returns zero delta and the hook has no token transfer logic, so it cannot take or hold user or pool funds.
Contract details
- Verified source
- Yes (RobinhoodSellGasGateHook)
- Compiler
- solc 0.8.28+commit.7893614a
- Bytecode size
- 2,401 bytes
- Upgradeable proxy
- No
Pools using RobinhoodSellGasGateHook
- WETH / CONQUEST (0.30% fee) — 24h volume $0, TVL $0, 0 swaps today