feat: enforce additive-only storage layout changes for PDPVerifier#263
Open
Chaitu-Tatipamula wants to merge 4 commits intoFilOzone:mainfrom
Open
feat: enforce additive-only storage layout changes for PDPVerifier#263Chaitu-Tatipamula wants to merge 4 commits intoFilOzone:mainfrom
Chaitu-Tatipamula wants to merge 4 commits intoFilOzone:mainfrom
Conversation
cd8e935 to
4f8bf8c
Compare
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.
Summary
Implements storage slot safety for the PDPVerifier upgradable contract
by enforcing that storage layout changes are strictly additive,
preventing storage collision bugs during contract upgrades.
Resolves #258
What's Checked
Changes
PDPVerifierLayout.solfrom contract source usingforge inspectchanges only add new slots at the end; flags destructive changes like
removed slots, moved slots, or inserted slots
(must be committed and kept in sync)
gen,check-layout,clean-gentargets formanaging storage layout
verify storage layout on all pushes/PRs
existing CI
Usage