Archived lesson · historical design
Mailbox, bukan CCTV (arsip)
Penjelasan desain completion reporting Amux lama. Bukan dokumentasi command yang masih didukung.
Secara historis, Amux memisahkan durable mailbox untuk hasil dari doorbell murah untuk membangunkan coordinator. Pola ini tetap berguna untuk dipelajari, tetapi implementasi worker/report/callback Amux sudah tidak aktif.
/amux-tycho adalah bridge receipt terpisah dan explicit-only untuk executor eksternal.
Desain historis: simpan dulu, bunyikan bel kemudian
Urutannya sengaja ketat: persist report sebelum callback. Jadi jika callback gagal, report tidak hilang. Jika callback terkirim dua kali, token kedua tidak boleh mengubah state. Dan acknowledgement hanya berarti “sudah diterima”, bukan “boleh merge atau cleanup”.
Sumber historis: snapshot kontrak lama↗
Simulasi historis: polling versus durable report
Micro-world konseptual—bukan Amux CLI aktif
Things to try: tekan “Baca session” dua kali saat masih running. Reset, lalu pilih “callback gagal”. Perhatikan bahwa bel gagal tetapi report tetap bisa ditemukan melalui durable pending.
00 · Coordinator menugaskan subagent. Subagent running.
Lalu apa bedanya dengan /amux-tycho?
Karena Mas pembuat Tycho, framing yang paling tepat: /amux-tycho bukan orchestrator pengganti Tycho. Ia adalah adapter delivery di sisi Amp yang menerapkan ide serupa untuk hasil dari exact Tycho route, dengan boundary lebih ketat. Tycho tetap bebas mengorkestrasi provider di dalam domainnya, tetapi pada boundary ini Tycho hanya menjadi producer dengan authority report_only; Amp thread asli tetap coordinator, consumer, dan acknowledger.
| Lapisan | State flow | Yang bukan bukti selesai |
|---|---|---|
| Amux report lama | ready|blocked → acknowledged → authorized → merged | Callback, pane text, atau timeout |
/amux-tycho | created → valid_report → delivered → acknowledged | Process exit, log, hook, atau prose |
| Target Tycho berikutnya | Satu direct structured complete|blocked return | Side inbox atau transcript mining |
Boundary Tycho: skill source saat ini↗
Seam yang ingin kami capai bersama Tycho
Idealnya, satu request Amp ke exact Tycho route mengembalikan tepat satu object terautentikasi pada turn yang sama: status, summary, findings, blockers, dan verification. Object itu harus correlated ke Amp thread/request dan task/artifact identity; tanpa fallback, transcript mining, side inbox, atau automatic retry. Kalau field run membuktikan seam ini, receipt + consume + acknowledge compatibility bridge tidak perlu dibuat untuk work baru.
Status saat ini: desain lama sudah dihapus
Kami belajar bahwa mailbox + doorbell adalah pola yang benar. Tetapi native Amp kini sudah punya parent/child association, authenticated messaging, reply routing, dan waiting. Karena itu Amux tidak membuat database bayangan baru untuk child baru, dan command koordinasi lamanya sudah dihapus.
| Kasusmu | Pilihan sekarang |
|---|---|
| Agent dan subagent sama-sama native Amp | Pakai native child creation + reply routing/waiting. Jangan onboard ke group/report Amux baru. |
| Sudah punya durable group/report Amux lama | Pertahankan bytes sebagai evidence inert. Jangan memakai binary lama, mengedit store, acknowledge, authorize-finish, atau membuat terminal transition. |
| Executor eksternal melalui Tycho | /amux-tycho bisa dipakai secara explicit-only dan conditional; Tycho hanya mengirim typed report. |
| Orchestrator buatan sendiri | Ambil kontraknya: durable report + cheap wake-up + idempotency + coordinator-owned verification. Tidak harus mengadopsi seluruh Amux. |
Arah aktif: ADR 0009↗
“Secara historis Amux memisahkan
durable truth dari wake-up. Mekanisme worker/group/report/callback itu sekarang sudah dihapus; contoh ini hanya menjelaskan desain lama dan tidak mengizinkan drain atau mutation.”
Jawaban yang bisa langsung dikirim ke temanmu
“Iya, Mas—secara pattern ini problem yang dahulu kami pecahkan di Amux: durable result dipisahkan dari wake-up. Implementasi worker/group/report/callback itu sekarang historical-only dan tidak boleh dijalankan atau di-drain; native Amp menangani koordinasi Amp-to-Amp baru.
Di/amux-tycho, kami adaptasi pattern itu untuk output dari Tycho. Bukan mengganti orchestration Tycho: Tycho tetap mengatur agent/provider-nya, sedangkan boundary ke Amp hanya memberi Tycho authorityreport_only. Receipt mengikat Amp origin, exact Tycho route, dan task/artifact digest; hanya typedcomplete/blockedsubmit yang dianggap hasil—bukan process exit atau log.
Nuansanya,/amux-tychoadalah bridge terpisah yang masih experimental. Target akhirnya justru lebih simpel: exact Tycho route return satu structured result langsung ke invoking Amp turn, authenticated dan correlated. Kalau seam itu terbukti, side receipt/consume/ack tidak diperlukan untuk work baru. Group/report core Amux lama tetap inert dan dipertahankan tanpa mutation.”
Cek pemahaman
Primary source
Baca ADR 0009 untuk arah saat ini: native Amp menangani koordinasi work baru, Amux tetap meluncurkan runner lokal, dan store koordinasi lama inert tanpa command drain. ADR 0007 tetap sebagai sejarah keputusan yang sudah dipersempit.
Diskusi asal
Lesson ini lahir dari thread publik Amp tentang amux, Tycho, dan completion reporting. Baca thread tersebut untuk konteks pertanyaan asli dan proses penyusunan jawabannya.
Tanyakan follow-up kapan saja—terutama jika ingin memetakan pola ini ke orchestrator temanmu sendiri.
Archived lesson · amux.zainf.dev · desain historis, bukan panduan command aktif.