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.

Write backticks bare in PR bodies and comments. A backslash-escaped backtick renders literally on GitHub, and a single-quoted heredoc needs no escaping anyway.

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

testing-js
automattic
Directives pour vérifier les fichiers JavaScript pour les erreurs de syntaxe
setup
automattic
Vérifier que l'interface en ligne de commande dn est installée et configurée. Utiliser lorsque l'utilisateur installe pour la première fois le plugin domain-names, ou lorsqu'une commande dn échoue parce que l'interface en ligne de commande est…
studio-cli
automattic
Utilisez le Studio CLI pour gérer les sites WordPress locaux, l'authentification et les sites de prévisualisation. Invoquez cette compétence lorsque vous devez exécuter des commandes Studio CLI, gérer…
dn-info
automattic
Obtenez des informations détaillées sur un domaine enregistré à l'aide de l'interface en ligne de commande dn. Utilisez lorsque l'utilisateur souhaite consulter les détails d'un domaine comme la date d'expiration, les serveurs de noms, les contacts,…
qa
automattic
Comparez le contenu WXR extrait avec la page source d'origine, page par page. Repérez les textes, titres, images et liens manquants. Corrigez en patchant le WXR ou…
add-skill
automattic
Ajouter une nouvelle compétence au plugin a8c-design. À utiliser lorsque vous avez créé une compétence Claude Code et que vous souhaitez la contribuer au plugin partagé Automattic a8c-design —…
design-foundations
automattic
Construire un JSON design-foundation cohérent à partir d'un site libéré — rôles sémantiques de couleur/typographie/espacement avec des traces de preuve. Consomme le scaffold partiel…
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,…