• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

graphprotocol / indexer-rs / 19874975568
64%

Build:
DEFAULT BRANCH: main
Ran 02 Dec 2025 10:21PM UTC
Jobs 1
Files 97
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

02 Dec 2025 10:02PM UTC coverage: 63.376% (+0.3%) from 63.03%
19874975568

push

github

web-flow
feat: add allocation reconciliation (#882)

* feat(tap-agent): add periodic allocation reconciliation

   Add a background task that periodically triggers allocation
   reconciliation to ensure recovery after subgraph connectivity issues.

   Previously, the allocation watcher was purely event-driven
   and only fired when the allocation list changed. If allocations were
   closed during a connectivity outage and the list became static afterward,
   no messages would fire and stale SenderAllocation actors would keep
   running, never triggering mark_rav_last().

   This change adds:
   - New config option
    (default: 5 min)
   - ReconcileAllocations message type for SenderAccount
   - Periodic task that sends ReconcileAllocations every
   interval
   - Handler that forces re-check of all allocations against
   the watcher

   This ensures closed allocations are detected and RAVs are
   properly marked
   as 'last' for redemption, even after connectivity issues.

* test(tap-agent): add tests and validation for allocation reconciliation

   - Add unit test for ReconcileAllocations message handling that verifies
     it triggers UpdateAllocationIds with current allocations from watcher
   - Add config validation for allocation_reconciliation_interval_secs:
     error if 0, warn if < 60s
   - Add test for periodic task lifecycle verifying task spawn/abort
   - Update create_sender_account() test helper to expose
     indexer_allocations_tx and configurable reconciliation interval
   - Add tokio test-util feature for time control in tests

* chore(tap-agent): add observability improvements for allocation reconciliation

   - Add ALLOCATION_RECONCILIATION_RUNS counter metric
   - Elevate reconciliation logs from debug to info
   - Enhance config documentation explaining the connectivity failure
   scenario

194 of 217 new or added lines in 3 files covered. (89.4%)

9540 of 15053 relevant lines covered (63.38%)

75.38 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
7
80.72
-0.94% crates/config/src/config.rs
16
83.67
1.14% crates/tap-agent/src/agent/sender_account.rs
Jobs
ID Job ID Ran Files Coverage
1 19874975568.1 02 Dec 2025 10:21PM UTC 97
63.38
GitHub Action Run
Source Files on build 19874975568
  • Tree
  • List 97
  • Changed 3
  • Source Changed 3
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #19874975568
  • f8f85220 on github
  • Prev Build on main (#19238892062)
  • Next Build on main (#19875961079)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc