Epochs Milestone B Rollout - 9/15/21

Milestone B for the implementation of Epochs on Flow will take place on September 15 Mainnet spork (Mainnet 13). Milestone B will enable Epochs on Mainnet.

There are several key action items that will be required for all node operators.

We’ve updated our documentation and instructions in preparation for the Epochs rollout. Please refer to the following pages for full documentation

What are Epochs

An Epoch is a roughly week-long period that the network uses to manage the list of authorized nodes and pay rewards.

  • Only a pre-determined set of nodes is authorized to participate in the protocol. The set of authorized nodes is known to all network participants. This set is referred to as the Identity Table.

  • An Epoch is defined as a period of time, where the set of authorized nodes is constant (or can only shrink due to ejection of malicious nodes).

Every epoch, a list of committed nodes are chosen to be the staked nodes of the network. This list is called the Identity Table (ID Table). The node’s staked tokens are locked in and cannot change for the duration of the epoch. At the end of the epoch, rewards are paid to each staked node based on how many tokens they had staked for that epoch and how well they performed during the epoch. Nodes can choose to join or leave, but changes to the Identity Table can only happen at end of an epoch, which is also the beginning of a new epoch. This process repeats itself indefinitely.

Please review the full Epochs documentation, which has been significantly revised and added to in order to accommodate the epochs rollout.

What is a Machine Account?

A Machine Account is a Flow account which is used autonomously by a node to interact with system smart contracts. Machine Accounts contain Cadence resources granted to network participants which are used to participate in smart-contract-mediated protocols. Currently, Machine Accounts are used in the Epoch Preparation Protocol.

Collection and consensus node operators must go through this process.

Action Item 1: Create A Machine Account

All Collection and Consensus node operators must create a new machine account.

Please refer to the full Machine Account creation guide for complete instructions. If you have any problems completing the creation of your Machine Account, please reach out to our team directly.

Deadline: This must be completed by September 14, 2021

Action Item 2: Update Networking Address If You’ve Already Staked

If you currently have a staked node and have changed the network address in the past 8 months, you will need to update your node’s networking address.

We will reach out directly to all impacted node operators regarding the new networking address.

Please refer to the node bootstrapping guide for information regarding node setup.

Deadline: This must be completed by September 14, 2021

Action Item 3: All Access Nodes Must Be Staked

If you are operating an access node, your node must be go through the staking process like any other kind of node, even if you aren’t currently staking the node. You DO NOT need to put up any FLOW, but the node must register its information on chain. This requires the same information provided during the bootstrapping process.

Please refer to the Flow Port Staking Guide for full instructions on how to stake a node in Flow Port. If you have any questions on how to stake your access node, please contact our team for assistance.

Deadline: This must be completed by September 14, 2021

Important Note: Extra File in Private Bootstrapping Folder

Consensus and Collection node operators: please note that the machine account creation process will result in one additional private key file being stored in your private bootstrapping folder (node-machine-account-info.priv.json). Like the existing staking and networking keys, this machine account key must be present to run your node and must not be lost or compromised.

Loss of any of these keys (staking, networking, or machine account) will require you to un-stake your tokens, start a completely new node, and register the new node to continue participating in the Flow network, which takes multiple weeks.

Important Note: Do Not Restake Rewards Leading Up To Milestone B

Machine Accounts must be funded, therefore we ask that node operators do not restake all of their liquid FLOW after rewards are distributed. Please ensure that your rewards are not automatically restaked in the payout prior to the Mainnet 13 spork on 9/14.

Collection Nodes

  • Recommended FLOW for Collection Node Machine Account: 0.005 FLOW

Consensus Nodes

  • Recommended FLOW for Consensus Node Machine Account: 0.25 FLOW

Overall, this requires a small amount of value to be set aside to fund your machine account. Though the expected typical usage of these funds is < 0.0005 FLOW per month, the recommended FLOW amount for Consensus and Collection Nodes is meant to account for fringe-case scenarios as a means to prevent complications should they arise.

We appreciate your cooperation in completing the above action items in preparation for Epochs Milestone B during the Mainnet 13 spork on 9-15-21.

Please reach out to our team directly if you have any issues with any required action item.

Thank you,
The Flow Team :ocean: