Zum Inhalt springen

Workflow Development Kit Updates & Release Notes

29 Einträge aus 1 Quelle. Zuletzt aktualisiert:

Folge Workflow Development Kit, um die Release Notes in deinen Feed zu holen.

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Workflow Development Kit von Vercel

workflow 5.0.0-beta.46: Schnelleres resumeHook(), VMs mit offenen Hooks bleiben

In workflow@5.0.0-beta.46 schreibt resumeHook() das hook_received-Event auf dem Lazy-Pfad nicht mehr selbst (ein Resume braucht nur noch einen Round Trip, und ein Resume auf einen bereits beendeten Run löst nun auf statt HookNotFoundError zu werfen), außerdem werden Workflow-VMs bei Attribut-Schreibvorgängen und sicheren Step-Grenzen mit offenen Hooks beibehalten.

@workflow/core@5.0.0-beta.46

  • #3794 d9e0777 @VaguelySerious - Keep the eager hook_received write for the internal resume that records a step-issued abort, so it stays committed before the step completes.
  • #3794 d9e0777 @VaguelySerious - resumeHook() no longer writes the hook_received event itself on the lazy path: the queue consumer creates it from the queue message, so a resume costs one round trip. A resume against an already-ended run now resolves instead of throwing HookNotFoundError.
  • #3609 82e2678 @NathanColosimo - Retain workflow VMs across workflow attribute writes.
  • #3604 556f3f0 @NathanColosimo - Retain workflow VMs across safe step boundaries that also contain open hooks, and bound guest-code serialization diagnostics to five samples plus an exact count. …

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Workflow Development Kit von Vercel

workflow 4.8.5: Abfangbare Serialisierungsfehler und Replay-Determinismus-Fix

In workflow@4.8.5 schlagen Fehler bei der Serialisierung von Step-Argumenten nun als abfangbarer Step-Fehler fehl (unbehandelt sofort als USER_ERROR), die Event-Log-Reihenfolge bei benachbarten Hook-Payloads bleibt erhalten, und eine Replay-Determinismus-Lücke, die CORRUPTED_EVENT_LOG auslösen konnte, wurde behoben.

@workflow/core@4.8.5

  • #3675 5556b4c @TooTallNate - Step-argument serialization failures now fail the step with a catchable error (via a step_failed event, like a step-body failure) instead of failing the run from outside the workflow, and when uncaught they fail the run immediately as a USER_ERROR rather than retrying until max queue deliveries.
  • #3552 cd9343b @AndrewBarba - Preserve event-log order when adjacent hook payloads resume independent workflow branches.
  • #3554 608769d @VaguelySerious - Fix a replay-determinism gap where branch wake order — and therefore step correlation ids — could depend on how much of the event log an invocation had loaded, corrupting runs under concurrent replays (CORRUPTED_EVENT_LOG). …

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Workflow Development Kit von Vercel

workflow 5.0.0-beta.44: Correlation-ID-Reihenfolge, waitForTerminalStatus

In workflow@5.0.0-beta.44 wird die Reihenfolge der Correlation-IDs an die Event-Log-Reihenfolge gebunden (abschaltbar mit WORKFLOW_LOG_ORDER_DRAWS=0), und die neue Methode world.runs.waitForTerminalStatus(...) wartet per Long-Polling auf einen Endstatus des Runs, den await run.returnValue intern nutzt, sofern die World sie unterstützt.

@workflow/core@5.0.0-beta.44

  • #3700 9b1b8c7 @VaguelySerious - Pin correlation-ID draw order to event-log order (Node.js VM engine), so two concurrent replays of the same run assign the same IDs even when one loaded a shorter event-log prefix. Set WORKFLOW_LOG_ORDER_DRAWS=0 to opt back into arrival-order delivery resolution.
  • #3570 9454d51 @pranaygp - Add world.runs.waitForTerminalStatus(runId, { timeoutMs, signal, resolveData }) method, which long-polls until the run reaches a terminal status. await run.returnValue now internally uses this, if the World supports it, instead of using a polling interval. …

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Workflow Development Kit von Vercel

workflow 4.8.4: node:http per WORKFLOW_NODE_HTTP, Hook-Resume-Fix

In workflow@4.8.4 lässt sich über WORKFLOW_NODE_HTTP die HTTP-Schicht von Vercel und Local World auf node:http und node:https umstellen, und in world-postgres wird ein Hook-Resume abgelehnt, das mit der Entsorgung des Hooks kollidiert, statt das Event-Log zu beschädigen.

@workflow/world@4.4.0

  • #3461 e331cd6 @VaguelySerious - Add WORKFLOW_NODE_HTTP to run the Vercel and Local World HTTP layers on Node's built-in node:http and node:https modules instead of their usual HTTP client library.

@workflow/world-local@4.3.0

  • #3461 e331cd6 @VaguelySerious - Add WORKFLOW_NODE_HTTP to run the Vercel and Local World HTTP layers on Node's built-in node:http and node:https modules instead of their usual HTTP client library.

@workflow/world-postgres@4.3.4

  • #3645 0f7f498 @VaguelySerious - Reject a hook resume that races the hook's disposal, instead of journaling it after hook_disposed and corrupting the owning run's event log.

@workflow/world-vercel@4.7.0 …

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Workflow Development Kit von Vercel

workflow 5.0.0-beta.43: world.events.createBatch und vorab beanspruchte Inline-Steps

In workflow@5.0.0-beta.43 gibt es die optionale World-API-Methode world.events.createBatch zum dauerhaften Schreiben geordneter Events in einem Schritt (abschaltbar mit WORKFLOW_BATCH_TRANSITIONS=0), Inline-Steps werden im Suspension-Batch vorab beansprucht, und ignorierte doppelte Events werden nur noch auf debug geloggt.

@workflow/core@5.0.0-beta.43

  • #3025 b0adb50 @pranaygp - Add world.events.createBatch World API method, which allows writing ordered events in one durable write, returning per-event outcomes. Optional. On by default if implemented by the World. Disable with WORKFLOW_BATCH_TRANSITIONS=0.
  • #3568 37e1d9e @pranaygp - Pre-claim inline steps inside the suspension batch, so a fan-out's inline step bodies start off the batch commit with no per-step claim request
  • #3497 1321570 @VaguelySerious - Log ignored duplicate events at debug instead of info/error, so a straggler no longer prints on every replay of the run. …

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Workflow Development Kit von Vercel

workflow 4.8.3: SvelteKit-Konfiguration über @sveltejs/load-config

In workflow@4.8.3 lädt @workflow/sveltekit die SvelteKit-Routenkonfiguration über @sveltejs/load-config, auch bei Projekten, die SvelteKit ausschließlich in der vite.config konfigurieren.

@workflow/sveltekit@4.0.18

  • #3474 598d712 @dummdidumm - Load SvelteKit route configuration through @sveltejs/load-config, including projects that configure SvelteKit exclusively in vite.config.

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Workflow Development Kit von Vercel

workflow 5.0.0-beta.42: Resilient Step Dispatch, Limit für Sparse-Arrays

In workflow@5.0.0-beta.42 werden neue Steps parallel zum step_created-Event in die Queue veröffentlicht (Resilient Step Dispatch, abschaltbar mit WORKFLOW_RESILIENT_STEP_DISPATCH=0), und kompakte Sparse-Array-Payloads mit logischer Länge über 100.000 werden beim Hydrieren abgelehnt.

@workflow/core@5.0.0-beta.42

  • #3365 7683130 @TooTallNate - Resilient step dispatch: newly created steps are published to the queue in parallel with their step_created event write, with the serialized input carried on the message (stepInput) so the consumer re-ensures the event if the direct write failed transiently — mirroring resilient start (runInput) and resilient hook resume (hookInput). Worlds that enforce the precondition guard keep the sequential create-then-publish dispatch (only sequencing gives the message a happens-after edge over the create's guard verdict); step-dispatch idempotency keys are now step-identity-scoped. Disable via WORKFLOW_RESILIENT_STEP_DISPATCH=0.
  • #3462 9add9d7 @NathanColosimo - Reject compact sparse-array payloads with logical lengths above 100,000 during hydration. …

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Workflow Development Kit von Vercel

workflow@4.8.2: Date-Subclassing und Event-Log-Reihenfolge korrigiert

In workflow@4.8.2 funktioniert das Subclassing von Date in Workflow-Funktionen (z. B. TZDate) wieder korrekt, Step-Ergebnisse, Waits und Hook-Payloads werden strikt in Event-Log-Reihenfolge ausgeliefert, und fälschlich gemeldete Replay-Divergenzen entfallen.

@workflow/core@4.8.2

  • #3372 e822a6a @ar-tama - Fix Date subclassing inside workflow functions. The deterministic Date override in the workflow VM now forwards new.target via Reflect.construct, so subclasses like TZDate from @date-fns/tz keep their identity, methods, and fields. Calling Date() without new now returns the (fixed) time string per spec, instead of a Date object.
  • #3139 6f301ba @pranaygp - Deliver step results, wait completions and hook payloads in strict event-log order relative to one another, preventing replay divergence (CORRUPTED_EVENT_LOG) when a step completion is adjacent in the log to a wait_completed or hook_received that a concurrent branch is awaiting.
  • #3439 86bc000 @VaguelySerious - Stop reporting replay divergence for an event the workflow is still on its way to consuming, by waiting for in-flight step and hook deliveries instead of a fixed delay

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Workflow Development Kit von Vercel

workflow@5.0.0-beta.41: Replay-Timeouts per Queue-Neuzustellung wiederholt

In workflow@5.0.0-beta.41 werden Replay-Timeouts über normale Queue-Neuzustellung wiederholt statt den Prozess zu beenden, teilweise geladene run_started-Event-Preloads werden ab ihrem Cursor fortgesetzt, und das Subclassing von Date in Workflow-Funktionen wurde korrigiert.

@workflow/core@5.0.0-beta.41

  • #3385 74dbf81 @NathanColosimo - Retry replay timeouts through normal queue redelivery instead of exiting the process, and keep Postgres jobs retryable through Core's terminal delivery limit.
  • #3124 65139ac @NathanColosimo - Continue partial run_started event preloads from their cursor instead of reloading the event log from the beginning.
  • #3372 1a64f68 @ar-tama - Fix Date subclassing inside workflow functions. The deterministic Date override in the workflow VM now forwards new.target via Reflect.construct, so subclasses like TZDate from @date-fns/tz keep their identity, methods, and fields. Calling Date() without new now returns the (fixed) time string per spec, instead of a Date object. …

Originalquelle(öffnet in neuem Tab)Problem melden