Las insignias de Github no funcionan. Es difícil ver si cometí un error o si el plugin no funciona

Parece que no hay forma de agregar problemas a:

De alguna manera, las insignias no parecen funcionar. ¿Estoy haciendo algo mal?
¿Necesitan la URL real del clon del repositorio o la URL del proyecto?
¿Podrían agregar un ejemplo de URLs posibles al archivo README?
¿Puedo simplemente agregar una organización y que todos los repositorios públicos sean considerados para las insignias?
¿Existe algún tipo de retroalimentación visual que pueda indicarme si estoy haciendo algo bien o mal?

¿También puedes explicar exactamente cómo encuentras la asociación del usuario con los commits de GitHub? ¿Esto funciona mediante coincidencia de correo electrónico o de nombre? ¿Qué debo decirle a mi comunidad para que gane insignias de GitHub? ¿Tienen que iniciar sesión a través de GitHub?

Disculpa la demora en responder a tu pregunta. Estoy probando el plugin ahora mismo configurándolo siguiendo esta guía: https://meta.discourse.org/t/discourse-github/99895.

Una diferencia entre la guía y el README del plugin es que la guía indica que se debe generar un token de acceso de GitHub para que se otorguen las insignias. Ese token de acceso debe agregarse a la configuración github linkback access token de tu sitio antes de que se otorguen las insignias.

Para crear un token de acceso, ve a Sign in to GitHub · GitHub. Si solo vas a usar el token para otorgar insignias, no deberías necesitar seleccionar ningún ámbito. Simplemente baja hasta el final de la página y haz clic en el botón Generate Token.

La otra configuración necesaria para las insignias es la opción del sitio github badges repo. Ingresa la URL completa de cada uno de tus repositorios de GitHub para los que deseas que se otorguen insignias. La URL que ves en la barra de direcciones de tu navegador funcionará para esto.

El plugin crea 6 insignias:

  • Contribuidor
  • Gran contribuidor
  • Contribuidor increíble
  • Committer
  • Committer frecuente
  • Committer increíble

Las primeras tres insignias de la lista se habilitan automáticamente cuando son creadas por el plugin. Las últimas tres insignias de la lista deben habilitarse manualmente desde tu página de Administración / Insignias.

El número de commits requerido para las insignias de Committer frecuente y Committer increíble se puede configurar con las opciones del sitio github silver badge min commits y github gold badge min commits.

Un último punto a tener en cuenta sobre las insignias es que se otorgan mediante un trabajo en segundo plano que se ejecuta cada 4 horas. Esto significa que puedes esperar hasta un retraso de 4 horas entre el momento en que el usuario estuvo activo en GitHub y el momento en que se le otorga la insignia.

Los usuarios se encuentran basándose en la dirección de correo electrónico del commit de GitHub. En la mayoría de los casos, esta será la dirección de correo electrónico del usuario. Para los usuarios que han configurado Git para usar la dirección de correo electrónico sin respuesta de GitHub (<username>@users.noreply.github.com), el plugin intenta encontrar al usuario basándose en la parte del nombre de usuario de esa dirección de correo electrónico. Lo hace buscando una coincidencia de nombre de usuario en la tabla GithubUserInfo de Discourse. Los usuarios solo se encontrarán de esta manera si han iniciado sesión previamente en Discourse a través de GitHub.

También estoy revisando la funcionalidad de linkback del plugin. Actualizaré el README del plugin y la guía del plugin en Meta muy pronto.

Si estás configurando el plugin en un sitio que alojamos, puedes obtener soporte privado para esto enviando un correo electrónico a la dirección de soporte que se proporciona en el panel de administración de tu sitio.

Muchas gracias por esta explicación detallada. Realmente ha sido de gran ayuda.

Tengo una sugerencia para una funcionalidad del plugin que probablemente no sea muy difícil de implementar. Como administrador, conozco a los ingenieros clave con los que mi equipo interactúa en GitHub y en el foro, por lo que sabemos ambas identidades. ¿Crees que sería posible asociar manualmente un usuario de Discourse con una cuenta de GitHub a través de la configuración del plugin? De esta manera, se podría habilitar este plugin incluso cuando no logra encontrar al usuario automáticamente.