- Make required changes to primitive data structures on alloy
- All new EIP data structures/constants/helpers etc. go into the
alloy-eips
crate at first. - New transaction types go into
alloy-consensus
- If there are changes to existing data structures, such as
Header
orBlock
, apply them to the types inalloy-consensus
(e.g. newrequest_hashes
field in Prague)
- If there are changes to the engine API (e.g. a new
engine_newPayloadVx
andengine_getPayloadVx
pair) add the new types to thealloy-rpc-types-engine
crate. - If there are new parameters to the
engine_newPayloadVx
endpoint, add them to theExecutionPayloadSidecar
container type. This types contains all additional parameters that are required to convert anExecutionPayload
to an EL block.
- Add new endpoints to the
EngineApi
trait and implement endpoints. - Update the
ExecutionPayload
+ExecutionPayloadSidecar
toBlock
conversion if there are any additional parameters. - Update version specific validation checks in the
EngineValidator
trait.