What's Changed
Epoch Fallback Mode (EFM) Recovery
This release includes changes needed to implement EFM Recovery. In particular the recoverEpoch
admin function and EpochRecover
service event. These allow a governance transaction to coordinate recovery from EFM without downtime by inserting a new epoch configuration. (See the design document for further details.)
DKG Data Model
This release modified the data model used in FlowDKG
to explicitly account for the participant index. This allows greater flexibility when performing EFM Recovery. In particular, the ResultSubmission
type was added.
Protocol Upgrade Mechanism
This release adds a new service event NodeVersionBeacon.ProtocolStateVersionUpgrade
, which is used to coordinate upgrades to the Protocol State. This mechanism will also used to coordinate future changes in Protocol behaviour (protocol upgrades).
Breaking Changes
- Event
FlowDKG.EndDKG
parameter type is changed from[String?]?
toResultSubmission?
- Function
FlowDKG.dkgCompleted
return type is changed from[String?]?
toResultSubmission?
- Event
FlowEpoch.EpochCommit
parameters changed:- existing
dkgPubKeys
now omits the group public key - new
dkgGroupKey
is added - new
dkgIdMapping
is added
- existing
Other Changes
- Update to new emulator and update templates package by @joshuahannan in #474
- Use standard import placeholders by @joshuahannan in #476
Full Changelog: lib/go/contracts/v1.5.0...lib/go/templates/v1.6.0