Fee sharing hook on Robinhood Chain

Uniswap v4 Hook Contract 0x1a5c3283456ee19b8c5a99747820786cb10bc044 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 skims a fee from swaps and distributes it across buckets such as treasury, burn, liquidity seeding, FOMO and alliance rewards, with an upgradeable owner-controlled implementation.

How it works step by step

  • Takes a configurable fee (feeBps) from swaps via afterSwapReturnDelta
  • Splits accrued fees into treasury, burn, liquidity, FOMO, alliance and NFT vault shares
  • Holds pending ETH and token balances for later burn and liquidity deployment
  • Tracks a mitosis child-chain seeding flow with threshold and trigger state
  • Uses a weather oracle and rain-related shares to vary distribution
  • Stores admin-set addresses (treasury, platform owner, identity admin) and an upgradable implementation
Swap behaviour
After each swap the hook takes a share of the output via its return delta and records the amount in pending fee buckets for later distribution.
Liquidity behaviour
No liquidity callbacks are enabled; the hook appears to hold pending liquidity balances in ETH and token that it deploys later, and tracks mitosis child-chain seeding (mitosisChildToken, mitosisThresholdToken, mitosisTriggered).
Fee behaviour
Fee and share parameters are stored (feeBps, treasuryShareBps, burnShareBps, liquidityShareBps, dryLiquidityShareBps, rainLiquidityShareBps, rainBurnShareBps, allianceShareBpsOfTreasury, fomoShareBpsOfTreasury, nftVaultShareBpsOfTreasury, mitosisSeedShareBps) and accrued balances are tracked (platformOwedEth, platformOwedToken, pendingBurnEth, pendingLiquidityEth/Token, pendingFomoEth, pendingAllianceToken), indicating the hook skims a fee from swaps and routes it to treasury, burn, liquidity, FOMO, alliance and NFT vault buckets.
Owner & admin controls
Owner (slot 1, transferOwnership) can change ownership; an upgradeTo(address) function (slot 0 implementation) lets the admin swap the implementation, so logic can be changed at will. Identity admin and platform owner roles also exist (identityAdmin, platformOwner). No pause function was identified in the decoded selectors.

Enabled Uniswap v4 callbacks

afterSwap, afterSwapReturnDelta

afterSwap: runs after each swap, likely to accrue the fee distribution and update pending buckets. afterSwapReturnDelta: lets the hook take a delta from the swap output, which is how it extracts its fee from user funds.

Security & trust assessment

Risk level: high (decoded bytecode, low confidence).

Who controls it: The upgrade and ownership functions give a privileged key the ability to replace the implementation and redirect fee routing, treasury and burn parameters, or the weather oracle. A malicious or compromised owner could change share percentages or drain accrued balances.

Risk to user funds: The hook takes a portion of swap output via afterSwapReturnDelta and holds pending ETH and token balances for burn, liquidity, treasury and platform payouts. Because the implementation is upgradeable by the owner, these balances and routing logic can be changed by a privileged key.

Security findings

  • [high] Upgradeable proxy controlled by owner: Logic lives behind a proxy with an upgradeTo(address) function in slot 0, so the owner can replace the code at any time.
  • [medium] Hook takes tokens via return delta: afterSwapReturnDelta lets the hook keep a portion of swap output, so user swaps pay a hook-defined fee routed to hook-held balances.
  • [medium] Privileged roles without timelock evident: Owner can transfer ownership via transferOwnership, and several roles (identityAdmin, platformOwner, treasury) are configured by address without visible timelock.
  • [medium] Hook holds user-derived funds: Hook holds pending ETH and token balances (pendingBurnEth, pendingLiquidityEth/Token, platformOwedEth/Token), which are exposed to the upgrade and admin paths.
  • [info] Unverified source: Without verified source, the exact conditions of the fee and distribution logic cannot be confirmed from bytecode alone.

Contract details

Verified source
No
Bytecode size
6,060 bytes
Upgradeable proxy
No
Detected patterns
ownable, return-delta, upgradeable

Pools using Fee sharing hook