« Tüm yayınlar

Bun'ın Milyon Satırlık Yapay Zeka Yeniden Yazımı: Testler Geçti, 19 Hata Çıktı

Bun'ın Zig'den Rust'a yapay zeka destekli milyon satırlık geçişi, testler geçse de 19 regresyon çıkardı; doğrulama standartları tartışmaya açıldı.

Claude Code'un içinde çalışan JavaScript motoru Bun, Mayıs ayında yaklaşık bir milyon satırlık Zig kodunu Rust'a taşıdı; kodun büyük kısmını insan değil yapay zeka yazdı. Olay basında "yapay zeka hızında birleştirme" olarak geçti, ancak sonrasında üç farklı anlatı ortaya çıktı: Bun ekibi bunu bellek güvenliği zorunluluğu olarak sundu, Zig'in yaratıcısı ilişkinin zaten bittiğini söyledi, eleştirmenler ise kararın pazarlama odaklı olduğunu savundu.

Asıl mühendislik dersi tartışmanın gürültüsünün altında yatıyor. Bun'ın 60 bin testten oluşan, 1,38 milyon iddialı test paketi tamamen yeşil yandı, ama üretime 19 regresyon sızdı. Bunların hiçbiri özensiz kod değildi; hepsi Zig'den Rust'a birebir çevrilmiş, ancak iki dilde farklı anlam taşıyan kalıplardı: debug_assert makrosunun release'te silinmesi, dilim dönüştürmede panik davranışı farkı, format string çözümleme sırasının değişmesi gibi. Test paketi ne kontrol etmeyi düşündüyseniz onu doğrular; yeniden yazım hataları tam olarak düşünmediğiniz yerde saklanır.

Karşılaştırma noktası Ladybird tarayıcısının Rust'a geçişi oldu: aynı araçlarla ama çok daha sert bir standartla, eski ve yeni sistemin çıktısını byte byte, gerçek zamanlı olarak karşılaştırarak. Assertion kapsamı size yeni kodun hatırladığınız davranışları yaptığını söyler; çıktı eşdeğerliği ise eski kodun -kimsenin fark etmediği önemli davranışları dahil- aynı şeyi yaptığını garanti eder. Platform sahipleri için sonuç net: dil değiştirme maliyeti artık çok düştü, ama "testler geçti" doğrulama anlamına gelmiyor.