StateFlow: новый объект ещё не означает новое состояние
В обработчик состояния передали новый объект, а подписчик не получил обновление. Сначала проверьте equals: StateFlow сравнивает значения по равенству, а не по факту создания нового экземпляра. Равное предыдущему значение подавляется.
Это полезно для состояния экрана: повторная запись того же состояния не обязана вызывать новую обработку. Но если вы пытаетесь представить повторяющуюся команду одним и тем же значением, контракт не подходит. Новый экземпляр сам по себе не превращает состояние в событие.
На ревью разделите два требования: хранить актуальные данные и обработать каждую команду. Затем проверьте контракт равенства модели. Документация отдельно предупреждает, что при нарушении контракта equals поведение StateFlow не определено.