Loading
Show readiness score feedback in a drawer
What does this MR do and why?
Opens readiness feedback in a 400px overlay drawer, so users can read the assessment without resizing the work item page.
- Score details toggles the drawer from the readiness indicator.
- Shows an introduction, sanitized Markdown feedback, and an information box with a Learn more link.
- Keeps the readiness level in the widget; the drawer focuses on feedback.
- Shows the indicator only once a numeric score exists, including zero.
- Fetches feedback only while the drawer is open and
workplan_scoreis enabled. - Uses local drawer state, with Escape and focus restoration. Opening and closing leave the URL unchanged.
- Preserves the workplan panel and cached feedback through workplan edits.
Targets master; the earlier icon-placement and naming MRs are merged. Rescoring remains a follow-up.
References
- Resolves #628677
- Epic: gitlab-org#23050
- Design clarification: #628677 (comment 3944795102)
- Backend read path: !252884 (merged)
- Pending scoring state follow-up: #633076
Screenshots or screen recordings
| Before: readiness popover | After: feedback drawer |
|---|---|
![]() |
![]() |
How to set up and validate locally
- Enable
workplan_scorefor your current user in a project with planning enabled:Feature.enable(:workplan_score, User.find_by_username('root')) - Open a work item with a saved readiness score and feedback.
- Select Score details. Verify the drawer overlays the page and shows formatted feedback and the information box.
- Press Escape or Close drawer. Verify focus returns to Score details.
- For a scored item without feedback, verify the No feedback available yet message.
- Open the workplan panel, then readiness details. Verify closing the drawer leaves the workplan available.
- Save a workplan and reopen readiness details. Verify feedback is retained without an extra query.
MR acceptance checklist
- Passed: 389 component tests across 14 suites; 30 cache tests after the rebase.
- Passed: targeted ESLint and formatting checks.
- Integration: local runs are blocked before tests execute by a missing generated fixture,
graphql/commits/integration/get_commit_list_multiple_days.query.graphql.json. CI will validate these suites. - Browser: verified the updated drawer on GDK work item 95. Screenshots above show the latest layout.
- Feature flag: default-off
workplan_score; no changelog required.
Evaluate against the MR acceptance checklist.
Edited by Vanessa Otto

