Plugin Personalizado de Mago 🧙

Criei um Assistente Personalizado e fiz várias submissões como testes, mas não consigo excluí-las manualmente. De acordo com o que li em outro tópico, a única maneira é por meio do Rails, mas não consigo descobrir quais comandos usar. O ChatGPT falha bastante aqui.

1 curtida

Olá :slight_smile:

Parece que uma atualização muito recente do Discourse Core (no fim de semana de 6 a 7 de junho) introduziu uma mudança arquitetural disruptiva que faz com que o plugin discourse-custom-wizard cause a falha de todo o ciclo de inicialização da aplicação.

Mesmo tentando acessar /safe-mode, o sistema falha com um erro 500 global, pois a falha ocorre durante o registro do middleware de inicialização.

Aqui está o rastreamento exato do erro fatal extraído do Logster:

ActionView::Template::Error (método não definido 'admin_stylesheets' para a classe DiscoursePluginRegistry)
lib/stylesheet/manager/builder.rb:199:in `Stylesheets::Manager::Builder#plugins_digest'

Parece que, durante a fase de compilação de ativos/planilhas de estilo (plugins_digest), o Discourse Core está invocando um método admin_stylesheets na DiscoursePluginRegistry, o que está gerando uma exceção de método não definido. Isso provavelmente se deve a uma incompatibilidade com a forma como o assistente personalizado registra ou estende os estilos administrativos.

Desativar o plugin no app.yml e executar uma reconstrução completa do contêiner permite que o fórum inicie normalmente, confirmando que a falha está isolada nos ganchos de integração do assistente.

Você poderia, por favor, verificar a atualização dos ganchos do registro/planilhas de estilo para garantir compatibilidade com as mudanças recentes do núcleo?

Obrigado!

1 curtida

Posso confirmar o mesmo erro. Infelizmente, tive que suspender o plugin por enquanto.

Obrigado pelo suporte.

E aí, pessoal! Obrigado a todos que entraram em contato comigo por vários meios sobre esse problema. Está resolvido e o plugin está funcionando novamente.

9 curtidas

Encontrei um problema após atualizar para a versão mais recente do Discourse e do plugin.

Tenho um campo configurado para que os usuários selecionem tags. Restrinji as tags a um grupo de tags e selecionei o grupo na seção Grupos de Tags.

Isso funcionava bem antes — os usuários só podiam selecionar tags dentro daquele grupo de tags.

Agora, porém, parece que o grupo de tags não existe, e os usuários podem selecionar qualquer tag.

Tentei remover o grupo de tags, salvar e adicioná-lo novamente, mas isso não funcionou. Também tentei não usar um grupo de tags e selecionar as tags na seção Conteúdo, mas isso está limitado a 5 tags e eu tenho mais do que isso.

Não sei o que fazer — isso está quebrando completamente um fluxo de trabalho com meu formulário. Estou usando essa opção apenas como uma solução alternativa, já que a seleção múltipla em uma lista suspensa não é uma opção. Os usuários só podem selecionar até 3 opções, então um grupo de caixas de seleção também não funciona muito bem.

Alguma ideia de uma solução alternativa diferente ou se eu estou fazendo algo errado?

2 curtidas

Oi Jen, acabei de enviar algumas correções para o plugin. Por favor, atualize e me diga como foi.

6 curtidas

Muito obrigado, @angus, acabei de atualizar e tudo parece estar funcionando.

Enquanto eu estava reconstruindo, notei isso passando pela tela e pensei em te avisar:

[DEPRECATION] Template.error_mode= está depreciado. Use Environment#error_mode= em vez disso. Chamado de /var/www/discourse/plugins/discourse-custom-wizard/plugin.rb:99:in 'block in Plugin::Instance#activate!'
[DEPRECATION] Template.register_filter está depreciado. Use Environment#register_filter em vez disso. Chamado de /var/www/discourse/plugins/discourse-custom-wizard/plugin.rb:106:in 'block in Plugin::Instance#activate!'
I, [2026-07-22T09:33:52.756446 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake assets:precompile:build'
[assemble_ember_build] Node.js heap_size_limit é menor que 2048MB. Definindo --max-old-space-size=2048 e CHEAP_SOURCE_MAPS=1
[assemble_ember_build] Nenhum arquivo de informações de build existente encontrado.
Baixando e extraindo https://get.discourse.org/discourse-assets/2026.7.0-latest-6accc7b7/production.tar.gz...
  % Total    % Recebido % Transferido  Velocidade Média   Tempo    Tempo     Tempo  Atual
                                   Download Upload   Total   Gasto    Restante  Velocidade
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 23.3M  100 23.3M    0     0  30.9M      0 --:--:-- --:--:-- --:--:--  184M
Ativos pré-compilados baixados e extraídos com sucesso.
[assemble_ember_build] Reutilizando build ember core existente. Tudo pronto.
[DEPRECATION] Template.error_mode= está depreciado. Use Environment#error_mode= em vez disso. Chamado de /var/www/discourse/plugins/discourse-custom-wizard/plugin.rb:99:in 'block in Plugin::Instance#activate!'
[DEPRECATION] Template.register_filter está depreciado. Use Environment#register_filter em vez disso. Chamado de /var/www/discourse/plugins/discourse-custom-wizard/plugin.rb:106:in 'block in Plugin::Instance#activate!'
3 curtidas

Posso confirmar, fui obrigado a desativar o plugin novamente.

Muito obrigado aos criadores por manterem :folded_hands:

1 curtida

Hoje, enviei algumas correções e atualizações diferentes para este plugin. Por favor, atualize e veja se elas resolvem o seu problema.

1 curtida

Olá. Eu ressuscitei do meu túmulo duas vezes.

Então, em um fórum Discourse auto-hospedado, uso o plugin Wizard para algumas coisas, o que tem me servido bem quando se trata de “proteção contra crianças”.

Já faz um tempo que o fórum não era atualizado (desde março), então solicitei que fosse atualizado, e foi. Infelizmente, após a atualização, meus Wizards de repente NÃO funcionam como funcionavam antes. Deixe-me explicar.

Com uma conta de administrador, consigo clicar em Novo Tópico e acessar o wizard. No entanto, se eu usar uma conta comum e clicar em Novo Tópico na mesma categoria, em vez de me redirecionar para o wizard, ele apenas abre o compositor na mesma página.

Não faço ideia do que causou isso, nem posso fazer upload de um vídeo por ser um usuário novo (rs), mas se houver outras perguntas, soltem tudo. Responderei o melhor que puder.

Queria postar um exemplo, mas não consegui por não ter o nível de confiança necessário. Agora posso, então aqui está.

A aba da esquerda é a conta com permissões de administrador/moderador. A aba da direita é uma conta comum. Não tenho certeza do porquê isso importa, mas não faço ideia, cara.

O link para a documentação na interface de administração do plugin leva a um erro de página não encontrada:

https://pavilion.tech/products/discourse-custom-wizard-plugin/documentation/

Pelo autor deste tópico, parece que a documentação está neste link:

https://coop.pavilion.tech/docs?ascending=true&category=82&order=title

2 curtidas

Estou curioso, @angus. Existe um local para relatar bugs como o que enviei?

E aí @Lebron, agosto é um mês tranquilo :sun: Acho que seu problema está sendo causado por um bug específico de pré-carregamento de campos personalizados no núcleo do discourse/discourse. Abri um PR para isso:

4 curtidas

LeBron James' Emotional Moment

Muito obrigado, meu grande amigo. Espero que sua solicitação de pull resolva o problema depois de mesclada e eu reconstruir o Discourse. :face_holding_back_tears:

Infelizmente, deparei-me com os mesmos problemas depois que sua pull request foi mesclada. O Assistente ainda não pode ser acessado em contas não administrativas e, apesar de salvar após alterar qualquer configuração dos meus assistentes, eles ainda retornam a caixas vazias com minhas alterações perdidas. Estranho.

Há alguma outra ideia, talvez?

Este é um problema para muitas opções, tantas que é impossível contar. É por isso que tenho evitado usar este plugin.
Salvar as informações é um grande problema para o plugin.

Há também o problema da interface do usuário fazendo elementos desaparecerem às vezes quando você interage com ela.

Sim, consigo me identificar com isso e me entristece, pois é um plugin muito bom para se ter. Estou migrando os assistentes para minha nova pilha de tecnologias: Authentik, Formbricks e Discourse Workflows. O N8N também pode ser útil para mim.

É muito mais do que um simples plugin, mas compreendo totalmente que o mantenedor não tenha tempo ou recursos para mantê-lo sincronizado com o núcleo. Talvez seja hora de pedir à comunidade que o mantenha?

Apenas minha opinião. Um enorme agradecimento ao @angus por desenvolver e compartilhar isso. Respeito :folded_hands:

@Lebron era necessária uma pequena alteração adicional no plugin para dar suporte à atualização do núcleo. Tente atualizar novamente. Acabei de testar o recurso com um usuário não membro da equipe e funciona.

@Eviepayne @satonotdead Oi pessoal, embora seja verdade que este plugin não receba manutenção intensiva, além do problema de @Lebron com a criação de tópico por usuário não administrador, que agora está corrigido, não estou vendo nenhum outro problema específico. Se quiserem relatar algo específico, por favor, façam!

1 curtida

Os assistentes funcionam, mas definir os campos ainda não funciona. Toda vez que salvo após definir uma categoria, por exemplo, ela é limpa. Ainda assim, obrigado, @angus.