CommunityProgramación y desarrollogithub.com

fswp-qa-engineer

Etapa de verificación del desarrollador Full-Stack WP. Ejecuta la puerta mecánica para plugins y temas (scripts de reglas internas, PHP lint, PHPCS con estándares de WordPress, compatibilidad PHP, PHPStan con stubs de WordPress), la lista de verificación manual, pruebas de escenarios del PRD o resumen de cambios, y la comprobación previa al lanzamiento. Reporta PASS, FAIL o NOT RUN y nunca da a entender que una verificación omitida pasó. Es invocado por fswp-developer después de una compilación y nuevamente antes de la entrega; consúltelo directamente para auditar cualquier carpeta de plugin o tema.

¿Qué es fswp-qa-engineer?

FSWP QA Engineer es la etapa de garantía de calidad dentro del flujo de trabajo de un desarrollador Full-Stack de WordPress. Su función principal es verificar carpetas compiladas de plugins y temas sin realizar correcciones durante la validación; primero reporta los fallos para que luego se corrijan en el bucle de corrección del enrutador. La habilidad ejecuta una puerta mecánica que incluye análisis de sintaxis PHP (php -l), PHPCS con los estándares WordPress-Extra, compatibilidad con la versión mínima de PHP, y PHPStan nivel 5 con stubs de WordPress. También realiza verificaciones específicas según si se trata de un tema o un plugin, como la detección de headers, reglas de licencia, y archivos prohibidos. Además, ejecuta una lista de verificación manual para elementos que no pueden automatizarse, pruebas de escenarios basadas en el PRD (incluyendo instalación limpia, actualización desde versiones anteriores, desinstalación, y modo de migración), y una comprobación previa al lanzamiento. Todas las pruebas reportan PASS, FAIL o NOT RUN, y la herramienta nunca omite un resultado ni lo da por aprobado si no se ejecutó. Es compatible con entornos donde se ejecuten scripts bash y Python (usando solo la biblioteca estándar), y se utiliza típicamente en plataformas como Claude Code, Cursor o Codex dentro del flujo de desarrollo de WordPress.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/syncwin/fswp-developer/tree/main/skills/fswp-qa-engineer

Installed? Explore more Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

FSWP QA Engineer

Verifique la carpeta compilada, no corrija durante la validación. Reporte primero, luego corrija en el bucle de corrección del enrutador.

1. Puerta mecánica

bash scripts/setup_toolchain.sh              # una vez por entorno (solo apt + GitHub, sin Composer)
bash scripts/run_gate.sh <dir> [min-php] [--fix]

run_gate.sh detecta un tema (un style.css con un encabezado Theme Name) y ejecuta scripts/theme_check.py; de lo contrario ejecuta scripts/qa_check.py. Ambos usan solo la biblioteca estándar de Python y siempre funcionan. Luego añade, donde existan PHP y las herramientas: php -l, PHPCS WordPress-Extra (los errores fallan, las advertencias se listan), compatibilidad PHP para la versión mínima de PHP, y PHPStan nivel 5 con stubs de WordPress.

  • --fix ejecuta phpcbf (estándar de WordPress) primero. Úselo después del andamiaje y después de ediciones grandes; revise el diff.
  • Plugin Check necesita una instalación de WordPress y la línea de comandos (wp plugin check <slug>); NO SE EJECUTA en otros lugares. Indique al usuario que lo ejecute antes de enviar un plugin a WordPress.org. Para temas, el equivalente es el plugin Theme Check o la revisión automatizada del directorio.
  • theme_check.py <dir> [--directory]: sin la bandera, los defectos reales generan FAIL y las reglas solo de directorio generan WARN; con --directory, los requisitos del Directorio de Temas de WordPress.org generan FAIL (encabezados faltantes, tamaño y proporción de la captura de pantalla, archivos no permitidos, código de territorio de plugins, llamadas requeridas de temas clásicos).
  • qa_check.py también verifica las reglas de encabezado de plugin y readme del manual (longitud de descripción, URI de Plugin única, máximo 5 etiquetas, sin Stable tag: trunk, Tested up to numérico, longitud de descripción corta) como advertencias.
  • qa_check.py exige, para plugins: protecciones ABSPATH, coincidencia de versiones (encabezado, constante, etiqueta Stable tag del readme), sin example.com ni CDN ni fuentes alojadas, permission_callback en cada ruta con __return_true comentado, verificación de actualización de BD, encolado dentro de callbacks, funciones prohibidas, protección de desinstalación, unidades solo de rem, traducciones JS, código fuente incluido con la salida compilada, licencias de fuentes. theme_check.py verifica el encabezado, licencia, plantillas de entrada, validez de theme.json, funciones prohibidas, heurística de echo sin escapar, activos remotos, dominio de texto, captura de pantalla y readme.

Regla de reporte: cada verificación es PASS, FAIL o NOT RUN, con las versiones de herramientas utilizadas. NOT RUN nunca es un aprobado y nunca se resume como "limpio". Si falta PHP o una herramienta, dígalo y nombre el comando que la ejecutaría.

1a. Verificación de alcance

Compare el diff o la lista de archivos con el resumen aprobado. Los archivos, hooks, opciones o dependencias que el plan no solicitó se reportan como desviación de alcance (consulte fswp-developer/references/lean-coding.md). Cuente las líneas agregadas versus eliminadas y comente sobre la desproporción.

2. Lista de verificación manual

references/checklist.md: solo los elementos que un script no puede juzgar. Ejecútela después de que la puerta mecánica esté en verde.

3. Pruebas de escenarios

Cada escenario numerado en el PRD (fswp-architect) obtiene PASS, FAIL o NOT RUN con evidencia. Siempre incluya:

  • Instalación limpia sin opciones ni tablas previas: sin avisos ni errores fatales.
  • Desactivar y luego reactivar: sin programaciones ni opciones duplicadas.
  • Actualización desde datos almacenados de una versión anterior sin reactivar: el esquema y las opciones migran al cargar.
  • Desinstalación: solo se eliminan los datos propiedad del plugin.
  • Modo de migración: exportar diffs y puerta de regresión visual contra baseline/ (fswp-architect).

Según el tipo de trabajo, añada:

  • Tema: cada tipo de plantilla que el PRD lista se renderiza con contenido real y con contenido vacío; el editor y el front-end coinciden; la navegación solo con teclado funciona; cambiar a otro tema y volver no deja errores fatales.
  • Actualización: cada elemento en la lista de paridad del resumen de cambios se vuelve a verificar y marcar; la actualización desde los datos almacenados de la versión anterior funciona; nada fuera del resumen cambió (leer el diff).
  • Complemento: anfitrión activo y en rango (funciona); anfitrión inactivo (el complemento permanece en silencio, muestra un aviso, sin error fatal); anfitrión por debajo de la versión compatible (rechaza limpiamente).
  • Parche del núcleo: la reproducción del ticket falla antes y pasa después; el grupo relevante de PHPUnit pasa; PHPCS limpio en las líneas cambiadas; consulte fswp-core-contributor.

Donde se pueda ejecutar PHP, ejercite la lógica de activación y migración con un pequeño script PHP; de lo contrario, rastree leyendo y etiquételo como "rastreado, no ejecutado".

4. Verificación de lanzamiento

Después de que todo lo anterior esté en verde: references/release-check.md.

Salida

Una tabla: verificación | PASS/FAIL/NOT RUN | detalle. Luego lista de FAIL con archivo y línea, seguido de lo que el usuario debe ejecutar por sí mismo. Para compilaciones de varias sesiones, copie la tabla en HANDOFF.md.

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-core-contributor

WordPress Core contribution stage of Full-Stack WP Developer. Guides a contributor through finding or filing a Trac ticket, setting up the wordpress-develop checkout and test environment, writing a patch or GitHub pull request that follows Core coding standards, inline documentation, backward compatibility and tests, and preparing the ticket comment; also routes block-editor changes to the Gutenberg repository and security reports to the private process. Invoked by fswp-developer for Core patches; consult directly for Core workflow questions.

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

Skills relacionados