> I thought that redelivery was handled by ReliableDelivery and Redelivery. Does they send a Deliverback up to the RequestReader when they redeliver?

no, they don't.

> If they don't, then if you get one or more ACKs followed by some new Deliver followed failures for the ACKed messages, you will decrease them once, increase some for the new Deliver and then decrease for them a second time, creating a drift. 

ok, I see what you mean. The gap however can get closed again when the channel is idle for some time (i.e. doesn't get new Deliver requests) and the outstanding messages get finally delivered or reach `redeliverMax`.