Cuentas asociadas deshabilitadas cuando está habilitado el segundo factor

Por alguna razón que no entiendo, Discourse no permite a los usuarios conectar ni gestionar cuentas externas ya vinculadas (por ejemplo, una cuenta de Discord asociada). El código de Discourse parece utilizar la siguiente lógica para determinar si un usuario puede actualizar sus cuentas asociadas:

    secondFactorEnabled,
    canCheckEmails,
    isAnonymous
  ) {
    if (secondFactorEnabled || !canCheckEmails || isAnonymous) {
      return false;
    }
    return findAll().length > 0;

¿Por qué secondFactorEnabled es una variable que se tiene en cuenta aquí?

Mis usuarios están muy confundidos porque han terminado en una situación extraña. Se registraron en nuestro sitio web, asociaron su cuenta con una cuenta de Discord para obtener acceso a nuestro servidor de Discord y luego activaron la autenticación de dos factores (2FA) en su cuenta. Después de hacerlo, ¡toda la sección «Cuentas asociadas» desapareció de su página de perfil! Ya no pueden ver ni gestionar su cuenta asociada mientras la autenticación de dos factores esté activada.

Tenemos otro usuario muy confundido porque creó su cuenta, activó la autenticación de dos factores y no pudo seguir nuestras instrucciones para añadir una cuenta asociada, ya que la sección «Cuentas asociadas» nunca apareció para él desde el principio.

Lo único que tienen en común estos dos usuarios, en comparación con otros usuarios que no presentan el problema, es que ambos tienen activada la autenticación de dos factores.

Me gustaría ofrecer a mis usuarios la opción de tener tanto la autenticación de dos factores activada en su cuenta del foro como la capacidad de asociar su cuenta con una cuenta de Discord.

Estoy clasificando esto bajo la categoría #soporte, pero no estoy seguro de si en realidad es un #contribuir:bug. De todos modos, parece que no hay ninguna solución alternativa sin realizar cambios en el código de Discourse.

2 Me gusta