public Mono<Void> upsertPrivateConversationReadDate(
            @NotNull Long ownerId,
            @NotNull Long targetId,
            @Nullable @PastOrPresent Date readDate) {
        try {
            Validator.notNull(ownerId, "ownerId");
            Validator.notNull(targetId, "targetId");
        } catch (ResponseException e) {
            return Mono.error(e);
        }
        return upsertPrivateConversationsReadDate(
                Set.of(new PrivateConversation.Key(ownerId, targetId)),
                readDate);
    }
@param groupService is lazy because conversationService -> groupService ->
                    conversationService
turms-service/src/main/java/im/turms/service/domain/conversation/service/ConversationService.java