Личное сообщение группы — проблема с Message Bus

Контекст
У нас есть система, которая программно добавляет пользователей в группы через API и автоматически создает личные сообщения для отдельных групп, также полностью через API.

Например, у нас может быть группа с названием: cooking-class-101

Для неё мы создаем личное сообщение с участниками cooking-class-101 и system.

Это отлично работает для нас как способ автоматического создания приватных чатов для групп людей.

Проблема
Проблема, которую мы наблюдаем, заключается в том, что для обычных пользователей, являющихся частью группы, шина сообщений не возвращает никаких обновлений при добавлении новых постов в тему.

Например, у нас есть личное сообщение группы с идентификатором темы 123. Мы видим, что шина сообщений подписана на канал topic/123, однако, если другой пользователь создает пост в теме, шина сообщений ничего не возвращает, и поэтому последний пост не отображается автоматически.

Мы подтвердили, что шина сообщений в целом работает как ожидается, так как она корректно возвращает данные на канале topic/presence/123.

В противовес этому, для пользователей-администраторов, которые являются частью группы, добавленной в личное сообщение, шина сообщений корректно возвращает данные на канале topic/123, и новый пост поэтому правильно отображается в теме в реальном времени.

Мы также подтвердили, что если обычного пользователя, являющегося членом группы, отдельно пригласить участвовать в теме (то есть теперь в теме участвуют cooking-class-101, system и обычный пользователь), то он начинает корректно получать ответы от шины сообщений на канале topic/123 и, следовательно, видеть новые посты в реальном времени.

Исследование
Изучение кода Discourse привело меня к следующему, что выглядит так, будто для тем личных сообщений группы не уведомляются о публикации новых постов: discourse/app/models/post.rb at b7b81afe553a79f58f79f49a6c2ceff831aa4ec7 · discourse/discourse · GitHub

Я не до конца уверен, что должно возвращать свойство topic.allowed_users по ссылке выше для темы личного сообщения, к которой добавлена группа, но я подозреваю, что оно не включает список пользователей, состоящих в этой группе.

Я пометил это как баг, но это может быть и ожидаемым поведением?

2 лайка