2021-08-27 19:25:43 +00:00
|
|
|
//go:build testground
|
2020-06-30 13:18:01 +00:00
|
|
|
// +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"
|
|
|
|
|
2020-09-07 03:49:10 +00:00
|
|
|
"github.com/filecoin-project/go-state-types/abi"
|
2020-09-10 19:15:49 +00:00
|
|
|
"github.com/filecoin-project/go-state-types/network"
|
2021-04-09 06:58:22 +00:00
|
|
|
"github.com/ipfs/go-cid"
|
2020-10-08 01:09:33 +00:00
|
|
|
|
|
|
|
builtin2 "github.com/filecoin-project/specs-actors/v2/actors/builtin"
|
2020-09-29 00:28:16 +00:00
|
|
|
|
|
|
|
"github.com/filecoin-project/lotus/chain/actors/policy"
|
2020-06-30 13:18:01 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
var (
|
|
|
|
UnixfsChunkSize = uint64(1 << 20)
|
|
|
|
UnixfsLinksPerLevel = 1024
|
|
|
|
|
2020-10-08 01:09:33 +00:00
|
|
|
BlocksPerEpoch = uint64(builtin2.ExpectedLeadersPerEpoch)
|
2020-08-07 13:04:10 +00:00
|
|
|
BlockMessageLimit = 512
|
|
|
|
BlockGasLimit = int64(100_000_000_000)
|
|
|
|
BlockGasTarget = int64(BlockGasLimit / 2)
|
2020-08-07 13:03:55 +00:00
|
|
|
BaseFeeMaxChangeDenom = int64(8) // 12.5%
|
2020-08-07 13:04:10 +00:00
|
|
|
InitialBaseFee = int64(100e6)
|
|
|
|
MinimumBaseFee = int64(100)
|
2020-10-08 01:09:33 +00:00
|
|
|
BlockDelaySecs = uint64(builtin2.EpochDurationSeconds)
|
2020-08-07 13:04:10 +00:00
|
|
|
PropagationDelaySecs = uint64(6)
|
2022-04-24 05:48:07 +00:00
|
|
|
SupportedProofTypes = []abi.RegisteredSealProof{
|
|
|
|
abi.RegisteredSealProof_StackedDrg32GiBV1,
|
|
|
|
abi.RegisteredSealProof_StackedDrg64GiBV1,
|
|
|
|
}
|
|
|
|
ConsensusMinerMinPower = abi.NewStoragePower(10 << 40)
|
|
|
|
PreCommitChallengeDelay = abi.ChainEpoch(150)
|
2020-06-30 13:18:01 +00:00
|
|
|
|
2020-06-30 14:00:01 +00:00
|
|
|
AllowableClockDriftSecs = uint64(1)
|
2020-06-30 13:18:01 +00:00
|
|
|
|
2020-09-29 00:28:16 +00:00
|
|
|
Finality = policy.ChainFinality
|
2020-06-30 13:18:01 +00:00
|
|
|
ForkLengthThreshold = Finality
|
|
|
|
|
2020-06-30 13:58:34 +00:00
|
|
|
SlashablePowerDelay = 20
|
|
|
|
InteractivePoRepConfidence = 6
|
|
|
|
|
2020-06-30 13:18:01 +00:00
|
|
|
MessageConfidence uint64 = 5
|
|
|
|
|
|
|
|
WRatioNum = int64(1)
|
|
|
|
WRatioDen = uint64(2)
|
|
|
|
|
|
|
|
BadBlockCacheSize = 1 << 15
|
|
|
|
BlsSignatureCacheSize = 40000
|
|
|
|
VerifSigCacheSize = 32000
|
|
|
|
|
2020-09-29 00:28:16 +00:00
|
|
|
SealRandomnessLookback = policy.SealRandomnessLookback
|
2020-06-30 13:18:01 +00:00
|
|
|
|
2020-10-06 09:26:25 +00:00
|
|
|
TicketRandomnessLookback = abi.ChainEpoch(1)
|
2020-06-30 13:18:01 +00:00
|
|
|
|
2020-07-28 21:36:59 +00:00
|
|
|
FilBase uint64 = 2_000_000_000
|
|
|
|
FilAllocStorageMining uint64 = 1_400_000_000
|
2020-10-05 01:38:52 +00:00
|
|
|
FilReserved uint64 = 300_000_000
|
2020-06-30 13:18:01 +00:00
|
|
|
|
|
|
|
FilecoinPrecision uint64 = 1_000_000_000_000_000_000
|
|
|
|
|
|
|
|
InitialRewardBalance = func() *big.Int {
|
2020-07-28 21:36:59 +00:00
|
|
|
v := big.NewInt(int64(FilAllocStorageMining))
|
2020-06-30 13:18:01 +00:00
|
|
|
v = v.Mul(v, big.NewInt(int64(FilecoinPrecision)))
|
|
|
|
return v
|
|
|
|
}()
|
2020-10-05 01:38:52 +00:00
|
|
|
|
|
|
|
InitialFilReserved = func() *big.Int {
|
|
|
|
v := big.NewInt(int64(FilReserved))
|
|
|
|
v = v.Mul(v, big.NewInt(int64(FilecoinPrecision)))
|
|
|
|
return v
|
|
|
|
}()
|
|
|
|
|
2020-07-29 00:03:20 +00:00
|
|
|
// Actor consts
|
2020-12-30 08:02:53 +00:00
|
|
|
// TODO: pieceSize unused from actors
|
|
|
|
MinDealDuration, MaxDealDuration = policy.DealDurationBounds(0)
|
2020-08-18 15:40:53 +00:00
|
|
|
|
|
|
|
PackingEfficiencyNum int64 = 4
|
|
|
|
PackingEfficiencyDenom int64 = 5
|
2020-09-07 19:31:07 +00:00
|
|
|
|
2020-09-10 18:36:30 +00:00
|
|
|
UpgradeBreezeHeight abi.ChainEpoch = -1
|
2020-09-07 19:31:07 +00:00
|
|
|
BreezeGasTampingDuration abi.ChainEpoch = 0
|
2020-09-09 19:52:04 +00:00
|
|
|
|
2021-08-10 19:50:37 +00:00
|
|
|
UpgradeSmokeHeight abi.ChainEpoch = -1
|
|
|
|
UpgradeIgnitionHeight abi.ChainEpoch = -2
|
|
|
|
UpgradeRefuelHeight abi.ChainEpoch = -3
|
|
|
|
UpgradeTapeHeight abi.ChainEpoch = -4
|
|
|
|
UpgradeAssemblyHeight abi.ChainEpoch = 10
|
|
|
|
UpgradeLiftoffHeight abi.ChainEpoch = -5
|
|
|
|
UpgradeKumquatHeight abi.ChainEpoch = -6
|
|
|
|
UpgradeCalicoHeight abi.ChainEpoch = -8
|
|
|
|
UpgradePersianHeight abi.ChainEpoch = -9
|
|
|
|
UpgradeOrangeHeight abi.ChainEpoch = -10
|
|
|
|
UpgradeClausHeight abi.ChainEpoch = -11
|
|
|
|
UpgradeTrustHeight abi.ChainEpoch = -12
|
|
|
|
UpgradeNorwegianHeight abi.ChainEpoch = -13
|
|
|
|
UpgradeTurboHeight abi.ChainEpoch = -14
|
|
|
|
UpgradeHyperdriveHeight abi.ChainEpoch = -15
|
2021-09-15 15:22:25 +00:00
|
|
|
UpgradeChocolateHeight abi.ChainEpoch = -16
|
2022-01-11 22:41:20 +00:00
|
|
|
UpgradeOhSnapHeight abi.ChainEpoch = -17
|
2020-09-10 18:36:30 +00:00
|
|
|
|
2020-09-09 19:52:04 +00:00
|
|
|
DrandSchedule = map[abi.ChainEpoch]DrandEnum{
|
2020-09-10 18:36:30 +00:00
|
|
|
0: DrandMainnet,
|
2020-09-09 19:52:04 +00:00
|
|
|
}
|
2020-09-10 19:15:49 +00:00
|
|
|
|
2021-10-02 16:20:09 +00:00
|
|
|
GenesisNetworkVersion = network.Version0
|
|
|
|
|
2022-01-11 22:46:49 +00:00
|
|
|
NewestNetworkVersion = network.Version15
|
|
|
|
ActorUpgradeNetworkVersion = network.Version15
|
2020-09-26 06:59:59 +00:00
|
|
|
|
2020-11-17 06:34:06 +00:00
|
|
|
Devnet = true
|
|
|
|
ZeroAddress = MustParseAddress("f3yaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaby2smx7a")
|
2021-01-05 05:32:15 +00:00
|
|
|
|
2021-04-09 06:58:22 +00:00
|
|
|
WhitelistedBlock = cid.Undef
|
2021-01-05 05:32:15 +00:00
|
|
|
BootstrappersFile = ""
|
|
|
|
GenesisFile = ""
|
2020-06-30 13:18:01 +00:00
|
|
|
)
|
2020-11-11 05:20:59 +00:00
|
|
|
|
2020-11-11 06:44:35 +00:00
|
|
|
const BootstrapPeerThreshold = 1
|