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

Idea: Allow ValidatorManager to be deployed as a standalone contract #682

Open
cam-schultz opened this issue Dec 12, 2024 · 0 comments
Open
Labels
enhancement New feature or request idea Consider as a possible enhancement

Comments

@cam-schultz
Copy link
Contributor

Context and scope
While our implementation uses an inheritance tree to resolve to a single deployed contract, there is demand for multiple contract designs, in which the base ValidatorManager tracks the validator set, and dispatches other logic to specialized contracts. For example, the proposed ACP-99 outlines an architecture consisting of a ValidatorManager and a SecurityModule, who hold references to each other's deployed addresses. There is an active discussion to provide a unified interface for validator managers that is agnostic to architecture.

Discussion and alternatives
This issue is to experiment with extensions to ValidatorManager that would allow it to be deployed in a standalone manner such that it dispatches specialized logic to external contracts. For example, a variant of the two-contract SecurityModule design is implemented here. That PR, however, is very much coupled with a two-contract design, so is not particularly general.

This issue should explore frameworks that allow the logic in ValidatorManager to be easily adapted to any architecture.

@cam-schultz cam-schultz added enhancement New feature or request idea Consider as a possible enhancement labels Dec 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request idea Consider as a possible enhancement
Projects
Status: Backlog 🗄️
Development

No branches or pull requests

1 participant