Skip to content

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

Class: DeterministicExecutionEngine

Defined in: packages/fireflow-types/src/flow/deterministic-execution-engine.ts:63

DeterministicExecutionEngine - DBOS-aligned execution with pure cluster fusion

Key differences from ExecutionEngine:

  1. Superstep-based execution (no worker pool)
  2. Pure cluster detection and fusion
  3. DBOS nodes start in deterministic sorted order
  4. Designed for durable execution replay

See

docs/design/018-deterministic-parallel-execution.md

Constructors

Constructor

new DeterministicExecutionEngine(flow, context, options?, onBreakpointHit?): DeterministicExecutionEngine

Defined in: packages/fireflow-types/src/flow/deterministic-execution-engine.ts:149

Parameters

flow

Flow

context

ExecutionContext

options?

DeterministicExecutionOptions

onBreakpointHit?

(node) => void

Returns

DeterministicExecutionEngine

Methods

createEvent()

createEvent<T>(type, data): ExecutionEventImpl<T>

Defined in: packages/fireflow-types/src/flow/deterministic-execution-engine.ts:2303

Type Parameters

T

T extends ExecutionEventEnum

Parameters

type

T

data

ExecutionEventData[T]

Returns

ExecutionEventImpl<T>


execute()

execute(onComplete?): Promise<void>

Defined in: packages/fireflow-types/src/flow/deterministic-execution-engine.ts:560

Main entry point for execution.

Parameters

onComplete?

(context, eventQueue) => Promise<void>

Returns

Promise<void>


getDebugger()

getDebugger(): DebuggerController | null

Defined in: packages/fireflow-types/src/flow/deterministic-execution-engine.ts:2273

Returns

DebuggerController | null


getOptions()

getOptions(): DeterministicExecutionOptions | undefined

Defined in: packages/fireflow-types/src/flow/deterministic-execution-engine.ts:2277

Returns

DeterministicExecutionOptions | undefined


on()

on<T>(type, handler): () => void

Defined in: packages/fireflow-types/src/flow/deterministic-execution-engine.ts:2281

Type Parameters

T

T extends ExecutionEventEnum

Parameters

type

T

handler

(event) => void | Promise<void>

Returns

(): void

Returns

void


onAll()

onAll(handler): () => void

Defined in: packages/fireflow-types/src/flow/deterministic-execution-engine.ts:2295

Parameters

handler

(event) => void | Promise<void>

Returns

(): void

Returns

void


setEventCallback()

setEventCallback(callback): void

Defined in: packages/fireflow-types/src/flow/deterministic-execution-engine.ts:2299

Parameters

callback

(context) => Promise<void>

Returns

void


setOnEventPublished()

setOnEventPublished(hook): void

Defined in: packages/fireflow-types/src/flow/deterministic-execution-engine.ts:2606

Set a hook to be called when each event is published. Used for external event streaming (e.g., DBOS.writeStream).

Parameters

hook

(event) => Promise<void>

Returns

void

Licensed under BUSL-1.1