Persist Progress
Membuat bug hunt dan feature work bisa dilanjutkan antar sesi tanpa mulai dari nol.
Failure pattern
Agent menyelidiki intermittent bug, session berhenti, agent berikutnya mengulang langkah yang sama dan menyimpulkan hal berbeda. Progress hilang karena hanya hidup di chat.
Incident: Invite acceptance 403 yang intermittent
Agent pertama menemukan bahwa token valid dan membership row dibuat. 403 muncul saat first workspace route load. Ia curiga role cache, tetapi belum selesai. Session berakhir.
Agent kedua mulai dari awal, menyalahkan expired token, dan mengubah branch yang sudah pernah ditolak.
Harness principle
Persist progress berarti setiap run meninggalkan record durable: verified, rejected, unverified, evidence, dan next action.
Coding work jarang linear. Bug hunt perlu menyimpan jalan buntu agar tidak diulang.
Operating practice
Progress note:
Verified:
- token valid at acceptance start
- membership row exists after mutation
Rejected:
- expired token branch not involved
- email encoding not cause
Unverified:
- role cache stale after redirect
Next action:
- add trace around role cache read
Note ini bisa berada di issue, PR body, atau run artifact.
Coding-agent example
Agent berikutnya membaca note, lalu melanjutkan trace role cache. Jika ia menemukan expired token ternyata relevan, ia menambahkan evidence baru, bukan menimpa catatan lama.
Common mistakes
Kesalahan pertama adalah menulis summary akhir tanpa rejected hypotheses. Kesalahan kedua adalah memakai kata “investigated” tanpa status. Investigated bukan verified.
Practical exercise
Tulis progress note untuk satu bug yang belum selesai. Pisahkan verified, rejected, unverified, evidence, dan next action.
Key takeaways
- Chat history bukan state yang reliable.
- Rejected hypothesis adalah aset.
- Next action membuat restart cepat.