package tezos-protocol-016-PtMumbai
This modules handles all the validation/application/finalisation of any operation related to the DAL.
val validate_attestation :
Alpha_context.t ->
Alpha_context.Dal.Attestation.operation ->
unit Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
validate_attestation ctxt op
ensures that op.attestation
is valid and cannot prevent an operation containing op.attestation
to be refused on top of ctxt
. If an Error _
is returned, the op.attestation
is not valid.
val apply_attestation :
Alpha_context.t ->
Alpha_context.Dal.Attestation.operation ->
Alpha_context.t Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
apply_attestation ctxt op
applies op.attestation
into the ctxt
assuming op.attestor
issued those attestations.
val validate_publish_slot_header :
Alpha_context.t ->
Alpha_context.Dal.Slot.Header.operation ->
unit Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
validate_publish_slot_header ctxt slot
ensures that slot_header
is valid and cannot prevent an operation containing slot_header
to be refused on top of ctxt
. If an Error _
is returned, the slot_header
is not valid.
val apply_publish_slot_header :
Alpha_context.t ->
Alpha_context.Dal.Slot.Header.operation ->
Alpha_context.t Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
apply_publish_slot_header ctxt slot_header
applies the publication of slot header slot_header
on top of ctxt
. Fails if the slot contains already a slot header.
val finalisation :
Alpha_context.t ->
(Alpha_context.t * Alpha_context.Dal.Attestation.t option)
Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
Tezos_protocol_environment_016_PtMumbai.Lwt.t
finalisation ctxt
should be executed at block finalisation time. A set of slots attested at level ctxt.current_level - lag
is returned encapsulated into the attestation data-structure.
lag
is a parametric constant specific to the data-availability layer.
val initialisation :
Alpha_context.t ->
level:Alpha_context.Level.t ->
Alpha_context.t Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
Tezos_protocol_environment_016_PtMumbai.Lwt.t
initialize ctxt ~level
should be executed at block initialisation time. It allows to cache the committee for level
in memory so that every time we need to use this committee, there is no need to recompute it again.