Bueno, aquí estoy de vuelta… con bastantes avances. He dedicado unas 6.5 horas a esto.
Comencé con algunos conceptos basados en tus sugerencias, pero tuve algunos inconvenientes que finalmente me llevaron a otra dirección, ¡pero espero que en concepto siga siendo una gran idea!
Originalmente iba a usar Formularios de Plantilla (Template Forms), pero no estaba muy satisfecho con el relleno entre cada respuesta en línea. Buscaba más un formato como el que tengo actualmente. Tampoco me gustaba tener que escribirlo todo manualmente en el código, lo que me hizo cambiar de opinión.
He portado mi script de Python a un Plugin de Discourse (Tenga en cuenta que se utilizó IA para la mayor parte del portado). Tuve algunos problemas para empezar, y ahora que está operativo, todavía necesito ajustarlo. El diseño es un poco tosco, y probablemente algunos otros problemas menores. No soy muy bueno con Ruby, así que la revisión en ese aspecto es un esfuerzo máximo.
Así que, sobre el plugin…
Concepto/propósito: La capacidad de mover temas más rápido de una categoría a otra mediante desencadenantes específicos.
Viene con dos modos de operación, que son Manual y Automatizado (programado).
Para construir el desencadenante, puedes seleccionar las categorías de destino/origen, y luego reducirlo mediante especificaciones adicionales, por ejemplo, etiquetas. La llamada final/el desencadenante real, aparte de los filtros de reducción, es que activa el conjunto actual de desencadenantes por hora/fecha de finalización (o inicio), Cerrado, Resuelto, Archivado.
También hay una función de registros que incluye el tema que se mueve, y puedes decidir cuánto tiempo están disponibles los registros.
Hasta esta respuesta, no he probado completamente los desencadenantes de cerrado, resuelto o archivado.
Una vez que lo organice un poco más y lo pruebe más a fondo para asegurarme de que todo funcione, con gusto lo publicaré para que otros puedan acceder a él en la categoría de plugins, pero por ahora, solo lo dejaré en GitHub. Probablemente también necesite revisar los permisos para que no cualquiera pueda ejecutarlo. O permitir específicamente que eso se pueda activar/desactivar.
No dudes en hacerme saber tus pensamientos, o si estoy absolutamente loco haciendo esto.
Fuente: https://github.com/jdc20181/DiscourseTopicMigrationTool


