İçeriğe geç

20EkipZamanla

Hangi çıktıyı kimin onayladığını kaydet

AI'ın hazırladığı bir iş yanlış gidince onu kimin, hangi hâliyle ve neye bakarak onayladığı bilinmiyor, sorumluluk AI ile insan arasında kayboluyor. Onayı kişiye, içeriğin tam sürümüne ve yapılan kontrole bağlayan kayıt bu soruyu cevaplar.

Kimlik
TD-108
Seviye
Hassas Para, sağlık, hukuk, işe alım ya da kişisel veriye dokunan üründe gerekli.
Yüzey
Yan panel, Arka plan ajanı
Dayanak
Gerçek olay
Son inceleme
28 Ekim 2026

Ajanına ver

Claude Code, Cursor ya da Codex'e yapıştır. Metinlerin tamamı aşağıda, Ajanına ver bölümünde.

Küçük bir bakım hangarında beyaz-gri pervaneli bir uçak duruyor. Turuncu, tek gözlü AI figürü elinde anahtarla pervanenin yanında bekliyor. Gözlüklü bir kadın pervane göbeğine asılı küçük bir karta kendi kişisel mührünü basıyor.

30 saniyede dene

Bu anı kendi ürününde yarat ve ne olduğuna bak.

  1. Ürününde AI'ın hazırladığı ve bir insanın onayıyla dışarı giden bir çıktı bul, bir müşteri yazısı, bir rapor ya da bir kod değişikliği. Onay kaydını aç.
  2. Kayıtta onaylayanın adı mı var, yoksa bir ekip adı ya da ortak bir hesap mı? Onaylayanın neye baktığı yazıyor mu?
  3. Onaydan sonra AI'a metinde küçük bir değişiklik yaptır. Onay hâlâ geçerli görünüyor mu?
  4. İşi AI'a veren kişiyle onaylayan kişiyi karşılaştır. Aynı kişi kendi isteğini onaylayabiliyor mu?

Sorun

Bir hukuk bürosunda stajyer avukat asistandan müvekkile gidecek bir görüş yazısı hazırlatıyor. Yazı onaya gidiyor, onaylanıyor ve gönderiliyor. Bir süre sonra müvekkilin avukatı yazıdaki bir emsal kararın söylenen şeyi söylemediğini fark ediyor. Büro içinde aynı soru dolaşmaya başlıyor: bunu kim onayladı? Stajyer onaydan geçtiğini söylüyor. Onaylayan ortak yalnız üslubuna baktığını söylüyor. Kayıtta “Hukuk ekibi, onaylandı” yazıyor.

AI bu belirsizliği büyütüyor. Yazının yazarı sorumluluk taşıyamayan bir model. İnsan ise yazıyı yazmadı, yalnız onayladı ve neye bakarak onayladığını kimse kaydetmedi. Asistan onaydan sonra kaynakçayı bir kez daha güncellemiş olabilir. Onaylanan metin ile gönderilen metin aynı mı, kayıt bunu da söylemiyor.

Onay bir beyandır: bu kişi, bu metni, şu kontrolden sonra uygun buldu. Bu üç parçadan biri kayıtta yoksa yanlış giden iş kimsenin işi olmaz.

Neden atlanıyor

Ürünler onayı bir durum değişikliği olarak tutar. Taslak onaylandıya geçer ve iş biter. Kimin geçirdiği, hangi sürümü geçirdiği ve geçirmeden önce neye baktığı ayrı alanlar ister ve çoğu ürün bu alanları hiç tasarlamaz. Ekip hesabı ya da paylaşılan giriş de işi kolaylaştırır, çünkü onay bekleyen işi o gün kim boştaysa o geçirir.

İkinci neden, AI'ın içeriği onaydan sonra da değiştirmesi. Kullanıcı küçük bir düzeltme ister, asistan bir paragrafı yeniden yazar, bir otomasyon kaynakçayı tazeler. Onay belgeye bağlı olup sürüme bağlı değilse, kimsenin görmediği bir metin onaylı görünerek dışarı çıkar.

Üçüncü neden, onay türlerinin tek düğmede birleşmesi. “Üslubuna baktım” ile “kaynakları tek tek açtım” aynı tıklamayla kaydedilir. AI'ın yazdığı metinde asıl risk çoğu zaman iddiada, uydurulmuş bir kaynakta ya da yanlış bir tutarda durur. Kayıt hangi kontrolün yapıldığını ayırmaz. Hızlı onay da verimlilik sayılır, panoda yalnız onay süresi görünür.

Desen

Onay bir kişinin, içeriğin belirli bir sürümü hakkında, belirli bir kontrole dayanarak verdiği beyandır. Kayıt kişiyi, sürümü ve kontrolü birlikte tutar ve içerik değişince beyan düşer.

  1. Onayı kişiye bağla. Kayıt onaylayanın adını ve rolünü taşır. Ekip hesabı, ortak giriş ya da servis hesabı onay veremez.
  2. Onayı sürüme bağla. Onay içeriğin o anki hâline, örneğin bir özetine (hash) bağlanır. İçerik değişince onay düşer ve iş yeniden onaylanmadan dışarı gitmez. Onaylayan değişikliğin farkını görür.
  3. Neye bakıldığını yaz. Onayın türü (üslup okuması, içerik incelemesi, test) ve onaylayanın baktığı şeyler (açılan kaynaklar, çalışan testler, kısa bir not) kayda girer. Okur onayın neyi kapsadığını kayıttan anlar.
  4. AI onaylamaz, isteyen kendi işini onaylamaz. AI'ın kimliği onay alanına yazamaz. Hassas işte işi AI'a veren kişi çıktıyı kendisi onaylayamaz, onay başka bir yetkili kişiden gelir.
  5. Onaysız geçişi de kaydet. Onay beklemeden giden çıktı “onaysız” diye kayda geçer. Sessizlik ya da zaman aşımı onay sayılmaz.
  6. Kaydı silinmez tut. Onay kayıtları yalnız eklenir ve çıktıyla aynı süre saklanır. Düzeltme yeni bir kayıttır.

Desen sorumluluğu yeniden dağıtmaz. Kimin sorumlu olduğunu kurum ve hukuk belirler, kayıt onu bulunur kılar.

Önce ve sonra

Aynı görüş yazısı, iki onay geçmişi. Soldaki onayı bir ekip hesabına yazıyor, onaylanan sürümü ve yapılan kontrolü tutmuyor. Sağdaki onayı kişiye, sürüme ve kontrole bağlıyor, asistanın onaydan sonraki değişikliğinde onayı düşürüp gönderimi durduruyor ve işi isteyen kişinin kendi isteğini onaylamasına izin vermiyor.

Bir hukuk bürosunda stajyer avukat asistandan müvekkile gidecek bir görüş yazısı hazırlatıyor. Yazı onaylanıp gönderildikten sonra içindeki bir emsal karar atfının yanlış olduğu çıkıyor.

Önce

Görüş yazısı · onay geçmişi

  1. Taslak hazırlandı (tamamlandı)asistan · 3 Eki 15.02
  2. Onaylandı (tamamlandı)Hukuk ekibi · 3 Eki 16.20
  3. Müvekkile gönderildi (tamamlandı)3 Eki 17.05
  4. Kullanıcı: Yazıdaki emsal karar atfı yanlış çıktı. Bunu kim kontrol etti, yazının hangi hâlini onayladı?
  5. AI: Onay kaydında ekip hesabı görünüyor. Onaylayan kişi, onaylanan sürüm ve yapılan kontrol kayıtlı değil.
  1. Onay bir ekip hesabına yazılmış. Kimin onayladığı, yazının hangi hâlini onayladığı ve atıfları açıp açmadığı bilinmiyor.
  2. Sorumluluk sorusu stajyer, onaylayan ve asistan arasında dolaşıyor. Asistanın onaydan sonra yazıyı değiştirip değiştirmediği de kayıtta yok.
Sonra

Görüş yazısı · onay geçmişi

  1. Sürüm 3 · taslak (tamamlandı)hazırlayan: asistan · isteyen: Deniz Kaya · 3 Eki 15.02
  2. Sürüm 3 · onaylandı (tamamlandı)Av. Selin Aydın · içerik incelemesi · 4 atıftan 3'ü açıldı · 16.20
  3. Sürüm 4 · onay düştü (durduruldu)asistan 16.41'de kaynakçayı değiştirdi · fark: 1 atıf
  4. Uyarı: Sürüm 4 onaysız. Gönderim yeniden onaya kadar durdu. Açılmamış bir atıf var.
  5. Deniz Kaya bu yazıyı onaylayamaz · işi asistana kendisi verdi
  6. Farkı gösterSelin Aydın'a onaya gönder
  1. Onay kişiye, yazının tam sürümüne ve yapılan kontrole bağlı. Kayıt onaylayanın dört atıftan üçünü açtığını da söylüyor.
  2. Asistanın onaydan sonraki değişikliği onayı düşürdü ve gönderimi durdurdu. İşi isteyen kişi kendi isteğini onaylayamıyor.

Örnek ekran. Ürün, ad ve sayılar kurgusal.

Piyasada

GitHub korumalı dallarda onayı içeriğin hâline bağlıyor. Bir değişiklik isteği onaylandığında GitHub o anki farkın durumunu kaydediyor1. İsteğe bağlı bir ayarla fark sonradan değişirse onay bayat sayılıp düşüyor ve iş yeniden onaylanmadan birleştirilemiyor. Bir başka ayar son değişikliğin onu gönderen kişiden başka biri tarafından onaylanmasını şart koşuyor.

GitHub'ın kodlama ajanı bu kuralları ajana da uyguluyor. Ajan kendi değişiklik isteğini onaylayamıyor ve birleştiremiyor2, ajandan isteği açmasını isteyen kişi de o isteği onaylayamıyor. Birleştirmeden önce bir insanın incelemesi şart.

Linux çekirdeği onayın türünü etiketle ayırıyor. Acked-by, bakımcının yamanın girmesine razı olduğunu söylüyor ve belgeye göre Reviewed-by kadar derin bir inceleme anlamına gelmeyebilir3. Reviewed-by veren kişi yamayı teknik olarak incelediğini beyan ediyor. Yama sonraki sürümde önemli ölçüde değişirse bu etiketler artık geçerli olmayabilir ve kaldırılmalı. AI yardımıyla yazılan kodda çekirdeğin kuralı açık: AI ajanları Signed-off-by etiketi ekleyemez, gönderen insan AI'ın ürettiği bütün kodu incelemek ve katkının bütün sorumluluğunu üstlenmek4 zorunda.

Üç örnek de kod deposunda. Ofis belgesinde, müşteri yazısında ve karar ekranında aynı alanlar çoğu zaman yok. Onay bir durum etiketi olarak kalıyor.

Kanıt

Mata v. Avianca, Haziran 2023. Mahkemeye sunulan cevap dilekçesinde ChatGPT'nin uydurduğu kararlar vardı. Dilekçeyi avukat Peter LoDuca imzalayıp sundu, ama mahkemenin tespitine göre yazarı o değildi5. Araştırmayı ve yazımı meslektaşı Steven Schwartz yapmıştı. LoDuca metni akış ve dil bilgisi hatası açısından okuduğunu söyledi. İmzalamadan önce dilekçede atıf yapılan kararların hiçbirine bakmamıştı. Mahkeme yürürlükteki kuralların avukatlara dilekçelerinin doğruluğunu sağlama konusunda bir bekçi rolü5 verdiğini yazdı ve avukatlara ve büroya yaptırım uyguladı. İmza sorumluluğu taşıdı, ama imzanın neye bakılarak atıldığını söyleyen bir kayıt yoktu. O bilgi ancak duruşmada, ifadeyle ortaya çıktı.

Avrupa Birliği yüksek riskli sistemlerde kimin doğruladığını kayıt konusu yapıyor. Yapay Zekâ Yasası, sistemi kullanan kurumdan insan gözetimini gerekli yetkinliğe, eğitime ve yetkiye sahip kişilere6 vermesini istiyor. Uzaktan biyometrik tanıma sistemlerinde sonucu doğrulayan kişilerin kimliği sistemin kaydına girmek zorunda7. Aynı sistemlerde tanıma sonucu yetkin kişilerce ayrıca doğrulanıp onaylanmadan8 ona dayanan bir karar alınamıyor. Kolluk, göç ve sınır işleri için istisna var.

Bu kaynakların hiçbiri onay kaydının hatayı azalttığını ölçmüyor. Mahkeme kararı sorumluluğun imzada kaldığını, yasa ve GitHub'ın uygulaması onaylayanın kimliğinin ve onaylanan hâlin kayda değer bulunduğunu gösteriyor. Etkiyi kendi ürününde aşağıdaki sinyallerle ölç.

  • 22 Haziran 2023Avukatlar ChatGPT'nin uydurduğu altı mahkeme kararını dilekçeye koydu

Ölçüm

  • Kişisiz onay. Ekip hesabı, ortak giriş, servis hesabı ya da otomasyonla verilen onaylar. Hedef sıfır.
  • Bayat onayla giden iş. Onaydan sonra değişip yeniden onaylanmadan dışarı giden çıktılar. Hedef sıfır.
  • Onayın kapsamı. Onay başına geçen süre ve açılan kaynakların payı. Saniyeler süren ve hiçbir kaynağı açmayan onaylar imzadan ibaret. Bu onayları türüne göre ayır, üslup okuması içerik incelemesi gibi sayılmasın.
  • Kendi isteğini onaylama. Hassas işlerde işi AI'a veren kişinin kendi onayladığı çıktılar. Hedef sıfır.
  • Geri izleme. Yanlış giden bir işte onaylayanı, onaylanan sürümü ve yapılan kontrolü bulmak ne kadar sürüyor? Tek bir sorguyla bulunmalı.

Ajanına ver

Üç metin var. Denetim promptu ürünündeki onay noktalarını bulur, her onayın kişiye, sürüme ve kontrole bağlanıp bağlanmadığını ve onaydan sonra değişen içeriğin onaylı gidip gitmediğini raporlar, hiçbir dosyayı değiştirmez. Uygulama promptu onayı kişiye, içeriğin özetine ve onay türüne bağlayan bir kayıt kurar, içerik değişince onayı düşürür. Önce planı gösterir, onayınla uygular ve AI'ın onay vermeye çalıştığı ya da onaydan sonra içeriğin değiştiği durumları sınayan testler ekler. Kural kodlama ajanının kendi işi için. Senin deponda hiçbir işi onaylanmış diye işaretlemesin.

Denetim promptuAjan ürününde bu deseni arar, yalnız rapor yazar.
Bu depoda AI'ın hazırladığı çıktıların (yazı, rapor, karar önerisi, kod değişikliği, ajan eylemi) bir insanın onayıyla dışarı gittiği ya da yürürlüğe girdiği bir ürün var. Görevin, her onayın kimin, içeriğin hangi sürümü için ve neye bakarak verdiğini kaydedip kaydetmediğini denetlemek. Hiçbir dosyayı değiştirme, yalnız rapor yaz.

1. Onay noktalarını bul: onay düğmeleri, durum geçişleri (draft → approved, pending → sent gibi), inceleme kuyrukları, iş akışı motorundaki onay adımları, ajanın insan onayı beklediği yerler.
2. Her onay kaydında hangi alanlar var: onaylayan kişinin kimliği, rolü, zaman, onaylanan içeriğin sürümü ya da özeti (hash), onay türü, onaylayanın baktığı şeyler (açılan kaynaklar, çalışan testler, not)? Onay yalnız bir durum alanı mı?
3. Onay ekip hesabı, ortak giriş, servis hesabı ya da AI ajanının kendi kimliğiyle verilebiliyor mu? Ajanın onay alanına yazabileceği bir kod yolu var mı?
4. Onaydan sonra içerik değişirse (AI düzeltmesi, yeniden üretme, insan düzenlemesi, otomatik güncelleme) onay geçerli kalıyor mu? Onaylanmamış bir sürüm onaylı gibi gönderilebiliyor mu?
5. İşi AI'a veren kişi kendi isteğinin çıktısını onaylayabiliyor mu? Hassas işlerde ikinci bir kişinin onayı isteniyor mu?
6. Onay beklemeden giden çıktılar (otomatik gönderim, zaman aşımıyla onaylanmış sayılan iş) "onaysız" olarak kaydediliyor mu?
7. Onay kayıtları değiştirilebiliyor ya da silinebiliyor mu? Ne kadar süre saklanıyor, çıktının kendisiyle aynı süre mi?

Rapor biçimi: önce onay noktalarının listesi ve her birinde kaydedilen alanlar. Sonra her bulgu için dosya ve satır, eksik olan, olası sonuç (örnek: asistan onaydan sonra kaynakçayı değiştiriyor, yazı onaylı görünerek gönderiliyor) ve önerdiğin düzeltme. Dışarı giden ve bir kişiyi, parayı ya da hukuki bir sonucu etkileyen çıktılardan başla.
Uygulama promptuAjan önce planı gösterir, onayınla uygular.
Bu depodaki ürüne "Hangi çıktıyı kimin onayladığını kaydet" desenini uygula. Önce planı göster, onayımı aldıktan sonra kodu değiştir.

Hedef davranış:
1. Her onay bir kayıt olsun: onaylayan kişinin kimliği ve rolü, zaman, onaylanan içeriğin sürümü ya da özeti (hash), onay türü (örnek: üslup okuması, içerik incelemesi, test) ve onaylayanın baktığı şeyler (açılan kaynaklar, çalışan testler, kısa not).
2. Onay yalnız bir kişinin kimliğiyle verilebilsin. Ekip hesabı, servis hesabı ya da AI ajanı onay veremesin.
3. Onaydan sonra içerik değişirse onay düşsün ve çıktı yeniden onaylanmadan dışarı gitmesin. Değişikliğin farkı onaylayana gösterilsin.
4. Hassas işlerde işi AI'a veren kişi kendi isteğinin çıktısını onaylayamasın, onay başka bir yetkili kişiden gelsin.
5. Onay beklemeden giden her çıktı "onaysız" diye kaydedilsin. Sessizlik ya da zaman aşımı onay sayılmasın.
6. Onay kayıtları yalnız eklenebilsin ve çıktıyla aynı süre saklansın. Arayüzde her çıktının yanında onay geçmişi görünsün.

Uygularken:
- Onay kontrolünü sunucu tarafında yap, yalnız arayüzde düğmeyi gizlemek yetmez.
- Onaylanan sürümü içeriğin özetiyle (hash) tut ki gönderim anında karşılaştırılabilsin.
- Testler ekle: (a) onaydan sonra içerik değişince onay düşüyor ve gönderim engelleniyor, (b) AI ajanının kimliğiyle onay verilmeye çalışılınca istek reddediliyor, (c) işi isteyen kişi hassas bir işte kendi isteğini onaylayamıyor.
AGENTS.mdCLAUDE.md ya da Cursor kurallarına da eklenir.
## Hangi çıktıyı kimin onayladığını kaydet
- Bir işi onaylanmış diye işaretleme, onay alanına yazma, onay kaydı oluşturma. Onay bir insanın işi.
- Onaylanmış bir içeriği değiştirdiğinde bunu açıkça söyle ve onayın yeniden gerektiğini yaz.
- Onay akışı yazarken onayı kişiye, içeriğin sürümüne ve yapılan kontrole bağla. Ekip ya da servis hesabıyla onay verilmesine izin verme.
- Kendi hazırladığın bir çıktının raporunda neyi kontrol ettiğini ve neyi kontrol etmediğini ayrı yaz, onaylayan kişi neye bakacağını bilsin.
- Onay beklemeden giden bir yol görürsen onu kaydetmeden ve kullanıcıya söylemeden bırakma.

Sınır

Her çıktı onay kaydı istemez. Kişisel bir taslak, bir iç not ya da kullanıcının kendi ekranında kalan bir öneri için bu kayıt gürültüdür. Desen dışarı giden, bir kişiyi, parayı ya da hukuki bir sonucu etkileyen işler için.

Kayıt suçlu aramak için kullanılırsa insanlar onaydan kaçar, işi onaysız gönderir ve kayıt boş kalır. Çekirdeğin Reviewed-by etiketi inceleme yapanın emeğini de görünür kılıyor. Kayıt kimin baktığını gösterdiği kadar kimin emek verdiğini de göstersin.

Kayıt onayın kalitesini garanti etmez. LoDuca imzaladı ve imza kayıttaydı. Desen neye bakıldığını yazdırarak neye bakılmadığını görünür kılar, bakmayı sağlamaz. Onayların sayısını ve ağırlığını dengelemek “Onayları bütçe gibi harca” deseninin işi.

Bir satırı AI'ın mı insanın mı yazdığını tutmak “AI'ın değişikliğini insanınkinden ayırt et” deseninin işi. Bu desen onayı kaydeder.