test(web): lifecycle & chrome scenarios — workspace flow, reload recovery, dark mode
One tiny recorded text turn drives three whole-page concerns: - workspace flow over the real wire: the empty-state hero's first send materializes a real Workspace + Session (the jsdom workspace-flow suite pins this state machine over the fixture client; this scenario pins it through HTTP RPC + SSE + the gateway). Durable proof: the session header's cwd is the create-by-name target <workspaceRoot>/workspace. Adds the hero waiting-state aria golden. - reload recovery: collapse the sidebar (persisted dsh.layout.panels), page.reload, and the surface comes back whole from persistence alone — layout collapsed, selection restored (dsh.sessions.current), the recorded turn re-rendered from session.history with zero model calls (the drained replay cursor makes any stray request fail loud at close). - dark mode: no product control flips the theme yet, so the scenario drives the ThemeService's entire DOM contract — body[data-ds-dark-theme] — and pins the shipped cascade: the alias token flips, a painted surface repaints, and removing the attribute restores the light sample exactly. TODO(web-theme-gesture) upgrades to a real settings control; no theme golden per the lane's scope ruling (aria is color-blind). Agent Note scenario list extended in both languages; pairing re-recorded.
This commit is contained in:
35
apps/web/tests/snapshots/lifecycle-chrome/hero.expected.md
Normal file
35
apps/web/tests/snapshots/lifecycle-chrome/hero.expected.md
Normal file
@@ -0,0 +1,35 @@
|
||||
- button "Collapse sidebar":
|
||||
- img
|
||||
- button "New session":
|
||||
- img
|
||||
- text: New Session
|
||||
- text: Workspaces
|
||||
- button "Group by":
|
||||
- img
|
||||
- button "Create workspace":
|
||||
- img
|
||||
- button "Search sessions":
|
||||
- img
|
||||
- textbox "Search name, keywords..."
|
||||
- tree "Sessions": No sessions yet
|
||||
- button "Settings":
|
||||
- img
|
||||
- text: Settings
|
||||
- text: Let's start building
|
||||
- button "Choose workspace":
|
||||
- img
|
||||
- text: workspace
|
||||
- img
|
||||
- textbox "Describe what you want to build"
|
||||
- button "Add attachment":
|
||||
- img
|
||||
- combobox "Plan mode":
|
||||
- option "Plan" [selected]
|
||||
- option "Agent"
|
||||
- combobox "Access mode":
|
||||
- option "Read-only" [selected]
|
||||
- option "Read-write"
|
||||
- combobox "Model":
|
||||
- option "DeepSeek-V4-Pro High" [selected]
|
||||
- option "DeepSeek-V4-Pro"
|
||||
- button "Send message" [disabled]
|
||||
Reference in New Issue
Block a user