We Tried ty for Performance. It Found Real Bugs
Dagster заменил Pyright на новый инструмент проверки типов от Astral — ty,
во всём монорепозитории Dagster.
В результате время проверки типов в CI сократилось примерно с 12 минут до 2 минут на каждый запуск, это было ожидаемо.
Чего команда не ожидали, так это того, что ty обнаружит реальные ошибки времени выполнения (runtime bugs), которые Pyright ранее пропустил.
Это также стало отличным примером того, как много можно сделать с помощью агентных систем.
В Dagster поддерживается более 100 пакетов, и все их нужно было перевести на ty.
Первые несколько миграций выполнялись вручную, пока разбирались в тонких различиях между инструментами и определяли, какие подавления предупреждений (suppressions) безопасны. Но после того как рабочий процесс был отлажен, команда смогла запускать несколько агентов параллельно, чтобы раскатить изменения на все оставшиеся библиотеки.
Если вам интересно узнать больше о проверке типов или о том, как ИИ может повышать продуктивность разработчиков в крупных репозиториях, обязательно ознакомьтесь с этим материалом.
@tldr_data
Post #99
104