OuroborosHook on Robinhood Chain

Uniswap v4 Hook Contract 0x7bc2af6fb9a989505e9629470869a19143532aec on Robinhood Chain · Custom pricing · Verified contract

Volume (24h)
$0
Value locked (TVL)
$3.54K
All-time volume
$0
Pools using this hook
1
Swaps (24h)
0 (0 traders)
Total swaps
108,122

What it does

OuroborosHook is a custom-accounting hook for an OUROBOROS/CRCL pool that takes a 1% fee on CRCL-side swaps and uses it to burn OUROBOROS and recycle value into the pool, while blocking outside liquidity and donations.

How it works step by step

  • Blocks external addLiquidity, removeLiquidity and donate calls by reverting in before-hooks.
  • Bootstraps a single locked liquidity position at a fixed launch tick via one-time bootstrap.
  • Charges a fixed 1% hook fee on CRCL-side swaps through beforeSwapReturnDelta and mints it as ERC-6909 claims.
  • Splits captured fees 80% to a burn budget and 20% to a turn reserve.
  • Runs automatic OUROBOROS buy-and-burn and CRCL-OUROBOROS turn cycles inside afterSwap, catching failures without reverting the user swap.
Swap behaviour
On swaps where CRCL is the specified side, beforeSwap takes a 1% fee in CRCL claims. In afterSwap the fee is allocated 80% to a burn budget and 20% to a turn reserve, then buy-and-burn and turn routines run as caught self-calls against the pool.
Liquidity behaviour
External addLiquidity and removeLiquidity revert with ExternalLiquidityForbidden. Only the hook itself, during bootstrap, adds a single full-range-style position from launchTick to the usable max (or min) tick with liquidity locked in lockedLiquidity. Donations revert.
Fee behaviour
Pool LP fee is 0. The hook takes a fixed 1% (10,000 of 1,000,000 pips) fee on every swap that has CRCL as the specified side, minted as ERC-6909 CRCL claims via beforeSwap return delta. The fee is split 80% to a burn budget used to buy and burn OUROBOROS and 20% to a turn reserve used for CRCL-OUROBOROS round trips.
Owner & admin controls
No owner or pausing role found. The bootstrapper address can call bootstrap once to seed liquidity; after that no privileged parameter changes exist. Constructor parameters and pool addresses are immutable.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeAddLiquidity, beforeRemoveLiquidity, beforeSwap, afterSwap, beforeDonate, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize: restricts initialization to the bootstrapper and the exact launch price and pool key. beforeAddLiquidity and beforeRemoveLiquidity: revert to block external liquidity. beforeDonate: reverts to block donations. beforeSwap: takes the 1% CRCL fee via beforeSwapReturnDelta and mints it as claims. afterSwap: allocates fees, runs buy-and-burn and turn automation via try/catch self-calls, and can return an unspecified delta. beforeSwapReturnDelta and afterSwapReturnDelta: enabled so the hook can take fees and claim ERC-6909 balances.

Security & trust assessment

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

Who controls it: No privileged key can change fees, pause swaps, or move funds after deployment. The only privileged action is the one-time bootstrap by the bootstrapper, which fixes the launch price and seeds liquidity. No upgrade path or owner role was found in the verified source.

Risk to user funds: The hook holds ERC-6909 CRCL claims from fees and the locked liquidity position. Users keep their balances outside the hook, but swappers pay a 1% fee on CRCL-side swaps and the automated buyback and turn trades can move price against them. No function allows the hook to seize or block user balances.

Security findings

  • [medium] Reentrant pool swaps inside afterSwap: Swaps trigger buy-and-burn and turn operations that execute additional swaps against the same pool inside afterSwap. Failures are caught and emitted as AutomationFailed, so the user swap does not revert, but state can be advanced by whoever triggers the outer swap.
  • [medium] Turn reserve can be spent at a loss: The turn routine performs CRCL to OUROBOROS to CRCL round trips funded from the turn reserve. Each round trip may realize a loss against the reserve, and the reserve is drawn down without a loss cap.
  • [medium] Automated trades are exposed to MEV: Buy-and-burn and turn execution use the pool's own price with no slippage bound beyond the global sqrt price limit, so a sandwiching trader can extract value from the automated trades.
  • [info] Hook custodies claim balances: The hook uses ERC-6909 mint and burn on the pool manager for CRCL and takes OUROBOROS directly. Funds the hook holds are controlled only by the contract logic; no sweep or admin withdrawal exists.
  • [info] Fixed fee split with no governance: Fee and burn accounting are internal and computed from swap amounts; the ratio is fixed at 80/20 in constants.

Contract details

Verified source
Yes (OuroborosHook)
Compiler
solc 0.8.36+commit.8a079791
Bytecode size
11,734 bytes
Upgradeable proxy
No
Detected patterns
erc6909-claims, moves-currency, return-delta, self-unlock

Pools using OuroborosHook