diff --git a/zebra-consensus/src/config.rs b/zebra-consensus/src/config.rs index 4cb51bf5..034a351e 100644 --- a/zebra-consensus/src/config.rs +++ b/zebra-consensus/src/config.rs @@ -4,14 +4,19 @@ use serde::{Deserialize, Serialize}; #[derive(Clone, Debug, Deserialize, Serialize)] #[serde(deny_unknown_fields, default)] pub struct Config { - /// Should Zebra sync using checkpoints? + /// Should Zebra use its optional checkpoints to sync? /// - /// Setting this option to true enables post-Canopy checkpoints. - /// (Zebra always checkpoints up to and including Canopy activation.) + /// This option is `true` by default, and allows for faster chain synchronization. /// - /// Future versions of Zebra may change the mandatory checkpoint - /// height. + /// Zebra requires some checkpoints to validate legacy network upgrades. + /// But it also ships with optional checkpoints, which can be used instead of full block validation. + /// + /// Disabling this option makes Zebra start full validation as soon as possible. + /// This helps developers debug Zebra, by running full validation on more blocks. + /// + /// Future versions of Zebra may change the required and optional checkpoints. pub checkpoint_sync: bool, + /// Skip the pre-download of Groth16 parameters if this option is true. pub debug_skip_parameter_preload: bool, } @@ -22,7 +27,7 @@ pub struct Config { impl Default for Config { fn default() -> Self { Self { - checkpoint_sync: false, + checkpoint_sync: true, debug_skip_parameter_preload: false, } }