<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div class="moz-cite-prefix">Le 05/03/2021 à 10:16, Sorin Sbarnea a
écrit :<br>
</div>
<blockquote type="cite"
cite="mid:CAFrDqBy5FsaY+GgVNU10QHNk4OkZ6RypcZvaLJjySkpz+8+_ig@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">
<div dir="ltr"><snip></div>
</div>
</blockquote>
<blockquote type="cite"
cite="mid:CAFrDqBy5FsaY+GgVNU10QHNk4OkZ6RypcZvaLJjySkpz+8+_ig@mail.gmail.com">
<div dir="ltr">
<div dir="ltr"> I also seen that Wikimedia experimented <a
href="https://phabricator.wikimedia.org/phame/live/1/post/139/gerrit_now_automatically_adds_reviewers/"
style="" moz-do-not-send="true">something</a> in that area,
apparently there is a wiki page where people can mark them as
available to be picked.</div>
</div>
</blockquote>
<p>Hello,</p>
<p>I wrote that Wikimedia blog post! Let me side track a bit to give
a bit more information.<br>
</p>
<p>The context is Wikimedia has been struggling with code review for
as long as we had more than a handful of people. Code review is
always a hot topic and is causing pain all across the community
with various degrees of experience. Some repositories are
carefully watched by their maintainers, others have mostly inner
team reviews and it might be hard to get a review if you are an
outsider.</p>
<p><b>git blame</b><br>
</p>
<p>An idea we had was to automatically add code reviewer based on
`git blame` (which I often relies on). That is how we have added
the reviewers by blame plugin. Cause I was super ambitious I went
with the default setting and it got enabled on every single
repositories. The day after, people complained about being added
to reviewers to a random set of patches that touched code that
they once touched, most often unrelated to their review
capabilities. The huge spam of emails caused us to roll back that
deployment and forget about automatically adding reviewers based
on blame. It just don't fit within our ecosystem.</p>
<p>I have updated the blog post to highlight we have disabled the
reviewer by blame plugin almost immediately.<br>
</p>
<p><b>homemade tooling</b><br>
</p>
<p>The primary system we use is Reviewer bot. People register their
interest on a wiki page <a moz-do-not-send="true"
href="https://www.mediawiki.org/wiki/Git/Reviewers">https://www.mediawiki.org/wiki/Git/Reviewers</a>
for example I can get added for any changes made to a `tox.ini`
file on any repo or to any changes made to `ci/*` gerrit
repositories. I can't remember the details of the implementation,
I think all changes are send to a mailing list, the bot fetches
the email, processes them, fetch the wiki page and apply the
rules.</p>
<p>The equivalent as a Gerrit plugin would be the reviewers plugin:<br>
</p>
<p><a moz-do-not-send="true"
href="https://gerrit.googlesource.com/plugins/reviewers/+/refs/heads/master/src/main/resources/Documentation/config.md">https://gerrit.googlesource.com/plugins/reviewers/+/refs/heads/master/src/main/resources/Documentation/config.md</a></p>
<p>We have it installed but I don't think it is used. Last time I
checked there is no UI for it and people have to add themselves
via a <font face="monospace">reviewers.config</font> file under <font
face="monospace">refs/meta/config</font>. Needless to say you
loose 99% of the audience at that point. Editing a wiki page is
way simpler for us.</p>
<p><b>attention set</b><br>
</p>
<p>Google is well aware of the issue related to find reviewers, or
at least highlighting when a change should be acted on among the
list of changes one is a reviewer for. Gerrit 3.3 introduces a
featured named attention set which is a bit of a turn based, when
one does an action they can bring up to the attention of some of
the reviewers while others are not. <br>
</p>
<p>So if Jane asks me to rewrite a test, she will bring my
attention, I will amend my code send a patch and bring attention
back to her. After a while once we both agree the change is now
fine, we will bring it to the attention of the others. I really
like that turn based review among a subset of the reviewers, that
should cut a bit of spam or at least make the dashboard slightly
more helpful.<br>
</p>
<p>The feature is better described at <a moz-do-not-send="true"
href="https://gerrit-review.googlesource.com/Documentation/user-attention-set.html">https://gerrit-review.googlesource.com/Documentation/user-attention-set.html</a>
I have been exposed to it while contributing to Gerrit upstream
and it is really an enjoyable system.</p>
<br>
<p>And all the above do not address the root causes:</p>
<p>* finding who can review code</p>
<p>* burden put on the shoulder of the few that can actually review,
leading to a huge backlog which is most probably ignored as a
result</p>
<p>It is a social problem really :-\</p>
<p>-- <br>
</p>
<p>Antoine "hashar" Musso</p>
<p>Wikimedia Release Engineering<br>
</p>
<p><br>
</p>
</body>
</html>