Fix review task persistence for corrections

This commit is contained in:
Codex
2026-06-26 15:00:04 +08:00
parent b169cb3d7a
commit d6a4c95d72
+16 -11
View File
@@ -61,12 +61,15 @@ def record_student_account(student: str, _user: str = Depends(verify_records_aut
@router.post("/api/corrections") @router.post("/api/corrections")
def submit_corrections(payload: CorrectionSubmitPayload, _user: str = Depends(verify_records_auth)): def submit_corrections(payload: CorrectionSubmitPayload, _user: str = Depends(verify_records_auth)):
try: try:
result = submit_public_correction_tasks( records = load_records()
ADMIN_TASKS_PATH, teachers = load_teachers()
load_records(), with write_lock:
load_teachers(), result = submit_public_correction_tasks(
[item.dict() for item in payload.items], ADMIN_TASKS_PATH,
) records,
teachers,
[item.dict() for item in payload.items],
)
except ValueError as exc: except ValueError as exc:
raise HTTPException(status_code=400, detail=str(exc)) from exc raise HTTPException(status_code=400, detail=str(exc)) from exc
return {"ok": True, **result} return {"ok": True, **result}
@@ -75,11 +78,13 @@ def submit_corrections(payload: CorrectionSubmitPayload, _user: str = Depends(ve
@router.post("/api/deletions") @router.post("/api/deletions")
def submit_deletions(payload: DeletionSubmitPayload, _user: str = Depends(verify_records_auth)): def submit_deletions(payload: DeletionSubmitPayload, _user: str = Depends(verify_records_auth)):
try: try:
result = submit_public_deletion_tasks( records = load_records()
ADMIN_TASKS_PATH, with write_lock:
load_records(), result = submit_public_deletion_tasks(
[item.dict() for item in payload.items], ADMIN_TASKS_PATH,
) records,
[item.dict() for item in payload.items],
)
except ValueError as exc: except ValueError as exc:
raise HTTPException(status_code=400, detail=str(exc)) from exc raise HTTPException(status_code=400, detail=str(exc)) from exc
return {"ok": True, **result} return {"ok": True, **result}