Protocol slightly reverted: it's better to have the 'status' field
Most of the worker implementation.