Aplikasi 🇷🇺 27.07.2026 04:03

Kontrak-Pertama sebagai Perlindungan Terhadap Agen LLM: API-Pertama Kembali untuk Menjaga Frontend dan Backend Tetap Selaras

Moonshot AIMoonshot AI
Penulis menjelaskan masalah degradasi proyek saat menggunakan agen LLM untuk pengembangan: agen sering mengabaikan kontrak aktual antara frontend dan backend, membuat data palsu dan menyebabkan kesalahan runtime. Solusinya adalah kembali ke pendekatan kontrak-pertama, di mana spesifikasi OpenAPI menjadi artefak utama dari mana antarmuka server dan klien dihasilkan, membuat setiap penyimpangan dari kontrak menjadi kesalahan kompilasi.
Penulis menemukan pada dua proyek sampingan bahwa agen LLM sering kali menyimpang dalam kontrak saat mengembangkan frontend dan backend: agen frontend mengetik respons sebagai Record<string, unknown>, menggunakan objek longgar atau node JSON, menduplikasi DTO dengan nama field yang berbeda, dan kadang-kadang bahkan mensimulasikan backend yang tidak ada dengan data lokal dan toast. Tidak ada satu pun dari kesalahan ini yang tertangkap oleh kompiler, linter, atau tes arsitektur karena penganalisis tidak melihat permintaan HTTP antar codebase. Solusinya adalah kontrak-pertama: sumber kebenaran tunggal adalah spesifikasi OpenAPI (YAML), dari mana antarmuka server (dengan opsi interfaceOnly dan skipDefaultInterface) dan klien dihasilkan pada waktu pembangunan. Controller mengimplementasikan antarmuka yang dihasilkan, memastikan kecocokan tanda tangan—setiap penyimpangan dari kontrak menjadi kesalahan kompilasi. Penulis mencatat bahwa pendekatan ini sudah digunakan dalam gRPC dan GraphQL dan kembali ke REST, karena pembaca kontrak sekarang bukan manusia melainkan agen LLM, yang tidak memulihkan niat dan mengambil jalur murah dengan menebak.
Sumber: Habr — хаб ИИ — asli
Postingan kami sebelumnya tentang topik ini ↓
Berita terbaru