Contexto
Temos um sistema no qual adicionamos usuários a grupos programaticamente, via API, e criamos automaticamente mensagens privadas para grupos individuais, tudo via API.
Por exemplo, podemos ter um grupo chamado: cooking-class-101
Para o qual criaremos uma mensagem privada com cooking-class-101 e system como dois participantes da mensagem privada.
Isso tem funcionado muito bem para nós como uma maneira de criar automaticamente chats privados de grupo para grupos de pessoas.
O Problema
O problema que estamos observando é que, para usuários comuns que fazem parte do grupo, o message bus não retorna nenhuma atualização quando novas postagens são adicionadas ao tópico.
Por exemplo, temos uma mensagem privada de grupo com o ID do tópico 123. Podemos ver que o message bus está inscrito no canal topic/123, no entanto, se outro usuário criar uma postagem no tópico, nada é retornado pelo message bus e, portanto, a postagem mais recente não aparece automaticamente.
Confirmamos que o message bus está funcionando geralmente conforme o esperado, pois ele retorna corretamente dados no canal topic/presence/123.
O contraponto ao acima é que, para usuários administradores que fazem parte do grupo que foi adicionado à mensagem privada, o message bus retorna corretamente dados no canal topic/123 e, portanto, a nova postagem é exibida corretamente no tópico em tempo real.
Também confirmamos que, se um usuário comum que é membro do grupo for convidado separadamente para participar do tópico (agora temos cooking-class-101, system e regular-user participando), eles começam a receber corretamente respostas do message bus no canal topic/123 e, portanto, veem novas postagens em tempo real.
Pesquisa
Explorando o código do Discourse, cheguei ao seguinte, que parece indicar que, para tópicos de mensagem privada, pode não haver notificação aos grupos sobre novas postagens publicadas: discourse/app/models/post.rb at b7b81afe553a79f58f79f49a6c2ceff831aa4ec7 · discourse/discourse · GitHub
Não tenho certeza absoluta do que topic.allowed_users no link acima deve retornar em um tópico de mensagem privada com um grupo adicionado a ele, mas minha suspeita é de que ele não inclui a lista de usuários que existem como parte do grupo.
Marquei isso como um bug, mas isso pode muito bem ser um comportamento intencional?