1. プロジェクトガバナンス

iFayは、透明な意思決定とコミュニティ参加を確保するために、階層型ガバナンスモデルを採用しています。複数の独立したサブプロジェクト(FayID、Ego、各種プロトコル、FayGer、iFACTSなど)を包含するオープンスタンダードエコシステムとして、貢献の調整と仕様の一貫性を維持するために、明確なガバナンス構造が不可欠です。

ガバナンス階層

コントリビューター

iFayエコシステムに貢献するすべての個人がコントリビューターです。貢献には以下が含まれますが、これらに限定されません:

  • Issueを提出して問題を報告したり提案を行う
  • Pull Requestを提出してコードやドキュメントに貢献する
  • GitHub DiscussionsやSEPの議論に参加する
  • ドキュメントの翻訳を支援する
  • コミュニティ内で他のメンバーを支援する

メンテナー

メンテナーは、特定のサブプロジェクトまたはワーキンググループの日常管理と技術的意思決定を担当します。iFayのメンテナーはドメインごとに組織されています。例えば:

  • FayIDメンテナー:アイデンティティシステムを担当
  • Egoメンテナー:パーソナライゼーションモデルを担当
  • プロトコルメンテナー:Faying、Telepathy、ICP、CAP、DTP、SSPなどのプロトコルを担当
  • FayGerメンテナー:ランタイム環境を担当
  • iFACTSメンテナー:コンプライアンステストスイートを担当
  • ドキュメントメンテナー:ドキュメントと多言語翻訳を担当

メンテナーはそれぞれのドメイン内で独立して技術的意思決定を行うことができますが、ドメイン横断的な影響や重大な変更を伴う場合は、コアメンテナーレベルにエスカレーションする必要があります。

コアメンテナー

コアメンテナーは、iFay仕様の全体的な方向性と進化を担当します。その責務には以下が含まれます:

  • SEP(仕様拡張提案)の承認
  • サブプロジェクト間の一貫性の調整
  • プロジェクトロードマップの策定と調整
  • 新しいメンテナーの追加の承認

コアメンテナーは、仕様全体の一貫性と品質を確保するために、多数決によりメンテナーの決定を覆すことができます。

リードメンテナー(BDFL)

リードメンテナーはプロジェクトの最終意思決定者であり、現在はプロジェクト創設者が務めています。コアメンテナーが合意に達することができない場合、リードメンテナーが最終決定権を持ちます。

基本原則

  • メンバーシップは個人に帰属し、企業には帰属しません。 メンテナーは、雇用主の商業的利益よりもプロトコルとコミュニティの利益を優先します。これにより、オープンスタンダードとしてのiFayの中立性が確保されます。
  • すべての決定は透明に記録されます。 重要な決定の議論プロセスと結果はGitHub上で公開記録され、すべてのコミュニティメンバーがアクセスできます。
  • メンテナーは独立して決定できますが、エスカレーションも可能です。 メンテナーはそれぞれのドメイン内で自律性を持ちますが、決定がドメイン横断的な影響を伴う場合や議論がある場合は、コアメンテナーレベルにエスカレーションできます。
  • コアメンテナーはメンテナーの決定を覆すことができます。 コアメンテナーは多数決によりメンテナーの決定を覆すことができます。これは仕様全体の一貫性を確保するための保護メカニズムです。

メンテナーの責務

各メンテナーは以下の責務を果たす必要があります:

  • コミュニティのコントリビューターと積極的に交流し、IssueやPRに迅速に対応する
  • それぞれの担当領域のコードと仕様を維持・改善する
  • ドキュメント作成とロードマップ計画を支援する
  • コミュニティのアイデアやフィードバックをコアメンテナーに伝達する
  • 関連するSEPの議論とレビューに参加する

メンテナーになるには

メンテナーになるためのプロセス:

  1. サブプロジェクトまたはドメインに対して継続的かつ高品質な貢献を行う
  2. 既存のメンテナーから推薦を受ける
  3. コアメンテナーが推薦を審査し承認する

すべてのコントリビューターが積極的に参加し、技術力と協調精神を発揮することを奨励します。メンテナーの地位は継続的な貢献に対する認定であり、特権ではありません。