El código al que enlacé es para usar WordPress como proveedor de autenticación para Discourse.
El plugin de WordPress también permite que WordPress se use como cliente de DiscourseConnect: wp-discourse/lib/sso-client at main · discourse/wp-discourse · GitHub.
No estoy seguro de cuál fue la motivación para agregar una implementación SSO personalizada a Discourse. Supongo que hubo un caso de negocio para ello.
Un beneficio que proporciona es que permite que un sitio externo se integre estrechamente con Discourse. Por ejemplo, todos los atributos de usuario enumerados aquí se pueden sincronizar con Discourse durante el proceso de autenticación: discourse/lib/discourse_connect_base.rb at 7b89fdead98606d4f47ceb0a1d240d0f6e5f589e · discourse/discourse · GitHub.
También permite que se utilicen sitios que no están configurados para ser proveedores OAuth2 u OpenID Connect para autenticar usuarios en Discourse.
La desventaja es que requiere agregar algo de código personalizado al sitio proveedor de autenticación.