feat(ui): add Playwright e2e smoke tests with UI-scoped CI#57
Merged
Conversation
5 Chromium smoke tests covering the critical UX paths: - Shell + main landmark renders on home - Cmd/Ctrl+K opens the command palette, Escape closes it - Palette navigates to Documents - Chord hotkey `g,g` navigates to Graph - Theme toggle to Light persists across reload API calls are stubbed at the pathname boundary (`^/api/`, `^/mcp/`) so Vite's dev module requests under `src/hooks/api/**` are not intercepted — earlier attempts caught those as JSON and Chromium rejected the module scripts. CI workflow `.github/workflows/playwright.yml`: - Triggers only on PRs (and main pushes) that touch `ui/**` or the workflow itself — Go-only PRs stay fast. - Chromium only, browser cache keyed on Playwright version. - Uploads playwright-report artifact + failure traces. Vitest excludes `e2e/**` to keep the two suites disjoint; tsconfig.e2e.json references give the editor proper types without polluting the app build. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Why
Component tests in jsdom don't catch real browser issues (layout, keyboard, service worker, reduced-motion). A lean Playwright smoke suite guards the hot UX paths without slowing down Go-only PRs.
Notes
Test plan
🤖 Generated with Claude Code