Add EIP: State Tiering by Periods#11788
Open
weiihann wants to merge 9 commits into
Open
Conversation
Collaborator
File
|
|
The commit 24d7ec1 (as a parent of 096ad99) contains errors. |
Tiered write-gas schedule layered on EIP-8188's last_written_block metadata. Derives a coarse period from the stored block number and prices account and storage writes into Active and Inactive tiers, charging more to mutate long-write-inactive state. The period anchor is the fork activation block derived from FORK_TIMESTAMP.
Make the inactive write cost an additive surcharge on top of normal gas and rename the constants to INACTIVE_ACCOUNT_WRITE_SURCHARGE and INACTIVE_STORAGE_WRITE_SURCHARGE (dropping the ACTIVE_* constants). Specify the surcharge gas semantics (non-refundable, consumed on revert, with the EIP-8188 field update reverting alongside state). Add a charge-before-load gas-availability rule so inactive-tier loads cannot be forced uncompensated, and recast the EIP-8037 relation as surcharge calibration.
24d7ec1 to
d047de4
Compare
abcoathup
reviewed
Jun 11, 2026
abcoathup
reviewed
Jun 11, 2026
Co-authored-by: Andrew B Coathup <28278242+abcoathup@users.noreply.github.com>
Co-authored-by: Andrew B Coathup <28278242+abcoathup@users.noreply.github.com>
Mirror the EIP-8296 refactor: replace the per-operation surcharge table with a per-Inactive-leaf rule layered on EIP-8037/EIP-8038, charging each existing Inactive leaf an operation writes (including the storageRoot cascade and both sides of a value transfer) while newly-created leaves stay exempt. Make the surcharge regular-gas, subject to the EIP-7825 cap and consumed on revert, add an enumerated per-operation table, fold in the tier-evaluated-before-write rule, and clarify the creation exemption. requires now 2929, 2930, 8037, 8038, 8188.
weiihann
added a commit
to weiihann/xatu-analysis
that referenced
this pull request
Jun 18, 2026
- reference EIP-8188 directly via ethereum/EIPs#11788; drop the draft-evolution (before/after) scope note - remove the single-anchor 'snapshot' framing and the cluster-coverage anchor justification; state the measurement block plainly - drop the '2-set additive view vs 3-way partition' methodology aside - name the data source: Xatu (ethPandaOps) canonical_execution_* tables - remove the internal handover pointer and the Verification Summary (a correction log against the report's earlier draft) - light humanizer pass: drop 'remarkably' intensifiers, vary the repeated 'Three readings:' list scaffold Pure prose edits — no numbers/tables/charts changed (verified: identical table-row multiset, 25 charts retained, pandoc clean).
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.
Need to merge #11784 first