Skip to content

[Backend] Two webhook retry implementations diverge and one is wired up, the other is dead #8

Description

@grantfox-oss

Telegram (ask questions / claim the issue here first): https://t.me/+DOylgFv1jyJlNzM0

Why this matters

src/services/webhookRetryScheduler.ts (started in index.ts) runs every 60s with a [60,300,1800] backoff and reads ws.max_attempts, while src/services/webhookRetryProcessor.ts (never started) runs every 10s; webhookService itself uses MAX_RETRY_ATTEMPTS=4 with 5/15/45 min delays. These three sources of truth for retry behavior conflict.

Acceptance criteria

  • Pick one retry implementation, delete the other, and wire the chosen one into index.ts
  • Make backoff and max attempts come from a single shared config used by webhookService
  • Verify retry rows reference columns that actually exist in the current schema
  • Add a test asserting the surviving processor respects the configured backoff and max attempts

Files to touch

  • src/services/webhookRetryScheduler.ts
  • src/services/webhookRetryProcessor.ts
  • src/services/webhookService.ts
  • src/index.ts

Out of scope

  • Adding a dead-letter UI
  • Per-subscription custom backoff

Metadata

Metadata

Assignees

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial CampaignCampaign: Official CampaignbugSomething isn't workingenhancementNew feature or requesthardAdvanced / high-difficulty issue

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions