Skip to main content
A Workflow run always executes one immutable published version. Draft edits and later publications cannot change the source, bindings, or schemas underneath an existing run.

Active and pinned versions

The active version is the default selected for a new run. A caller may request another published version, but the Workflow itself must still be active. At start, Noorle records the selected version and artifact on the run. That pin is used for recovery, inspection, and child execution throughout the run’s lifetime.

Start from the Portal

Open Workflows → (workflow) → Runs, select Run, choose a version, and provide JSON input. The Portal opens the new run after it is accepted.

Start through the Management API

Omit version to use the active version, or include it beside input:
The response contains the stable run_id. Retrying with the same Idempotency-Key returns the same logical start; changing the key requests a new run.

Read status

The status response includes the run and Workflow IDs, status, pinned workflow_version, timestamps, result or error when terminal, and pending-wait details when parked. When status is Waiting, inspect the wait kind rather than guessing from the status:

Inspect a run

The Portal run detail shows the pinned version, current wait, result or error, usage, and the pinned execution outline. It also exposes the action relevant to the current wait: approve or deny, deliver a named signal, read a callback path, or cancel.
Step-by-step journal and executed-path detail are not yet projected into the Portal for ledger-backed runs. An empty Journal / phases section does not mean the Program did no work; use the authoritative run status, wait, result, and usage fields.

Cancel a run

Cancellation is durable and monotonic. Reuse the same key when retrying the request. A canceled run does not resume if a late timer, approval, signal, or callback arrives.

Recovery behavior

The durable runtime executes a Program in bounded activations. On recovery it replays from the entrypoint against recorded effect and wait results. Completed recorded effects are supplied from their durable memos instead of being dispatched again, and an unresolved wait remains parked without keeping a guest process alive. This is why source and version pinning both matter: replay uses the same Program artifact and the same resolved outcomes, not the current draft.

Next