Evm_node_lib_dev.Block_producertype parameters = {signer : Signer.map;maximum_number_of_chunks : int;sequencer_sunset_sec : int64;preconfirmation_stream_enabled : bool;}type force = | TrueForce the creation of a block with the computed timestamp
*)| FalseCreate a block iff there is txs to be included
*)| With_timestamp of Tezos_base.TzPervasives.Time.Protocol.tForce the creation of a block with the provided timestamp
*)force defines if the block producer should force the creation of a block even if there is no txs to be included.
val start : parameters -> unit Tezos_base.TzPervasives.tzresult Lwt.tstart parameters starts the events follower.
val produce_genesis :
timestamp:Tezos_base.TzPervasives.Time.Protocol.t ->
parent_hash:Evm_node_lib_dev_encoding.Ethereum_types.block_hash ->
(unit, Tezos_base.TzPervasives.error Tezos_base.TzPervasives.trace)
Stdlib.result
Lwt.tproduce_genesis ~timestamp ~parent_hash creates the first empty block with the provided timestamp and parent hash
val produce_block :
force:force ->
[ `Block_produced of int | `No_block ] Tezos_base.TzPervasives.tzresult Lwt.tproduce_block ~force takes the transactions in the tx pool and produces a block from it, returns the number of transaction in the block. The block is not produced if the list of transactions is empty and force is set to False.
val preconfirm_transactions :
transactions:(string * Tx_queue_types.transaction_object_t) list ->
Tx_queue_types.preconfirmed_transactions_result
Tezos_base.TzPervasives.tzresult
Lwt.tpreconfirm_transactions ~transactions validates each transaction in transactions and streams every successfully validated one to the preconfirmation pipeline. Fails with Services_backend_sig.IC_disabled if instant confirmation is not enabled.
val lock_block_production : unit -> unit Tezos_base.TzPervasives.tzresult Lwt.tlock_block_production () locks block production. While locked, produce_block will not produce blocks and preconfirmations will be refused.
val unlock_block_production :
unit ->
unit Tezos_base.TzPervasives.tzresult Lwt.tunlock_block_production () unlocks block production if it was locked by lock_block_production.
module Internal_for_tests : sig ... end