PRの特定
このスキルが呼び出されると、更新するPRが明示的に指定される場合もありますが、一般的には、ユーザーが現在作業しているブランチ/コミットからPRが推測されます。通常のGit使用(後述のSapling以外)では、git branch と gh pr view <branch> --repo openai/codex --json number --jq '.number' を組み合わせて、現在のブランチ/コミットに関連するPRを特定する必要がある場合があります。
PR本文の内容
呼び出されたら、gh を使用して、指定されたPRの本文とタイトルをその内容を反映するように編集します。既存のPR本文に保持すべき重要な情報がないか必ず確認してください。たとえば、既存のPR本文にある画像は決して削除しないでください。削除すると、作成者がそれを復元する方法がない可能性があります。
変更を行う理由を説明することが極めて重要です。このスキルが呼び出された現在の会話で動機が議論されている場合は、それをPR本文に必ず含めてください。
本文では「何が」変更されたかも説明する必要がありますが、これは「理由」の後に配置する必要があります。
コミットの「正味の変更」に限定して説明してください。PRの開発過程で試みられたが後に取り消された変更について議論することは、一般的に推奨されません。PR本文を書き換える際には、将来の読者にとって不適切または興味がなくなった場合、このような詳細を削除する必要があるかもしれません。
ローカルディスク上の絶対パスへの参照は避けてください。リポジトリ内のパスについて言及する場合は、単にリポジトリ相対パスを使用してください。
コードネームやOpenAI内部URLなど、機密情報への参照は避けてください。
変更がどのように検証されたかを説明することは一般的に有用です。ただし、CIが自動的にチェックする事項(例:「just fmt を実行した」をテスト計画に含めるなど)は不要です。ただし、PRによって導入された新しい動作を検証するために意図的に導入された新しいテストを特定することは適切な場合が多いです。
Markdownを使用してPRを専門的にフォーマットしてください。インラインでコード要素を参照する場合は、必ず単一のバッククォートで囲んでください。コードを参照したりシェルのトランスクリプトを示す場合は、フェンス付きコードブロックが便利です。また、変更に関連する既存のコードを引用する場合は、GitHubパーマリンクを使用してください。
関連するプルリクエストやIssueがあれば参照してください。ただし、自身のPR本文でそのPR自体を参照する必要はありません。
この変更の結果、https://developers.openai.com/codex のドキュメントを更新する必要がある場合は、PRの最後の方に別のセクションでその旨を記載してください。更新が必要なドキュメントがない場合は、このセクションを省略してください。
スタックの操作
PRが互いに積み重なったコミットのスタックで構成される場合があります。そのような場合、PR本文には、スタック全体としての「正味の」変更を反映させるべきであり、スタックを構成する個々のコミットを反映させるべきではありません。
同様に、ユーザーがSaplingのようなツールを使用して「積み上げ型PR」を活用している場合があり、その場合、PRの base は main ではなく、スタック内の別のPRの head ブランチである可能性があります。この場合、その積み上げられたベースに対して開かれているPRの base と head の間の正味の変更のみを議論し、main に対する変更との比較は議論しないように注意してください。
Sapling
.git/sl/store が存在する場合、このGitリポジトリはSapling SCM(https://sapling-scm.com)によって管理されています。
Saplingでは、以下を実行して現在のリビジョンに関連付けられたGitHubプルリクエストがあるかどうかを確認します:
sl log --template '{github_pull_request_url}' -r .
または、sl sl を実行して、現在の開発ブランチと、現在のコミットに関連付けられたGitHubプルリクエストがあるかどうかを確認できます。たとえば、出力が次のような場合:
@ cb032b31cf 72 minutes ago mbolin #11412
╭─╯ tui: show non-file layer content in /debug-config
│
o fdd0cd1de9 Today at 20:09 origin/main
│
~
@は現在のコミットがcb032b31cfであることを示します。- これは
origin/mainから分岐した単一のコミットを含む開発ブランチです。 - GitHubプルリクエスト #11412 に関連付けられています。