github durable-workflow/workflow 2.5.7

3 hours ago

Reuse a workflow's first patch or version decision for repeated calls without recording duplicate markers. Continue validating each call's supported range.

Cold replay preserves duplicate markers retained by older releases, including their original command positions and recorded clock values. Executor, query reconstruction and fiber replay share this behavior.

Verified through the full database and Laravel matrices, coverage and 53 replay corpus fixtures, including fail-before/pass-after compatibility cases. All 17 published-package checks pass. A fresh Composer installation resumes a real old 2.5.6 run in a separate cold process, preserving its complete history prefix, both recorded clocks, two legacy markers, original activity sequence and one completion. A fresh 2.5.7 run records one marker across repeated calls.

Upgrading embedded applications

Upgrade every workflow executor, query replayer and fiber host that can read the same runs before resuming processing. Keep older builds isolated from new histories. A 2.5.6 worker cannot replay a fresh 2.5.7 history containing repeated calls to one patch ID because it expects an additional marker. It reports history_shape_mismatch. Do not downgrade readers of those histories. Existing duplicate-marker histories remain readable in 2.5.7.

The published Server 2.5.16 image still embeds Workflow 2.5.6. Updating this Composer package does not update that image.

Related: #744, #745 and #746.

Don't miss a new workflow release

NewReleases is sending notifications on new releases.