Both governance and AH indexers were crashing at pruned blocks (RPC
nodes only retain last ~256 blocks of state). Bumping startBlock to
near-tip allows clean indexing forward from current state.
- governance: 57100 → 1228500 (relay tip - ~200)
- AH: 582592 → 1029200 (AH tip - ~200)
Loss: governance 57100-1228500 (mostly empty, pre-governance-activity);
AH 582592-1029200 (~410k blocks of staking/transfer data — postgres
state will be dropped, accept loss).
Long-term fix: provision Asset Hub archive node so reindexing from
genesis is possible without recurring pruning issues.
Both AH (56400→579775) and Relay (57100→708687) startBlocks were
pointing to blocks whose state has been pruned by the chain nodes.
This caused a crash loop: SubQuery couldn't index those blocks because
api.query calls returned 'State already discarded' errors.
Root cause: AH node has ~200 block state window (default pruning).
Fix: set startBlock to current tip - 50 blocks (safely within window).
Also added --state-pruning=archive to AH collator azad on VPS3 so
this doesn't recur as SubQuery re-syncs.
RPC nodes run in pruned mode (~256 blocks state history).
Setting startBlock to recent blocks ensures all required
state is available. Old blocks have no significant user
transactions to index.
- Add handleBlock to query live chain state for existing pool members
- Add second GraphQL engine container for Asset Hub schema (port 3001)
- Register block handler in pezkuwi-assethub.yaml
Add handlePoolBonded/handlePoolUnbonded handlers to Asset Hub SubQuery.
When a user bonds to a nomination pool, they are saved as an ActiveStaker
with networkId=AssetHub and stakingType=nomination-pool. This fixes the
wallet showing INACTIVE for HEZ stakers.