Workflow 2.2.15 avoids rewriting unchanged timeline JSON payloads during projection. MySQL's JSON key normalization previously made equivalent payloads appear dirty, causing repeated SQL updates across long workflow histories. The regression verifies that an equivalent payload causes no update and a genuinely changed payload still persists.
The fix and candidate-source evidence passed the full Workflow test matrix. An isolated 4,000-signal Server workload with eight activities, eight timers and continue-as-new verified the exact result and ordered history. Its rollback-only 100-entry diagnostic dropped from 100 redundant updates to zero. Timing results from that workload are a single paired observation and are not a published capacity rating.
Published-package verification passed. Packagist resolved 2.2.15, the published platform contract matched, and all supported Laravel 9 through 13 upgrade jobs passed. The immutable tag points to source commit ff73cea8c93f72f2d67b7473e17ce028762baf3a.
This release does not update the separately pinned Workflow dependency in the Server image. Server #237 tracks the wider long-history qualification and image follow-through.