citationEdge / workflows /sequential_workflow.py
omkarkudalkar222's picture
Fresh deployment without history
0e38162
Raw
History Blame Contribute Delete
731 Bytes
from typing import Any, List
from workflows.base_workflow import BaseWorkflow
from agents.base_agent import AgentContext, AgentResult
from utils.logger import get_logger
logger = get_logger("sequential_workflow")
class SequentialWorkflow(BaseWorkflow):
"""Run agents one by one in order."""
name = "sequential"
async def execute(self, agents: List[Any], ctx: AgentContext) -> List[AgentResult]:
results = []
for agent in agents:
result = await agent.run(ctx)
results.append(result)
if result.status.value == "failed" and agent.critical:
logger.error(f"Critical agent '{agent.name}' failed. Aborting.")
break
return results