Skip to content

Suggestion: store the registryCoordinator address in the OperatorStateRetriever #154

@samlaf

Description

@samlaf

Currently every function in OperatorStateRetriever has to pass the registryCoordinator address that it is calling. The idea for this was that we could deploy a single OperatorStateRetriever to be shared by all AVSs.

Unfortunately the reality we are seeing is that most AVSs are slightly tweaking the registry contracts, which makes me fear (don't have empirical data yet) that the operatorStateRetriever wouldn't work for them, and they'd have to update it to reflect their contract changes and deploy it by themselves.

Given this, I feel like it would be easier to just have each team deploy their own OSR and store the registryCoordinator address in it. This would prevent the need to pass the registryCoordinator when passing it, but also (most importantly) make it easier for the offchain configs, which would now only need to track a single address, that of the OSR. Currently, inc-sq and other AVSs require passing both the RegistryCoordinator AND the OSR. If OSR points to RC then we would only need to pass address of OSR when starting offchain node, and we could retrieve all other contracts from that.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions