src/node/wrapper.ts/ChildProcess/handshake
class ChildProcess:  public async handshake(): Promise<DefaultedArgs> {
    this.logger.debug("initiating handshake")
    this.send({ type: "handshake" })
    const message = await onMessage<ParentMessage, ParentHandshakeMessage>(
      process,
      (message): message is ParentHandshakeMessage => {
        return message.type === "handshake"
      },
      this.logger,
    )
    this.logger.debug(
      "got message",
      field("message", {
        type: message.type,
        args: redactArgs(message.args),
      }),
    )
    return message.args
  }