Module Tezos_dal_node_services.Services

This module provides different services related to DAL.

type 'rpc service = ('meth, 'prefix, 'params, 'query, 'input, 'output) Tezos_rpc.Service.service constraint 'rpc = < meth : 'meth ; prefix : 'prefix ; params : 'params ; query : 'query ; input : 'input ; output : 'output >
val health : < meth : [ `GET ] ; input : unit ; output : Types.Health.t ; prefix : unit ; params : unit ; query : unit > service
val synchronized : < meth : [ `GET ] ; input : unit ; output : L1_crawler_status.t ; prefix : unit ; params : unit ; query : unit > service
val monitor_synchronized : < meth : [ `GET ] ; input : unit ; output : L1_crawler_status.t ; prefix : unit ; params : unit ; query : unit > service
val post_slot : < meth : [ `POST ] ; input : string ; output : Tezos_crypto_dal.Cryptobox.commitment * Tezos_crypto_dal.Cryptobox.commitment_proof ; prefix : unit ; params : unit ; query : < padding : char ; slot_index : Types.slot_index option > > service

This RPC should be used by a slot producer. It allows to produce a commitment, a commitment proof and the shards from a slot. A padding is added if the slot is not of the expected size (slot_size from the Cryptobox).

val patch_commitment : < meth : [ `PATCH ] ; input : Types.slot_id ; output : unit ; prefix : unit ; params : unit * Tezos_crypto_dal.Cryptobox.commitment ; query : unit > service

Associate a commitment to a level and a slot index. See Slot_manager.associate_slot_id_with_commitment for more details.

val get_slot_content : < meth : [ `GET ] ; input : unit ; output : Tezos_crypto_dal.Cryptobox.slot ; prefix : unit ; params : (unit * Types.level) * Types.slot_index ; query : unit > service

Retrieve the content of the slot associated with the given slot id.

val get_slot_pages : < meth : [ `GET ] ; input : unit ; output : Tezos_crypto_dal.Cryptobox.page list ; prefix : unit ; params : (unit * Types.level) * Types.slot_index ; query : unit > service

Returns the pages of the slot identified by the given slot id.

val get_slot_page_proof : < meth : [ `GET ] ; input : unit ; output : Tezos_crypto_dal.Cryptobox.page_proof ; prefix : unit ; params : ((unit * Types.level) * Types.slot_index) * Types.page_index ; query : unit > service

Compute the proof associated to the page whose index is given of the given slot.

val get_slot_commitment : < meth : [ `GET ] ; input : unit ; output : Tezos_crypto_dal.Cryptobox.commitment ; prefix : unit ; params : (unit * Types.level) * Types.slot_index ; query : unit > service

Return the accepted commitment associated to the given slot index and published at the given level, if any.

val get_slot_status : < meth : [ `GET ] ; input : unit ; output : Types.header_status ; prefix : unit ; params : (unit * Types.level) * Types.slot_index ; query : unit > service

Return the status for the given slot.

val get_last_processed_level : < meth : [ `GET ] ; input : unit ; output : int32 ; prefix : unit ; params : unit ; query : unit > service

Returns the last (finalized) L1 level which was processed by the DAL \ node.

val get_protocol_parameters : < meth : [ `GET ] ; input : unit ; output : Types.proto_parameters ; prefix : unit ; params : unit ; query : int32 option > service

Returns the protocol parameters as known by the DAL node.

val patch_profiles : < meth : [ `PATCH ] ; input : Controller_profiles.t ; output : unit ; prefix : unit ; params : unit ; query : unit > service

Update the list of profiles tracked by the DAL node. Note that it does not take the bootstrap profile as it is incompatible with other profiles.

val get_profiles : < meth : [ `GET ] ; input : unit ; output : Types.profile ; prefix : unit ; params : unit ; query : unit > service

Return the list of current profiles tracked by the DAL node

val get_assigned_shard_indices : < meth : [ `GET ] ; input : unit ; output : Types.shard_index list ; prefix : unit ; params : (unit * Tezos_base.TzPervasives.Signature.public_key_hash) * Types.level ; query : unit > service

Return the shard indexes assigned to the given delegate (identified by its delegate key address) at the given level.

val get_attestable_slots : < meth : [ `GET ] ; input : unit ; output : Types.attestable_slots ; prefix : unit ; params : (unit * Tezos_base.TzPervasives.Signature.public_key_hash) * Types.level ; query : unit > service

Return the set of currently attestable slots. A slot is attestable at level l if it is published at level l - attestation_lag and *all* the shards assigned at level l to the given delegate (identified by its delegate key address) are available in the DAL node's store.

val get_traps : < meth : [ `GET ] ; input : unit ; output : Types.trap list ; prefix : unit ; params : unit * Types.level ; query : < delegate : Tezos_base.TzPervasives.Signature.public_key_hash option ; slot_index : Types.slot_index option > > service

For a given published level, return all the traps known by the node.

val get_slot_shard : < meth : [ `GET ] ; input : unit ; output : Tezos_crypto_dal.Cryptobox.shard ; prefix : unit ; params : ((unit * Types.level) * Types.slot_index) * int ; query : unit > service

Return the shard associated to the given index.

val version : < meth : [ `GET ] ; input : unit ; output : Types.Version.t ; prefix : unit ; params : unit ; query : unit > service
module P2P : sig ... end