Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Codebase: For upgradeable contracts ensure upgradability of each contract in inheritance tree #453

Open
rapidddenis opened this issue Jun 26, 2024 · 4 comments

Comments

@rapidddenis
Copy link
Collaborator

E.g. Component is upgradeable, while its parent RegistryLinked is not

@doerfli doerfli added this to the GIF v3 Audit Ready milestone Jun 27, 2024
@doerfli
Copy link
Contributor

doerfli commented Jul 19, 2024

please provide the list of impacted contracts

@matthiaszimmermann
Copy link
Contributor

RegistryLinked is so limited in scope it felt like overkill to implement it via contract specific struct storage

@rapidddenis
Copy link
Collaborator Author

There is a storage conflict:
UpgradableProxyWithAdmin is not stateless -> keeps initializationData at slot 0
RegistryLinked is part of UpgradableProxyWithAdmin implementation and keeps registry at slot 0

So either proxy is stateless OR implementation is using namespace storage OR proxy state is also utilizes namespace storage

@rapidddenis
Copy link
Collaborator Author

#649

@doerfli doerfli removed this from the GIF v3 Audit Ready milestone Dec 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants