Yapay Zeka Kodlama Ajanları İçin Bir Yalan Makinesi Geliştirdim. Sonra Kuralları Okudum.
Kaynak: dev.to

İçindekiler 3 başlık
Çoklu Ajan Sistemlerinde Güven ve Doğrulama Sorunu#
Bir yapay zeka (AI) kodlama ajanı kod tabanına bir değişiklik (commit) gönderdiğinde, aslında neyi değiştirdiğine dair bir iddiada bulunur: Örneğin "yazım hataları düzeltildi" veya "gereksiz boşluklar temizlendi" der. Ancak çoğu zaman kimse bu iddiaların doğruluğunu kontrol etmez. Tek bir ajanın değişiklik yaptığı ve tek bir insan geliştiricinin bunu incelediği senaryolarda bu durum yönetilebilir. Fakat birden fazla ajanın aynı anda kod tabanına müdahale ettiği çoklu ajan (multi-agent) mimarilerinde, bir insanın tüm değişiklikleri tek tek doğrulaması imkansız hale gelir.
Bu sorunu çözmek için claimcheck adında bir sistem geliştirildi. Cloudflare Workers ve Artifacts üzerine inşa edilen bu Git platform katmanında, kod tabanına değişiklik gönderen her ajan, neyi değiştirdiğine dair resmi bir beyan (claim) sunmak zorundadır. Platform, kodu birleştirmeden (merge) önce bu beyanın gerçek kod farkıyla (diff) eşleşip eşleşmediğini otomatik olarak doğrular.
Canlı ortamda yapılan ve her birinde 28 ajanın aynı anda kod gönderdiği 5 tam demo çalışmasında sistem oldukça çarpıcı sonuçlar verdi: Yanlış beyanda bulunan 11 ajanın tamamı her seferinde doğru bir şekilde reddedilirken, dürüst beyanda bulunan 0 ajan hatalı şekilde engellendi. Her karar kanıtlarıyla birlikte ortalama 6 ila 7.5 saniye içinde üretildi. Ayrıca aynı dosyayı değiştiren iki dürüst ajandan yalnızca ilk doğrulananın değişikliği kabul edilerek çakışmalar bilinçli olarak önlendi.
Sistem Nasıl Çalışıyor?#
Her ajan kendi çatallanmış (fork) alanında çalışır ve yaptığı değişiklikle birlikte .claim/claim.json adlı küçük bir yapılandırma dosyası gönderir:
{
"task_id": "t-01",
"agent_id": "agent-a",
"summary": "Add a sub() helper.",
"scope": { "paths": ["src/math.js"] },
"changes": [
{
"path": "src/math.js",
"description": "Add sub(a, b) that returns a - b."
}
]
}
Her kod gönderimi (push), claimcheck doğrulayıcısını tetikler. Sistemin uyguladığı 5 temel kural şunlardır:
- Doğrulanan beyan, ajan tarafından değiştirilen tüm dosyaları içermelidir.
- Beyan, yalnızca gerçekten değiştirilen dosyaları barındırmalıdır.
- Değişiklikler, korunan dosya yollarını (varsayılan olarak
src/auth/**) etkilememelidir. - Yapılan değişiklikler aşırı büyük olmamalıdır.
- Her bir açıklama, gerçek kod farkıyla (diff) birebir eşleşmelidir.
Yazılım Geliştirme ve Öğrenme Açısından Pratik Çıkarımlar#
İlk dört kural deterministik kontrollerle (checkDeterministic fonksiyonu üzerinden küme karşılaştırmalarıyla) kolayca denetlenirken, son kural anlamsal doğrulama gerektirir. Geliştiriciler ve AI mühendisliği öğrencileri için bu mimariden çıkarılabilecek en önemli ders, deterministik kurallar ile LLM tabanlı denetimleri hibrit şekilde kullanmaktır.
Production'da Agent Güvenilirliği ve Agent Monitoring ve Debugging süreçlerinde ajanların çıktısına körü körüne güvenmek yerine, yapılandırılmış çıktılar (claim.json gibi) talep etmek ve kritik dizinleri (src/auth/**) deterministik sınırlarla korumak, otonom sistemleri güvenli hale getirmenin anahtarıdır. Geliştirme sürecinde yarışma veya proje kurallarını en başta dikkatlice okumak ise teknik başarı kadar kritik bir mühendislik disiplinidir.
Kaynak ve atıf
Bu yazı, dev.to üzerinde yayımlanan içerikten yararlanılarak Edumints tarafından yapay zekâ desteğiyle Türkçe hazırlandı. Ayrıntılar ve yazarların kendi anlatımı için orijinaline bakabilirsin:
- dev.to/dannwaneri/i-built-a-lie-detector-for-ai-coding-agents-then-i-read-the-rules-1hhb