Skip to content

Latest commit

 

History

History
38 lines (26 loc) · 2.82 KB

File metadata and controls

38 lines (26 loc) · 2.82 KB

Graph Tally

Graph Tally (formerly TAP - Timeline Aggregation Protocol) is a trust-minimized payment system between Gateways and Indexers in The Graph network. It supports arbitrary data services built on Graph Horizon.

How it works

  1. Gateways send signed Receipts to Indexers alongside each query
  2. Indexers collect Receipts and periodically request aggregation
  3. Aggregator bundles Receipts into a signed Receipt Aggregate Voucher (RAV)
  4. Indexers redeem RAVs on-chain to claim payment from the Gateway's escrow

This reduces on-chain transactions from one-per-query to one-per-aggregation-period, drastically lowering costs while maintaining cryptographic guarantees via EIP-712 signatures.

A more detailed specification of the protocol can be found in the following GIPs:

  • GIP-0054 - Original TAP specification
  • GIP-0066 - Graph Horizon, introducing TAP v2 (renamed to Graph Tally)

Binaries

These services are run by Gateway operators. See each component's README for configuration and deployment details.

Binary Description Docker Image
graph_tally_aggregator Aggregates Receipts into signed RAVs GHCR
graph_tally_escrow_manager Manages escrow balances for Indexer payments GHCR

Libraries

Crate Version
graph_tally_core crates.io
graph_tally_receipt crates.io
graph_tally_graph crates.io
graph_tally_eip712_message crates.io

Contributing

Contributions are welcome! Please submit a pull request or open an issue to discuss potential changes. See the Contributing Guide for details.