summaryrefslogtreecommitdiff
path: root/doc/user/todos.md
blob: 1fca3c0ab642b7f3d78480b78822a2b4e50d908c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
---
disqus_identifier: 'https://docs.gitlab.com/ee/workflow/todos.html'
stage: Plan
group: Project Management
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers
---

# GitLab To-Do List **(CORE)**

> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/2817) in GitLab 8.5.

When you sign in to GitLab, you normally want to determine where you should
spend your time. This can include taking an action, or keeping track of things
(without having to read lots of email notifications). Because GitLab is where you
do your work, being able to get started quickly is important.

Your *To-Do List* offers a chronological list of items waiting for your input
(known as *to-dos*) in a single dashboard.

The To-Do List supports tracking [actions](#what-triggers-a-to-do) related to
the following:

- Issues
- Merge Requests
- Epics **(ULTIMATE)**

![to-do screenshot showing a list of items to check on](img/todos_index.png)

You can access your To-Do List by clicking the **{task-done}** To-Do List icon
next to the search bar in the top navigation. If the to-do item count is:

- *Less than 100*, the number in blue is the number of to-do items.
- *100 or more*, the number displays as 99+. The exact number displays in the
  To-Do List.

![To Do icon](img/todos_icon.png)

## What triggers a to-do

A to-do item appears on your To-Do List when:

- An issue or merge request is assigned to you.
- You're `@mentioned` in the description or comment of an issue or merge request
  (or epic **(ULTIMATE)**).
- You are `@mentioned` in a comment on a:
  - Commit
  - Design
- The CI/CD pipeline for your merge request failed.
- An open merge request becomes unmergeable due to conflict, and one of the
  following is true:
  - You're the author.
  - You're the user that set the merge request to automatically merge after a
    pipeline succeeds.
- [Since GitLab 13.2](https://gitlab.com/gitlab-org/gitlab/-/issues/12136), a
  merge request is removed from a
  [merge train](../ci/merge_request_pipelines/pipelines_for_merged_results/merge_trains/index.md),
  and you're the user that added it. **(PREMIUM)**

When several trigger actions occur for the same user on the same object (for
example, an issue), GitLab displays only the first action as a single to-do
item.

To-do triggers aren't affected by [GitLab notification email settings](profile/notifications.md).

NOTE: **Note:**
When a user no longer has access to a resource related to a to-do (such as an
issue, merge request, project, or group), for security reasons GitLab deletes
any related to-do items within the next hour. Deletion is delayed to prevent
data loss, in the case where a user's access is accidentally revoked.

### Directly addressing a to-do

> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/7926) in GitLab 9.0.

If you're mentioned at the start of a line, the to-do you receive will be listed
as *directly addressed*. For example, in the following comment:

```markdown
@alice What do you think? cc: @bob

- @carol can you please have a look?

>>>
@dan what do you think?
>>>

@erin @frank thank you!
```

The people receiving directly addressed to-do items are `@alice`, `@erin`, and
`@frank`. Directly addressed to-do items only differ from mentions in their type
for filtering purposes; otherwise, they appear as normal.

### Manually creating a to-do

You can add an issue or merge request (or epic **(ULTIMATE)**) to your
To-Do List by clicking its **Add a To Do** button.

![Adding a To Do from the issuable sidebar](img/todos_add_todo_sidebar.png)

## Marking a to-do as done

Any action to an issue or merge request (or epic **(ULTIMATE)**) will mark its
corresponding to-do as done.

Actions that dismiss to-do items include:

- Changing the assignee
- Changing the milestone
- Adding/removing a label
- Commenting on the issue

Your To-Do List is personal, and items are only marked as done if you take
action. If you close the issue or merge request, your to-do is marked as done.

To prevent other users from closing issues without you being notified, if
someone else closes, merges, or takes action on an issue or merge request (or
epic **(ULTIMATE)**), your to-do will remain pending.

There's just one to-do for each of these, so mentioning a user many times in an
issue will only trigger one to-do item.

If no action is needed, you can manually mark the to-do as done by clicking its
corresponding **Done** button to have GitLab remove the item from your
To-Do List.

![A to-do in the To-Do List](img/todos_todo_list_item.png)

You can also mark a to-do as done by clicking the **Mark as done** button in the
sidebar of an issue or merge request (or epic **(ULTIMATE)**).

![Mark as done from the issuable sidebar](img/todos_mark_done_sidebar.png)

You can mark all your to-do items as done at once by clicking the
**Mark all as done** button.

## Filtering your To-Do List

You can use the following types of filters with your To-Do List:

| Filter  | Description                                                      |
| ------- | ---------------------------------------------------------------- |
| Project | Filter by project.                                               |
| Group   | Filter by group.                                                 |
| Author  | Filter by the author that triggered the To Do.                   |
| Type    | Filter by issue, merge request, design, or epic. **(ULTIMATE)**  |
| Action  | Filter by the action that triggered the To Do.                   |

You can also filter by more than one of these at the same time. The previously
described [triggering actions](#what-triggers-a-to-do) include:

- Any action
- Assigned
- Mentioned
- Added
- Pipelines
- Directly addressed