Skip to content

Report persisted workflow deadlines as typed terminal timeouts - #55

Merged
rmcdaniel merged 2 commits into
mainfrom
fix/terminal-workflow-timeout
Sep 6, 2026
Merged

Report persisted workflow deadlines as typed terminal timeouts#55
rmcdaniel merged 2 commits into
mainfrom
fix/terminal-workflow-timeout

Conversation

@rmcdaniel

@rmcdaniel rmcdaniel commented Sep 6, 2026

Copy link
Copy Markdown
Member

Fixes #54.

Maps canonical WorkflowTimedOut history to the exported WorkflowTimedOut SDK exception instead of returning None. Covers execution_timeout and run_timeout. The caller's built-in TimeoutError remains distinct; selected history and existing failure/cancellation/termination behavior are unchanged.

Validation on main fe4b059 plus the candidate:

  • Regression c49f664: 2 failures for missing terminal exceptions, 4 passes.
  • Candidate 3a9ad63: 1,310 non-integration tests pass; 15 runtime integration tests deselected.
  • Focused client/result suite: 195 pass.
  • Ruff passes; strict mypy passes for all 24 source files.

This is a result-mapping correction, not a replay or codec change. Related PHP correction: durable-workflow/sdk-php#56. Rust already covers this terminal outcome.

@rmcdaniel
rmcdaniel marked this pull request as ready for review September 6, 2026 07:54
@rmcdaniel
rmcdaniel merged commit fd9bdaf into main Sep 6, 2026
13 checks passed
@rmcdaniel
rmcdaniel deleted the fix/terminal-workflow-timeout branch September 6, 2026 07:58
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.

Raise a typed terminal timeout instead of returning None from workflow result

2 participants