Ajan Tabanlı Yazılım Mühendisliği: Spec Yetmez, Mimari Kayboluyor
Kodlama ajanlarının asıl zayıflığı kod üretimi değil; mimari hafıza kaybı ve spec-driven development'ın sınırları üzerine mühendislik analizi.
Kodlama ajanlarının asıl sorunu kod üretmek değil, gereksinimi doğru yorumlamak. Bir fonksiyonu kusursuz yazabiliyor ama iş kuralını kaçırıyor, tüm testleri geçiyor ama hiçbir testin kapsamadığı bir varsayımı bozuyor. Yazar, 100 binin üzerinde satırlı projelerde ajanların önce hız kazandırdığını, sonra kod tabanının insan zihninde tutulamayacak kadar büyüdüğünü ve mimarinin sessizce çürümeye başladığını anlatıyor.
Sorunun kökü şu: git, pull request, kod incelemesi gibi tüm mühendislik altyapısı, uzun süreli hafızası olan, bağlamı bilen ve sonuçtan sorumlu tutulan insan geliştiriciyi varsayıyor. Ajanlar bu varsayımların hiçbirini karşılamıyor -oturum bitince bağlam siliniyor, yanlış hedefi saatlerce kararlılıkla sürdürebiliyor, ürettiği koddan hesap vermiyor. Spec-driven development (niyet→spec→plan→görev→kod) bu boşluğu kısmen kapatıyor ama spec tek başına izin, sandbox, doğrulama ve sorumluluk sorunlarını çözmüyor.
Yazının önerisi: spec'i sistemseviyesinde kalıcı gerçek olarak değil, tek bir değişikliğin ömrü kadar yaşayan bir belge olarak ele almak. Mekanikleştirilebilir kurallar (tip sözleşmeleri, modül sınırları) teste ve CI'ya, mekanikleştirilemeyenler (mimari kararların gerekçesi) ise ayrı bir karar kaydına taşınmalı. Asıl döngü niyet-uygulama-kanıt üçlüsü olmalı; tek bir ajanın ürettiği spec, kod ve testler aynı yanlış anlamayı paylaşabilir.