Problem
Issue #307 specifies advanced control flow routing that is missing from YAML pipeline specification:
steps:
- id: check_input
condition: "len(topic) > 10"
on_false: short_topic_handler
on_failure: error_recovery
on_success: main_processing
Solution Required
Implement complete control flow routing system:
1. Conditional Execution
condition field with Python expression evaluation
- Runtime condition evaluation with pipeline variables
- Skip step execution when condition is False
2. Control Flow Routing
on_false - next step when condition is False
on_failure - next step when step execution fails
on_success - next step when step completes successfully
- Default behavior when routing not specified
3. StateGraph Integration
- Modify LangGraph StateGraph to support conditional edges
- Dynamic routing based on execution results
- State management for complex control flows
Implementation Details
- Extend YAML compiler to parse routing attributes
- Modify StateGraph construction for conditional edges
- Add condition evaluation engine with variable access
- Implement routing decision logic in execution engine
- Compile-time validation of routing targets
Acceptance Criteria
Files to Modify
src/orchestrator/compiler/yaml_compiler.py - YAML parsing
src/orchestrator/execution/engine.py - Routing logic
src/orchestrator/core/pipeline.py - StateGraph construction
Priority: High - Core specification requirement from #307
Problem
Issue #307 specifies advanced control flow routing that is missing from YAML pipeline specification:
Solution Required
Implement complete control flow routing system:
1. Conditional Execution
conditionfield with Python expression evaluation2. Control Flow Routing
on_false- next step when condition is Falseon_failure- next step when step execution failson_success- next step when step completes successfully3. StateGraph Integration
Implementation Details
Acceptance Criteria
Files to Modify
src/orchestrator/compiler/yaml_compiler.py- YAML parsingsrc/orchestrator/execution/engine.py- Routing logicsrc/orchestrator/core/pipeline.py- StateGraph constructionPriority: High - Core specification requirement from #307