Hurl Menghentikan Drift Vibe Coding Image: AI generated

Tembok 3 Bulan


Jika aplikasi vibe coding Anda runtuh setelah 3 bulan, jika Anda mengalami drift di mana AI menimpa logika yang sudah ada, jika Anda ingin melindungi kontrak API dari perubahan kode — Hurl dan ratchet adalah solusinya.

Anda membangun SaaS dengan vibe coding. Awalnya cepat. “Buat login” – 30 detik. “Tambah pembayaran” – 2 menit. MVP keluar dalam 3 minggu.

Tiga bulan kemudian, hal aneh terjadi. AI “merapikan” logika pembayaran dan diam-diam mengubah perhitungan diskon. Menambah endpoint baru merusak autentikasi yang ada. Anda minta refactoring dan nama field API publik berubah, membunuh semua client.

Ini disebut logic drift – AI secara tidak sengaja mengubah logika bisnis yang ada. Bug regresi ada dalam pengembangan tradisional juga. Tapi logic drift berbeda. Perubahan yang tidak dimaksudkan pengembang terjadi tanpa pengembang sadari, di seluruh codebase. Karena setiap prompt dimulai di context window baru.


Drift dalam Angka

Ini bukan perasaan. Ada data.

Harga kecepatan adalah kompleksitas. Tim Carnegie Mellon membandingkan 807 repositori GitHub sebelum dan sesudah adopsi Cursor (MSR 2026). Bulan pertama, penambahan kode naik 3-5x. Dua bulan kemudian keunggulan kecepatan hilang. Yang tersisa: peningkatan 30% peringatan analisis statis dan peningkatan permanen 41% kompleksitas kode. Liu et al. (2026) menganalisis 302,600 commit AI di 6,299 repositori – utang teknis yang belum terselesaikan melonjak dari ratusan di awal 2025 menjadi lebih dari 110,000 pada Februari 2026.

Bukan jadi lebih cepat – jadi lebih lambat. METR melakukan uji coba terkontrol acak dengan 16 pengembang open-source berpengalaman (2025). Di proyek yang mereka kenal, grup yang menggunakan alat AI membutuhkan waktu 19% lebih lama. Tapi pengembang sendiri merasa 20% lebih cepat. Kesenjangan persepsi dan kenyataan: 39pp.

Stabilitas runtuh di skala besar. Menurut laporan Google DORA (2025), setiap peningkatan 25% adopsi AI, stabilitas pengiriman software menurun 7,2%.

Benar-benar runtuh. Amazon mewajibkan alat coding AI di seluruh perusahaan pada 2025 dan mengerahkan 21,000 agen AI. Periode yang sama, sekitar 30,000 karyawan diberhentikan. Hasilnya: 4 insiden Sev-1 dalam 90 hari. 5 Maret 2026, gangguan 6 jam menyebabkan perkiraan kerugian 6,3 juta pesanan.


“Lakukan TDD” Bukan Jawabannya

Studi TDAD (arxiv 2026) menguji ini dengan tepat. Qwen3-Coder 30B menyelesaikan 100 instance SWE-bench Verified.

KondisiTingkat regresi
Baseline (tanpa instruksi tes)6,08%
Instruksi prosedural “lakukan TDD”9,94% (lebih buruk)
Menyediakan file tes yang terpengaruh sebagai konteks1,82% (penurunan 70%)

Bukan instruksi “bagaimana menguji”, tapi kontrak “apa yang harus lolos”.


Hurl: Kontrak dalam Plain Text

Hurl menerapkan prinsip Design by Contract Meyer (1992) di batas HTTP. Alat pengujian yang mendeklarasikan permintaan HTTP dan respons yang diharapkan dalam plain text. Dipelihara oleh Orange, biner Rust tanpa dependensi runtime, 18,7k bintang GitHub.

# Login berhasil
POST http://localhost:8080/api/auth/login
{
  "email": "test@example.com",
  "password": "secret123"
}
HTTP 200
[Asserts]
jsonpath "$.token" exists
jsonpath "$.user.email" == "test@example.com"

# Akses tanpa autentikasi mengembalikan 401
GET http://localhost:8080/api/pages
HTTP 401

Dua kontrak. Login harus mengembalikan 200 dengan token, akses tanpa autentikasi harus mengembalikan 401.


Mengapa Hurl

Unit test memverifikasi fungsi internal – terkopel struktural dengan implementasi. Hurl berada di batas HTTP. Hanya mendeklarasikan permintaan dan respons. Secara alami independen dari implementasi.

Unit testHurl
Target verifikasiInternal fungsiKontrak HTTP
Saat refactoring AIIkut berubahTidak berubah
Deteksi driftBersyaratAlami
Ketergantungan struktur kodeTinggiTidak ada

Yang diverifikasi Hurl bukan kode tapi perilaku.


Kunci Ratchet

Saat tes Hurl lolos, ia terkunci. Ini adalah ratchet. Tes Hurl yang terkunci adalah ratchet code — kode deterministik yang membuat kontrak API yang sudah lolos menjadi tidak dapat dibalikkan. Agen harus melakukan refactoring sambil mempertahankan semua perilaku yang ada.


Berlaku untuk Legacy Juga

Langkah 1: Tangkap perilaku saat ini dalam Hurl. Langkah 2: Hubungkan ke CI. Langkah 3: Sekarang aman.

Bukan pekerjaan fondasi tapi penguatan anti-gempa. Memperkuat bangunan tanpa menutup toko.


Bukan Akhir Vibe Coding, tapi Evolusinya

Karpathy menyatakan Februari 2026: “Era vibe coding berakhir.” Paradigma baru adalah agentic engineering. Storey (2026) menteorikan utang kognitif dan utang intensi. File Hurl adalah eksternalisasi intensi.

Satu file Hurl adalah satu kontrak. Jangan ganti modelnya. Tambahkan kontrak.


Artikel Terkait


Referensi

Changelog

  • 2026-05-22: Rilis awal