Los nombres de usuario con caracteres rusos, por ejemplo фыв (no estoy seguro si depende de los caracteres específicos), a veces fallan en la validación.
Probado en las últimas versiones de Chrome y Firefox en Ubuntu 19.10. La versión de Discourse es 2.4.0.beta8 (16de46f8d4).
No puedo reproducir el problema. ¿Hay alguna posibilidad de que hayas ingresado algún tipo de espacio en blanco invisible o algo similar cuando te mostró el mensaje de error “solo debe incluir números, letras, guiones, puntos y guiones bajos”?
La verificación de nombre de usuario se ejecuta en el servidor, por lo que si hubiera un problema con la expresión regular, siempre debería generar los mismos resultados para la misma entrada.
Pensé que podría estar relacionado con algún tipo de limitación de velocidad, pero ahora obtuve el error incluso después de una pausa larga (2 minutos) en la primera solicitud, y luego éxito en la tercera solicitud en varios segundos.
Puedo reproducirlo ejecutando el código anterior en DevTools.
Aún no he podido reproducir el problema. ¿Podrías intentar desactivar y volver a activar la configuración del sitio unicode usernames? Es posible que un trabajador de unicornio no haya recibido la notificación del cambio en la configuración. Eso explicaría por qué solo algunas solicitudes generan un error. Si eso no ayuda, intenta reconstruir el contenedor de la aplicación.
No sirvió de nada, pero sí, tampoco puedo reproducirlo en mi instancia local de Docker y parece que desapareció después de reiniciar al actualizar Discourse.
Por cierto, si alguien busca una forma más sencilla de permitir las letras rusas, parece que esta expresión regular funciona: [\p{Cyrillic}]