View and edit the description of a Task (MVC 1)
Problem to solve
I need to add a description to a work item.
Proposal
Add support for descriptions to work items.
UX Screens
MVC1 is attached to the design manager.
FE Event Trackers
- po_description_update
Redis Tracker
- **name:** `users_updating_work_item_descriptions`
- **category:** `work_items`
- **redis_slot:** `users`
- **include in the following aggregation counters:**
- [x] `xmau_plan`
- [x] `xmau_project_management`
- [ ] `xmau_product_planning`
- [ ] `xmau_certify`
- [x] `users_work_items`
Acceptance Criteria
-
Edit description with issue description editor -
Formatting options work as expected -
MVC for gracefully handling conflicts (same as issue description) -- Proposed UI/UX (Work Item editing conflict resolution (#362967 - closed)) -
In-progress edits are persisted to localstorage (existing behavior) -
Properly renders all GFM and attachments like the existing description rendering -
Preview changes -
Many changes that happen within a small time span are batched together in the description diff system notes (existing behavior) -
Mobile and Desktop implemented -
Description updates in real-time via GraphQL subscription instead of /realtime_changes
endpoint. -
Unsupported quick actions are not available. -
FE Tracker -
Redis Tracker
Permissions and Security
- Same permissions as existing issue permissions.
Documentation
- None for now.
Testing
- Write tests, but this will be iteratively developed behind a FF and not generally available.
What does success look like, and how can we measure that?
- Work items are not yet a stage where we will be measuring quantitatively.
Engineering Implementation Details
Frontend
Since this is the initial widget that we will be creating, we need to include a few things that will be included globally
-
Create directory to hold widgets -
Create description
component -
Create description
GraphQL mutation -
Create documentation with instructions on how to create a widget for use within work items -
Add snowplow tracking on updating of description
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.
Edited by Gabe Weaver