Skip to content

2.2.0

Latest

Choose a tag to compare

@rmcdaniel rmcdaniel released this 23 Sep 16:59
· 13 commits to main since this release
0f033b2

Embedded cooperative cancellation

  • Add WorkflowStub::requestCancellation() for a durable, idempotent cancellation request with a bounded cleanup deadline.
  • Deliver the request at supported workflow waits so finally can run durable cleanup activities. Use cancellationShield() to let cleanup already in progress finish.
  • Keep existing immediate cancel() and terminate() behavior unchanged. A cleanup deadline still falls back to terminal cancellation.
  • Add persisted request and delivery history, replay coverage, and concurrency qualification. Apply the new Workflow migration when upgrading an embedded Laravel installation.

This capability is embedded PHP only. The standalone Server and service-mode PHP, Python, and Rust SDKs do not yet expose this cooperative request protocol. Cleanup activities should be idempotent; forced termination and external side effects cannot be guaranteed to finish.