package tezos-protocol-016-PtMumbai
Storage management of slots for the data-availability layer.
Overview
This module is an interface for the slot storage for the layer 1.
Depending on the current level of the context and the lag
(a constant given by the context), the status of the slot may differ:
- For every level in the interval
current_level; current_level + lag -1
the slot isPending
. This means a slot header was proposed but was not declared available yet.
- For every level above
current_level + lag
, the slot may beconfirmed
. For any slot confirmed by the protocol (i.e. indices returned byfinalize_pending_slots
), subscribers of the DAL should take into account the corresponding slots.
- For every level below
current_level - lag
, there should not be any slot in the storage.
val find_slot_headers :
Raw_context.t ->
Raw_level_repr.t ->
Dal_slot_repr.Header.t list option
Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
Tezos_protocol_environment_016_PtMumbai.Lwt.t
find_slot_headers ctxt level
returns Some slot_headers
where slot_headers
are pending slots at level level
. None
is returned if no slot_header
was registered at this level. The function fails if the reading into the context fails.
val finalize_current_slot_headers :
Raw_context.t ->
Raw_context.t Tezos_protocol_environment_016_PtMumbai.Lwt.t
finalize_current_slot_headers ctxt
finalizes the current slot headers posted on this block and marks them as pending into the context.
val finalize_pending_slot_headers :
Raw_context.t ->
(Raw_context.t * Dal_attestation_repr.t)
Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
Tezos_protocol_environment_016_PtMumbai.Lwt.t
finalize_pending_slot_headers ctxt
finalizes pending slot headers which are old enough (i.e. registered at level current_level - lag
). All slots marked as available are returned. All the pending slots at current_level - lag
level are removed from the context.
val get_slot_headers_history :
Raw_context.t ->
Dal_slot_repr.History.t
Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
Tezos_protocol_environment_016_PtMumbai.Lwt.t
get_slot_headers_history ctxt
returns the current value of slots_history stored in ctxt
, or Slots_history.genesis if no value is stored yet.