Mina_intf.Transition_router_intf
val run :
?sync_local_state:bool ->
context:(module CONTEXT) ->
trust_system:Trust_system.t ->
verifier:Verifier.t ->
network:network ->
is_seed:bool ->
is_demo_mode:bool ->
time_controller:Block_time.Controller.t ->
consensus_local_state:Consensus.Data.Local_state.t ->
persistent_root_location:string ->
persistent_frontier_location:string ->
frontier_broadcast_pipe:
(transition_frontier option Pipe_lib.Broadcast_pipe.Reader.t
* transition_frontier option Pipe_lib.Broadcast_pipe.Writer.t) ->
network_transition_reader:
([ `Transition of Mina_block.t Network_peer.Envelope.Incoming.t ]
* [ `Time_received of Block_time.t ]
* [ `Valid_cb of Mina_net2.Validation_callback.t ])
Pipe_lib.Strict_pipe.Reader.t ->
producer_transition_reader:breadcrumb Pipe_lib.Strict_pipe.Reader.t ->
most_recent_valid_block:
(Mina_block.initial_valid_block Pipe_lib.Broadcast_pipe.Reader.t
* Mina_block.initial_valid_block Pipe_lib.Broadcast_pipe.Writer.t) ->
catchup_mode:[ `Normal | `Super ] ->
notify_online:( unit -> unit Async_kernel.Deferred.t ) ->
unit ->
([ `Transition of Mina_block.Validated.t ]
* [ `Source of [ `Gossip | `Catchup | `Internal ] ]
* [ `Valid_cb of Mina_net2.Validation_callback.t option ])
Pipe_lib.Strict_pipe.Reader.t
* unit Async_kernel.Ivar.t
sync_local_state
is `true` by default, may be set to `false` for tests