View the history of changes to an issue/mr/epic description
The description of an issue can be freely edited and the time of the last edit is recorded. But it is not recorded who made an edit and most of all not what the previous content was. A customer in a collaboration project made an edit to an issue description that we may not agree to and we have no records about what the previous content was exactly. Everything else is versioned but this important piece is missing.
- Description edits should be collapsed by default
- Users can expand description edits. This uses the same expand/collapse paradigm as discussions.
Once gitlab-ce#26723 (closed) is complete, description edits made by the same user within a 10-minute span should reside under the same system note. Since we are showing the actual changes made, we can simplify the language of the system note and just say "User @username changed the description 3 weeks ago"
There is a max-height of 480px. This is twice the max-height of our dropdowns. If a description is longer than this, the content should scroll.
The diff will show straight markdown, not the markdown preview. This is because inline diffs do not work for headers, images, tables, etc.
Once gitlab-ce#26723 (closed) is complete, add a filter option to filter by system notes. This will help more easily find description edits. It also brings the filter more in line with our other filters by allowing an "All" option, as well as comments only or system notes only.
- Whichever path is selected as optimal during the implementation of this issue, please keep in mind that the likely next iteration after tracking is exposing the ability to easily revert to a previous version. This is out of scope for this MVC, but should be taken into consideration when selecting the optimal implementation path.
- Additional conversation around implementation details - #10103 (comment 201016784)