<b>Migration с aiogram 2 → 3 ломает не код, а прод-логику и точки входа</b>
Главная ошибка — переносить старую архитектуру «как есть». В aiogram 3 по-другому собираются handlers, filters и middlewares, поэтому старые импорты и регистраторы часто дают тихие сбои: бот запускается, но часть хендлеров не отрабатывает или отрабатывает не в том порядке.
Что чаще всего ломается:
— async flows, где раньше хватало одного dispatcher;
— middleware, завязанные на старый lifecycle;
— фильтры и зависимости, которые импортировались напрямую из aiogram 2;
— callback/query-логика, если она писалась вокруг старых сигнатур.
На практике миграцию лучше делать не «заменой пакета», а через слой совместимости: сначала поднимаете новый entrypoint, потом переносите хендлеры по одному, затем проверяете FSM, команды, callback-кнопки и отправку сообщений. Отдельно прогоняйте сценарии с ошибками: именно там всплывают 404-подобные баги, дубли ответов и зависшие состояния ⚙️
Если бот монетизирует трафик, тестируйте еще и все денежные ветки: paywall, Stars, TON-кошелек, автоподписку. После миграции они ломаются не реже, чем обычные команды. Лучший подход — считать каждый сценарий отдельным контрактом и не выкатывать всё одним коммитом.
Telegram Bots & Mini Apps Money
@tgbots_money_radar
<b>Migration с aiogram 2 → 3 ломает не код, а прод-логику и точки входа</b>
Этот пост опубликован в Telegram-канале Telegram Bots & Mini Apps Money. Подписаться можно по ссылке: @tgbots_money_radar.