First Blood: Yapay Zeka Sonunda ProgramBench'i Deldi 🩸

Geçenlerde, övülen yapay zeka ajanlarının ProgramBench benchmark'ında çuvalladığını yazmıştım; burada sadece çalıştırma izniyle sıfırdan bir binary oluşturmaları gerekiyordu. O zaman herkes gururla %0 almıştı.

İşte, kapı aralandı. Ekip bir güncelleme yayınladı: yeni GPT-5.5 (xhigh) ilk görevi çözen oldu — cmatrix yardımcı programını tamamen tersine mühendislik yaparak çalışan bir klonunu yazdı.

Ancak bu raporda en ilginç olan, çözümün kendisi değil, farklı modellerin göreve nasıl yaklaştığı. Bu, farklı geliştirici kategorilerinin nasıl düşündüğünün tam bir kesiti.

🤡 Claude Opus 4.7
C ile yazmaya karar verdi. Docker'da ncurses.h başlık dosyalarının olmadığını keşfetti. Claude ne yapıyor? Pes etmiyor. Sistem binary'lerini ldconfig ve nm -D ile ayrıştırıyor, elle 100+ satırlık typedef'lerle curses_decls.h yazıyor ve hepsini runtime'a bağlıyor. Kesinlikle dahiyane bir sistem mühendisliği.

Sonra 19 testte başarısız oluyor. Neden?
Girilen rengin geçerliliğini strcasecmp yerine strcmp ile kontrol etmiş. GREEN veya Red girişi mantığı bozuyor. Model 178 API çağrısı harcadı ($10.74), dinamik bağlayıcı üzerinden son derece karmaşık bir yapı kurdu, ancak büyük/küçük harf duyarsız karşılaştırma yapmadığı için battı.

🧠 GPT 5.5
Ajan Docker'ı kontrol ediyor, bir test C dosyasını derlemeye çalışıyor ve ncurses için başlık dosyası olmadığını görüyor.
Mantığı? "Boşver, Python'da yazayım".

İlginçtir ki, benchmark yazarları Python'un zaferini saymak için bir testi kaldırmak zorunda kaldı.
Orijinal C binary'sinde, çok büyük bir sayı girildiğinde program integer overflow'a uğruyordu. Değişken taşıyor, gecikme çok küçülüyor ve matrix maksimum hızda akıyordu. Benchmark yazarları bunu bir "özellik" olarak kabul ediyordu.
📱 GPT-5.5'in Python sürümü sayıyı dürüstçe ayrıştırdı (Python'un sınırları umursamayan uzun aritmetiği sayesinde) ve dürüstçe time.sleep(1e22)'ye girdi. Platform beklenen şekilde OverflowError: timestamp out of range hatası verdi.
C'nin atoi() hatası bir sistem davranışı olarak sunuluyordu, ancak Python her şeyi yerli yerine koydu.

Bu benchmark'ı geçmek için ne kadar süre veriyoruz?