decodeKuruEventLog to identify ABI events, then decodeTradesPacked or decodeBookUpdatesPacked for their packed payloads. Mixed receipts may contain unrelated token logs; only ignore a decoding failure when the emitting address/event is outside the integration’s expected scope.
Operation outcomes
Trade records remain 64 bytes; book records remain 39 bytes. Outcome information occupies previously reserved bits. The SDK exposesoutcome, operation correlation, and sentinel identification.
Mask the base flags rather than comparing a full flag byte to a single value. Book outcomes use a one-bit shift; trade outcomes use a three-bit shift. Operation index and replacement-slot fields are meaningful according to the outcome record’s context.
Book state and match completion
Zero-delta book sentinels report otherwise silent outcomes. Record the outcome but skip the sentinel for L2 and L3 changes. Ordinary live and delete records still mutate book state.MATCH_END closes a nonempty match’s fee-accounting boundary. It does not by itself mean the incoming order filled completely. In particular, the final record may be a passive fill carrying the parent operation’s outcome.
Use OrderBook Events for exact layouts, passive/active settlement, and reducer ordering. Use AccountCore balance snapshots to reconcile custody independently.