Pump Hooks
02 / Hooks / launch-shield

Launch Shield

Time-boxed limits on routed execution while a market is being activated.

RISKACCESSruntime moduleunaudited
01

Behavior

  • Per-wallet cooldown between routed buys (optionally sells).
  • Maximum routed buy and sell size during the protected window.
  • Maximum routed buys per slot; optional denial of same-slot buy→sell round trips.
  • Window starts at market activation or a fixed timestamp and lasts at most 30 days.
Limitation. Applies to trades routed through Pump Hooks only. A transaction that trades on Pump directly is not affected.
02

Callbacks

ABI v1 · wire values frozen
#CallbackSubscribableDefaultSemantics
0BeforeBuyyes●Routed buy, before the Pump CPI. Can deny.
1AfterBuy—Routed buy, after the Pump CPI. Sees executed amounts; can still fail the transaction.
2BeforeSellyes●Routed sell, before the Pump CPI. Can deny.
3AfterSell—Routed sell, after the Pump CPI.
4BeforeSwapyesEither side, before the Pump CPI. Can deny.
5AfterSwap—Either side, after the Pump CPI.
6BeforeLiquidityreservedReserved (wire value 6).
7AfterLiquidityreservedReserved (wire value 7).
8BeforeFeeActionreservedReserved (wire value 8).
9AfterFeeActionreservedReserved (wire value 9).
10OnGraduationreservedReserved (wire value 10).
11OnStrategySignalreservedReserved (wire value 11).
03

Capabilities

granted at install; enforced by the executor
■READ_MARKETRead market config, venue reserves and the trade context
■VETO_ROUTED_SWAPDeny a routed trade in a before-callback (reverts the transaction)
■WRITE_HOOK_STATEPersist its 48-byte slot state on the market
□WRITE_USER_STATEUpdate the trading wallet's per-market state
□AWARD_POINTSCredit XP / points in the wallet's per-market ledger
□TREASURY_SIGNALEmit treasury allocation intents for the strategy vault
□STRATEGY_EXECUTIONBound or request vault strategy execution (TWAP, orders)
□ORACLE_READRead an external oracle account (reserved; not granted in V1)
□EXTERNAL_CPICall an external hook program (reserved; no permissionless CPI hooks in V1)
□EMIT_SIGNALEmit or consume signed strategy signals
04

Config schema

48 bytes · little-endian
FieldTypeOffsetUnitPresetDescription
startTsi640timestamp—Protection start (0 = market activation)
durationSecsu328seconds3600Length of the protected phase
cooldownSecsu3212seconds30Per-wallet cooldown between routed buys
maxBuyQuoteu6416lamports1 SOLMax routed buy size (0 = none)
maxSellQuoteu6424lamports—Max routed sell size (0 = none)
maxBuysPerSlotu1632count4Routed buys per slot (0 = none)
flagsu1634flags1bit0 deny same-slot round trips, bit1 cooldown applies to sells
05

Identity

Module ID
1 (0x0001)
Version
v1
Developer
Pump Hooks
Program
91kRNewiED… (built-in)
Priority range
0–999 · default 100
Markets
bonding-curve · pumpswap
Source
crates/hook-runtime/src/modules/launch_shield.rs
Verification
source in this repository; reproducible-build verification not yet published
Audit
unaudited
06

Registry

Install on a Pump market ›