Plugin de magicien personnalisĂ© 🧙

J’ai créé un Assistant personnalisĂ© et effectuĂ© plusieurs soumissions Ă  titre de test, mais je ne parviens pas Ă  les supprimer manuellement. D’aprĂšs ce que j’ai lu dans un autre fil de discussion, la seule solution passe par Rails, mais je n’arrive pas Ă  dĂ©terminer les commandes Ă  utiliser. ChatGPT Ă©choue souvent dans ce cas.

1 « J'aime »

Bonjour :slight_smile:

Il semble qu’une mise Ă  jour trĂšs rĂ©cente du cƓur de Discourse (survenue le week-end du 6 au 7 juin) ait introduit un changement architectural critique qui provoque l’arrĂȘt complet du cycle de dĂ©marrage de l’application avec le plugin discourse-custom-wizard.

MĂȘme la tentative de visite de /safe-mode Ă©choue avec une erreur 500 globale, car le crash se produit lors de l’enregistrement du middleware d’initialisation.

Voici la trace d’erreur fatale exacte extraite de Logster :

ActionView::Template::Error (undefined method 'admin_stylesheets' for class DiscoursePluginRegistry)
lib/stylesheet/manager/builder.rb:199:in `Stylesheets::Manager::Builder#plugins_digest'

Il semble que, lors de la phase de compilation des actifs et des feuilles de style (plugins_digest), le cƓur de Discourse invoque une mĂ©thode admin_stylesheets sur DiscoursePluginRegistry, ce qui dĂ©clenche une exception de mĂ©thode non dĂ©finie, probablement en raison d’une incompatibilitĂ© avec la maniĂšre dont le wizard personnalisĂ© s’enregistre ou Ă©tend les styles administratifs.

La dĂ©sactivation du plugin dans app.yml et l’exĂ©cution d’une reconstruction complĂšte du conteneur permettent au forum de dĂ©marrer normalement, ce qui confirme que le crash est isolĂ© aux hooks d’intĂ©gration du wizard.

Pourriez-vous s’il vous plaĂźt examiner la mise Ă  jour des hooks du registre et des feuilles de style pour assurer la compatibilitĂ© avec les changements rĂ©cents du cƓur ?

Merci !

1 « J'aime »

Je peux confirmer la mĂȘme erreur. Malheureusement, j’ai dĂ» suspendre le plugin pour le moment.

Merci pour votre aide.

Salut les amis ! Merci Ă  toutes les personnes qui m’ont contactĂ© via diffĂ©rents canaux Ă  propos de ce problĂšme. C’est rĂ©glĂ© et le plugin fonctionne Ă  nouveau.

9 « J'aime »

Je rencontre un problĂšme depuis la mise Ă  jour vers la derniĂšre version de Discourse et du plugin.

J’ai configurĂ© un champ permettant aux utilisateurs de sĂ©lectionner des balises. J’ai restreint les balises Ă  un groupe de balises, et j’ai sĂ©lectionnĂ© ce groupe dans la section Groupes de balises.

Cela fonctionnait bien auparavant : les utilisateurs ne pouvaient sélectionner que des balises appartenant à ce groupe.

Maintenant, cependant, c’est comme si le groupe de balises n’existait pas, et les utilisateurs peuvent sĂ©lectionner n’importe quelle balise.

J’ai essayĂ© de supprimer le groupe de balises, de sauvegarder, puis de le rĂ©ajouter, mais cela n’a pas fonctionnĂ©. J’ai Ă©galement essayĂ© de ne pas utiliser de groupe de balises du tout, et de sĂ©lectionner les balises dans la section Contenu, mais cela est limitĂ© Ă  5 balises, et j’en ai plus que cela.

Je ne sais pas quoi faire — cela casse complĂštement un flux de travail avec mon formulaire. Je n’utilise cette option que comme solution de contournement, car une sĂ©lection multiple dans un menu dĂ©roulant n’est pas possible. Les utilisateurs ne peuvent sĂ©lectionner que jusqu’à 3 options, donc un groupe de cases Ă  cocher ne fonctionne pas vraiment non plus.

Des idées pour une autre solution de contournement, ou est-ce que je fais quelque chose de mal ?

2 « J'aime »

Salut Jen, je viens de pousser quelques correctifs pour le plugin. Merci de mettre à jour et de me dire comment ça se passe.

6 « J'aime »

Merci beaucoup @angus, je viens de mettre Ă  jour et tout semble fonctionner.

Pendant la reconstruction, j’ai remarquĂ© ceci s’afficher Ă  l’écran et j’ai pensĂ© que je devrais vous en informer :

[DEPRECATION] Template.error_mode= est obsolĂšte. Utilisez Environment#error_mode= Ă  la place. Appel depuis /var/www/discourse/plugins/discourse-custom-wizard/plugin.rb:99:in 'block in Plugin::Instance#activate!'
[DEPRECATION] Template.register_filter est obsolĂšte. Utilisez Environment#register_filter Ă  la place. Appel depuis /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] La limite de taille du tas Node.js est inférieure à 2048 Mo. Paramétrage de --max-old-space-size=2048 et CHEAP_SOURCE_MAPS=1
[assemble_ember_build] Aucun fichier d’informations de build existant trouvĂ©.
Téléchargement et extraction de https://get.discourse.org/discourse-assets/2026.7.0-latest-6accc7b7/production.tar.gz...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  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
Actifs précompilés téléchargés et extraits avec succÚs.
[assemble_ember_build] Réutilisation du build Ember central existant. Tout est terminé.
[DEPRECATION] Template.error_mode= est obsolĂšte. Utilisez Environment#error_mode= Ă  la place. Appel depuis /var/www/discourse/plugins/discourse-custom-wizard/plugin.rb:99:in 'block in Plugin::Instance#activate!'
[DEPRECATION] Template.register_filter est obsolĂšte. Utilisez Environment#register_filter Ă  la place. Appel depuis /var/www/discourse/plugins/discourse-custom-wizard/plugin.rb:106:in 'block in Plugin::Instance#activate!'
3 « J'aime »

Je peux le confirmer, j’ai dĂ» Ă  nouveau dĂ©sactiver le plugin.

Un grand merci aux créateurs pour la maintenance :folded_hands:

1 « J'aime »

J’ai poussĂ© quelques corrections et mises Ă  jour diffĂ©rentes pour ce plugin aujourd’hui. Veuillez mettre Ă  jour et voir si elles rĂ©solvent votre problĂšme.

1 « J'aime »

Salut. Je ressors de ma tombe Ă  deux reprises.

Sur un forum Discourse auto-hĂ©bergĂ©, j’utilise le plugin Wizard pour certaines choses, qui m’a bien servi pour la « sĂ©curitĂ© bĂ©bĂ© ».

Il y a un moment que le forum n’était pas mis Ă  jour (depuis mars), donc j’ai demandĂ© qu’il le soit, ce qui a Ă©tĂ© fait. Malheureusement, aprĂšs la mise Ă  jour, mes Wizards ne fonctionnent plus comme avant. Laissez-moi expliquer.

Avec un compte administrateur, je peux cliquer sur « Nouveau sujet » et accĂ©der au wizard. Cependant, si j’utilise un compte classique et que je clique sur « Nouveau sujet » dans la mĂȘme catĂ©gorie, au lieu de m’envoyer vers le wizard, cela ouvre simplement le rĂ©dacteur sur la mĂȘme page.

Je n’ai aucune idĂ©e de ce qui a pu causer ce problĂšme, et je ne peux pas non plus tĂ©lĂ©charger une vidĂ©o Ă©tant donnĂ© que je suis un nouvel utilisateur (haha), mais si vous avez d’autres questions, n’hĂ©sitez pas. Je rĂ©pondrai du mieux que je pourrai.

Je voulais publier un exemple, mais je n’y suis pas parvenu en raison de l’absence du niveau de confiance requis. Maintenant, je peux le faire, alors le voici.

L’onglet de gauche correspond au compte disposant des droits d’administrateur/modĂ©rateur. L’onglet de droite est un compte standard. Je ne sais pas pourquoi cela a de l’importance dans ce cas, mais ça dĂ©passe mes compĂ©tences, frangin.

Le lien vers la documentation dans l’interface d’administration du plugin redirige vers une erreur de page non trouvĂ©e :

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

Selon le premier message de ce sujet, il semble que la documentation se trouve Ă  cette adresse :

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

2 « J'aime »

Je suis curieux, @angus. Y a-t-il un endroit pour signaler des bogues comme celui que j’ai envoyĂ© ?

Salut @Lebron, aoĂ»t est un mois tranquille :sun: Je soupçonne que ton problĂšme est causĂ© par un bug de prĂ©chargement de champ personnalisĂ© de niche dans le noyau discourse/discourse. J’ai soumis une PR Ă  ce sujet :

4 « J'aime »

LeBron James' Emotional Moment

Merci beaucoup, gros. J’espĂšre que ta pull request corrigera le problĂšme une fois fusionnĂ©e et que je recompilerai Discourse. :face_holding_back_tears:

Malheureusement, je suis tombĂ© sur les mĂȘmes problĂšmes aprĂšs la fusion de votre pull request. L’assistant reste inaccessible pour les comptes non administrateurs, et malgrĂ© la sauvegarde aprĂšs avoir modifiĂ© les paramĂštres de mes assistants, ils reviennent systĂ©matiquement Ă  des cases vides avec toutes mes modifications perdues. Bizarre.

Avez-vous d’autres idĂ©es, peut-ĂȘtre ?

C’est un problĂšme pour beaucoup d’options, trop nombreuses pour ĂȘtre comptĂ©es. C’est pourquoi j’ai hĂ©sitĂ© Ă  utiliser ce plugin.

La sauvegarde des informations constitue un problĂšme majeur pour ce plugin.

Il y a aussi le problĂšme de l’interface utilisateur qui fait disparaĂźtre certains Ă©lĂ©ments parfois lorsque vous interagissez avec elle.

Oui, je peux comprendre et cela me triste car c’est un trĂšs bon plugin Ă  avoir. Je suis en train de dĂ©placer mes wizards vers ma nouvelle stack : Authentik, Formbricks et Discourse Workflows. N8N peut aussi m’ĂȘtre utile.

C’est bien plus qu’un simple plugin, mais je comprends tout Ă  fait que le mainteneur n’a pas le temps ou les ressources pour le garder synchronisĂ© avec le core. Peut-ĂȘtre est-il temps de demander Ă  la communautĂ© de le maintenir ?

Juste mes deux cents. Un immense merci à @angus pour avoir développé et partagé cela. Respect :folded_hands:

@Lebron Un ajustement supplémentaire était nécessaire dans le plugin pour prendre en charge la mise à jour du noyau. Essayez de mettre à jour à nouveau. Je viens de tester la fonctionnalité avec un utilisateur non membre du staff et cela fonctionne.

@Eviepayne @satonotdead Salut les amis, s’il est vrai que ce plugin ne bĂ©nĂ©ficie pas d’une maintenance trĂšs intensive, Ă  part le problĂšme de Lebron concernant la crĂ©ation de sujet par un utilisateur non administrateur, qui est maintenant rĂ©solu, je ne vois pas d’autres problĂšmes spĂ©cifiques de mon cĂŽtĂ©. Si vous souhaitez signaler quelque chose de prĂ©cis, n’hĂ©sitez pas !

1 « J'aime »

Les assistants fonctionnent, mais la dĂ©finition des champs ne fonctionne toujours pas. Chaque fois que je sauvegarde aprĂšs avoir dĂ©fini une catĂ©gorie, par exemple, elle se rĂ©initialise. Merci quand mĂȘme, @angus.