- Saat GPT-5.5 Codex dijalankan pada 26 tugas nyata di
GraphQL-go-tools dengan setelan low, medium, high, xhigh, perbedaan upaya penalaran terlihat jauh lebih jelas pada kesetaraan semantik dengan patch buatan manusia dan tingkat lolos code review dibanding sekadar lolos pengujian
- Tingkat lolos pengujian adalah low 21/26, medium 21/26, high 25/26, xhigh 24/26, tetapi kesetaraan semantik meningkat dari 4/26 → 11/26 → 18/26 → 23/26 dan lolos code review juga naik dari 3/26 → 5/26 → 10/26 → 18/26
- high meningkatkan lolos pengujian, kesetaraan, dan lolos review dibanding medium, sementara biaya rata-rata naik 1,43x dari $3.13 menjadi $4.49, sehingga tampak seperti setelan default paling praktis pada dataset ini
- xhigh secara signifikan meningkatkan kesetaraan dan kualitas review dibanding high, tetapi biaya rata-ratanya naik menjadi $9.77 dan waktu eksekusi rata-ratanya menjadi 753.3 detik, sekaligus meningkatkan risiko footprint karena menghasilkan lebih banyak perubahan pada test, fixture, dan expected output
- Efek upaya penalaran tidak monoton untuk setiap tugas: ada kasus high mengungguli xhigh atau setelan yang lebih tinggi menghasilkan implementasi yang tampak meyakinkan tetapi salah, sehingga tim perlu mengukur pada harness dan tugas mereka sendiri, bukan hanya mengandalkan benchmark global
Tujuan eksperimen dan metode evaluasi
- GPT-5.5 Codex dijalankan secara terpisah pada 26 tugas repositori open source yang sama dengan setelan upaya penalaran low, medium, high, xhigh untuk membandingkan bukan hanya lolos pengujian, tetapi juga kesetaraan semantik dengan PR yang digabungkan manusia serta kelayakan untuk direview
- Repositori target adalah
GraphQL-go-tools berbasis Go, dan setiap tugas diturunkan dari PR atau commit nyata yang telah digabungkan
- Setiap tugas terdiri dari snapshot repositori yang tetap, prompt permintaan perubahan, dan satu kali percobaan untuk menghasilkan patch di dalam container Docker
- Stet menerapkan patch yang dihasilkan dan menjalankan pengujian per tugas dalam container terisolasi untuk memeriksa apakah patch lolos
- Setelah pengujian, evaluasi tambahan dilakukan dengan kriteria berikut
- Kesetaraan: apakah patch kandidat mencapai perubahan perilaku yang sama seperti patch asli buatan manusia
- Lolos code review: apakah reviewer kemungkinan akan menerimanya dengan mempertimbangkan ketepatan, risiko memasukkan bug, maintainability, dan edge case
- Risiko footprint: seberapa banyak kode tambahan yang disentuh agen dibanding patch buatan manusia
- Rubrik craftsmanship/disiplin: mengevaluasi kejelasan, kesederhanaan, konsistensi, kesengajaan, ketangguhan, kepatuhan pada instruksi, disiplin cakupan, dan minimalitas diff
- Semua model dijalankan satu kali per tugas, dengan seed tunggal
- Model penilai LLM adalah GPT-5.4, dan penilai hanya melihat patch dan tugas, tanpa mengetahui model atau setelan penalaran yang menghasilkan patch tersebut
- Contoh representatif juga diperiksa secara manual, tetapi tidak ada kalibrasi manusia terpisah untuk kumpulan tugas ini, sehingga arah kenaikan/penurunan lebih dapat dipercaya daripada satu skor absolut
- Detail eksekusi
- Model: GPT-5.5
- Harness: Codex 0.128.0
- Dataset: 26 tugas nyata
GraphQL-go-tools
- Metrik utama: lolos pengujian, kesetaraan semantik, lolos code review, risiko footprint, evaluasi kustom craftsmanship/disiplin, biaya, dan waktu eksekusi
- Chart interaktif dan analisis detail per tugas tersedia di https://stet.sh/blog/gpt-55-codex-graphql-reasoning-curve
- Evaluasi yang sama juga digunakan dalam loop riset otomatis untuk meningkatkan
AGENTS.md
- Agen membuat usulan perbaikan
AGENTS.md untuk repositori, menjalankan tugas-tugas historis dengan Stet, lalu mengulang dengan mencari bagian yang membaik atau memburuk
Metrik keseluruhan dan interpretasi
- Metrik keseluruhan menunjukkan bahwa semakin tinggi upaya penalaran, perbedaan yang lebih besar muncul pada kesetaraan semantik dan tingkat lolos review, bukan pada lolos pengujian
- Hasil utama
- Lolos pengujian: low 21/26, medium 21/26, high 25/26, xhigh 24/26
- Setara dengan patch manusia: low 4/26, medium 11/26, high 18/26, xhigh 23/26
- Lolos code review: low 3/26, medium 5/26, high 10/26, xhigh 18/26
- Rata-rata craftsmanship/disiplin: low 2.311, medium 2.604, high 2.736, xhigh 3.071
- Biaya rata-rata per tugas: low $2.65, medium $3.13, high $4.49, xhigh $9.77
- Waktu eksekusi agen rata-rata: low 286.9 detik, medium 411.0 detik, high 579.0 detik, xhigh 753.3 detik
- low dan medium sama-sama memiliki tingkat lolos pengujian 21/26, tetapi kesetaraan naik dari 4/26 menjadi 11/26, dan lolos review naik dari 3/26 menjadi 5/26
- Dibanding medium, high meningkatkan lolos pengujian sebesar +15.4%p, kesetaraan sebesar +26.9%p, dan lolos review sebesar +19.2%p, sehingga memberi peningkatan praktis yang paling jelas
- Dibanding high, xhigh lebih rendah -3.8%p pada lolos pengujian, tetapi naik +19.2%p pada kesetaraan dan +30.8%p pada lolos review
- Hasil ini menunjukkan bahwa upaya penalaran tidak hanya mengubah tingkat lolos pengujian, tetapi juga mengubah jenis patch yang dihasilkan Codex
- Benchmark publik sering kali hanya menjawab secara biner apakah sebuah tugas berhasil diselesaikan, tetapi dalam rekayasa perangkat lunak nyata, penting juga apakah patch dapat digabungkan dan dipelihara setelahnya
- Terminal-Bench terutama berfokus pada masalah pemrograman yang rumit, SWE-bench verified berpotensi memuat jawaban yang sudah pernah dilihat model, dan SWE-bench Pro berguna tetapi sifatnya cukup umum
- Fokus eksperimen ini adalah pada pertanyaan “apakah agen membuat jenis perubahan yang sama dengan yang digabungkan manusia di codebase saya” dan “apakah saya cukup ingin memiliki patch ini setelahnya”
Dari low ke medium: bergerak dari heuristik ke pemodelan domain
- low dan medium sama-sama lolos pengujian 21/26, sehingga jika hanya melihat pengujian, keduanya tampak setara
- Namun medium meningkatkan kesetaraan semantik dari 4/26 menjadi 11/26, dan rata-rata craftsmanship/disiplin juga naik dari 2.311 menjadi 2.604
- Pada rentang ini, jika hanya mengukur pengujian, sebagian besar perbedaan upaya penalaran akan terlewat
- low, bahkan pada patch yang lolos, kadang tetap berada pada heuristik atau implementasi parsial, sementara medium bergerak ke arah pemodelan repositori dan makna domain yang lebih baik
- Contoh PR #1297
- Tugasnya adalah memvalidasi dependensi nullable external
@requires di GraphQL Federation
- Jika required field yang nullable kembali sebagai null bersama error, entitas yang sudah terkontaminasi itu tidak boleh diteruskan ke downstream fetch yang bergantung padanya
- Inti tugas ini bukan sekadar menambahkan cabang validasi, melainkan memodelkan aturan dependensi data federation yang halus
- low lolos pengujian, tetapi menangani pencocokan required-field/error secara heuristik dan melewatkan metadata nullable
@requires yang terstruktur, sehingga tidak setara dan juga tidak lolos review
- medium melacak objek yang terkontaminasi dan memfilter input downstream fetch, sehingga lolos kesetaraan dan review, dengan kualitas craftsmanship/disiplin naik dari
1.350 menjadi 3.225
- high dan xhigh juga tetap berada pada tingkat kualitas yang sama, sehingga tugas ini terutama menunjukkan peningkatan saat berpindah dari low ke medium
high: titik yang mendekati default praktis
- high meningkatkan kelulusan tes, kesetaraan semantik, dan kelulusan review dibanding medium, sambil menjaga kenaikan biaya tetap besar namun tidak berlebihan
- Perbandingan high dan medium
- Kelulusan tes: naik dari 21/26 menjadi 25/26
- Kesetaraan: naik dari 11/26 menjadi 18/26
- Lulus code review: naik dari 5/26 menjadi 10/26
- Risiko footprint rata-rata: naik dari 0.268 menjadi 0.314
- Rata-rata craftsmanship/disiplin: naik dari 2.604 menjadi 2.736
- Biaya tugas rata-rata: naik dari $3.13 menjadi $4.49, 1.43x
- Waktu eksekusi rata-rata: naik dari 411.0 detik menjadi 579.0 detik
- high tampak seperti titik ketika token tambahan benar-benar berubah menjadi manfaat nyata, dengan tingkat keberhasilan yang lebih tinggi dalam menangani detail integrasi
- Contoh PR #1209
- Ini adalah tugas agar gRPC datasource menghormati GraphQL alias dalam JSON respons, memvalidasi terlebih dahulu tipe protobuf message yang dirujuk, dan memperbarui cakupan mapping untuk jalur mutasi union/interface
- low dan medium sama-sama lulus tes, tetapi tidak setara dan juga gagal review
- medium menangani sebagian besar serialisasi alias dan validasi message yang hilang, tetapi melewatkan pembaruan mapping mutasi
createUser dan memberi makna response-key yang berlebihan pada JSONPath
- high memperkenalkan penanganan response-key/alias yang eksplisit, dan meneruskan alias ke seluruh planning dan JSON marshaling sehingga menjadi kelulusan ketat pertama
- Kualitas kustom high naik ke
3.625, dan bukan sekadar menambahkan lebih banyak kode, melainkan tepat mengenai kewajiban integrasi
- xhigh juga lulus, tetapi tidak memperbaiki interpretasi tingkat tugas, dan waktu eksekusi agen menurut ringkasan yang diregenerasi lebih lama, yaitu
790.7s dibanding high 314.0s
- Contoh PR #1155
- Ini adalah tugas hardening gRPC datasource yang mencakup dukungan repeated scalar field, menghindari panic pada message null/invalid, propagasi gRPC status code, penonaktifan datasource, dan dukungan dynamic client
- low dan medium lulus tes tetapi tidak setara
- medium meningkatkan robustness, tetapi menserialisasi invalid repeated field sebagai empty array, melewatkan perilaku planning aliased-root, dan masih menyisakan risiko lifecycle dynamic-client
- high lulus kesetaraan dan review dengan penanganan nil/invalid yang lebih aman, propagasi status-code, perilaku disabled-datasource, dan cakupan dynamic client-provider
- Pada tugas ini, terjadi pembalikan ketika xhigh lulus tes tetapi salah menangani semantik disabled datasource dan perilaku invalid-list sehingga tidak setara dan juga gagal review
xhigh: lebih dekat ke mode kualitas daripada default
- xhigh meningkatkan kualitas semantik dan review dibanding high, tetapi bukan berarti semua hal otomatis membaik hanya dengan menaikkan pengaturan
- Perbandingan xhigh dan high
- Kelulusan tes: turun dari 25/26 menjadi 24/26
- Kesetaraan: naik dari 18/26 menjadi 23/26
- Lulus code review: naik dari 10/26 menjadi 18/26
- Risiko footprint rata-rata: naik dari 0.314 menjadi 0.365
- Rata-rata craftsmanship/disiplin: naik dari 2.736 menjadi 3.071
- Biaya tugas rata-rata: naik dari $4.49 menjadi $9.77, 2.18x
- Waktu eksekusi rata-rata: naik dari 579.0 detik menjadi 753.3 detik
- xhigh cenderung mencakup lebih banyak dasar, lebih selaras dengan niat manusia, dan menghasilkan perubahan yang lebih lengkap, tetapi memakai token jauh lebih banyak
- Rubrik review menunjukkan rata-rata xhigh
3.365 dan median 3.500, lebih tinggi daripada high dengan rata-rata 2.817 dan median 2.750
- Karena median juga lebih tinggi daripada rata-rata, peningkatan xhigh tampaknya bukan hasil dari satu atau dua patch luar biasa yang sekadar mengangkat rata-rata
- xhigh lebih lengkap secara semantik, tetapi juga menyentuh lebih banyak kode dibanding patch buatan manusia sehingga risiko footprint ikut meningkat
- Baris yang ditambahkan xhigh di 26 tugas berjumlah total
13,144 baris, terbagi menjadi 5,918 baris kode implementasi dan 7,226 baris untuk tes·fixture·expected-output
- Dibanding high, xhigh menambahkan
2,631 baris lebih banyak, dan 2,436 di antaranya berada di file tes·fixture·expected-output
- Kenaikan footprint bukan hanya karena menulis production code yang besar, tetapi juga sangat dipengaruhi oleh xhigh yang membuat lebih banyak verifikasi dan cakupan fixture
- Namun perubahan pada tes, fixture, dan expected-output juga merupakan surface area nyata yang harus direview dan dipelihara
- Contoh PR #1076
- Ini adalah tugas untuk merestrukturisasi penanganan subscription agar terhindar dari race condition pada mutex bersama
- Persyaratannya mencakup write yang diserialisasi per subscription, kontrol heartbeat per subscription, cakupan race detector, dan perbaikan semantik penutupan WebSocket
- medium lulus tes tetapi tidak setara dan juga gagal review
- high mencapai kesetaraan dan kepatuhan terhadap instruksi, tetapi worker queue baru dapat memblokir global subscription event loop, shutdown dapat berhenti di belakang worker yang macet, hung update menjadi tak terbatas, dan unsubscribe level client masih melewati internal subscription sehingga gagal review
- xhigh menjadi kelulusan ketat pertama dan menaikkan kualitas kustom ke
3.475
- Tugas ini adalah contoh terbaik bahwa pada tugas yang sarat concurrency, xhigh berfungsi sebagai mode kualitas yang membayar biaya tambahan untuk membereskan risiko review
- Contoh PR #1308
- Ini adalah tugas untuk mengimplementasikan GraphQL
@oneOf input object
- Diperlukan penambahan built-in directive, paparan introspection, validasi operation literal dan runtime variable, serta perbaikan source location untuk undefined-variable
- medium dan high lulus tes, tetapi melewatkan semantik
@oneOf penting terkait runtime variable, nullable variable, provided-null payload, dan bentuk introspection, sehingga tidak setara dan gagal review
- xhigh menjadi kelulusan ketat pertama dan mencatat robustness
3.7, kepatuhan instruksi 4.0, serta kualitas kustom 3.525
- Perbedaannya bukan pada polish yang dangkal, melainkan pada cakupan edge case di berbagai bagian sistem
- Contoh PR #1240
- Ini adalah tugas untuk menggabungkan GraphQL AST field-selection merging dan inline-fragment selection merging ke dalam satu normalization walk
- low dan high merupakan kelulusan ketat
- xhigh setara menurut kriteria evaluasi semantik, tetapi gagal review karena mempertahankan prioritized subpass, mengubah urutan
AbstractFieldNormalizer, dan meninggalkan field-merge registration lama
- Pengaturan penalaran yang lebih tinggi pun dapat menghasilkan refactoring yang lebih rumit dan masuk akal, sambil tetap melewatkan perilaku eksekusi tepat yang dianggap penting oleh tes dan reviewer
Kualitas pengerjaan·disiplin, biaya, keterbatasan, dan kesimpulan
- Evaluasi kustom untuk kualitas pengerjaan·disiplin juga secara umum meningkat seiring bertambahnya upaya penalaran, mirip dengan rubrik review
- Skor all-custom pada xhigh memiliki rata-rata
3.071 dan median 3.087, lebih tinggi daripada high dengan rata-rata 2.736 dan median 2.688
- Karena median untuk kualitas pengerjaan dan disiplin juga lebih tinggi, ini dapat diartikan bahwa xhigh bukan hanya menghasilkan beberapa contoh yang menonjol, tetapi meningkatkan kualitas patch secara keseluruhan
- Metrik rata-rata/median
- Craft aggregate: low
2.327 / 2.338, medium 2.618 / 2.525, high 2.781 / 2.787, xhigh 3.126 / 3.100
- Discipline aggregate: low
2.295 / 2.325, medium 2.590 / 2.588, high 2.691 / 2.688, xhigh 3.015 / 3.013
- All custom graders: low
2.311 / 2.338, medium 2.604 / 2.550, high 2.736 / 2.688, xhigh 3.071 / 3.087
- Interpretasi rinci
- low lemah dalam ketangguhan dan kepatuhan terhadap instruksi
- medium meningkatkan aspek ini secara berarti tanpa meningkatkan total kelulusan tes
- high meningkatkan akurasi dan ketangguhan secara nyata
- xhigh meningkatkan hampir semua dimensi, termasuk cakupan dan disiplin diff
- Biaya dan waktu
- low: biaya rata-rata
$2.65, median $1.91, waktu eksekusi rata-rata 286.9s, median 294.6s
- medium: biaya rata-rata
$3.13, median $2.87, waktu eksekusi rata-rata 411.0s, median 371.8s
- high: biaya rata-rata
$4.49, median $3.99, waktu eksekusi rata-rata 579.0s, median 572.9s
- xhigh: biaya rata-rata
$9.77, median $6.39, waktu eksekusi rata-rata 753.3s, median 732.7s
- Biaya condong tidak merata pada low dan terutama xhigh, dan biaya rata-rata xhigh dipengaruhi oleh beberapa tugas yang mahal
- Berdasarkan median sekalipun, xhigh lebih mahal dan lebih lambat daripada high
- Dibandingkan medium, high memerlukan biaya sekitar 1.43 kali per tugas, dan dibandingkan high, xhigh memerlukan biaya sekitar 2.18 kali
- Keterbatasan
- Hanya menggunakan satu seed per tugas
- Hanya mencakup 26 tugas nyata
GraphQL-go-tools
- Penilai LLM adalah GPT-5.4, dan melihat patch·tugas tetapi tidak melihat label
- Tidak ada kalibrasi grader untuk set tugas ini
- Ini tidak dapat dianggap sebagai hasil umum yang signifikan secara statistik atau hasil yang bisa langsung dipindahkan ke repositori lain
- Perbandingan terkait
- leaderboard tugas nyata milik Voratiq juga menunjukkan arah yang serupa, meskipun metodologinya berbeda
- Di Voratiq, GPT-5.5 xhigh mencatat
1994, GPT-5.5 high 1807, naik +187 poin atau +10.3%
- Biayanya adalah
$4.23 vs $2.52 atau +67.9%, dan waktunya 11.9m vs 7.8m atau +52.6%
- Dalam eksperimen Stet, pergeseran high → xhigh muncul lebih besar, dengan ekivalensi
+19.2%p, relatif +27.8%, lolos code review +30.8%p, relatif +80.0%, sementara aggregate kualitas pengerjaan/disiplin serupa di +12.2%
- Voratiq adalah leaderboard bergaya preference/selection untuk ongoing work, sedangkan eksperimen ini adalah satu irisan repositori berisi 26 tugas, sehingga keduanya tidak bisa dibandingkan secara langsung
- Kesimpulan praktis
- xhigh cocok untuk tugas yang ambigu, lintas banyak area, berfokus pada konkurensi, atau memiliki risiko review yang tinggi
- high tampak sebagai pengaturan paling praktis sebagai default daily driver pada dataset ini
- Pengaturan medium ke bawah cocok ketika biaya lebih penting dan tugasnya rutin atau terdefinisi dengan baik
- Efek upaya penalaran tidak mulus atau monoton untuk setiap tugas; ada juga pembalikan ketika high mengalahkan xhigh, atau pengaturan yang lebih tinggi menghasilkan implementasi yang tampak meyakinkan tetapi salah
- Tim sebaiknya mengukur pada harness dan tugas mereka sendiri, alih-alih menyalin default benchmark global
- Pengungkapan
- Sedang mengembangkan Stet.sh, dan menjalankan eksperimen dengan alat evaluasi lokal ini
- Pada versi produk, agen coding membuat perubahan kandidat seperti peningkatan
AGENTS.md, lalu menilainya terhadap tugas repositori historis dengan Stet
- Jika ada tim yang banyak menggunakan agen coding dan sedang menghadapi keputusan spesifik seperti high vs xhigh, Codex vs Claude Code, pembaruan
AGENTS.md, atau menilai tugas mana yang aman untuk didelegasikan, mereka sedang mencari tim untuk menjalankan uji per repositori bersama
- Stet berjalan sepenuhnya secara lokal menggunakan langganan LLM, dan daftar tunggunya ada di https://www.stet.sh/private
1 komentar
Opini Hacker News
Sejauh pengalaman saya, 5.5 belum sepadan dengan biaya tambahannya. 5.4-high bekerja lebih baik daripada sebagian besar tingkat penalaran 5.5, biayanya setengahnya, dan waktu yang dibutuhkan di dunia nyata jauh lebih singkat. 5.5-medium gagal menyelesaikan tugas sampai tuntas, dan 5.5-high melakukan overengineering sehingga menimbulkan bug dan regresi
Singkatnya, 5.5 sedikit membaik dibanding 5.4 dan harganya juga sedikit naik. Efisiensi tokennya tampak lebih baik, jadi sepertinya agak mengimbangi biaya input tambahan
Peningkatan yang didapat di level di atasnya mendekati diminishing returns jika dibandingkan dengan biayanya
Keduanya diberi akses penuh yang berisiko dan bekerja pada proyek yang sama. Masing-masing rata-rata memakai 6 sub-agen 5.5, dan CLI atau app yang menentukan sub-agen level mana yang akan dipakai. Hasilnya campur aduk, tetapi CLI umumnya memakai 5.5 Medium
CLI memiliki hak admin dan hanya CLI yang menangani hal seperti GitHub, Supabase, Vercel, Clerk, Linear, Symphony, serta push, merge, PR, dan deploy. Saya sendiri tidak melakukan apa pun, dan juga tidak ada isu P0/P1/P2. GitHub, Vercel, dan Supabase semuanya hijau, tidak ada isu, kode dan produknya rapi, dan frontend yang dihasilkan luar biasa hanya dari satu gambar referensi
Kekurangannya, dalam sehari bisa membakar 30% dari batas mingguan
Sekarang saya kembali ke high
Meski begitu, rasanya saya jadi menghemat beberapa tahun umur dan cukup banyak token
Saya terus mencari kalimat apa yang harus dimasukkan ke agents.md agar ia tidak membuat asumsi seenaknya. Kadang sebelum memberi instruksi coding untuk sesuatu, saya bertanya karena perlu tahu lebih dulu, tetapi alih-alih menjawab, ia malah langsung mulai coding. Setelah selesai, memang ia menyisipkan jawaban untuk pertanyaan itu di dalam responsnya, jadi sepertinya ia memperhatikan apa yang saya katakan, tetapi belum paham bahwa kalau ada pertanyaan, artinya jangan mulai coding dulu
Saya ingin tahu seberapa besar variasi antareksekusi model. Dalam kasus di atas, meskipun high mungkin ngoding lebih baik, jika variasi antareksekusinya besar, bisa jadi lebih masuk akal memakai xhigh
Eksperimen lain yang menarik adalah setelah hasil tugas keluar, berikan umpan balik, minta model memperbarui AGENTS.md, skills, rules, dan sebagainya dengan membandingkannya terhadap perubahan yang dibuat manusia, lalu jalankan lagi high/xhigh dalam fresh session. Setelah diulang beberapa kali hingga membaik, uji ulang di semua tingkat effort; kalau AGENTS.md serta skills/rules disetel dengan baik, kualitas output secara keseluruhan sepertinya bisa ikut terangkat
Optimasi AGENTS.md sangat saya suka, dan saya memang sudah menyuruh Stet yang saya buat untuk menjalankan eksperimen ini. Saya menjalankan Codex pada beberapa tugas, melihat skor dan pola kegagalannya, lalu memintanya mengubah AGENTS.md dan menjalankannya lagi, semuanya sepenuhnya otonom. Ini bekerja seperti riset otomatis untuk AGENTS.md, dan cukup menarik melihatnya kembali dengan usulan perbaikan berbasis data yang diterapkan ke AGENTS.md