Eric Rescorla
2018-05-31 14:04:00 UTC
I wanted to let the tools team know about the way I'm using
Phabricator (https://en.wikipedia.org/wiki/Phabricator) and the new
Datatracker APIs to do my
AD and IESG. Phabricator's "Differential" tool is a code review
system that allows for:
- Line-by-line reviews
- Status and comment tracking
- Reviewer assignment
- Differences between any two versions of a document, complete
with in-context display of comments
The basic model I have is that I treat each draft as it if were a
submitted patch to the repository of all drafts, and then review it. I
find this lets me go through a draft relatively quickly, note issues,
then create a review, and then when a new version comes out, see how
the authors resolved them. In some cases, the authors make their own
Phabricator accounts and respond in comments (this is a better
experience for everyone) but even without that, it's been a pretty big
improvement in experience for me.
Here's an example of what this looks like on Phabricator:
https://mozphab-ietf.devsvcdev.mozaws.net/D5132
And the corresponding (auto-generated) ballot:
https://datatracker.ietf.org/doc/draft-ietf-tram-stunbis/ballot/
Sorry, you'll need to search, no anchors on this page.
I've developed a suite of tools to automate most of the work here:
https://github.com/ekr/iphab
Roughly speaking, here's what they do:
- Watch the draft repository and keep the list of revisions
(Phabricator's term for change lists).
- Parse the telechat agenda and assign revisions to be reviewed
based on the documents on the agenda (Protocol Actions get
marked as "Blocking" and Document Actions as non-blocking).
- When a review is finished, post it as a ballot in the datatracker
(using whether the revision was "accepted" or not to determine
how to ballot). It also automatically sorts comments in to
DISCUSS and COMMENT based on whether they are marked "IMPORTANT".
- Alternatively, download reviews into a text file so you can
edit them, email, etc.
Right now, this is still a bit manual (I run the tools on my machine
before each telechat and you have to individually tell them to submit
the ballot) and only sort of works for > 1 person but if other people
were interested in trying Phabricator out, it would be pretty easy to
make it work for more than one person, and at least automate the
updating piece of it (you'd probably still have to manually tell it to
ballot for each draft for a little while). I've avoided doing that
because it *is* work, but would be happy to if there was interest.
Big thanks to Henrik and the tools team for making the Datatracker
APIs (and the API key facility) that makes this possible.
-Ekr
Phabricator (https://en.wikipedia.org/wiki/Phabricator) and the new
Datatracker APIs to do my
AD and IESG. Phabricator's "Differential" tool is a code review
system that allows for:
- Line-by-line reviews
- Status and comment tracking
- Reviewer assignment
- Differences between any two versions of a document, complete
with in-context display of comments
The basic model I have is that I treat each draft as it if were a
submitted patch to the repository of all drafts, and then review it. I
find this lets me go through a draft relatively quickly, note issues,
then create a review, and then when a new version comes out, see how
the authors resolved them. In some cases, the authors make their own
Phabricator accounts and respond in comments (this is a better
experience for everyone) but even without that, it's been a pretty big
improvement in experience for me.
Here's an example of what this looks like on Phabricator:
https://mozphab-ietf.devsvcdev.mozaws.net/D5132
And the corresponding (auto-generated) ballot:
https://datatracker.ietf.org/doc/draft-ietf-tram-stunbis/ballot/
Sorry, you'll need to search, no anchors on this page.
I've developed a suite of tools to automate most of the work here:
https://github.com/ekr/iphab
Roughly speaking, here's what they do:
- Watch the draft repository and keep the list of revisions
(Phabricator's term for change lists).
- Parse the telechat agenda and assign revisions to be reviewed
based on the documents on the agenda (Protocol Actions get
marked as "Blocking" and Document Actions as non-blocking).
- When a review is finished, post it as a ballot in the datatracker
(using whether the revision was "accepted" or not to determine
how to ballot). It also automatically sorts comments in to
DISCUSS and COMMENT based on whether they are marked "IMPORTANT".
- Alternatively, download reviews into a text file so you can
edit them, email, etc.
Right now, this is still a bit manual (I run the tools on my machine
before each telechat and you have to individually tell them to submit
the ballot) and only sort of works for > 1 person but if other people
were interested in trying Phabricator out, it would be pretty easy to
make it work for more than one person, and at least automate the
updating piece of it (you'd probably still have to manually tell it to
ballot for each draft for a little while). I've avoided doing that
because it *is* work, but would be happy to if there was interest.
Big thanks to Henrik and the tools team for making the Datatracker
APIs (and the API key facility) that makes this possible.
-Ekr