Module payload

Source
Expand description

Re-exported payload related types

Modules§

noop
A payload builder service task that does nothing.
test_utils
Utils for testing purposes.

Structs§

EthBuiltPayload
Contains the built payload.
EthPayloadBuilderAttributes
Container type for all components required to build a payload.
EthereumExecutionPayloadValidator
Execution payload validator.
PayloadBuilderHandle
A communication channel to the PayloadBuilderService.
PayloadBuilderService
A service that manages payload building tasks.
PayloadId
And 8-byte identifier for an execution payload.
PayloadStore
A communication channel to the PayloadBuilderService that can retrieve payloads.

Enums§

EngineApiMessageVersion
The version of Engine API message.
EngineObjectValidationError
Thrown when the payload or attributes are known to be invalid before processing.
InvalidPayloadAttributesError
Thrown when validating the correctness of a payloadattributes object.
KeepPayloadJobAlive
Whether the payload job should be kept alive or terminated after the payload was requested by the CL.
MessageValidationKind
A type that represents whether or not we are validating a payload or payload attributes.
NewPayloadError
Error validating payload received over newPayload API.
PayloadBuilderError
Possible error variants during payload building.
PayloadKind
Determines how we should choose the payload to return.
PayloadOrAttributes
Either a type that implements the ExecutionPayload or a type that implements the PayloadAttributes trait.
PayloadServiceCommand
Message type for the PayloadBuilderService.
VersionSpecificValidationError
Thrown when validating an execution payload OR payload attributes fails due to:

Traits§

BuiltPayload
Represents a built payload type that contains a built SealedBlock and can be converted into engine API execution payloads.
ExecutionPayload
An execution payload.
PayloadAttributes
The execution payload attribute type the CL node emits via the engine API. This trait should be implemented by types that could be used to spawn a payload job.
PayloadAttributesBuilder
A builder that can return the current payload attribute.
PayloadBuilderAttributes
This can be implemented by types that describe a currently running payload job.
PayloadJob
A type that can build a payload.
PayloadJobGenerator
A type that knows how to create new jobs for creating payloads.
PayloadTypes
The types that are used by the engine API.

Functions§

validate_execution_requests
Validates that execution requests are valid according to Engine API specification.
validate_parent_beacon_block_root_presence
Validate the presence of the parentBeaconBlockRoot field according to the given timestamp. This method is meant to be used with either a payloadAttributes field or a full payload, with the engine_forkchoiceUpdated and engine_newPayload methods respectively.
validate_payload_timestamp
Validates the timestamp depending on the version called:
validate_version_specific_fields
Validates the presence or exclusion of fork-specific fields based on the ethereum execution payload, or payload attributes, and the message version.
validate_withdrawals_presence
Validates the presence of the withdrawals field according to the payload timestamp. After Shanghai, withdrawals field must be Some. Before Shanghai, withdrawals field must be None;