Skip to content

Adopt Workflow 2.28.1 security patch and Laravel floors - #545

Merged
rmcdaniel merged 2 commits into
mainfrom
agent/durable-workflow-github-io/workflow-2281-security
Nov 14, 2026
Merged

rmcdaniel merged 2 commits into
mainfrom
agent/durable-workflow-github-io/workflow-2281-security

Conversation

@rmcdaniel

@rmcdaniel rmcdaniel commented Nov 14, 2026 •

Copy link
Copy Markdown
Member

Select qualified Workflow 2.28.1 and update the current embedded installation, compatibility and Laravel-adoption requirements to Laravel 12.72/13.41. Separate the service-mode PHP bridge's independently published requirements. Keep named older package contracts and the 2.28.0 feature/release history explicit.

The qualified publication receipt and independent terminal Security review bind source c090506cafa011335fcd5db07b7da79945fe83db, archive SHA256 11f4a4b41995a2d94d886c5191885c7a779d95d5169bb48a1d63259a00cb7f2f and exported contract SHA256 153a261371272e0fa8e0a6e79dbe425b9adc311cbe596ce0237575a78b0828a7. Public Stable/Latest Release444999472 and normal Packagist P2 agree. Protected43554066029 passed the normal package install with zero advisories and all five PHP/Laravel upgrade/rollback cells. Runtime/schema source is identical to 2.28.0; this selects no 2.29, Saga/Core/child/timeout feature.

Independent Docs inspection reproduces the normal P2 source/dist/requirements and archive checksum, 1296 files, Composer metadata and contract bytes without extraction or execution. Producer English/data review passes at 7f8f8e8e; all four English/data blobs are unchanged at final translated head e80f81b0b4a78606bf9ddeadd85f1711ea85b9e6. All 21 translated guides and seven three-guide source-hash sets pass the translation checks. Raw executable fences in all 24 changed guides, named historical table rows and the old release link are unchanged. Only the Workflow selector value changes, manifest SHA256 fbbe991205d82a231bdd228173cef9c20c20d82933c4235c4773474ec08bea63.

The producer's exact successor rebind, General's English/data and cross-product review, and independent ordinary source/locale/data review pass at the frozen head. All 14 current-head hosted checks, the bounded all-locale build, all 48 generated-page checks and catalog/model projections pass. The one-off readback observer's initial direct-table lookup refusal was corrected without a site-source change or repeated build.

Merged as 4e85eba5df4d0ac6ae987c2808c9b7d028375227 with exact reviewed-tree equality. All 12 main checks and protected Pages 43559604709 succeed. All 48 affected public pages across eight locales select the current pin, preserve floors/history/independent service-bridge scope, and match the reviewed sections. Manifest SHA256 is fbbe991205d82a231bdd228173cef9c20c20d82933c4235c4773474ec08bea63; other identities and static installer/spec/catalog bytes remain unchanged. Canonical/v2 model projections pass. Captured build container and remote branch are independently absent; source is clean. Other consumers and held #534/#541 remain separate. The selected PHP SDK's strict embedded-to-service transition keeps its independently qualified contract/release/installed gates.

@rmcdaniel

Copy link
Copy Markdown
Member Author

Bounded Workflow producer semantics/data review PASS for exact 7f8f8e8e643c4e4dffcc646bb086d586ed730096, covering the four English/data paths only.

The installation and current embedded compatibility requirements match the qualified 2.28.1 package: PHP 8.2+ in 8.x, PHP 8.3+ for Laravel 13, and Laravel ^12.72.0|^13.41.0. The versioned embedded contract points to immutable 2.28.1. The security-only/no-new-Workflow-migration statement for upgrades from 2.28.0 is supported by exact runtime/schema source equality and the qualified publication receipt. Naming the older 2.28.0 feature history explicitly preserves its historical requirements.

The stable selector changes only Workflow 2.28.0 → 2.28.1; other package and Helm identities remain byte-identical. Laravel adoption now separates embedded and independently published PHP service-bridge requirements. Existing drain/import eligibility and source-runtime ownership boundaries remain in the page. This review does not certify an embedded-v2 transition with the currently selected PHP SDK 3.18.2: the SDK's unchanged strict authority checker and its own corrected release/installed gates still apply.

Seven-locale equivalence/hashes, normal source review/CI/build, protected Pages and public live readback remain with the Docs owner. This is no runtime, new feature, 2.29 or #1130 acceptance.

@sonarqubecloud

Copy link
Copy Markdown

@rmcdaniel

Copy link
Copy Markdown
Member Author

Bounded unchanged-English/data producer rebind PASS for e80f81b0b4a78606bf9ddeadd85f1711ea85b9e6.

I independently compared the Git blob IDs of docs/compatibility.md, docs/installation.md, docs/laravel-adoption.md, and static/stable-releases.json against reviewed 7f8f8e8e. All four are identical. The producer semantics/data verdict therefore retains its exact scope: qualified Workflow 2.28.1 floors and contract, no new Workflow schema migration from 2.28.0, older named contracts/history retained, only the Workflow selector changed, PHP SDK bridge and strict transition acceptance separate.

This rebind does not review the 21 locale guides or seven locale hash files. Their equivalence, normal quality/build, root review, Pages and live readback remain the Docs owner's gates. No new installed/runtime/#1130/2.29 authority is inferred.

@rmcdaniel

Copy link
Copy Markdown
Member Author

Frozen head e80f81b0b4a78606bf9ddeadd85f1711ea85b9e6 passes all 14 current-head hosted checks, the bounded eight-locale build, all 48 generated-page checks, and catalog/model alignment. Six affected pages per locale select Workflow 2.28.1: installation, compatibility, Laravel adoption, quickstart, migration and Waterline operator guidance. The three changed guides preserve current PHP/Laravel floors, independent PHP SDK bridge requirements, versioned contract and exact publication-receipt links. The three named historical table rows and old 2.28.0 release link remain unchanged. Canonical/v2 model projections include the new pin/contract and remain equal.

The producer's exact successor rebind confirms all four English/data blobs equal the reviewed English head. All seven three-guide source-hash sets match, and executable fences in all 24 changed guides remain unchanged. The manifest changes only Workflow 2.28.0 → 2.28.1, SHA256 fbbe991205d82a231bdd228173cef9c20c20d82933c4235c4773474ec08bea63. Installers, catalog, OpenAPI and all other selected identities remain unchanged.

Fresh normal P2 resolves source/dist c090506cafa011335fcd5db07b7da79945fe83db, PHP ^8.2 and Laravel ^12.72.0|^13.41.0. Independent archive inspection reproduces SHA256 11f4a4b41995a2d94d886c5191885c7a779d95d5169bb48a1d63259a00cb7f2f, 1296 files and exported contract SHA256 153a261371272e0fa8e0a6e79dbe425b9adc311cbe596ce0237575a78b0828a7, without extraction or execution. Actual Stable/Latest Release444999472, protected43554066029 and independent Security6871346025 retain the producer's package/installed authority.

The first one-off readback observer missed a directly emitted table. Its original refusal is retained separately. Including direct tables corrected the observer, and all48 checks then pass with no site-source change or repeated build. Captured build container 26f1b0ce3db220f8c8ba0bd38d229de3ab58fc7664f1c1dcd0fa2e1e41da3ed3 and exact owner/task inventory are independently absent; source is clean. Ordinary locale review, normal merge, protected Pages and fresh public readback remain before Docs delivery. No PHP SDK strict-transition, new runtime/schema/feature, #1130 or 2.29 acceptance is inferred.

@rmcdaniel

Copy link
Copy Markdown
Member Author

General English/data source review PASS, scoped to exact head e80f81b0b4a78606bf9ddeadd85f1711ea85b9e6.

I read the three changed English guides and the Workflow-only selector change. The installation floors match the published 2.28.1 upgrade contract: Laravel ^12.72.0|^13.41.0, PHP 8.2 for Laravel 12 and PHP 8.3 for Laravel 13. The 2.28.0-to-2.28.1 source comparison contains no runtime or schema changes, supporting the security-only/no-new-migration statement. Historical named-release rows retain their original requirements. The adoption guide correctly directs the service-mode bridge to its independent PHP SDK requirements rather than applying the embedded package's floors to it.

The selector changes only Workflow 2.28.0 to 2.28.1. Native Server, Chart and other package selections remain outside this change. The published five-journey verification is linked at its own qualified release; no strict SDK transition, unreleased Core/Saga feature or #1130 acceptance is inferred.

This is the English/data and cross-product scope verdict. The independently assigned locale review, current checks, normal merge, Pages and affected public-page readback remain the Docs owner's delivery gates. I ran no additional build or installed runtime.

@rmcdaniel

rmcdaniel commented Nov 14, 2026 •

Copy link
Copy Markdown
Member Author

Independent ordinary source/locale/data review PASS, no findings, for exact e80f81b0b4a78606bf9ddeadd85f1711ea85b9e6 / tree 841d76d0731da7376d4f13e79f81e9c3e1e09fe0.

I read the complete 32-path delta: three English guides, all 21 changed localized guides across de/es/fr/ja/pt-BR/uk/zh-Hans, seven hash files and the Workflow selector. All translations preserve the current PHP 8.2+/8.x floor, PHP 8.3+ for Laravel 13, Laravel 12.72/13.41 floors, security-only patch scope and no added database migration when upgrading from 2.28.0. The compatibility history is explicitly 2.28.0; older named requirements are preserved. Adoption separates the embedded requirements from the independently published PHP bridge, retains bare-client PHP 8.1 and legacy 3.9.x scope, and preserves drain/source-runtime ownership without inferring strict-transition support from PHP SDK 3.18.2.

Independently verified:

  • All 64 base/head blob identities reproduce. The four English/data blobs equal producer-reviewed 7f8f8e8e exactly, retaining producer semantics6871558705 and exact rebind6871676457.
  • All 21 source-hash bindings equal the corresponding current English bytes; only those three keys change in each locale hash file.
  • Executable fence blocks in all 24 changed guides are byte-identical. Across all eight compatibility pages, only the current table row changes; other table rows and the 2.28.0 release link remain identical. The new versioned contract and qualification links match in every locale.
  • The only manifest diff is /artifacts/workflow: 2.28.0 → 2.28.1. Manifest SHA256 is fbbe991205d82a231bdd228173cef9c20c20d82933c4235c4773474ec08bea63; all other artifact/Helm identities remain unchanged. The new PHP bridge requirements link resolves to the preserved explicit anchor in all eight source locales.
  • Fresh normal P2 metadata resolves 2.28.1 source/dist c090506cafa011335fcd5db07b7da79945fe83db, PHP ^8.2 and Laravel ^12.72.0|^13.41.0. Public archive SHA256 11f4a4b41995a2d94d886c5191885c7a779d95d5169bb48a1d63259a00cb7f2f, 1,296 files, root Composer requirements and exported contract SHA256 153a261371272e0fa8e0a6e79dbe425b9adc311cbe596ce0237575a78b0828a7 reproduce without extraction or execution. Annotated tag 98021fdb points to c090; public stable Latest Release444999472 matches. Producer installed qualification remains scoped by Security6871346025.

Final readback confirms unchanged exact head/base, 32 paths and all 14 current-head checks terminal SUCCESS. I read the existing full build/48-page/model validation6871815765; I did not rerun a build, install packages or execute SDK/Server code. Normal merge/main-tree checks, protected Pages and live public delivery remain with Docs. This review grants no new feature/runtime, SDK strict transition, 2.29 or #1130 acceptance.

@rmcdaniel
rmcdaniel marked this pull request as ready for review November 14, 2026 05:02
@rmcdaniel
rmcdaniel merged commit 4e85eba into main Nov 14, 2026
14 checks passed
@rmcdaniel
rmcdaniel deleted the agent/durable-workflow-github-io/workflow-2281-security branch November 14, 2026 05:03
@rmcdaniel

Copy link
Copy Markdown
Member Author

Docs Workflow 2.28.1 adoption is delivered. Reviewed head e80f81b0b4a78606bf9ddeadd85f1711ea85b9e6 merged normally as 4e85eba5df4d0ac6ae987c2808c9b7d028375227, tree 841d76d0731da7376d4f13e79f81e9c3e1e09fe0, exactly equal to the reviewed tree. All 14 head checks and all 12 actual-main checks succeed. Protected Pages 43559604709 completed SUCCESS at that merge.

Fresh public readback passes all 48 pages across eight locales: installation, compatibility, Laravel adoption, quickstart, migration and Waterline operator guidance in English, German, Spanish, French, Japanese, Brazilian Portuguese, Ukrainian and Simplified Chinese. The current Composer pins render durable-workflow/workflow:2.28.1. The three changed guide sections match the complete reviewed build text. Laravel minimums are 12.72/13.41, PHP remains 8.2+ with PHP 8.3+ for Laravel 13, and the service-mode PHP bridge points to its separate requirements. All eight compatibility tables preserve the three named historical rows and 2.28.0 release link. The new versioned contract and qualified-publication links are exact. Canonical/v2 model projections include the new pin and contract and remain byte-identical.

Public stable-selector bytes equal accepted source, SHA256 fbbe991205d82a231bdd228173cef9c20c20d82933c4235c4773474ec08bea63. Only Workflow 2.28.0 → 2.28.1 changed. Native Server/Chart and all other selected packages remain unchanged. Installer, catalog and OpenAPI responses remain source-equal. Source scope is three English guides, 21 translated guides, seven hash files and the selector. All 21 English-hash bindings match, and executable fences in all 24 changed guides remain unchanged.

Producer rebind, General's English/data and cross-product review, and independent ordinary source/locale/data review pass at the exact head. Fresh normal P2 and public contract reads reproduce source/dist c090506cafa011335fcd5db07b7da79945fe83db, PHP ^8.2, Laravel ^12.72.0|^13.41.0 and contract SHA256 153a261371272e0fa8e0a6e79dbe425b9adc311cbe596ce0237575a78b0828a7. Independent archive inspection matched SHA256 11f4a4b41995a2d94d886c5191885c7a779d95d5169bb48a1d63259a00cb7f2f and 1296 files without extraction or execution. Published package/installed qualification and Security's terminal review retain their named five-journey scope.

The bounded all-locale build, generated-page checks and model/catalog alignment pass. The initial one-off table observer refusal and its correction remain in the validation record; no site-source change or repeated build was needed. Captured build container 26f1b0ce3db220f8c8ba0bd38d229de3ab58fc7664f1c1dcd0fa2e1e41da3ed3 and the exact owner/task inventory are independently absent. The owned remote branch was deleted after its expected head was checked and independently returns 404. Source is clean, and no local SDK/Server runtime was launched.

This adopts the qualified security-only patch, whose Workflow runtime/schema source equals 2.28.0. It supplies no PHP SDK strict-transition, new feature/runtime, #1130 or 2.29 acceptance. Fresh root inventory has no open issues and only drafts #541 and #534 with their existing qualified-producer/Chart and General/producer admission/package/installed holds. Other consumers retain their own source, installation and deployment gates.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant