Run a basic E2E behavioral probe — one primary scenario smoke test for the grooming step.
Scanned 9/12/2026
Install to Claude Code
npx -y skills add wp-media/wp-rocket --skill e2e --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of E2e?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/wp-media-e2e)More formats (shields.io, HTML) on the badges page.
---
name: e2e
description: Run a basic E2E behavioral probe — one primary scenario smoke test for the grooming step.
---
# E2E SKILL — Basic tier
## Config
This skill targets `wp-media/wp-rocket`:
- `E2E_URL` = `http://localhost:8888`
- `E2E_BOOT` = `bash bin/dev-up.sh`
- `E2E_SETTINGS` = `http://localhost:8888/wp-admin/options-general.php?page=wprocket`
The local WordPress environment is at `http://localhost:8888` (admin / password). Boot
or restart it with `bash bin/dev-up.sh`.
This skill provides a single behavioral probe using the Playwright MCP and `curl`. WP Rocket
does **not** commit Playwright specs — this skill never writes, commits, or publishes test
artifacts. It exists only to verify one primary scenario quickly.
---
## Basic tier — behavioral probe
**Purpose:** behavioral verification and smoke tests. Fast enough to fit inside a planning
agent's execution window.
**Invoker:**
- `grooming-agent` — verify behavioral assumptions about the current system *before*
writing the spec. Use to confirm: does the current feature behave as described in the
issue? What does the current API or AJAX endpoint return for the scenario being changed?
### Anti-rationalization table
| You'll be tempted to say | Why you can't |
|---|---|
| "The environment probably isn't up, I'll skip" | Run `bash bin/dev-up.sh`. It's idempotent. If it fails, log `SKIP` with the reason — do not silently omit the step. |
| "The change is backend-only, no need to smoke it" | The primary happy path must be verified. A backend change with no observable behavior change still needs a confirming assertion. |
| "I already read the code, I know it works" | "Seems right" never closes a task. Run the scenario. |
| "One scenario is too slow for this stage" | Basic tier is exactly one primary scenario. The cost is acceptable. |
### Process
1. Boot the environment (idempotent — safe to run if already up):
```bash
bash bin/dev-up.sh
```
If the script exits non-zero, set `status: "SKIP"`, note the reason, and do not block
the pipeline.
2. Run the primary happy path scenario from the spec or grooming plan.
**Backend / AJAX / REST:**
```bash
# Public REST or AJAX
curl -s -X POST http://localhost:8888/wp-admin/admin-ajax.php \
-H "Cookie: $(cat .wp-session-cookie 2>/dev/null)" \
-d 'action=<action>&nonce=...'
# Cache headers
curl -sI http://localhost:8888/ | grep -E '(x-cache|cf-cache)'
```
**Browser (settings page, dashboard notices, interactive UI):**
Use the Playwright MCP directly for the basic-tier smoke:
```
mcp__playwright__navigate({ url: "http://localhost:8888/wp-login.php" })
# login
mcp__playwright__fill({ selector: "#user_login", value: "admin" })
mcp__playwright__fill({ selector: "#user_pass", value: "password" })
mcp__playwright__click({ selector: "#wp-submit" })
# primary scenario
mcp__playwright__navigate({ url: "http://localhost:8888/wp-admin/options-general.php?page=wprocket" })
mcp__playwright__snapshot({})
# Inspect snapshot output to confirm expected element/text is present
```
Take at most 1–2 screenshots if helpful, but do not publish them.
3. Report:
```json
{
"status": "PASS|FAIL|SKIP",
"scenarios_tested": ["Settings page loads without errors after enabling X option"],
"details": "Logged in as admin, navigated to the WP Rocket settings page, confirmed no JS console errors and X toggle present"
}
```
`SKIP`: `bash bin/dev-up.sh` failed or environment unreachable. Record reason. Do not
block the pipeline.
### Boundaries
- Do: verify the **one primary scenario** from the spec or grooming plan
- Do: probe current-system behavior (grooming-agent only) when an assumption needs verification
- Do not: cover all acceptance criteria — that belongs to the `qa-engineer` + `e2e-qa-tester` path
- Do not: write, commit, or publish Playwright specs — WP Rocket does not commit Playwright specs
- Do not: publish screenshots
---
## Project-specific notes
- The boot script `bash bin/dev-up.sh` is **idempotent**. Always run it before testing — don't pre-check whether the environment is up. Seed data with `bash bin/dev-seed.sh` if needed.
- Admin credentials: `admin` / `password`.
- Settings page URL: `http://localhost:8888/wp-admin/options-general.php?page=wprocket`.
- Plugin activation check:
```bash
wp plugin list --name=wp-rocket
```
- The basic tier never writes Playwright spec files and is invoked by grooming-agent only. Implementation agents (backend-agent, frontend-agent) do not invoke the e2e skill — full E2E validation belongs to the qa-engineer + e2e-qa-tester tier.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!