arch: implement CheckConnectivity and update IEigenDAClient for enhanced resilience#2431
Open
rdin777 wants to merge 3 commits intoLayr-Labs:masterfrom
Open
arch: implement CheckConnectivity and update IEigenDAClient for enhanced resilience#2431rdin777 wants to merge 3 commits intoLayr-Labs:masterfrom
rdin777 wants to merge 3 commits intoLayr-Labs:masterfrom
Conversation
|
ты бы хоть посмотрел что ты коммитишь |
Author
|
"Hi @maintainer! I've implemented the CheckConnectivity guard for IEigenDAClient to resolve the internal TODO and enhance network resilience. Ready for review and CI checks when you have a moment.". |
Author
|
My apologies for the oversight with the inline comment. I've cleaned up the code and updated the branch. The core logic for the connectivity guard remains as described in the summary. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview This PR introduces a proactive Connectivity Guard to the EigenDAClient to address potential silent failures during initialization. By verifying network reachability to both Ethereum RPC and the EigenDA Disperser, we ensure that operators are alerted to configuration issues before starting active data dispersal.
Key Changes:
Interface Evolution: Added CheckConnectivity(ctx context.Context) error to the IEigenDAClient interface to standardize health checks across the SDK.
Proactive Validation: Implemented active handshake logic in CheckConnectivity that verifies the gRPC connection to the Disperser and the JSON-RPC connection to the Ethereum node.
Technical Debt: Partially addresses the TODO regarding client encapsulation and resilience mentioned in api/clients/client.go.
Architectural Motivation: Drawing from experience with Base and Optimism, this pattern prevents "blind" registrations where an operator appears active on-chain but cannot fulfill requests due to networking issues.
Security: All contributions are made from a 2FA-secured account.