## Pilihan basis data yang usianya buruk

Sebuah perusahaan membangun satu agen untuk dukungan pelanggan. Ini menyimpan pengamatan dalam database, Postgres, Mongo, Redis, apa pun yang sudah dijalankan tim. Beberapa bulan kemudian, tim lain membuat agen kesehatan akun. Seseorang menghubungkannya karena manusia bosan menyalin-menempelkan konteks antar alat. Koneksi itu, tabel database bersama, menjadi status bersama multi-agen secara tidak sengaja.

Tiga agen kini berbagi status tentang akun pelanggan: dukungan masuk, penilaian kesehatan, dan rekomendasi pembaruan.

Agen pendukung memproses pelanggan dan toko yang frustrasi: "pelanggan menyatakan ketidakpuasannya terhadap harga, mempertimbangkan alternatif." Agen penilaian kesehatan membaca ini, menurunkan peringkat akun. Agen pembaruan membaca skor yang diturunkan, membuat dan mengirimkan penawaran diskon. Semua dalam hitungan menit. Tidak ada manusia dalam lingkaran itu.

Pengamatan awal agen pendukung itu salah. Pelanggan frustrasi karena kesalahan penagihan, bukan kesalahan penetapan harga. Namun ekstraksi memori yang dimediasi LLM memampatkan interaksi tersebut menjadi ringkasan yang menyesatkan, dan ringkasan tersebut disebarkan melalui keadaan bersama sebagai kebenaran dasar.

Pengambilan berhasil di setiap langkah. Kegagalannya ada pada penulisannya. Tidak ada sistem apa pun yang dapat mendeteksi bahwa pengamatan awal tidak sesuai dengan sumbernya, atau menelusuri rantai sebab akibat dari penulisan yang buruk hingga tindakan yang buruk.

## Mengapa sistem agen tunggal menutupi masalah tersebut

Dengan satu agen menulis ke satu penyimpanan memori, kerusakan tulis menurunkan kualitas secara perlahan. Agen merangkum pengamatannya sedikit salah. Itu menimpa atribut entitas. Ini menyimpan fakta-fakta yang kontradiktif. Sistem masih berfungsi. Ini secara bertahap menjadi kurang dapat diandalkan. Lapisan memori tidak pernah disalahkan karena mode kegagalan tampak seperti masalah LLM.

Di sinilah hampir semua orang berada saat ini. Rasa sakitnya bersifat laten. Tidak ada yang bisa menjawab pertanyaan mendasar: apa yang dipelajari agen tersebut, kapan, dari sumber apa, hal tersebut bertentangan dengan sesuatu yang disimpannya minggu lalu. Namun sistemnya tidak terlihat rusak. Kepercayaan terkikis secara halus.

## Apa yang berubah dengan banyak agen

Ketika Agen A menulis pengamatan yang dibaca dan ditindaklanjuti oleh Agen B, topologi kegagalan yang berbeda muncul.

**Penguatan kontradiksi.** Dua agen menyimpan fakta yang bertentangan tentang entitas yang sama dari interaksi yang berbeda. Agen ketiga datang untuk mengambil tindakan dan melihat fakta apa pun yang muncul di lapisan pengambilan, tanpa dasar untuk mengambil keputusan di antara keduanya. Tanpa log observasi tambahan dengan stempel waktu dan atribusi sumber, tidak ada jalur forensik untuk memahami kontradiksi tersebut.

**Cascade penimpaan senyap.** Agen A memperbarui data. Agen B, yang beroperasi pada pembacaan basi, menulis pembaruannya sendiri yang secara implisit mengembalikan perubahan Agen A. Dalam database yang bisa berubah, hal ini hampir tidak terdeteksi. Dalam log tambahan saja dengan pengamatan terkait hash, hal itu secara struktural tidak mungkin.

**Keruntuhan batas kepercayaan.** Status bersama berarti setiap agen memercayai penulisan yang lain. Namun agen memiliki kemampuan, konteks cepat, dan profil kesalahan yang berbeda. Agen analisis keuangan khusus dan agen pendukung tujuan umum mungkin tidak memiliki otoritas menulis yang setara atas negara entitas yang sama. Dalam database datar tanpa batasan skema tentang siapa yang dapat menulis apa, mereka dapat melakukannya.

## Empat fase

Industri ini bergerak melalui jalur yang dapat diprediksi.

### 1. "Gunakan saja Postgres" (atau [gunakan saja file penurunan harga](/posts/the-markdown-memory-ceiling))

Manus, Claude Code, dan OpenClaw semuanya menggunakan file teks biasa sebagai memori. Evolusi konvergen, bukan pedoman bersama. Saat sebuah tim meraih database, memori akan dimasukkan ke apa pun yang sudah ada: RAG melalui Postgres dengan pgvector, Redis untuk status sesi, penyematan di Pinecone. Jalur mana pun berfungsi untuk kasus penggunaan sederhana. Model mentalnya adalah agen perlu mengingat barang, file atau database menyimpan barang, masalah terpecahkan.

### 2. Pengoptimalan pengambilan

Produk seperti Mem0, Zep, dan MemPalace menerima bahwa agen memerlukan abstraksi memori khusus tetapi membingkai masalahnya sebagai kualitas pengambilan. Bagaimana memasukkan konteks yang tepat ke dalam prompt pada waktu yang tepat. Hal ini memecahkan masalah yang sudah dirasakan oleh pengembang: penarikan kembali yang buruk, jendela konteks yang membengkak, pengambilan yang tidak relevan. Namun fase ini membiarkan jalur penulisan tidak diaudit. Apapun ekstrak LLM diperlakukan sebagai kebenaran dasar.

Fase ini akan mendominasi selama satu atau dua tahun ke depan karena rasa sakit saat pengambilan kembali dapat terlihat. Pengembang memperhatikan ketika agen lupa atau mengambil hal yang salah. Korupsi tulis tidak terbaca. Agen bertindak dengan percaya diri dalam keadaan buruk dan tidak ada yang menyadarinya sampai konsekuensi hilir muncul.

### 3. Krisis kepercayaan

Hal ini terjadi ketika para agen beralih dari asisten berisiko rendah menjadi aktor berisiko tinggi, mengelola keuangan, membuat keputusan pengadaan, menangani alur kerja kepatuhan, beroperasi secara mandiri selama berhari-hari atau berminggu-minggu. Pertanyaannya beralih dari "apakah agen mengambil barang yang benar?" menjadi "dapatkah saya membuktikan apa yang diketahui agen, kapan agen mengetahuinya, dan apakah pengetahuan tersebut sah?"

Kegagalan tingkat tinggi di mana agen bertindak pada kondisi memori yang rusak akan memaksa perubahan ini. Pembeli perusahaan akan meminta jejak audit. Regulator di bidang keuangan dan layanan kesehatan memerlukan sumber yang deterministik.

### 4. Bifurkasi

Industri ini terpecah. Jalur A: database yang ada menambahkan primitif agen. Postgres mendapatkan ekstensi untuk pencatatan observasi dan resolusi entitas. Supabase atau PlanetScale mengirimkan lapisan produk "memori agen". Hal ini mencakup banyak kasus penggunaan dengan persyaratan kepercayaan yang moderat.

Jalur B: infrastruktur negara agen yang dibangun khusus untuk agen yang beroperasi melintasi batas kepercayaan, mempertahankan keadaan otonom yang sudah berjalan lama, atau memerlukan asal kriptografi. Invarian kunci (resolusi entitas deterministik hanya tambahan, tertaut hash, dibatasi skema, dan deterministik) adalah komitmen arsitektural yang tidak dapat dipasang secara andal sebagai ekstensi database.

Ini adalah jalur di mana sistem agen mencapai potensi penuhnya. Agen yang dapat mempercayai negaranya sendiri, menelusuri alasan mereka sendiri, dan berkoordinasi dengan agen lain tanpa melakukan korupsi diam-diam secara kualitatif lebih mampu dibandingkan agen yang menggunakan memori upaya terbaik.

Integritas tulis bukanlah fitur keamanan yang dipasang setelah kejadian tersebut. Ini adalah fondasi yang memungkinkan pengoperasian otonom.

## Bagaimana sistem multi-agen sebenarnya akan dibangun

Sebagian besar tidak dirancang sebagai sistem multi-agen. Mereka akan bertambah.

**Hub-and-spoke dengan human hub** adalah pola dominan saat ini. Satu agen utama menghadapi pengguna dan mendelegasikan subtugas ke agen khusus. Status bersama adalah jendela konteks agen utama. Risiko integritas tulis rendah. Namun topologi ini memiliki batasan yang sulit: agen hub mengalami kemacetan dan tidak dapat mempertahankan konteks di seluruh alur kerja yang berjalan lama. Ini dipetakan ke fase 1 dan 2: "gunakan saja Postgres" atau lapisan pengambilan berfungsi dengan baik karena satu agen mengontrol negara.

**Agen saluran pipa** adalah yang berikutnya. Serah terima berurutan di mana setiap agen memproses dan memperkaya item kerja. Memimpin kualifikasi untuk penelitian perusahaan, penyusunan penjangkauan, hingga penjadwalan pertemuan. Integritas penulisan mulai penting di sini. Jika agen riset menyimpan data perusahaan yang salah, setiap agen hilir akan melakukan kalibrasi yang salah. Di sinilah tim mulai beralih dari fase 2 ke fase 3: pengambilan kembali masih berhasil, namun krisis kepercayaan mulai muncul di bawah permukaan.

**Agen berbasis peristiwa dengan konteks bersama** menyusul. Beberapa agen berlangganan peristiwa dari lingkungan bersama (CRM, basis kode, saluran komunikasi), mempertahankan perspektif mereka sendiri, dan menulis observasi kembali ke penyimpanan umum. Tidak ada orkestra. Ini adalah fase 3 secara keseluruhan: penulisan secara bersamaan dari agen dengan kerangka interpretasi yang berbeda, tidak ada koordinator yang dapat menangkap kontradiksi, dan integritas penulisan menjadi sangat berbahaya.

**Agen otonom persisten dengan status yang berjalan lama** adalah status akhir. Agen berjalan terus menerus, mempertahankan model dunia yang terus berkembang, melakukan sinkronisasi secara berkala dengan agen lain atau gudang kebenaran bersama. Jendela konteks tidak dapat berfungsi sebagai memori. Agen-agen ini memerlukan penyimpanan persisten dengan jaminan integritas nyata. Ini adalah fase 4: percabangan. Entah infrastruktur Anda dibangun untuk ini atau tidak.

Ketegangan utamanya adalah banyak pengembang memilih penyimpanan mereka pada topologi satu dan dua, ketika risiko negara bersama tidak terlalu besar. Mereka memilih database apa pun yang sudah mereka miliki dan menambahkan tabel kenangan. Pada saat mereka mencapai topologi tiga dan empat, komitmen arsitektural sudah tertanam. Bermigrasi dari keadaan yang bisa berubah ke keadaan hanya tambahan bukanlah pertukaran perpustakaan. Ini adalah arsitektur ulang.

## Permukaan integrasi yang penting

Arsitektur pemenangnya mungkin bukan "ganti database Anda" tetapi "duduk di antara agen dan database Anda".

Agen menulis observasi ke lapisan integritas tulis: hanya tambahan, dibatasi skema, dilacak asal usulnya. Lapisan tersebut mengelola status yang dapat dibaca agen. Basis data pengembang yang ada tetap menjadi sistem pencatatan data bisnis, catatan pelanggan, transaksi, katalog produk. Namun keadaan, pengamatan, kesimpulan, resolusi entitas, keputusan yang dihasilkan oleh agen, berada dalam lapisan yang dibuat khusus.

Dalam praktiknya, kedua lapisan tersebut berbicara satu sama lain. Agen membaca catatan pelanggan dari Postgres, menjalankan analisis, dan menulis pengamatannya (skor kesehatan, risiko churn, tindakan yang disarankan) ke lapisan integritas tulis dengan referensi kembali ke catatan sumber. Agen kedua menanyakan lapisan integritas untuk semua pengamatan tentang pelanggan tersebut, mendapatkan gambaran yang konsisten dengan asal usulnya, dan mengambil tindakan berdasarkan informasi tersebut. Jika terjadi kesalahan, Anda menelusuri rantainya: agen mana yang menulis apa, kapan, berdasarkan sumber data yang mana. Basis data bisnis tidak pernah tercemar dengan status yang dihasilkan agen, dan lapisan agen tidak pernah kehilangan jejak dari mana observasinya berasal.

Perbedaan antara "data bisnis yang ditulis manusia" dan "status pengamatan yang ditulis oleh agen" adalah gambaran paling jelas mengapa lapisan data baru diperlukan. Anda tidak mengganti database mereka. Anda menambahkan lapisan untuk kategori data yang tidak ada sebelum agen mulai menulis secara mandiri.

## Apa yang saya bangun

Inilah yang dilakukan [Neotoma](https://github.com/markmhendrickson/neotoma). Pengamatan hanya tambahkan. Asalnya terkait hash. Penulisan dengan batasan skema. Resolusi entitas deterministik. Setiap observasi yang ditulis agen dapat dilacak, diaudit, dan konsisten sejak hari pertama.

Saya telah menjalankan tumpukan agen saya sendiri melaluinya. Beberapa agen (triase email, manajemen tugas, keuangan, perencanaan konten) semuanya menulis ke toko yang sama. Bagi saya, masalah negara bersama multi-agen bukanlah hipotesis. It's the thing I hit every week when one agent's extraction contradicts another's, or when a stale read produces a downstream action on bad state.

Biaya menunggu untuk mengadopsi integritas tulis bukanlah utang teknis yang dapat Anda bayar nanti. Ini adalah celah dalam riwayat audit Anda. Segala sesuatu sebelum migrasi adalah kotak hitam. Kesenjangan itu bersifat permanen.