from abc import ABC, abstractmethod from typing import Any, Dict, List from agents.base_agent import AgentContext, AgentResult class BaseWorkflow(ABC): """Abstract base for all workflow execution strategies.""" name: str = "base" @abstractmethod async def execute( self, agents: List[Any], ctx: AgentContext, ) -> List[AgentResult]: """Run agents and return their results."""