@@ -42,11 +42,10 @@ type payloadAttributesMarshaling struct {
4242 Timestamp hexutil.Uint64
4343}
4444
45- // BlobsBundle holds the blobs of an execution payload, to be retrieved separately
45+ // BlobsBundle holds the blobs of an execution payload
4646type BlobsBundle struct {
47- BlockHash common.Hash `json:"blockHash" gencodec:"required"`
48- KZGs []types.KZGCommitment `json:"kzgs" gencodec:"required"`
49- Blobs []types.Blob `json:"blobs" gencodec:"required"`
47+ KZGs []types.KZGCommitment `json:"kzgs" gencodec:"required"`
48+ Blobs []types.Blob `json:"blobs" gencodec:"required"`
5049}
5150
5251//go:generate go run github.com/fjl/gencodec -type ExecutableData -field-override executableDataMarshaling -out gen_ed.go
@@ -87,8 +86,9 @@ type executableDataMarshaling struct {
8786//go:generate go run github.com/fjl/gencodec -type ExecutionPayloadEnvelope -field-override executionPayloadEnvelopeMarshaling -out gen_epe.go
8887
8988type ExecutionPayloadEnvelope struct {
90- ExecutionPayload * ExecutableData `json:"executionPayload" gencodec:"required"`
91- BlockValue * big.Int `json:"blockValue" gencodec:"required"`
89+ ExecutionPayload * ExecutableData `json:"executionPayload" gencodec:"required"`
90+ BlockValue * big.Int `json:"blockValue" gencodec:"required"`
91+ BlobsBundle * BlobsBundle `json:"blobsBundle" gencodec:"omitempty"`
9292}
9393
9494// JSON type overrides for ExecutionPayloadEnvelope.
@@ -248,18 +248,16 @@ type ExecutionPayloadBodyV1 struct {
248248}
249249
250250func BlockToBlobData (block * types.Block ) (* BlobsBundle , error ) {
251- blockHash := block .Hash ()
252251 blobsBundle := & BlobsBundle {
253- BlockHash : blockHash ,
254- Blobs : []types.Blob {},
255- KZGs : []types.KZGCommitment {},
252+ Blobs : []types.Blob {},
253+ KZGs : []types.KZGCommitment {},
256254 }
257255 for i , tx := range block .Transactions () {
258256 if tx .Type () == types .BlobTxType {
259257 versionedHashes , kzgs , blobs , proofs := tx .BlobWrapData ()
260258 if len (versionedHashes ) != len (kzgs ) || len (versionedHashes ) != len (blobs ) || len (blobs ) != len (proofs ) {
261259 return nil , fmt .Errorf ("tx %d in block %s has inconsistent blobs (%d) / kzgs (%d)" +
262- " / versioned hashes (%d) / proofs (%d)" , i , blockHash , len (blobs ), len (kzgs ), len (versionedHashes ), len (proofs ))
260+ " / versioned hashes (%d) / proofs (%d)" , i , block . Hash () , len (blobs ), len (kzgs ), len (versionedHashes ), len (proofs ))
263261 }
264262
265263 blobsBundle .Blobs = append (blobsBundle .Blobs , blobs ... )
0 commit comments