## Что это
E2E harness для ROX.ONE на Playwright:
- Electron-mode (`playwright._electron.launch`) запускает реальное приложение под xvfb на Linux CI
- Page Object Model: `ChatPage`, `WorkspacePage`, `SettingsPage`, `EmbedPage`
- Fixtures: `freshWorkspace`, `seededSession`, `mockedSource` через test.extend
- Retry policy: 1× retry на flaky-tests, отмеченных `@flaky`, max 10% всех tests
- Trace recording при failure: video + DOM snapshots + network log
- Slow-test budget: e2e suite ≤ 10 min на release gate
Компоненты: `tests/e2e/`, `playwright.config.ts`, GitHub Actions `e2e-xvfb` job. Параллелизация: 4 workers × shard.
## Зачем
Unit + component tests не ловят integration-level bugs: window-level events, IPC, focus management, embed lifecycle. E2E с реальным Electron — единственный способ caught это до release. Retry policy балансирует stability с rigour.
## Источники вдохновения
- [Vinyzu/Botright](https://github.com/Vinyzu/Botright) — undetected browser automation с E2E stealth
- [tailscale/github-action](https://github.com/tailscale/github-action) — CI infrastructure для private network testing
- [openai/symphony](https://github.com/openai/symphony) — isolated agent runs для e2e fixture isolation
## 🔗 Linear
- [PZD-421](https://linear.app/kuhjie/issue/PZD-421) — backing ticket