Actualizando "Notificaciones predeterminadas de categoría" para grupos que no tienen permiso para ver la categoría

Es posible agregar notificaciones de categoría (a través de /g/[group_name}/manage/categories) para categorías que un grupo no tiene permiso para ver. Por ejemplo, puedes configurar que todos los miembros de Trust_level_0 observen la categoría Staff. Incluso hay una indicación para aplicar el cambio históricamente:

Esto sería muy malo :tm: si Discourse realmente hiciera ese cambio y comenzara a mostrar a usuarios aleatorios lo que los miembros del personal dicen en privado. Afortunadamente, la indicación es una mentira. Después de hacer este cambio muy aterrador (en una instancia de staging), pude suplantar a un usuario aleatorio y ver que no tenían esto configurado en sus preferencias de seguimiento (/my/preferences/tracking/) y no reciben notificaciones de actividad nueva. La seguridad de la categoría está funcionando como se esperaba.

Dicho esto, cuando miro las preferencias de seguimiento del usuario mientras estoy conectado como administrador, veo esto:

Puedo agregarlos a todo tipo de categorías privadas, lo que puede causar pánico momentáneo si no sabes que Discourse está gestionando las cosas correctamente en segundo plano.

Creo que el enfoque correcto sería prohibir a los administradores establecer las preferencias de seguimiento para las categorías que los usuarios no pueden leer. Eso significa que no puedo agregar manualmente una categoría mientras visito el perfil de otro usuario a menos que esté en un grupo que pueda ver la categoría. Y si uso la actualización masiva para agregar un grupo completo a una categoría, obtengo un error si el grupo no tiene permiso para leer la categoría.

¿Hay alguna razón para permitir que los administradores agreguen configuraciones de notificación que en realidad no envían notificaciones? El único caso en el que podría tener sentido es si el administrador planea abrir una categoría en el futuro y quiere tener notificaciones listas con anticipación para el grupo apropiado. (Pero no sé si eso es algo razonable de hacer).

1 me gusta

No hay necesidad de preocuparse por eso, el pipeline de notificaciones siempre verifica los permisos en el punto en que generamos notificaciones.

Así que en este caso no se filtraría ninguna información, simplemente configuraríamos los registros y si, por casualidad, el usuario obtiene visibilidad al convertirse en personal, lo seguiría automáticamente.

Parece que esto se trata principalmente de mejorar la experiencia del usuario para que no mienta al administrador sobre lo que va a suceder.

1 me gusta

Bien. El usuario no tiene idea de que esto está sucediendo, pero el administrador (especialmente un administrador acostumbrado a software que podría arruinar algo como esto) necesitaría investigar algo (registros de correo electrónico, suplantar a otro usuario, probar en staging, etc.) para verificar que no se envían notificaciones.

1 me gusta