Processing loop
- Load the durable checkpoint.
- Read chain head and subtract configured confirmations (default
6). - Validate that the checkpoint hash remains canonical.
- Fetch logs for configured and dynamically discovered contracts.
- Discover each launch’s token, curve, and canonical pool within bounded ranges.
- Discover and match curve
Graduatedwith managerGraduatedV3in the same transaction and block. - Decode events, transaction senders, and token metadata.
- Persist the block, raw event, projections, and checkpoint atomically.
Swap events for graduated market history.
Reorganizations and replay
If the stored checkpoint hash differs from the RPC header, recovery marks affected blocks/events/projections noncanonical, rewinds to a common canonical point, and rebuilds derived state.INDEXER_START_BLOCK seeds only a new checkpoint; it does not overwrite a durable one. A finite INDEXER_STOP_BLOCK supports controlled replay.
Application token exclusions suppress derived public projections for explicitly recorded exceptions while preserving canonical raw chain events.