Cara Menyemak Kod yang Dijana AI
Untuk menyemak kod yang dijana AI, mulakan dengan apa yang berubah — fail mana dan mengapa — kemudian uji tingkah lakunya sendiri sebelum membaca sebarang baris kod. Selepas itu, periksa bahagian yang paling kerap silap dalam kod AI: semakan kebenaran pelayan yang hilang, rahsia yang terdedah kepada pelayar, input yang tidak disahkan, pakej atau fungsi yang tidak wujud, dan suntingan pada perkara yang anda tidak pernah minta ia sentuh.
AI menulis kod yang biasanya berjalan dan selalunya kelihatan kemas. Itu memudahkan untuk meluluskannya tanpa benar-benar menyemak. Panduan ini ialah rutin semakan yang berfungsi sama ada anda membaca kod dengan fasih atau tidak langsung.
Sesuaikan semakan mengikut risiko
Tidak setiap perubahan memerlukan perhatian yang sama.
| Perubahan | Semakan |
|---|---|
| Teks, warna, susun atur | Lihat pada pratonton di desktop dan telefon |
| Halaman atau ciri baharu | Uji aliran; imbas fail yang berubah |
| Log masuk, kebenaran, pembayaran, data peribadi | Bacaan teliti, ujian sebenar, pertimbangkan penyemak kedua |
| Struktur pangkalan data, memadam data, migrasi | Baca perubahan, uji pada salinan, sandarkan dahulu |
Langkah 1: Lihat apa yang berubah
Sebelum menilai kod, dapatkan senarai perubahan:
- Jika projek berada dalam Git, lihat diff: fail dan baris yang berubah sejak commit terakhir. Lihat cara menggunakan Git dengan aplikasi yang dibina AI.
- Atau tanya AI secara langsung:
Senaraikan setiap fail yang anda ubah dalam perubahan terakhir, dan untuk setiap satu terangkan dalam satu ayat apa yang berubah dan mengapa.
Isyarat amaran pada peringkat ini: fail yang tidak berkaitan dengan permintaan, fail yang dipadam, perubahan pada konfigurasi atau kebergantungan yang tidak anda minta.
Langkah 2: Uji tingkah laku dahulu
Membaca kod memberitahu anda apa yang sepatutnya dilakukannya; menguji memberitahu anda apa yang sebenarnya dilakukannya. Sebelum membaca:
- Cuba perubahan itu sebagai pengguna biasa, pada desktop dan skrin bersaiz telefon.
- Cuba dengan input yang salah: medan kosong, teks yang sangat panjang, nombor negatif, tarikh pada masa lalu.
- Cuba dalam keadaan log keluar, dan sebagai pengguna lain.
- Ulang aliran yang paling penting: daftar, log masuk, tindakan utama, pembayaran.
Jika ujian gagal, anda telah menjimatkan masa membaca — laporkannya dengan jelas dan biarkan AI membetulkannya. Lihat cara menulis laporan pepijat yang baik.
Langkah 3: Semak kebenaran di pelayan
Ini perkara paling penting untuk disemak. Alat AI selalunya menyembunyikan butang dalam halaman tetapi membiarkan pelayan bersedia melakukan tindakan itu untuk sesiapa sahaja yang memintanya.
Untuk setiap laluan atau fungsi yang membaca atau menukar data, tanya:
- Adakah ia menyemak pengguna sudah log masuk?
- Adakah ia menyemak pengguna ini dibenarkan mengakses rekod ini?
- Adakah semakan itu di pelayan, bukan hanya dalam halaman?
Untuk setiap laluan API yang anda tambah atau ubah, beritahu saya semakan kebenaran apa yang dibuatnya di pelayan, dengan memetik baris itu. Tandakan mana-mana laluan yang tiada semakan.
Kemudian uji: log masuk sebagai pengguna A, catat ID rekod, log masuk sebagai pengguna B dan minta rekod itu. Senarai semak keselamatan untuk aplikasi yang dibina AI mempunyai ujian penuh.
Langkah 4: Cari rahsia yang terdedah
- Cari dalam fail yang berubah apa-apa yang kelihatan seperti kunci atau kata laluan.
- Pastikan kunci rahsia dibaca daripada pembolehubah persekitaran dan hanya digunakan dalam kod pelayan.
- Berhati-hati dengan awalan awam seperti
VITE_atauNEXT_PUBLIC_pada pembolehubah rahsia — ia dibina ke dalam kod pelayar.
Lihat cara menjaga kunci API dengan selamat.
Langkah 5: Semak input dan ralat
- Pengesahan di pelayan. Semakan pelayar boleh dilangkau. Medan wajib, panjang, format dan nilai yang dibenarkan juga perlu disemak oleh pelayan.
- Pertanyaan pangkalan data menggunakan parameter, bukan teks yang dibina dengan menggabungkan input pengguna ke dalam pertanyaan.
- Ralat tidak ditelan. Blok
try/catchyang tidak buat apa-apa menyembunyikan kegagalan. Ralat sepatutnya dilog, dan pengguna sepatutnya melihat mesej yang mudah. - Tiada butiran dalaman ditunjukkan kepada pengguna — jejak tindanan dan ralat pangkalan data tergolong dalam log.
Langkah 6: Semak ia benar-benar wujud
Model AI kadangkala menghasilkan kod yang kelihatan betul tetapi merujuk kepada perkara yang tidak wujud.
- Pakej: setiap kebergantungan baharu sepatutnya pakej sebenar dan diselenggara dengan nama tepat itu. Berhati-hatilah dengan nama yang kelihatan seperti salah eja pakej popular.
- Fungsi dan pilihan API: jika kod memanggil fungsi pustaka atau pilihan API luaran yang belum pernah anda lihat, semak dokumentasi rasmi.
- Kod olok-olok: cari
TODO,mock,fake, data contoh yang dikodkan keras, atau fungsi yang mengembalikan nilai tetap.
Adakah anda menambah pakej baharu? Untuk setiap satu, beri nama tepat, apa gunanya, dan sama ada kita boleh hidup tanpanya.
Langkah 7: Semak ia sesuai
Kod boleh berfungsi dan masih menjadikan aplikasi lebih sukar untuk diubah kemudian:
- Pendua. Logik yang disalin ke beberapa tempat akan berbeza lama-kelamaan.
- Konsistensi. Ia sepatutnya mengikut corak yang digunakan oleh bahagian lain aplikasi.
- Saiz. Permintaan 20 baris yang menghasilkan 600 baris patut dipersoalkan.
- Kod mati. Versi lama yang tertinggal di sebelah versi baharu.
Adakah ada kod dalam projek yang kini tidak digunakan kerana perubahan ini, atau logik yang didua-tiga kali di tempat lain? Jangan ubah apa-apa; senaraikan sahaja.
Kesilapan biasa
- Meluluskan kerana ia kelihatan kemas. Kod yang kemas masih boleh melangkau semakan kebenaran.
- Membaca dan bukannya menguji. Uji dahulu; baca kemudian.
- Hanya menguji laluan gembira. Cuba input buruk, pengguna yang salah dan keadaan log keluar.
- Mengabaikan perubahan fail yang tidak berkaitan. Tanya kenapa setiap fail berubah.
- Mempercayai semakan kendiri sepenuhnya. Gunakan semakan AI sebagai langkah pertama dan sahkan melalui ujian.
- Menyemak seminggu perubahan sekaligus. Semak perubahan kecil semasa ia berlaku.
Senarai semak
- Saya tahu fail mana yang berubah dan mengapa, dan tiada yang tidak berkaitan berubah.
- Perubahan itu berfungsi di desktop dan telefon, dengan input buruk, dalam keadaan log keluar dan sebagai pengguna lain.
- Setiap laluan data menyemak log masuk dan pemilikan di pelayan.
- Tiada rahsia dalam kod atau bundel pelayar.
- Input disahkan di pelayan; pertanyaan menggunakan parameter.
- Ralat dilog, tidak ditelan, dan tidak ditunjukkan secara terperinci kepada pengguna.
- Pakej baharu adalah sebenar dan diperlukan; tiada fungsi rekaan atau kod olok-olok yang tinggal.
- Perubahan berisiko tinggi telah dibaca dengan teliti dan, jika perlu, disemak oleh orang kedua.
Menyemak kod di Mythex
- Mod Ask menjawab soalan tentang kod tanpa mengeditnya — sesuai untuk gesaan “terangkan setiap perubahan” dan “laluan mana yang tiada semakan kebenaran”. Lihat Sembang.
- Paparan kod menunjukkan pepohon fail, editor dan terminal pada setiap pelan (hanya baca pada Free, boleh diedit pada Pro), supaya anda boleh membaca sendiri apa yang berubah. Lihat Editor kod.
/testmeminta ejen mengklik melalui pratonton sebagai pengguna dan melaporkan aliran yang rosak.- Checkpoint membolehkan anda membatalkan perubahan yang gagal semakan.
Jika pembangun sedang menyemak untuk anda, cara bekerja dengan pembangun pada aplikasi yang dibina AI meliputi serah terima; jika semakan menemui pepijat, lihat cara menyahpepijat aplikasi yang dibina AI.
Soalan lazim
Bolehkah saya menyemak kod yang dijana AI jika saya bukan pembangun?
Anda boleh menyemak banyak daripadanya. Periksa bahawa perubahan itu melakukan apa yang anda minta, uji aliran penting, cuba akses data pengguna lain, dan minta AI menerangkan setiap fail yang berubah dalam bahasa mudah. Untuk pembayaran, data sensitif atau keselamatan, minta pembangun juga memeriksanya.
Apakah masalah yang paling biasa dalam kod yang dijana AI?
Semakan kebenaran pelayan yang hilang, rahsia yang diletakkan di tempat pelayar boleh membacanya, input yang tidak disahkan di pelayan, pakej atau fungsi yang tidak wujud, ralat yang ditelan senyap, dan perubahan pada fail yang tidak anda minta.
Bolehkah saya meminta AI menyemak kodnya sendiri?
Ya, dan ia sering menemui masalah sebenar, terutamanya jika anda bertanya soalan spesifik seperti laluan mana yang tiada semakan kebenaran. Anggap ia sebagai semakan pertama, bukan jaminan, dan sahkan dapatannya melalui ujian.
Berapa lama semakan kod patut mengambil masa?
Sesuaikan mengikut risiko. Perubahan teks atau gaya memerlukan pandangan pantas pada pratonton. Perubahan kepada log masuk, kebenaran, pembayaran atau pangkalan data memerlukan bacaan yang teliti, ujian sebenar dan mungkin orang kedua.