Separate Doing from Judging
Memisahkan agent yang menulis patch dari gate yang menentukan apakah patch benar-benar selesai.
Failure pattern
Coding agent membuat patch, menjalankan satu unit test, lalu menulis “done.” Tetapi behavior user belum terbukti, e2e path belum jalan, dan risk belum dijelaskan.
Incident: PR yang terlalu cepat dinyatakan selesai
Agent memperbaiki invite acceptance dan unit test pass. Ia menandai PR ready. Reviewer menjalankan journey dari email link ke workspace setup dan menemukan flow masih gagal.
Agent melakukan work, tetapi juga menjadi judge atas completion. Itu terlalu lemah.
Harness principle
Separate doing from judging berarti implementer dan evaluator punya role berbeda. Implementer menghasilkan patch dan evidence. Judge mengecek gate.
Judge bisa manusia, CI, agent lain, atau checklist deterministic. Yang penting: implementer tidak memberi nilai akhir sendiri.
Operating practice
Evidence packet:
| Gate | Evidence | Status |
|---|---|---|
| behavior | e2e invite journey | missing |
| regression | expired token path | present |
| code scope | route + test only | present |
| risk | auth redirect explained | partial |
| human review | reviewer approval | not started |
Status “ready” hanya boleh muncul setelah gate utama pass.
Coding-agent example
Implementer menulis:
Ready for evaluation, not complete.
Evidence attached: unit test, expired token regression.
Missing: full invite e2e journey.
Evaluator mengembalikan task dengan alasan spesifik.
Common mistakes
Kesalahan umum adalah menganggap self-review cukup. Agent bisa memberi critique, tetapi critique itu bukan independent gate.
Kesalahan lain adalah membiarkan CI hijau menjadi satu-satunya judge, padahal CI mungkin tidak mencakup behavior yang diminta.
Practical exercise
Pilih satu PR. Definisikan gate implementer dan gate evaluator. Tentukan evidence minimum untuk masing-masing.
Key takeaways
- Patch selesai bukan berarti behavior verified.
- Implementer tidak boleh menjadi satu-satunya judge.
- Evidence packet membuat review lebih tajam.