- Replace terse one-line optimization mode descriptions with clearer multi-sentence explanations of how Maximize Count and Priority Order algorithms behave - Add skeleton loading placeholders on course buttons while analysis is pending - Auto-expand achieved specializations to show credit breakdown by default - Add instructional subtitles to Course Selection and Specializations sections - Make Clear and Clear All buttons more prominent with visible backgrounds
25 lines
1.7 KiB
Markdown
25 lines
1.7 KiB
Markdown
## Why
|
|
|
|
The analysis UI has three usability gaps: the two optimization modes ("Maximize Count" and "Priority Order") have minimal one-line descriptions that don't convey how they differ in practice, there is no visual loading feedback beyond a tiny per-set "analyzing..." label when the solver runs, and achieved specializations don't show their credit breakdown by default—users must discover the click-to-expand behavior on their own.
|
|
|
|
## What Changes
|
|
|
|
- Replace the terse one-line mode descriptions in `ModeToggle` with clearer, more informative explanations that help users understand the practical difference between the two algorithms.
|
|
- Add a skeleton loading placeholder to elective set cards while analysis is pending, replacing the minimal "analyzing..." text with a visual placeholder that communicates progress.
|
|
- Default achieved specializations to expanded state so users always see the per-course credit breakdown without needing to click.
|
|
|
|
## Capabilities
|
|
|
|
### New Capabilities
|
|
- `algorithm-explanations`: Improved descriptive text and presentation for the two optimization mode settings in ModeToggle.
|
|
- `analysis-skeleton-loading`: Skeleton placeholder UI shown on elective set cards while the decision tree worker is processing.
|
|
- `expanded-achieved-specializations`: Achieved specializations default to expanded, always showing the AllocationBreakdown credit list.
|
|
|
|
### Modified Capabilities
|
|
|
|
## Impact
|
|
|
|
- `app/src/components/ModeToggle.tsx` — updated descriptive text and possibly layout for mode explanations.
|
|
- `app/src/components/CourseSelection.tsx` — replace "analyzing..." text with skeleton loading placeholder.
|
|
- `app/src/components/SpecializationRanking.tsx` — change default expansion state for achieved specializations.
|