package tezos-baking-alpha

  1. Overview
  2. Docs
type action =
  1. | Do_nothing
  2. | Inject_block of {
    1. block_to_bake : block_to_bake;
    2. updated_state : Baking_state.state;
    }
  3. | Inject_preendorsements of {
    1. preendorsements : (Baking_state.delegate * Tezos_protocol_alpha.Protocol.Alpha_context.consensus_content) list;
    2. updated_state : Baking_state.state;
    }
  4. | Inject_endorsements of {
    1. endorsements : (Baking_state.delegate * Tezos_protocol_alpha.Protocol.Alpha_context.consensus_content) list;
    2. updated_state : Baking_state.state;
    }
  5. | Update_to_level of level_update
  6. | Synchronize_round of round_update
and level_update = {
  1. new_level_proposal : Baking_state.proposal;
  2. compute_new_state : current_round: Tezos_protocol_alpha.Protocol.Alpha_context.Round.t -> delegate_slots:Baking_state.delegate_slots -> next_level_delegate_slots:Baking_state.delegate_slots -> (Baking_state.state * action) Lwt.t;
}
and round_update = {
  1. new_round_proposal : Baking_state.proposal;
  2. handle_proposal : Baking_state.state -> (Baking_state.state * action) Lwt.t;
}
type t = action
val start_waiting_for_preendorsement_quorum : Baking_state.state -> unit Lwt.t
val start_waiting_for_endorsement_quorum : Baking_state.state -> unit Lwt.t
val pp_action : Format.formatter -> t -> unit