Я посмотрел на свой собственный код IMAP для Gmail, и в одном из комментариев говорится, что UID изменяется при перемещении, потому что перемещение на самом деле копирование + удаление. Или, может быть, я поступаю неправильно:
imap.copy(sid, dest_folder)
imap.store(sid, '+FLAGS', '\\Deleted')
imap.expunge()
- иначе, если вы знаете способ его перемещения напрямую, он не должен меняться.