# Triagebot Notifications

**URL:** <https://internals.rust-lang.org/t/triagebot-notifications/11857>\
**Category:** announcements\
**Created:** [February 20, 2020, 12:27am UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857 "2020-02-20T00:27:04Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![Mark\_Simulacrum](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/mark_simulacrum/32/2853_2.png) [@Mark\_Simulacrum](https://internals.rust-lang.org/u/Mark_Simulacrum)\
**Post date:** [February 20, 2020, 12:27am UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/1 "2020-02-20T00:27:04Z")

</div>

dtolnay and I have been working on a potential new system for tracking notifications for Rust team members. The primary reasoning behind this is that we've wanted to surface team member queues to folks doing triage and the community at large, as a way to help build both empathy for the length of the queue and make it easier to tell how "soon" a PR might be reviewed.

Currently I believe it's just myself and dtolnay using the tooling, but it is open for any Rust team member (specifically, listed on rust-lang/team) to try. We do not currently have plans to expand beyond that, though there is nothing intrinsically limiting it.

So, how does one look at the notifications? Presuming you're a Rust team member, you can visit `https://triagebot.infra.rust-lang.org/notifications?user=$GITHUB_USER_NAME`. For example, see [dtolnay's page](https://triagebot.infra.rust-lang.org/notifications?user=dtolnay).

The UI is quite dry, and the HTTP interface is entirely read-only today. Acknowledging and adding meta information to notifications is done through Zulip today. See the [wiki](https://github.com/rust-lang/triagebot/wiki/Notifications) for details on supported commands.

Currently only direct or indirect team pings (i.e., `@Mark-Simulacrum` or `@rust-lang/release`) will automatically add a notification, across the rust-lang organization. It is intended that in the future we will support other modes of notifications, such as "subscribing" to particular threads and so forth.

It's very early days so far, but dtolnay has told me that this has been very helpful, and I have personally experienced the same. We're announcing this to a wider audience primarily to give team members something to try out. We'd love to hear feedback of any kind! I'm sure that this is not the right tool for everyone, but even if it improves the lives of a small subset of team members that would already be great!

Note that all Rust team members currently have a dedicated page, but this does not mean that they are using the tool. There are plans to surface this in some way.

---

<div class="post-metadata">

**Author:** ![scottmcm](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/scottmcm/32/2355_2.png) [@scottmcm](https://internals.rust-lang.org/u/scottmcm)\
**Post date:** [February 20, 2020, 1:35am UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/2 "2020-02-20T01:35:11Z")

</div>

This is awesome! \*goes off to comment on things\*

---

<div class="post-metadata">

**Author:** ![Mark\_Simulacrum](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/mark_simulacrum/32/2853_2.png) [@Mark\_Simulacrum](https://internals.rust-lang.org/u/Mark_Simulacrum)\
**Post date:** [February 20, 2020, 1:52am UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/3 "2020-02-20T01:52:03Z")

</div>

Oh, also, forgot to mention. Feel free to leave feedback here, but also [https://github.com/rust-lang/triagebot/issues](https://github.com/rust-lang/triagebot/issues) is fine to file issues if you have feature ideas/requests/bugs.

cc @dtolnay, also

---

<div class="post-metadata">

**Author:** ![dtolnay](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/dtolnay/32/1447_2.png) [@dtolnay](https://internals.rust-lang.org/u/dtolnay)\
**Post date:** [February 20, 2020, 3:15am UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/4 "2020-02-20T03:15:55Z")

</div>

I am very excited about this system, since [the number of emails I get from GitHub is out of control](https://twitter.com/davidtolnay/status/1224054074514919424) to the point that email is no longer a reasonable way for me to track and manage actionable notifications. I expect as Rust's momentum grows, other team members have already experienced the same or will soon.

As I see it there are four major improvements that Mark's triagebot work brings to three audiences:

- **Team members** see where their attention is needed without juggling zillions of emails. This is the most apparent benefit, but not the most important one from my point of view.

- **Triage team** has a way to see what is on each team member's plate and make intelligent load-balancing decisions. Previously, if a PR sat for a while without review, the state of the art was for triage to make a shot in the dark to assign it to a random other member of the reviewing team, which is not necessarily productive.

- **Community members** who send PRs or make issues now have something to track while waiting on feedback.

- **Finally, most excitingly, the new system opens a way for community members to participate actively in the triage process.** Not called out in Mark's post but documented in the wiki link, we've opened up write permissions on any team member's notification queue to anyone with a zulip id registered with triagebot.

---

<div class="post-metadata">

**Author:** ![sfackler](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/sfackler/32/9_2.png) [@sfackler](https://internals.rust-lang.org/u/sfackler)\
**Post date:** [February 20, 2020, 3:17am UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/5 "2020-02-20T03:17:25Z")

</div>

Sweet! Dumb question: how do we actually interact with the Zulip bot? I didn't see a username or room mentioned on the wiki page.

---

<div class="post-metadata">

**Author:** ![dtolnay](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/dtolnay/32/1447_2.png) [@dtolnay](https://internals.rust-lang.org/u/dtolnay)\
**Post date:** [February 20, 2020, 3:22am UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/6 "2020-02-20T03:22:29Z")

</div>

@sfackler, I've added a link to the wiki — it's [https://rust-lang.zulipchat.com/#narrow/pm-with/261224-triage-rust-lang-bot](https://rust-lang.zulipchat.com/#narrow/pm-with/261224-triage-rust-lang-bot).

---

<div class="post-metadata">

**Author:** ![petrochenkov](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/petrochenkov/32/2784_2.png) [@petrochenkov](https://internals.rust-lang.org/u/petrochenkov)\
**Post date:** [February 20, 2020, 6:43am UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/7 "2020-02-20T06:43:15Z")

</div>

Looks like there are quite a few false-positives, e.g. [https://github.com/rust-lang/rust/pull/68997#issuecomment-586694101](https://github.com/rust-lang/rust/pull/68997#issuecomment-586694101) is in the list for me, but it's just a PR that I r+'d.  
I'll try to review the list closer this evening.

There are also notifications that I ignored because I don't care about them, I guess I'll have to don't care explicitly now 🙂

Looks pretty useful if false positives are pruned somehow.

---

<div class="post-metadata">

**Author:** ![Mark\_Simulacrum](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/mark_simulacrum/32/2853_2.png) [@Mark\_Simulacrum](https://internals.rust-lang.org/u/Mark_Simulacrum)\
**Post date:** [February 20, 2020, 11:00am UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/8 "2020-02-20T11:00:36Z")

</div>

The tool does indeed expect everyone to acknowledge everything explicitly, including in that leaving a comment is not an acknowledgement.

I think that there's definitely room for improvement there: for example, it's long been a goal to make triagebot take over from high-five for r? management, and if we did that then it would likely be not too hard to consider such a comment resolved with an approval. Currently the tool lacks any heuristics like that, which certainly simplifies the design, but also does add to the potential human workload. I imagine that some heuristics are probably good ones to add, though I think finding exactly where to stop might be nontrivial.

As to notifications you don't care about, could you elaborate some more? Is that in the context of a team-wide cc perhaps? One thing we don't surface in the UI is whether a comment originates from such a ping or from a direct invocation of a username, but we obviously have this information. Would it be helpful to have that highlighted?

---

<div class="post-metadata">

**Author:** ![nikomatsakis](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/nikomatsakis/32/5410_2.png) [@nikomatsakis](https://internals.rust-lang.org/u/nikomatsakis)\
**Post date:** [February 20, 2020, 3:50pm UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/9 "2020-02-20T15:50:12Z")

</div>

When I've thought about suggesting this tool in the past, I was going to suggest an explicit notation like `f? @nikomatsakis` as a way to explicitly request feedback from someone (vs just @-mentioning people randomly).

Something else I would really like:

I tend to want to order my notifications by "how frequently did I interact with this issue" as measured in number of comments. In other words, if I posted, the next comment is very likely in response to what I wrote, and I would tend to want to see it -- this is much more true than if there have been 222 comments in the interim.

---

<div class="post-metadata">

**Author:** ![petrochenkov](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/petrochenkov/32/2784_2.png) [@petrochenkov](https://internals.rust-lang.org/u/petrochenkov)\
**Post date:** [February 20, 2020, 7:36pm UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/10 "2020-02-20T19:36:51Z")

</div>

> [@Mark\_Simulacrum](#):
>
> As to notifications you don't care about, could you elaborate some more? Is that in the context of a team-wide cc perhaps?

Not necessarily team-wide, just something I either cannot usefully answer, or something that I need to investigate before answering, but won't investigate because it's not important to me.  
Probably not automatable.

I think I agree that it's better to say something meaning "I won't answer" explicitly instead of just keeping silence, and that includes team-wide pings too.  
Perhaps a triagebot list can help with that.

---

<div class="post-metadata">

**Author:** ![spastorino](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/spastorino/32/1003_2.png) [@spastorino](https://internals.rust-lang.org/u/spastorino)\
**Post date:** [February 25, 2020, 6:59pm UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/11 "2020-02-25T18:59:12Z")

</div>

This is fantastic!. Going to try it out as soon as I have my zulip-id PR added on team 😊

---

<div class="post-metadata">

**Author:** ![petrochenkov](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/petrochenkov/32/2784_2.png) [@petrochenkov](https://internals.rust-lang.org/u/petrochenkov)\
**Post date:** [February 26, 2020, 7:41pm UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/12 "2020-02-26T19:41:29Z")

</div>

So, I went through the list of [https://triagebot.infra.rust-lang.org/notifications?user=petrochenkov](https://triagebot.infra.rust-lang.org/notifications?user=petrochenkov) and it was _mostly_ double work.

The largest part of the list are links to PRs from my review board ([https://github.com/pulls/assigned](https://github.com/pulls/assigned)) in various review stages, even closed ones ([https://github.com/pulls?q=is%3Apr+assignee%3Apetrochenkov+archived%3Afalse+is%3Aclosed](https://github.com/pulls?q=is%3Apr+assignee%3Apetrochenkov+archived%3Afalse+is%3Aclosed)), sometimes multiple links to different comments in the same PR.  
I already track those through the review board, from which they disappear automatically on PR merge/close, I wouldn't want to manually cleanup them from the triage board as well.

From the remaining items, some I've seen before and ignored as "meh, not my business", but some were new. The number of those remaining items wasn't large, so it should be ok to acknowledge them manually.

---

<div class="post-metadata">

**Author:** ![djc](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/djc/32/1592_2.png) [@djc](https://internals.rust-lang.org/u/djc)\
**Post date:** [April 2, 2020, 12:50pm UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/13 "2020-04-02T12:50:54Z")

</div>

Would it perhaps be possible to allow (some) non-team members to use ping? For example, I'd like to draw some attention from some Libs team member to [https://github.com/rust-lang/rust/issues/64260](https://github.com/rust-lang/rust/issues/64260), but have been unsuccessful doing so.

---

<div class="post-metadata">

**Author:** ![RalfJung](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/ralfjung/32/2415_2.png) [@RalfJung](https://internals.rust-lang.org/u/RalfJung)\
**Post date:** [April 4, 2020, 7:46am UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/14 "2020-04-04T07:46:27Z")

</div>

I don't think GitHub lets us configure this. You could try mentioning it in [their Zulip stream](https://rust-lang.zulipchat.com/#narrow/stream/219381-t-libs).

---

<div class="post-metadata">

**Author:** ![djc](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/djc/32/1592_2.png) [@djc](https://internals.rust-lang.org/u/djc)\
**Post date:** [April 4, 2020, 11:38am UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/15 "2020-04-04T11:38:45Z")

</div>

I was thinking we wouldn't use a GitHub-native ping, but through one of the Rust-specific bots.

---

<div class="post-metadata">

**Author:** ![Mark\_Simulacrum](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/mark_simulacrum/32/2853_2.png) [@Mark\_Simulacrum](https://internals.rust-lang.org/u/Mark_Simulacrum)\
**Post date:** [July 3, 2020, 11:38am UTC](https://internals.rust-lang.org/t/triagebot-notifications/11857/16 "2020-07-03T11:38:48Z")

</div>

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.
