PR を Ready for review に変更
Mark a PR as ready for review and update related issue status. Use this when you've finished implementing changes and want reviewers to check your work.
/plugin marketplace add B16B1RD/cc-zen-workflow/plugin install b16b1rd-zen-workflow@B16B1RD/cc-zen-workflowpr/PR を Ready for review に変更し、関連 Issue の Status を更新する
このコマンドを実行したら、以下のフェーズを順番に実行してください。
| 引数 | 説明 |
|---|---|
[pr_number] | PR 番号(省略時は現在のブランチの PR) |
PR 番号が引数で指定されている場合はその PR を使用。
引数がない場合、現在のブランチから PR を検索:
git branch --show-current
main/master ブランチの場合:
エラー: 現在 {branch} ブランチにいます
Ready for review にする PR を指定してください:
/zen:pr:ready <PR番号>
処理を終了。
現在のブランチに関連する PR を取得:
gh pr view --json number,title,state,isDraft,url,headRefName,body
PR が見つからない場合:
エラー: 現在のブランチに関連する PR が見つかりません
現在のブランチ: {branch}
対処:
1. `/zen:pr:create` で PR を作成
2. または PR 番号を直接指定: `/zen:pr:ready <PR番号>`
処理を終了。
既に Ready for review の場合:
PR #{number} は既に Ready for review です
URL: {pr_url}
処理を終了。
マージ済みまたはクローズ済みの場合:
エラー: PR #{number} は既に{state}されています
状態: {state}
処理を終了。
gh pr ready {pr_number}
成功した場合:
次のフェーズに進む。
失敗した場合:
エラー: PR #{number} を Ready for review に変更できませんでした
考えられる原因:
- 権限不足
- ネットワークエラー
- PR が既にクローズされている
対処:
1. `gh pr view {number}` で PR の状態を確認
2. GitHub Web UI から直接変更を試す
処理を終了。
PR 本文から関連 Issue を抽出:
gh pr view {pr_number} --json body,headRefName
抽出パターン:
Closes #XX, Fixes #XX, Resolves #XXissue-XX パターンzen-config.yml から Project 情報を取得:
github:
projects:
project_number: {number}
owner: "{owner}"
gh api graphql -f query='
query($owner: String!, $repo: String!, $number: Int!) {
repository(owner: $owner, name: $repo) {
issue(number: $number) {
projectItems(first: 10) {
nodes {
id
project {
id
number
}
}
}
}
}
}' -f owner="{owner}" -f repo="{repo}" -F number={issue_number}
gh api graphql -f query='
query($owner: String!, $projectNumber: Int!) {
user(login: $owner) {
projectV2(number: $projectNumber) {
id
fields(first: 20) {
nodes {
... on ProjectV2SingleSelectField {
id
name
options {
id
name
}
}
}
}
}
}
}' -f owner="{owner}" -F projectNumber={project_number}
注意: owner が Organization の場合は user を organization に変更。
gh project item-edit --project-id {project_id} --id {item_id} --field-id {status_field_id} --single-select-option-id {in_review_option_id}
Project が設定されていない場合:
警告: GitHub Projects が設定されていません
Status の更新をスキップします
PR #{number} を Ready for review に変更しました
タイトル: {title}
URL: {pr_url}
関連 Issue: #{issue_number}
Status: In Review
次のステップ:
1. レビュアーにレビューを依頼
2. レビューコメントに対応
3. PR マージ後、Issue は自動クローズされます
関連 Issue がない場合:
PR #{number} を Ready for review に変更しました
タイトル: {title}
URL: {pr_url}
次のステップ:
1. レビュアーにレビューを依頼
2. レビューコメントに対応
3. PR をマージ
エラー: PR #{number} が見つかりません
考えられる原因:
- PR 番号が間違っている
- PR が削除されている
- リポジトリが異なる
対処:
1. `gh pr list` で PR 一覧を確認
2. 正しい PR 番号で再実行
エラー: PR #{number} を変更する権限がありません
対処:
1. リポジトリへの書き込み権限を確認
2. `gh auth status` で認証状態を確認
3. 必要に応じて `gh auth login` で再認証
エラー: GitHub API への接続に失敗しました
対処:
1. ネットワーク接続を確認
2. しばらく待ってから再実行
警告: 関連 Issue が見つかりません
PR #{number} は Ready for review に変更されましたが、
Issue Status の更新はスキップしました。
gh コマンド、git コマンド実行