We should make sheriffbot error with a human readable message instead of a python backtrace when it fails to rollout a patch. When David Hyatt tried to rollout r59274 tonight (05/17), sheriffbot died with the following message: sheriffbot: Failed to run "['./WebKitTools/Scripts/webkit-patch', '--status-host=webkit-commit-queue.appspot.com', 'create-rollout', '--force-clean', '--parent-command=sheriff-bot', 59274, 'Not worth the memory hit. Just roll this out. (Requested by dhyatt on #webkit).']" exit_code: 2 to which Hyatt responded: [8:43pm] dhyatt: exit_code: 2! Clearly, "exit_code: 2" is not very informative. After further inspection, it appears that the reason for the error was that r59274 could not be rolled out cleanly. That is, there were conflicts with some newer changes. Adam Barth helped clarify the meaning of the various error_codes: [9:31pm] abarth: we use three different exit codes (if you care) [9:31pm] abarth: 0 = success [9:31pm] abarth: 1 = failure and I dealt with it [9:31pm] abarth: 2 = failure and you need to deal with it [9:31pm] abarth: "you" being the master process [9:31pm] abarth: (or maybe 1 and 2 are reversed, i don't remember)