ApplicationNeutralProposalView

org.sigilaris.node.jvm.runtime.consensus.hotstuff.ApplicationNeutralProposalView

Provides an application-neutral view over proposals, where the block body is derived entirely from the carried transaction set without application-specific logic.

Attributes

Source
ApplicationNeutralProposalView.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Type members

Types

type Event = Utf8

Type alias for block record events in application-neutral proposals.

Type alias for block record events in application-neutral proposals.

Attributes

Source
ApplicationNeutralProposalView.scala
type ResultRef = Utf8

Type alias for block record result references in application-neutral proposals.

Type alias for block record result references in application-neutral proposals.

Attributes

Source
ApplicationNeutralProposalView.scala

Value members

Concrete methods

Builds a block body from the given transaction IDs with empty results and events.

Builds a block body from the given transaction IDs with empty results and events.

Value parameters

txIds

the transaction identifiers to include as block records

Attributes

Returns

an application-neutral block body

Source
ApplicationNeutralProposalView.scala

Constructs a block view from a proposal using its header and derived body.

Constructs a block view from a proposal using its header and derived body.

Value parameters

proposal

the consensus proposal

Attributes

Returns

the application-neutral block view

Source
ApplicationNeutralProposalView.scala
def bodyRoot(txIds: Iterable[StableArtifactId]): Either[BlockValidationFailure, BodyRoot]

Computes the body root hash for the given transaction IDs.

Computes the body root hash for the given transaction IDs.

Value parameters

txIds

the transaction identifiers

Attributes

Returns

the computed body root or a validation failure

Source
ApplicationNeutralProposalView.scala

Constructs a canonical proposal transaction set from the given transaction IDs.

Constructs a canonical proposal transaction set from the given transaction IDs.

Value parameters

txIds

the transaction identifiers to include

Attributes

Returns

a canonically ordered proposal transaction set

Source
ApplicationNeutralProposalView.scala
def readiness[F[_] : Sync](validatorSet: ValidatorSet): ProposalCatchUpReadiness[F]

Creates a catch-up readiness evaluator that validates proposals using application-neutral body derivation.

Creates a catch-up readiness evaluator that validates proposals using application-neutral body derivation.

Type parameters

F

the effect type

Value parameters

validatorSet

the active validator set

Attributes

Returns

a readiness evaluator for proposal catch-up

Source
ApplicationNeutralProposalView.scala
def txIdFromBytes(bytes: ByteVector): Either[String, StableArtifactId]

Parses an application-neutral transaction ID from raw bytes, requiring exactly 32 bytes.

Parses an application-neutral transaction ID from raw bytes, requiring exactly 32 bytes.

Value parameters

bytes

the raw byte representation

Attributes

Returns

the parsed stable artifact ID or an error message

Source
ApplicationNeutralProposalView.scala

Validates a proposal against the validator set and returns the derived block view.

Validates a proposal against the validator set and returns the derived block view.

Value parameters

proposal

the consensus proposal to validate

validatorSet

the active validator set for validation

Attributes

Returns

the validated block view or a validation failure

Source
ApplicationNeutralProposalView.scala