Skip to content

Commit

Permalink
Editing chain integration (#495)
Browse files Browse the repository at this point in the history
* Making questions headings

* updated FAQ to match the one from the GIP + small tweaks based on feedback

* fixed formatting on the chain integration docs page

* Fixing errors

* Adding link to GIP

---------

Co-authored-by: Pedro Diogo <pdiogo@Pedros-Air-2.lan>
  • Loading branch information
MichaelMacaulay and Pedro Diogo authored Aug 29, 2023
1 parent 5c06dda commit e87d78a
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 9 deletions.
20 changes: 12 additions & 8 deletions website/pages/en/chain-integration-overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@ A transparent and governance-based integration process was designed for blockcha

## Stage 1. Technical Integration

- Teams work on a Graph Node integration. [Here's how](/new-chain-integration/).
- Teams work on a Graph Node integration and Firehose for non-EVM based chains. [Here's how](/new-chain-integration/).
- Teams initiate the protocol integration process by creating a Forum thread [here](https://forum.thegraph.com/c/governance-gips/new-chain-support/71) (New Data Sources sub-category under Governance & GIPs). Using the default Forum template is mandatory.

## Stage 2. Integration Validation

- Teams collaborate with the Graph Foundation and operators of GUIs and network gateways, such as [Subgraph Studio](https://thegraph.com/studio/), to ensure a smooth integration process. This involves providing the necessary backend infrastructure, such as the integrating chain's JSON RPC or Firehose endpoints. Teams wanting to avoid self-hosting such infrastructure can leverage The Graph's community of node operators (Indexers) to do so, which the Foundation can help with.
- Teams collaborate with core developers, Graph Foundation and operators of GUIs and network gateways, such as [Subgraph Studio](https://thegraph.com/studio/), to ensure a smooth integration process. This involves providing the necessary backend infrastructure, such as the integrating chain's JSON RPC or Firehose endpoints. Teams wanting to avoid self-hosting such infrastructure can leverage The Graph's community of node operators (Indexers) to do so, which the Foundation can help with.
- Graph Indexers test the integration on The Graph's testnet.
- Core developers and Indexers monitor stability, performance, and data determinism.

Expand All @@ -24,22 +24,26 @@ A transparent and governance-based integration process was designed for blockcha

If the process looks daunting, don't worry! The Graph Foundation is committed to supporting integrators by fostering collaboration, offering essential information, and guiding them through various stages, including navigating governance processes such as Graph Improvement Proposals (GIPs) and pull requests. If you have questions, please reach out to [info@thegraph.foundation](mailto:info@thegraph.foundation) or through Discord (either Pedro, The Graph Foundation member, IndexerDAO, or other core developers).

Ready to shape the future of The Graph Network? [Start your proposal](https://github.com/graphprotocol/graph-improvement-proposals/blob/main/gips/0057-chain-integration-process.md) now and be a part of the web3 revolution!

---

## Frequently Asked Questions

**1. How does this relate to the [World of Data Services GIP](https://forum.thegraph.com/t/gip-0042-a-world-of-data-services/3761)?**
### 1. How does this relate to the [World of Data Services GIP](https://forum.thegraph.com/t/gip-0042-a-world-of-data-services/3761)?

This process is related to the Subgraph Data Service, applicable only to new Subgraph `Data Sources`.

**2. What happens if Firehose & Substreams support comes after the network is supported on mainnet?**
### 2. What happens if Firehose & Substreams support comes after the network is supported on mainnet?

This would only impact protocol support for indexing rewards on Substreams-powered subgraphs. The new Firehose implementation would need testing on testnet, following the methodology outlined for Stage 2 in this GIP. Similarly, assuming the implementation is performant and reliable, a PR on the [Feature Support Matrix](https://github.com/graphprotocol/indexer/blob/main/docs/feature-support-matrix.md) would be required (`Substreams data sources` Subgraph Feature), as well as a new GIP for protocol support for indexing rewards. Anyone can create the PR and GIP; the Foundation would help with Council approval.

**3. How much time will this process take?**
### 3. How much time will this process take?

The time to mainnet is expected to be several weeks, varying based on the time of integration development, whether additional research is required, testing and bug fixes, and, as always, the timing of the governance process that requires community feedback.

It depends. Protocol support for indexing rewards depends on the involved stakeholders' bandwidth to proceed with testing, feedback gathering, and handling contributions to core codebase, if applicable. All of this is directly tied to the integration's maturity and how responsive the integration team is (who may or may not be the team behind the RPC/Firehose implementation). The Foundation will oversee the whole process, unblocking participants as much as possible.
Protocol support for indexing rewards depends on the stakeholders' bandwidth to proceed with testing, feedback gathering, and handling contributions to the core codebase, if applicable. This is directly tied to the integration's maturity and how responsive the integration team is (who may or may not be the team behind the RPC/Firehose implementation). The Foundation is here to help support throughout the whole process.

**4. How will priorities be handled?**
### 4. How will priorities be handled?

Similar to #3, it will depend on overall readiness and involved stakeholders' bandwidth. For example, a new chain with a brand new Firehose implementation may get a different amount of allocated resources and effort than others whose integration process may or may not already be in progress. This is especially true for chains previously supported on the [Hosted Service](https://thegraph.com/hosted-service) or those relying on already tested stacks like the OP Stack.
Similar to #3, it will depend on overall readiness and involved stakeholders' bandwidth. For example, a new chain with a brand new Firehose implementation may take longer than integrations that have already been battle-tested or are farther along in the governance process. This is especially true for chains previously supported on the [Hosted Service](https://thegraph.com/hosted-service) or those relying on already tested stacks.
2 changes: 1 addition & 1 deletion website/pages/en/new-chain-integration.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ For Graph Node to be able to ingest data from an EVM chain, the RPC node must ex
> Do not change the env var name itself. It must remain `ethereum` even if the network name is different.
3. Run an IPFS node or use the one used by The Graph: https://api.thegraph.com/ipfs/

\*Test the integration by locally deploying a subgraph\*\*
**Test the integration by locally deploying a subgraph**

1. Install [graph-cli](https://github.com/graphprotocol/graph-cli)
2. Create a simple example subgraph. Some options are below:
Expand Down

0 comments on commit e87d78a

Please sign in to comment.