Um dos meus usuários relatou que, em vários casos, a última linha ou duas de suas postagens, feitas por e-mail, estão faltando.
As postagens estavam bem abaixo do limite de caracteres e não há palavras censuradas, alguma ideia do que pode estar causando isso? Não vejo nada nos logs sobre isso.
Analisando os dados brutos na tabela incoming_emails, o texto que falta definitivamente estava no e-mail como recebido, apenas não foi para a postagem formatada. Esta é uma resposta, não o início de um novo tópico.
Eu já vi isso acontecer quando o analisador não conseguia decidir se as últimas linhas eram uma assinatura. Essas respostas tinham alguma tipografia estranha como essa? ---?
Acho que descobri o que aconteceu, mas não necessariamente como evitar que aconteça novamente.
Eu capturo o e-mail de entrada antes de salvá-lo na caixa de correio que é lida pelo contêiner do Discourse, e tenho a mensagem original em questão deste usuário.
O e-mail tem um segmento text/plain e um segmento text/html.
A linha final (e ausente) da mensagem dele está no segmento text/plain, mas não no segmento text/html, e é este último que o Discourse usa para criar uma postagem.
Portanto, o que quer que esteja acontecendo para fazer com que as linhas sejam descartadas, parece que está acontecendo antes que esses e-mails cheguem ao meu servidor.