MATERI 6 DARI 28
Prompt implementasi dengan scope dan guardrail
Batasi file, perilaku, dan kriteria selesai agar AI tidak melakukan perubahan liar.
Tujuan pembelajaran
- Menentukan file yang boleh disentuh.
- Meminta test-first dan perubahan minimal.
- Melarang secret dan side effect tak disetujui.
Konsep utama
Scope eksplisit
Daftar file yang relevan dan larangan “while I am here”.
Output terverifikasi
Minta agent menjalankan test dan melaporkan output nyata, bukan perkiraan.
Alur kerja teknis
- Tulis tujuan dan acceptance criteria.
- Buat perubahan kecil yang dapat ditinjau.
- Jalankan test dan baca diff sebelum menerima hasil AI.
Contoh implementasi
Contoh validasi server yang sempit
function validateDisplayName(string $name): string {
$name = trim(preg_replace('/\s+/u', ' ', $name) ?? '');
if (mb_strlen($name) < 2 || mb_strlen($name) > 120) {
throw new InvalidArgumentException('Nama harus 2–120 karakter.');
}
return $name;
}Aspek keamanan
- Minta AI mempertahankan authorization server-side.
- Jangan membolehkan penambahan dependency tanpa alasan dan review.
- Tentukan status default aman, misalnya draft bukan published.
Kesalahan umum
- Menerima kode AI tanpa membaca diff dan memahami alur data.
- Menguji hanya happy path dan mengabaikan input salah atau batas nilai.
- Menyimpan secret, token, atau data nyata di prompt dan source code.
Pengujian dan verifikasi
- Jalankan contoh dengan input normal.
- Ulangi dengan input kosong, tipe salah, dan nilai batas.
- Pastikan error tidak membocorkan secret atau detail internal.
Latihan
- Modifikasi contoh dengan satu kebutuhan baru dan tulis acceptance criteria-nya.
- Tambahkan satu negative test lalu jelaskan risiko yang dicegah.
Checklist
- Tujuan dan batas pekerjaan jelas.
- Input divalidasi di server.
- Secret tidak berada di source/prompt.
- Test lulus dan diff sudah dibaca.
Rangkuman
Batasi file, perilaku, dan kriteria selesai agar AI tidak melakukan perubahan liar.