package tezos-shell

  1. Overview
  2. Docs

Tezos Shell - Main entry point of the validation scheduler.

type t
val shutdown : t -> unit Lwt.t
val activate : t -> start_prevalidator:bool -> validator_process:Block_validator_process.t -> Tezos_store.Store.chain_store -> (Chain_validator.t, Tezos_error_monad.TzCore.error list) result Lwt.t

Start the validation scheduler of a given chain.

val get_active_chains : t -> Tezos_crypto.Chain_id.t list

Force the validation of a block.

Monitor all the valid block (for all activate chains).

val chains_watcher : t -> (Tezos_crypto.Chain_id.t * bool) Lwt_stream.t * Lwt_watcher.stopper
val inject_operation : t -> ?chain_id:Tezos_crypto.Chain_id.t -> force:bool -> Tezos_base.Operation.t -> (unit, Tezos_error_monad.TzCore.error list) result Lwt.t

inject_operation t ?chain_id ~force op notifies the prevalidator worker associated with the chain_id of a new injected operation. Fails if the branch in op is not known in the given chain_id or if no prevalidator is associated with the chain_id. If no chain_id is provided, try to recover a chain_id from the branch in the operation data. Fails if no chain_id can be recovered unless force is set. If force is set, notify all the known prevalidator workers.

val distributed_db : t -> Distributed_db.t