UnihoodStockHook on Robinhood Chain

Uniswap v4 Hook Contract 0xd461f3b24135f27fe8e98eac367f6ec338cfe8cc on Robinhood Chain · Dynamic fee · Verified contract

Volume (24h)
$233
Value locked (TVL)
$0
All-time volume
$233
Pools using this hook
2
Swaps (24h)
49 (6 traders)
Total swaps
49

What it does

Quotes a tokenized stock against an ERC-20 with a flat per-launch fee of up to 5% that is split between the creator, a self-managed bid wall and the platform, and no anti-snipe window.

This read was written for the hook 0xf70e…a8cc 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

  • Charges a per-launch fixed swap fee from 0 to 5% on quote-token amounts, fixed forever with no decay.
  • Splits each fee 40% to the creator, 5% to a bid wall and 55% to the platform, or 80% wall, 15% platform, 5% creator for snowball launches.
  • Restricts liquidity additions to the factory and the hook itself until the pool graduates past gradTick, after which the pool opens to all.
  • Maintains a single-sided quote-token bid wall one tick spacing below spot and rebuilds it as the wall budget grows, capturing tokens it buys permanently.
  • Lets creators claim and redirect their accrued quote fees and lets the platform treasury claim its share.
Swap behaviour
Before swap, the hook takes a fixed launch-time fee on the quote-token side (fee-free for factory dev-buys) via return delta; after swap, it checks partial-fill accounting, updates graduation status against gradTick, and rebuilds the bid wall once its budget reaches the threshold.
Liquidity behaviour
Before graduation, beforeAddLiquidity reverts for everyone except the factory (launch position) and the hook itself (bid wall); after graduation (tick at or below gradTick, latched) liquidity is open to anyone. The hook itself manages a single-sided quote-token bid wall one tick spacing below spot, removing and re-placing it when the wall budget reaches wallThreshold, and captures any tokens it acquires permanently.
Fee behaviour
Each launch fixes a flat total swap fee of 0 to 5% (500 bps max) at registration, applied on quote-side amounts in beforeSwap and taken via return delta. The fee is split 40% creator, 5% bid wall, 55% platform (or 80% creator-share reserved for snowball preset: 15% platform, 80% wall, 5% creator). The launch dev-buy from the factory is fee-free. LP fee pips are 0.
Owner & admin controls
Only the platform treasury (immutable platformRecipient) can call setFactory once to wire the factory and claimPlatformFees; the factory alone can register pools and initialize them; each pool's fee recipient (creator) controls setFeeRecipient and claimCreatorFees. Fees per pool are fixed at launch with no owner setter, gradTick, wallThreshold and quote are immutable, and there is no upgrade path or pause.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeAddLiquidity, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize restricts initialization to registered pools started by the factory; beforeAddLiquidity gates launch-mode liquidity; beforeSwap charges the quote-side fee and returns a fee delta; afterSwap verifies partial-fill accounting, updates graduation, and rebuilds the bid wall; beforeSwapReturnDelta and afterSwapReturnDelta allow the hook to take its fee from swap amounts.

Security & trust assessment

Risk level: medium (verified source, high confidence).

Who controls it: The platform treasury can only wire the factory once and claim its own accrued platform fees; it cannot change fees, pause swaps or move creator or wall funds. Creators can redirect their own fee claims. No upgradeability or owner-level parameter changes were found, so a privileged key cannot unilaterally confiscate user funds in the source shown.

Risk to user funds: The hook can hold quote tokens (fee accruals and bid wall liquidity) and tokens captured by the wall, and it charges up to 5% on quote-side swap amounts; it cannot block swaps through a pause or owner switch, but partial-fill reverts and wall rebuilds can affect execution.

Security findings

  • [info] Hook custodies swap fees via return deltas: The hook takes its fee through beforeSwap and afterSwap return deltas and holds quote-token claims minted into the PoolManager, so it temporarily custodies fee amounts that are later redeemed to creators, the platform, or the wall.
  • [low] Partial fills can revert swaps: afterSwap reverts with PartialFillUnsupported if the pool-side quote amount deviates from the expected fee-adjusted amount, so swaps that partially fill against the bid wall or liquidity can revert and fail for users.
  • [low] Wall rebuild in swap path and locked captured tokens: The bid wall is rebuilt inside afterSwap by removing and re-adding liquidity; heavy swap volume can trigger this gas-intensive path and tokens captured by the wall are sequestered in the hook forever.
  • [info] One-shot factory wiring by platform treasury: The platform treasury address is immutable and sole recipient of platform fees, and wires the factory via a one-shot setFactory; if the factory address were set incorrectly it cannot be changed, which is a deployment-time trust point.

Contract details

Verified source
Yes (UnihoodStockHook)
Compiler
solc 0.8.26+commit.8a97fa7a
Bytecode size
12,313 bytes
Upgradeable proxy
No
Detected patterns
dynamic-fee, fee-sharing, launchpad, moves-currency, return-delta, rewards, self-unlock

Pools using UnihoodStockHook