Migration с aiogram 2 → 3: что ломается в проде и где теряют деньги
Главная ошибка — переносить код как есть. В aiogram 3 меняются не только импорты, но и логика приложения: Dispatcher, Router, фильтры, middleware, типы апдейтов. Если у вас бот жил на «магии» из хендлеров и глобальных состояний, после миграции он начнёт молча пропускать части сценариев.
Что чаще всего ломается:
— регистрация хендлеров: старые декораторы и пути импорта не совпадают;
— FSM: состояния и storage нужно перепроверять отдельно;
— middleware: порядок и точки входа стали строже;
— callback/data: если парсили строки небрежно, кнопки начнут отваливаться.
На практике больнее всего бьют три вещи: 1) неявные зависимости между модулями, 2) обработка ошибок, 3) фоновые задачи. В aiogram 2 это часто работало «по привычке», в aiogram 3 такие места лучше выносить в отдельные слои: роутинг, сервисы, storage, job-процессы.
Перед релизом прогоняйте не только happy path, но и сценарии: повторный клик по кнопке, пустой callback, потерю state, перезапуск процесса, одновременные апдейты. Именно там обычно вылезает рассинхрон, из-за которого бот теряет лиды или зависает на оплате.
Переносите по модулю, а не «весь бот за ночь»: сначала роутинг и FSM, потом middleware, потом платежные и критичные ветки.
Telegram Bots & Mini Apps Money
@tgbots_money_radar
Migration с aiogram 2 → 3: что ломается в проде и где теряют деньги
Этот пост опубликован в Telegram-канале Telegram Bots & Mini Apps Money. Подписаться можно по ссылке: @tgbots_money_radar.