Module concordium_base::updates
source · Expand description
Definitions and functionality related to chain updates.
Modules
- A module that provides helpers for constructing and signing update instructions.
Structs
- And access structure for performing chain updates. The access structure is only meaningful in the context of a list of update keys to which the indices refer to.
- Access structures for each of the different possible chain updates, togehter with the context giving all the possible keys.
- Access structures for each of the different possible chain updates, togehter with the context giving all the possible keys.
- Parameters related to becoming a baker that apply to protocol versions 1-3.
- The reward fractions related to the gas account and inclusion of special transactions.
- Either root, level1, or level 2 access structure. They all have the same structure, keys and a threshold. The phantom type parameter is used for added type safety to distinguish different access structures in different contexts.
- Parameters related to staking pools. This applies to protocol version 4 and up.
- A generic protocol update. This is essentially an announcement of the update. The details of the update will be communicated in some off-chain way, and bakers will need to update their node software to support the update.
- Length of a reward period in epochs. Must always be a strictly positive integer.
- The time parameters are introduced as of protocol version 4, and consist of the reward period length and the mint rate per payday. These are coupled as a change to either affects the overall rate of minting.
- Update the transaction fee distribution to the specified value.
- A header common to all update instructions.
- Signature of an update instruction.
Enums
- An update with level 1 keys of either level 1 or level 2 keys. Each of the updates must be a separate transaction.
- An update with root keys of some other set of governance keys, or the root keys themselves. Each update is a separate transaction.
- The type of an update payload.
- Enumeration of the types of updates that are possible.
Traits
- Together with
Authorizations
this defines a type family allowing us to mapChainParameterVersion0
andChainParameterVersion1
to the correspondingAuthorizations
version. - Implementors of this trait can sign update instructions.
Type Definitions
- A mapping of chain parameter versions to authorization versions.