Repository navigation
feat(spec-specs, tests): implement EIP-3298 refund removal - #53
Draft
spencer-tb wants to merge 1 commit into
Draft
spencer-tb wants to merge 1 commit into
spencer-tb wants to merge 1 commit into
Conversation
Co-authored-by: marioevz <marioevz@gmail.com>
This branch has not been deployed
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.
Status
Documentation/reference prototype for EIP-3298. This draft is not proposed for merge in its current form.
The protocol change is implemented in place in Amsterdam and activated for fixtures through the testing-side Bogota pseudo-fork, targeting Hegota. This work continues @marioevz's original execution-specs implementation, and the final commit preserves him as co-author. No substrate exception or dedicated Bogota spec module is used.
Description
Implements EIP-3298: removes the storage-clearing refund and EIP-3529 quotient cap while retaining the EIP-8038 net-metered
STORAGE_WRITEreversal and applying it in full.REFUND_STORAGE_CLEAR, its grant and restoration reversal, and the one-fifth settlement cap; retains refund-counter journaling, child-frame accumulation, the write-reversal rule, and pre-refund EIP-7778 block accounting.EIP3298, models the zero clear-refund schedule and uncapped settlement through fork APIs, and activates the change through the undeployedBogotatesting pseudo-fork resolved against Amsterdam's spec module.valid_before("EIP3298"); no tests or vectors are deleted.Required EIP follow-up
None identified. The pinned EIP revision explicitly specifies the self-bounded write-reversal invariant, refund-counter journaling across reverts, post-refund calldata-floor ordering, and pre-refund EIP-7778 block accounting used by this prototype.
Known limitations
43e3cd1; later upstream Amsterdam changes are intentionally not included in this isolated review.References
548ebfb1): https://github.com/ethereum/EIPs/blob/548ebfb1e987ddb8dc260324e02ee9ec643525a1/EIPS/eip-3298.md