Fee sharing hook on Robinhood Chain
Uniswap v4 Hook Contract 0x14108d71f734301cf84cfcfbef1d93c977b26880 on Robinhood Chain · Fee sharing
- Volume (24h)
- $0
- Value locked (TVL)
- $0
- All-time volume
- $0
- Pools using this hook
- 1
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 0
What it does
This hook gates pool initialization, liquidity additions and swaps against an owner-managed whitelist and per-pool fee configuration, but without source it cannot be confirmed which trades pay more or less.
How it works step by step
- Runs beforeInitialize, beforeAddLiquidity and beforeSwap callbacks on pools that register this hook, as indicated by the hook permission flags.
- Records a per-pool config (fee and tick-related parameters, version counter) and a pool registry keyed by pool id when a pool is initialized.
- Maintains a whitelist mapping of addresses, managed by the owner through setWhitelist and setWhitelistBatch, and checked from swap and liquidity paths.
- Tracks per-pool swap counts and a registrar address, suggesting a configurable registration and fee-configuration system.
- Holds a default fee configuration with separate values and a configuration version, which can be read by pool-level lookups.
- Swap behaviour
- beforeSwap is implemented and reads a whitelist mapping and per-pool swap counters; the exact fee adjustment logic cannot be determined without source, so the precise effect on trades is not confirmed.
- Liquidity behaviour
- beforeAddLiquidity is implemented and checks an address mapping that is also used for whitelisting, so adding liquidity may be gated for non-whitelisted callers; this is inferred from storage reads only.
- Fee behaviour
- Appears to use a stored per-pool fee configuration with defaults set in a default fee config; the exact fee values and whether they are overridden dynamically cannot be determined from the decoded bytecode.
- Owner & admin controls
- The owner (Ownable, with a two-step transfer via transferOwnership and acceptOwnership) can set the registrar, transfer ownership, and add or remove whitelisted addresses. A default fee config and config version exist that suggest the owner can update parameters, though the setter selectors are not decoded by name.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeAddLiquidity, beforeSwap
beforeInitialize registers and configures new pools; beforeAddLiquidity checks caller eligibility against the whitelist; beforeSwap reads whitelist and swap-count state and likely applies a fee or gating decision.
Security & trust assessment
Risk level: medium, estimated (decoded bytecode, low confidence).
Who controls it: The owner key controls whitelisting, ownership transfer, registrar assignment and (likely) default fee configuration, so a compromised key could exclude users or change fees on newly registered pools.
Risk to user funds: The hook does not appear to hold or transfer tokens directly from the observed selectors, but it can block swaps and liquidity additions for non-whitelisted addresses, and any fee changes it applies would affect the amounts users receive.
Security findings
- [medium] Owner-controlled whitelist gates trading and liquidity: The owner can add or remove addresses through setWhitelist and setWhitelistBatch, and the whitelist is read in beforeSwap and beforeAddLiquidity, so the owner can effectively block specific addresses from interacting with covered pools.
- [medium] Privileged registrar and parameter setters: A registrar address and a configurable default fee configuration with a version counter exist, so a privileged key may be able to change how new pools are configured and charged.
- [info] Hook is not upgradeable from observed selectors: No proxy or upgrade selectors were observed in the dispatch table, so the logic appears fixed, though this is not conclusive without source.
- [info] Decoded bytecode only, no verified source: Function names beyond the decoded selectors are unknown and several dispatched functions are unnamed, which limits confidence in the full behaviour.
Contract details
- Verified source
- No
- Bytecode size
- 10,937 bytes
- Upgradeable proxy
- No
- Detected patterns
- access-control, ownable
Pools using Fee sharing hook
- ORBIO / USDG (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today