Стоит отметить что dispatch есть — описано в секции api, и объект Action создается — он не прокидывается в другие редюсеры, но передается в middleware для возможности создания «сайд-эффектов»
Если при обновлении одного todo не вызывать слушателей списка, то в данном случае не будет работать мета редюсер.
Что касается вложенности, такая структура легко преобразуется в плоский список — демо; это упростит структуру приложения и подписки будут работать ожидаемо
Какое-то у вас костыльно-ориентированное программирование получается — костыль для браузера, костыль для сервера; вместо того, чтобы использовать нормальный инструмент, который хорошо справляется с работой в обоих случаях
Насчет sprute — специально, вы правы. А насчет английского — мне пока уровень владения не позволяет — много ошибок в письменной речи. Собираюсь переписать когда буду владеть языком на должном уровне.
Довольно большой процент задач все-таки является одинаковым — выборка/обработка/отображение данных. Например, поисковый движок можно сделать изоморфным.
Будет такое. Но архитектура фреймворка позволяет разбивать код на изоморфный и специфичный для каждой платформы — подобные ограничения можно обходить без использования костылей.
Архитектура фреймворка позволяет легко добавить такой функционал, если есть необходимость, используя любую реализацию (cellx например). Нет необходимости встраивать это по умолчанию на мой взгляд (это может быть не нужно в некоторых проектах). Я сосредоточился в основном на гибкости и возможности расширения и стараюсь сохранять фреймворк максимально компактным.
Что касается вложенности, такая структура легко преобразуется в плоский список — демо; это упростит структуру приложения и подписки будут работать ожидаемо