Skip to content

PersistentAI API Documentation / @persistentai/fireflow-types / PreExecuteResult

Interface: PreExecuteResult

Defined in: packages/fireflow-types/src/node/types.ts:187

Result from preExecute() hook for two-phase DBOS execution.

The preExecute hook enables parallel awaiting of DBOS operations:

  • Phase 2a: Sequential registration - preExecute() called in sorted node order
  • Phase 2b: Parallel awaiting - execute() awaits work handles concurrently

See

docs/design/022-unified-execution-model.md

Properties

resolvedPorts?

optional resolvedPorts: string[]

Defined in: packages/fireflow-types/src/node/types.ts:195

Ports that are already resolved after preExecute. These ports can propagate to downstream nodes before execute() completes.

Example: ExecuteFlowNode resolves 'childExecutionId' immediately after starting the subflow, before waiting for completion.


workHandle?

optional workHandle: unknown

Defined in: packages/fireflow-types/src/node/types.ts:203

Opaque handle returned by async operation (e.g., DBOS workflow handle). Stored in ExecutionContext and retrieved in execute() phase.

Example: dbos.startSubflow() returns a handle that execute() awaits.

Licensed under BUSL-1.1