Is this possible after a (failed) stream resumption? Could you provide more context (e.g. more XMPP traces, especially from the very first stream open).
It could be that you get the ack's because -5, -6 are resend after a successive login because they weren't ack'ed before.
Could you set a breakpoint just before the stanza id ack listener should be called to see why it's not called?