Revisit subscribing to labels

Problem to solve

When creating an issue in the gitlab issue tracker, I have to /cc the relevant PM to get awareness. This shouldn't be necessary. I should just be able to label the issue with the relevant category, and know that the right people will get notified. We do have an ability for PMs to subscribe to labels, and thus they'd get an email notification about the issue. Unfortunately, our notification system, specifically with respect to subscribing to labels, isn't good enough to be used that way. Subscribing to a label means you get notified about everything that happens to every issue with that label, which leads to email overflow, which leads to important information getting buried. I know that I filter out email notifications unless I'm explicitly @ mentioned on an issue so even if I did subscribe to the label, I'd miss the email.

Intended users

Further details

Proposal

I don't know what the right answer would look like. Borrowing from how Slack works, I imagine a flow something like this:

  1. Notify subscribers when a label is first added to an issue.
  2. Don't send notifications for every comment on an issue (unless I explicitly subscribe to a higher level of notifications). Note, this could probably apply to any "following" notification, not just label-related following. This could just be a new level of notifications.
  3. If I'm @ mentioned, send notification
  4. If there's a response in a thread that I'm involved in, have some way to quickly catch up, like Slack's Threads virtual channel. Note this isn't a notification, but a place for me to actively choose to view, recognizing that threads generally have higher relevance than general channel comments. This likely applies to issues just as well. If someone responds to my comment, in a thread, that should be surfaced with higher priority than other subsequent comments outside of a thread.

An alternative is how Google Docs does notifications. If I'm in a doc and someone creates a comment, I don't generally see a notification. If they + mention me, then I see a notification, as well as get notified for any follow-up comments in that same sidebar comment, including notification when the comment is resolved.

An MVC would probably remove the Slack Thread view and simply notify on any reply in the thread, but not comments in the main body.

We'll have to think about system activity. Generally, I wouldn't want to see all system activity, but closing an issue might be important enough to get notified. Some people may want to get notified any time the milestone changes (although we don't currently support that). That might triple the amount of notifications the average person receives, so we'll have to weight the costs and benefits of that experience.

Permissions and Security

Documentation

Availability & Testing

What does success look like, and how can we measure that?

What is the type of buyer?

Links / references