package tezos-protocol-017-PtNairob
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=7062cd57addd452852598a2214ade393130efa087b99068d53713bdf912b3680
sha512=08e4091144a03ce3c107fb91a66501bd8b65ca3278917c455a2eaac6df3e108ade63f6ab8340a4bb152d60f404326e464d0ec95d26cafe8e82f870465d24a5fc
doc/tezos-protocol-017-PtNairob.raw/Tezos_raw_protocol_017_PtNairob/Sc_rollup_operations/index.html
Module Tezos_raw_protocol_017_PtNairob.Sc_rollup_operations
Source
High-level operations over smart contract rollups.
type execute_outbox_message_result = {
paid_storage_size_diff : Tezos_protocol_environment_017_PtNairob.Z.t;
ticket_receipt : Ticket_receipt.t;
operations : Script_typed_ir.packed_internal_operation list;
}
Result of calling the execute_outbox_message
function.
type origination_result = {
address : Tezos_raw_protocol_017_PtNairob.Alpha_context.Sc_rollup.Address.t;
size : Tezos_protocol_environment_017_PtNairob.Z.t;
genesis_commitment_hash : Alpha_context.Sc_rollup.Commitment.Hash.t;
}
val originate :
Alpha_context.context ->
kind:Alpha_context.Sc_rollup.Kind.t ->
boot_sector:string ->
origination_proof:Alpha_context.Sc_rollup.Proof.serialized ->
parameters_ty:Script_repr.lazy_expr ->
(origination_result * Alpha_context.context)
Tezos_protocol_environment_017_PtNairob.Error_monad.tzresult
Tezos_protocol_environment_017_PtNairob.Lwt.t
originate context ~kind ~boot_sector ~origination_proof ~parameters_ty
adds a new rollup running in a given kind
initialized with a boot_sector
and to accept smart contract calls of type parameters_ty
.
origination_proof
, which covers the specialization of the PVM initial state with the boot_sector
, is used by the protocol to compute the genesis commitment, after its correctness has been checked.
Note: The need to provide an origination_proof
is motivated by technical limitations of Irmin (as of June, 2022), that requires a context to get an empty tree. As soon as this limitation is lifted, then we can drop the origination_proof
argument.
Returns an error if origination_proof
is invalid (e.g., it does not target the expected PVM).
val execute_outbox_message :
Alpha_context.context ->
Alpha_context.Sc_rollup.t ->
cemented_commitment:Alpha_context.Sc_rollup.Commitment.Hash.t ->
output_proof:string ->
(execute_outbox_message_result * Alpha_context.context)
Tezos_protocol_environment_017_PtNairob.Error_monad.tzresult
Tezos_protocol_environment_017_PtNairob.Lwt.t
execute_outbox_message ctxt rollup ~cemented_commitment ~output_proof
validates the given outbox message and prepares a set of resulting operations.
A module used for testing purposes only.