Module Octez_smart_rollup_node.Rollup_node_daemon

type state = {
  1. mutable plugin : (module Protocol_plugin_sig.S);
  2. rpc_server : Rpc_server.t;
  3. configuration : Configuration.t;
  4. node_ctxt : Node_context.rw;
}
val is_before_origination : < context : 'a ; store : [< `Read | `Write Read ] > Node_context.t -> Layer1.header -> bool
val previous_context : < context : 'a ; store : [< `Read | `Write Read ] > Node_context.t -> predecessor:Layer1.header -> 'a Tezos_layer2_store.Context.t Tezos_base.TzPervasives.tzresult Lwt.t
val start_workers : (module Protocol_plugin_sig.S) -> < context : [ `Read | `Write ] ; store : [ `Read | `Write ] > Node_context.t -> (unit, Tezos_base.TzPervasives.tztrace) Stdlib.result Lwt.t
val handle_protocol_migration : catching_up:bool -> state -> Layer1.header -> (unit, Tezos_base.TzPervasives.tztrace) Stdlib.result Lwt.t
val maybe_split_context : < context : 'a ; store : [ `Read | `Write ] > Node_context.t -> 'b option -> int32 -> (unit, Tezos_base.TzPervasives.tztrace) Stdlib.result Lwt.t
val register_outbox_messages : (module Protocol_plugin_sig.S) -> < context : 'a ; store : [ `Read | `Write ] > Node_context.t -> 'b Tezos_layer2_store__Context.t -> int32 -> (unit, Tezos_base.TzPervasives.tztrace) Stdlib.result Lwt.t

Register outbox messages if any.

val process_l1_block : state -> catching_up:bool -> Layer1.header -> ([ `Already_processed of Octez_smart_rollup.Sc_rollup_block.t | `New of (Octez_smart_rollup.Sc_rollup_block.header, unit) Octez_smart_rollup.Sc_rollup_block.block | `Nothing ], Tezos_base.TzPervasives.tztrace) Stdlib.result Lwt.t
val update_l2_chain : state -> catching_up:bool -> Layer1.header -> unit Tezos_error_monad.Error_monad.tzresult Lwt.t
val notify_synchronized : < context : 'a ; store : [< `Read | `Write Read ] > Node_context.t -> unit
val notify_synchronization : < context : 'a ; store : [< `Read | `Write Read ] > Node_context.t -> int32 -> unit
val on_layer_1_head : state -> Layer1.header -> unit Tezos_base.TzPervasives.tzresult Lwt.t
val daemonize : state -> unit Tezos_base.TzPervasives.tzresult Lwt.t
val simple_refutation_loop : Layer1.header -> unit Tezos_base.TzPervasives.tzresult Lwt.t
val degraded_refutation_loop : state -> Layer1.header -> (unit, Tezos_base.TzPervasives.tztrace) Stdlib.result Lwt.t
val refutation_loop : state -> Layer1.header -> unit Tezos_base.TzPervasives.tzresult Lwt.t
val refutation_daemon : ?restart:bool -> state -> unit
val install_finalizer : state -> Lwt_exit.clean_up_callback_id
val maybe_recover_bond : state -> (unit, Tezos_base.TzPervasives.error list) Stdlib.result Lwt.t
val check_operator_balance : state -> (unit, Tezos_base.TzPervasives.tztrace) Stdlib.result Lwt.t
val make_signers_for_injector : Purpose.operators -> (Tezos_crypto.Signature.Public_key_hash.t list * [> `Delay_block of float | `Each_block ] * Octez_smart_rollup.Operation_kind.t list) list
val maybe_performance_metrics : state -> unit Lwt.t
val process_daemon : state -> unit Tezos_base.TzPervasives.tzresult Lwt.t
module Internal_for_tests : sig ... end
val setup_opentelemetry : data_dir:string -> Configuration.t -> unit Lwt.t
val run : data_dir:string -> irmin_cache_size:int -> Configuration.t -> Tezos_client_base.Client_context.full -> (unit, Tezos_base.TzPervasives.Error_monad.tztrace) Stdlib.result Lwt.t
module Replay : sig ... end