Letsbonk boundary
A narrow runtime cache may supply creatorFeeAddress for letsbonk trades, but on cache miss or cold start the field stays null by contract.
Trade events share one public schema, but the actual value strength depends on the pool family and transport path. Useful client code keeps those differences visible instead of flattening them away.
| Pool family | Transport | Current state |
|---|---|---|
| pump-fun | logs_only | Public trade path enabled. |
| letsbonk-fun | transaction_stream | Public trade path enabled. |
| Other current families | n/a | No production trade emission is promised right now. |
mint cannot be proven from the current trade payload, the event must not be emitted. Clients should never expect silent mint enrichment later.{
"schemaVersion": "buy_sell_event_v1",
"signature": "5GL8LJGm6gcRFRRCd6ss5eyHLV1yipJnovh6zQWUASJTdUJVE2ZKRmJ2KpDxRwTdPmCUeZGzCmd11WwjeqfbHv8V",
"mint": "5iJvdUJow6DKNYyfchD9Vv2p3RupyGF1X3k3mXncpump",
"txType": "buy",
"pool": "pump-fun",
"poolId": null,
"price": 2.8877674632978795e-8,
"source": "logs_only",
"slot": 409019833,
"block": 409019833,
"poolProgramId": "6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P",
"hasError": false,
"timestamp": 1774541469000,
"txSigner": "6qyhKqH3ERtgQcYhFms2XbRxhC262PXnZnrH2ynoks1T",
"solAmountRaw": 159998377,
"tokenAmountRaw": 5569785018801,
"solAmount": 0.159998377,
"tokenAmount": 5569785.018801,
"solInPool": 0.488888914,
"tokensInPool": 775894460.651661,
"vSolInBondingCurve": 30.488888914,
"vTokensInBondingCurve": 1055794460.651661,
"marketCapSol": null,
"poolFeeRate": 0.0125,
"creatorFeeAddress": "AVmoTthdrX6tKt4nDjco2D775W2YK3sDhxPcMmzUAmTY",
"tradersInvolved": {
"6qyhKqH3ERtgQcYhFms2XbRxhC262PXnZnrH2ynoks1T": {}
}
}
A narrow runtime cache may supply creatorFeeAddress for letsbonk trades, but on cache miss or cold start the field stays null by contract.
Read source and pool together, do not assume marketCapSol exists for every trade family, and never treat null as a server failure when the field is documented as conditional.