Mensagens não lidas com números azuis aparecendo em "Latest" ultimamente (quando não deveriam)?

Isso é muito novo (hoje?) aqui no Meta. Tenho alguns tópicos em “Mais recentes” que mostram um número azul de mensagens não lidas (acho que era apenas para 1 mensagem), e não entendo o motivo. Não fui mencionado, e o tópico está no modo “normal”. Não estou acompanhando nem monitorando. Acredito que sejam tópicos que eu nem mesmo abri. Acabei de verificar a seção “Não lidas” antes de clicar neles, e eles não estavam lá.
Alguém mais está com isso?

(PS: Não estou bêbado no momento)

1 curtida

É complicado depurar isso sem saber qual tópico estava causando o problema. Se você notar o problema novamente, pode tentar anotar em quais tópicos ele está ocorrendo?

Com base nas suas configurações no Discourse, você deve ver um ponto azul após o título na lista Mais recentes para tópicos criados nos últimos dias. Esses tópicos também devem estar listados na sua lista Novos tópicos. Se você vir um ícone azul com um número dentro na lista de tópicos Mais recentes, isso deve indicar que há novas postagens em um tópico que você está acompanhando ou monitorando. Esses tópicos também devem aparecer na sua lista Não lidos. Você será automaticamente definido para acompanhar um tópico se passar 4 minutos lendo-o, então possivelmente foi isso que aconteceu.

2 curtidas

Este: Could Discourse offer a StackExchange-like SSO/Federated login service? e este: WordPress comments are showing estavam exibindo a mensagem “1 não lido”. Isso foi logo antes de eu criar o tópico em que estamos agora.

Não tenho certeza do que estava acontecendo em relação ao “ponto azul”, pois não prestei muita atenção nisso.
Entendo tudo o que você disse e era realmente isso que eu tinha em mente. Tenho (bastante) certeza de que o ícone azul não deveria estar lá. Eles não foram marcados como assistidos automaticamente devido ao tempo gasto neles. Como dito, acredito que nunca os abri e, ao verificar depois, ambos estavam no status “normal”.

Na minha visita anterior ao meta hoje, acredito que havia um tópico com esse “problema”. Não me dei ao trabalho de olhar mais de perto, então não me lembro qual era, e não tenho total certeza. Mas o que foi descrito no início desta mensagem, tenho bastante confiança de que aconteceu e não deveria ter. Acredito que nunca vi isso antes de hoje. Espero que isso possa ajudar.

2 curtidas

Acabei de ver outro tópico mostrando 1 mensagem não lida (número azul), o que não deveria ter acontecido (ou talvez eu não entenda o porquê). Este aqui: Email for specific category. Isso realmente não está acontecendo com frequência, apenas de vez em quando. Parece que sempre mostra apenas 1 mensagem não lida (ainda não tenho certeza sobre isso, vou tentar acompanhar). Tentei comparar os 3 tópicos em que isso aconteceu até agora, mas não vejo nenhum padrão evidente.

Ninguém mais percebe isso?

(Ou será algo relacionado à data/hora? Parece que aconteceu novamente exatamente 1 semana depois da última vez?)

Depois de refletir sobre isso, pode ser que apareça quando se deixa o navegador aberto na página “latest” e, ao retornar, clica-se na barra azul “Ver x tópicos novos ou atualizados”. Isso só aconteceria nessa situação, para mensagens publicadas em um curto período no início da manhã de domingo!?

Não tenho certeza nenhuma (vou verificar essa teoria daqui para frente), mas faria sentido com base no que observei. Talvez não haja muitas pessoas deixando o navegador aberto na página “latest” por longos períodos (o que eu faço), o que explicaria por que isso não foi visto com muita frequência.

Se quiserem tentar reproduzir o problema, @simon, podem tentar: deixem o navegador aberto na página “latest” durante os próximos fins de semana e cliquem na barra azul para ver novas mensagens após algum tempo. Se eu tiver acertado, talvez aconteça.

Sigo com isso: onde estou agora é que parece estar ligado a manter o meta aberto no navegador na página “latest” e clicar repetidamente na barra azul para ver novas mensagens. Ponto interessante: aconteceu apenas em um tópico; entrei nele, saí usando o botão voltar e, depois disso, havia mais tópicos com esse problema (de fato, apenas um número azul “1” para cada tópico, cada vez), mas apenas clicando em “recarregar página” no navegador, eles desapareceram.

Então, isso pode acontecer quando a página não é recarregada por vários dias e é usada de forma “contínua” (a menos que o problema esteja do meu lado!?)

2 curtidas

Eu ocasionalmente recebo isso. Encontrei este tópico depois que aconteceu novamente (número de disco azul em ‘normal’ e, acredito, um tópico anteriormente não visto) e pesquisei para descobrir o que os números realmente representam.

1 curtida

Parece ser um bug (ele representa mensagens “não lidas”, mas você nem está acompanhando ou monitorando esses tópicos! Muitas vezes, você nem mesmo os acessou). Agora, acontece o mesmo comigo: é bastante “ocasional”. Seria bom descobrir um dia de onde vem e resolvê-lo.

2 curtidas

Aqui está uma postagem que marquei como favorita ontem. O círculo azul é “novo” e o cinza é “não lido”:

2 curtidas

Mas aqui está algo do meta que chama os números do disco azul de “não lidos” (o número 1 está em um disco azul):

Seus tópicos não lidos aparecem aqui.

Por padrão, os tópicos são considerados não lidos e mostrarão contagens de não lidos 1 se você:

  • Criou o tópico
  • Respondeu ao tópico
  • Leu o tópico por mais de 4 minutos

Ou se você definiu explicitamente o tópico como Acompanhado ou Vigiado por meio do controle de notificação na parte inferior de cada tópico.

Acesse suas preferências para alterar isso.

Acho que estou me desviando do assunto aqui…

Há algo mais, que parece totalmente não relacionado, mas de certa forma próximo: tenho visto nos últimos dias um grande número de mensagens não lidas em alguns tópicos que estou acompanhando (vigilando). Esses círculos azuis aparecem em tópicos que realmente estou acompanhando, ao contrário do bug descrito acima.

O número de “postagens não lidas” é muito maior que o número real de mensagens no tópico. Suspeito que talvez esse número de mensagens tenha sido EXCLUÍDO do tópico!? E as mensagens excluídas aparecem como “não lidas” quando, na verdade, já não existem mais? O último caso para mim foi este tópico: Discourse Signatures (sou informado de 92 mensagens não lidas, embora haja apenas 4 respostas nele).

Isso seria outro bug relacionado aos “círculos azuis”/“mensagens não lidas”, imagino.

1 curtida

Sim, a contagem ficará incorreta quando houver exclusões.

2 curtidas

Não valeria a pena corrigir isso um dia? Lidar com a contagem de “não lidos” quando ocorrem exclusões. Sua resposta parece sugerir que não :confused:

O funcionamento atual deixa muito óbvio que houve uma exclusão em massa e é um pouco estranho (você recebe uma notificação de que tem x posts para ler, quando já os leu e eles nem mesmo existem mais).

É uma mudança muito complicada e não podemos corrigir essa contagem sem custos extremos de desempenho.

A página inicial teria que analisar cada postagem em cada tópico que exibe para obter contagens 100% precisas. Isso é muito caro e resultaria em uma página inicial muito lenta.

5 curtidas

Fair enough.
Não sei como funciona, então me perdoe se meu raciocínio estiver errado. Na minha cabeça, eu imaginava que você poderia fazer algo no lado do servidor quando uma exclusão ocorresse: corrigir de alguma forma as contagens de todos os usuários para levar em conta as exclusões. Entendo que não faz sentido verificar a cada vez se talvez haja posts excluídos na “página inicial”, especialmente porque as exclusões são mais a exceção (novos posts são a regra).

1 curtida

As contagens são todas dinâmicas.

  1. Sabemos até qual post_number você leu.
  2. Sabemos qual é o maior post_number do tópico.
  3. Informação crítica: preferimos não quebrar hiperlinks existentes para um tópico, então nunca renumeramos os posts. Se você fizer um post após 1000 exclusões, ele será o post_number 1001.

Não armazenamos um cache no servidor para cada usuário sobre as contagens reais. Se fôssemos fazer isso, teríamos uma recalculação potencialmente muito cara sempre que um post fosse feito ou excluído. Por exemplo:

  • post 1
  • post 2 excluído
  • post 3
  • post 4 excluído
  • post 5

Você precisaria contar tudo para cada usuário na exclusão e manter esse cache sincronizado com uma implementação assim. O custo de toda essa contabilidade é muito, muito alto.

3 curtidas

Obrigado por essas explicações, @sam!

Isso não parece “tão ruim” (acho que todo mundo entende que a contagem inclui posts excluídos). Agora, estou com algumas dificuldades para entender como isso levou ao que eu vi. Por exemplo, com os últimos “92 posts não lidos” que eu recebi. Não acho que tenham sido criados e excluídos 92 novos posts entre duas das minhas visitas.

A grande pergunta é: O que acontece quando a diferença entre (número do post mais alto - número do último post lido) é NEGATIVA? O sistema não está mostrando atualmente o valor absoluto desse número negativo como posts não lidos? Se sim, é exatamente isso que precisaria ser corrigido: NÃO mostrar nenhum número negativo como mensagens não lidas.

O problema ocorreria quando o “número do post mais alto” ficasse realmente menor que “até qual número de post você leu”, porque o último ou vários dos últimos posts foram excluídos. Enquanto o último post do tópico não for excluído, não deveria haver nenhum problema, de acordo com a minha compreensão das suas explicações. No meu exemplo acima, acredito que podemos ter chegado a “número do post mais alto” = OP, porque tudo foi excluído, exceto o primeiro post do tópico.

2 curtidas

Temos proteção contra isso. Você não recebe a bolha azul… não exibimos (-55).

Por exemplo:

  • post 1
  • post 2
  • post 3   ← você leu até aqui
  • post 4
  • post 5

Então:

  • post 1
  • post 2
  • post 3   ← você leu até aqui
  • post 4
  • post 5

Nada está não lido para você, sem bolha azul.

Então:

  • post 1
  • post 2
  • post 3   ← você leu até aqui
  • post 4
  • post 5
  • post 6

Você tem 3 não lidos… na verdade, você só tem 1, mas esse é o custo da implementação atual, que não pode ser melhorada de forma trivial.

4 curtidas

@sam, eu entendo o que você está dizendo e como você está explicando (o que faz sentido e está muito claro), MAS isso não parece combinar com o que vejo acontecendo aqui no Discourse :confused:

Exemplo mais recente: Agora mesmo, foram-me mostradas 29 mensagens não lidas neste tópico: Discourse BBCode. Tenho quase certeza de que não havia NENHUMA mensagem não lida na última vez que estive aqui (não faz tanto tempo assim), e agora vejo o OP + apenas 2 mensagens de 2 horas atrás (total de mensagens no tópico = 3). Não acredito que tenham sido criadas e excluídas 27 novas mensagens desde minha última visita, ou foi isso? (essa seria uma explicação simples!). Você poderia dar uma olhada? (Se não, por que apareceu uma bolha azul com “29 não lidas”?)

Talvez isso esteja relacionado a tópicos desse tipo: “As respostas a este tópico são automaticamente excluídas após um mês”. Ou talvez esteja relacionado ao momento em que o usuário começou a seguir o tópico?

Estou um pouco perdido aqui :wink:

@sam Apenas para seu conhecimento, agora tenho uma bolha azul de 146 mensagens não lidas sobre este tópico: Discourse Calendar (and Event), sem conseguir entender como isso é possível de acordo com suas explicações acima. A única coisa que consigo pensar é que o marcador de até onde você leu recua quando a postagem real é excluída (sei que você disse que não era esse o caso. Então não sei. Mas sei que exclusões grandes levam a bolhas azuis grandes de mensagens não lidas).

Existem 139 respostas excluídas nesse tópico; isso certamente é a razão.

Acho que temos algum código de normalização que redefine o número da última leitura quando a sua última lida não existe. Podemos considerar ajustar isso.

4 curtidas

Ótimo. Isso realmente era o objetivo.

Só mais uma pergunta rápida, já que vi outro tópico com a exclusão de cerca de 200 posts: por que não criar uma categoria “arquivo” e mover esses posts para “tópicos arquivados” ali, em vez de simplesmente excluí-los? Essa categoria poderia ser excluída das buscas por padrão, mas com a possibilidade de buscar dentro dela. Assim, você mantém o “conhecimento” e as discussões passadas, com a capacidade de todos acessarem, pesquisarem e visualizarem (e o efeito de “limpeza” ou “poda” que você busca também é alcançado).

O “custo” de manter essas mensagens acessíveis para todos seria realmente muito alto? (Pergunta secundária: vocês estão excluindo totalmente, ou ainda podem acessar essas mensagens internamente? Ou seja, elas são apenas “publicamente” excluídas).

Obrigado.