No creo que esto funcione correctamente si el tema se cierra con un temporizador de tema. Hemos tenido varios usuarios informando que esto es un problema. Acabamos de tenerlo de nuevo y asumiendo que tiene razón cuando dice que se ha quedado sin votos, él (en el momento de escribir esto) tiene 20 votos emitidos (que es nuestro límite) y uno de estos temas está cerrado, por lo que debería tener un voto de repuesto.
Hemos tenido esto mencionado un número de veces anteriores, pero siempre nos lo han dicho después de que han “eliminado” sus votos antiguos, por lo que no he podido verificarlo. El 99% de nuestros hilos votables se cierran a través de un temporizador de tema de un número de días desde la última respuesta, ¿así que sospecho que el error puede originarse aquí?
Estamos en la última versión del plugin y hemos actualizado Discourse muy recientemente:
Estoy persiguiendo un problema similar. Creo que ha surgido un par de veces antes, pero hasta ahora no creo que hayamos dado con el “porqué”.
Acabo de probarlo con un temporizador de tema para “Cerrar después de la última publicación” (esperando que fuera la pieza que faltaba que estaba buscando ), pero mi voto se devolvió como se esperaba cuando se activó el temporizador.
¿Hay algo más especial en los temas en los que has notado que esto ocurre?
Además, si tienes el explorador de datos instalado/habilitado, puedes echar un vistazo a temas pasados donde el tema está cerrado y/o archivado pero los votos no han sido devueltos usando esta consulta:
SELECT
dvv.topic_id,
t.last_posted_at::date,
tvc.votes_count
FROM discourse_voting_votes dvv
JOIN topics t ON t.id = dvv.topic_id
JOIN discourse_voting_topic_vote_count tvc ON tvc.topic_id = dvv.topic_id
WHERE dvv.archive = false
AND (t.closed = true OR t.archived = true)
GROUP BY 1,2,3
ORDER BY 2
Como dije antes, la mayoría de nuestros temas se cierran a través de un temporizador de tema, pero creo que todos menos uno de esos se habrían cerrado con el botón “Cerrar tema” (y posiblemente todos ellos). ¿Hay alguna forma de comprobar cómo se cerró un tema? Así que, contrariamente a mi suposición de que el temporizador era el problema, es una gran coincidencia que el problema parezca estar en los temas cerrados usando el botón normal de cierre en su lugar. Un pequeño porcentaje de los cierres se realizará a través de este botón, por lo que para que 6 o 7 de los 7 ejemplos sean así, esto apunta mucho a que ese botón está relacionado.
Parece que son todos los votos de un tema los que no se devuelven, no solo una parte de ellos.
Dos el mismo día. Quizás solo una coincidencia.
El último tema fue eliminado por el autor.
Aparte de mi primer punto anterior, no veo mucho patrón, pero siéntete libre de mirar los hilos tú mismo en caso de que veas algo
¿Hay alguna forma de devolver estos votos a los usuarios manualmente ahora? ¿O incluso una corrección automática nocturna hasta que se pueda encontrar la causa raíz?
Lamentablemente, esa tampoco parece ser la causa. Creo que todavía hay algo más que se está sumando y que hace que ocurra en algunos casos pero no en todos.
Para probar una teoría, ¿podrías reabrir uno y luego cerrarlo de nuevo para ver si eso libera los votos? (también debería devolverlos si se mueven de categoría a una que no permita votos, lo cual podría valer la pena probar. Y luego volver a moverlos para ver si el problema persiste).
Creo que podemos haber identificado un escenario que podría coincidir con el tuyo. Tus historiales de edición no son públicos, pero parece que podrías haber añadido una etiqueta a estos después de que se cerraran, ¿verdad? Si es así, creo que tenemos una solución en preparación para evitar que el sistema vuelva a marcar esos votos como ‘actuales’.
Sí, eso devuelve los votos (según el informe del explorador de datos)
Ah, sí, esa será la causa Normalmente, añadimos una etiqueta (a menudo algo como “idea-completada”) y luego cerramos con un temporizador de tema. En el caso inusual de cerrar inmediatamente, normalmente también añadimos una etiqueta, pero esto puede hacerse antes o después del “cierre” pero dentro de unos segundos el uno del otro (nunca lo había pensado realmente). ¡Esto explica la “coincidencia” de que todos se cerraron usando el botón de cerrar!
Gracias por toda la ayuda, se agradece mucho Espero con ansias el lanzamiento de la solución.
Un tema fue eliminado por el autor y parece que no se devolvieron los votos, ni mis intentos de “Abrir” y luego “Cerrar” los devuelven. ¿Qué sugerirías? ¿O la corrección del error vendrá con una migración para arreglar los datos, si es así, podemos esperar a que eso suceda?
Esto evitará que suceda en el futuro, aunque no corregirá los que ya existen.
Es posible restablecerlos a través de la consola de rails, aunque si no tienes muchos, creo que sería más fácil usar la interfaz de usuario para activar el mecanismo de ‘devolver voto’ si puedes.
Hmmm. Qué desafortunado. Podrías intentar restaurarlo y moverlo a tu categoría #staff y luego cerrarlo y archivarlo allí. Las tres acciones deberían liberar el voto, así que espero que una funcione. Si no, podemos tomar el enfoque de rails si es persistente.