Enhancing Software Peer Review with GitHub Automation

Problem

Review of software, code (also data and other artifacts) requires lots of tedious steps

Review

Acceptance

Submission

Plenty of tedious, sometimes repetitive tasks here.

Review

Acceptance

Submission

Ignores conversations between humans

Jump in when called

Ignores conversations between humans

Jump in when called

Perform <actions> return <output>

Ignores conversations between humans

Jump in when called

Generalize this to any action

Context switching for busy reviewers

@bot <pattern>
Follow a series of steps that involve other tools. 

Gather results
Respond with output

Heroku

Heroku

GitHub

Editorial

Review

Adding/removing reviewers
Generating checklists
Generating metadata
Updating databases

Run the submission artifacts (software) through external tools, then return actionable diagnostics