メインコンテンツへスキップ

Kodus Review タブとは

Kodus Review タブは、ひとつの問いに答えます。あなたのチームは Kodus の提案に基づいて行動しているか? という問いです。 デプロイ頻度や PR サイクルタイムといった一般的なデリバリーメトリクスを測定する Productivity タブとは異なり、Kodus Review は Kodus そのものに関するものです。すなわち、どれだけの提案が実装されたか、どのカテゴリやルールが定着し、あるいは無視されているか、そしてチームがどこで反発しているかを示します。 すべてのチャートとテーブルは、ページ上部にあるグローバルなリポジトリフィルターと期間フィルターに従います。リポジトリの行、カテゴリのバー、ルールをクリックすると、その背後にある提案までドリルダウンできます。

サマリーカード

カード意味
Implementation rate期間中に送信された提案のうち、チームが実装した割合(%)
Suggestions sent期間中に Kodus が(PR コメントとして)届けた提案の数
Negative vote rateリアクションのうち 👎 が占める割合(前の期間との傾向付き)
Criticals ignored in merged PRsすでにマージされた PR において未実装のまま残された重大な提案 — 対処すべきリスクのリスト

Implementation rate

中核となるメトリクスです。提案は、PR がクローズされた時点での最終ステータスが implemented または partially_implemented であるときに implemented(実装済み) としてカウントされます。
Implementation rate = implemented suggestions ÷ sent suggestions
スコープのルール — すべての implementation-rate チャートで共通です。
  • カウントされるのは**届けられた(delivered)**提案、すなわち実際に PR コメントとして投稿されたものだけです。Kodus がコメント前に除外したドラフトは決してカウントされません。
  • 提案は PR がクローズされた週に帰属します。これは、実装ステータスが確定するのは PR がマージされた時点だけだからです。

週次推移(Week over week)

週次チャートは推移を示し、トグルで切り替えられます。
  • Overall — 単一の implementation-rate ラインを表示します。
  • By severity — 重大度(critical / high / medium / low)ごとに1本のラインを表示し、重大度の高い提案がより多く実装されているかどうかを確認できます。

カテゴリ別・重大度別(By category and by severity)

  • By category — 提案カテゴリごとの送信数と実装数を表示します。バーをクリックすると、そのカテゴリでフィルターされた提案エクスプローラーが開きます。
  • By severity — 重大度レベルごとの実装率です。期待されるのは降順のグラデーション(critical が low より多く実装される)です。フラットまたは逆転して見える場合、重大度がチームの判断の指針になっていないことを意味します。
重大度チャートの「All / Kodus only」トグルは重要です。 Kody ルールは、Kodus によるリスク評価ではなく、あなたがそのルールに設定した重大度を持ちます。両者を混在させるとキャリブレーションの読み取りが歪みます。たとえば、採用率の高い medium の Kody ルールが大量にあると、Kodus が medium を過小評価しているように見えてしまうことがあります。Kodus only に切り替えると、Kodus 自身の重大度キャリブレーションを確認できます。ごく少数の提案に基づくバーは薄く表示され、* でマークされます。ひと握りの提案から得られる 0% や 100% は、本当のシグナルではありません。

ネガティブフィードバック(Negative feedback)

フィードバックは、Kodus の提案コメントに対する 👍 / 👎 のリアクションから得られます。
  • Negative vote rate(サマリーカード) — 👎 ÷ (👍 + 👎) で、前の期間との傾向付きです。低いほど良好です。
  • By category — チームが最も反対しているカテゴリを示します。👎 が多いカテゴリは、再調整または無効化の候補です。
  • Trend — ネガティブな投票の週次推移です。

リポジトリ — ヘルス(Repositories — health)

リポジトリごとのテーブルです。レビューした PR 数、送信した提案数、実装率、👍/👎、そして weakest category(そのリポジトリで最低限のサンプル数があるなかで実装率が最も低いカテゴリ)を表示します。Kodus がどこで定着し、どこで無視されているかを示します。 行をクリックすると、コックピット全体がそのリポジトリにフォーカスされます(リポジトリフィルターで選択した場合と同じです)。

Kody Rules — ヘルス(Kody Rules — health)

各 Kody ルールが期間中にどのように機能しているかを示します。トリガー数、実装率、👍/👎、そしてステータスです。表示されるのはアクティブなルールのみで、削除済みまたは非アクティブなルールは除外されます。これらは対処の対象にならないためです。 ステータスはルールごとに、次の優先順位で算出されます。
ステータス意味推奨アクション
Stale(古い)期間中にトリガーされなかったそのルールがまだ必要かどうかを見直す
Low data(データ不足)トリガーされたが、判断するには回数が少なすぎる(5回未満)より多くのデータがたまるまで待つ
Noisy(ノイズが多い)チームが積極的にダウンボートしている(👎 が3件以上、かつ 👎 が 👍 より多い)ルールのキャリブレーションがずれている — 書き換えるかスコープを絞る(例:テストを除外する)
Ignored(無視されている)頻繁にトリガーされるが、ほとんど実装されない(20%以下)その妥当性を問い直す — チームはそれを重視しているか?
Healthy(健全)上記以外のすべてアクションは不要
NoisyIgnored は似ているように見えますが、求められるアクションは異なります。Ignored は受動的です。ルールは発火するが誰も実装しない状態であり、それがノイズなのか単なる放置なのかは分かりません。Noisy は能動的な反対です。チームが明示的にダウンボートしているため、それがノイズだと分かります。だからこそ、両方に該当するルールは Noisy として表示されます。ダウンボートのほうが、より強く、より行動につながるシグナルだからです。これらのしきい値は妥当なデフォルト値であり、時間をかけて調整される場合があります。

提案エクスプローラー(Suggestions explorer)

あらゆるドリルダウン — カテゴリのバー、ルールの行、「criticals ignored」カード — は、提案エクスプローラーを開きます。これは、その数値の背後にある実際の提案を、フィルター可能でページネーションされたリストとして表示するものです。 フィルター:リポジトリ、カテゴリ、重大度、実装ステータス、Kody ルール、そしてフリーテキスト検索です。各行を展開すると、既存のコードと提案されたコードの対比、および PR コメントへのリンクが表示されます。