Add MofoHook (mofo launchpad) hook on robinhood - #10457
hooklist-generator[bot] wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
Review: hooks/robinhood/0x665c52d02ddc506dfb3158c100edc77fe412a8c0.json
Flags
Last 2 bytes of address: 0xa8c0 = 1010 1000 1100 0000. All 14 permission bits match exactly:
beforeInitialize=true,beforeAddLiquidity=true,beforeSwap=true,afterSwap=true— all set- All others
false
Confirmed also by Hooks.validateHookPermissions(...) in the constructor with identical settings.
Properties
-
dynamicFee: true ✓ —
beforeInitializerequiresLPFeeLibrary.isDynamicFee(key.fee), andbeforeSwapreturnsfee | LPFeeLibrary.OVERRIDE_FEE_FLAGusingcurrentFeePips(), which applies a time-decaying anti-sniper fee. -
upgradeable: false ✓ — All state variables (
poolManager,factory,locker,openingBuyer) areimmutable. No proxy patterns, nodelegatecallto mutable addresses, noSELFDESTRUCT. -
requiresCustomSwapData: false ✓ —
beforeSwapandafterSwapboth ignore thehookData(bytes calldata) parameter entirely. The fee is derived fromblock.timestampandmsg.sender. -
vanillaSwap: false ✓ —
dynamicFeeis true andafterSwapcan revert withBelowBirthPrice, meaning swaps do not behave identically to a standard v4 pool. -
swapAccess: "none" ✓ —
beforeSwapdoes not reject any caller; it returns a fee override for all swappers. TheafterSwapprice-floor check is a price constraint, not caller-based access control.
Metadata
-
chainId: 4663 ✓ — matches
robinhoodinchains.json. -
verifiedSource: true ✓ — confirmed by
source_meta.json. -
name: "MofoHook (mofo launchpad)" ✓ — contract name is
MofoHook;(mofo launchpad)is an acceptable project qualifier. -
description ✓ — Every technical claim is substantiated:
- "factory-only pool creation" →
beforeInitializereverts ifsender != factory - "locker-only liquidity additions" →
beforeAddLiquidityreverts ifsender != locker - "dynamic LP fee with a time-decaying anti-sniper fee (99% → normal) in the first 3 seconds" →
SNIPER_START_PIPS = 990_000,SNIPER_SECONDS = 3, fee interpolation incurrentFeePips() - "reverts any swap that would push the pool price below its birth price" →
afterSwapcheckssqrtPvsbirthSqrtPriceX96
No promotional, audit, or endorsement language present.
- "factory-only pool creation" →
All checks pass.
Summary
A launchpad hook that enforces factory-only pool creation and locker-only liquidity additions. It applies a dynamic LP fee with a time-decaying anti-sniper fee (99% → normal) in the first 3 seconds after launch, and reverts any swap that would push the pool price below its birth price.
Flags
Properties
Warnings
Closes #10456