HeyDeer Review チェック
HeyDeer は、各レビューを HeyDeer Review という名前の GitHub チェックで報告します。ここでは、その結果の意味と、マージをブロックさせる方法を説明します。
チェックに表示される内容
チェックは HeyDeer がレビューしたコミットに付きます。レビューの進捗を表示し、完了すると下記のいずれかの結論になります。Details リンクから HeyDeer でレビューを開けます。
Autopilot が PR に対応している間、チェックは Autopilot が停止して HeyDeer がレビューを公開するまで進行中のままです。
デフォルトでは、指摘事項があってもチェックは失敗しません。指摘事項が修正されるか見送られるまでマージをブロックするには、問題が見つかった場合はチェックを失敗にするをオンにし、チェックを必須にします。
要約の冒頭には、指摘事項、未解決の以前の問題、失敗したリポジトリのチェックの数が示されます。フォローアップレビューの場合は、HeyDeer が前回のレビュー以降の変更だけをレビューしたかどうかも記載されます。
その下には、レビューの全内容が表示されます。レビューの注意事項、すべての指摘事項、議論で見送られた懸念、そして自動承認がオンの場合は承認の判断です。レビューの読み方を参照してください。
マージ前にチェックを必須にする
- チェックが存在するように、リポジトリで少なくとも 1 件のプルリクエストを HeyDeer にレビューさせます。
- GitHub でベースブランチのブランチ保護ルールまたはルールセットを開き、必須ステータスチェックをオンにします。
- HeyDeer Review を追加し、ソースとして HeyDeer を選択します。
- HeyDeer で、ワークスペース設定 → レビュールール → 結果の公開、またはリポジトリのレビュールールにある問題が見つかった場合はチェックを失敗にするをオンにします。
GitHub は Success、Neutral、Skipped を合格として扱い、Failure、Action required、Timed out、Cancelled をブロックとして扱います。
HeyDeer がリポジトリでチェックを公開するようになると、プルリクエストが更新されるたびにチェック結果が作成されるため、必須チェックがいつまでも待機し続けることはありません。
手動のみのリポジトリでは、そこで最初のレビューが行われるまで HeyDeer はチェックを公開しません。自動レビューを参照してください。
チェックが表示されない場合は、トラブルシューティングを参照してください。
問題が見つかった場合はチェックを失敗にする
この設定はデフォルトでオフのため、完了したレビューは指摘事項を報告した場合でも成功になります。
オンにすると、フィードバックの範囲内の指摘事項(既存の会話に紐づくものを含む)や、未解決または未確認の以前の問題がある場合にチェックが失敗します。書き込み権限を持つ人が見送った問題は数えません。以前の問題を参照してください。
レビューの注意事項があるレビューも失敗します。自動でレビューされなかった一部のコミットでは、Skipped ではなく Action required が表示されます。結論を参照してください。
結論
| 結論 | タイトル | 条件 |
|---|---|---|
| Success | レビューが完了しました。問題は見つかりませんでした / レビューが完了し、指摘事項があります / 以前の問題の確認が必要です / レビューが完了しました(注意事項あり) | レビューが完了し、確認が必要な事項がない場合。問題が見つかった場合はチェックを失敗にするがオフの場合は、指摘事項や以前の問題があるレビューも含みます。 |
| Neutral | レビューが完了していません / レビューが完了し、指摘事項があります / レビューに確認が必要な点があります | 設定にかかわらず確認が必要な質問がある場合。または、レビューの注意事項があり、問題が見つかった場合はチェックを失敗にするがオフの場合。 |
| Failure | レビューで対応が必要な問題が見つかりました / 以前の問題の確認が必要です / レビューが完了していません / レビューを実行できませんでした / レビューに失敗しました | 問題が見つかった場合はチェックを失敗にするがオンの場合:指摘事項、以前の問題、またはレビューの注意事項がある。設定にかかわらず:リポジトリのチェックが実行されなかった、以前の問題が再確認されなかった、または HeyDeer がレビューを開始または完了できなかった。 |
| Timed out | レビューがタイムアウトしました | レビューが制限時間を超えた場合。 |
| Cancelled | レビューはキャンセルされました / レビュー結果は無効になりました | レビューがキャンセルされた場合。または、ベースブランチが変わったか、このコミットを最新のコミットとするオープンな PR がなくなったために、結果が当てはまらなくなった場合。 |
| Skipped | レビューをスキップしました / レビュー対象のファイルがありません | 自動レビューのフィルターによってプルリクエストが除外された場合(デフォルトではドラフト、フォークからの PR、依存関係の更新)、または変更されたファイルがすべてレビューの対象外の場合。PR が変更されたために HeyDeer が自動レビューを停止した場合も、チェックはスキップされます。 |
| Skipped または Action required | レビューをスキップしました / レビューが必要です | 手動のみ、PR ごとに 1 回、PR での一時停止、またはPR ごとの自動レビュー上限により、自動レビューが実行されませんでした。ワークスペースのクレジット不足や使用量の上限到達、リポジトリが別のワークスペースの無料クレジットに紐づいていることが理由の場合もあります。問題が見つかった場合はチェックを失敗にするがオンの場合は Action required となり、マージをブロックします。 |
HeyDeer がコミットを自動でレビューしなかった場合は、タイトルに理由が表示されます。たとえば、PR がPR ごとの自動レビュー上限に達した場合です。
コミットがレビューされなかった場合やレビューが完了しなかった場合は、次に何をすべきかが要約に記載されます。通常は @heydeer review とコメントするよう案内されます。トラブルシューティングも参照してください。
チェックからレビューを依頼する
Re-run、Re-run all、このリビジョンをレビューボタンは、いずれも @heydeer review とコメントした場合と同じように、そのチェックのコミットのレビューを依頼します。このリビジョンをレビューは、次のステップがレビューである場合に表示されます。PR コメントのコマンドを参照してください。
HeyDeer が依頼を受け付けられない場合、チェックはそのまま変わりません。理由を確認するには、@heydeer review とコメントします。
マージキュー
マージキューでは、キュー内の各プルリクエストがレビュー要件を満たしていることをチェックが確認します。結合後のコードはレビューせず、クレジットも消費しません。マージグループのチェックは引き続き CI で行ってください。
複数のオープンな PR がコミットを共有する場合
最新のコミットが同じオープンな PR は、1 つのチェックを共有します。このチェックは、すべての PR のレビューでマージが許可される場合にのみ成功します。要約には各 PR の完全なレポートへのリンクが表示されます。
共有チェックには「このリビジョンをレビュー」ボタンがないため、代わりに対象の PR でレビューを依頼してください。