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

feat: enforce and track AVS to register metadata #1025

Open
wants to merge 2 commits into
base: slashing-magnitudes-fixes
Choose a base branch
from

Conversation

bowenli86
Copy link
Member

@bowenli86 bowenli86 commented Jan 14, 2025

this pr illustrates what changes are needed in protocol

once confirmed, pr will be polished and tests will be updated/added.

afterwards, we will either run the migration ourselves to populate the var in existing AVSDirectory should be done separately, or ask avs to resubmit their metadata

@bowenli86 bowenli86 changed the title feat: enforce adn track AVS to register metadata feat: enforce and track AVS to register metadata Jan 14, 2025
@@ -43,6 +43,10 @@ abstract contract AllocationManagerStorage is IAllocationManager {
/// Note: if set to 0, defaults to the AVS's address
mapping(address avs => IAVSRegistrar) internal _avsRegistrar;

/// @dev Lists the AVSs who has registered metadata and claimed itself as an AVS
/// @notice bool is not used and if always true if the avs has registered metadata
mapping(address avs => bool) internal _avsRegisteredMetadata;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This would cause storage issues with our existing AllocationManager on preprod and testnet. This added mapping should be defined below _operatorSets

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same in AVSD

@@ -39,6 +39,10 @@ abstract contract AVSDirectoryStorage is IAVSDirectory {
/// @dev This storage will be deprecated once M2-based deregistration is removed.
mapping(address avs => mapping(address operator => OperatorAVSRegistrationStatus)) public avsOperatorStatus;

/// @dev Lists the AVSs who has registered metadata and claimed itself as an AVS
/// @notice bool is not used and if always true if the avs has registered metadata
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to be added after operatorSaltIsSpend, otherwise the storage is overwritten

@@ -43,6 +43,10 @@ abstract contract AllocationManagerStorage is IAllocationManager {
/// Note: if set to 0, defaults to the AVS's address
mapping(address avs => IAVSRegistrar) internal _avsRegistrar;

/// @dev Lists the AVSs who has registered metadata and claimed itself as an AVS
/// @notice bool is not used and if always true if the avs has registered metadata
mapping(address avs => bool) internal _avsRegisteredMetadata;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same in AVSD

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

Successfully merging this pull request may close these issues.

3 participants