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

fix: handle eject operators correctly for post try-catch #402

Merged

Conversation

stevennevins
Copy link
Collaborator

Changes:

  • ejectOperator in SlashingRegistryCoordinator now only uses _forceDeregisterOperator, allowing AllocationManager to handle callbacks for deregistration

  • RegistryCoordinator now handles M2 and non-M2 quorums separately:

  • M2 quorums use _deregisterOperator

  • Non-M2 quorums use _forceDeregisterOperator

  • Added bitmap intersection support to filter quorum types properly

This change improves the ejection flow by ensuring proper deregistration handling through the AllocationManager while maintaining special handling for M2 quorums on ejection

Copy link
Collaborator

Choose a reason for hiding this comment

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

_deregisterOperator should have the _forceDeregister and shouldForceDeregister input removed and only be called in the callback function

I think the following functions have _deregisterOperator calls and need to be updated with _forceDeregister.

  • _registerOperatorWithChurn
  • _updateStakesAndDeregisterLoiterers (this can be cleaned up a bit and renamed)

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Ahh good call. Will update for those as well

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

We can probably remove the loiterers concept now since there isn't a risk of the registration status being out sync?

And we can combine churn with ejection on the implementation side

Copy link
Collaborator

Choose a reason for hiding this comment

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

Yup no more loiterers :)

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Updated @8sunyuan

@stevennevins stevennevins changed the base branch from test/slashing-release to feat/avs-identifier-src February 18, 2025 20:30
@stevennevins stevennevins merged commit 1c0ccfb into feat/avs-identifier-src Feb 18, 2025
4 of 5 checks passed
@stevennevins stevennevins deleted the fix/try-catch-ejecto-operators-fix branch February 18, 2025 21:24
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.

2 participants