fix: ignore a stored RCA signature instead of rejecting it#1241
Open
MoonBoi9001 wants to merge 1 commit into
Open
fix: ignore a stored RCA signature instead of rejecting it#1241MoonBoi9001 wants to merge 1 commit into
MoonBoi9001 wants to merge 1 commit into
Conversation
The indexer-service now stores agreement proposals with their signer signature, but the agent treated any stored signature as a producer regression and rejected the proposal. Ignore the signature instead — acceptance is offer-based, so the agent has no use for it. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KJmMVG736T3xefovirWryK
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
TL;DR
The indexer-agent rejects any DIPS proposal whose stored payload carries a signer signature. The indexer-service now stores proposals with their signature (on
main-dips-rebased), so the agent would reject every proposal once that change is live. This makes the agent ignore the signature and process the proposal normally.Motivation
When dipper sends a Direct Indexer Payments proposal, the indexer-service validates the signer and writes the proposal to a table the agent reads. That service was recently changed to store the full signed proposal — keeping the signature as a record — instead of stripping it. The agent, though, still treats any stored signature as a "producer regression" and rejects the proposal outright, so with the service storing signatures the agent would reject everything it is handed. Acceptance is offer-based — the on-chain
acceptIndexingAgreementcall verifies the signer against the payer's offer, not this stored signature — so the agent has no need for it, and can simply ignore the signature and decode the proposal as before.