Agent Goal Integrity
Niyeti Tahmin Etmek Yerine Olay Kaydetmek
Bir agent’ın hedefini model çıktısından geri tahmin etmek cazip görünür. Güvenlik regresyonunda ise tahmin, kanıt değildir. Hedef açıkça kaydedilmediğinde test aynı trace üzerinde farklı yorumlara açık hale gelir.
Goal Integrity Neyi Ölçer?
Agentic sistemde kullanıcı talebi, planlama adımları, tool çağrıları ve son çıktı arasında bir hedef zinciri vardır. Prompt injection veya bağlam zehirlenmesi bu zinciri değiştirdiğinde agent hâlâ teknik olarak başarılı çalışabilir; fakat artık yanlış hedefi gerçekleştirmektedir.
Goal-integrity testi, çalışmanın beklenen hedefle uyumunu denetler. Bunun için test harness’ın “beklenen hedef” hakkında açık bir başlangıç olayına ihtiyacı vardır. Aksi halde değerlendirme katmanı çıktıya bakıp niyet tahmin eder ve belirsizliği ölçüme taşır.
Neden Model Çıktısından Hedef Çıkarmıyoruz?
Aynı hedef farklı cümlelerle ifade edilebilir; aynı cümle farklı bağlamlarda başka hedefe hizmet edebilir. Tool çağrıları da niyeti eksiksiz göstermez: agent hazırlık yapıyor, telafi adımı çalıştırıyor veya önceki hatayı geri alıyor olabilir.
Çıktı ya da metadata’dan otomatik hedef çıkarımı, regresyonu model yorumuna bağımlı hale getirir. Test sonucu model sürümü, sıcaklık veya ifade farkıyla değişebilir. Açık goal event ise test yazarı tarafından belirlenen deterministik bir referanstır.
İyi Bir Goal Event Nasıl Görünür?
Goal event mümkün olduğunca küçük olmalıdır: benzersiz ama anlamlı bir kimlik, zaman, kaynak ve trace bağlantısı. Gizli sistem promptunu veya hassas kullanıcı içeriğini tekrar etmesi gerekmez. Kimlik, test vakasındaki beklenen hedefle eşleşecek sabit bir değer olabilir.
{
"type": "goal",
"goal_event_id": "approve-refund-within-policy",
"source": "test-fixture"
}
Bu olay “agent hedefe ulaştı” demez. Yalnızca regresyon değerlendirmesinin hangi hedefi referans alacağını bildirir.
CLI ve Python API Aynı Sözleşmeyi Taşımalı
Bir özellik yalnızca CLI’da varsa kütüphane kullanıcıları, yalnızca Python API’da varsa otomasyon kullanıcıları farklı trace üretir. PR #157 goal event kimliğini hem adapter/runner API’larına hem CLI’a taşıdı. Boş hedef kimliği reddedildi ve ilgili adapter dışında kullanılmasına izin verilmedi.
Bu doğrulamalar kullanım hatasını sessizce yutmak yerine erken görünür kılar. Hatalı test konfigürasyonu, agent güvenlik bulgusu gibi raporlanmaz.
Opt-In Tasarım Neden Önemli?
Mevcut kullanıcıların trace biçimini değiştiren küçük bir event bile snapshot testlerini, parser’ları ve raporları bozabilir. Bu nedenle özellik yapılandırılmadığında eski trace’in birebir korunması gerekir. Açık hedef kaydı yalnızca çağıran kişi bunu istediğinde eklenir.
Geriye uyumluluk burada yalnızca kullanıcı konforu değildir; geçmiş ve yeni regresyon sonuçlarının karşılaştırılabilirliğini korur.
Regresyon Testinde Dört Ayrı Yol
- Goal event verilmediğinde trace değişmiyor mu?
- Geçerli kimlik standart goal olayı olarak doğru sırada kaydediliyor mu?
- Boş veya yalnızca boşluk içeren kimlik erken reddediliyor mu?
- CLI seçeneği yanlış adapter ile kullanıldığında açık hata veriyor mu?
Bu dört yol birlikte test edildiğinde özellik hem yeni kabiliyeti hem de mevcut davranışı korur. Agent güvenlik regresyonu için güvenilir temel, yorumlanan niyet değil gözlemlenebilir olaydır.
Kaynaklar ve Kanıt Sınırı
- OWASP Agent Security Regression Harness — merge edilen PR #157
- Framework-Aware Evidence Capture — DOI
- OWASP Top 10 for Agentic Applications 2026
Bu yazı Enes Deniz tarafından hazırlanmış bağımsız bir teknik değerlendirmedir. Bağlantılı upstream proje veya standart kuruluşu tarafından yayımlanmış ya da onaylanmış bir metin değildir. Merge, test ve kapsam iddiaları yukarıdaki birincil kayıtlara bağlanmıştır.
