Saya membuka jalur Gateway Newton( @NewtonProtocol ) dengan harapan menemukan titik kontrol.
Itu kesalahan pertama saya.
Kata Gateway melakukan sesuatu pada pikiran Anda.
Itu membuat sistem terasa seperti punya satu pintu.
Satu tempat di mana permintaan masuk.
Satu layanan yang bisa berkata ya, tidak, menunda, mengubah bentuk, atau mendorong.
Itu bacaan yang mudah.
Tapi Newton membuat Gateway itu lebih aneh dari itu.
Gateway itu cukup dekat dengan jalur transaksi untuk terlihat berdaya, tetapi tidak cukup dekat untuk menjadi kenyataan.
Ia bisa menerima.
Ia bisa merutekan.
Ia dapat mengorkestrasi.
Tapi ia tidak bisa diam-diam berubah menjadi operator.
Batas itu penting.
Seorang pengguna mengirim sebuah maksud melalui JSON-RPC.
Gateway melihat permintaan tersebut.
NATS membawa pesan melewati seluruh sistem.
Perutean operator dimulai.
Dari luar, itu mulai terlihat seperti backend yang memutuskan.
Sebuah permintaan masuk.
Sebuah hasil kembali.
Keadaan yang bersih muncul.
Semua orang santai.
Di situlah sebagian besar sistem menjadi kabur.
Layanan yang memindahkan permintaan mulai terasa seperti layanan yang menyetujui permintaan itu.
Newton tidak boleh membiarkan kekaburan itu.
Jika Gateway bisa diam-diam mengubah hasil kebijakan, tumpukan akan runtuh menjadi kepercayaan pada middleware.
Jika ia bisa memalsukan tanda tangan operator, perutean operator akan menjadi sandiwara.
Jika ia bisa menempelkan data tanpa penanda tangan, attestasi data ECDSA akan menjadi label alih-alih bukti.
Jadi Gateway harus tetap terperangkap dalam perannya.
Berguna.
Perlu.
Hampir untuk semuanya.
Tapi bukan kedaulatan.
Ia menerima panggilan dari luar.
Ini mengoordinasikan rute.
Mungkin ini adalah hal pertama yang disentuh seorang developer di Newton.
Tapi penting tidak sama dengan otoritas.
Gateway dapat mengorganisasi jalurnya.
Ia tidak bisa memalsukan bukti yang membuat jalur itu dapat dipertahankan.
Tanda tangan operator tetap penting.
Attestasi data ECDSA masih penting.
Keterlibatan paksa tetap penting.
Hasil kebijakan tetap harus berasal dari jalur evaluasi, bukan dari tempat yang menangani trafik.
Keterlibatan paksa adalah bagian yang tidak nyaman di sini.
Ini mencegah Gateway menjadi titik kemacetan yang tenang.
Jika orkestrasi berubah menjadi penahanan, permintaan perlu memiliki cara untuk kembali terlihat.
Itu tidak membuat Gateway lemah.
Itu membuat Gateway menjadi terbatas.

Dan infrastruktur yang terbatas biasanya lebih dapat dipercaya daripada infrastruktur yang kuat yang berpura-pura netral.
Sistem tidak menghapus koordinasi.
Ini menghilangkan kemampuan untuk membingungkan koordinasi dengan otoritas akhir.
Sebuah Gateway dapat membuat sebuah transaksi terasa terkontrol karena ia berada dekat dengan pintu masuk.
Tapi pertanyaan mendalam Newton lebih keras:
Siapa yang menandatangani?
Kebijakan apa yang dievaluasi?
Data apa yang diatestasi?
Permintaan diarahkan, atau diam-diam dibentuk?
Itu garisnya.
Gateway Newton dapat membawa permintaan.
Ia tidak bisa menjadi alasan permintaan itu dipercaya.
