wsbaserverify-unionlisted
Install: claude install-skill wsbaser/claude-plugins
# Union.Playwright.NUnit E2E Test Generation & Execution
## Pre-flight: Intent Analysis
Before any other steps, analyze the user's intent to determine the testing mode. This determines research depth and scenario generation approach.
### Context Gathering
Run each command separately with a labeled echo prefix so output sections are unambiguous:
```bash
echo "=== BRANCH ===" && git branch --show-current
echo "=== LOG ===" && git log --oneline -5
echo "=== STAGED ===" && git diff --staged --name-only
echo "=== UNSTAGED ===" && git diff --name-only
echo "=== BRANCH_DIFF ===" && git diff develop...HEAD --name-only 2>/dev/null || git diff main...HEAD --name-only 2>/dev/null
```
Parse each section by its label. The `STAGED` section is the output between `=== STAGED ===` and `=== UNSTAGED ===`, the `UNSTAGED` section is between `=== UNSTAGED ===` and `=== BRANCH_DIFF ===`, and so on.
**Target area inference — always applies regardless of mode:**
Use this priority order to determine what the current work is about:
1. **Unstaged changes** (`=== UNSTAGED ===` section) — highest priority. These are the most recent edits, not yet committed.
2. **Staged changes** (`=== STAGED ===` section) — if no unstaged changes.
3. **Branch diff vs develop/main** (`=== BRANCH_DIFF ===` section) — if no local changes at all, scope to everything this branch adds compared to the base branch.
Once you have identified which tier has changes, derive the target area **exclusively** from those file pat