Index the launch factory first. Each valid TokenLaunched log identifies the
token, canonical V3 pool, quote token, ordering, fee tier, launch policy, and
locked position.
Pin the event version
Event signatures are part of the deployment interface. Pin the deployment
manifest and its ABI hashes as one release.
The current source-generated abi/v2 artifacts use these topics:
The historical testnet deployment manifest records ABI hashes from an older
source revision. Do not use the topics or tuple shapes above against that
deployment until the approved release proves they match.
Read launches with viem
Use the full event shape. Start at the deployment block from the matching
manifest.
After decoding a launch:
- read
getLaunchedToken(token);
- require
exists and matching token, pool, quote token, ordering, and tier;
- read the pool’s
token0, token1, and fee;
- register that pool for
Swap logs;
- register the token for
Transfer logs when you need holders.
TokenMetadataPublished contains the immutable metadata needed for indexing.
Direct token getters remain the canonical fallback.
Derive trade direction
V3 amounts use the pool’s perspective. A positive amount entered the pool.
A buy sends quote tokens into the pool and launch tokens out. A sell does the
opposite.
Lifecycle and revenue events
There is no migration event. Use:
GraduationCheckpointed for the irreversible TGE checkpoint;
FeesAllocated for exact team, reserve, fee-right, and compounding amounts;
FeesCompounded for liquidity added to the original locked position;
FeeAllocationUpdated for changes to the global collection policy;
AuctionSnapshot and FeeRightsPositionSnapshot for indexer-complete
fee-right state;
OrderFilled and OrderNonceCancelled for terminal limit-order evidence.
Do not infer a fee allocation change from TGE. Read or index the locker policy
separately.
Canonical event identity
Use this identity for every observation:
Treat pre-finality event data as provisional. A removed or replaced log is not
canonical evidence.