Community Update 96
General
Release
Node version 0.9.15 is the current release RNode-0.9.15 release plan
Testnet is currenty running rnode version 0.9.15
The 0.9.15 includes the new type safe API (instead of Either), some fixes for Long Proposal Times Issue, Offchain-data API (events API) improvements and other incremental progress in features discussed below.
Sprint 40 in progress
Main focus is on reaching Testnet 3 (a) Cost accounting (b) Long proposal times - Fairness Constraint and other improvements (d) Additional tests for multisig features (e) ongoing work in Casper tests independent of network layer (f) Ongoing work in Planning and implementation for Network safety, reliability and hardening
Cost accounting
Design and Scope of work at https://gist.github.com/ArturGajowy/73e481767548b084a8e5d7c19bb1f70c
Implementation in progress for these preliminary tasks needed for implementing the main portions of cost accounting:
Merged - Generalize NormalizerEnv -PR reviewed and changes made.
In review - Bulletproof unforgeable-name namespace uniqueness by prohibiting terms wider than Short.MAX_VALUE . Changes from the first set of reviews made. Waiting for final review and merge. https://github.com/rchain/rchain/pull/2768
In Review - Created first PR to secure access to protocol-private PoS methods https://rchain.atlassian.net/browse/RCHAIN-3888
The 'System Deploy' construct, https://rchain.atlassian.net/browse/RCHAIN-3767 necessary for cost accounting, is implemented and in review. https://github.com/rchain/rchain/pull/2778 This is a huge PR and also contains the charging logic. Currently being reviewed in sections. Expected to be merged soon. Charging logic https://rchain.atlassian.net/browse/RCHAIN-3625 and https://rchain.atlassian.net/browse/RCHAIN-3624
Substantial progress also made on Replay and Refund logic. PR is expected shortly to be available for review.
In parallel, work has started on combinatorial Rholang terms in contracts, to test stability of cost accounting across such combinations. PR is expected to be available for review soon.
Remaining chunks of work in cost accounting are (a) modifying existing tests to match the new code (b) writing additional tests (d) writing integration tests. Trying to maximally parallelize test writing effort. Working in shifts on large PRs.
Once the PRs are in, we will be testing cost accounting in the sandboxnet even as the PR reviews proceed. We will start with genesis ceremony and run other tests.
Reduce long proposal times:
Initial implementation of a (simple round robin) fairness constraint as an additional mechanism to address long proposal times. Merged -PR https://github.com/rchain/rchain/pull/2776 corresponding to https://rchain.atlassian.net/browse/RCHAIN-3879 . Based on performance tests, we added improvements https://github.com/rchain/rchain/pull/2786 .
Additional improvements to finalization implemented, including making finalization persistent:
In review -Persist last finalized block https://github.com/rchain/rchain/pull/2780
In review - Add new termination condition for isInMainchain https://github.com/rchain/rchain/pull/2775
Getting ready for review - https://github.com/rchain/rchain/pull/2787 to allow finalization every n blocks
Disallow invalid blocks as parents https://rchain.atlassian.net/browse/RCHAIN-3892
We continue to explore various test parameters and more complex contracts, to both test the stability of this issue and make it manifest sooner if it exists.
In Review - Implementation of mult-sig vault features is ongoing as detailed in https://rchain.atlassian.net/browse/RCHAIN-3392 https://rchain.atlassian.net/browse/RCHAIN-3196 https://rchain.atlassian.net/browse/RCHAIN-3223 and https://rchain.atlassian.net/browse/RCHAIN-3773. Additional changes are being made to the code to address a potential security issue identified in the reviews. In final review - https://github.com/rchain/rchain/pull/2774 Next step is to add more tests for this.
Add ability to leverage all the wallet tools built for Ethereum (such as Metamask) https://rchain.atlassian.net/browse/RCHAIN-3866 and https://rchain.atlassian.net/browse/RCHAIN-3867
RNode will be able to validate Ethereum personal signature. More info at. https://medium.com/metamask/the-new-secure-way-to-sign-data-in-your-browser-6af9dd2a1527
Starting to capture some performance data, working with community members.
Refactoring, Optimizations and bug fixes, hardening - ongoing
Mercury requirements and acceptance criteria
Details on the acceptance criteria: Mercury acceptance criteria
Please see the documentation at https://github.com/rchain/rchain/blob/dev/docs/features.md.
Testnet status
Please see RChain public testnet information to learn more about public testnet as well as a FAQ.
Community testing
Sept 19 at 14:00 UTC. Please see RChain community RNode testing for more information.
Blockers to testnet-3
TBD
Risks to code completion for Mercury
Evaluating backlog vs current velocity
Developer website
Date |
|---|
Oct 30, 2019 |