Bun выпустил небезопасный AI-код
Недавно Bun переписал свое ядро на Rust. Также они добавили экспериментальную многопоточность. Это серьезные шаги. Однако методы, использованные для достижения этих целей, вызывают беспокойство.
Команда Bun признала, что большая часть переписывания на Rust была выполнена Claude AI. Это изменение добавило в кодовую базу более 13 000 блоков unsafe. Кроме того, релиз вышел без конкурентного сборщика мусора.
В системном программировании unsafe-код обходит механизмы безопасности памяти. Один блок unsafe — это риск. Тринадцать тысяч блоков от ИИ — это серьезный фактор риска.
Я понимаю потребность в скорости. Небольшие команды должны двигаться быстро, чтобы конкурировать с Node.js и Deno. Но скорость без осторожности опасна.
Каждый блок unsafe — это обещание корректного доступа к памяти. Когда код пишет ИИ, кто подписывает это обещание?
Риски очевидны:
- В коде ИИ отсутствует человеческая логика управления памятью.
- Высокая скорость генерации требует такой же высокой скорости проверки.
- Отсутствие конкурентного сборщика мусора делает многопоточные нагрузки нестабильными.
Runtime — это не просто библиотека. Это фундамент всего вашего приложения. Вы выбираете runtime, основываясь на доверии. Когда инфраструктура кажется экспериментальной, разработчики возвращаются к стабильным инструментам, таким как Node.js.
Я использую инструменты ИИ каждый день. Я отношусь к коду от ИИ так же, как к коду от младшего инженера. Он требует проверки, соответствующей степени его влияния.
Влияние многопоточности внутри runtime огромно. Тринадцать тысяч блоков unsafe требуют тринадцати тысяч веских причин. Им не нужны тринадцать тысяч формальных одобрений.
Амбициозность — это хорошо. Халатность при работе с системным кодом — это риск.
Стали бы вы запускать 13 000 сгенерированных ИИ блоков unsafe в своем продакшн-приложении? Каков ваш предел доверия к ИИ в вопросах инфраструктуры?
Опциональное обучающее сообщество: https://t.me/GyaanSetuAi