pub fn record_exercise_result(
progress: &mut UserProgress,
exercise_id: &str,
quality: u8,
today: &str,
)Expand description
A graded exercise result: quality comes from the grader’s verdict (fail = 1, passed with hints ≈ 3–4, clean pass = 5).