Reporting of unexpected deaths of worker processes could be better
If a worker process (i.e. one executing the child-side of a Job instance) dies in a way which doesn't report a useful message back along its queue, the the parent reports a BUG due to the "out of sync" failure of the process, but it gives no information as to how the process died.
Since the exit code is supplied to Job._parent_child_completed() and that exit code is 0 or positive for a "normal exit" and negative for a signal. While a positive (non-zero) exit code should be handled quietly in the normal pathways, a negative exit code should really be reported immediately so that the user can tell that something went very wrong.
While trying to track down a failure which was caused by the child worker process quietly (unreportedly) segfaulting that information would have been exceedingly useful and saved several wasted hours.