August 13th 2020 update: better readme!
Welcome to NEAR Stake Wars Episode II, Return of the Validators!
This page will guide you through three main aspects of this initiative:
- In a Few Words
- What is NEAR Stake Wars
- Your toolbox
- What you have to do
Stake Wars is the program that accelerates your path to become a validator on NEAR Protocol. It is structured in technical challenges of increasing difficulty, giving you the opportunity of "learning by doing". Validators that will complete all the challenges will prove to be ready to join MainNet Restricted and will be recognized as early supporters of NEAR Protocol.
If you want to get your feet wet, and see if Stake Wars is for you, try this quickstart guide:
- Create a BetaNet account using our hosted wallet here.
- Spin up your Ubuntu/Debian VPS and run nearup.
- Deploy your staking pool using the Staking Pool Factory
- Submit up this form to enroll in the Stake Wars and receive your BetaNet tokens.
Stake Wars received an exceptional interest by the community of validators (500+ applications, 300+ PRs). We are processing all of them, sending 75,000 BetaNet tokens as promised, while making sure the network runs with no issues. As explained in the docs, there are 100 seats per shard, so BetaNet is running at capacity with a cost per seat that could be above the 75.000 tokens we normally provide.
You can receive more BetaNet tokens by completing the available challenges and submitting contributions on the NEAR community portal.
Here is the list of the available challenges:
- 001: Create your BetaNet wallet, deploy your node, and correctly configure your staking pool.
- 002: Enroll your staking pool, receive your delegation, and maintain your validator status!
- 003: Monitor your node health, and send an automated email in case of issues.
- 004: Create a warchest of staked tokens, and dynamically maintain no more than one validator seat.
- 005: Automatically deploy nearcore using a CI/CD pipeline.
After you successfully complete the challenges, and you maintain a high uptime of your node, you will be invited by NEAR team to run your node on TestNet, and become a candidate run MainNet Restricted.
Stake Wars is NEAR's incentivized testnet for professional validators.
NEAR’s MainNet recently launched into its first phase, called “POA” (see full roadmap). This means that a small handful of validating nodes are currently being run by the core team. In order to progress to the next phase, “MainNet: Restricted”, the operation of the network will be handed off to a large group of node operators called validators.
The goal of Stake Wars: Episode II is to onboard those validators, test the stability of their system, and begin introducing some of the unique aspects of NEAR’s delegation in preparation for the next phase of MainNet itself.
If you want to know more, read the Stake Wars Episode II blog post.
Blogpost TL;DR:
Stake Wars Ep.II introduces NEAR's contract-based delegation, offering validators the opportunity to take part in the Open Finance ecosystem. There is a staking pool reference contract on Github, ready for experimenting with these principles. Deploying the staking pool and participating in the Stake Wars will give access to NEAR's MainNet Restricted. Rewards will include 10,000 NEAR tokens/month for every validator on MainNet Restricted, plus 1 Million NEAR tokens available for contributions and community challenges. To become validators on MainNet Restricted, participants will have to accomplish technical challenges and successfully run nodes on BetaNet and TestNet. Judgment criteria will be quantitative, such as number of blocks generated and uptime; and qualitative, such as reactivity to network updates and community participation. A Validator Advisory Board, with a selected group of professional validators, will become over time the voice of validators in the technical governance of the protocol
NEAR Protocol provides you multiple tools such as Github repositories, applications, documentation and web-based resources. As a Stake Wars participant you will need all of them.
NEAR is using two main accounts: github.com/nearprotocol and github.com/near. To join Stake Wars you will use:
- nearup, public scripts to launch NEAR Protocol devnet, betanet and testnet nodes
- nearcore, the reference client for NEAR Protocol
- near-cli, the general purpose command line tools for interacting with NEAR Protocol
- core-contracts, where you can find the reference staking pool smart contract
Most of the technical documentation is available at docs.near.org. An entire section is dedicated to validators.
The website provides a block explorer and a web wallet:
- BetaNet web wallet: wallet.betanet.near.org
- BetaNet explorer: explorer.betanet.near.org
You will need a BetaNet wallet to deploy your staking pool and receive your first delegation.
You can also use the JSON RPC interface at the address https://rpc.betanet.near.org/status to quickly retrieve information about network, blocks, transactions and wallets. There's also a documentation section with an overview of the available RPC endpoints.
As a final note, https://status.nearprotocol.com/ will give you feedback on the status of the network, and the most recent incidents.
Connect to other validators using the dedicated channel on Discord. You might join also NEAR Validators on Telegram.
Important: NEAR core team will use the prefix [CODE_RED]
if a particular message requires technical attention by validators. Some examples are new releases, hard forks and critical issues.
Overall, if you want to successfully participate in the Stake Wars, you'll have to:
- Keep an eye to Validator Announcements on Discord (there's a dedicated channel). It will be used to inform you about technical releases and hard forks, community challenges, contribution opportunities and other initiatives that will be valuable for you.
- Give and receive technical help here on Github, in the issues section.
- GUIDELINES.md: some basic rules to follow, and what to do when you are invited to join TestNet
- updates.md: good to catch up if you missed the last few weeks
- VALIDATORS.md: who else is participating in the Stake Wars
- LEADERBOARD.md: how validators are doing in terms of uptime
- troubleshooting.md: a colletion of the most common issues
- staking_cheatsheet.md: a list of the most common commands to manage the staking pool
- scenarios.md: some high-level examples of what you will have to do
...and the challenges folder...
As you know, validators are responsible to generate new blocks to update the state of the network. NEAR Protocol uses proof-of-stake to secure its infrastruture, so you have to stake tokens to become a validator. The contract-based delegation, as explained in the Stake Wars Ep.II blog post, will provide you stake from users who don't want to run a node but are interested to secure the network - and earn rewards with you.
If your mission is to become a validator on MainNet, you have two ways to succeed:
- Wait until NEAR enters Phase Two of MainNet (see the roadmap here)
- Complete the Stake Wars challenges, be invited to join TestNet, and prove that you are ready for the Phase One, called MainNet Restricted
Validators joining MainNet Restricted will receive help from NEAR foundation in the form of a grant in NEAR tokens, and tokens delegation to help them retain their validator seat while they onboard their customers. The plan is to onboard ~50 validators in the Phase One, so if you are interested you simply have to successfully complete the challenges below!
We will publish new challenges for validators on a regular basis. Every challenge will have a progressive number, with an increasing level of difficulty. The acceptance criteria will provide high-level indications, and some of these challenges may list previous challenges as a requirement.
List of challenges:
- May 25th 2020, Challenge 001 Deploy your node and your staking pool
- May 25th 2020, Challenge 002 Become a validator and manage your seat
- June 8th 2020, Challenge 003 Monitor your node and setup automated alerts
- June 22nd 2020, Challenge 004 Dynamically adjust your stake
- July 17 2020, Challenge 005 Automatically deploy nearcore using a CI/CD pipeline.