[go: up one dir, main page]

EVM Node: Propagate kernel upgrades through blueprints

Currently, EVM observers get their kernel upgrade events via the rollup node, but these upgrades are applied when blueprints come from their EVM endpoint. This works well enough when (1) the cooldown period of the upgrade is large enough, and (2) observers are online and synced when it is injected. This does not work so well for offline observers, which needs to catchup two streams (EVM endpoint and rollup node). In that case, nothing ensures the upgrade event will be fetched before the blueprint activating it to be applied. The EVM node does not have a way to recover from this easily.

With this patch, we change the source from which EVM nodes in observer mode fetch the upgrade. The upgrades are propagated through the blueprints responsible for activating them. It would arguably be better to propagate them sooner, but the change would be more intrusive and widespread (e.g., changes in the threshold encryption support modules would be necessary).

Manually testing the MR

Checklist

  • Document the interface of any function added or modified (see the coding guidelines)
  • Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, CHANGES.rst at the root of the repository for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR

Merge request reports

Loading