[go: up one dir, main page]

kernel/sequencer: initialization of the sequencer

Context

This MR introduces a new Runtime, the sequencer one. The idea of the kernel sequencer is to have a custom runtime that will handle the delayed inbox. To make it simple, this new runtime will have the exact same behavior of the normal runtime, except that the read_input function will have a different behavior. With this approach, the user kernel remains unmodified.

In this first MR, the SequencerRuntime has exactly the same behavior, even for the read_input function.

This MR exposes a new macrosequencer_kernel_entry that replaces the kernel_entry one. This macro will instantiate a new runtime, the SequencerRuntime, which will later handle the delayed inbox.

use tezos_smart_rollup::prelude::Runtime;
use kernel_sequencer::sequencer_kernel_entry;

fn run<Host: Runtime>(host: &mut Host) {
   host.write_debug("Hello Kernel");
}

sequencer_kernel_entry!(run);

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
Edited by Pierre-Louis Dubois

Merge request reports

Loading