Encontrei um bug interessante e obscuro em relação à forma como as respostas a postagens em listas de discussão que são espelhadas no Discourse são arquivadas.
Tenho evidências de que respostas a uma lista de discussão podem ser incorretamente arquivadas em uma segunda lista de discussão (com um público diferente) se o e-mail inicial foi enviado para ambas as listas de discussão ao mesmo tempo.
Imagine que eu participo de duas listas de discussão, A e B, inscrito com meu endereço do Gmail. Elas têm públicos potencialmente diferentes. O servidor da lista envia uma única cópia de uma mensagem para aqueles em ambas as listas de discussão, mas a linha To: indica que a mensagem foi enviada para as listas A e B no mesmo e-mail. Este e-mail chega ao meu endereço do Gmail, que então, através de um filtro, encaminha uma cópia para listA@mydiscourse.org.uk, com o Gmail escolhendo uma das duas listas na linha To:. O Gmail está configurado para encaminhar postagens para A para listA@mydiscourse.org.uk e postagens para B para listB@mydiscourse.org.uk. O Discourse está configurado com duas categorias com esses dois endereços de e-mail de espelhamento de entrada diferentes (listA@mydiscourse.org.uk e listB@mydiscourse.org.uk).
A questão de o servidor de listas e o Gmail enviarem apenas uma cópia é separada e não é o assunto deste bug.
Depois disso, uma cópia do e-mail enviado para mim em minha conta do Gmail acaba sendo exibida na categoria associada ao endereço de entrada listA@mydiscourse.org.uk após o Gmail encaminhá-lo.
Tudo bem até agora (além do fato de que apenas um e-mail chegou do servidor de listas em primeiro lugar).
Agora, um usuário separado, que está apenas na lista de discussão B, responde a esse e-mail para o servidor da lista. O servidor da lista envia essa mensagem para todos na lista de discussão B. Isso chega ao meu endereço do Gmail com uma linha To: indicando que foi enviado para a lista B. O Gmail o encaminha para listB@mydiscourse.org.uk.
Mas então o Discourse o arquiva como se tivesse sido enviado por e-mail para listA@mydiscourse.org.uk!
Isso, portanto, revela àqueles com acesso à lista A o conteúdo de uma postagem de um membro da lista B!
Suspeito que o Discourse ignora a rota pela qual o e-mail entrou no Discourse e o arquivou com base nos sinalizadores do ID da mensagem nos cabeçalhos, contornando assim a rota de entrada.
O e-mail original, enviado para A e B, tem um único ID de mensagem dentro dele e suspeito que o arquivamento baseado apenas nesse ID de mensagem esteja ocorrendo.
Se o remetente original tivesse escrito dois e-mails separados para as listas A e B, esse problema não teria ocorrido, pois as duas mensagens teriam seus próprios IDs de mensagem.
Correção sugerida: Se uma categoria está espelhando uma lista de discussão e uma mensagem chega através do endereço de espelhamento que parece, a partir dos cabeçalhos, ser uma resposta a outra postagem que reside em outro lugar no Discourse, então uma nova postagem precisa ser criada (talvez sem um pai óbvio) na categoria esperada, em vez de a resposta acabar em uma categoria que está associada a uma lista de discussão diferente.