github.com/onflow/flow-go@v0.35.7-crescendo-preview.23-atree-inlining/module/updatable_configs.go (about) 1 package module 2 3 // SealingConfigsGetter is an interface for the actual updatable configs module. 4 // but only exposes its getter methods to return the config values without exposing 5 // its setter methods. 6 // SealingConfigs contains three configs: 7 // - RequireApprovalsForSealingConstruction (updatable) 8 // - RequireApprovalsForSealingVerification (not-updatable) 9 // - ChunkAlpha (not-updatable) 10 // - EmergencySealingActive (not-updatable) 11 // - ApprovalRequestsThreshold (not-updatable) 12 type SealingConfigsGetter interface { 13 // updatable fields 14 RequireApprovalsForSealConstructionDynamicValue() uint 15 16 // not-updatable fields 17 ChunkAlphaConst() uint 18 RequireApprovalsForSealVerificationConst() uint 19 EmergencySealingActiveConst() bool 20 ApprovalRequestsThresholdConst() uint64 21 } 22 23 // SealingConfigsSetter is an interface that allows the caller to update updatable configs 24 type SealingConfigsSetter interface { 25 SealingConfigsGetter 26 // SetRequiredApprovalsForSealingConstruction takes a new config value and updates the config 27 // if the new value is valid. 28 // Returns ValidationError if the new value results in an invalid sealing config. 29 SetRequiredApprovalsForSealingConstruction(newVal uint) error 30 }