Interface SimplePlan

Minimal plan structure produced by the current stub planner. Each step maps 1-to-1 to a GraphNode in the compiled IR.

interface SimplePlan {
    steps: {
        id: string;
        action: string;
        description: string;
        phase: "gather" | "process" | "validate" | "deliver";
        toolName?: string;
        maxIterations?: number;
    }[];
}

Properties

Properties

steps: {
    id: string;
    action: string;
    description: string;
    phase: "gather" | "process" | "validate" | "deliver";
    toolName?: string;
    maxIterations?: number;
}[]

Type declaration

  • id: string

    Unique step id; becomes the compiled GraphNode.id.

  • action: string

    Step action type, used to select the correct node builder:

    • 'reasoning' → gmiNode
    • 'tool_call' → toolNode
    • 'human_input' → humanNode
    • 'validation' → guardrailNode
  • description: string

    Human-readable description injected as the node's instructions or prompt.

  • phase: "gather" | "process" | "validate" | "deliver"

    Execution phase this step belongs to (governs ordering alongside anchors).

  • Optional toolName?: string

    Required when action is 'tool_call'; the registered tool name.

  • Optional maxIterations?: number

    Optional per-step override for gmiNode.maxInternalIterations. Allows the planner to give phases that need many tool calls (e.g. gather) a larger iteration budget than reasoning-only phases (process, deliver, refine), instead of forcing a single global value across the whole plan. Falls back to plannerConfig.maxIterationsPerNode when unset.