Skip to content

fix(storage): send webhook HTTP failures to the recovery queue - #204

Merged
howethomas merged 1 commit into
mainfrom
fix/con-714-webhook
Sep 20, 2026
Merged

howethomas merged 1 commit into
mainfrom
fix/con-714-webhook

Conversation

@howethomas

@howethomas howethomas commented Sep 20, 2026 •

Copy link
Copy Markdown
Contributor

The generic storage.webhook backend logs HTTP 4xx/5xx responses and returns success, so those failures bypass the storage recovery queue introduced by #197/#202. Raise HTTP errors after recording the response metric, and bound each request with a configurable timeout (default 30 seconds).

Failed writes now reach the existing per-backend DLQ without repeating processing links. Arbitrary POST receivers are not automatically retried because their idempotency contracts are unknown. The recovery runbook explains that replay of multiple webhook URLs can repeat earlier successful deliveries.

Validation: five new regressions failed before the fix and now pass, covering 401/500/503 through the actual conserver DLQ handler and default/custom timeout. All 29 focused storage/recovery tests pass. Independent review found no required blockers. Broader common/conserver suite passed: 283 tests, 2 skipped, using isolated RedisJSON (one existing audioop deprecation warning).

Tracks the remaining webhook-backend coverage gap in CON-714. The shared recovery infrastructure is already deployed, but this backend fix still needs release and deployment.

@howethomas
howethomas merged commit 8117a97 into main Sep 20, 2026
1 check passed
@howethomas
howethomas deleted the fix/con-714-webhook branch September 20, 2026 22:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant