WorkflowRegistry

Interface: WorkflowRegistry<T>

Defined in: packages/workflow-core/src/registry/select-version.ts:64

Lightweight registry around selectWorkflowVersion. Same resolution rules; same routing semantics.

plaintext
const registry = createWorkflowRegistry({ default: v2 })
registry.add(v1)
registry.add(v2)
const wf = await registry.forRun(runId, store)
runWorkflow({ workflow: wf, runId, ... })
const registry = createWorkflowRegistry({ default: v2 })
registry.add(v1)
registry.add(v2)
const wf = await registry.forRun(runId, store)
runWorkflow({ workflow: wf, runId, ... })

Type Parameters

T

T extends AnyWorkflowDefinition

Properties

add()

ts
add: (workflow) => void;
add: (workflow) => void;

Defined in: packages/workflow-core/src/registry/select-version.ts:67

Register a workflow definition. Duplicate (id, version) pairs are rejected.

Parameters

workflow

T

Returns

void


all()

ts
all: () => readonly T[];
all: () => readonly T[];

Defined in: packages/workflow-core/src/registry/select-version.ts:74

All registered versions.

Returns

readonly T[]


forRun()

ts
forRun: (runId, runStore) => Promise<T | undefined>;
forRun: (runId, runStore) => Promise<T | undefined>;

Defined in: packages/workflow-core/src/registry/select-version.ts:70

Pick the workflow version for a persisted run. Returns the registry's default if no exact match is found.

Parameters

runId

string

runStore

RunStore

Returns

Promise<T | undefined>


get()

ts
get: (id, version?) => T | undefined;
get: (id, version?) => T | undefined;

Defined in: packages/workflow-core/src/registry/select-version.ts:72

Get a specific version by (id, version) pair.

Parameters

id

string

version?

string

Returns

T | undefined