I am trying to solve some bugish behaviour that makes the status label to be "Pending..." permanently, even when the notifications have been sent.
I don't fully understand what's happening in this iteration and why there's no "else" clause. The problem is caused by this I think. During some iteration the counter is not being increased hence the servedVariants never equals totalVariants and hence (again) the label does not change.
So the current flow would be:
1. If deliveryStatus is falsy, flag an error.
2. If servedBatches = totalBatches then increase servedVariants
Can both conditions pass? I think they can although this is not expected.
Can deliveryStatus be always truthy but the servedBatches != totalBatches? I think that what's happening and as a result, it is hiding some error that the user may want to see.
I also think that, in case of deliveryStatus, the iteration should stop.
WDYT?