코드 포지 프로필 필드 및 이후 GitHub 플러그인 개선

참고: 이것은 공식적인 기능 요청이 아니라, 여러분이 생각해보길 바라는 아이디어를 남기는 것입니다 :hugs:

Discourse에는 훌륭한 공식 Discourse GitHub 플러그인이 있습니다. 설정(Settings)을 기반으로 PR 기여에 대해 포럼 회원에게 보상을 제공할 수 있습니다. 하지만 회원이 Github 계정에 연결되어 있지 않을 경우, 항상 회원에게 배정할 수 있는 것은 아닙니다:

제 이해가 맞다면, Github 커밋 이메일 주소와/또는 사용자 이름이 포럼 계정과 일치하지 않을 경우, 매칭이 이루어지지 않아 배지가 부여되지 않을 수 있습니다.

저희 Humane Tech Community에서는 오랫동안 Github 기반 로그인을 활성화하지 않았습니다(저는 아주 최근에 이 기능을 추가했습니다), 대신 저장소를 공동 작업하는 Github 조직이 있습니다. 따라서 정보 제공 조치로, 회원들이 채울 수 있는 ‘Github Account’ 사용자 정의 프로필 필드를 항상 유지해 왔습니다.

여기서 제안하는 Discourse의 추가 기능은 두 부분으로 구성됩니다:

  1. 관리자 설정에서 활성화되는 공식 ‘Code Forge’ 프로필 필드 지원.
  2. 활성화된 경우, 배지 배정 시 ‘Code Forge’ 필드를 먼저 확인(검증?)하는 것.

참고: Code Forge 용어는 ForgeFed에서 가져온 것입니다. ForgeFed는 위치와 사용되는 소프트웨어(github, gitlab, gitea, sourcehut 등)에 관계없이 모든 저장소에 대한 연방형 포지 통합을 목표로 하는 ActivityPub 프로토콜 확장입니다.

검증된 Code Forge 프로필 필드

소개: 저와 제가 함께 일하는 많은 사람들(아마도 오픈소스 운동 전체로 확장할 수 있을 것 같습니다)에게 Github를 OSS 개발에 사용하는 것은 더 이상 당연한 것이 아닙니다. Github는 더 이상 코드 저장소를 호스팅하기 위한 논리적인 첫 번째 선택지가 아닙니다. 예를 들어 저는 가장 자주 Codeberg를 사용하며, Gitlab, 다양한 자체 호스팅 gitlab / gitea 인스턴스 등에 계정을 가지고 있습니다. 제가 모더레이터로 활동하는 Feneas는 Gitlab만 사용합니다. 저는 Discourse 내에서 이러한 다양한 코드 포지(code forge) 선택을 커뮤니티 회원들에게 표현하고 싶습니다.

기능: 관리자 설정에서 제 커뮤니티와 관련 있는 코드 포지들을 설정하고 이를 프로필 필드로 활성화할 수 있습니다. 또한 필드가 검증되고/또는 필수임을 지정할 수도 있습니다(이 기능의 추가 확장 사항은 생략 가능합니다). 회원이 필드를 채우면 다른 회원들에게 정보 제공 목적으로 사용됩니다. 선택적으로(활성화된 경우) 검증이 이루어지는데, 이는 사용자가 설정된 코드 포지로 리다이렉트되고(아마도 GH 로그인과 유사한 OAuth 플로우를 사용하여, 이를 위한 관리자 설정이 존재해야 합니다; ‘GH로 로그인’ 또는 다른 포지 로그인은 활성화될 필요가 없습니다), 확인한 후 Discourse로 돌아오는 방식입니다. 프로필 필드에는 이제 아름다운 검증 체크마크가 표시됩니다. 이는 Mastodon에서 볼 수 있는 것과 유사한 UI를 가질 수 있습니다(다만 rel-"me"를 사용한 검증 방식은 매우 다릅니다). Mastodon에서는 최대 4개의 사용자 정의 프로필 필드를 추가할 수 있습니다:

Discourse Github 플러그인과의 관계

프로필 필드가 존재하고, 특히 필수이고/또는 검증된 경우, Code Forge 배지 배정을 위해 확인할 첫 번째 위치로 사용할 수 있다고 생각합니다. 배지 배정은 Github로만 제한되지 않고 설정된 모든 코드 포지를 기반으로 합니다.

수정: Github 플러그인 개선의 예로 배지 배정을 들었습니다. 하지만 플러그인 자체는 설정된 모든 포지를 지원하도록 공식 Code Forge 플러그인이 될 수 있습니다.