-
Notifications
You must be signed in to change notification settings - Fork 53
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
AVS-215, AVS-259: Add Subgraphs #233
Conversation
* cleanup * added optimistic test * fixed broken test
* cleanup * added optimistic test * fixed broken test * chore: forge init * forge install: forge-std v1.8.2 * addeed integration test
@samlaf not sure Im too happy with how complicated the integration seem to be to setup. Need to import both eigenlayer-middleware and eigenlayer-middleware-offchain as submodules (I re-imported eigenlayer-middleware because for some reason foundry wont allow me to import it from the contracts/lib folder). I tried to recreate eigenda/inabox's integration test with running exec-commands from the golang test but some of it doesn't seem to be working. Need to figure out if there's a better way to do all of this, probably try to get a docker container with eveyrthing already setup on it or something like that. Any ideas? |
wdym by import it? eigensdk use eigenlayer-contracts repo via eigenlayer-middleware submodule (eigensdk->middleware->core), so should be the same here? Maybe just the path needs to be added in remappings.txt (or foundry.toml remapping section)?
Why are you trying to run eigenda's inabox test? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Generally LGTM. added some syntactic comments
services/operatorsinfo/integration_test_deployment/.github/workflows/test.yml
Outdated
Show resolved
Hide resolved
services/operatorsinfo/integration_test_deployment/src/Counter.sol
Outdated
Show resolved
Hide resolved
*bn254.G1Affine | ||
} | ||
GraphQLQuerier interface { | ||
Query(ctx context.Context, q any, variables map[string]any) error |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
are the any
s necessary? If so, can you add comments as to how they are being used and what they are supposed to be. Hard to understand what this is used if we throwaway all type information.
return execCmd("anvil", []string{"--host", "0.0.0.0"}, []string{}) | ||
} | ||
|
||
func startGraph() (int, error) { | ||
return execCmd("docker", []string{"compose", "up"}, []string{}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
start anvil and graph using testcontainers like we do everywhere else. This way don't need to rely on other programs being installed on the user's computer, and also version will always be the same so won't have non-deterministic tests.
} | ||
fmt.Println("Anvil chain started with PID", pid) | ||
|
||
curr_path, err := os.Getwd() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fix lint error by checking err != nil
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. think we can delete the submodules though?
.gitmodules
Outdated
[submodule "services/operatorsinfo/integration_test_deployment/lib/forge-std"] | ||
path = services/operatorsinfo/integration_test_deployment/lib/forge-std | ||
url = https://github.com/foundry-rs/forge-std | ||
[submodule "services/operatorsinfo/integration_test_deployment/lib/eigenlayer-middleware"] | ||
path = services/operatorsinfo/integration_test_deployment/lib/eigenlayer-middleware | ||
url = https://github.com/Layr-Labs/eigenlayer-middleware | ||
[submodule "services/operatorsinfo/integration_test_deployment/lib/eigenlayer-middleware-offchain"] | ||
path = services/operatorsinfo/integration_test_deployment/lib/eigenlayer-middleware-offchain | ||
url = https://github.com/Layr-Labs/eigenlayer-middleware-offchain |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
are these still needed? don't think they are used anymore after the last commit that deleted a bunch of stuff?
Fixes # .
What Changed?
Adding subgraphs to the services in eigensdk, to replace in memroy data structures.
Reviewer Checklist