Graph Horizon: pre read material for indexers
<aside> 🚨
We **STRONGLY ****recommend going through the pre-read section above before going through this guide as it introduces some essential Graph Horizon concepts and notions. It should take no more than 15 minutes. Thank you!
</aside>
<aside> 📢
This section describes how the protocol state and indexer operation changes (or not) with Graph Horizon (stage 1 onwards), and any action required by the indexer as a result.
</aside>
| State / Feature | Description | Actions required |
|---|---|---|
Stake management: adding new stake to the protocol via Graph Explorer |
- Stake is deposited and automatically credited to the Subgraph Service provision | Handled by Graph Explorer automatically. |
| Stake management: existing stake in the protocol | - Stake already deposited will remain credited to the indexer. |
indexer-agent, see below for configuration. |
| Stake management: thawing and withdrawing via Graph Explorer | - Stage 1: stake is thawed then eventually can be withdrawn via Graph Explorerindexer-cli to manage provisions. See How to manage the Subgraph Service Provision |
| Delegation parameters | - Delegation parameters set before horizon will NOT be automatically migrated.
| Indexer needs to set the new delegation cuts via Explorer after the upgrade. |
| Operator access | - Operators authorized before horizon will be automatically authorized to operate on the Subgraph Service provisionindexer-agent which now also supports setting the rewards destination address. See below for configuration. |
| Allocation management and query fee collection | - Indexers now need to create and manage allocations on the Subgraph Service not the Staking contract.indexer-agent. |
| Manual allocation closure | - When manually closing an allocation indexers now need to provide POI (same as before) but also the normalized POI and the block height at which they were calculated. See indexer-cli help for details. | Provide required parameters when closing allocations manually. |
| Existing (legacy) allocation management | - They are NOT migrated to the Subgraph Service | During the transition period (stage 1) indexers can collect and close legacy allocations using the indexer-agent. |
| Indexing rewards | - Both legacy and horizon allocations will qualify for indexing rewards following the same rewards formula. No changes. | |
| Serving queries | - Indexer stack supports serving queries for both pre-horizon (TAPv1) and Horizon (TAPv2) gateways. | Handled automatically by indexer stack and gateway. |
| Query fee collection (legacy allocations) | - TAP receipts and RAVs issued before the upgrade are NOT migrated to the new system (TAP v2). | For some time after the upgrade the gateway components will accept both TAP v1 and v2 receipts and RAVs. The indexer-agent and tap-agent will handle this automatically. |<aside> 🏄♂️
This section describes the actions required from indexers throughout the Graph Horizon Upgrade. Familiarity with the upgrade’s timeline is required, see Graph Horizon: upgrade overview for explanation of stages and phases.
</aside>
<aside> 🗣️
All announcements to indexers to be made via The Graph discord and IOH.
</aside>
<aside> 👌
This section describes how to upgrade the indexer component versions to a horizon enabled version, what configuration changes are required, etc.
Note that the component version upgrade and the configuration changes outlined in this section need to be done during Phase 3 to ensure no downtime on your indexer.
</aside>
indexer-agentINDEXER_AGENT_MAX_PROVISION_INITIAL_SIZEINDEXER_AGENT_PAYMENTS_DESTINATIONINDEXER_AGENT_NETWORK_SUBGRAPH_ENDPOINT or INDEXER_AGENT_NETWORK_SUBGRAPH_DEPLOYMENTindexer-service and tap-agent