// +build testground // This file makes hardcoded parameters (const) configurable as vars. // // Its purpose is to unlock various degrees of flexibility and parametrization // when writing Testground plans for Lotus. // package build import ( "math/big" "github.com/filecoin-project/go-state-types/abi" "github.com/filecoin-project/go-state-types/network" builtin2 "github.com/filecoin-project/specs-actors/v2/actors/builtin" "github.com/filecoin-project/lotus/chain/actors/policy" ) var ( UnixfsChunkSize = uint64(1 << 20) UnixfsLinksPerLevel = 1024 BlocksPerEpoch = uint64(builtin2.ExpectedLeadersPerEpoch) BlockMessageLimit = 512 BlockGasLimit = int64(100_000_000_000) BlockGasTarget = int64(BlockGasLimit / 2) BaseFeeMaxChangeDenom = int64(8) // 12.5% InitialBaseFee = int64(100e6) MinimumBaseFee = int64(100) BlockDelaySecs = uint64(builtin2.EpochDurationSeconds) PropagationDelaySecs = uint64(6) AllowableClockDriftSecs = uint64(1) Finality = policy.ChainFinality ForkLengthThreshold = Finality SlashablePowerDelay = 20 InteractivePoRepConfidence = 6 MessageConfidence uint64 = 5 WRatioNum = int64(1) WRatioDen = uint64(2) BadBlockCacheSize = 1 << 15 BlsSignatureCacheSize = 40000 VerifSigCacheSize = 32000 SealRandomnessLookback = policy.SealRandomnessLookback TicketRandomnessLookback = abi.ChainEpoch(1) FilBase uint64 = 2_000_000_000 FilAllocStorageMining uint64 = 1_400_000_000 FilReserved uint64 = 300_000_000 FilecoinPrecision uint64 = 1_000_000_000_000_000_000 InitialRewardBalance = func() *big.Int { v := big.NewInt(int64(FilAllocStorageMining)) v = v.Mul(v, big.NewInt(int64(FilecoinPrecision))) return v }() InitialFilReserved = func() *big.Int { v := big.NewInt(int64(FilReserved)) v = v.Mul(v, big.NewInt(int64(FilecoinPrecision))) return v }() // Actor consts // TODO: Pull from actors when its made not private MinDealDuration = abi.ChainEpoch(180 * builtin2.EpochsInDay) PackingEfficiencyNum int64 = 4 PackingEfficiencyDenom int64 = 5 UpgradeBreezeHeight abi.ChainEpoch = -1 BreezeGasTampingDuration abi.ChainEpoch = 0 UpgradeSmokeHeight abi.ChainEpoch = -1 UpgradeIgnitionHeight abi.ChainEpoch = -2 UpgradeRefuelHeight abi.ChainEpoch = -3 UpgradeTapeHeight abi.ChainEpoch = -4 UpgradeActorsV2Height abi.ChainEpoch = 10 UpgradeLiftoffHeight abi.ChainEpoch = -5 UpgradeKumquatHeight abi.ChainEpoch = -6 UpgradeCalicoHeight abi.ChainEpoch = -7 UpgradePersianHeight abi.ChainEpoch = -8 UpgradeClausHeight abi.ChainEpoch = -9 DrandSchedule = map[abi.ChainEpoch]DrandEnum{ 0: DrandMainnet, } NewestNetworkVersion = network.Version8 ActorUpgradeNetworkVersion = network.Version4 Devnet = true ZeroAddress = MustParseAddress("f3yaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaby2smx7a") ) const BootstrapPeerThreshold = 1