Hilo GMail, IMAP y Ruby

Estoy usando la biblioteca IMAP de Ruby para obtener una conversación de Gmail. La forma en que GMail enlaza las conversaciones es a través de los encabezados de mensaje "ID de mensaje" y "En respuesta". Por ejemplo:

In-Reply-To: <[email protected]>
Message-ID: <[email protected]>

No puedo averiguar cómo obtener de manera eficiente el mensaje de respuesta. La forma actual:

target = <[email protected]>
imap.search(["NOT", "DELETED"]).each do |msg_id|
  uid = imap.fetch(message_id, "ENVELOPE")[0].attr["ENVELOPE"].message_id
  if uid == target
    m = imap.fetch(msg_id, "RFC822")[0].attr["RFC822"]
  end
end

Lleva mucho tiempo hacerlo secuencialmente así, pero no puedo encontrar el conjuro correcto para buscar por el encabezado de ID de mensaje, y realmente no puedo encontrar ninguna evidencia de si esto es posible o no.

Respuestas a la pregunta(1)

Su respuesta a la pregunta