1c90c5e. It documents protocol events; ERC-20 token transfer events are a separate stream.
Event processing rules
Use the generated ABI to decode logs. Preserve chain ID, contract address, transaction hash, log index, block number, block hash, and block timestamp. Process canonical ordering and handle removed/reorganized history; a log seen once is not a permanent settlement fact. Several events can describe one action. A purchase emits its acceptance and allocation reservations; finalization emits vesting events as well as the sale result. Do not add those events as separate sales or count both reservations and vesting as new earnings. See indexing, data model, and vault accounting.CampaignCreated
Establishes the campaign, merchant, product commitment, price, token, and initial policy hash. Creation is not activation.CampaignFunded
Adds received tokens to the separate reward budget. The funder is not necessarily the campaign merchant.CampaignStatusChanged
Records active, paused, and ended flags. Time-based expiry still needs evaluation against the applicable policy.MerchantProceedsClaimed
Records the merchant withdrawing claimable product proceeds for a campaign.NativePurchaseAccepted
Records a purchase, accepted policy, price, reserved reward, and unlock time. Finalization is a later event.NodeCreated
Records an immutable parent edge and node owner inside a campaign. This is attribution, not a commission payment.PolicyVersionRegistered
Records the terms and effective time of a policy version. A scheduled version is not effective merely because the event exists.Tuple field definition
Tuple field definition