Module Raw_context.Dal

val record_number_of_attested_shards : t -> Dal_attestation_repr.t -> int -> t

record_number_of_attested_shards ctxt attestation number_of_shards records that the number_of_shards shards were attested (declared available by some attester).

register_slot_header ctxt slot_header ~source returns a new context where the new candidate slot published by source has been taken into account. Returns Some (ctxt,updated) where updated=true if the candidate is registered. Some (ctxt,false) if another candidate was already registered previously. Returns an error if the slot is invalid.

val record_attestation : t -> tb_slot:Slot_repr.t -> Dal_attestation_repr.t -> t

record_attestation ctxt ~tb_slot attestation records that the delegate with Tenderbake slot tb_slot emitted attestation.

attestations returns the recorded attestations

val candidates : t -> (Dal_slot_repr.Header.t * Contract_repr.t) list

candidates ctxt returns the current list of slot for which there is at least one candidate alongside the addresses that published them.

is_slot_index_attested ctxt slot_index returns true if the slot_index is declared available by the protocol. false otherwise. If the index is out of the interval 0;number_of_slots - 1, returns false.

Whether the slot is attested by the protocol or not, the function also returns the ratio of attested shards w.r.t. total shards, as a rational number.

val assert_feature_enabled : t -> unit Tezos_protocol_environment_alpha.Error_monad.tzresult
val only_if_feature_enabled : t -> default:(t -> 'a) -> (t -> 'a) -> 'a
val assert_incentives_enabled : t -> unit Tezos_protocol_environment_alpha.Error_monad.tzresult
val only_if_incentives_enabled : t -> default:(t -> 'a) -> (t -> 'a) -> 'a