docs: public Flux<ServiceMessage> invokeBidirectional(
        Publisher<ServiceMessage> publisher,
        BiFunction<ServiceMessage, Class<?>, ServiceMessage> dataDecoder) {
      return Flux.from(publisher)
          .map(message -> toRequest(message, dataDecoder))
          .transform(this::invoke)
          .map(this::toResponse)
          .onErrorResume(throwable -> Flux.just(errorMapper.toMessage(throwable)));
    }