From the spec §2.8.3
1 The receiver will only settle after sending the disposition to the sender and
receiving a disposition indicating settlement of the delivery from the sender.
Right now when sending a disposition with settled=false and the broker later returns a disposition with settled=true this message is ignored by the client and the calling process never receives the {amqp10_disposition, _} message as expected.
(NB: the AMQP 1.0 broker plugin will respond with a correct disposition in this case however it will not be guaranteed that the queue did actually receive the ack as no such internal API exists).