Oasis Foundation
Published in

Oasis Foundation

Oasis Q3 2022 Engineering update

Q3 has been another busy few months for the Oasis Engineering team.

WALLET UPDATES

  • Show list of ParaTime transactions (#849)
  • Browser extension fixes (#904)
  • Add lint rules to enforce our type-safe replacements (#911, #914)
  • Default to null balance instead of 0 (show ‘-’ for unknown balance) (#916)
  • Only show AddEscrowForm on your accounts (#918)
  • Mark failed transactions (#925)
  • Don’t use misleading balance fields from RPC (#927)
  • Add “Reclaim All” button (#931, #932)
  • Change UI to resemble Oasis Wallet — Browser extension (#933, #935, #936, #937)
  • Improve numeric precision with BigNumber.js (#952)
  • ParaTime deposits and withdrawals (#962, #969)
  • Display estimated debonding time in debonding list (#963)
  • Speedup loading network configuration by 40% (#976)
  • Fix importing multiple accounts from Ledger (#980)
  • Add support for deriving multiple accounts from mnemonic (#983)
  • Mention the correct ticker in account summary (#1026)
  • Reduce bundle size (7.2MB -> 5.4MB) with consistent grommet imports (#1038)
  • Smaller UI fixes and cleanups (#868, #879, #903, #919, #921, #922, #928, #946, #947, #949, #953, #958, #999, #979, #1019, #1049)
  • Add Sapphire on testnet (#279)
  • Improve numeric precision in reclaim escrow (#281)
  • Poll for sapphire transaction status (transactions are indexed now) (#285)
  • Fix “invalid nonce” bug (#282)
  • Smaller UI fixes and cleanups (#280, #282, #286)
  • Add support for dumping deployed WASM of contracts (#1007)
  • Add contracts state dump support (#1034)
  • Lookup address by account name, add support for test accounts (#1038)
  • Support changing contract upgrades policy (#1052)
  • Add support for address book (#1087)

PARATIME UPDATES

  • The Emerald and Cipher ParaTimes were stable on Mainnet throughout Q3, experiencing no downtime or other incidents.
  • The effects of the bear market on DeFi usage can be seen in transaction volumes on Emerald. The daily peak for Q3 was at the beginning of July with roughly 60k transactions per day, declining steadily and ending the quarter with 16k-18k transactions per day.
  • 52 nodes are running Emerald ParaTime on Mainnet as of Sep 30.
  • 29 nodes are running Cipher ParaTime on Mainnet as of Sep 30.

PARATIME DEVELOPMENT

  • Add encryption transport library to web-ts; derive_symmetric_key tests for go, rust and typescript (#962)
  • ORC tool: Add support for signing SGXS binaries (#1056)
  • EVM: Don’t require encryption of empty string (#1064)
  • Gas computation fix: Fix subcall dispatch (#1066)
  • EVM: Expose public data in signed queries (#1069)
  • EVM: Add encryption precompiles (#1102)
  • EVM: Don’t encode contract create output (#1138)
  • Improved tests and documentation (#991, #1041, #1046, #1047, #1081, #1101)

DEVELOPER PLATFORM UPDATES

  • Oasis network users (general information about the Oasis network and the foundation, wallet-related guides)
  • Community-related information
  • Node operators (Mainnet and Testnet network parameters, setting up various kinds of nodes and services)
  • dApp developers (writing apps for emerald, sapphire, and cipher ParaTimes)
  • ParaTime developers
  • Core contributors
  • Support for editing any Markdown file regardless of the original repository location
  • Seamless linking of referenced .md files and doc cards from other repositories
  • Support for importing code snippets from files
  • For backward compatibility, redirects have been set up for all previous documents

CORE PLATFORM UPDATES

  • go/staking/grpc: Rename misnamed GovernanceDeposits method (#4652)
  • go/runtime: Mandate the use of runtime schedule control (#4665)
  • Add support for PCS attestation (#4806, #4789, #4720, #4752)
  • go/governance: Add change parameters proposal (#4938)
  • Add archive mode support (#4539)
  • go/control: Show the debug option statuses in the control output (#4634)
  • runtime: Make persistent transaction check state configurable (#4640)
  • go/runtime/txpool: Limit outstanding transactions per sender (#4665)
  • go/control/status: Add fields for quick overview of node status (#4669)
  • go/worker/storage: Make checkpoint sync peer selection smarter (#4671)
  • runtime: verify epoch in dispatcher using consensus verifier (#4677)
  • go/worker/compute: Ensure trust root is verified before registering (#4678)
  • go/worker/compute: Start batch resolution early for backup worker (#4679)
  • go/runtime/txpool: Add roothash incoming messages’ data as transactions (#4681)
  • go/worker/registration: add node status metrics (#4686)
  • runtime: Enable dispatcher to verify state integrity for queries (#4694, #4830, #4904)
  • go/worker/common/p2p: Add support for persistent and blocked peers (#4713)
  • go/worker/common: Properly handle dynamic key manager configuration (#4715)
  • go/runtime/txpool: Add txpool metric for rejected runtime transactions (#4724)
  • runtime: Verify RAK in consensus state when serving requests (#4741)
  • runtime: Add support for reporting EnclaveRPC peer feedback (#4757)
  • archive-mode: disable runtime P2P if archive mode is used (#4775)
  • go/consensus/tendermint: Add consensus.tendermint.halt_height (#4793)
  • net-runner: Add — fixture.default.runtime.version flag (#4813)
  • go/oasis-node: allow km to have private peers (#4821)
  • go/runtime/registry: allow client nodes to run sgx runtimes (#4832)
  • go/worker/keymanager: Add key manager worker metrics (#4877)
  • go/control/status: Add key manager worker status to node status (#4883)
  • keymanager: Add support for ephemeral keys (#4888)
  • oasis-net-runner: Set default max_allowances, increase test account balance (#4902)
  • runtime/consensus/verifier: Support trust root consensus layer upgrades (#4903)
  • runtime: Support consensus event queries (#4904)
  • keymanager: Validate latest trust root height in key manager requests (#4910)
  • registry: Add ProveFreshness consensus layer transaction (#4916)
  • runtime: Add client node TEE freshness verification (#4922)
  • keymanager: Verify that policy was published in the consensus layer (#4925)
  • Bind TEE attestations to nodes and enforce freshness (#4926)
  • go/genesis: Cache computed genesis document hash (#4919)
  • go/oasis-node/cmd: unsafe-reset preserve local storage by default (#4700)
  • go/oasis-node/cmd: unsafe-reset check datadir validity (#4702)
  • runtime: Emit runtime logs as oasis-node logs (#4709, #4924)

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Oasis Network

A privacy-first, proof-of-stake, decentralized network. Learn more at https://oasisprotocol.org/ & sign up to our newsletter at https://oasisl.ink/3ha7bHy