He enviado una corrección para el error en el primer mensaje:
Elegí la primera solución porque es la que elimina algo de código de Discourse. La otra, de hecho, añadía código para determinar si hay al menos un tema en la categoría «Sin categoría».
También revisé todos los usos de category.uncategorized? y encontré algunos lugares que podrían no ser necesarios si hiciéramos que «Sin categoría» fuera menos un caso especial y más una categoría normal:
Estos son algunos fragmentos que no interfieren con otras funcionalidades, lo que hace que los cambios sean menos arriesgados, aunque aún no son sencillos.