feat(test-specs): add extra eip-7708 test coverage#2062
Merged
spencer-tb merged 5 commits intoJan 23, 2026
Merged
Conversation
7884a30 to
0457741
Compare
This was referenced Jan 22, 2026
spencer-tb
commented
Jan 22, 2026
|
|
||
|
|
||
| @pytest.mark.valid_at_transition_to("Amsterdam") | ||
| def test_transfer_log_fork_transition( |
Contributor
Author
There was a problem hiding this comment.
I should add selfdestruct logs here too.
0457741 to
fca2300
Compare
fca2300 to
6ad08f9
Compare
eedf23b to
26616d9
Compare
8af6e58 to
bf2361b
Compare
26616d9 to
40ad1de
Compare
marioevz
approved these changes
Jan 23, 2026
Member
marioevz
left a comment
There was a problem hiding this comment.
LGTM. I left a comment of a single test that we need to implement eventually.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## eips/amsterdam/eip-7708 #2062 +/- ##
===========================================================
- Coverage 86.14% 83.97% -2.18%
===========================================================
Files 599 642 +43
Lines 39491 42265 +2774
Branches 3782 4064 +282
===========================================================
+ Hits 34021 35493 +1472
- Misses 4848 6055 +1207
- Partials 622 717 +95
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
github-actions Bot
pushed a commit
that referenced
this pull request
Jan 23, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
github-actions Bot
pushed a commit
that referenced
this pull request
Jan 26, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
marioevz
added a commit
that referenced
this pull request
Jan 29, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
fselmo
pushed a commit
that referenced
this pull request
Feb 3, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
spencer-tb
added a commit
that referenced
this pull request
Feb 11, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
fselmo
pushed a commit
to fselmo/execution-specs
that referenced
this pull request
Feb 12, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
fselmo
pushed a commit
that referenced
this pull request
Feb 12, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
fselmo
pushed a commit
to fselmo/execution-specs
that referenced
this pull request
Feb 13, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
fselmo
pushed a commit
that referenced
this pull request
Feb 13, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
fselmo
pushed a commit
that referenced
this pull request
Feb 13, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
gurukamath
pushed a commit
that referenced
this pull request
Feb 24, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
gurukamath
pushed a commit
that referenced
this pull request
Feb 24, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
github-actions Bot
pushed a commit
that referenced
this pull request
Feb 27, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
spencer-tb
added a commit
to spencer-tb/execution-specs
that referenced
this pull request
Mar 3, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
spencer-tb
added a commit
to spencer-tb/execution-specs
that referenced
this pull request
Mar 6, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
spencer-tb
added a commit
to spencer-tb/execution-specs
that referenced
this pull request
Mar 10, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
fselmo
pushed a commit
to fselmo/execution-specs
that referenced
this pull request
Mar 10, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
fselmo
pushed a commit
to fselmo/execution-specs
that referenced
this pull request
Mar 13, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
felix314159
pushed a commit
that referenced
this pull request
Mar 13, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
fselmo
pushed a commit
to fselmo/execution-specs
that referenced
this pull request
Mar 17, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
fselmo
pushed a commit
to fselmo/execution-specs
that referenced
this pull request
Mar 18, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
marioevz
added a commit
that referenced
this pull request
Mar 24, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
marioevz
added a commit
that referenced
this pull request
Apr 8, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
github-actions Bot
pushed a commit
that referenced
this pull request
Apr 10, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
spencer-tb
added a commit
to spencer-tb/execution-specs
that referenced
this pull request
Apr 20, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
Carsons-Eels
added a commit
to Carsons-Eels/execution-specs
that referenced
this pull request
Apr 27, 2026
* feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com>
marioevz
added a commit
that referenced
this pull request
May 13, 2026
…2844) * feat(spec-specs): Add transfer log for all `CALL*` and `SELFDESTRUCT` fix(spec-specs): correct CR issues, fix formatting fix(spec-specs): inline `execute_code()` to `process_message()` chore(spec-specs): backport changes fix(spec-specs): trim out whitespace in topic hash to match tests feat(spec-specs): add selfdestruct event topic and logging function feat(spec-specs): selfdestruct to self emits selfdestruct event feat(spec-specs): define call success constant feat(spec-specs): emit selfdestruct finalization log for remaining balance * fix(spec-specs): emit account closure logs in lexicographical order * feat(test-tests): add eip-7708 eth transfer log tests test(test-tests): add selfdestruct topic and use empty account test(test-tests): add nested calls log ordering test feat(test-tests): add selfdestruct finalization test fix(test-tests): use spaces in event signature to match spec * fix(spec-specs): Refactor topic strings to match EIP * fix(spec-tests): formatting fixes so static checks pass * fix(spec-specs): Move account closure log emission before priority fee charges (#2059) * fix(spec-specs): Move account closure log emission before priority fee charges * fix(spec-specs): formatting and spelling tweaks * fix(spec-specs): remove duplicate WriteInStaticContext check * refactor(spec-specs): align memory expansion with other opcodes * fix(testing/test): Fix unit test expectation * refactor(spec-specs): move post-mining coinbase balance calculation --------- Co-authored-by: Mario Vega <marioevz@gmail.com> * feat(test-specs): add extra eip-7708 test coverage (#2062) * feat(test-specs): add/refactor tests, add mainnet marked, checklist, coverage check * feat(test-specs): add fork transition test for selfdestruct logs * fix: tests * chore(test-specs): fix fork transition tests * test(test-specs): add code deposit oog test case --------- Co-authored-by: carsons-eels <carson@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com> * feat(spec,test): EIP-7708 spec updates for self as target (#2086) * fix(spec,text): Updates to EIP-7708 spec for bal-devnet-2 - fix(spec,test): EIP-7708 emit selfdestruct logs only in same tx - fix(spec,test): EIP-7708, only emit on transfers to other accounts - Add more tests that match these edge cases * feat(test): tests for finalization selfdest + bal transfer in lexicographic order * fix: changes from comments on PR #2086 * add more variants to test_selfdestruct_same_tx_via_call * fix: docstring * refactor: improvements from comments on PR #2086 * Update test to use dynamic addresses --------- Co-authored-by: Mario Vega <marioevz@gmail.com> * feat(test): extend EIP-7708 tests from cases in tracker (#1875) (#2106) - Add CREATE2 support via with_all_create_opcodes marker - Add tests for SELFDESTRUCT to coinbase - revealed a change needed since the last update was made to the EIP that should be included in the currect refspec (miner fees paid before finalization LOG2). * fix(test): Use new ``pre_alloc_mutable`` marker for eip7708 test (#2199) * fix(test): Update test to account for recent Initcode updates * 🧹 chore: Remove duplicate test (#2210) Co-authored-by: raxhvl <raxhvl@users.noreply.github.com> * ♻️ refactor(tests): Rename EIP 7708 selfdestruct log to burn (#2211) * ♻️ refactor: Rename selfdestruct log to burn * 🥢 nit: * chore(tests): fix stale selfdestruct references and rename to burn --------- Co-authored-by: raxhvl <raxhvl@users.noreply.github.com> Co-authored-by: spencer-tb <spencer.tb@ethereum.org> * fix(specs): Merge issues * fix(tests): Merge issues * refactor(test-forks): Add EIP-7708 * refactor(tests): Condition EIP-7708 tests to EIP inclusion * feat(tests): EIP-7708 - finalization burn log ordering + coinbase fee no-log (#2717) * feat(tests): EIP-7708 - multi-account finalization burn log ordering Adds a dedicated test that proves finalization burn logs are emitted in lexicographical address order when multiple accounts are marked for deletion in the same transaction. Parametrized over N in {2, 5}. N accounts are created and SELFDESTRUCT'd in the same tx, then funded via payer contracts called in REVERSE sorted address order with distinct nonzero amounts. Each destroyed account ends with a unique nonzero balance at finalization, so ordering by address vs. by call order is always distinguishable. Addresses issue #2691. * feat(tests): EIP-7708 - coinbase priority fee must not emit transfer log Adds a dedicated test proving the coinbase priority fee payment does not produce a Transfer log. A contract CALLs the coinbase address with nonzero value while the tx pays a nonzero priority fee to that same coinbase. Only the CALL-with-value must produce a Transfer log; the priority fee credit happens outside the EVM as a protocol-level balance change. An implementation that hooks every balance addition (instead of only CALL / SELFDESTRUCT / tx-level value transfers) would emit an extra Transfer log for the fee and fail the exact-log assertion. Addresses issue #2692. * feat(tests): add single account multi transfer test * fix(tests): minor nit --------- Co-authored-by: marioevz <marioevz@gmail.com> * fix(tests): rename GAS_CODE_DEPOSIT_PER_BYTE to CODE_DEPOSIT_PER_BYTE Align EIP-7708 selfdestruct finalization test with the gas constant rename on forks/amsterdam. * fix(tests): EIP-7708 + 8037 cross-EIP fixes * feat(tests): Add EIP-7708 checks to 6780 tests (#2743) * feat(tests): Add EIP-7708 checks to 6780 tests * fix: add another call and properly accumulate so that burn logs are validated * fix(tests): Review fixes --------- Co-authored-by: carsons-eels <carson@ethereum.org> * feat(tests): cover EIP-7708 CREATE log rollback on outer revert (#2785) * feat(tests): cover EIP-7708 CREATE log rollback on outer revert Mirror `test_inner_call_succeeds_outer_reverts_no_log` for the bal-devnet-5 update that brings CREATE/CREATE2 under EIP-7708. A factory CREATEs a child with value (the deployment succeeds and a `factory -> created` log is emitted in the child frame) and then REVERTs; the receipt must record no logs because the outer revert discards the factory's frame along with every log it produced. * feat(tests): Review comments --------- Co-authored-by: marioevz <marioevz@gmail.com> * fix(specs-spec, tests): CR comment fixes * Apply suggestion from @marioevz --------- Co-authored-by: spencer-tb <spencer.tb@ethereum.org> Co-authored-by: Mario Vega <marioevz@gmail.com> Co-authored-by: spencer <spencer.taylor-brown@ethereum.org> Co-authored-by: felipe <fselmo2@gmail.com> Co-authored-by: raxhvl <raxhvl@users.noreply.github.com> Co-authored-by: raxhvl <10168946+raxhvl@users.noreply.github.com> Co-authored-by: danceratopz <danceratopz@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🗒️ Description
Extra test cases for EIP-7708 including a general refactor. Adds all the cases here asked for here: #1875 (comment), including many others.
eip_testing_checklist_template.mdhas been covered and ticked off viaeip_checklist_not_applicable.txt.eip_checklist_external_coverage.txtfor more information.🔗 Related Issues or PRs
Requires #2064 for docs to build as added EIP checklist and coverage items.
✅ Checklist
toxchecks to avoid unnecessary CI fails, see also Code Standards and Enabling Pre-commit Checks:uvx tox -e statictype(scope):.mkdocs servelocally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.Cute Animal Picture