When a command is killed by a timeout, make the human-readable error more clear
Summary:
Ref T13216. When we kill commands ourself because they exceed their time limit, it isn't always clear what happened. The error code (137 = kill, 143 = term) is usually a good hint if you know exactly what you're looking for, but this is totally non-obvious to anyone who isn't very familiar with the internals.
Instead, check if we killed the subprocess and make it clear what happened in the error message.
Test Plan:
2018-11-16 9:07:53 AM [STDE] [2018-11-16 09:07:52] EXCEPTION: (PhutilProxyException) Task "138492" encountered a permanent failure and was cancelled. {>} (PhabricatorWorkerPermanentFailureException) Permanent failure while activating resource ("PHID-DRYR-bv5p57tk5y7vcqonrgj3"): Command killed by timeout after running for more than 0.001 seconds.
Reviewers: amckinley
Reviewed By: amckinley
Maniphest Tasks: T13216
Differential Revision: https://secure.phabricator.com/D19815