Class DAGExecutor

java.lang.Object
com.tnsai.coordination.workflow.DAGExecutor

public final class DAGExecutor extends Object
Executes workflow steps as a Directed Acyclic Graph (DAG). Steps with no dependencies run in parallel; dependent steps wait for their prerequisites.

Example usage:


 WorkflowResult result = DAGExecutor.builder()
     .step("fetch-a", fetchAgentA)
     .step("fetch-b", fetchAgentB)
     .step("merge", mergeAgent, List.of("fetch-a", "fetch-b"))
     .step("report", reportAgent, List.of("merge"))
     .build()
     .execute(new WorkflowContext("dag-1"));