Skip to content

Commit 9518c05

Browse files
committed
wip
1 parent 400c447 commit 9518c05

File tree

1 file changed

+26
-6
lines changed

1 file changed

+26
-6
lines changed

src/ethereum_test_types/transaction_types.py

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -727,15 +727,35 @@ def get_rlp_fields(self) -> List[str]:
727727
if len(cell_proofs) > 0:
728728
cell_proofs = ["cell_proofs"]
729729

730+
# GETH FUSAKA_DEVNET_0 EXPECTS:
731+
# type blobTxWithBlobs struct {
732+
# BlobTx *BlobTx
733+
# Blobs []kzg4844.Blob
734+
# Commitments []kzg4844.Commitment
735+
# Proofs []kzg4844.Proof
736+
# }
737+
738+
# type versionedBlobTxWithBlobs struct {
739+
# BlobTx *BlobTx
740+
# Version byte
741+
# Blobs []kzg4844.Blob
742+
# Commitments []kzg4844.Commitment
743+
# Proofs []kzg4844.Proof
744+
# }
745+
730746
return [ # structure explained in https://eips.ethereum.org/EIPS/eip-7594#Networking
731-
"tx", # tx_payload_body
732-
*wrapper, # wrapper_version, which is always 1 for osaka (was non-existing before)
733-
"blobs", # Blob.data
734-
"commitments",
735-
*proofs, # only included < osaka
736-
*cell_proofs, # only included >= osaka
747+
"tx", # tx_payload_body, in geth: BlobTx, https://github.com/ethereum/go-ethereum/blob/e17f97a8242c55b6fba66317d3720b9728a12f78/core/types/tx_blob.go#L122
748+
*wrapper, # wrapper_version, which is always 1 for osaka (was non-existing before), in geth: Version # noqa: E501
749+
"blobs", # Blob.data, in geth: Blobs
750+
"commitments", # in geth: Commitments
751+
*proofs, # only included < osaka, in geth: Proofs
752+
*cell_proofs, # only included >=osaka, in geth this does not exist(always uses Proofs)
737753
]
738754

755+
# PROBLEM:
756+
# osaka without wrapper: too few elements for types.blobTxWithBlobs
757+
# osaka with rapper: it tries to deserialize into blobTxWithBlobs instead of versionedBlobTxWithBlobs, so it complains about unexpectedtly seeing wrapper instead of blob data # noqa: E501
758+
739759
def get_rlp_prefix(self) -> bytes:
740760
"""
741761
Return the transaction type as bytes to be appended at the beginning of the

0 commit comments

Comments
 (0)