Skip to main content

FlowRunnerDeps

@forge/monorepo


@forge/monorepo / backend/src / FlowRunnerDeps

Type Alias: FlowRunnerDeps

FlowRunnerDeps = object

Defined in: backend/src/flows/runner.ts:77

Properties

clock?

readonly optional clock?: () => Date

Defined in: backend/src/flows/runner.ts:81

Returns

Date


definitions

readonly definitions: FlowDefinitionStore

Defined in: backend/src/flows/runner.ts:78


executions

readonly executions: FlowExecutionStore

Defined in: backend/src/flows/runner.ts:79


handler

readonly handler: FlowEffectHandler

Defined in: backend/src/flows/runner.ts:80


idFactory?

readonly optional idFactory?: () => string

Defined in: backend/src/flows/runner.ts:82

Returns

string


maxEffectsPerCall?

readonly optional maxEffectsPerCall?: number

Defined in: backend/src/flows/runner.ts:103

How many effects one call may perform before returning.

Not a duplicate of the flow's step budget — that is the flow's own ceiling and this is the worker's. A long flow should be able to hand its worker slot back and be picked up again rather than holding it for an hour, and without this the two concerns share one number.


runs?

readonly optional runs?: object

Defined in: backend/src/flows/runner.ts:91

How a child run's terminal state is read — #202.

Optional, and its absence is why resume can only poll when it is present: a deployment that runs agent steps inline never parks on a run and needs none of this. Supplied, it is what makes the wake-up correct rather than dependent on a notification arriving — a crash between the child completing and the parent being told loses the message, and nothing would ever look again.

findById()

findById(input): Promise<{ error?: { message: string; }; status: string; } | null>

Parameters
input
id

string

tenantId

ExecutionContext["tenantId"]

Returns

Promise<{ error?: { message: string; }; status: string; } | null>