From ad35b67e2bc3d6932a7af8667549adef9040a6d9 Mon Sep 17 00:00:00 2001 From: Anton Sviridov Date: Wed, 15 Apr 2026 12:12:35 +0100 Subject: [PATCH] Propagate CallId to errors about payload --- .../scala/jsonrpclib/internals/MessageDispatcher.scala | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/core/src/main/scala/jsonrpclib/internals/MessageDispatcher.scala b/modules/core/src/main/scala/jsonrpclib/internals/MessageDispatcher.scala index fdda32b..d66dfdc 100644 --- a/modules/core/src/main/scala/jsonrpclib/internals/MessageDispatcher.scala +++ b/modules/core/src/main/scala/jsonrpclib/internals/MessageDispatcher.scala @@ -101,18 +101,18 @@ private[jsonrpclib] abstract class MessageDispatcher[F[_]](implicit F: Monadic[F val message = "Missing payload" val pError = ProtocolError.InvalidRequest(message) sendProtocolError(pError) - case (InputMessage.RequestMessage(_, _, None), _: RequestResponseEndpoint[F, in, err, out]) => + case (InputMessage.RequestMessage(_, callId, None), _: RequestResponseEndpoint[F, in, err, out]) => val message = "Missing payload" val pError = ProtocolError.InvalidRequest(message) - sendProtocolError(pError) + sendProtocolError(callId, pError) case (InputMessage.NotificationMessage(_, _), ep: RequestResponseEndpoint[F, in, err, out]) => val message = s"This ${ep.method} endpoint cannot process notifications, request is missing callId" val pError = ProtocolError.InvalidRequest(message) sendProtocolError(pError) - case (InputMessage.RequestMessage(_, _, _), ep: NotificationEndpoint[F, in]) => + case (InputMessage.RequestMessage(_, callId, _), ep: NotificationEndpoint[F, in]) => val message = s"This ${ep.method} endpoint expects notifications and cannot return a result" val pError = ProtocolError.InvalidRequest(message) - sendProtocolError(pError) + sendProtocolError(callId, pError) } }