INVOQUEZ CETTE COMPÉTENCE avant de créer toute PR pour garantir la conformité avec la dénomination des branches, les exigences du changelog et l’affectation des relecteurs.

npx skills add https://github.com/automattic/wordpress-activitypub --skill pr

ActivityPub PR Workflow

Branch Naming

PrefixUse
add/{feature}New features
update/{feature}Iterating on existing features
fix/{bug}Bug fixes
try/{idea}Experimental ideas

Reserved: release/{X.Y.Z} (releases only), trunk (main branch).

Pre-PR Review

Scope the review to what changed — don't review every PR:

  • Skip for docs-only (*.md, docs/, README), tooling/config-only (.claude/, .agents/, workflow files), and trivial edits (typo, comment, whitespace). Push these straight to PR.
  • Run the code-review agent only when the branch changes plugin code (PHP/JS/CSS logic). Address any critical issues before proceeding.

PR Creation

Every PR must:

  • Assign @me
  • Add Automattic/fediverse as reviewer
  • Include changelog entry OR "Skip Changelog" label
  • Pass CI checks
  • Merge cleanly with trunk
# Create PR (includes required assignment/reviewer)
gh pr create --assignee @me --reviewer Automattic/fediverse

Use the exact template from .github/PULL_REQUEST_TEMPLATE.md — do not create custom formatting.

Changelog

Write changelog messages for end users, not developers. Users read these in the WordPress plugin update screen. Avoid internal jargon (OOM, batching, N+1), class names, or method names. Describe what the user experiences or what changed from their perspective.

✅ 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.

End all changelog messages with punctuation.

Add manually if forgotten:

composer changelog:add
git add . && git commit -m "Add changelog entry" && git push

See release for complete changelog details.

Workflow

Create Branch

git checkout trunk && git pull origin trunk
git checkout -b fix/notification-issue

Pre-Push Checks

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

See AGENTS.md for complete commands.

Keep Branch Updated

git fetch origin
git rebase origin/trunk
# Resolve conflicts if any
git push --force-with-lease

Special Cases

Hotfixes: Branch fix/critical-issue, minimal changes, add a [Pri] High (or [Pri] BLOCKER) label, request expedited review.

Experimental: Use try/ prefix, mark as draft, get early feedback, convert to proper branch type once confirmed.

Multi-PR features: Create tracking issue, link all PRs, use consistent naming (add/feature-part-1, etc.), merge in order.

Labels

LabelUse
BugBug fixes
EnhancementNew features
DocsDocumentation updates
Code QualityRefactoring, cleanup, etc.
Skip ChangelogNo changelog needed
[Status] Needs reviewReady for review
[Status] In ProgressStill working
[Pri] High / [Pri] BLOCKERUrgent / expedited

Reference

See docs/pull-request.md for complete workflow details.

Plus de skills de automattic

wp-phpstan
automattic
À utiliser lors de la configuration, de l'exécution ou de la correction de l'analyse statique PHPStan dans des projets WordPress (plugins/thèmes/sites) : configuration de phpstan.neon, baselines,…
official
wp-playground
automattic
Utiliser pour les workflows WordPress Playground : instances WP jetables rapides dans le navigateur ou localement via @wp-playground/cli (server, run-blueprint, build-snapshot),…
official
wp-plugin-development
automattic
À utiliser lors du développement de plugins WordPress : architecture et hooks, activation/désactivation/désinstallation, interface d'administration et API de réglages, stockage de données, cron/tâches, sécurité…
official
wp-project-triage
automattic
À utiliser lorsque vous avez besoin d'une inspection déterministe d'un dépôt WordPress (plugin/thème/thème de blocs/WP core/Gutenberg/site complet) incluant les outils/tests/versions…
official
wp-rest-api
automattic
À utiliser lors de la création, de l'extension ou du débogage des points de terminaison/routes de l'API REST WordPress : register_rest_route, classes WP_REST_Controller/controller, schéma/arguments…
official
wp-wpcli-and-ops
automattic
À utiliser lors du travail avec WP-CLI (wp) pour les opérations WordPress : recherche-remplacement sécurisé, export/import de base de données, gestion des plugins/thèmes/utilisateurs/contenu, cron, vidage du cache,…
official
wpds
automattic
À utiliser lors de la création d'interfaces utilisateur exploitant le WordPress Design System (WPDS) et ses composants, tokens, motifs, etc.
official
woocommerce-finalize
automattic
Audit de santé du code et de traçabilité en pré-libération pour les plugins WooCommerce. S'exécute après la revue de code -- se concentre sur le code mort, la duplication, la complexité structurelle, et…
official