fix: workflow async concurrency (#13769)

* executeAsync

* || 1

* wip

* stepId

* stepId

* wip

* wip

* continue versioning management changes

* fix and improve concurrency

* update in memory engine

* remove duplicated test

* fix script

* Create weak-drinks-confess.md

* fixes

* fix

* fix

* continuation

* centralize merge checkepoint

* centralize merge checkpoint

* fix locking

* rm only

* Continue improvements and fixes

* fixes

* fixes

* hasAwaiting will be recomputed

* fix orchestrator engine

* bump version on async parallel steps only

* mark as delivered fix

* changeset

* check partitions

* avoid saving when having parent step

* cart test

---------

Co-authored-by: Carlos R. L. Rodrigues <rodrigolr@gmail.com>
Co-authored-by: Carlos R. L. Rodrigues <37986729+carlos-r-l-rodrigues@users.noreply.github.com>
Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
This commit is contained in:
Adrien de Peretti
2025-10-20 15:29:19 +02:00
committed by GitHub
parent d97a60d3c1
commit 516f5a3896
31 changed files with 2712 additions and 1406 deletions
@@ -16,7 +16,6 @@ import {
import {
createStep,
createWorkflow,
parallelize,
transform,
WorkflowData,
WorkflowResponse,
@@ -259,12 +258,11 @@ export const markOrderFulfillmentAsDeliveredWorkflow = createWorkflow(
prepareRegisterDeliveryData
)
const [deliveredFulfillment] = parallelize(
markFulfillmentAsDeliveredWorkflow.runAsStep({
input: { id: fulfillment.id },
}),
registerOrderDeliveryStep(deliveryData)
)
const deliveredFulfillment = markFulfillmentAsDeliveredWorkflow.runAsStep({
input: { id: fulfillment.id },
})
registerOrderDeliveryStep(deliveryData)
emitEventStep({
eventName: FulfillmentWorkflowEvents.DELIVERY_CREATED,