my-env / scripts /verify_task_graders.py
Maheswar01's picture
Two-decimal scores, single tasks/graders.py, min three inference episodes
97032c2
Raw
History Blame Contribute Delete
1 kB
#!/usr/bin/env python3
"""Exit 0 if task_graders.json lists enough tasks and tasks/graders.py exists."""
from __future__ import annotations
import json
import sys
from pathlib import Path
ROOT = Path(__file__).resolve().parents[1]
MIN_TASKS = 3
def main() -> int:
doc = json.loads((ROOT / "task_graders.json").read_text(encoding="utf-8"))
tasks = doc.get("tasks", [])
if len(tasks) < MIN_TASKS:
print(f"task_graders.json: need at least {MIN_TASKS} tasks", file=sys.stderr)
return 1
for row in tasks:
rel = row.get("grader_file")
if not rel or not (ROOT / rel).is_file():
print(f"Missing grader file: {rel}", file=sys.stderr)
return 1
if not (ROOT / "tasks" / "graders.py").is_file():
print("Missing canonical tasks/graders.py", file=sys.stderr)
return 1
print(f"OK: {len(tasks)} tasks, grader module tasks/graders.py present")
return 0
if __name__ == "__main__":
raise SystemExit(main())