Parece que este é o mesmo problema conhecido que causa problemas com modelos.
everyone-group-unable-to-see-private-templates
Neste caso, as opções do ai-bot aparecem, mas o bot simplesmente nunca responde.
Parece que este é o mesmo problema conhecido que causa problemas com modelos.
everyone-group-unable-to-see-private-templates
Neste caso, as opções do ai-bot aparecem, mas o bot simplesmente nunca responde.
Obrigado por pesquisar problemas anteriores!
![]()
Acho que o mesmo se aplica aqui:
Você não pode dar acesso a usuários anônimos ao chatbot, então usar trust_level_0 é uma solução eficaz para o seu caso de uso. ![]()
@Roman lendo o código no Discourse, acho que isso funciona agora.
É hora de fechar isso e remover o código de compatibilidade retroativa?
É um pouco complicado. Originalmente, adicionei a opção everyone porque queríamos permitir que usuários anônimos vissem gists. Cada recurso tem suas próprias regras, então não acho que definir os grupos permitidos de uma Persona como esse tornará o recurso disponível para todos.
Isto ainda é um problema. Se "Grupos permitidos do bot de IA" estiver definido como everyone, o bot não responde.
Acho que o bug está aqui
return false if (SiteSetting.ai_bot_allowed_groups_map & post.user.group_ids).blank?
Se a configuração for everyone, isso retorna falso, já que 0 não está em post.user.group_ids
O padrão correto é !user.in_any_groups?(SiteSetting.ai_bot_allowed_groups_map)
que tem um caso especial para everyone:
def in_any_groups?(group_ids)
group_ids.include?(Group::AUTO_GROUPS[:everyone]) ||
(is_system_user? && (Group.auto_groups_between(:admins, :trust_level_4) & group_ids).any?) ||
(group_ids & belonging_to_group_ids).any?
end