Skip to content

fix: screen stopped work and expired deadlines on reconnect - #376

Merged
ovasylenko merged 1 commit into
mainfrom
fix/worker-reconnect-forward-guards
Oct 29, 2026
Merged

ovasylenko merged 1 commit into
mainfrom
fix/worker-reconnect-forward-guards

Conversation

@ovasylenko

Copy link
Copy Markdown
Contributor

Worker reconnect could resend a held task after its parent stopped, its physical source froze or retired, or its explicit deadline elapsed. Older blocked rows could also consume the delivery limit ahead of healthy work.

Screen those conditions before LIMIT in both PostgreSQL and SQLite reconnect queries. Preserve held rows, claim epochs and original issuance/outcome evidence. Unsealed abort restores eligible work; permanent retirement stays fenced. Use numeric epoch arithmetic on PostgreSQL so large valid task timeouts cannot overflow interval construction. NULL lease durations retain the separate server-default confirmation policy.

Validation:

  • Reproduced 28 failing regression legs on clean main before the fix.
  • Reproduced and fixed the PostgreSQL extreme-timeout overflow.
  • All 120 issuance and 213 source-cut tests passed with required PostgreSQL, across plain/encrypted SQLite/PostgreSQL.
  • Strict all-target storage Clippy and workspace formatting passed.

@ovasylenko
ovasylenko merged commit 8e23c25 into main Oct 29, 2026
36 of 38 checks passed
@ovasylenko
ovasylenko deleted the fix/worker-reconnect-forward-guards branch October 29, 2026 17:13
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