Grading follow-ups from PR #394
@DarioDeSilva ya está trabajando en esto.
Desde el 27/10/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
A few small leftovers from the #394 review. None of them blocked the merge.
Timeout handling
upload_assignment_autograderstill stores NULL whenautograder_timeoutis left out.upload_submissionfalls back to 300, butcode_editor.py::submit_codeuses the raw value, so editor submissions get no time limit at all. The fix is to store the default when the field is missing, or to resolve the timeout in one place that every grading path uses.- The timeout has no upper bound. A huge value fails the INTEGER column only after the image is built, and large valid values hold the assignment lock for that long. nginx cuts requests off at 300s anyway, so a cap of around 600 seems reasonable.
Grade script
- If
setprivis missing from the image, or the autograder file is missing, the script exits 93. That gets recorded as a score-0 "Autograder Error" even though student code never ran. Exit codes 125/126/127 inside the script could map to a setup exit code instead. - A hang during reset or copy-in, or an exec-level 137 during setup, is still recorded against the student. This is rare and needs an infrastructure failure.
results.jsonand the autograder log have no size limit before they're read into backend memory.
Cleanup
- Use
KILLED_EXIT_CODEin the script and tests instead of a bare137. Drop the unreachableGRADE_EXIT_TIMED_OUTentry fromstudent_code_ran. - Add the submission id and partial stderr to the hung-exec warning.
- The "Failed to prepare/cleanup container" messages now also cover Docker CLI errors. Reword them.
Stress test
test_submission_burst.py --cleanupdeletes the assignment but leaves the generated students enrolled in the course.
- Lenguaje dominante
- Python
- Estrellas
- 13
- Forks
- 0
- Merge medio
- 9 d 7 h
- PR fusionados (30 d)
- 5
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de kiat/codeAssist
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
kiat/codeAssist#391 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
kiat/codeAssist#364 · 1 comentario ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 42/100
kiat/codeAssist#393 ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 63/100
kiat/codeAssist#392 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 52/100
kiat/codeAssist#390 ·
Todos los issues de kiat/codeAssist
Issues similares
-
[BUG]: Compliance rules never see Unity Catalog views as viewsPosiblemente ocupada @wagnercsantos la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
databrickslabs/ontos#1348 ·
Los mantenedores suelen responder en 3 días
-
`forum_pr_poster` action will always return `none` when checking for pre-existing feedback threads, even if a feedback thread already exists.Posiblemente ocupada @pgmzeta la tomó hoy. AbiertoE-Verified P-Major
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
goonstation/goonstation#28259 ·
Los mantenedores suelen responder en 2 días
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
woonstadrotterdam/monumenten#70 ·
Los mantenedores suelen responder en 15 días
-
binding:python bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
The Browser tab fails with a Wayland error when Open Terminal runs from a Wayland desktop sessionAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
open-webui/open-terminal#210 ·