I was just curious but is it possible to avoid adding a DiscourseEvent trigger and just add a model callback which checks when the category_id has been changed?
Quando uma das respostas é marcada incorretamente como a resposta correta, o administrador percebe que a categoria está errada e move o tópico para outra categoria. A resposta marcada continua sendo exibida como a resposta correta, mesmo que esse recurso não esteja habilitado na nova categoria.
Nesses casos, o administrador não pode cancelar a resposta marcada. Deve-se alterar a categoria para aquela em que esse recurso está habilitado, cancelar a resposta correta e, em seguida, alterar a categoria novamente.
Seria um pouco mais fácil se os gestores pudessem cancelar a resposta correta em todas as categorias (mesmo naquelas com esse recurso desativado).
Não parece corrigir o problema descrito no OP, que fala sobre um tópico inteiro ser movido para outra categoria onde as soluções não estão ativadas, e não sobre mover algumas postagens para outro tópico. Quando eu movo `personal_messages:username` search filter doesn't work, que é um tópico resolvido, para Feature onde soluções não são permitidas, a solução não é removida e não há aviso.
Desculpe, agora eu entendi o que você está dizendo. Eu estava lendo isso errado, como uma postagem marcada como solução que é movida para fora de uma categoria.
Vou colocar esta na fila para consertar, pois acho que deve ser uma pequena melhoria no trabalho que fizemos com a postagem resolvida.
Atualizamos esse comportamento para que, quando um tópico resolvido for movido para uma categoria que não suporte soluções, a solução aceita será removida do tópico. Notificaremos os administradores sobre isso antes que eles concluam a movimentação: