The empty recipient filed is expected for the INSendMessageIntent that Siri sends as a reply. Instead, the intent has conversationIdentifier field populated that identifies the specific conversation the reply has to go to: https://developer.apple.com/documentation/sirikit/insendmessageintent/2866586-conversationidentifier
The idea behind this is that recipient list may be ambiguous which would be a problem for reply use case, hence the use of the conversation ID. The source of this ID is the actual message that Siri read - INMessage.conversationIdentifier that was provided by the app as part of INSearchForMessagesIntent response: https://developer.apple.com/documentation/sirikit/inmessage/2867834-conversationidentifier
So your app should make sure to resolve conversationIdentifier parameter on the INSendMessageIntent and populate the intent object with the correct recipient list or a group name (“speakableGroupName”) for the conversation identified by the conversationIdentifier