Skip to content

Make webhook dead-letter transitions atomic with delivery attempts #1285

Description

@Jagadeeshftw

Area: Webhooks / data integrity

Problem

Webhook store, retry, and DLQ paths update delivery status and attempts across failure boundaries.

Design decision required

Define the terminal state transition and whether an attempt and DLQ insertion share one transaction.

Deliverable

Inject DB/network failures at each boundary and assert no delivery is both active and dead-lettered.

Acceptance criteria

  • The selected behavior is implemented and covered by focused regression tests.
  • Failure, boundary, retry, and authorization behavior is explicit where applicable.
  • Existing behavior outside this scope remains unchanged.
  • CI output and any performance/resource impact are reported in the PR.

Out of scope

  • Typo-only, documentation-only, unrelated refactors, and dependency churn.
  • Closing, weakening, or skipping tests to make the change pass.

Verification

pnpm vitest run tests/webhooks/store.test.ts tests/dlq.test.ts

PR requirements

  • Keep the PR focused, explain the before/after behavior, and reference this issue.
  • Include the requested regression evidence and relevant CI results.
  • Open the PR within 48 hours of assignment or leave a scope question on the issue.
  • Contributor discussion: https://t.me/+u5qmu35nZ7I0OTU1

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Stellar WaveIssues in the Stellar wave program

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions