Skip to content

Commit

Permalink
fix: fix policies for networks (#4325)
Browse files Browse the repository at this point in the history
  • Loading branch information
LesnyRumcajs authored May 15, 2024
1 parent 500f7a1 commit fcb5f56
Show file tree
Hide file tree
Showing 13 changed files with 149 additions and 123 deletions.
2 changes: 2 additions & 0 deletions .config/forest.dic
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ BLAKE2b
blockchain/M
blockstore/SM
BLS
calibnet
callee
canonicalization
CAR/SM
Expand All @@ -31,6 +32,7 @@ cron
crypto
daemon
daemonize
devnet
DB/S
deserialize/D
destructuring
Expand Down
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,9 @@
- [#4297](https://github.com/ChainSafe/forest/pull/4297) Fixed double decoding
of message in the `Filecoin.WalletSign` RPC method.

- [#4314](https://github.com/ChainSafe/forest/issues/4314) Fixed incorrect
allowed proof types for all networks.

- [#4328](https://github.com/ChainSafe/forest/pull/4328) Fix issues when
connecting to a network with fewer than 5 peers.

Expand Down
56 changes: 28 additions & 28 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

24 changes: 12 additions & 12 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -46,18 +46,18 @@ dialoguer = "0.11"
digest = "0.10"
directories = "5"
ethereum-types = "0.14"
fil_actor_account_state = { version = "11.2.0" }
fil_actor_cron_state = { version = "11.2.0" }
fil_actor_datacap_state = { version = "11.2.0" }
fil_actor_init_state = { version = "11.2.0" }
fil_actor_interface = { version = "11.2.0" }
fil_actor_market_state = { version = "11.2.0" }
fil_actor_miner_state = { version = "11.2.0" }
fil_actor_power_state = { version = "11.2.0" }
fil_actor_reward_state = { version = "11.2.0" }
fil_actor_system_state = { version = "11.2.0" }
fil_actor_verifreg_state = { version = "11.2.0" }
fil_actors_shared = { version = "11.2.0", features = ["json"] }
fil_actor_account_state = { version = "12.0.0" }
fil_actor_cron_state = { version = "12.0.0" }
fil_actor_datacap_state = { version = "12.0.0" }
fil_actor_init_state = { version = "12.0.0" }
fil_actor_interface = { version = "12.0.0" }
fil_actor_market_state = { version = "12.0.0" }
fil_actor_miner_state = { version = "12.0.0" }
fil_actor_power_state = { version = "12.0.0" }
fil_actor_reward_state = { version = "12.0.0" }
fil_actor_system_state = { version = "12.0.0" }
fil_actor_verifreg_state = { version = "12.0.0" }
fil_actors_shared = { version = "12.0.0", features = ["json"] }
filecoin-proofs-api = { version = "16.0", default-features = false }
flume = "0.11"
frc46_token = "10"
Expand Down
17 changes: 10 additions & 7 deletions src/networks/butterflynet/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ macro_rules! make_butterfly_policy {
use $crate::networks::butterflynet::*;
use $crate::shim::sector::{RegisteredPoStProofV3, RegisteredSealProofV3};

let mut policy = fil_actors_shared::v10::runtime::Policy::mainnet();
let mut policy = fil_actors_shared::v10::runtime::Policy::default();
policy.minimum_consensus_power = MINIMUM_CONSENSUS_POWER.into();
policy.minimum_verified_allocation_size = MINIMUM_VERIED_ALLOCATION.into();
policy.pre_commit_challenge_delay = PRE_COMMIT_CHALLENGE_DELAY;
Expand All @@ -162,18 +162,21 @@ macro_rules! make_butterfly_policy {
use $crate::networks::butterflynet::*;
use $crate::shim::sector::{RegisteredPoStProofV3, RegisteredSealProofV3};

let mut policy = fil_actors_shared::$version::runtime::Policy::mainnet();
let mut policy = fil_actors_shared::$version::runtime::Policy::default();
policy.minimum_consensus_power = MINIMUM_CONSENSUS_POWER.into();
policy.minimum_verified_allocation_size = MINIMUM_VERIED_ALLOCATION.into();
policy.pre_commit_challenge_delay = PRE_COMMIT_CHALLENGE_DELAY;

let mut proofs = fil_actors_shared::$version::runtime::ProofSet::default_seal_proofs();
proofs.insert($crate::shim::sector::RegisteredSealProofV3::StackedDRG512MiBV1);
proofs.insert(RegisteredSealProofV3::StackedDRG32GiBV1);
proofs.insert(RegisteredSealProofV3::StackedDRG64GiBV1);
let mut proofs = fil_actors_shared::$version::runtime::ProofSet::default();
proofs.insert(RegisteredSealProofV3::StackedDRG512MiBV1P1);
proofs.insert(RegisteredSealProofV3::StackedDRG32GiBV1P1);
proofs.insert(RegisteredSealProofV3::StackedDRG64GiBV1P1);
proofs.insert(RegisteredSealProofV3::StackedDRG512MiBV1P1_Feat_SyntheticPoRep);
proofs.insert(RegisteredSealProofV3::StackedDRG32GiBV1P1_Feat_SyntheticPoRep);
proofs.insert(RegisteredSealProofV3::StackedDRG64GiBV1P1_Feat_SyntheticPoRep);
policy.valid_pre_commit_proof_type = proofs;

let mut proofs = fil_actors_shared::$version::runtime::ProofSet::default_post_proofs();
let mut proofs = fil_actors_shared::$version::runtime::ProofSet::default();
proofs.insert(RegisteredPoStProofV3::StackedDRGWindow512MiBV1);
proofs.insert(RegisteredPoStProofV3::StackedDRGWindow32GiBV1);
proofs.insert(RegisteredPoStProofV3::StackedDRGWindow64GiBV1);
Expand Down
11 changes: 11 additions & 0 deletions src/networks/calibnet/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,17 @@ pub(super) static DRAND_SCHEDULE: Lazy<[DrandPoint<'static>; 2]> = Lazy::new(||
]
});

/// Creates a new calibnet policy with the given version.
#[macro_export]
macro_rules! make_calibnet_policy {
($version:tt) => {
fil_actors_shared::$version::runtime::Policy {
minimum_consensus_power: (32i64 << 30).into(),
..Default::default()
}
};
}

#[cfg(test)]
mod tests {
use super::*;
Expand Down
52 changes: 52 additions & 0 deletions src/networks/devnet/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -162,3 +162,55 @@ pub(super) static DRAND_SCHEDULE: Lazy<[DrandPoint<'static>; 2]> = Lazy::new(||
},
]
});

/// Creates a new devnet policy with the given version.
/// Works with `v10` onward.
#[macro_export]
macro_rules! make_devnet_policy {
(v11) => {
fil_actors_shared::v11::runtime::Policy {
minimum_consensus_power: 2040.into(),
minimum_verified_allocation_size: 256.into(),
pre_commit_challenge_delay: 10,
valid_pre_commit_proof_type: {
use $crate::shim::sector::RegisteredSealProofV3;
let mut proofs = fil_actors_shared::v11::runtime::ProofSet::default();
proofs.insert(RegisteredSealProofV3::StackedDRG2KiBV1P1);
proofs.insert(RegisteredSealProofV3::StackedDRG8MiBV1P1);
proofs
},
valid_post_proof_type: {
use $crate::shim::sector::RegisteredPoStProofV3;
let mut proofs = fil_actors_shared::v11::runtime::ProofSet::default();
proofs.insert(RegisteredPoStProofV3::StackedDRGWindow2KiBV1);
proofs.insert(RegisteredPoStProofV3::StackedDRGWindow2KiBV1P1);
proofs.insert(RegisteredPoStProofV3::StackedDRGWindow8MiBV1);
proofs.insert(RegisteredPoStProofV3::StackedDRGWindow8MiBV1P1);
proofs
},
..Default::default()
}
};
($version:tt) => {
fil_actors_shared::$version::runtime::Policy {
minimum_consensus_power: 2040.into(),
minimum_verified_allocation_size: 256.into(),
pre_commit_challenge_delay: 10,
valid_pre_commit_proof_type: {
let mut proofs = fil_actors_shared::$version::runtime::ProofSet::default();
proofs.insert(RegisteredSealProofV3::StackedDRG2KiBV1P1);
proofs.insert(RegisteredSealProofV3::StackedDRG2KiBV1P1_Feat_SyntheticPoRep);
proofs.insert(RegisteredSealProofV3::StackedDRG8MiBV1P1);
proofs.insert(RegisteredSealProofV3::StackedDRG8MiBV1P1_Feat_SyntheticPoRep);
proofs
},
valid_post_proof_type: {
let mut proofs = fil_actors_shared::$version::runtime::ProofSet::default();
proofs.insert(RegisteredPoStProofV3::StackedDRGWindow2KiBV1P1);
proofs.insert(RegisteredPoStProofV3::StackedDRGWindow8MiBV1P1);
proofs
},
..Default::default()
}
};
}
8 changes: 8 additions & 0 deletions src/networks/mainnet/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,14 @@ pub(super) static DRAND_SCHEDULE: Lazy<[DrandPoint<'static>; 3]> = Lazy::new(||
]
});

/// Creates a new mainnet policy with the given version.
#[macro_export]
macro_rules! make_mainnet_policy {
($version:tt) => {
fil_actors_shared::$version::runtime::Policy::default()
};
}

#[cfg(test)]
mod tests {
use super::*;
Expand Down
Loading

0 comments on commit fcb5f56

Please sign in to comment.