|
| 1 | +# Triage Working Group Discussion |
| 2 | + |
| 3 | +- [Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/steering.20meeting.202019-07-05) |
| 4 | + |
| 5 | +# Summary |
| 6 | + |
| 7 | +- Discussed ideas of a triage working group and how that might interact |
| 8 | +- Discussed pnkfelix/nikomatsakis taking leave over next few weeks and what to do in the meantime |
| 9 | +- Discussed the problems around review queues |
| 10 | + |
| 11 | +# pnkfelix/nikomatsakis absence |
| 12 | + |
| 13 | +pnkfelix will be going on parental leave for 2 months starting |
| 14 | +July 15. nikomatsakis will be on PTO for a month or so, with limited |
| 15 | +availability. In the interim, nagisa has volunteered to run meetings. |
| 16 | + |
| 17 | +Another concern was the general review backlog. pnkfelix/nikomatsakis |
| 18 | +discussed spending a bit of time triaging things that need review and |
| 19 | +trying to develop a plan. |
| 20 | + |
| 21 | +In general, we noted that it would be useful to keep a calendar |
| 22 | +on [the compiler-team repository][ctr] to help track this sort of thing. |
| 23 | + |
| 24 | +[ctr]: https://github.com/rust-lang/compiler-team |
| 25 | + |
| 26 | +# Triage plan |
| 27 | + |
| 28 | +In general, the compiler triage effort is feeling pretty stretched. |
| 29 | +It also falls largely on a few people at this point in time. We |
| 30 | +discussed how we might broaden the effort. |
| 31 | + |
| 32 | +## The work of solving a regression |
| 33 | + |
| 34 | +[Link to approximate start of conversation]: https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/steering.20meeting.202019-07-05/near/169713350 |
| 35 | + |
| 36 | +Most errors come in the form of regressions: something that used to |
| 37 | +compile or run, but no longer does. One observation is that the work |
| 38 | +of handling a regression is actually something you can break down into |
| 39 | +many steps: |
| 40 | + |
| 41 | +- Figuring out the impact of the bug and assigns priority |
| 42 | +- Coallescing duplicates |
| 43 | +- Determining the cause of the regression: we have a tool that bisects to a nightly |
| 44 | + or even a specific PR, but somebody has to run it |
| 45 | +- Minimizing the error case into a standalone example that can be debugged |
| 46 | +- Identifying the *expected behavior* of the test case -- sometimes |
| 47 | + the regression comes from a bug **fix**! |
| 48 | +- Actually fixing the bug |
| 49 | + |
| 50 | +The final two require some amount of expertise -- though the precise |
| 51 | +amount varies. Today, there are a lot of people who help and do the |
| 52 | +minimization and bisection work, but it would be great if we could |
| 53 | +help organize those efforts more. |
| 54 | + |
| 55 | +## The ICE-breakers |
| 56 | + |
| 57 | +[Link to approximate start of conversation]: https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/steering.20meeting.202019-07-05/near/169713884 |
| 58 | + |
| 59 | +The next thing is one we've kicked around for a while -- can we create |
| 60 | +some kind of "ICE-breaker" group that is dedicated to fixing |
| 61 | +regressions, ICEs, and other "small" bugs in the compiler? What |
| 62 | +overlap does that group have with the triaging efforts described |
| 63 | +above? |
| 64 | + |
| 65 | +We discussed this for some time and seemed to come roughly to the |
| 66 | +following conclusions: |
| 67 | + |
| 68 | +- The [#wg-triage effort in the release team][wg-triage] obviously overlaps a lot |
| 69 | + with these efforts. |
| 70 | +- Perhaps we should divide responsibility as follows: |
| 71 | + - wg-triage: |
| 72 | + - decides what is important to fix or address based on the impact |
| 73 | + - helps to bisect, minimize, and identify the source of problems |
| 74 | + - brings it to compiler team attention and checks on progress regularly |
| 75 | + - tries to find assignees -- this will require compiler team participation! |
| 76 | + - compiler-team: |
| 77 | + - does the actual fixing |
| 78 | +- Note that if wg-triage is going to find out who to assign to a bug, |
| 79 | + that is going to require compiler team participation. We could in |
| 80 | + tricky cases have a "liason" who can be assigned that has the job of |
| 81 | + just reassigning to someone more appropriate. |
| 82 | +- On compiler side, the ICE-breakers group might still exist as well, |
| 83 | + and many of its members would likely participate in the wg-triage |
| 84 | + effort, but the focus of ICE-breakers would be mostly on the actual |
| 85 | + fixing of the bug, and less on the bisection and so forth. |
| 86 | + |
| 87 | +[wg-triage]: https://www.rust-lang.org/governance/teams/operations |
| 88 | + |
| 89 | +We concluded ultimately that we should try to touch base with the |
| 90 | +wg-triage effort and discuss. |
| 91 | + |
| 92 | +## Expert map, reviewing load |
| 93 | + |
| 94 | +[Link to approximate start of conversation]: https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/steering.20meeting.202019-07-05/near/169715908 |
| 95 | + |
| 96 | +We have an [expert map] on the compiler-team repository, but it is |
| 97 | +sparsely populated and doesn't include the new compiler team |
| 98 | +contributors. That would be in principle be helpful in finding people |
| 99 | +to assign to fix regressions or to review PRs. We also discused how |
| 100 | +contributors, even if they don't know an area well, can still be |
| 101 | +assigned to do a preliminary review or fix. We need to improve the |
| 102 | +"expert map" to be more complex and also to include "levels of |
| 103 | +knowledge". Perhaps rename it to "knowledge map" or something like |
| 104 | +that. Also, this can be a great way to figure out things that need to |
| 105 | +be added to the rustc-guide. |
| 106 | + |
| 107 | +[expert map]: https://github.com/rust-lang/compiler-team/blob/master/experts/MAP.md |
| 108 | + |
| 109 | +## Nomination labels |
| 110 | + |
| 111 | +[Link to approximate start of conversation]: https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/steering.20meeting.202019-07-05/near/169715099 |
| 112 | + |
| 113 | +We spent a bit of time discussing how the `I-nominated` tags are not |
| 114 | +sufficiently precise -- at minimum, they should identify the team, but |
| 115 | +perhaps also have more information. |
| 116 | + |
| 117 | +## Action items |
| 118 | + |
| 119 | +Emerging from this meeting: |
| 120 | + |
| 121 | +- Extend expert map with member/contributor levels |
| 122 | +- Create a compiler-team PTO calendar where people can note their upcoming absences |
| 123 | +- Join discussion with #wg-triage |
0 commit comments