toolforge-env / server /inputs /simulated /task_selector.py
Hugging-coder14's picture
Upload folder using huggingface_hub
2b3313a verified
Raw
History Blame Contribute Delete
953 Bytes
from typing import Dict, Any
from server.inputs.simulated.tasks import TASKS
TASK_ID_MAP = {
"easy": "easy-deployment-sprints",
"medium": "medium-traffic-readiness",
"hard": "hard-project-legacy-migration",
}
class TaskSelector:
def __init__(self):
pass
def next_task_list(self, task_id: str) -> Dict:
# Prefer direct internal IDs; if not provided, resolve deterministic aliases.
resolved_task_id = task_id
direct_match = next((item for item in TASKS if item.get("task_id") == resolved_task_id), None)
if direct_match is not None:
return direct_match
resolved_task_id = TASK_ID_MAP.get(task_id, task_id)
match = next((item for item in TASKS if item.get("task_id") == resolved_task_id), None)
if match is None:
raise ValueError(f"Unknown task_id: {task_id} (resolved: {resolved_task_id})")
return match