Contribuidor Principal do FSWP

Guia um contribuidor através da criação ou localização de um ticket no Trac, configuração do repositório wordpress-develop e ambiente de teste, escrita de um patch ou pull request seguindo os padrões de código, documentação inline, compatibilidade retroativa e testes, e preparação do comentário do ticket; também roteia alterações no bloco-editor para o repositório Gutenberg e relatórios de segurança para o processo privado.

O que é Contribuidor Principal do FSWP?

Esta skill orienta desenvolvedores Full-Stack WordPress a contribuir com o núcleo do WordPress. Ela cobre todo o fluxo de trabalho: desde rotear corretamente o tipo de mudança (segurança, PHP, bloco-editor, plugins, etc.), até encontrar ou criar um ticket no Trac, configurar o ambiente de desenvolvimento com Docker e Node, escrever código seguindo os padrões de codificação e documentação do WordPress, garantir compatibilidade retroativa, adicionar testes PHPUnit, e preparar a submissão via diff ou pull request. A skill enfatiza que o usuário é quem realiza os envios finais, e que alterações no bloco-editor devem ser direcionadas ao repositório Gutenberg. Ao final, antes de entregar, a skill recomenda executar o `fswp-qa-engineer` com o checklist do Core para validar a correção.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/syncwin/fswp-developer/tree/main/skills/fswp-core-contributor

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que Contribuidor Principal do FSWP faz?

Fundamental (sempre aplicado): fswp-developer/references/lean-coding.md (escreva menos, reutilize primeiro), fswp-developer/references/coding-standards.md (padrões de codificação, docs, i18n, acessibilidade) e fswp-security-engineer (entrada, saída, autorização).

Os fatos do fluxo de trabalho aqui foram verificados em relação ao Manual do Contribuidor Principal em 2026-09-28. Os processos do Core mudam; confirme qualquer coisa sensível ao tempo em fswp-developer/references/official-docs.md antes de aconselhar. Nada aqui envia nada: o usuário arquiva tickets e abre pull requests por conta própria (a automação do GitHub é reservada, veja fswp-developer/references/github-foundation.md).

Roteie a mudança primeiro

A mudança está em...Vai para
Uma vulnerabilidadeO processo de segurança privado vinculado no manual do Core. Nunca um ticket público ou PR. Pare e diga isso.
PHP, telas administrativas, APIs, testes, a maioria do código do CoreTicket no Trac mais patch ou pull request contra WordPress/wordpress-develop (esta skill)
O bloco-editor (pacotes Gutenberg, interface do editor, Editor do Site)Issues e pull requests em WordPress/gutenberg; o Core recebe atualizações de lá. Leia o guia de contribuição desse repositório.
Um bug de plugin ou temaNão é Core; use fswp-maintainer e relate para aquele projeto
DocumentaçãoO processo da equipe de docs do manual relevante

Ticket primeiro

  1. Pesquise no Trac (https://core.trac.wordpress.org/) pelo sintoma. Leia o histórico do ticket e quaisquer patches.
  2. Se não existir ticket, elabore um: título preciso, versões do WordPress/PHP, passos para reproduzir, esperado vs real, e por que é um defeito (um bug) versus uma melhoria. O usuário o arquiva no componente correto.
  3. Observe palavras-chave de fluxo de trabalho no ticket (por exemplo, uma solicitação de testes unitários) e siga-as.

Ambiente

Use o checkout de desenvolvimento, não um site normal:

  1. Clone WordPress/wordpress-develop (espelho Git do repositório canônico, que é gerenciado em Subversion).
  2. Docker e Node são necessários para o fluxo de trabalho padrão. A partir da raiz do checkout: npm install, npm run build:dev, npm run env:start, npm run env:install.
  3. Execute os testes PHP com npm run test:php. Passe argumentos do PHPUnit após travessão duplo, por exemplo -- --group formatting. Testes marcados com @ticket são executados por número do ticket como um grupo. Multisite tem sua própria configuração (-c tests/phpunit/multisite.xml); testes AJAX executam com --group ajax.
  4. Fluxos de trabalho sem Docker (Composer, PHAR do PHPUnit) existem; veja a página do PHPUnit no manual.

Escrevendo a mudança

  • Crie um branch a partir do trunk; nomeie o branch com o número do ticket (por exemplo 12345-short-description). Mantenha a mudança focada em um ticket.
  • Padrões de codificação: Padrões WordPress PHP, JS, CSS e HTML, incluindo condições Yoda, tabs, espaçamento e regras de escape/sanitização. Execute o PHPCS nos arquivos alterados.
  • Documentação inline: PHPDoc para funções, hooks e classes novos ou alterados no estilo do Core, com @since definido para a versão que o marco do ticket nomeia.
  • Compatibilidade retroativa: O Core quase nunca quebra comportamento público. Deprecie (_deprecated_function() e similares) em vez de remover; mantenha filtros e actions estáveis; preserve assinaturas de funções.
  • Testes: adicione ou atualize testes PHPUnit que falham antes e passam depois, marcados com @ticket. Um patch de bug sem teste geralmente é solicitado a adicionar um.
  • Segurança e desempenho: mesmas regras de qualquer código WordPress (fswp-security-engineer, fswp-performance-engineer), com um padrão mais elevado.
  • Não inclua formatação ou refatoração não relacionada.

Submissão (feita pelo usuário)

  • Anexe um arquivo .diff ao ticket do Trac nomeado com o número do ticket, ou abra um pull request contra WordPress/wordpress-develop que referencie o ticket. Pull requests são usados para revisão; eles não são mesclados no GitHub, porque os committers fazem commit através do repositório canônico.
  • Poste um comentário no ticket: o que o patch faz, como você testou, passos que um testador pode seguir e quaisquer perguntas em aberto. Elabore-o para o usuário usando references/ticket-comment-template.md.
  • Espere revisão, solicitações de alterações e um ciclo lento. Responda no ticket, atualize o patch e mantenha-o rebaseado no trunk.

Verifique antes de entregar

Execute fswp-qa-engineer com o checklist do Core: a reprodução falha antes e passa depois, o grupo de teste relevante passa, os padrões de codificação estão limpos nas linhas alteradas, a documentação está presente e a BC está intacta.

Individual skills in this repo

This repo contains 9 individual skills — each has its own dedicated page.

fswp-api-developer

Domain skill for WordPress REST API and Abilities API work in Full-Stack WP Developer. Covers registering routes with schemas, argument validation and sanitization, permission callbacks, controller classes, exposing post types and meta, authentication (cookie nonce, application passwords), pagination and errors, and registering abilities with input and output schemas and safety annotations. Use for any custom endpoint or machine-readable capability in a plugin or theme.

fswp-architect

Planning stage of Full-Stack WP Developer. Classifies the work (new plugin, new theme, update to an existing plugin or theme, add-on for another product, or WordPress Core patch), triages existing code with a bundled detection script, asks one round of essential questions, does competitive research, and produces one reviewable PRD or change brief with a single approval gate. Also covers Migration mode and multi-session handoff docs. Invoked by fswp-developer before any code is written; consult directly for PRD, change-brief, or handoff-doc questions.

fswp-block-developer

Domain skill for WordPress block editor work in Full-Stack WP Developer. Covers building custom Gutenberg blocks (block.json, static and dynamic rendering, attributes, supports, InnerBlocks, variations, deprecations, block bindings), block patterns, and the Interactivity API (data-wp directives, stores, server-side state), with the @wordpress/scripts build workflow. Use for any custom block, pattern, or front-end interactivity in a plugin or theme.

fswp-devops-engineer

Domain skill for WordPress development tooling in Full-Stack WP Developer. Covers local environments (wp-env with Docker, WordPress Playground and Blueprints), command-line site operations (plugin and theme management, database export, search-replace, cron, scaffolding), coding standards and static analysis (PHPCS with WordPress standards, PHPStan with WordPress stubs), PHP and JS testing setup, and the @wordpress/scripts toolchain. Use when setting up, running, or automating a WordPress dev or test environment.

fswp-maintainer

Change stage for existing WordPress code in Full-Stack WP Developer. Updates, fixes, refactors, and upgrades existing plugins and themes without breaking them, and builds add-ons for products you do not own (WooCommerce extensions, page-builder elements, extensions of other plugins) using hooks instead of edits to third-party files. Covers reading before changing, parity lists, deprecation, host compatibility, upgrade paths, and patch delivery. Invoked by fswp-developer after an approved change brief; consult directly for safe-change or add-on questions.

fswp-qa-engineer

Verification stage of Full-Stack WP Developer. Runs the mechanical gate for plugins and themes (house-rule scripts, PHP lint, PHPCS with WordPress standards, PHP compatibility, PHPStan with WordPress stubs), the manual checklist, PRD or change-brief scenario tests, and the pre-release check. Reports PASS, FAIL, or NOT RUN and never implies a skipped check passed. Invoked by fswp-developer after a build and again before delivery; consult directly to audit any plugin or theme folder.

fswp-reviewer

Independent review stage of Full-Stack WP Developer. Reviews a finished WordPress plugin, theme, add-on, or Core patch through a security lens (WordPress-specific vulnerabilities, REST and AJAX authorization with an API risk map, AI-generated-code risks), a quality lens (error handling, data and upgrade safety, performance, i18n, accessibility, comment accuracy, test gaps, class and type design, scope), and an optional lean lens for trimming over-engineering, reporting only high-confidence findings in a fixed format. Invoked by fswp-developer after the verify gate, normally through the fswp-code-reviewer agent; consult directly to review or optimize any WordPress code.

fswp-theme-developer

Theme build stage of Full-Stack WP Developer. Builds custom WordPress themes - block themes (theme.json, templates, template parts, patterns, style variations), classic themes (template hierarchy, functions.php, theme supports), hybrids, and child themes - with accessibility, escaping, and directory readiness built in, plus a scaffold script. Invoked by fswp-developer after an approved PRD for a new theme; consult directly for a specific theme pattern. For changes to an existing theme use fswp-maintainer.

syncwin/fswp-plugin-developer

Plugin build stage of Full-Stack WP Developer. House standards and code templates for real WordPress plugins (not shortcode snippets) - folder anatomy, activation/uninstall lifecycle, custom post types and tables, admin UI tiers, front-end output on the Atomic Framework, REST and cron, i18n, distribution, and the Tier 3 React admin stack - plus a scaffold script. Also the base structure for add-ons. Invoked by fswp-developer after an approved PRD; consult directly for a specific plugin build pattern.

Habilidades Relacionadas