public Task StopWorkerNodesAsync()
        {
            if (communicator.Rank != 0)
            {
                return(Task.FromResult(0));
            }

            foreach (var node in nodes)
            {
                var assignment = new ShutdownAssignment(node.Id);
                messageSink.PostShutdownAssignment(assignment);
            }

            return(Task.FromResult(0));
        }