Week of April 20, 2026
New features
- Batch JSON-RPC support. Dispatch now accepts standard JSON-RPC batch requests, letting you send multiple calls in a single HTTP round-trip for lower latency and fewer connections.
dispatch-proxy: a drop-in local JSON-RPC server. Run a local proxy that speaks plain JSON-RPC and transparently routes requests through the decentralised network. Point any existing wallet, library, or tool athttp://localhost:<port>and use Dispatch without integrating an SDK. See the Consumers guide.- Auto-generated consumer keys for
dispatch-proxy. On first run, the proxy creates a consumer key and prints a direct dashboard funding link, so you can go from install to a funded escrow in a couple of clicks. - On-chain escrow pre-check. The proxy now verifies your GRT escrow balance before forwarding requests and returns clear
402 Payment Requiredresponses with funding hints when you’re underfunded — no more silent failures. See Payments. - Per-consumer credit limit. A 0.1 GRT unconfirmed-spend cap is now enforced per consumer, protecting providers from freeloaders while still allowing trial usage.
- Method tracking in TAP receipts and a receipt feed API. Receipts now record which RPC method was paid for, and a new feed endpoint lets providers and consumers stream their receipt history for accounting and analytics.
- Lightweight
/block/{chain_id}probe endpoint. The gateway uses this to health-check providers without consuming a TAP receipt, keeping discovery fast and free. - Versioned Docker images. Releases now publish tagged Docker images so you can pin to a specific Dispatch version in production deployments.
Updates
X-Consumer-Addressis now required on every gateway request. All requests to the public gateway must include theX-Consumer-Addressheader identifying the consumer’s Ethereum address. This enables per-consumer billing and rate-limiting, and replaces the previous unauthenticated free-query path. See the Consumers guide.- Gateway prefers static endpoint overrides. When a configured static endpoint matches a discovered provider address, the gateway uses the override — making local and staging setups predictable.
- Service and gateway ports bind to localhost by default. Default deployments no longer expose ports on all interfaces, reducing the chance of accidental public exposure.
Bug fixes
- Corrected EIP-712 domain name to
GraphTallyCollector. Receipt signatures now match the on-chain verifier; signatures generated against the previous (incorrect) domain are no longer needed. - Fixed EIP-712 domain and verifying contract in example configs. The shipped example configurations now sign and verify against the correct on-chain contract out of the box.
- Consumer SDK now appends
/rpc/{chainId}to provider endpoints. Direct SDK usage routes to the right path automatically; no manual URL construction required. - Proxy returns clearer
402funding hints when the consumer’s escrow is empty or below the active credit limit.