Нашел такой комментарий
Я пришел к тому же самому и заметил следующее.
Каждый раз AsyncListDifferполучал мой список; это был тот же объект, что и раньше - присутствующий в памяти. Таким образом, дифферент решил, что ничего не изменилось, и не представил обновленный список.
В моем списке был один объект, и для каждой попытки отправки я менял одно поле. Объект и список, конечно же, остались прежними.
Итак, я задумался, почему вариант номер 2 не сработал, и оказалось, что мне нужно быть немного более выразительным:
submitList(
it.map {
it.copy()
})
В противном случае Котлин не сделал бы глубокую копию объекта.