Skip to content

fix: ignore a stored RCA signature instead of rejecting it#1241

Merged
MoonBoi9001 merged 1 commit into
mb9/fix-dips-allocation-reconciliationfrom
mb9/agent-ignore-stored-rca-signature
Jul 9, 2026
Merged

fix: ignore a stored RCA signature instead of rejecting it#1241
MoonBoi9001 merged 1 commit into
mb9/fix-dips-allocation-reconciliationfrom
mb9/agent-ignore-stored-rca-signature

Conversation

@MoonBoi9001

Copy link
Copy Markdown
Member

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 acceptIndexingAgreement call 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.

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
@github-project-automation github-project-automation Bot moved this to 🗃️ Inbox in Indexer Jun 26, 2026
@MoonBoi9001 MoonBoi9001 requested a review from tmigone June 26, 2026 11:32
@MoonBoi9001 MoonBoi9001 requested a review from Maikol July 6, 2026 20:56
@github-project-automation github-project-automation Bot moved this from 🗃️ Inbox to ✅ Approved in Indexer Jul 8, 2026
@MoonBoi9001 MoonBoi9001 merged commit f834fb4 into mb9/fix-dips-allocation-reconciliation Jul 9, 2026
12 of 14 checks passed
@MoonBoi9001 MoonBoi9001 deleted the mb9/agent-ignore-stored-rca-signature branch July 9, 2026 03:27
@github-project-automation github-project-automation Bot moved this from ✅ Approved to 🚗 Merged in Indexer Jul 9, 2026
MoonBoi9001 added a commit that referenced this pull request Jul 9, 2026
Reviewing indexer-agent logs during a Direct Indexer Payments (DIPS) run surfaced three independent bugs: the agent pauses a subgraph it is still being paid to index, plus two timing bugs — it sizes an allocation's lifetime from a value in seconds but reads it as epochs, so the work never winds down, and it reads the current epoch from a clock that can lag the chain, so fresh work is judged stale. This fixes all three. Stacks on the duplicate-log-key PR (#1239).

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. (#1241)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: 🚗 Merged

Development

Successfully merging this pull request may close these issues.

2 participants