nl2sql

EngineAggregatorNode

Overview


Responsibilities


Position in Execution Graph

Upstream:

Downstream:

Trigger conditions:

flowchart LR
    Router[layer_router] --> Aggregator[EngineAggregatorNode] --> Synth[AnswerSynthesizerNode]

Inputs

From GraphState:

Validation performed:


Outputs

Mutations to GraphState:

Side effects:


Internal Flow (Step-by-Step)

  1. Read execution_dag and artifact_refs.
  2. Invoke AggregationService.execute(dag, artifact_refs).
  3. Build AggregatorResponse with terminal_results.
  4. Return success reasoning.
  5. On exception, emit AGGREGATOR_FAILED.

Contracts & Interfaces

Implements a LangGraph node callable:

def __call__(self, state: GraphState) -> Dict[str, Any]

Key contracts:


Determinism Guarantees


Error Handling

Emits PipelineError with:

Logs failures via logger.error.


Retry + Idempotency


Performance Characteristics


Observability


Configuration


Extension Points


Known Limitations