Kapan Membiarkannya Berjalan vs. Mengarahkan Secara Manual
Keputusan untuk membiarkan sebuah berjalan tanpa pengawasan bermuara pada tiga pertanyaan — sebuah daftar periksa yang kamu jalankan sebelum kamu meninggalkannya.
- Radius ledakan (blast radius). Jika ini salah, seberapa banyak yang rusak? Sebuah proses pemformatan ulang di seluruh basis kode punya radius ledakan yang kecil. Migrasi basis data atau perubahan pada logika autentikasi (auth) punya radius yang besar. Semakin besar radiusnya, semakin banyak kamu perlu mengarahkan secara manual.
- Keterbalikan (reversibility). Bisakah kamu membatalkannya dengan murah? Pekerjaan di cabang () yang baru dengan working tree yang bersih bersifat reversibel —
git restore .dan semuanya hilang. Pekerjaan yang menghapus data, mengirim email, mengenakan biaya ke kartu, atau mendorong (push) ke produksi tidak reversibel. Jangan pernah membiarkan agent berjalan tanpa pengawasan atas apa pun yang tidak bisa kamu tarik kembali. - Keterverifikasian (verifiability). Bisakah kamu tahu apakah hasilnya benar? Jika "selesai" berarti test suite berwarna hijau atau sebuah halaman yang jelas-jelas berfungsi, kamu bisa memverifikasinya dalam hitungan detik dan agent sangat cocok untuk itu. Jika "selesai" bergantung pada penilaian yang halus — perhitungan uang, aturan keamanan, kondisi balapan (race condition) — kamu tidak bisa menggerbangi (gate) itu dengan pemeriksaan cepat, jadi kamu tetap harus mengawasi dari dekat.
Cara sederhana untuk menggabungkannya: biarkan berjalan ketika pekerjaannya reversibel dan hasilnya murah untuk diverifikasi; arahkan secara manual ketika tidak. Bawa serta aturan dari bab membangun fitur — semakin besar radius ledakan, semakin kecil langkahnya — dan tambahkan saudaranya: semakin besar radius ledakan, semakin pendek talinya.