Skip to content

Add published DBOS cancellation and durable compensation comparison - #150

Merged
rmcdaniel merged 1 commit into
mainfrom
test/dbos-cancellation-comparison
Oct 5, 2026
Merged

rmcdaniel merged 1 commit into
mainfrom
test/dbos-cancellation-comparison

Conversation

@rmcdaniel

Copy link
Copy Markdown
Member

Summary

Adds a reproducible comparison using published DBOS 3.2.0 and a pinned Python image for shared #136.

Three repetitions of seven supported cases distinguish callback exit, stored cancellation status and durable cleanup. The fixture uses recursive cancellation, preemptible async steps and a separately queued compensation workflow with a stable ID. It includes worker SIGKILL, fresh-worker recovery and repeated cancellation.

Async work stops without application heartbeats. A blocking step performs its late effect but does not commit a completed step. Durable cleanup steps inside the cancelled workflow are refused. A separately queued compensation workflow survives worker loss and completes. The documentation explains the application pattern and each observation's scope.

Verification

The local composition passed 21 cases with 42 cancelled parent/child workflows. Recorded results also pass the added stale-step, late-effect and fresh-worker assertions. Hosted CI will rerun the complete fixture at this PR's source identity and retain ordinary files for 90 days.

The workflow grants read-only access, pins its actions, runs without host ports, sets resource limits and removes the fixture on success or failure.

Shared #136 remains open for Durable Workflow's implementation and exact published mixed-language cascade.

@rmcdaniel
rmcdaniel marked this pull request as ready for review October 5, 2026 22:19
@rmcdaniel
rmcdaniel merged commit 7cbbf9f into main Oct 5, 2026
4 checks passed
@rmcdaniel
rmcdaniel deleted the test/dbos-cancellation-comparison branch October 5, 2026 22:19
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.

2 participants