Spaces:
Build error
Build error
| """Task grader dispatch.""" | |
| from __future__ import annotations | |
| try: | |
| from ..Models import TaskGrade | |
| from ..tasks.catalog import ReviewTask | |
| except ImportError: | |
| from Models import TaskGrade | |
| from tasks.catalog import ReviewTask | |
| from .bug_fix import grade_bug_fix_task | |
| from .optimization import grade_optimization_task | |
| from .syntax import grade_syntax_task | |
| def grade_task( | |
| task: ReviewTask, | |
| code: str, | |
| *, | |
| include_hidden: bool, | |
| timeout_s: float = 3.0, | |
| ) -> TaskGrade: | |
| """Dispatch to the correct deterministic grader.""" | |
| if task.task_kind == "syntax_fix": | |
| return grade_syntax_task(task, code, timeout_s=timeout_s) | |
| if task.task_kind == "bug_fix": | |
| return grade_bug_fix_task(task, code, include_hidden=include_hidden, timeout_s=timeout_s) | |
| if task.task_kind == "optimization": | |
| return grade_optimization_task(task, code, include_hidden=include_hidden, timeout_s=timeout_s) | |
| raise ValueError(f"Unsupported task kind: {task.task_kind}") | |