RFCs status board, etc. - request for comments


#1

We want to better communicate the status of RFCs to authors, shepherds, and the community.

This is a request for comments here and now to design some better tools. I do not intend for this to go through the RFC process itself.

We discussed this somewhat in this week’s weekly meeting

Motivation

Some RFCs get a lot of discussion and are merged quickly. Others are forgotten about or neglected, either due to being low priority or by accident. As a shepherd with many RFCs to watch over, it is easy to lose track of RFCs. As an author there is no clear way to indicate that an RFC is ready for a final decision or needs other attention. Communication via GitHub, even pinging a person directly, is easy to overlook due to the volume of notifcations.

We want to fix this. The aim of this proposal is to make it easier for shepherds to track what they should be doing, easier for authors and shepherds to communicate with each other and the core team, and to place some social pressure on shepherds to keep RFCs moving.

Detailed Design

I propose three connected systems, administered by a bot (like rust-highfive or bors/homu). These will only run on the RFCs repo.

needinfo

The author or shepherd of an RFC may summon someone to an RFC for more information by posting a comment of the form needinfo @foo message, where @foo is a GitHub user and message is some message. The user will be emailed immediately and pinged on irc by the bot (the message should also appear in their GitHub notifications). The bot will keep track of issues with extant needinfo requests. When the person pinged comments on an RFC, the needinfo ‘bit’ is cleared. The ‘bit’ is cleared if the PR is closed or merged.

Weekly emails

All people with needinfo requests and all shepherds with open PRs will be sent a weekly email containing a list of needinfo requests, a list of open PRs to which they are assigned. For each needinfo, it will say how many days since the request was sent and the PR details. For each PR it will list the number of days since the PR was updated/commented on, the number of comments, and the number of days it has been open. We could probably highlight PRs which have not seen any recent action (i.e., no comment in the last week, say).

Status board

Similar to Homu’s status board for PRs. We will display all open RFC PRs with the author and assignee (shepherd). Those without shepherds will be highlighted in some way. We’ll also display age of the PR, days since last comment, and number of comments. Highlighting any which haven’t had any recent action. We could probably order by most recent action, by default.

Any other ideas?

Any comments about these suggestions?

Anyone want to help implement?


#2

I love this idea. The only thing I would want to add is that the status board should include extant needinfo requests, if any (or at least an indication that there are needinfo requests).

(One thing I would also like as a possible extension is a way for the status board to be customized to a user. i.e., basically show the contents of that weekly e-mail, but on a website. I’m finding this kind of “status board” display helpful as a way of dealing with the volume of notifications, since I can get into a daily habit of checking on that board first to get a quick summary of the most important things, and dealing with notifications more slowly.)