from __future__ import annotations from abc import ABC, abstractmethod class BaseTask(ABC): task_id: str difficulty: str incident_summary: str all_services: list[str] root_cause_service: str affected_services: list[str] dependency_graph: dict[str, list[str]] resolution_actions: list[dict] red_herring_services: list[str] @abstractmethod def initial_state(self) -> dict: raise NotImplementedError @abstractmethod def is_resolved(self, state: dict) -> bool: raise NotImplementedError