Oasis Q3 2022 Pembaruan Engineering

0xandi.eth
Oasis Foundation Indonesian
7 min readDec 6, 2022

Q3 telah menjadi beberapa bulan yang sibuk bagi tim Oasis Engineering.

Disclaimer : Publikasi ini merupakan terjemahan dari Oasis Ambassador. Pemeriksaan teliti dilakukan guna memberikan terjemahan yang akurat. Mereka mungkin melakukan kesalahan atau kelalaian, pihak Oasis tidak bertanggung jawab atas keakuratan dan ketelitiannya. Silahkan Kunjungi artikel asli disini.

Kami telah membuat langkah besar dalam membawa Sapphire ke lapisan ParaTime dengan peluncurannya di Testnet pada akhir Juli. Sekarang dimungkinkan untuk membangun dan menyebarkan kontrak pintar rahasia EVM ke Sapphire ParaTime di Testnet — lihat tutorial di bawah ini!

Selain itu, tim juga telah bekerja untuk memelihara Cipher dan Emerald, dengan ParaTimes ini tidak mengalami downtime.

Dompet Oasis — Web, basis kode umum masa depan untuk semua Dompet Oasis, juga memiliki beberapa peningkatan besar untuk mendukung penyimpanan lokal browser dan transaksi ParaTime. Ini membuat kami semakin dekat untuk merilis Dompet Oasis — Ekstensi Browser 2.0, yang dibuat dari basis kode umum.

Sepanjang kuartal ini, pembaruan berkelanjutan, peningkatan, dan tiga rilis pemeliharaan ke Oasis Core, node Oasis yang menggerakkan engine yang mendasarinya, juga telah dibuat.

Kami berharap dapat membangun periode sibuk ini dan memasuki kuartal keempat tahun ini, di mana pembaruan besar lainnya akan dilakukan terutama, peluncuran Sapphire ke Mainnet.

Untuk detail lengkap tentang pembaruan teknik, silakan lihat di bawah.

PEMBARUAN DOMPET

Dompet Oasis — Web telah mengalami perkembangan signifikan di Q3 untuk mendukung penyimpanan lokal browser dan transaksi ParaTime. Kami berencana untuk merilis dukungan untuk ParaTimes akhir tahun ini, diikuti oleh Oasis Wallet — Ekstensi Browser generasi berikutnya, yang dibuat dari basis kode umum ini. Kami menggabungkan 112 pull request. Beberapa penambahan dan perbaikan yang paling menonjol (termasuk pekerjaan di cabang ParaTimes):

· Tampilkan daftar transaksi ParaTime (#849)

· Perbaikan ekstensi browser (#904)

· Tambahkan aturan lint untuk menerapkan penggantian tipe-safe (#911, #914)

· Default ke saldo nol, bukan 0 (menampilkan ‘-’ untuk saldo tidak diketahui (#916)

· Hanya tampilkan AddEscrowForm di akun (#918)

· Tandai transaksi yang gagal (#925)

· Jangan gunakan kolom saldo yang menyesatkan dari RPC (#927)

· Tambahkan tombol “Reclaim All” (#931, #932)

· Ubah UI agar menyerupai Dompet Oasis — Ekstensi browser (#933, #935, #936, #937)

· Tingkatkan presisi numerik dengan BigNumber.js (#952)

· Setoran dan penarikan ParaTime (#962, #969)

· Tampilkan perkiraan waktu debonding dalam daftar debonding (#963)

· Mempercepat memuat konfigurasi jaringan sebesar 40% (#976)

· Perbaiki mengimpor banyak akun dari Buku Besar/Ledger (#980)

· Tambahkan dukungan untuk mendapatkan banyak akun dari mnemonic (#983)

· Sebutkan ticker yang benar dalam ringkasan akun (#1026)

· Kurangi ukuran bundel (7.2MB -> 5.4MB) dengan impor grommet yang konsisten (#1038)

. Perbaikan dan pembersihan UI yang lebih kecil (#868, #879, #903, #919, #921, #922, #928, #946, #947, #949, #953, #958, #999, #979, #1019, #1049)

Sementara Dompet Oasis — Basis kode Web akan segera menjadi basis kode umum untuk kedua dompet, kami terus meningkatkan Dompet Oasis — Ekstensi Browser. Di Q3, kami menggabungkan 9 pull request dan merilis versi 1.8.0. Perubahan penting adalah:

· Tambahkan Safir di testnet (#279)

· Tingkatkan presisi numerik dalam escrow reclaim (#281)

· Jajak pendapat untuk status transaksi safir (transaksi diindeks sekarang) (#285)

· Perbaiki bug “nonce tidak valid” (#282)

· Perbaikan dan pembersihan UI yang lebih kecil (#280, #282, #286)

Oasis CLI — CLI terpadu untuk mengelola akun dan kontrak cerdas Anda di Oasis — juga telah mengalami beberapa peningkatan:

· Tambahkan dukungan untuk membuang kontrak WASM yang diterapkan (#1007)

· Tambahkan dukungan dump status kontrak (#1034)

· Cari alamat berdasarkan nama akun, tambahkan dukungan untuk akun percobaan (#1038)

· Cari alamat berdasarkan nama akun, tambahkan dukungan untuk akun percobaan (#1052)

· Tambahkan dukungan untuk buku alamat (#1087)

Untuk menandatangani transaksi ParaTime dengan dompet perangkat keras seperti Ledger, spesifikasi ADR 14 baru telah diusulkan. Implementasi akan dimulai pada Q4.

PEMBARUAN PARATIME

· ParaTimes Emerald dan Cipher stabil di Mainnet sepanjang Q3, tidak mengalami downtime atau insiden lainnya.

· Efek dari pasar beruang pada penggunaan DeFi dapat dilihat pada volume transaksi di Emerald. Puncak harian untuk Q3 adalah pada awal Juli dengan sekitar 60 ribu transaksi per hari, terus menurun dan mengakhiri kuartal dengan 16 ribu-18 ribu transaksi per hari.

· 52 node menjalankan Emerald ParaTime di Mainnet mulai 30 Sep.

. 29 node menjalankan Cipher ParaTime di Mainnet pada 30 Sep.

PENGEMBANGAN PARATIME
Q3 melihat sejumlah perkembangan besar untuk Oasis ParaTimes.

Pada akhir Juli, kami berhasil menerapkan Sapphire ParaTime rahasia baru yang kompatibel dengan EVM di Testnet. Kode ini tersedia di repo GitHub sapphire-paratime dan oasis-sdk.

Untuk kenyamanan, kami menambahkan dukungan untuk membuang kode kontrak pintar yang diterapkan pada Cipher ParaTime dan membuang status kontrak pintar (dienkripsi secara opsional). Ini membuka jalan untuk memverifikasi kontrak on-chain dan akan membantu proses debug.

Ringkasan perubahan Runtime SDK:

· Tambahkan perpustakaan transportasi enkripsi ke web-ts; tes deriv_symmetric_key untuk go, rust, dan TypeScript (#962)

· Alat ORC: Tambahkan dukungan untuk menandatangani binari SGXS (#1056)

· EVM: Tidak memerlukan enkripsi string kosong (#1064)

· Perbaikan komputasi gas: Perbaiki pengiriman subpanggilan (#1066)

· EVM: Mengekspos data publik dalam kueri yang ditandatangani (#1069)

· EVM: Tambahkan prakompilasi enkripsi (#1102)

· EVM: Jangan menyandikan kontrak buat keluaran (#1138)

· Pengujian dan dokumentasi yang ditingkatkan (#991, #1041, #1046, #1047, #1081, #1101)

PEMBARUAN PLATFORM PENGEMBANG
Sekarang dimungkinkan untuk membangun dan menyebarkan kontrak pintar rahasia EVM ke Sapphire ParaTime di Testnet. Jangan ragu untuk melihat tutorial dan memberi kami umpan balik.

Emerald Web3 Gateway sekarang mendukung Emerald dan Sapphire ParaTimes. Perbaikan lainnya sebagian besar mencakup benjolan versi ketergantungan. Di Q3, kami menggabungkan 9 pull request. Rilis v3.0.0 baru dibuat dengan perbaikan pada fungsi estimasi gas, dan rilis v3.1.0-rc1 menambahkan dukungan untuk Sapphire.

Dokumentasi kami terdiri dari file penurunan harga dari beberapa repositori, dan melihat perombakan besar-besaran di Q3 baik dari sisi backend maupun frontend. Kategori frontend sekarang berorientasi audiens alih-alih berorientasi komponen:

· Pengguna jaringan Oasis (informasi umum tentang jaringan Oasis dan yayasan, panduan terkait dompet)

· Informasi terkait komunitas

· Operator node (parameter jaringan Mainnet dan Testnet, menyiapkan berbagai jenis node dan layanan)

· pengembang dApp (menulis aplikasi untuk zamrud, safir, dan sandi ParaTimes)

· Pengembang ParaTime

· Kontributor inti

Peningkatan Backend :

· Dukungan untuk mengedit file Penurunan harga apa pun terlepas dari lokasi repositori asli

· Tautan mulus dari file .md dan kartu dokumen yang direferensikan dari repositori lain

· Dukungan untuk mengimpor cuplikan kode dari file

· Untuk backward compatibility, pengalihan telah disiapkan untuk semua dokumen sebelumnya

Dokumentasi telah dipindahkan dari domain docs.oasis.dev ke docs.oasis.io. Kami harap Anda akan menikmati perubahan baru. Jangan ragu untuk menyumbangkan tutorial, panduan, dan perbaikan dengan mengunjungi https://github.com/oasisprotocol/docs dan membuat permintaan tarik!

ADR 17 memperkenalkan format standar untuk standar interoperabilitas aplikasi khusus ParaTime. Ini sejalan dengan RFP pertama kami yang meminta standar token yang dapat dipertukarkan rahasia untuk Sapphire ParaTime.

PEMBARUAN PLATFORM INTI

Tiga rilis pemeliharaan Oasis Core 22.1.x diterbitkan di Q3 (v22.1.9, v22.1.10, v22.1.11). Secara paralel, pengembangan Oasis Core 22.2.x dimulai dengan fitur-fitur utama seperti Intel SGX2, pengesahan berbasis DCAP, peningkatan tata kelola on-chain, dan keamanan runtime berbasis TEE. Rilis stabil direncanakan di awal Q4. Secara keseluruhan, 64 pull request digabungkan di Q3. Fitur-fitur baru yang menonjol dan perubahan yang melanggar sebagai berikut (sebagian besar dijadwalkan untuk mendarat di Oasis Core 22.2.x, dan beberapa di-backport ke 22.1.x):

· go/staking/grpc: Ganti nama salah nama metode GovernanceDeposits (#4652)

· go/runtime: Mengamanatkan penggunaan kontrol jadwal runtime (#4665)

· Tambahkan dukungan untuk pengesahan PCS (#4806, #4789, #4720, #4752)

· go/governance: Tambahkan proposal perubahan parameter (#4938)

· Tambahkan dukungan mode arsip (#4539)

· go/control: Menampilkan status opsi debug di output kontrol (#4634)

· runtime: Jadikan status pemeriksaan transaksi persisten dapat dikonfigurasi (#4640)

· go/runtime/txpool: Batasi transaksi terutang per pengirim (#4665)

· go/control/status: Jadikan pemilihan rekan sinkronisasi pos pemeriksaan lebih cerdas (#4669)

· go/worker/storage: Jadikan pemilihan rekan sinkronisasi pos pemeriksaan lebih cerdas (#4671)

· runtime: verifikasi Epoch di dispatcher menggunakan konsensus verifier (#4677)

· go/worker/compute: Pastikan root kepercayaan diverifikasi sebelum mendaftar (#4678)

· go/worker/compute: Mulai resolusi batch lebih awal untuk pekerja cadangan (#4679)

· go/runtime/txpool: Tambahkan data roothash pesan masuk sebagai transaksi (#4681)

· go/worker/registration: tambahkan metrik status node (#4686)

· runtime: Aktifkan petugas operator untuk memverifikasi integritas status untuk kueri (#4694, #4830, #4904)

· go/worker/common/p2p: Tambahkan dukungan untuk rekan yang persisten dan terblokir (#4713)

· go/worker/common: Menangani konfigurasi manajer kunci dinamis dengan benar (#4715)

· go/runtime/txpool: Tambahkan metrik txpool untuk transaksi runtime yang ditolak (#4724)

· runtime: Verifikasi RAK dalam status konsensus saat melayani permintaan (#4741)

· runtime: Tambahkan dukungan untuk pelaporan umpan balik rekan EnclaveRPC (#4757)

· archive-mode: nonaktifkan P2P runtime jika mode arsip digunakan (#4775)

· go/consensus/tendermint: Tambahkan konsensus.tenderint.halt_height (#4793)

· net-runner: Tambahkan — flag fixture.default.runtime.version (#4813)

· go/oasis-node: izinkan km memiliki peer pribadi (#4821)

· go/runtime/registry: izinkan node klien menjalankan runtime sgx (#4832)

· go/worker/keymanager: Tambahkan metrik pekerja manajer kunci (#4877)

· go/control/status: Tambahkan status pekerja manajer kunci ke status node (#4883)

· keymanager: Tambahkan dukungan untuk kunci ephemeral (#4888)

· oasis-net-runner: Tetapkan max_allowances default, tingkatkan saldo akun uji (#4902)

· runtime/consensus/verifier: Mendukung pemutakhiran lapisan konsensus root kepercayaan (#4903)

· runtime: Mendukung kueri acara konsensus (#4904)

· keymanager: Validasi tinggi root kepercayaan terbaru dalam permintaan manajer kunci (#4910)

· registry: Tambahkan transaksi lapisan konsensus ProveFreshness (#4916)

· runtime: Tambahkan verifikasi kesegaran TEE node klien (#4922)

· keymanager: Verifikasi bahwa kebijakan diterbitkan di lapisan konsensus (#4925)

· Ikat pengesahan TEE ke node dan terapkan freshness (#4926)

· go/genesis: Cache menghitung hash dokumen genesis (#4919)

· go/oasis-node/cmd: reset tidak aman mempertahankan penyimpanan lokal secara default (#4700)

· go/oasis-node/cmd: unsafe-reset periksa validitas datadir (#4702)

· runtime: Keluarkan log runtime sebagai log oasis-node (#4709, #4924)

Pengindeks Oasis baru, yang mendukung pengindeksan kedua lapisan konsensus dan transaksi ParaTime, telah bersumber terbuka. Di Q3, fokusnya sebagian besar pada membangun fitur dasar, menambahkan caching, memperbaiki bug, dan meningkatkan alat penerapan. 25 PR telah digabungkan. Kami berencana untuk memperbarui Dompet Oasis untuk menggunakan Pengindeks Oasis di masa mendatang.

ADR 15 telah diusulkan untuk mengatasi kelemahan dalam proses pemilihan pengusul blok ParaTime. Pengusul blok saat ini dipilih melalui algoritma round-robin, sehingga mudah untuk menentukan pengusul untuk blok yang diberikan jauh sebelumnya. ADR 15 mengusulkan mekanisme untuk mengacak urutan pengusul blok Paratime.

ADR 16 mengusulkan proses yang lebih efisien untuk memperbarui parameter konsensus di Jaringan Oasis. Saat ini, untuk mengubah parameter konsensus, seseorang perlu memperbarui binari oasis-node, memulai ulang dan menyinkronkan ulang dengan versi jaringan konsensus yang baru. ADR 16 menambahkan proposal tata kelola ChangeParametersProposal baru yang dapat mencegah waktu henti dan meningkatkan ketahanan jaringan.

--

--