Acabei de notar que, quando havia respostas não lidas, a contagem de respostas não lidas no tópico do anúncio do Postgres 12 estava em 303 (círculo azul com 303). Ao abrir o tópico, com a última resposta, a contagem mudou para 1.
O tópico está configurado para excluir automaticamente respostas com mais de 5 dias; atualmente, há apenas uma resposta nesse tópico.
Parece que a contagem de respostas em tópicos com poda automática e mensagens não lidas não está sendo calculada corretamente?
Isso ocorreu no celular; não pensei em verificar no desktop antes de abrir o tópico e marcá-lo como lido.
Sim, este é um problema conhecido que existe no Discourse desde praticamente a versão 1. Muitas exclusões seguidas de uma resposta sempre causarão essa incompatibilidade, até a próxima visita ao tópico. Não importa se as exclusões são automáticas ou manuais.
Para fechar o ciclo aqui, uma correção nesse ponto seria extremamente e massivamente desagradável. O backend nunca conta especificamente quantas postagens você tem não lidas; ele se baseia na diferença entre o highest_post_number e o último post_number que você visitou nos tópicos.
Se eu tivesse que colocar um número nisso, se meu único trabalho fosse corrigir esse bug, levaria vários meses para fazê-lo, e eu teria que criar um armazenamento de dados personalizado para colocar isso em funcionamento. Executar uma consulta count(*) em cada tópico não lido está fora de questão.