Fee sharing hook on Robinhood Chain
Uniswap v4 Hook Contract 0x1c1eaf56d96043ac7eb93099c23bc2858760e0cc on Robinhood Chain · Fee sharing
- Volume (24h)
- $765
- Value locked (TVL)
- $0
- All-time volume
- $765
- Pools using this hook
- 1
- Swaps (24h)
- 6 (3 traders)
- Total swaps
- 6
What it does
This hook takes a configurable levy from swaps through return deltas and credits a portion back under owner-set rates, but the exact direction and recipients of the levy cannot be confirmed without verified source.
This read was written for the hook 0x4cb0…20cc 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
- Hook is an ERC20-style token contract with owner, name/symbol/decimals/totalSupply and transfer/approve functions, deployed as a Uniswap v4 hook.
- Enables beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta and afterSwapReturnDelta, so it can take a cut of swap amounts through return deltas.
- Stores a levy rate (levyBps) and a credits rate (creditsBps) as configurable parameters, and tracks a levied counter.
- Uses an unlockCallback path and calls take() on the pool manager to move currency out of the pool during swaps.
- Exposes a plinth() getter and poolManager() reference, indicating the hook is tied to a specific pool manager and an internal reserve/plinth accounting mechanism.
- Swap behaviour
- beforeSwap and afterSwap run on every swap; they update levy and credit accounting and can return a delta that takes a levy portion of swap amounts from the trade, so the exact direction and size of the levy depends on logic not visible in the decoded input.
- Liquidity behaviour
- No liquidity callbacks.
- Fee behaviour
- Levy taken from swaps via return deltas at a rate set by levyBps; the pool's own fee is not otherwise changed. Credits are governed by creditsBps. Exact fee-sharing recipients cannot be determined from decoded bytecode.
- Owner & admin controls
- Ownable: owner can transferOwnership and renounceOwnership; owner-restricted parameter setters for levyBps and creditsBps are likely but not confirmed from decoded selectors.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta
beforeInitialize sets initialization state; beforeSwap computes the pre-swap levy and any delta; afterSwap settles the levy and credits after execution; beforeSwapReturnDelta and afterSwapReturnDelta allow the hook to take currency from the swap.
Security & trust assessment
Risk level: high, estimated (decoded bytecode, low confidence).
Who controls it: The owner can renounce or transfer ownership and likely change levy and credit parameters; a compromised owner key could raise fees or redirect levy proceeds.
Risk to user funds: The hook can take tokens from pool swaps through return deltas and holds a token balance, so user swap proceeds are exposed to the levy mechanism.
Security findings
- [high] Return-delta currency capture: The hook has beforeSwapReturnDelta and afterSwapReturnDelta enabled and calls take() on the pool manager, so it can extract a share of every swap's currency.
- [medium] Owner-configurable levy rate: levyBps and creditsBps are read from storage and the owner controls the contract, so a privileged key could raise the levy to a high percentage and extract user value from swaps.
- [medium] Unverified source: No verified source is available, so the exact accounting, rate bounds and recipient logic can only be inferred from selectors and storage.
- [info] Token functionality on hook: The hook also implements a full ERC20 interface (transfer, approve, transferFrom), which may represent a share or claim token tied to the pool.
Contract details
- Verified source
- No
- Bytecode size
- 7,579 bytes
- Upgradeable proxy
- No
- Detected patterns
- erc20, moves-currency, ownable, return-delta, self-unlock
Pools using Fee sharing hook
- ETH / DAEMONRY (0.00% fee) — 24h volume $765, TVL $0, 6 swaps today