← ClaudeAtlas

orbit-compat-matrixlisted

Multi-version compatibility matrix for a WordPress plugin — runs the gauntlet against PHP 7.4 / 8.1 / 8.3 / 8.5 × WP 6.3 / 6.5 / latest, plus modern-WP feature adoption check (block-template-parts, theme.json schema 3, Interactivity API, etc.). Use when the user says "PHP 7.4 vs 8.x", "WP 6.5 compat", "compatibility matrix", "drop PHP 7 support", "after WP core update", or before bumping `Requires PHP:` / `Requires at least:` in the plugin header.
adityaarsharma/orbit · ★ 1 · Testing & QA · score 55
Install: claude install-skill adityaarsharma/orbit
# 🪐 orbit-compat-matrix — PHP × WP version testing Your plugin runs on the user's site, not yours. Test every version your `Requires PHP:` and `Requires at least:` claim to support. --- ## Quick start — full matrix ```bash # Auto: runs gauntlet against PHP 7.4 / 8.1 / 8.3 + WP 6.3 / 6.5 / latest bash ~/Claude/orbit/scripts/gauntlet.sh --plugin . --mode full --matrix # Manual: explicit versions for php in 7.4 8.1 8.3 8.5; do for wp in 6.3 6.5 latest; do WP_PHP_VERSION=$php WP_VERSION=$wp \ bash scripts/gauntlet.sh --plugin . --mode full mv reports reports-php${php}-wp${wp} done done ``` Output: one report set per (PHP, WP) combination. Compare to find version-specific failures. --- ## Phase 1 — Static PHP compatibility Without booting WP, scan every PHP file for syntax that's invalid on a target version: ```bash bash ~/Claude/orbit/scripts/check-php-compat.sh ~/plugins/my-plugin ``` Catches: - PHP 8.0+ named arguments used in 7.4 codebase - PHP 8.1+ `readonly` properties used where 7.4 support claimed - PHP 8.2+ `#[\Override]` attribute - PHP 8.0+ match expressions - Removed APIs: `each()`, `create_function()`, `mb_ereg_replace_callback` flag Powered by `phpcompatibility/phpcompatibility-wp` (PHPCS sniffs). --- ## Phase 2 — Modern WP feature adoption ```bash bash ~/Claude/orbit/scripts/check-modern-wp.sh ~/plugins/my-plugin ``` Reports both: - **Incompatibilities** with current `Requires at least:` - **Modernization opportunities** — features