Dynamic fee hook on Robinhood Chain
Uniswap v4 Hook Contract 0x5660b49518d7da97142f1387a88a899136b38080 on Robinhood Chain · Dynamic fee
- Volume (24h)
- $0
- Value locked (TVL)
- $18
- All-time volume
- $25.13M
- Pools using this hook
- 3
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 56,473
What it does
A dynamic-fee hook that charges swap fees chosen from owner-configured tiers and per-address overrides, rather than a single static pool fee.
How it works step by step
- Overrides the LP fee on every swap in beforeSwap
- Selects fee from tierOne, tierTwo or tierThree fee levels
- Falls back to a configurable defaultFee
- Supports per-address fee settings stored in a mapping
- Exposes getFeeConfig and view getters for the current fee setup
- Owner-managed with two-step ownership transfer
- Swap behaviour
- beforeSwap computes the swap fee from tier and override settings and returns it to the pool manager.
- Liquidity behaviour
- No liquidity callbacks.
- Fee behaviour
- Fee is determined in beforeSwap via a tiered scheme: tierOne, tierTwo and tierThree fees with thresholds stored in slot 1 and slot 2, a defaultFee in slot 1 offset 29, and a per-address fee mapping in slot 5. The hook returns a fee override for the swap, so the pool must use a dynamic fee.
- Owner & admin controls
- Owner (two-step transfer via transferOwnership/acceptOwnership) can call setDefaultFee, ca14a65b-selector configuration function (likely setting tier fees and thresholds), d7c94211 (per-address fee override mapping), and ee908d44 (address setter). No pause or upgrade mechanism identified.
Enabled Uniswap v4 callbacks
beforeSwap
beforeSwap: computes and returns a dynamic LP fee override for each swap based on stored fee tiers and per-address fee settings.
Security & trust assessment
Risk level: medium (decoded bytecode, medium confidence).
Who controls it: The owner can change the default fee, tier fees, thresholds and per-address fee overrides at will, so a privileged key can raise swap fees or set fees for specific addresses without user consent.
Risk to user funds: The hook does not appear to take custody of tokens or use return deltas; it only affects the fee charged on swaps, so user principal is not directly held or moved by the hook, but excessive fees could extract value from traders.
Security findings
- [medium] Owner can change swap fees: setDefaultFee and the fee configuration function are callable only by the owner and can set arbitrary fee values bounded only by the LP fee limit, so the owner could raise fees sharply on all swaps.
- [medium] Per-address fee overrides: A mapping from address to fee (slot 5) is written by owner-restricted paths, allowing targeted fee discrimination between traders.
- [info] Two-step ownership transfer: Ownership is transferred in two steps (transferOwnership then acceptOwnership), which reduces the risk of accidental transfer to a wrong address.
- [info] Unverified source: Source is not verified, so exact fee bounds, tier logic and access checks could not be confirmed from source.
Contract details
- Verified source
- No
- Bytecode size
- 5,131 bytes
- Upgradeable proxy
- No
- Detected patterns
- ownable
Pools using Dynamic fee hook
- ETH / USDG (Dynamic fee) — 24h volume $0, TVL $18, 0 swaps today
- USDe / USDG (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- ETH / USDG (0.00% fee) — 24h volume $0, TVL $0, 0 swaps today