Skip to content

EIP-7748 tests#1312

Closed
jsign wants to merge 24 commits intoethereum:verkle/mainfrom
jsign:jsign-eip7748
Closed

EIP-7748 tests#1312
jsign wants to merge 24 commits intoethereum:verkle/mainfrom
jsign:jsign-eip7748

Conversation

@jsign
Copy link
Copy Markdown
Collaborator

@jsign jsign commented Mar 13, 2025

This PR is a work in progress for EIP-7748 (Tree conversion) tests.

uv run fill --from Shanghai --until EIP6800Transition -v -m blockchain_test -n 8 --evm-bin=<evm path> --evm-dump-dir=out ./tests/verkle/eip7748

Use this branch for filling.

jsign added 12 commits February 25, 2025 13:54
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Comment on lines -992 to +998
Address(0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE): {
"nonce": 1,
"code": (
"0x60203611603157600143035f35116029575f35612000014311602957612000"
"5f3506545f5260205ff35b5f5f5260205ff35b5f5ffd00"
),
}
# Address(0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE): {
# "nonce": 1,
# "code": (
# "0x60203611603157600143035f35116029575f35612000014311602957612000"
# "5f3506545f5260205ff35b5f5f5260205ff35b5f5ffd00"
# ),
# }
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@spencer-tb, this is a quick hack to disable the automatic inclusion of the EIP-2935 system contract. Ideally, I want this feature to avoid having this extra address in the genesis state since we want full predictability on which accounts exist for the tree conversion tests.

I think once we talked about an extra flag to do this more cleanly.

@@ -57,7 +57,7 @@ def test_balance(blockchain_test: BlockchainTestFiller, fork: Fork, target, warm
],
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From this point forward, the changes are mostly the new tests so nothing framework related.

REFERENCE_SPEC_GIT_PATH = "EIPS/eip-7748.md"
REFERENCE_SPEC_VERSION = "TODO"

stride = 7
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Until the testing framework supports the stride as a filling option, I'm hardcoding it. This value allows me to create most of the test cases I want anyway.

See corresponding comment in go-ethereum

jsign added 6 commits March 14, 2025 11:25
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
…artial conversion

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
jsign added 2 commits March 18, 2025 10:15
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
jsign added 4 commits March 18, 2025 11:33
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
… one converting accounts

Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
transition_tool_output.alloc = previous_alloc
# TODO: hack for now, replace with actual witness output once available from t8n
if transition_tool_output.result.verkle_conversion_ended:
if transition_tool_output.result.verkle_conversion_ended and False:
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs a proper fix!

@spencer-tb spencer-tb added feature:stateless scope:tests Scope: Changes EL client test cases in `./tests` labels Apr 14, 2025
@spencer-tb spencer-tb added the type:feat type: Feature label Apr 14, 2025
@spencer-tb
Copy link
Copy Markdown
Collaborator

Closing for the Weld (moving EEST to EELS)!

Feel free to create a PR for this in EELS in the future!

@spencer-tb spencer-tb closed this Oct 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature:stateless scope:tests Scope: Changes EL client test cases in `./tests` type:feat type: Feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants