Skip to content

refactor: remove dead DIPs cancel and collect endpoints#1036

Open
MoonBoi9001 wants to merge 2 commits into
mb9/dips-switch-to-offer-authorizationfrom
mb9/remove-legacy-cancel-grpc
Open

refactor: remove dead DIPs cancel and collect endpoints#1036
MoonBoi9001 wants to merge 2 commits into
mb9/dips-switch-to-offer-authorizationfrom
mb9/remove-legacy-cancel-grpc

Conversation

@MoonBoi9001
Copy link
Copy Markdown
Member

TL;DR

The DIPs gRPC surface had two endpoints that returned Unimplemented because cancellation and collection now happen on-chain. Delete them, the gateway proto that only carried collection, and the misleading signed_voucher field name. Pure dead-code cleanup with no behaviour change.

Motivation

The DIPs gRPC surface defines endpoints that dipper calls into the indexer with. Two of them — CancelAgreement and CollectPayment — held over from the off-chain voucher design before DIPs moved on-chain. With RCA in place, the RecurringCollector contract is the source of truth for cancellations and the SubgraphService contract handles collections directly, so both handlers were stubs that returned "not implemented" to every call.

Dipper treats those errors as transient and retries each one every twenty seconds in a loop that never converges, polluting logs and creating ongoing maintenance footprint. While the proto compatibility break is already happening, this also renames signed_voucher to signed_rca on the proposal request: the bytes have been an ABI-encoded SignedRCA for a while and only the field label still called it a voucher.

Summary

  • Delete CancelAgreement RPC and its messages from indexer.proto; remove the matching server handler
  • Rename signed_voucher to signed_rca in SubmitAgreementProposalRequest
  • Delete gateway.proto entirely (CollectPayment was its only content) plus build step and bindings
  • Drop the test_cancel_unimplemented test

Stacked on PR #1009. cargo build, cargo clippy with CI flags, and cargo test all pass on indexer-dips and indexer-service-rs.

Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com

MoonBoi9001 and others added 2 commits May 12, 2026 18:22
CancelAgreement was a no-op on the indexer side: the handler returned
Unimplemented because cancellation now lives on-chain in the
RecurringCollector contract. Dipper retried the dead-letter every 20s
forever. Also rename signed_voucher to signed_rca to match the bytes.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
CollectPayment was the off-chain voucher-era collection RPC: indexers
submitted a signed work claim and dipper returned a TAP micropayment
receipt. On-chain RCA collects directly via SubgraphService.collect(),
so this RPC is dead. gateway.proto and its bindings can also go.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@MoonBoi9001 MoonBoi9001 force-pushed the mb9/remove-legacy-cancel-grpc branch from 3f684aa to cd456bf Compare May 12, 2026 10:22
@graphprotocol graphprotocol deleted a comment from github-actions Bot May 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant