Yapay Zeka ile Yazılan Kodlar Neden Kayıyor? Sözleşme Tabanlı Geliştirme Nasıl Çözer?

Yapay Zeka ile Yazılan Kodlar Neden Kayıyor? Sözleşme Tabanlı Geliştirme Nasıl Çözer?

May 13, 2026 ai coding contract-driven development code drift detection semantic versioning ai governance developer tools ai engineering best practices

AI ile Geliştirmenin Gözardı Edilen Sorunu: Drift

İlk ayını yaşadıysan Claude veya Cursor'la çalışırken, o sihirli hissi bilirsin—özellikler hızla çıkıyor, boilerplate kod anında ortadan kalkıyor, hepsi rüya gibi gidiyor. İkinci ay geldiğinde ise işler farklı bir hal alıyor. Kod derleniyordur, testler geçiyordur, deployment sorunsuz gitmişizdir. Ama bir şeyler ters. Yazdığın kod artık istediğin şeyi tam olarak yansıtmıyor gibi hissediyorsun.

Bu tembelliktir değil. Buna drift denir—kodun yavaş yavaş hedefinden sapması.

Son araştırmalar çok korkutucu bir tablo sunuyor. SlopCodeBench verileri (2026 Mart), AI ajanlarının neredeyse %90'ının uzun vadeli görevlerde gittikçe daha karışık ve yanlış çıktı ürettiğini gösteriyor. CMU'nun Cursor çalışması ilk 3-5 haftalık hızlanmanın iki aydan sonra yok olup, bunun yerine %30 daha fazla uyarı ve %41 artan kompleksiteyle bıraktığını ortaya koyuyor. En trajiği ise: yüz binlerce commit'te, AI'ın eklediği sorunların %22,7'si son revizyonda bile hala geziyor.

AI kırılmış değil. Yönetim modeli kırılmış.

Kimsenin Konuşmadığı Üç Hata Türü

Anlamsal Sürüklenme

Ürün tanımın "hafif ve sezgisel" diyor. Üç ay ve elli prompt sonra sistem hala teknik olarak o tanımı inşa ediyor—ama artık 5MB ağırlığında ve çalışması için üç farklı microservice gerektiriyor. Konseptler sessizce değişti. Kimse bunu onaylamadı. Kod derleniyordur. Prodüksiyona geçene kadar kimse fark etmez.

Görünmez Yönetişim

O mimari karar nereden çıktı? Sohbet geçmişinden. Hangi spec versiyonu esas alındı? Slack'i kontrol et. API'nin nested nesneler döndürmesi kararını gerçekten kim verdi? Muhtemelen bunu soran mühendis. Ama hiçbir inceleme logu yok, onay izi yok, "kim karar verdi ve ne zaman" sorusunun cevabı yok—denetçiler veya müfettişler sorar da işte o zaman koca bir sorun.

Bağlam Parçalanması

Kod tabanın üç sprint öncesinde AI'ın context window'unu aşmıştı bile. Artık hiçbir ajan bütün resmi görmüyor. Sahiplik belirsizleşti. Sonra tahminler başladı. Şimdi sistem mimarisinin on farklı yorumu paralel branch'lerde yaşıyor, hepsi "onaylı" çünkü kimse bunları bütünsel olarak inceleyemiyor.

Sorun Tanıma Dalgası

2026'nın ilk beş ayında aynı sorun altı değişik isimle ortaya çıktı:

  • Intent borcu (Storey, Kanada Araştırma Başkanı)
  • Kognitif borç (MIT Media Lab)
  • Denetim paradoksu (Anthropic)
  • Yapı kırılganlığı (HackerNews'te viral)
  • Anlama borcu (O'Reilly)
  • AI köpek (Baltes ve ekibi)

Herkes aynı yaraya baktı. Kimse çare bulmadı.

Ta ki kontrat temelli geliştirme sahneye çıkana kadar.

Spec'ten Kontrata Geçiş

Spec temelli geliştirme ilerleme vardı. İstediğini yazıyorsun, sistem üretiyor, herkes gönderiyor. Ama spec'ler sessizce eski kalıyor. Wiki'de uyuşup kalırlar. Kodun spec'le hala eşleşip eşleşmediğini kimse bilmez çünkü aralarında canlı bir bağ yok.

Kontrat temelli yöntemi ters çevirir.

Kodu spec'e karşı değerlendirmek yerine, kod canlı bir kontrata karşı üretilir ve değerlendirilir—katmanlı bir yapı:

  • Niyet: Sistem ne için (senin sahipliğinde ve onayında)
  • Ürün & UX: Kullanıcı ne görüyor (niyet'ten üretilir, sen onay kapısını belirler)
  • Sistem: Mimarisi nasıl (niyet ve ürün'den üretilir, sen onay kapısını belirler)

Her katman hash'lenmiş. Her katman izlenebilir. Drift tespit edildiğinde (ve edilecek), elinde şunlar olur:

  1. Tespit: Her onaylı öğe parmak izi alınmış; drift otomatik olarak sonraki kontrolde çıkar
  2. Uyum: Tanımlı çözüm yolu, tahmin oyunu değil
  3. Yeniden Değerlendirme: Kod kontrata karşı yeniden değerlendirilir, tek başına onaylanmaz

Esneklik Karşılaştığında Disiplin ile

Kontrat temelli sistemler beş moda ayrılıyor, proje olgunluğuna göre:

Vibe — Prototype hızı. Tek onay kapısı (niyet). Geri kalan otomatik. Hızlı gönder, hızlı öğren.

Ürün Odaklı — Niyet ve ürün senin. Sistem otomatik. Tasarım-merkezli ekipler için ideal.

Teknoloji Odaklı — Niyet ve sistem senin. Ürün otomatik. Altyapı yoğun projeler için.

Tasarım Odaklı — Niyet ve UX senin. Mockup'lar ürün spec'ini yönlendiriyor. Kullanıcı-merkezli ekipler için.

Expert — Her katman açık. Hiçbir şey otomatik. Sıfır güven. Düzenlemeye tabi endüstriler veya kritik sistemler için.

Birinci gün bütün beşine ihtiyacın yok. Vibe'dan başla. Kod tabanın hakkını verince yükseltveri.

Şu An Neden Önemli

Insansız fabrika geliştirmesi geliyor. Tüm sistemler minimum insan müdahalesiyle ajanlar tarafından yazılacak. Soru AI'ı kod üretimi için kullanıp kullanmayacağın değil—görünürlüğün ve kontrolün olup olmayacağı.

Spec temelli iş niyeti yakalar. Kontrat temelli iş onu korur.

Fark birikir. Model eğrisi hızlandıkça, zamanla daha sıkı ve tutarlı hale gelen sistem (kontrat temelli) sessizce borç biriktirenden (spec temelli) kat kat daha iyi performans gösterir.

Kendisinin ne olması gerektiğini bilen, drift'i tespit edebilen ve çözüm yolu tanımlı codebase—işte bu, AI'a karşı değil, AI'la birlikte ölçeklenen codebase.

Özet

Eğer AI tarafından üretilmiş kod prodüksiyona gönderiyorsan, kendine sor:

  • Bu kararı neden aldığımız takip edebilir miyim?
  • Kodumun niyet'ten saptığını biliyor muyum?
  • Saptığında düzeltmek için bir prosedürüm var mı?

Herhangi birine "tam olarak değil" diyorsan, kontrat katmanına ihtiyacın var. Yarın değil, şimdi.


Daha derinlemesine araştırmak ister misin? Açık kaynaklı çözümler Claude ve Python 3.10+ ile çalışıyor. Harici bağımlılık yok. MIT lisansı. Spec temelli geliştirmeyi geride bırakmaya hazır takımlar için sunuluyor.

AI'dan gelen hız kazanımları gerçek. O kazanımları tutarlı tutmak ise yeni sınır.

Read in other languages:

RU BG EL CS UZ SV FI RO PT PL NB NL HU IT FR ES DE DA ZH-HANS EN