package
0.2501.0
Repository: https://github.com/oasisprotocol/oasis-core.git
Documentation: pkg.go.dev

# Packages

Package block implements the roothash block and header.
Package commitment defines a roothash commitment.
Package message implements the supported runtime messages.

# Functions

NewClient creates a new gRPC roothash client.
NewEvidenceTx creates a new evidence transaction.
NewExecutorCommitTx creates a new executor commit transaction.
NewLivenessStatistics creates a new instance of per-epoch liveness statistics.
NewSubmitMsgTx creates a new incoming runtime message submission transaction.
RegisterService registers a new roothash service with the given gRPC server.
SanityCheckBlocks examines the blocks table.
VerifyRuntimeParameters verifies whether the runtime parameters are valid in the context of the roothash service.

# Constants

EvidenceKindEquivocation is the evidence kind for equivocation.
GasOpComputeCommit is the gas operation identifier for compute commits.
GasOpEvidence is the gas operation identifier for evidence submission transaction cost.
GasOpProposerTimeout is the gas operation identifier for executor propose timeout cost.
GasOpSubmitMsg is the gas operation identifier for message submission transaction cost.
LogEventExecutionDiscrepancyDetected is a log event value that signals an execution discrepancy has been detected.
LogEventHistoryReindexing is a log event value that signals a roothash runtime reindexing was run.
LogEventMessageUnsat is a log event value that signals a roothash message was not satisfactory.
LogEventRoundFailed is a log event value that signals a round has failed.
LogEventTimerFired is a log event value that signals a timer has fired.
ModuleName is a unique module name for the roothash module.
RoundInvalid is a special round number that refers to an invalid round.
RoundLatest is a special round number always referring to the latest round.
TimeoutNever is the timeout value that never expires.

# Variables

DefaultGasCosts are the "default" gas costs for operations.
ErrDuplicateEvidence is the error returned when submitting already existing evidence.
ErrIncomingMessageInsufficientFee is the error returned when the provided fee is smaller than the configured minimum incoming message submission fee.
ErrIncomingMessageQueueFull is the error returned when the incoming message queue is full.
ErrInvalidArgument is the error returned on malformed argument(s).
ErrInvalidEvidence is the error returned when an invalid evidence is submitted.
ErrInvalidRuntime is the error returned when the passed runtime is invalid.
ErrMaxInMessagesTooBig is the error returned when the MaxInMessages parameter is set to a value larger than the MaxInRuntimeMessages specified in consensus parameters.
ErrMaxMessagesTooBig is the error returned when the MaxMessages parameter is set to a value larger than the MaxRuntimeMessages specified in consensus parameters.
ErrNoCommittee is the error returned when there is no committee.
ErrNoExecutorPool is the error returned when there is no executor pool.
ErrNotFound is the error returned when a block is not found.
ErrRuntimeDoesNotSlash is the error returned when misbehaviour evidence is submitted for a runtime that does not slash.
ErrRuntimeSuspended is the error returned when the passed runtime is suspended.
MethodEvidence is the method name for submitting evidence of node misbehavior.
MethodExecutorCommit is the method name for executor commit submission.
Methods is a list of all methods supported by the roothash backend.
MethodSubmitMsg is the method name for queuing incoming runtime messages.

# Structs

AnnotatedBlock is an annotated roothash block.
Client is a gRPC roothash client.
ConsensusParameterChanges are allowed roothash consensus parameter changes.
ConsensusParameters are the roothash consensus parameters.
EquivocationExecutorEvidence is evidence of executor commitment equivocation.
EquivocationProposalEvidence is evidence of executor proposed batch equivocation.
Event is a roothash event.
Evidence is an evidence of node misbehaviour.
ExecutionDiscrepancyDetectedEvent is an execute discrepancy detected event.
ExecutorCommit is the argument set for the ExecutorCommit method.
ExecutorCommittedEvent is an event emitted each time an executor node commits.
FinalizedEvent is a finalized event.
Genesis is the roothash genesis state.
GenesisRuntimeState contains state for runtimes that are restored in a genesis block.
InMessageQueueRequest is a request for queued incoming messages.
InMsgProcessedEvent is an event of a specific incoming message being processed.
LivenessStatistics has the per-epoch liveness statistics for nodes.
MessageEvent is a runtime message processed event.
RoundResults contains information about how a particular round was executed by the consensus layer.
RoundRoots holds the per-round state and I/O roots that are stored in consensus state.
RoundRootsRequest is a request for a specific runtime and round's state and I/O roots.
RuntimeIDAttribute is the event attribute for specifying runtime ID.
RuntimeRequest is a generic roothash get request for a specific runtime.
RuntimeState is the per-runtime state.
SubmitMsg is the argument set for the SubmitMsg method.

# Interfaces

Backend is a root hash implementation.
BlockHistory is the root hash block history keeper interface.
MetricsMonitorable is the interface exposed by backends capable of providing metrics data.

# Type aliases

EvidenceKind is the evidence kind.