From eabda9c7a2c8c538843443128d187e02f49b61b9 Mon Sep 17 00:00:00 2001 From: Julian Arce <52429267+JuArce@users.noreply.github.com> Date: Fri, 17 Jan 2025 17:12:47 -0300 Subject: [PATCH 1/2] hotfix(CI): update devnet aligned_service_manager in sdk and update docker config files (#1752) --- Makefile | 7 +++++++ batcher/aligned-sdk/src/sdk.rs | 2 +- config-files/config-aggregator-docker.yaml | 7 +++++++ config-files/config-batcher-docker.yaml | 1 - ...ocker.yaml => config-operator-docker.yaml} | 19 +------------------ docker-compose.yaml | 8 ++++---- docker/operator.Dockerfile | 2 +- 7 files changed, 21 insertions(+), 25 deletions(-) rename config-files/{config-docker.yaml => config-operator-docker.yaml} (74%) diff --git a/Makefile b/Makefile index cc4200281..fe08cb244 100644 --- a/Makefile +++ b/Makefile @@ -1046,11 +1046,18 @@ docker_verify_proof_submission_success: verification=$$(aligned verify-proof-onchain \ --aligned-verification-data $${proof} \ --rpc_url $$(echo $(DOCKER_RPC_URL)) 2>&1); \ + cat $${proof%.cbor}.json; \ + echo "$$verification"; \ if echo "$$verification" | grep -q not; then \ echo "ERROR: Proof verification failed for $${proof}"; \ exit 1; \ elif echo "$$verification" | grep -q verified; then \ echo "Proof verification succeeded for $${proof}"; \ + else \ + echo "WARNING: Unexpected verification result for $${proof}"; \ + echo "Output:"; \ + echo "$$verification"; \ + exit 1; \ fi; \ echo "---------------------------------------------------------------------------------------------------"; \ done; \ diff --git a/batcher/aligned-sdk/src/sdk.rs b/batcher/aligned-sdk/src/sdk.rs index f57b2aed5..e933ab6f8 100644 --- a/batcher/aligned-sdk/src/sdk.rs +++ b/batcher/aligned-sdk/src/sdk.rs @@ -284,7 +284,7 @@ pub fn get_payment_service_address(network: Network) -> ethers::types::H160 { pub fn get_aligned_service_manager_address(network: Network) -> ethers::types::H160 { match network { - Network::Devnet => H160::from_str("0x1613beB3B2C4f22Ee086B2b38C1476A3cE7f78E8").unwrap(), + Network::Devnet => H160::from_str("0x851356ae760d987E095750cCeb3bC6014560891C").unwrap(), Network::Holesky => H160::from_str("0x58F280BeBE9B34c9939C3C39e0890C81f163B623").unwrap(), Network::HoleskyStage => { H160::from_str("0x9C5231FC88059C086Ea95712d105A2026048c39B").unwrap() diff --git a/config-files/config-aggregator-docker.yaml b/config-files/config-aggregator-docker.yaml index 6185fedf1..a8a4dcd30 100644 --- a/config-files/config-aggregator-docker.yaml +++ b/config-files/config-aggregator-docker.yaml @@ -31,3 +31,10 @@ aggregator: garbage_collector_tasks_age: 20 #The age of tasks that will be removed by the GC, in blocks. Suggested value for prod: '216000' (30 days) garbage_collector_tasks_interval: 10 #The interval of queried blocks to get an old batch. Suggested value for prod: '900' (3 hours) bls_service_task_timeout: 168h # The timeout of bls aggregation service tasks. Suggested value for prod '168h' (7 days) + gas_base_bump_percentage: 25 # Percentage to overestimate gas price when sending a task + gas_bump_incremental_percentage: 20 # An extra percentage to overestimate in each bump of respond to task. This is additive between tries + # Gas used formula = est_gas_by_node * (gas_base_bump_percentage + gas_bum_incremental_percentage * i) / 100, where i is the iteration number. + gas_bump_percentage_limit: 150 # The max percentage to bump the gas price. + # The Gas formula is percentage (gas_base_bump_percentage + gas_bump_incremental_percentage * i) / 100) is checked against this value + # If it is higher, it will default to `gas_bump_percentage_limit` + time_to_wait_before_bump: 72s # The time to wait for the receipt when responding to task. Suggested value 72 seconds (6 blocks) diff --git a/config-files/config-batcher-docker.yaml b/config-files/config-batcher-docker.yaml index 05818bd7f..0db1e4966 100644 --- a/config-files/config-batcher-docker.yaml +++ b/config-files/config-batcher-docker.yaml @@ -24,7 +24,6 @@ batcher: max_proof_size: 67108864 # 64 MiB max_batch_byte_size: 268435456 # 256 MiB max_batch_proof_qty: 3000 # 3000 proofs in a batch - eth_ws_reconnects: 99999999999999 pre_verification_is_enabled: true metrics_port: 9093 telemetry_ip_port_address: localhost:4001 diff --git a/config-files/config-docker.yaml b/config-files/config-operator-docker.yaml similarity index 74% rename from config-files/config-docker.yaml rename to config-files/config-operator-docker.yaml index 18c7be892..57aed7f15 100644 --- a/config-files/config-docker.yaml +++ b/config-files/config-operator-docker.yaml @@ -19,23 +19,6 @@ bls: private_key_store_path: "config-files/anvil.bls.key.json" private_key_store_password: "" -## Batcher configurations -batcher: - block_interval: 3 - batch_size_interval: 10 - max_proof_size: 67108864 # 64 MiB - max_batch_byte_size: 268435456 # 256 MiB - eth_ws_reconnects: 99999999999999 - pre_verification_is_enabled: true - -## Aggregator Configurations -aggregator: - server_ip_port_address: localhost:8090 - bls_public_key_compendium_address: 0x322813Fd9A801c5507c9de605d63CEA4f2CE6c44 - avs_service_manager_address: 0xc3e53F4d16Ae77Db1c982e75a937B9f60FE63690 - enable_metrics: true - metrics_ip_port_address: localhost:9091 - ## Operator Configurations operator: aggregator_rpc_server_ip_port_address: aggregator:8090 @@ -47,7 +30,7 @@ operator: metadata_url: "https://yetanotherco.github.io/operator_metadata/metadata.json" enable_metrics: true metrics_ip_port_address: localhost:9092 - max_batch_byte_size: 268435456 # 256 MiB + max_batch_size: 268435456 # 256 MiB last_processed_batch_filepath: config-files/operator.last_processed_batch.json # Operators variables needed for register it in EigenLayer el_delegation_manager_address: "0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9" diff --git a/docker-compose.yaml b/docker-compose.yaml index a91ab2b61..24237a856 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -40,7 +40,7 @@ services: register-operator-eigenlayer: image: ghcr.io/yetanotherco/aligned_layer/eigenlayer-cli:latest - command: ["sh", "-c", "echo '' | eigenlayer operator register config-files/config-docker.yaml"] + command: ["sh", "-c", "echo '' | eigenlayer operator register config-files/config-operator-docker.yaml"] build: context: . dockerfile: docker/eigenlayer-cli.Dockerfile @@ -58,7 +58,7 @@ services: operator-deposit-into-mock-strategy: image: ghcr.io/yetanotherco/aligned_layer/operator:latest - command: ["aligned-layer-operator", "deposit-into-strategy", "--config", "./config-files/config-docker.yaml", "--strategy-address", "0xc5a5C42992dECbae36851359345FE25997F5C42d", "--amount", "100000000000000000"] + command: ["aligned-layer-operator", "deposit-into-strategy", "--config", "./config-files/config-operator-docker.yaml", "--strategy-address", "0xc5a5C42992dECbae36851359345FE25997F5C42d", "--amount", "100000000000000000"] build: context: . dockerfile: docker/operator.Dockerfile @@ -76,7 +76,7 @@ services: operator-register-with-aligned-layer: image: ghcr.io/yetanotherco/aligned_layer/operator:latest - command: ["aligned-layer-operator", "register", "--config", "./config-files/config-docker.yaml"] + command: ["aligned-layer-operator", "register", "--config", "./config-files/config-operator-docker.yaml"] build: context: . dockerfile: docker/operator.Dockerfile @@ -85,7 +85,7 @@ services: operator: image: ghcr.io/yetanotherco/aligned_layer/operator:latest - command: ["aligned-layer-operator", "start", "--config", "./config-files/config-docker.yaml"] + command: ["aligned-layer-operator", "start", "--config", "./config-files/config-operator-docker.yaml"] build: context: . dockerfile: docker/operator.Dockerfile diff --git a/docker/operator.Dockerfile b/docker/operator.Dockerfile index aa3d7c9ce..1c0afe9b1 100644 --- a/docker/operator.Dockerfile +++ b/docker/operator.Dockerfile @@ -29,4 +29,4 @@ COPY contracts ./contracts ENV LD_LIBRARY_PATH=/aligned_layer/operator/risc_zero/lib/ -CMD ["aligned-layer-operator", "start", "--config", "./config-files/config-docker.yaml"] +CMD ["aligned-layer-operator", "start", "--config", "./config-files/config-operator-docker.yaml"] From c0422f5156f744611c7ee0e2e04105d2097e14af Mon Sep 17 00:00:00 2001 From: Julian Arce <52429267+JuArce@users.noreply.github.com> Date: Mon, 20 Jan 2025 14:54:13 -0300 Subject: [PATCH 2/2] hotfix(operator): assign SubscribeToNewTasksV3() correctly (#1748) Co-authored-by: Urix <43704209+uri-99@users.noreply.github.com> --- operator/pkg/operator.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/operator/pkg/operator.go b/operator/pkg/operator.go index d4c36355c..af4c5d42a 100644 --- a/operator/pkg/operator.go +++ b/operator/pkg/operator.go @@ -239,7 +239,7 @@ func (o *Operator) Start(ctx context.Context) error { } case err := <-subV3: o.Logger.Infof("Error in websocket subscription", "err", err) - subV2, err = o.SubscribeToNewTasksV3() + subV3, err = o.SubscribeToNewTasksV3() if err != nil { o.Logger.Fatal("Could not subscribe to new tasks V3") }