より広いコミュニティのマージリクエストトリアージ

GitLab.com プロジェクトで広いコミュニティから開かれた新しいマージリクエストをトリアージするためのガイドライン

GitLab では、私たちのミッションはすべての人が貢献できるよう、あらゆる創造的な作業を読み取り専用から読み書き可能に変えることです。GitLab はコミュニティの貢献を高く評価しており、コミュニティのコード貢献を引き続き成長させたいと考えています。GitLab はコミュニティが gitlab-org グループ配下のプロジェクトおよび gitlab-com/www-gitlab-com プロジェクトに対して Issue を提出し、マージリクエストを開くことを奨励しています。これらの貢献は価値あるものであり、できる限り効果的に処理する必要があります。その中心となるのがトリアージ — タイプと製品グループによる分類プロセスです。

GitLab チームメンバーであれば誰でもマージリクエストをトリアージできます。未トリアージのマージリクエスト数を少なく保つことはメンテナビリティに不可欠であり、私たち全員の共同責任です。他の業務と並行していくつかのマージリクエストをトリアージしたり、定期的に時間をスケジュールすることを検討してください。

新たに受け取るコミュニティからのマージリクエストのトリアージはいくつかの部門に分かれています。Quality 部門はトリアージの自動化を維持し、マージリクエストコーチが部分的なマージリクエストトリアージを担い、最終的にトリアージの自動化がトリアージプロセスを完了させます。さらに、Developer Relations Engineeringがコミュニティコラボレーションの取り組みを推進し、GitLab への貢献に対してサポートと認識を受けられるようコミュニティと連携します。

gitlab-org グループのマージリクエストトリアージ

トリアージレベル(gitlab-org

3 つのトリアージレベルを定義しています。

初期トリアージ(gitlab-org

マージリクエストは以下の条件を満たすと初期トリアージ済みとみなされます:

  • ~"Community contribution" ラベルが適用されている
  • プロセスの詳細とともに @gitlab-bot による「ありがとう」メッセージが投稿されている

初期トリアージは Developer Relations Engineering チームによってコミュニティ貢献お礼メモのリアクティブトリアージ自動化を通じて自動化されています。

部分トリアージ(gitlab-org

マージリクエストは以下の条件を満たすと部分的にトリアージ済みとみなされます:

部分トリアージはマージリクエストコーチによって新しく作成されたコミュニティマージリクエストトリアージレポートを通じて完了されます。

Issue に関連する MR の場合、以下のクイックアクションを使用して適切なメタデータを確認することで部分トリアージを完了できます:

/copy_metadata <issue link>

完全トリアージ(gitlab-org

完全トリアージはコミュニティのマージリクエストの状態に応じて 3 つのサブカテゴリに分かれています。

オープンなマージリクエストの完全トリアージ(gitlab-org

マージリクエストは以下の条件を満たすと完全トリアージ済みとみなされます:

  • workflow::ready for review ラベルが付いている
  • レビュアーが割り当てられている
マージ済みマージリクエストの完全トリアージ(gitlab-org

マージリクエストは以下の条件を満たすと完全トリアージ済みとみなされます:

  • ~"Community contribution" ラベルが付いてマージされたマージリクエストにマイルストーンが設定されている。

このトリアージプロセスは Developer Relations Engineering チームによって Triage Operations のコミュニティマージリクエストへのマイルストーン追加のスケジュールされたトリアージ自動化を通じて自動化されています。

非アクティブなマージリクエストのトリアージポリシー(gitlab-org

非アクティブなマージリクエストポリシーは、GitLab チームが積極的なマージリクエストに取り組む時間を確保し、古いマージリクエストが劣化した状態に陥るのを防ぐために作成されました。これは GitLab チームメンバーがマージリクエストを前進させようとする 2 つのしきい値を設けることで実現しています。

Developer Relations Engineering チームメンバーはコミュニティマージリクエストの注意が必要トリアージレポートを通じて、最初のしきい値に達したマージリクエストを前進させようとします。

それが成功しない場合、2 番目のしきい値でエンジニアリングマネージャーが決断を下します。あなたの努力を大切にしています — そのため、マージリクエストをクローズするすべての決断は人間が行い、自動化されていません。

より広いコミュニティのマージリクエストトリアージ SLO(gitlab-org

コミュニティの貢献は価値があり、コミュニティへの迅速なフィードバックとエンゲージメントの向上を確保するためにできる限り効果的に処理する必要があります。そのために以下のサービスレベル目標(SLO)を定義します:

トリアージレベルまたは応答メトリクスSLO
初期トリアージ2 時間(自動化済み
部分トリアージ7 日
マージ済みマージリクエストの完全トリアージ1 日(gitlab-org/gitlab では自動化済み
レビュアー割り当てまでの時間2 時間(自動化済み

SLO が満たされない場合は Developer Relations Engineering チームに連絡してください。

gitlab-com/www-gitlab-com プロジェクトのマージリクエストトリアージ

トリアージレベル(gitlab-com/www-gitlab-com

GitLab ウェブサイトは GitLab.org とは異なるチームが所有・管理しているため、追加のトリアージプロセスを定義する必要があります。

初期トリアージ(gitlab-com/www-gitlab-com

上記の gitlab-org グループと同じです。

完全トリアージ(gitlab-com/www-gitlab-com

完全トリアージはコミュニティのマージリクエストの状態に応じて 3 つのサブカテゴリに分かれています。

オープンなマージリクエストの完全トリアージ(gitlab-com/www-gitlab-com

マージリクエストは以下の条件を満たすと完全トリアージ済みとみなされます:

通常、レビュアーはマージリクエストが更新したページのコードオーナーです。コードオーナーが割り当てられていない場合、トリアージャーはそのページが属する関連チームに連絡してレビュアーを特定します。

アイドル状態のマージリクエストの完全トリアージ(gitlab-com/www-gitlab-com

マージリクエストは以下の条件を満たすと完全トリアージ済みとみなされます:

このトリアージプロセスは GitLab ウェブサイトコミュニティチームのメンバーまたは関連するコードオーナーによってケースバイケースで手動で行われます。

より広いコミュニティのマージリクエストトリアージ SLO(gitlab-com/www-gitlab-com

コミュニティの貢献は価値があり、コミュニティへの迅速なフィードバックとエンゲージメントの向上を確保するためにできる限り効果的に処理する必要があります。そのために以下のサービスレベル目標(SLO)を定義します:

トリアージレベルトリアージ SLO
初期トリアージ2 時間(自動化済み
レビュアー割り当てまでの時間7 日(自動化済み
アイドル状態のマージリクエストの完全トリアージ7 日

SLO が満たされない場合は、マージリクエストで @gitlab-com-community に連絡してください。