Cálculo de topic_count incorreto

Percebi um bug onde tópicos que estão apenas em uma categoria pai não são contados como parte do topic_count da API.

O fórum em questão, onde sou usuário, está rodando o Discourse v2.4.0.beta11, então imagino que isso possa já ter sido corrigido em versões mais recentes. Mas, caso não tenha sido, aqui está o relatório.

O fórum tem uma estrutura semelhante à seguinte, com as categorias B e C sendo filhas de A:

    Forum
    ├── ...
    ├── Categoria A (n=0)
    │   ├── Categoria B (n=92)
    │   └── Categoria C (n=6)
    └── ...

Escrevi o valor do topic_count (de /c/xx/show.json) conforme a API após cada categoria. Mas, na verdade, há um único tópico na categoria A, embora o topic_count diga zero. Consequentemente, o topics_all_time (de categories.json) para a categoria A diz 98, enquanto navegar pela topic_list (de /c/xx.json) também revela 99.

Posso também compartilhar detalhes sobre o fórum em questão via MP, caso isso ajude.

Seria mais útil se você verificasse se o bug ainda existe — a versão 2.4 está bastante desatualizada e possui várias vulnerabilidades de segurança.

1 curtida

Então, pesquisei em um fórum com uma versão mais recente (2.7.0.beta8) e posso confirmar que o problema ainda existe. Mas o “tópico estranho” é aquele que existe por padrão em cada categoria, o “Sobre a … categoria”. Portanto, pode ser mesmo intencional, já que tópicos adicionais criados manualmente na categoria pai são contados.

1 curtida