Problem
The frontend has no real semester support. Today the EnrolledCourse type lacks a semester field, so GradebookLanding falls back to a hardcoded ['Spring 2026'] chip — multi-semester chips never populate (docs/gradebook-rollout-notes.md:52,69). It works only because every course in the DB defaults to that string.
Depends on
The backend/DB semester work (see cross-link below) — the frontend needs semester surfaced from /api/graph/<user>/courses before chips can populate from real data.
Work
Pointers
docs/gradebook-rollout-notes.md (the getCourses follow-up)
docs/superpowers/specs/2026-05-02-gradebook-design.md — SemesterChips, multi-semester design intent
Related
Backend/DB counterpart: #259
Problem
The frontend has no real semester support. Today the
EnrolledCoursetype lacks asemesterfield, soGradebookLandingfalls back to a hardcoded['Spring 2026']chip — multi-semester chips never populate (docs/gradebook-rollout-notes.md:52,69). It works only because every course in the DB defaults to that string.Depends on
The backend/DB semester work (see cross-link below) — the frontend needs
semestersurfaced from/api/graph/<user>/coursesbefore chips can populate from real data.Work
semesterto theEnrolledCourse/ getCourses client type once the backend surfaces it.SemesterChipsfrom the distinct semesters across enrollments instead of the hardcoded fallback.Pointers
docs/gradebook-rollout-notes.md(the getCourses follow-up)docs/superpowers/specs/2026-05-02-gradebook-design.md—SemesterChips, multi-semester design intentRelated
Backend/DB counterpart: #259