-
-
Notifications
You must be signed in to change notification settings - Fork 427
Open
Labels
meta-bugIssues that identify a bug and require a fix.Issues that identify a bug and require a fix.
Description
Describe the bug
The voluntaryExitRemoteSigner.test.ts failed post-deneb, see https://github.com/ChainSafe/lodestar/actions/runs/20592632915/job/59140702960?pr=8721
5929: 2025-12-30 09:02:04.255+0000 | pool-2-thread-1 | INFO | Eth2Runner | Keys loaded from local keystores: [2], with error count: [0]
5929: 2025-12-30 09:02:04.257+0000 | pool-2-thread-1 | INFO | DefaultArtifactSignerProvider | Total signers (keys) currently loaded in memory: 2
5929: 2025-12-30 09:02:04.329+0000 | main | INFO | Runner | Web3Signer has started with TLS disabled, and ready to handle signing requests on 0.0.0.0:9090
5929: 2025-12-30 09:02:15.579+0000 | vert.x-eventloop-thread-0 | ERROR | LogErrorHandler | Failed request: http://127.0.0.1:9090/api/v1/eth2/sign/0xa99a76ed7796f7be22d5b7e85deeb7c5677e88e511e0b337618f8c4eb61349b4bf2d153f649f7b53359fe8b94a38e44c
java.lang.IllegalArgumentException: Signing root 0x5fd2f37414733e3c2f6b32bbb4f89ade39ef5fffcf945548cd64a4d342d05753 must match signing computed signing root 0x383568b603ab44ebf3b4dc704478c92df13d2b2eb2895be26af4363e054c5152 from data
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:445)
at tech.pegasys.web3signer.core.service.http.handlers.signing.eth2.Eth2SignForIdentifierHandler.handle(Eth2SignForIdentifierHandler.java:102)
at tech.pegasys.web3signer.core.service.http.handlers.signing.eth2.Eth2SignForIdentifierHandler.handle(Eth2SignForIdentifierHandler.java:56)
at io.vertx.ext.web.impl.BlockingHandlerDecorator.lambda$handle$0(BlockingHandlerDecorator.java:48)
at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$5(ContextImpl.java:205)
at io.vertx.core.impl.ContextInternal.dispatch(ContextInternal.java:270)
at io.vertx.core.impl.ContextImpl$1.execute(ContextImpl.java:221)
at io.vertx.core.impl.WorkerTask.run(WorkerTask.java:56)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Unknown Source)
5929: 2025-12-30 09:02:15.580+0000 | vert.x-eventloop-thread-0 | ERROR | RoutingContext | Unhandled exception in router
java.lang.IllegalArgumentException: Signing root 0x5fd2f37414733e3c2f6b32bbb4f89ade39ef5fffcf945548cd64a4d342d05753 must match signing computed signing root 0x383568b603ab44ebf3b4dc704478c92df13d2b2eb2895be26af4363e054c5152 from data
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:445)
at tech.pegasys.web3signer.core.service.http.handlers.signing.eth2.Eth2SignForIdentifierHandler.handle(Eth2SignForIdentifierHandler.java:102)
at tech.pegasys.web3signer.core.service.http.handlers.signing.eth2.Eth2SignForIdentifierHandler.handle(Eth2SignForIdentifierHandler.java:56)
at io.vertx.ext.web.impl.BlockingHandlerDecorator.lambda$handle$0(BlockingHandlerDecorator.java:48)
at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$5(ContextImpl.java:205)
at io.vertx.core.impl.ContextInternal.dispatch(ContextInternal.java:270)
at io.vertx.core.impl.ContextImpl$1.execute(ContextImpl.java:221)
at io.vertx.core.impl.WorkerTask.run(WorkerTask.java:56)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Unknown Source)
5929: 2025-12-30 09:02:15.586+0000 | vert.x-eventloop-thread-0 | ERROR | LogErrorHandler | Failed request: http://127.0.0.1:9090/api/v1/eth2/sign/0xb89bebc699769726a318c8e9971bd3171297c61aea4a6578a7a4f94b547dcba5bac16a89108b6b6a1fe3695d1a874a0b
java.lang.IllegalArgumentException: Signing root 0xdcae64f2abb39389c22cd9a519a1384f2709656a2cc2385655eab28b138c359e must match signing computed signing root 0x370331c1a155e53b1863023122ceb61cb76c498a2c75710bc6256612d9d6836b from data
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:445)
at tech.pegasys.web3signer.core.service.http.handlers.signing.eth2.Eth2SignForIdentifierHandler.handle(Eth2SignForIdentifierHandler.java:102)
at tech.pegasys.web3signer.core.service.http.handlers.signing.eth2.Eth2SignForIdentifierHandler.handle(Eth2SignForIdentifierHandler.java:56)
at io.vertx.ext.web.impl.BlockingHandlerDecorator.lambda$handle$0(BlockingHandlerDecorator.java:48)
at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$5(ContextImpl.java:205)
at io.vertx.core.impl.ContextInternal.dispatch(ContextInternal.java:270)
at io.vertx.core.impl.ContextImpl$1.execute(ContextImpl.java:221)
at io.vertx.core.impl.WorkerTask.run(WorkerTask.java:56)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Unknown Source)
5929: 2025-12-30 09:02:15.586+0000 | vert.x-eventloop-thread-0 | ERROR | RoutingContext | Unhandled exception in router
java.lang.IllegalArgumentException: Signing root 0xdcae64f2abb39389c22cd9a519a1384f2709656a2cc2385655eab28b138c359e must match signing computed signing root 0x370331c1a155e53b1863023122ceb61cb76c498a2c75710bc6256612d9d6836b from data
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:445)
at tech.pegasys.web3signer.core.service.http.handlers.signing.eth2.Eth2SignForIdentifierHandler.handle(Eth2SignForIdentifierHandler.java:102)
at tech.pegasys.web3signer.core.service.http.handlers.signing.eth2.Eth2SignForIdentifierHandler.handle(Eth2SignForIdentifierHandler.java:56)
at io.vertx.ext.web.impl.BlockingHandlerDecorator.lambda$handle$0(BlockingHandlerDecorator.java:48)
at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$5(ContextImpl.java:205)
at io.vertx.core.impl.ContextInternal.dispatch(ContextInternal.java:270)
at io.vertx.core.impl.ContextImpl$1.execute(ContextImpl.java:221)
at io.vertx.core.impl.WorkerTask.run(WorkerTask.java:56)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Unknown Source)
stdout | packages/cli/test/e2e/voluntaryExitRemoteSigner.test.ts > voluntaryExit using remote signer
Attempting to stop container
there is a discrepancy between and web3 signer. It seems lodestar computed voluntary exit signing root correctly but we send wrong fork_info to web3 signer
| const forkInfo = config.getForkInfo(signingSlot); |
post-deneb, we use capella fork to compute domain for voluntary_exit message, but we send the fork of slot instead, which could be electra or fulu
cc @nflaig if he can confirm that
Expected behavior
no error
Steps to reproduce
No response
Additional context
No response
Operating system
Linux
Lodestar version or commit hash
v1.38.0
Metadata
Metadata
Assignees
Labels
meta-bugIssues that identify a bug and require a fix.Issues that identify a bug and require a fix.