On current master, if you have 3 messages and delete the 2nd one, the message is removed from the list. However, if you move the cursor from message 1 to 3, or viceversa, the cursor disappears and you need to move it again to make it arrive to the desired message. It's as if the cursor was navigating over the deleted message.
In other words, messages are properly evacuated after deletion or move, but only apparently: when you move the cursor over the place where deleted messages were, it disappears for as many messages as you have ve deleted.
Tim Culverhouse referenced this ticket in commit ffc21ba.