If two retrievers are coming in parallel to the task origin, when the first one arrives and connects with success, the task origin is going to send a message for the next batch of agents to come (if there are still any).
This can be good if the second retriever is not delayed by a lot.
If an agent from the next batch arrives before the late retriever from the previous batch, then our code breaks.
I think we have to force it not to start the next batch, even if we are losing some efficiency.
If two retrievers are coming in parallel to the task origin, when the first one arrives and connects with success, the task origin is going to send a message for the next batch of agents to come (if there are still any).
This can be good if the second retriever is not delayed by a lot. If an agent from the next batch arrives before the late retriever from the previous batch, then our code breaks.
I think we have to force it not to start the next batch, even if we are losing some efficiency.