Solicitação subsequente de Adicionar evento: filtro à linguagem de consulta do filtro de tópicos (extensão do plugin Discourse Events):
O filtro event: foi agora combinado e está funcionando — obrigado!
No entanto, encontrei uma lacuna que limita sua utilidade prática: a rota /filter (e, portanto, o plugin Custom Topic Lists) consulta apenas tópicos comuns. As mensagens são totalmente excluídas porque usam um sistema de rotas separado (/topics/private-messages-group/... / topics/private-messages/...).
Isso significa que uma comunidade que usa Mensagens junto com discussões públicas não consegue criar uma única visualização unificada de “todos os eventos”. É preciso ter duas páginas separadas e não é possível combinar filtros em ambas.
Vale notar que o sistema de busca já abrange ambos os arquétipos com in:all — mas não me diz quais resultados são eventos. O sistema de filtros conhece eventos — mas não vê mensagens. Nenhum dos dois é útil sozinho!
O problema
event:any mostrará todos os tópicos públicos com eventos, mas ignora silenciosamente qualquer evento criado em uma MP. Para grupos que usam MPs para convites, coordenação ou eventos somente com convite, essa é uma falha significativa.
O mesmo limite foi enfrentado por @pfaffman — findFilteredTopics não alcança tópicos com archetype = 'private_message':
Solução proposta
Permitir que a rota /filter inclua opcionalmente MPs por meio de um seletor de arquétipo, por exemplo:
event:any archetype:regular,privatemessage
Ou um booleano mais simples:
event:any include-messages
Caso de uso
Como gestor de comunidade, quero um único link na barra lateral que mostre todos os eventos do site — públicos ou privados — para que nada se perca entre duas visualizações separadas.