Runner
The Runner is xyva's execution engine — a neural wrapper around Playwright that adds live streaming, intelligent error analysis, and seamless integration with the rest of the platform.
Execution Modes
| Mode | Scope | Use Case |
|---|---|---|
| All Tests | Entire test suite | Full regression pass |
| Surgical | Specific files or tests | Debugging a single spec |
| Smart Run | Git-affected tests only | Fast feedback on your current changes |
Smart Run
Smart Run analyzes git diff to identify which test files — and which source files they depend on — have changed. Only affected tests execute, cutting feedback time dramatically.
Console
The Runner console streams Playwright output in real time with three enhancements:
- Mojibake Protection — detects and fixes character encoding corruption from child processes
- Error Highlighting — failures render in red with clickable source links
- AI Analysis — click the Brain icon next to any error for instant root-cause analysis
Browser Selection
Choose a target browser before launching:
- Chromium — default, matches Chrome and Edge behavior
- Firefox — Gecko engine for compatibility testing
- WebKit — Safari engine for macOS/iOS parity
Preflight Guard
Before every run, the Runner performs a system check:
✓ Node.js v20.11.0 detected
✓ Playwright 1.52.0 installed
✓ Browser binaries: chromium ✓ firefox ✓ webkit ✓
✓ Environment variables loaded (4 variables, 1 sensitive)Preflight Failure
If any check fails, the run is blocked and the console shows the exact resolution step — for example, npx playwright install webkit to install the missing browser.
Sub-Pages
| Page | Content |
|---|---|
| Execution Modes | All Tests, Surgical, Smart Run explained |
| Browser Selection | Cross-browser testing with device descriptors |
| Console | Live output, error highlighting, AI analysis |
| Debug Mode | Headed browser, step-through, trace viewer |
| CI Integration | GitLab CI, GitHub Actions, headless mode, reports |
Test Hub Integration
Tests launched from the Test Hub arrive in the Runner with their full context — selected scope, bound variables, and dataset rows. The Runner translates this into the appropriate Playwright CLI flags automatically.
Test Hub (scope + data) → Runner (execute) → Intelligence (analyze results)