Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
x/build/cmd/gopherbot: suggest multiple reviewers, but only add one #30695
Gopherbot seems to add a lot of reviewers and CCs to some CLs.
For example, take the current patch series to add aix/ppc64 support. This patch series includes many trivial changes like https://go-review.googlesource.com/c/go/+/164014/3 (1-line change to a test file), but 4 reviewers were added, and another 4 CC'd. Many other CLs have an equally large number of reviewers/CCs.
I was added to a bunch of the CLs, but I've basically been ignoring them since I saw @ianlancetaylor and @bcmills were reviewing some of them. Maybe I should take a closer look at some, but the false positive rate is high enough that I'd probably miss if they specifically asked me for help.
Basically, I'm worried that this is leading to the bystander effect, where Gopherbot is adding reviewers to ensure new contributors' CLs don't go ignored. But then all of the reviewers assume another reviewer will look at it, thereby yielding the same result.
It also leads to situations where I upload a CL for trybot testing, and it gets mailed out to a dozen reviewers, and I have to then remove them all.
As a concrete alternative, I suggest gopherbot pick only one of the reviewers to automatically add to the CL, but that it includes in a comment other possible reviewers. I expect this would mitigate the bystander effect, increase the signal-to-noise ratio of review request emails, and still provide an easy escalation path for CL authors when a reviewer isn't responsive.
So, why did GopherBot add so many reviewers in the first place?
If they're all listed as owners of the same component... well, maybe we need to prune down the owners or split out subcomponents.
If the CL touches lots of components, then GopherBot should pick the most important one or two, or try to find an owner in the intersection.
I sent a CL to address
There are eight(!) owners listed in
In general, I think we should probably have no more than two primary owners for a given component, and those owners can choose to route the incoming reviews however they see fit (by adding or removing reviewers as necessary).