Add typed Arrow execution backend boundary

This commit is contained in:
2026-07-29 16:47:14 +02:00
parent 69509d5cc2
commit 8a11d7571b
17 changed files with 2264 additions and 49 deletions
@@ -55,6 +55,15 @@ def validate_graph_schemas(
*,
ordered: list[str],
) -> list[DataflowDiagnostic]:
_, diagnostics = propagate_graph_schemas(graph, ordered=ordered)
return diagnostics
def propagate_graph_schemas(
graph: PipelineGraph,
*,
ordered: list[str],
) -> tuple[dict[str, SchemaState], list[DataflowDiagnostic]]:
node_by_id = {node.id: node for node in graph.nodes}
inputs = _graph_inputs_by_port(graph)
schemas: dict[str, SchemaState] = {}
@@ -81,7 +90,7 @@ def validate_graph_schemas(
)
schemas[node.id] = result.state
diagnostics.extend(result.diagnostics)
return diagnostics
return schemas, diagnostics
def _graph_inputs_by_port(