- Playwright e2e against Vite dev server (LoginScreen renders, homeserver
visible, version pinned). Fallback documented to swap to `wails dev
-browser` via WAILS_DEV_URL when full backend bindings are required.
- Go integration tests (//go:build integration,goolm) for Start +
ListRooms + LoadTimeline + SendText + GetDiagnostics against real
Synapse. Skip cleanly if MATRIX_INTEGRATION_TOKEN/USER env vars unset
so CI never breaks unattended.
- pnpm e2e/e2e:ui/e2e:report scripts. Per-run keyring namespace +
t.TempDir XDG_CONFIG_HOME so integration tests don't clobber the
production keyring entry.
E2E.md explains how to run each layer + limits (OIDC not automated).