Make.Updater
Mavryk Protocol Environment - Protocol updater.
type validation_result = {
context : Context.t;
The resulting context, it will be used for the next block.
*)fitness : Fitness.t;
The effective fitness of the block (to be compared with the one 'announced' in the block header).
*)message : string option;
An optional informative message, akin to a 'git commit' message, which can be attached to the context
when it's being commited.
max_operations_ttl : int;
The "time-to-live" of operations for the next block: any operation whose 'branch' is older than 'ttl' blocks in the past cannot be included in the next block.
*)last_allowed_fork_level : Int32.t;
The level of the last block for which the node might consider an alternate branch. The shell should consider as invalid any branch whose fork point is older (has a lower level) than the given value.
*)}
Validation result: the record returned by the protocol on the successful validation of a block.
type rpc_context = {
block_hash : Block_hash.t;
block_header : Block_header.shell_header;
context : Context.t;
}
module type PROTOCOL = sig ... end
This is the signature of a Mavryk protocol implementation. It has access to the standard library and the Environment module.
val activate : Context.t -> Protocol_hash.t -> Context.t Lwt.t
activate ctxt ph
activates an economic protocol (given by its hash ph
) from the context ctxt
. The resulting context is still a context for the current economic protocol, and the migration is not complete until init
in invoked.