Staketab Docs
Staketab.comMina ExplorerTwitterDiscord
  • Welcome to Staketab Docs
  • ACADEMY
    • MINA
      • Mina Glossary
      • Mina Domain Model
      • Mina Block Production
      • Mina Accounts
      • Mina Staking Process
      • Mina Delegations Explained
      • Mina Reward Calculation
      • Account Balance: Locked and Unlocked Tokens
      • ZK-proof mechanism and ZK-snarks
      • ZKapps
      • Scan State
    • AXELAR
      • What is Axelar project?
  • HOW TO STAKE
    • BITCANNA
      • How to stake BitCanna
    • DESMOS
      • How to stake Desmos using Keplr
      • How to stake Desmos using Cosmostation
    • HYDRADX
      • How to buy HydraDX (HDX)
      • How to install Polkadot.js wallet
      • How to claim HydraDX (HDX) coins
      • How to stake HydraDX (HDX)
    • MEDIBLOC
      • How to stake Medibloc
    • MINA
      • How to buy Mina
        • How to buy Mina on OKX centralized exchange
        • How to buy Mina on CoinEx centralized exchange
        • How to buy Mina on BKEX centralized exchange
      • How to stake Mina
        • How to stake Mina from own Mina node (using command line)
        • How to stake Mina using third party wallet
          • How to stake Mina using Clorio browser and desktop wallet
          • How to stake Mina using Auro browser and mobile wallet
          • How to stake Mina using Staking-Power mobile wallet
        • How to stake Mina using Ledger
          • How to install Mina Ledger app on Ubuntu
          • How to install Mina Ledger app on Windows
          • How to stake Mina from Clorio browser and desktop wallet using Ledger
          • How to stake Mina from Auro browser and mobile wallet using Ledger
    • OSMOSIS
      • How to install Keplr wallet
      • How to buy ATOM on centralized exchange
        • How to buy ATOM on OKX centralized exchange
      • How to buy Osmosis coins on Osmosis decentralized exchange
      • How to stake Osmosis using Keplr wallet
    • SIFCHAIN
      • How to stake Sifchain
    • SOLANA
      • How to buy Solana on centralized exchange
        • How to buy Solana on OKX centralized exchange
      • How to stake Solana
        • How to stake Solana using SolFlare browser wallet
        • How to stake Solana using Ledger and SolFlare browser wallet
    • STARGAZE
      • How to claim Stargaze airdrop
      • How to stake Stargaze using Keplr
      • How to stake Stargaze using Cosmostation
      • How to vote on stargaze.zone
Powered by GitBook
On this page
  • Delegation Statuses
  • Ledger Stages

Was this helpful?

  1. ACADEMY
  2. MINA

Mina Delegations Explained

This article gives a deeper dive into the delegation process. It can be useful for blockchain specialists and developers.

Last updated 2 years ago

Was this helpful?

Before you read this article, you can learn the basics: .

Delegation Statuses

In the Mina blockchain, there are no statuses for delegations. We find it reasonable to introduce delegation statuses since it appears that delegations may come in different states. To do so it’s critical to understand how delegations are processed within the Mina Protocol.

We suggest the following statuses for a delegation: Waiting, Active, Replaced, Skipped, Ended:

  • WAITING is a status when a new delegation was made until it becomes active. It takes 2 epochs.

  • ACTIVE is a status when a delegation is currently active and produces rewards.

  • REPLACED is a status when a delegation was replaced by another delegation to another validator before rewards were produced since in the Mina blockchain there can currently be only one delegation, which fixes the account balance at the end of each epoch.

  • SKIPPED is a status when a new delegation was made to the same validator again before rewards were produced; such a transaction makes no sense, since the account balance will be fixed at the end of the epoch as it is, and the validator remains the same.

  • ENDED is a status when a delegation cycle comes to an end with rewards being produced, which was triggered by changing the validator 2 epochs before.

Ledger Stages

Delegation data are entered in 4 ledgers: the snarked ledger, the staking ledger, the next epoch ledger, and the staged ledger. Each ledger extracts data from node databases.

Staged ledger - most recent staged ledger (from the best tip of that node). A staged ledger can be regarded as a "Pending accounts database" that has transactions (payments, coinbase, and proof-fees) applied for which there are no snarks available yet.

Snarked ledger - the ledger containing only transactions that have an associated proof.

Next epoch ledger - the staking ledger for the next epoch.

Staking ledger - the ledger used to determine block producers for a slot, as the probability of winning a slot is proportional to the amount of stake.

When a delegation is made (Epoch X), it enters the staged ledger . The delegation transaction enters the scan state for snark workers to generate a snark proof of the transaction - the amount of time this takes is dependent on the transaction throughput of the network. Once a proof containing the delegation transaction is generated a new snarked ledger is produced.

By the end of Epoch X, the delegation amount can change with the changes in the account balance. On the last block of the epoch when the delegation was made the account balance gets fixed, and this becomes the delegation amount that moves on to the next epoch.

In the next epoch (Epoch X+1) the delegation amount is fixed starting with the first block of Epoch X+1. From now on the delegation amount will not change whatever changes may come with the account balance. After the 290th block of Epoch X+1 the staking ledger is finalized and named the next epoch ledger . However, the delegation is not active yet.

In the next epoch (Epoch X+2) starting from the first block of the epoch the delegation becomes active the staking ledger (current epoch staking ledger is the snarked ledger of the last block of an epoch, two epochs prior). Delegation remains active until the last block of Epoch X+2.

We have illustrated this process in the . To do this, find your account there, go to Account Details and select the "Staking" tab.

See .

For more details see the article

The reward can be paid in Epoch X+2, Epoch X+3 or later. Mina does not regulate the validator-delegator relationship, so each validator sets its own payout schedule. You can see the reward payment terms .

For more information on the reward payment please see .

Mina Explorer
Mina glossary
Scan state
here
Mina Reward Calculation
Mina Staking Process
State Machine Diagram - Delegation Statuses (Lifecycle)
Activity Diagram - Delegation transaction made in epoch X
Mina Ledgers