From 9b5e944a6902fb5c307e7ed3e2df4f7f7262e4c9 Mon Sep 17 00:00:00 2001 From: Kaloyan Tanev Date: Wed, 3 Dec 2025 12:32:55 -0300 Subject: [PATCH 1/3] Bump grandine to 2.0.1 --- README.md | 15 +++++++++++++++ compose-cl.yml | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index cc01c411..d71f9644 100644 --- a/README.md +++ b/README.md @@ -155,6 +155,21 @@ rm -rf ./data/lighthouse ## Switch validator client +> [!WARNING] +> There are incompatibilities on requesting beacon committee selections between validator clients. The different clients are being divised in the following two groups: +> +> 1. Validator client requests beacon committee selections of the current slot, beginning of each slot: +> 1. Lodestar +> 2. Lighthouse +> 3. Nimbus +> 2. Validator client requests beacon committee selections of the current epoch, beginning of each epoch: +> 1. Teku +> 2. Prysm +> +> Not having threshold nodes using validator client from one or the other group will result in beacon committee aggregation duties failing. +> +> **Lodestar validator client has a behaviour to skip the next slot if it fails attestation or aggregation. This means that clusters should not run Lodestar if they cannot reach threshold of validator clients from group 1, otherwise their attestation success will drop by half.** + 1. Stop the existing validator client container. ```sh diff --git a/compose-cl.yml b/compose-cl.yml index a8d3e92b..0c515b5a 100644 --- a/compose-cl.yml +++ b/compose-cl.yml @@ -12,7 +12,7 @@ services: cl-grandine: profiles: [cl-grandine] - image: sifrai/grandine:${GRANDINE_VERSION:-2.0.0} + image: sifrai/grandine:${GRANDINE_VERSION:-2.0.1} restart: unless-stopped labels: - "promtail-monitored=${CL_GRANDINE_PROMTAIL_MONITORED:-true}" From 8019c0b7124b539f18866d23126ea41e133a06aa Mon Sep 17 00:00:00 2001 From: Kaloyan Tanev Date: Wed, 3 Dec 2025 16:51:46 -0300 Subject: [PATCH 2/3] Update README language for VC incompatibilities --- README.md | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index d71f9644..90264867 100644 --- a/README.md +++ b/README.md @@ -155,20 +155,16 @@ rm -rf ./data/lighthouse ## Switch validator client -> [!WARNING] -> There are incompatibilities on requesting beacon committee selections between validator clients. The different clients are being divised in the following two groups: +> [!NOTE] +> There is currently an incompatibility between validator clients that may cause attestation aggregation duties to fail. Aggregation duties are not economically rewarded nor punished for their completion. > -> 1. Validator client requests beacon committee selections of the current slot, beginning of each slot: -> 1. Lodestar -> 2. Lighthouse -> 3. Nimbus -> 2. Validator client requests beacon committee selections of the current epoch, beginning of each epoch: -> 1. Teku -> 2. Prysm +> To ensure aggregations succeed; have at least threshold of nodes in the cluster running one of Lodestar, Lighthouse, and Nimbus, or alternatively; have a threshold of nodes in the cluster running one of Teku and Prysm. This incompatibility will be remediated in upcoming client releases. > -> Not having threshold nodes using validator client from one or the other group will result in beacon committee aggregation duties failing. + +> [!WARNING] +> **Lodestar's validator** client's default behaviour is to skip the next slot if it fails an attestation or aggregation. This can impact your cluster's performance, particularly if you have more than the fault tolerance threshold of your cluster running Lodestar's validator client, and many validators running in the cluster. > -> **Lodestar validator client has a behaviour to skip the next slot if it fails attestation or aggregation. This means that clusters should not run Lodestar if they cannot reach threshold of validator clients from group 1, otherwise their attestation success will drop by half.** +> If your cluster is not successfully aggregating, you should ideally swap to a set of compatible validator clients listed above, along with ensuring your clients have the appropriate [`--distributed` flag](../troubleshooting/client_configurations.md) set to enable distributed aggregation mode. Failing that, you can add the flag `--slotSkip false` to your `lodestar vc` process, (requires lodestar to be version `v1.37.0` and newer) or set `VC_LODESTAR_DISABLE_SLOT_SKIP=true` in your `.env` file if you're using (L)[CDVN](https://github.com/ObolNetwork/charon-distributed-validator-node). This disables the slot skipping feature. 1. Stop the existing validator client container. From e057c09153e285fb2ee1ac1853062b841b5b9dde Mon Sep 17 00:00:00 2001 From: Kaloyan Tanev Date: Wed, 3 Dec 2025 16:57:22 -0300 Subject: [PATCH 3/3] Remove lodestar warning --- README.md | 5 ----- 1 file changed, 5 deletions(-) diff --git a/README.md b/README.md index 90264867..2566b15a 100644 --- a/README.md +++ b/README.md @@ -161,11 +161,6 @@ rm -rf ./data/lighthouse > To ensure aggregations succeed; have at least threshold of nodes in the cluster running one of Lodestar, Lighthouse, and Nimbus, or alternatively; have a threshold of nodes in the cluster running one of Teku and Prysm. This incompatibility will be remediated in upcoming client releases. > -> [!WARNING] -> **Lodestar's validator** client's default behaviour is to skip the next slot if it fails an attestation or aggregation. This can impact your cluster's performance, particularly if you have more than the fault tolerance threshold of your cluster running Lodestar's validator client, and many validators running in the cluster. -> -> If your cluster is not successfully aggregating, you should ideally swap to a set of compatible validator clients listed above, along with ensuring your clients have the appropriate [`--distributed` flag](../troubleshooting/client_configurations.md) set to enable distributed aggregation mode. Failing that, you can add the flag `--slotSkip false` to your `lodestar vc` process, (requires lodestar to be version `v1.37.0` and newer) or set `VC_LODESTAR_DISABLE_SLOT_SKIP=true` in your `.env` file if you're using (L)[CDVN](https://github.com/ObolNetwork/charon-distributed-validator-node). This disables the slot skipping feature. - 1. Stop the existing validator client container. ```sh