Mercury acceptance criteria

Purpose

The purpose of this document is to define the criteria used to determine when the Mercury release of RNode is ready for a mainnet launch.

Background

The RChain Cooperative governs the RChain blockchain platform. This includes launch of it's public networks as well as upgrades to software on running networks. The RChain Cooperative holds the responsibility for deciding to launch a new network. 

Release criteria for the Mercury mainnet

CriteriaDefinitionRequirement
DurationThe amount of time the platform successfully meets the release criteriaThe Mercury release achieves a duration of 30 days during which all release criteria are met.
Network The network environment which supports the operation of the platform for the duration.

Thoughts....

use pubnet with validators planned for mainnet launch

include use of cooperative-sponsored nodes to deploy to validators

LoadThe volume of deployments and block proposals made on the network.

The Mercury release runs on testnet and meets the following requirements for load for at least 30 continuous days.

  • Deployments An average of 1440 deployments per day made to testnet validators.
  • Proposals An average of 1440 block proposals per day made by testnet validators.
StabilityContinuous operation of the network without a restart that forces the loss of state.The Mercury release runs on testnet for a period of at least 30 days without a restart that forces the loss of state.
Defects

Very high and/or High priority bugs recorded in Jira against the consensus component, the Rholang interpreter, and/or related to the security of the platform.

The Mercury release runs on testnet and meets the following requirement for defects for at least 30 continuous days:

  • No very high and/or high priority bugs recorded in Jira

FeaturesThe features included in the Mercury release.The Mercury release runs on testnet for at least 30 continuous days without the addition of new features.
Changes Alterations made to the Mercury release via pull request.The Mercury release runs on testnet for at least 30 continuous days with no more than 2 PRs for bug fixes.
SecurityA security audit administered by a 3rd party that results in documentation of the audit and prioritized list of issues.The Mercury release undergoes a security audit and high critical issues are resolved.
Network launchThe start of the RChain Cooperative's mainnet governed by the RChain Cooperative and which includes a genesis ceremony with genesis validators and the issuance of REV.

The RChain Cooperative identifies via board resolution the parties responsible for launching the RChain mainnet.


REV issuanceThe distribution of REV at the launch of the RChain mainnet based on RHOC balances and addresses found on Ethereum at a block height specified by the RChain Cooperative board.There is a successful demonstration in testnet of the genesis-issuance of test_REV based on RHOC balances.