Plugin de mago personalizado 🧙

Creé un Asistente Personalizado y realicé varias presentaciones como pruebas, pero no puedo eliminarlas manualmente. Según lo que leí en otro hilo, la única opción es a través de Rails, pero no logro averiguar qué comandos usar; ChatGPT falla mucho en esto.

1 me gusta

Hola :slight_smile:
Parece que una actualización muy reciente del núcleo de Discourse (durante el fin de semana del 6 al 7 de junio) ha introducido un cambio arquitectónico disruptivo que provoca que el plugin discourse-custom-wizard haga colapsar todo el ciclo de arranque de la aplicación.

Incluso intentar visitar /safe-mode falla con un error 500 global, ya que el colapso ocurre durante el registro del middleware de inicialización.

Aquí está el rastreo exacto del error fatal extraído de Logster:

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

Parece que, durante la fase de compilación de activos/hojas de estilo (plugins_digest), el núcleo de Discourse está invocando un método admin_stylesheets en DiscoursePluginRegistry, lo cual lanza una excepción de método no definido, probablemente debido a una incompatibilidad con la forma en que el asistente personalizado registra o extiende los estilos administrativos.

Deshabilitar el plugin en app.yml y realizar una reconstrucción completa del contenedor permite que el foro arranque con normalidad, lo que confirma que el colapso está aislado en los ganchos de integración del asistente.

¿Podrías revisar la actualización de los ganchos del registro/hojas de estilo para garantizar la compatibilidad con los cambios actuales del núcleo?

¡Gracias!

1 me gusta

Puedo confirmar el mismo error. Lamentablemente, he tenido que suspender el plugin por el momento.

Gracias por el apoyo.

¡Hola a todos! Gracias a las diversas personas que se pusieron en contacto conmigo a través de distintos medios sobre este problema. Ya está solucionado y el complemento vuelve a funcionar.

9 Me gusta

He encontrado un problema desde que actualicé a la última versión de Discourse y del plugin.

Tengo un campo configurado para que los usuarios seleccionen etiquetas. He restringido las etiquetas a un grupo de etiquetas y seleccionado el grupo en la sección Grupos de etiquetas.

Esto funcionaba bien antes: los usuarios solo podían seleccionar entre las etiquetas dentro de ese grupo de etiquetas.

Ahora, sin embargo, parece que el grupo de etiquetas no existe y los usuarios pueden seleccionar cualquier etiqueta.

Intenté eliminar el grupo de etiquetas, guardar y volver a añadirlo, pero eso no funcionó. También intenté no usar un grupo de etiquetas en absoluto y seleccionar las etiquetas en la sección Contenido, pero eso está limitado a 5 etiquetas y tengo más que eso.

No sé qué hacer: esto está rompor completamente un flujo de trabajo con mi formulario. Solo estoy usando esta opción como solución alternativa ya que la selección múltiple en un menú desplegable no es una opción. Los usuarios solo pueden seleccionar hasta 3 opciones, por lo que un grupo de casillas de verificación tampoco funciona realmente.

¿Alguna idea sobre una solución alternativa diferente o si podría estar haciendo algo mal?

2 Me gusta

Hola Jen, acabo de subir algunas correcciones al plugin. Por favor, actualízalo y dime cómo te va.

6 Me gusta

Muchas gracias @angus, acabo de actualizar y todo parece funcionar correctamente.

Mientras reconstruía, vi esto aparecer en la pantalla y pensé en avisarte:

[DEPRECATION] Template.error_mode= está en desuso. Usa Environment#error_mode= en su lugar. Llamado desde /var/www/discourse/plugins/discourse-custom-wizard/plugin.rb:99:in 'block in Plugin::Instance#activate!'
[DEPRECATION] Template.register_filter está en desuso. Usa Environment#register_filter en su lugar. Llamado desde /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] El límite de tamaño del montículo de Node.js es inferior a 2048 MB. Estableciendo --max-old-space-size=2048 y CHEAP_SOURCE_MAPS=1
[assemble_ember_build] No se encontró ningún archivo de información de compilación existente.
Descargando y extrayendo https://get.discourse.org/discourse-assets/2026.7.0-latest-6accc7b7/production.tar.gz...
  % Total    % Recibido % Transferido Velocidad Promedio Tiempo Tiempo Tiempo Actual
                                  Descarga Carga Total Gastado Restante Velocidad
  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
Activos precompilados descargados y extraídos correctamente.
[assemble_ember_build] Reutilizando la compilación central de Ember existente. Todo listo.
[DEPRECATION] Template.error_mode= está en desuso. Usa Environment#error_mode= en su lugar. Llamado desde /var/www/discourse/plugins/discourse-custom-wizard/plugin.rb:99:in 'block in Plugin::Instance#activate!'
[DEPRECATION] Template.register_filter está en desuso. Usa Environment#register_filter en su lugar. Llamado desde /var/www/discourse/plugins/discourse-custom-wizard/plugin.rb:106:in 'block in Plugin::Instance#activate!'
3 Me gusta

Puedo confirmarlo, me vi obligado a desactivar el plugin de nuevo.

Muchas gracias a los creadores por mantenerlo :folded_hands:

1 me gusta

He publicado algunas correcciones y actualizaciones diferentes para este complemento hoy. Por favor, actualízalo y comprueba si resuelven tu problema.

1 me gusta

Hola. Resucito de mi tumba dos veces.

Así que, en un foro de Discourse autoalojado, utilizo el plugin Wizard para algunas cosas, lo cual me ha funcionado bastante bien en cuanto a «protección infantil» (baby-proofing).

Llevaba un tiempo sin actualizar el foro (desde marzo), así que solicité que se actualizara, y así fue. Por desgracia, tras la actualización, mis Wizards ya NO funcionan como lo hacían antes. Déjame explicarlo.

Con una cuenta de administrador, puedo hacer clic en «Nuevo tema» y acceder al wizard. Sin embargo, si uso una cuenta normal y hago clic en «Nuevo tema» en la misma categoría, en lugar de dirigirme al wizard, simplemente abre el compositor en la misma página.

No tengo idea de qué pudo causar esto, ni puedo subir un video por ser usuario nuevo (ja), pero si tienen alguna otra pregunta, ¡adelante. Responderé lo mejor que pueda.

Quería publicar un ejemplo, pero no pude hacerlo por no tener el nivel de confianza requerido. Ahora sí puedo, así que aquí lo tienes.

La pestaña de la izquierda es la cuenta con permisos de administrador/moderador. La pestaña de la derecha es una cuenta normal. No estoy seguro de por qué importa esto, pero me supera, hermano.

El enlace a la documentación en la interfaz de administración del complemento lleva a una página de error 404 (página no encontrada):

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

Según el mensaje original de este tema, parece que la documentación se encuentra en este enlace:

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

2 Me gusta

Tengo curiosidad, @angus. ¿Hay algún lugar para reportar errores como el que envié?

Hola @Lebron, agosto es un mes tranquilo :sun: Sospecho que tu problema está siendo causado por un error de precarga de un campo personalizado específico en el núcleo de discourse/discourse. He abierto una PR para ello:

4 Me gusta

LeBron James' Emotional Moment

Te lo agradezco, gran amigo. Con suerte, tu solicitud de extracción solucionará el problema una vez fusionada y reconstruya Discourse. :face_holding_back_tears:

Por desgracia, me he encontrado con los mismos problemas después de que se integrara tu solicitud de extracción (pull request). El asistente (wizard) sigue sin ser accesible en las cuentas que no son de personal, y, a pesar de guardar después de cambiar cualquier configuración de mis asistentes, estos vuelven a convertirse en casillas vacías y se pierden mis cambios. Qué raro.

¿Tienes alguna otra idea, quizás?

Este es un problema para muchas opciones, demasiadas para contarlas. Es por eso que he estado posponiendo el uso de este plugin.

Guardar la información es un gran problema para el plugin.

También existe el problema de que la interfaz de usuario hace que algunos elementos desaparezcan a veces cuando interactúas con ella.

Sí, puedo entenderlo y me entristece porque es un complemento muy bueno de tener. Estoy migrando los asistentes a mi nuevo conjunto de herramientas: Authentik, Formbricks y Discourse Workflows. N8N también puede serme útil.

Es mucho más que un simple complemento, pero entiendo perfectamente que el mantenedor no tenga tiempo ni recursos para mantenerlo sincronizado con la versión principal. Quizás sea el momento de pedir a la comunidad que lo mantenga.

Solo mi humilde opinión. Un enorme agradecimiento a @angus por desarrollar y compartir esto. Respeto :folded_hands:

@Lebron se necesitaba un ajuste adicional en el complemento para admitir la actualización principal. Intenta actualizar de nuevo. Acabo de probar la función con un usuario que no es del personal y funciona.

@Eviepayne @satonotdead Oye, gente, aunque es cierto que este complemento no recibe mantenimiento intensivo, aparte del problema de Lebron con la creación de temas por parte de usuarios no administradores, que ahora está solucionado, no veo ningún otro problema específico. ¡Si queréis reportar algo concreto, hacedlo!

1 me gusta

Los asistentes funcionan, pero configurar los campos sigue sin funcionar. Cada vez que guardo después de establecer una categoría, por ejemplo, se borra automáticamente. Aun así, gracias, @angus.