Repository navigation
fix(submitqueue): repair terminal request status on retry - #1039
Merged
Merged
Conversation
This was referenced Nov 6, 2026
sbalabanov
commented
Nov 12, 2026
|
|
1 similar comment
|
|
sbalabanov
commented
Nov 12, 2026
sbalabanov
left a comment
Contributor
Author
There was a problem hiding this comment.
address comments, republish PR, make it ready for review
sbalabanov
marked this pull request as ready for review
November 12, 2026 23:58
mnoah1
approved these changes
Nov 13, 2026
sbalabanov
force-pushed
the
wt/sqc010
branch
from
November 13, 2026 21:14
9d5eb49 to
a4aee8f
Compare
sbalabanov
force-pushed
the
wt/sqc009
branch
from
November 13, 2026 21:16
c2484d1 to
d82799b
Compare
sbalabanov
pushed a commit
that referenced
this pull request
Nov 13, 2026
**TL;DR:** Report failed submissions as Error even when no Request was saved. ## Summary The start DLQ reports failures that occurred before a Request was saved by publishing an Error request log with request version 0. Saved Requests retain batch ownership, terminal winners and observed-version conditional writes. The DLQ publishes no normal-work command. Builds on #1039. ## Repro 1. Accept a valid submission, but let its initial Request save fail until the message reaches `start_dlq`. 2. Process the dead letter while the Request is absent. 3. An Error request log with version 0 reports the failed submission. ## Test Plan - Existing DLQ tests cover version-zero failure logs for missing Requests, repeated delivery and publication failures, identity validation, and saved-row ownership, terminal and conditional-write behavior. - The messagequeue, primary Start, orchestrator and DLQ unit-test targets passed uncached. `make lint`, `make check-gazelle` and `make check-tidy` passed. ## Revert Plan Revert this PR; existing Request data and request-log history remain intact. ## Issue Links None — repository audit remediation without an external tracker ticket.
sbalabanov
force-pushed
the
wt/sqc009
branch
from
November 14, 2026 01:11
d82799b to
961c29a
Compare
sbalabanov
pushed a commit
that referenced
this pull request
Nov 14, 2026
**TL;DR:** Report failed submissions as Error even when no Request was saved. ## Summary The start DLQ reports failures that occurred before a Request was saved by publishing an Error request log with request version 0. Saved Requests retain batch ownership, terminal winners and observed-version conditional writes. The DLQ publishes no normal-work command. Builds on #1039. ## Repro 1. Accept a valid submission, but let its initial Request save fail until the message reaches `start_dlq`. 2. Process the dead letter while the Request is absent. 3. An Error request log with version 0 reports the failed submission. ## Test Plan - Existing DLQ tests cover version-zero failure logs for missing Requests, repeated delivery and publication failures, identity validation, saved-row ownership, terminal and conditional-write behavior, and error counting on every failed delivery. - The messagequeue, primary Start, orchestrator and DLQ unit-test targets passed uncached. `make lint`, `make check-gazelle` and `make check-tidy` passed. ## Revert Plan Revert this PR; existing Request data and request-log history remain intact. ## Issue Links None — repository audit remediation without an external tracker ticket.
sbalabanov
force-pushed
the
wt/sqc009
branch
from
November 14, 2026 01:54
73e67b9 to
81cd141
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
TL;DR: Rejected or cancelled requests reach their final displayed status even when publishing the terminal log initially fails.
Summary
A rejected or cancelled request can be finished internally but still look unfinished if its final status update fails to send. A retry now resends the final status without repeating validation, cancellation, or a state change. Repairs identify the consistency resend and warn that original details may be unavailable; the first attempt can still include its available reason.
Repro
Test Plan
Focused request/controller unit targets and affected library builds passed locally; formatting, lint, Gazelle, and module checks passed.
Rollout
Replace old consumers so matching terminal retries reach status repair.
Revert Plan
Revert this PR to restore the earlier guard behavior; terminal retries may again leave the displayed status unfinished.
Issue Links
None; repository audit work, no external ticket.