github.com/MetalBlockchain/metalgo@v1.11.9/genesis/genesis_tahoe.go (about)

     1  // Copyright (C) 2019-2024, Ava Labs, Inc. All rights reserved.
     2  // See the file LICENSE for licensing terms.
     3  
     4  package genesis
     5  
     6  import (
     7  	"time"
     8  
     9  	_ "embed"
    10  
    11  	"github.com/MetalBlockchain/metalgo/utils/units"
    12  	"github.com/MetalBlockchain/metalgo/vms/platformvm/reward"
    13  	"github.com/MetalBlockchain/metalgo/vms/platformvm/txs/fee"
    14  )
    15  
    16  var (
    17  	//go:embed genesis_tahoe.json
    18  	tahoeGenesisConfigJSON []byte
    19  
    20  	// TahoeParams are the params used for the tahoe testnet
    21  	TahoeParams = Params{
    22  		StaticConfig: fee.StaticConfig{
    23  			TxFee:                         units.MilliAvax,
    24  			CreateAssetTxFee:              10 * units.MilliAvax,
    25  			CreateSubnetTxFee:             100 * units.MilliAvax,
    26  			TransformSubnetTxFee:          1 * units.Avax,
    27  			CreateBlockchainTxFee:         100 * units.MilliAvax,
    28  			AddPrimaryNetworkValidatorFee: 0,
    29  			AddPrimaryNetworkDelegatorFee: 0,
    30  			AddSubnetValidatorFee:         units.MilliAvax,
    31  			AddSubnetDelegatorFee:         units.MilliAvax,
    32  		},
    33  		StakingConfig: StakingConfig{
    34  			UptimeRequirement: .8, // 80%
    35  			MinValidatorStake: 1 * units.Avax,
    36  			MaxValidatorStake: 3 * units.MegaAvax,
    37  			MinDelegatorStake: 1 * units.Avax,
    38  			MinDelegationFee:  20000, // 2%
    39  			MinStakeDuration:  24 * time.Hour,
    40  			MaxStakeDuration:  365 * 24 * time.Hour,
    41  			RewardConfig: reward.Config{
    42  				MaxConsumptionRate: .12 * reward.PercentDenominator,
    43  				MinConsumptionRate: .10 * reward.PercentDenominator,
    44  				MintingPeriod:      365 * 24 * time.Hour,
    45  				SupplyCap:          666666666 * units.Avax,
    46  			},
    47  		},
    48  	}
    49  )