# Consensus Clients Hive Integration Hive PR https://github.com/ethereum/hive/pull/569 ## Versions used Lighthouse/v2.3.2-rc.0-d5e2d98 teku/v22.6.1+29-gb2bc943/linux-x86_64/-eclipseadoptium-openjdk64bitservervm-java-17 Prysm/v2.1.3-rc.4/c9a366c36ae2b77cc9207e09f03d9e749a44801b Nimbus/v22.6.1-9eb1a3-stateofus Lodestar v0.40.0-dev.0b4c4bf39a, commit=0b4c4bf39a6b54f0bdaaef924e67788c35d10d6e ## Current test results per client | | Lighthouse | Teku | Prysm | Nimbus* | Lodestar | |-|---|---|---|---|---| |Test RPC Error|✅|✅|❌|❌| | |Invalid Transition Payload|✅|✅|✅|✅| | |Invalid Payload BlockHash|✅|✅|✅|✅| | |Invalid Header PrevRandao|✅|✅|✅|✅| | |Invalid Payload Timestamp|✅|✅|✅|✅| | |Invalid Terminal Block Payload/Lower TTD|✅|✅|✅*|✅| | |Invalid Terminal Block Payload/Higher TTD|✅|✅|✅|✅| | |Syncing with Invalid Chain|✅|❌|❌|❌| | |BaseFee Encoding Check|✅|✅|✅|✅| | |Equal Timestamp Terminal Transition Block|❌|✅|✅|✅| | |TTD Before Bellatrix|✅|✅|✅|❌| | |Invalid Quantity Fields|❌|❌|✅|❌| | ## ❌ Failing test cases details ### Lighthouse - Equal Timestamp Terminal Transition Block: Lighthouse attempts to produce a block with the same timestamp as the last Proof of Work block. https://github.com/sigp/lighthouse/issues/3316 - Invalid Quantity Fields: https://github.com/sigp/lighthouse/issues/3314 ### Teku - Syncing with Invalid Chain: Teku ignores `latestValidHash` on `engine_newPayloadV1` response and head is set to beacon block containing payload `INV_P - 1` instead of the payload referenced in `latestValidHash`. - Invalid Quantity Fields: https://github.com/ConsenSys/teku/issues/5899 ### Prysm - Test RPC Error: Requires `/eth/v2/debug/beacon/states/`, endpoint always returns error 404 - *Invalid Terminal Block Payload/Lower TTD: Requires `SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY` to be set in config.yaml since `PRESET_BASE: mainnet` sets the value to 0. - Syncing with Invalid Chain: Prysm ignores `latestValidHash` on `engine_newPayloadV1` response and head is set to beacon block containing payload `INV_P - 1` instead of the payload referenced in `latestValidHash`. - Non Breaking: Altair+Bellatrix on Epoch 0 produces error, therefore the forks are set to epochs 1 and 2 respectively, which lengthens tests runtime. ### Nimbus - *Requires https://github.com/protolambda/zrnt/pull/38 - Test RPC Error: Health is below the required .95 - Syncing with Invalid Chain: Nimbus behavior is to go back and try to provide the "missing" payloads to the EL using `newPayload`. `P2`, which returns the spoofed response `SYNCING`, results in nimbus going back to `newPayload(P1)`, which is not spoofed hence `VALID`, then nimbus re-attempts `P2`, which is again spoofed with `SYNCING`, and results in an infinite loop. - Non Breaking: Altair+Bellatrix on Epoch 0 produces error, therefore the forks are set to epochs 1 and 2 respectively, which lengthens tests runtime. - Invalid Quantity Fields: https://github.com/status-im/nimbus-eth2/issues/3844 - TTD Before Bellatrix: https://github.com/status-im/nimbus-eth2/issues/3845 ### Lodestar - https://github.com/ChainSafe/lodestar/issues/4243 (?) == Need to double check.