from __future__ import annotations from env.tasks.easy import EASY_TASKS from env.tasks.hard import HARD_TASKS from env.tasks.medium import MEDIUM_TASKS from env.tasks.task_types import CICDTask def get_all_tasks() -> list[CICDTask]: return [*EASY_TASKS, *MEDIUM_TASKS, *HARD_TASKS] def get_tasks_by_difficulty(difficulty: str | None) -> list[CICDTask]: if not difficulty: return get_all_tasks() normalized = difficulty.strip().lower() return [task for task in get_all_tasks() if task.difficulty.lower() == normalized] def get_task_by_id(task_id: str | None) -> CICDTask | None: if not task_id: return None for task in get_all_tasks(): if task.task_id == task_id: return task return None __all__ = [ "CICDTask", "get_all_tasks", "get_task_by_id", "get_tasks_by_difficulty", ]