Category: Backend
Complexity: 200 points
Labels: backend, wave-200
Context
Indexer resumes from meta last_ledger; replay-events.ts exists for audit.
Problem
Gaps after prolonged downtime need controlled backfill without duplicating or skipping ledgers.
Goal
Implement/harden backfill mode with start/end ledger, checkpointing, and rate limits compatible with RPC.
Scope
Includes: replay/backfill script UX + tests.
Does NOT include: archive node operations.
Implementation Guidelines
- Files:
replay-events.ts, indexer.ts shared fetch helpers, query-events.ts.
Acceptance Criteria
Validation
Backfill a small ledger range twice; row counts stable.
PR Expectations
The PR should include:
Category: Backend
Complexity: 200 points
Labels: backend, wave-200
Context
Indexer resumes from meta last_ledger;
replay-events.tsexists for audit.Problem
Gaps after prolonged downtime need controlled backfill without duplicating or skipping ledgers.
Goal
Implement/harden backfill mode with start/end ledger, checkpointing, and rate limits compatible with RPC.
Scope
Includes: replay/backfill script UX + tests.
Does NOT include: archive node operations.
Implementation Guidelines
replay-events.ts,indexer.tsshared fetch helpers,query-events.ts.Acceptance Criteria
Validation
Backfill a small ledger range twice; row counts stable.
PR Expectations
The PR should include: