package octez-protocol-017-PtNairob-libs

  1. Overview
  2. Docs
Octez protocol 017-PtNairob libraries

Install

Dune Dependency

Authors

Maintainers

Sources

octez-19.0.tar.gz
sha256=c6df840ebbf115e454db949028c595bec558a59a66cade73b52a6d099d6fa4d4
sha512=d8aee903b9fe130d73176bc8ec38b78c9ff65317da3cb4f3415f09af0c625b4384e7498201fdb61aa39086a7d5d409d0ab3423f9bc3ab989a680cf444a79bc13

doc/octez-protocol-017-PtNairob-libs.baking/Tezos_baking_017_PtNairob/Baking_simulator/index.html

Module Tezos_baking_017_PtNairob.Baking_simulatorSource

Sourcetype incremental = {
  1. predecessor : Baking_state.block_info;
  2. context : Tezos_protocol_environment.Context.t;
  3. state : Tezos_protocol_017_PtNairob.Protocol.validation_state * Tezos_protocol_017_PtNairob.Protocol.application_state option;
  4. rev_operations : Tezos_protocol_017_PtNairob.Protocol.Alpha_context.Operation.packed list;
  5. header : Tezos_base.Block_header.shell_header;
}
Sourceval load_context : context_path:string -> Abstract_context_index.t Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval check_context_consistency : Abstract_context_index.t -> Tezos_base.TzPervasives.Context_hash.t -> unit Tezos_base.TzPervasives.tzresult Lwt.t

Make sure that the given context is consistent by trying to read in it

Sourceval begin_construction : timestamp:Tezos_base.TzPervasives.Time.Protocol.t -> protocol_data:Tezos_protocol_017_PtNairob.Protocol.block_header_data -> force_apply:bool -> pred_resulting_context_hash:Tezos_base.TzPervasives.Context_hash.t -> Abstract_context_index.t -> Baking_state.block_info -> Tezos_base.TzPervasives.Chain_id.t -> incremental Tezos_base.TzPervasives.tzresult Lwt.t

begin_construction ~timestamp ~protocol_data ~force_apply abstract_context predecessor chain_id creates a new incremental value with an empty operation list. A context is recovered from the abstract_index and the resulting_context_hash from predecessor. This context is used to create a validation_state and an application_state (if force_apply is set). A partial shell_header is created from predecessor information and timestamp.

Sourceval add_operation : incremental -> Tezos_protocol_017_PtNairob.Protocol.Alpha_context.Operation.packed -> (incremental * Tezos_protocol_017_PtNairob.Protocol.operation_receipt option) Tezos_base.TzPervasives.tzresult Lwt.t

add_operation incremental op validates op in incremental.validation_state without checking its signature. Indeed, the operation has already been validated in the node so it has a correct signature. We still need to validate it again because the context may be different. op is also applied if incremental has been created with force_apply set. This function returns an incremental with updated operations list and validation_state (and application_state).

finalize_construction incremental calls the finalize_validation of the protocol on the validation_state from incremental. If incremental has been created with force_apply set, finalize_application is also called and its results returned.

OCaml

Innovation. Community. Security.