Observe 33 min

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.