| name | poocommerce-code-review |
| description | Review PooCommerce code changes for coding standards compliance. Use when reviewing code locally, performing automated PR reviews, or checking code quality. |
PooCommerce Code Review
Review code changes against PooCommerce coding standards and conventions.
Critical Violations to Flag
Backend PHP Code
Consult the poocommerce-backend-dev skill for detailed standards. Using these standards as guidance, flag these violations and other similar ones:
Architecture & Structure:
Naming & Conventions:
Documentation:
- ā Missing
@since annotations - Required for public/protected methods and hooks (code-entities.md)
- ā Missing docblocks - Required for all hooks and methods (code-entities.md)
- ā Verbose docblocks - Keep concise, one line is ideal (code-entities.md)
Data Integrity:
- ā Missing validation - Must verify state before deletion/modification (data-integrity.md)
Testing:
- ā Using
$instance in tests - Must use $sut variable name (unit-tests.md)
- ā Missing
@testdox - Required in test method docblocks (unit-tests.md)
- ā Test file naming - Must follow convention for
includes/ vs src/ (unit-tests.md)
Frontend JS/TS Code
Architecture & Structure:
- ā Barrel self-import (circular dependency) ā a JS/TS file anywhere in the monorepo importing from its own package barrel (
from '../', from '../../', from '../index', from '../../index') when that barrel re-exports it. Relevant to SWC TDZ / esbuild tree-shaking / tsc incremental builds. Fix: use the direct module path instead.
UI Text & Copy
Consult the poocommerce-copy-guidelines skill. Flag:
- ā Title Case in UI - Must use sentence case (sentence-case.md)
- Wrong: "Save Changes", "Order Details", "Payment Options"
- Correct: "Save changes", "Order details", "Payment options"
- Exceptions: Proper nouns (WooPayments), acronyms (API), brand names
Review Approach
- Scan for critical violations listed above
- Cite specific skill files when flagging issues
- Provide correct examples from the skill documentation
- Group related issues for clarity
- Be constructive - explain why the standard exists when relevant
Output Format
For each violation found:
ā [Issue Type]: [Specific problem]
Location: [File path and line number]
Standard: [Link to relevant skill file]
Fix: [Brief explanation or example]
Notes
- All detailed standards are in the
poocommerce-backend-dev, poocommerce-dev-cycle, and poocommerce-copy-guidelines skills
- Consult those skills for complete context and examples
- When in doubt, refer to the specific skill documentation linked above