CS 319 · Pertemuan 7 dari 10
Saat loop ngaco jam 3 pagi, Anda tidak akan memperbaikinya dari output akhir. Anda harus bisa memutar ulang.
Agenda · 100 menit
Bacaan: bab 14–15 · Lampiran B
Konsep inti · bab 14
Pertanyaan jam 3 pagi yang tak bisa dijawab
"Digest Selasa salah. Mengapa?" — dengan hanya output akhir, Anda punya tebakan. Kegagalannya hidup di apa yang dilihat agen-2 saat mengambil keputusan, empat langkah sebelumnya.
Yang Anda butuhkan
Mesin waktu: apa isi context window tiap agen di tiap panggilan, apa kata masing-masing, dengan keyakinan berapa, dan apa yang dilakukan agen berikutnya dengannya.
Aturan dari lapangan: snapshot context terpasang sebelum setiap panggilan model, simpan di samping output-nya. Penyimpanan murah; rekonstruksi mustahil.
Konsep inti · bab 14
1 · Log terstruktur
Siapa bilang apa, dengan keyakinan berapa, dalam skema yang bisa di-parse. Bukan prosa. Bukan print.
2 · Snapshot state
Context terpasang per panggilan, dibekukan saat keputusan diambil. Unit replay.
3 · Visualisasi trace
Graf panggilan dalam waktu (LangSmith, OpenTelemetry, atau file dot dan kesabaran). Tempat loop-dalam-loop jadi terlihat.
{"t":"2026-09-22T03:12:04Z","loop":"digest","run":88,"agent":"collector",
"call_id":"c4","tokens_in":4120,"tokens_out":380,
"inputs_hash":"a1f3","snapshot":"runs/88/c4.ctx.json",
"verdict":{"AC-1":"pass","AC-2":"pass","AC-3":"fail"},
"next":"retry(capped 2) | escalate"}
Konsep inti · bab 15
langkah idempoten — run ulang tidak boleh dobel-tagih, dobal-post, dobel-kirim
pelacakan progres — crash di langkah 7/10 dilanjutkan, bukan diulang
degradasi anggun — satu sumber mati → digest tetap terkirim dengan lubang dan catatan
anggaran biaya + token — batas keras per run dan per hari; graf adalah banyak loop membakar paralel
utilisasi konteks ≤ 60–80% — ruang lega itu fitur stabilitas (bab 5, lagi)
pinning versi model + stabilitas prompt-prefix — upgrade tindakan sadar, bukan regresi kejutan
Dan artefak yang membuat semuanya operasional: runbook — halaman yang dibaca manusia on-call jam 3 pagi. Kalau tidak ada, loop Anda bukan produksi; itu demo dengan uptime.
Artefak · 10 dari 75, dipilih untuk mata kuliah ini
☐ setiap langkah idempoten
☐ batas anggaran terpasang dan teruji
☐ stagnation breaker aktif
☐ snapshot konteks di setiap panggilan
☐ skip tercatat berbeda dari sukses
☐ versi model dipin, termasuk judge
☐ kolom hasil-landed di dashboard
☐ kredensial ter-scope per agen, per peran
☐ runbook ditulis dan dry-run oleh orang asing
☐ kill switch yang bisa ditemukan manusia jam 3 pagi
Butir 5 dan 7 datang dari praktik audit armada (Pertemuan 10): loop yang skip tak boleh mencatat ok — pembedaan tunggal itu menyembunyikan loop mati selama seminggu dalam kasus terdokumentasi.
Studi kasus · bagian 7 dari 10
Loop digest Kirana stabil di ~9k token/run selama tiga minggu. Lalu Selasa: 38k. Output terlihat normal. Tanpa snapshot ini cuma bisa dilakukan dengan mengangkat bahu.
Dengan snapshot: diff runs/88/c4.ctx.json terhadap runs/81/c4.ctx.json. Context agen collector membesar oleh dump HTML mentah — "perbaikan kecil" yang ditambahkan developer ke fetcher pada Senin. Satu batas sub-agent (bab 5) diam-diam dihapus, dan rawanya naik ke hulu ke setiap run.
Perbaikan: kembalikan langkah distilasi + assertion anggaran di verifier (gagalkan run bila tokens_in > 12k). Graf token mendatar. Retro menulis dirinya sendiri: "diff snapshot itu adalah seluruh investigasinya."
Workshop · 25 menit
Loop A6 Anda, satu halaman, untuk orang asing
Tes: serahkan ke pasangan sebelah. Mereka punya 90 detik untuk menemukan kill switch tanpa bertanya pada Anda. Kalau tidak bisa, revisi.
Tugas A7 · dikumpulkan sebelum Pertemuan 8
Tugas
Tambahkan log terstruktur dan snapshot konteks per panggilan ke loop A6 Anda. Timbulkan satu kegagalan (input buruk, matikan dependensi, kecilkan anggaran) dan replay kegagalannya hanya dari log — tanpa menontonnya langsung. Lalu finalisasi runbook.
Deliverable
Tiga baris log dari replay + satu diff snapshot dengan anotasi ("di sinilah mulai salah") · runbook final · checklist 10 butir, dicentang jujur.
Rubrik
Replay-dari-log benar-benar bekerja 40% · anotasi diff snapshot 30% · runbook lulus tes orang-asang 30%.
Pekan depan: lapisan manusianya — coaching, codifying, dan katalog anti-pattern. Baca bab 16–17.