package tezos-protocol-014-PtKathma
type seed_computation_status =
| Nonce_revelation_stage
| Vdf_revelation_stage of {
seed_discriminant : Seed_repr.seed;
seed_challenge : Seed_repr.seed;
}
| Computation_finished
type Tezos_protocol_environment_014_PtKathma.Error_monad.error +=
| Unknown of {
oldest : Cycle_repr.t;
cycle : Cycle_repr.t;
latest : Cycle_repr.t;
}
| Already_accepted
| Unverified_vdf
| Too_early_revelation
val init :
?initial_seed:State_hash.t ->
Raw_context.t ->
Raw_context.t Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
Generates the first preserved_cycles+2
seeds for which there are no nonces.
val check_vdf_and_update_seed :
Raw_context.t ->
Seed_repr.vdf_solution ->
Raw_context.t Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
Verifies if a VDF (result, proof) is valid, if so updates the seed with a function of the VDF result.
val compute_randao :
Raw_context.t ->
Raw_context.t Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
Computes RANDAO output for cycle #(current_cycle + preserved + 1)
val cycle_end :
Raw_context.t ->
Cycle_repr.t ->
(Raw_context.t * Nonce_storage.unrevealed list)
Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
Must be run at the end of the cycle, resets the VDF state and returns unrevealed nonces to know which party has to forfeit its endorsing rewards for that cycle.
val get_seed_computation_status :
Raw_context.t ->
seed_computation_status
Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
Return the random seed computation status, that is whether the VDF computation period has started, and if so the information needed, or if it has finished for the current cycle.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>