I’ve been hit by this issue when using the API. In my plugin, I need an exact topic count, so I’m forced to load each tag in order to count the visible topics. It seems to work right now, but it’s a waste of bandwidth and I’m afraid one day I will hit a Discourse rate limit for API calls.
Uma inconveniência adicional causada por este problema é que os administradores recebem uma mensagem de erro incorreta ao tentar excluir uma tag vazia.
Ok, estou refazendo minha resposta, pois tenho quase certeza de que descobri tudo o que está acontecendo aqui
Como @ninjapenguin menciona, se você tiver uma tag e excluir todos os tópicos que possuem essa tag aplicada, a tag continuará listada na página de tags e a contagem permanecerá inalterada. Acredito que isso esteja acontecendo porque os tópicos ainda tecnicamente existem e continuam a reter a tag.
@syl, se você navegar para a lista de tópicos da tag tete, conforme mostrado em sua captura de tela, e depois adicionar
?status=deleted
o final da URL, deverá ver dois tópicos excluídos listados com a tag tete.
A mensagem de informação na sua segunda captura de tela corresponde ao número de tópicos excluídos que possuem a tag aplicada.
Sinto que provavelmente não deveríamos levar em consideração tópicos excluídos ao contar/listar tags, mas isso pode não ser uma mudança super trivial, dada a forma como tudo é armazenado no banco de dados. O que você acha, @codinghorror?
Em um fórum padrão, acredito que os tópicos excluídos expliquem a maioria das discrepâncias entre a contagem de tópicos exibida na lista de tags e o número real de tópicos que um usuário pode ver dentro de cada tag. Corrigir isso já seria um grande avanço. Mas note que discrepâncias também ocorrem quando um usuário não administrador visualiza uma tag que contém tópicos privados.
Isso eu não consigo reproduzir. Se eu tiver uma tag que foi usada apenas em uma MP ou em um tópico de uma categoria restrita, um usuário sem acesso a esses tópicos não verá a tag incluída na lista de tags.
O único comportamento indesejado que estou observando no momento é o que mencionei em relação a tópicos excluídos.
Existem duas colunas na tabela tags que podem influenciar a contagem de tags: topic_count e pm_topic_count. Essas contagens são incrementadas/decrementadas ao aplicar/remover tags. Usuários não administradores veem apenas o valor de topic_count.
Não há nada que ajuste a contagem em tempo real com base no acesso individual do usuário a tópicos.
Com base no que observei, não temos um bug, apenas uma limitação baseada na implementação atual. Acredito que tudo o que foi discutido aqui se enquadra na categoria de “solicitação de recurso” e pode ser resumido como:
Tornar as contagens de tags na página de tags dinâmicas, para que reflitam o que o usuário verá ao navegar para a lista de tópicos da tag.
Muito obrigado, @tshenry. Isso parece muito bom e pode explicar por que tive o problema com muito mais frequência na minha instância de desenvolvimento (talvez o trabalho de consistência não esteja sendo executado). Vou verificar isso.
P.S.: no momento, a tag documentation aqui no Meta tem uma contagem de 5, mas só consigo ver 4 tópicos. Vou verificar novamente em 12 horas