Skip to content

remora-monorepo


remora-monorepo / lib / ExecutionGraph

Interface: ExecutionGraph

Defined in: packages/core/src/compiler/types.ts:85

DAG representation of a compiled workflow. Produced by the compiler's graph construction pass when the workflow is structurally valid.

Properties

bodyOwnership

bodyOwnership: Map<string, string>

Defined in: packages/core/src/compiler/types.ts:99

Maps body step IDs to the ID of the for-each or switch-case that owns them.


loopVariablesInScope

loopVariablesInScope: Map<string, Set<string>>

Defined in: packages/core/src/compiler/types.ts:97

Maps each step ID to the set of loop variable names in scope at that step.


predecessors

predecessors: Map<string, Set<string>>

Defined in: packages/core/src/compiler/types.ts:91

Maps each step ID to the set of step IDs that transition to it.


reachableSteps

reachableSteps: Set<string>

Defined in: packages/core/src/compiler/types.ts:95

Set of step IDs reachable from initialStepId.


stepIndex

stepIndex: Map<string, { description: string; id: string; name: string; nextStepId?: string; params: { toolInput: {[key: string]: { type: "literal"; value: unknown; } | { expression: string; type: "jmespath"; } | { template: string; type: "template"; }; }; toolName: string; }; type: "tool-call"; } | { description: string; id: string; name: string; nextStepId?: string; params: { outputFormat: object; prompt: string; }; type: "llm-prompt"; } | { description: string; id: string; name: string; nextStepId?: string; params: { outputFormat: object; sourceData: { type: "literal"; value: unknown; } | { expression: string; type: "jmespath"; } | { template: string; type: "template"; }; }; type: "extract-data"; } | { description: string; id: string; name: string; nextStepId?: string; params: { cases: object[]; switchOn: { type: "literal"; value: unknown; } | { expression: string; type: "jmespath"; } | { template: string; type: "template"; }; }; type: "switch-case"; } | { description: string; id: string; name: string; nextStepId?: string; params: { itemName: string; loopBodyStepId: string; target: { type: "literal"; value: unknown; } | { expression: string; type: "jmespath"; } | { template: string; type: "template"; }; }; type: "for-each"; } | { description: string; id: string; name: string; nextStepId?: string; params: { durationMs: { type: "literal"; value: unknown; } | { expression: string; type: "jmespath"; } | { template: string; type: "template"; }; }; type: "sleep"; } | { description: string; id: string; name: string; nextStepId?: string; params: { backoffMultiplier?: { type: "literal"; value: unknown; } | { expression: string; type: "jmespath"; } | { template: string; type: "template"; }; condition: { type: "literal"; value: unknown; } | { expression: string; type: "jmespath"; } | { template: string; type: "template"; }; conditionStepId: string; intervalMs?: { type: "literal"; value: unknown; } | { expression: string; type: "jmespath"; } | { template: string; type: "template"; }; maxAttempts?: { type: "literal"; value: unknown; } | { expression: string; type: "jmespath"; } | { template: string; type: "template"; }; timeoutMs?: { type: "literal"; value: unknown; } | { expression: string; type: "jmespath"; } | { template: string; type: "template"; }; }; type: "wait-for-condition"; } | { description: string; id: string; name: string; nextStepId?: string; params: { instructions: string; maxSteps?: { type: "literal"; value: unknown; } | { expression: string; type: "jmespath"; } | { template: string; type: "template"; }; outputFormat: object; tools: string[]; }; type: "agent-loop"; } | { description: string; id: string; name: string; nextStepId?: string; type: "start"; } | { description: string; id: string; name: string; nextStepId?: string; params?: { output: { type: "literal"; value: unknown; } | { expression: string; type: "jmespath"; } | { template: string; type: "template"; }; }; type: "end"; }>

Defined in: packages/core/src/compiler/types.ts:87

Lookup from step ID to step definition.


successors

successors: Map<string, Set<string>>

Defined in: packages/core/src/compiler/types.ts:89

Maps each step ID to the set of step IDs it transitions to.


topologicalOrder

topologicalOrder: string[]

Defined in: packages/core/src/compiler/types.ts:93

Step IDs in topological order (respects data dependencies).