fix(test-client-clis): detect EELS-style OutOfGasError in GasExhaustionTraceComparator#2879
Open
leolara wants to merge 1 commit into
Open
fix(test-client-clis): detect EELS-style OutOfGasError in GasExhaustionTraceComparator#2879leolara wants to merge 1 commit into
leolara wants to merge 1 commit into
Conversation
…onTraceComparator
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## forks/amsterdam #2879 +/- ##
================================================
Coverage 87.16% 87.16%
================================================
Files 586 586
Lines 35792 35792
Branches 3364 3364
================================================
Hits 31199 31199
Misses 3943 3943
Partials 650 650
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:
|
SamWilsn
approved these changes
May 20, 2026
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
_is_out_of_gas_errorinpackages/testing/src/execution_testing/client_clis/trace_comparators.pyused a substring check ("out of gas" in error.lower()) that matches geth-style trace error strings but misses the EELS EIP-3155 emitter's convention of writing the Python exception class name ("OutOfGasError") into the traceerrorfield.Because the substring check returned
Falsefor EELS-style errors,GasExhaustionTraceComparatorsilently classified every EELS trace as having no gas-exhaustion points. With EELS as the default t8n in this repo, both sides of a comparison return empty OOG sets and the comparator reportsequivalent=Truefor trace pairs that may actually disagree on whether a frame OOG'd — the exact thing it is meant to catch.The comparator is opt-in (
TraceComparatorType.GAS_EXHAUSTION), so the bug is latent rather than active in the default fill flow, but it makes the comparator effectively inert for any opt-in caller running against EELS.Fix: also accept the bare class-name form
"OutOfGasError"(case-insensitive exact match) alongside the existing substring check, with a comment explaining why both conventions need to be recognized.Tests: added coverage under
TestGasExhaustionTraceComparator:"out of gas","Out Of Gas", and"OutOfGasError".🔗 Related Issues or PRs
N/A.
✅ Checklist
just statictype(scope):.