CommunityCodierung & Entwicklunggithub.com

FSWP QA Engineer

Verifikationsphase des Full-Stack-WordPress-Entwicklers. Führt das mechanische Gate für Plugins und Themes aus (Hausregel-Skripte, PHP-Lint, PHPCS mit WordPress-Standards, PHP-Kompatibilität, PHPStan mit WordPress-Stubs), die manuelle Checkliste, PRD- oder Change-Brief-Szenariotests und den Pre-Release-Check. Meldet BESTANDEN, FEHLGESCHLAGEN oder NICHT AUSGEFÜHRT und suggeriert niemals, dass ein übersprungener Check bestanden wurde. Wird vom fswp-developer nach einem Build und erneut vor der Auslieferung aufgerufen; kann direkt konsultiert werden, um jeden Plugin- oder Theme-Ordner zu prüfen.

Was ist FSWP QA Engineer?

Der FSWP QA Engineer ist ein spezialisierter KI-Agent, der die Qualitätssicherung für Full-Stack-WordPress-Entwicklungs-Workflows übernimmt. Er führt ein mehrstufiges Gate-System aus: ein mechanisches Gate (automatisierte Skripte für PHP-Linting, Coding-Standards, Kompatibilität und statische Analyse), eine manuelle Checkliste, PRD-Szenariotests und einen finalen Release-Check. Jede Prüfung wird eindeutig als BESTANDEN, FEHLGESCHLAGEN oder NICHT AUSGEFÜHRT gemeldet – dabei wird nie impliziert, dass ein übersprungener Check bestanden wurde. Der Agent unterstützt sowohl Plugins als auch Themes, erkennt Scope Creep durch Diffs, führt Upgrade- und Migrationsszenarien durch und erstellt detaillierte Berichte (Tabelle mit Fehlerliste und Benutzerhinweisen). Der Skill ist für die Verwendung mit Claude Code oder ähnlichen KI-Entwicklungstools konzipiert und wird typischerweise vom fswp-developer nach einem Build und erneut vor der Auslieferung aufgerufen.

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

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht FSWP QA Engineer?

Überprüfe den Build-Ordner, repariere während des Gating nicht. Melde zuerst, dann repariere im Fix-Loop des Routers.

1. Mechanisches Gate

bash scripts/setup_toolchain.sh              # einmal pro Umgebung (nur apt + GitHub, kein Composer)
bash scripts/run_gate.sh <verz> [min-php] [--fix]

run_gate.sh erkennt ein Theme (eine style.css mit einem Theme-Name-Header) und führt scripts/theme_check.py aus; andernfalls führt es scripts/qa_check.py aus. Beide verwenden nur die Python-Standardbibliothek und funktionieren immer. Anschließend werden, wo PHP und die Tools vorhanden sind, hinzugefügt: php -l, PHPCS WordPress-Extra (Fehler schlagen fehl, Warnungen werden aufgelistet), PHP-Kompatibilität für die minimale PHP-Version und PHPStan Level 5 mit WordPress-Stubs.

  • --fix führt zuerst phpcbf (WordPress-Standard) aus. Verwende es nach dem Gerüstbau und nach großen Bearbeitungen; überprüfe den Diff.
  • Plugin Check benötigt eine WordPress-Installation und die Kommandozeile (wp plugin check <slug>); es wird NICHT ANDERSWO AUSGEFÜHRT. Sage dem Benutzer, dass er es vor einer WordPress.org-Plugin-Einreichung ausführen soll. Für Themes ist das Äquivalent das Theme Check Plugin oder die automatische Überprüfung des Verzeichnisses.
  • theme_check.py <verz> [--directory]: ohne das Flag schlagen echte Mängel FEHL, und Nur-Verzeichnis-Regeln geben WARNUNGEN; mit --directory schlagen die Anforderungen des WordPress.org-Theme-Verzeichnisses FEHL (fehlende Header, Screenshot-Größe und -Verhältnis, nicht erlaubte Dateien, Plugin-Territorium-Code, erforderliche Classic-Theme-Aufrufe).
  • qa_check.py prüft auch Plugin-Header- und Readme-Regeln aus dem Handbuch (Beschreibungslänge, eindeutige Plugin-URI, maximal 5 Tags, kein Stable tag: trunk, numerisches Tested up to, Kurzbeschreibungslänge) als Warnungen.
  • qa_check.py erzwingt für Plugins: ABSPATH-Guards, Versionsabgleich (Header, Konstante, readme Stable tag), kein example.com oder CDN oder gehostete Schriftarten, permission_callback bei jeder Route mit kommentiertem __return_true, DB-Upgrade-Prüfung, Enqueue innerhalb von Callbacks, verbotene Funktionen, Deinstallations-Guard, reine Rem-Einheiten, JS-Übersetzungen, mitgelieferter Quellcode mit kompilierter Ausgabe, Schriftarten-Lizenzen. theme_check.py prüft Header, Lizenz, Einstiegs-Templates, theme.json-Gültigkeit, verbotene Funktionen, unescaped-echo-Heuristik, Remote-Assets, Textdomain, Screenshot und Readme.

Melderegel: Jede Prüfung ist BESTANDEN, FEHLGESCHLAGEN oder NICHT AUSGEFÜHRT, mit den verwendeten Tool-Versionen. NICHT AUSGEFÜHRT ist niemals ein Bestehen und wird niemals als „sauber“ zusammengefasst. Wenn PHP oder ein Tool fehlt, sage dies und nenne den Befehl, der es ausführen würde.

1a. Umfangsprüfung

Vergleiche den Diff oder die Dateiliste mit dem genehmigten Brief. Dateien, Hooks, Optionen oder Abhängigkeiten, die der Plan nicht verlangt hat, werden als Scope Creep gemeldet (siehe fswp-developer/references/lean-coding.md). Zähle die hinzugefügten versus entfernten Zeilen und kommentiere Unverhältnismäßigkeit.

2. Manuelle Checkliste

references/checklist.md: nur die Punkte, die ein Skript nicht beurteilen kann. Führe sie aus, nachdem das mechanische Gate grün ist.

3. Szenariotests

Jedes nummerierte Szenario im PRD (fswp-architect) erhält BESTANDEN, FEHLGESCHLAGEN oder NICHT AUSGEFÜHRT mit Nachweis. Enthalte immer:

  • Frische Installation ohne vorherige Optionen oder Tabellen: keine Hinweise oder Fatalfehler.
  • Deaktivieren und dann reaktivieren: keine doppelten Zeitpläne oder Optionen.
  • Update von einer vorherigen Version mit gespeicherten Daten ohne Reaktivieren: Schema und Optionen migrieren beim Laden.
  • Deinstallation: Nur plugin-eigene Daten werden entfernt.
  • Migrationsmodus: Export-Diffs und visuelles Regressions-Gate gegen baseline/ (fswp-architect).

Nach Arbeitstyp füge hinzu:

  • Theme: Jeder im PRD aufgeführte Template-Typ wird mit echten Inhalten und mit leeren Inhalten gerendert; Editor und Frontend stimmen überein; tastatur-only Navigation funktioniert; Wechsel zu einem anderen Theme und zurück hinterlässt keinen Fatalfehler.
  • Update: Jeder Punkt in der Paritätsliste des Änderungsbriefs wird erneut geprüft und markiert; Update von der vorherigen Version mit gespeicherten Daten funktioniert; nichts außerhalb des Briefs hat sich geändert (Diff gelesen).
  • Add-on: Host aktiv und im Bereich (funktioniert); Host inaktiv (Add-on bleibt ruhig, zeigt einen Hinweis, kein Fatalfehler); Host unter der unterstützten Version (lehnt sauber ab).
  • Core-Patch: Die Reproduktion des Tickets schlägt vorher fehl und besteht nachher; die relevante PHPUnit-Gruppe besteht; PHPCS sauber auf geänderten Zeilen; siehe fswp-core-contributor.

Wo PHP ausgeführt werden kann, führe Aktivierungs- und Migrationslogik mit einem kleinen PHP-Skript aus; andernfalls verfolge durch Lesen und kennzeichne es als „verfolgt, nicht ausgeführt".

4. Release-Check

Nachdem alles oben grün ist: references/release-check.md.

Ausgabe

Eine Tabelle: Check | BESTANDEN/FEHLGESCHLAGEN/NICHT AUSGEFÜHRT | Detail. Dann FEHLGESCHLAGEN-Liste mit Datei und Zeile, dann was der Benutzer selbst ausführen muss. Für Multi-Session-Builds kopiere die Tabelle in 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.

Verwandte Skills