22.18 The semi-automatic grading system⧉
⚠️ This appendix is a stub — details forthcoming. The course's problem sets are graded with a semi-automatic pipeline: an autograder does the mechanical, repeatable work, and a human handles judgment. The "semi" is the point — automation for scale and consistency, a person for fairness. The intended structure is sketched here and will be completed once the concrete pipeline is documented.
22.18.1 The shape (to be confirmed)⧉
Each problem set ships with a test harness and reference data. A submission is built and run against it; image and numeric outputs are compared to references within a tolerance; and a provisional score is produced for a human to review and adjust. The aim is that the repeatable 80% is checked instantly and consistently, freeing a grader to spend their attention where judgment actually matters.
22.18.2 Automatic versus human (to be confirmed)⧉
- Automatic. Does the code compile and run without crashing; does its output match the reference within tolerance; is it within the performance budget where that is part of the assignment.
- Human. Partial credit for near-misses; code clarity and style; the open-ended make-your-own, video, and ethics components that have no single right answer; and any appeal.
22.18.3 To be filled in (from the instructor)⧉
The exact harness and languages (Python / C++); the per-pset reference outputs and tolerances; the rubric and point allocation; how grades and feedback are returned to students; the academic-integrity and permitted-AI-use policy — and how it interacts with the course tutor; and any plagiarism or similarity checking.