You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
While researching patterns of access management, the solutions team identified a pattern of a contract that can dynamically create roles for functions in contracts, this means:
There is a role manager contract
contract Something is AccessManaged, ... can be also upgraded
A subsequent upgrade can include a method that clashes with any of the previous EVM interfaces
This would mean that a user with a role to access namely a function like foo() may clash with an upgrade to another function bar()
This case will allow a user intended to use only foo() to also use bar()
The text was updated successfully, but these errors were encountered:
ericglau
changed the title
Method clashing ID across versions
Check for method ID clashes across versions
Feb 2, 2023
This check is different from the current checks because it makes an assertion about the history of a proxy. All current checks are purely assertions about a single contract's source code.
This is a significant difference that has design implications and efficiency implications.
Description
While researching patterns of access management, the solutions team identified a pattern of a contract that can dynamically create roles for functions in contracts, this means:
contract Something is AccessManaged, ...
can be also upgradedfoo()
may clash with an upgrade to another functionbar()
foo()
to also usebar()
The text was updated successfully, but these errors were encountered: