Отписываться от тем, когда вы перестаете следить за связанным с ними тегом

Предположим, что группа тегов A видна только администраторам. Если её видимость изменена на «Все», и обычный пользователь отметит тег как «Слежу», то после того, как тег снова станет видимым для этой группы (например, администраторам), пользователь продолжит следить за тегами и получать уведомления, вместо того чтобы быть автоматически удалённым из списка, поскольку тег больше не виден обычному пользователю. Кроме того, у пользователя нет способа снять статус «Слежу», так как он не отображается на странице «Настройки» > «Отслеживание».

4 лайка

Я пытался воспроизвести это на Meta вчера, и, эээ… группа тегов скрылась, так что я теперь как бы застрял с этим (хотя я всё ещё не вижу теги).

1 лайк

Мне не удалось воспроизвести эту проблему. Подтвердите, пожалуйста, вы следовали этим шагам?

  1. У вас была группа тегов с ограниченным доступом (только для администраторов), что должно было предотвратить возможность подписки на теги пользователями без прав администратора.
  2. Вы изменили разрешение для группы тегов на «Теги могут использоваться всеми», что позволило пользователю без прав администратора видеть и подписываться на тег в этой группе.
  3. Затем вы вернули разрешение для группы тегов обратно только для администраторов.

Также, на какой версии Discourse вы столкнулись с этой проблемой?

Скорее всего, это связано с тем, что у вас недостаточно прав для управления группами тегов здесь, на Meta.

Мои шаги для воспроизведения:

  1. (Как администратор) В группе тегов с несколькими тегами установите параметр Теги видны только следующим группам[1] на значение вроде trust_level_0 из другой группы, в которую не входит другой пользователь.
  2. Под другим пользователем наблюдайте за этими тегами на его странице (установите там статус уведомлений на «Следить»).
  3. (Как администратор) Верните видимость группы тегов к прежнему значению и создайте тему с этими тегами.
  4. Вернитесь к другому пользователю; если перейти по ссылке ?state=watching, вы увидите созданную тему (статус «Следить» не был снят)[2].

  1. Скоро протестирую вариант «видны всем» ↩︎

  2. При тестировании я не получил уведомление, но всё равно видел тему в списке отслеживаемых тем из-за тегов ↩︎

1 лайк

Спасибо, понял.

Подтверждаю: статус «отслеживаемого» для тем, которые стали отслеживаемыми исключительно потому, что пользователь следил за тегом, сохраняется даже если пользователь позже теряет доступ к этому тегу из-за изменения прав группы тегов. Они продолжат получать уведомления по уже «автоматически отслеживаемым» темам, но не по новым темам, созданным после изменения.

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

4 лайка

А, это понятно, спасибо, что посмотрели!

1 лайк

Это довольно каверзный вопрос! Я понимаю вашу точку зрения, @NateDhaliwal, но я не считаю это ошибкой.

Подписка на тег — это упрощённый способ подписаться на темы. Пока у пользователя был доступ к тегу, все темы, созданные с его использованием, автоматически помечались как просматриваемые. Я не вижу в этом ошибки в том, что эти темы остаются в списке просматриваемых, даже если пользователь перестал подписаться на тег (из-за того, что доступ к нему был отозван).

Но давайте я уточню у @hugh, нашего менеджера по продукту в области пользовательского опыта, согласен ли он с этим. Я мог бы привести аргументы в обе стороны, но, думаю, это скорее следует рассматривать как Contribute > Feature request (запрос на новую функцию), охватывающий более широкие изменения в отслеживании, а не только те, которые возникают при потере доступа к тегу.

2 лайка

Я чувствую то же самое — раз пользователь не следит за новыми темами в теге, а только за теми, к которым у него уже был доступ, кажется разумным продолжать это делать (если бы он получал уведомления о новых темах в теге, это, я думаю, было бы проблематично). Также я понимаю, что имеет смысл перестать следить за темами в тегах, к которым у пользователя нет доступа, независимо от его предыдущего доступа к ним.

Для меня это имеет смысл — раз это не совсем баг, то лучший путь вперёд — это запрос на изменение того, как работает эта функция.

2 лайка