The xx labs team introduced the MainNet Transition Program with the intention of addressing a shortcoming in many proof of stake, and even proof of work networks – namely, the centralization of node power by whales and staking/mining pools. In this program, the team’s coins are staked, without any rewards, on up to 350 geographically diverse community members that have supported the network during the BetaNet period by running their nodes reliably and engaging with the team and the rest of the community.
In the latter part of 2021 and the early part of 2022, we selected and onboarded all ~350 nodes with the MainNet Transition Program. Application and admission to the MainNet Transition Program is now closed.
This page contains the current mechanisms, rules, and requirements for the MainNet Transition Program. The team reserves the right to change these at any time.
The team’s coins multiply the stake earned over the course of the BetaNet by selected BetaNet nodes. The team will nominate up to 350 nodes out of a total of 550 node slots in the network.
Node operators who participate in the MainNet Transition program are able to have their earned stake multiplied up to 8 times. Based upon the amount of xx coins a node stakes, the team multiplier will be different. At the start of MainNet, the multiplier is as follows:
multiplied stake = 1.1987348546×10-10 × nodeStake3 − 5.1693111455×10-5 × nodeStake2 + 8.6850567834 × nodeStake − 1223.0356324078
As the network matures, the team’s tokens will vest and return to the ownership of respective team members; removing them from the BetaNet Staking pool. As the pool shrinks, the multipliers will shrink with it and disappear after 3 years. The multipliers are expected to stay constant for the first year. As the pool shrinks below the necessary size to stake all nodes, every node’s additional team stake will maintain its fraction of all multiplied stake.
Staking Adjustment Over the Life of the MainNet Transition Program
A node’s maximum multiplier is bounded by the lowest amount of eligible stake they have ever posted, as well as a maximum multiplied value of the amount they earned in the BetaNet Program. For example, if a node earned 49k xx (spent 7 months in the BetaNet) the maximum stake that can be multiplied is 49kxx. If they reduce their stake to 20kxx, then their maximum multiplied stake will forever drop to 20kxx – even if they increase it again.
Soft Team Multiplier Cap
In some network states, due to the dynamics of the Phragmen algorithm used to distribute nomination stake among nodes, higher multipliers will cause the system to disincentivize staking on many nodes. To combat this, the team has instituted a Soft Team Multiplier Cap. This cap varies dynamically with network economic conditions, while ensuring that all nodes who exceed the cap will still have enough stake to be an active validator. The cap can be calculated as follows:
At conception, avgStakeTransitionNodes is 90kxx and the ideal staking ratio is 0.85, meaning the graph looks something like this:
It is important to note that, as the stakeable supply grows as the network matures, it is likely that the ideal staking ratio will be reduced such that the cap will not be as high.
Within the xx network, all nodes must set a “commission rate” that determines the percent of rewards generated by their node – specifically, the percent the node keeps and the percent that go to their nominators. All Nodes in the MainNet transition Program can set their commission to a maximum of 18.00%.
There are some cases in the MainNet Transition Program that can give a participant too high of an advantage. The team has put rules and monitoring in place in order to ensure that participation in the MainNet Transition Program is equitable for nomination and non-participants.
Important: The rules of the MainNet Transition Program apply while you are enrolled in the program. You are expected to follow all rules, even during times the Team Multiplier is not applied to your node.
At 6:30 PM UTC every day, the team’s scripts will evaluate every MainNet Transition Participant’s eligibility. Depending on the various factors described below, the script will either decide to grant or refuse the team multiplier for each participant and send them an email containing the reason.
If it refuses, it may issue a strike. If a node receives 3 strikes over the lifetime of the program then it will be permanently terminated from the program.
Strikes come in two types – Standard and Severe.
A Standard Strike will remove the team multiplier until the issue is resolved for a minimum of the 1 era from when the issue is detected.
A Severe Strike carries a 7 era (1 week) penalty wherein the node will not receive the Team Multiplier. The node operator must reverse the offending change to regain the Team Multiplier.
Severe strikes are generally reserved for actions that are deliberately malicious. Generally, these involve Sneaky Modification, such as changing relevant parameters between the team multiplier being granted at 6:30PM UTC and the application of the election at 11PM UTC. This can result in the change being included in the next era without proper evaluation by the team multiplier script or nominators.
The team reserves the right to change the rules of this program, both in general form and specific requirements, at any time.
All decisions are based upon chain data which can be presented in the event of a strike.
While participating in the Team Multiplier, a node has a maximum commission of 18.00%. Normally, setting commission to be higher than 18% will result in a Standard Strike. However, as a Sneaky Modification it will result in a Severe Strike.
Node operators may not kick nominations without team permission. Any unauthorized kick will result in a Standard Strike. You can request permission to kick a nominator by emailing [email protected]
Members of the MainNet Transition Program must run cMix and maintain a minimum uptime of 80% over the last 7 days. When a node’s uptime over this period dips below 80%, the operator will receive an email saying they have 7 days to improve their uptime above 80%. If the uptime remains low, they will lose Team Multiplier. Operators may contact the team once the issue is resolved to get it back. Additionally, issues with cMix uptime cannot cause a strike.
Two nodes may not have the same IP address. Any node at the same IP will be rejected when registering with the network. Paired Nodes and Gateways can have the same IP, but no two Nodes or two Gateways. The first node or gateway with an IP address will be given the priority.
If any nodes or gateways have duplicate IPs at the time of this rule going into effect, one will be chosen randomly with the other removed
This cannot cause a strike directly, but will cause cMix downtime which will eventually get a node shut off.
Keying Material Secrecy
It is the responsibility of each node operator to maintain the secrecy of their keying material. If a node leaks any keying material, either from BetaNet or MainNet, the team will remove them from the MainNet Transition program permanently. This includes Gateway or Node Private Keys, Wallet Mnemonics, blockchain validator session keys
Participants in the MainNet transition program may not block nominations. Doing so will cause a severe strike..
This rule system will be in place by the end of the week of February 14th, 2022, with the exception that the system to automatically email nodes when a strike occurs will be added in the weeks to come.