pr について
WordPress ActivityPub プラグインのコントリビューター向け PR ワークフローのスキルです。ブランチ規則、レビュー基準、PR の要件、変更履歴、緊急修正や実験の手順をまとめています。
主な機能
- 01ブランチ命名規則
- 02変更範囲に応じたコードレビュー
- 03PR の要件とテンプレート
- 04ユーザー向け変更履歴の指針
- 05緊急修正と実験ブランチの手順
活用シーン
- 01機能追加や修正のブランチ作成
- 02コードレビューが必要かの判断
- 03提出前の PR、CI、変更履歴の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ automattic/ wordpress-activitypub --skill prインストール後、Claude Code で/prを入力して読み込まれたか確認します。
詳細
ActivityPub PR ワークフロー
ブランチの命名
| Prefix | 用途 |
|---|---|
add/{feature} | 新機能 |
update/{feature} | 既存機能の改善 |
fix/{bug} | バグ修正 |
try/{idea} | 実験的なアイデア |
予約済み: release/{X.Y.Z}(リリース専用)、trunk(メインブランチ)。
PR 前のレビュー
レビュー範囲は変更箇所に限定します。すべての PR をレビューする必要はありません。
- ドキュメントのみ(
*.md、docs/、README)、ツールや設定のみ(.claude/、.agents/、ワークフローファイル)、および軽微な編集(誤字、コメント、空白)の場合は、レビューを省略します。そのまま PR にプッシュしてください。 - ブランチでプラグインのコード(PHP/JS/CSS のロジック)を変更する場合にのみ、code-review エージェントを実行します。続行する前に、重大な問題があれば対処してください。
PR の作成
すべての PR で必須:
@meを割り当てるAutomattic/fediverseをレビュアーとして追加する- 変更履歴の項目を含める、または「Skip Changelog」ラベルを付ける
- CI チェックに合格する
- trunk と問題なくマージできる
# Create PR (includes required assignment/reviewer)
gh pr create --assignee @me --reviewer Automattic/fediverse
.github/PULL_REQUEST_TEMPLATE.md のテンプレートをそのまま使用してください。独自の書式は作成しないでください。
PR の本文とコメントでは、バッククォートをエスケープせずに記述してください。バックスラッシュでエスケープしたバッククォートは GitHub 上で文字として表示されます。また、シングルクォートで囲んだヒアドキュメントでは、そもそもエスケープは不要です。
変更履歴
変更履歴のメッセージは、開発者ではなくエンドユーザー向けに書いてください。 ユーザーは WordPress プラグインの更新画面でこれを読みます。内部用語(OOM、バッチ処理、N+1)、クラス名、メソッド名は避けてください。ユーザーがどのような体験をするか、またはユーザーの視点から何が変わったかを説明してください。
✅ Fix automatic cleanup of old activities failing silently on sites with many items.
✅ Add a Site Health check that warns when plugins are causing too many federation updates.
❌ Fix collection purge methods to batch deletions and enforce a hard item cap.
❌ Add Site Health test to detect excessive outbox activity rates.
すべての変更履歴メッセージの末尾に句読点を付けてください。
忘れた場合は手動で追加してください:
composer changelog:add
git add . && git commit -m "Add changelog entry" && git push
変更履歴の詳細については、release を参照してください。
ワークフロー
ブランチの作成
git checkout trunk && git pull origin trunk
git checkout -b fix/notification-issue
プッシュ前のチェック
composer lint # PHP standards (composer lint:fix to auto-fix)
npm run lint:js # If JS changed
npm run lint:css # If CSS changed
npm run env-test # Run tests
npm run build # If assets changed
コマンドの詳細については、AGENTS.md を参照してください。
ブランチを最新の状態に保つ
git fetch origin
git rebase origin/trunk
# Resolve conflicts if any
git push --force-with-lease
特別なケース
ホットフィックス: fix/critical-issue ブランチを作成し、変更を最小限に抑え、[Pri] High(または [Pri] BLOCKER)ラベルを付けて、迅速なレビューを依頼します。
実験的な変更: try/ プレフィックスを使用し、ドラフトとしてマークして早期にフィードバックを得ます。内容が確定したら、適切な種類のブランチに切り替えます。
複数 PR にまたがる機能: トラッキング用のイシューを作成し、すべての PR を関連付け、一貫した命名(add/feature-part-1 など)を使用し、順番にマージします。
ラベル
| ラベル | 用途 |
|---|---|
Bug | バグ修正 |
Enhancement | 新機能 |
Docs | ドキュメントの更新 |
Code Quality | リファクタリング、クリーンアップなど |
Skip Changelog | 変更履歴は不要 |
[Status] Needs review | レビュー可能 |
[Status] In Progress | 作業中 |
[Pri] High / [Pri] BLOCKER | 緊急/迅速な対応が必要 |
参照
ワークフローの詳細については、docs/pull-request.md を参照してください。