Track multiple TODOs / mentions per item / issue / merge request
Release notes
You can now stay on top of multiple discussions and mentions within a single issue or merge request. With the new multiple to-do items feature, you'll receive separate to-dos for each mention or action, ensuring you don't miss important updates or requests for your attention. This enhancement helps you manage your work more effectively and respond to your team's needs more efficiently.
https://docs.gitlab.com/ee/user/todos.html#multiple-to-do-items-per-object
Problem to solve
At present, if I'm mentioned in an issue or merge request, I get a TODO notification. This is the primary means through which I organize my work. However, if someone mentions me multiple times on a single issue or MR between work sessions, I only get the notification for the first mention.
Scenarios the solution should support:
- Know when you are being repeatedly tagged (more urgency being generated)
- Know the multiple places where your attention is needed
Intended users
Developers, particularly reviewers
Further details
This is particularly an issue on threaded-discussion issues or MRs, where I might need to respond to 3 or 4 independent points. Particularly on a very large MR, unless I take the trouble to review every discussion, it's easy for me to miss a discussion that is blocked on my input.
Proposal
Ideally, we'd track all mentions. When someone visits a page containing a mention with an outstanding TODO, it would be highlighted in some obvious way. When there are multiple TODOs to address on a single page, it would be great if I could see just those, somehow.
We need to do this in a way that doesn't cause TODO bloat - perhaps grouping them by item and allowing them to be dismissed en per-item would be enough?
Permissions and Security
Nothing new
Documentation
https://docs.gitlab.com/ee/user/todos.html#multiple-to-do-items-per-object
Current Status
Feature flag
The initial implementation is available behind a feature flag.
multiple_todos
- This currently enables the creation of multiple todos while keeping the UI the same. See #28355 (comment 447072597) for more details
To resolve before making this generally available
-
Either dedupe todos that happen at the same time from a todoable or combine multiple concurrent todos from the same todoable into a single todo. Examples: - Upon todoable creation, user is assigned and mentioned in description.
- Upon comment on todoable, user is mentioned and a quick action is triggered to assign the same user.
- Upon pipeline failure, a todo is created. This is noisy if there are lots of failing pipelines on a single todoable.
Next
-
Enable the feature flag by default -
Introduce the ability to group todos by todoable object (#282444 (closed)) -
Improve the UX and resolvability such that each todo can be resolved independently and possibility support the ability to blanket mark all todos as done. (#461111 (closed)) -
Provide better visual indicators where your todo exists within todoable.