на данный момент у меня идет генерация компонентов которые разбиваются на разные пакеты в которых есть всего одна статичная функция, туда прокидываются методы из других пакетов на обработку ошибок, валидацию и action методы, состояние экрана хранится в централизованном классе, соответственно widget собирается через методы и тем самым код становится более чистым с учетом такого подхода (постарался объяснить).
Конечно извиняюсь за свой маленький опыт во flutter, так как изначально являюсь разработчиком java + spring, php + laravel и переходя на данную технологию чутка мое понимание изменяется
ну, в целом попробую данный подход, как по мне архитектура является чистой, провайдеры конечно же добавлю, но постараюсь полностью отказаться от bloc'ов и через 1.5 месяца уже можно будет посмотреть, отвалится ли приложение и дадут ли мне по **алу за такое