test: expand e2e coverage — composer interactions, panels, settings, recovery - #12
Merged
Conversation
…recovery New specs: - composer.spec.ts: slash-command picker, @file context picker, thinking level roundtrip, model picker popover, queued-message steering, esc abort — the everyday interaction surface. - panels.spec.ts: files tree + markdown preview, context usage/stats + export path, subagent snapshot listing, settings roles editor + catalog filter + save roundtrip, theme toggle persistence. - flows: deny approval branch, stopped-session auto-restart on open, resume dialog (mock history) end-to-end, second browser joining a live session. - layout ladder now also covers the session-list page per viewport. Harness: - prepare-env.mjs seeds a fixture project for the files/@-picker tests; the default cwd points at it. - mock host accepts OMP_WEB_MOCK_STEP_MS to lengthen the canned turn so tests can act mid-turn instead of racing the drain. Stabilization notes baked into the tests: the composer textbox must be located by role alone (its accessible name comes from the placeholder, which flips mid-turn), "streaming…" is the real mid-turn signal (the textarea is visible in every state), and pending pills are distinguished from flushed user bubbles by their container.
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.
What
Fills the coverage gaps from the audit in #11 (composer interaction surface, side panels, settings, failure recovery, plus the session-list page in the viewport ladder). ~20 new assertions on top of the existing harness; no new infrastructure beyond a seed script.
New
composer.spec.ts— the everyday surface:set_thinking_level→thinking_level_changed→ chip re-renders)New
panels.spec.ts:data-themeand persists across reloadflows.spec.ts additions: deny approval branch, stopped-session auto-restart on open, resume dialog (mock history) end-to-end, and a second browser context joining a live session (frame fan-out + live transcript).
layout.spec.ts: the per-viewport ladder now also covers the session-list page (header uniqueness + overflow), not just the session page.
Harness changes
e2e/scripts/prepare-env.mjsseeds a fixture project; the server's default cwd points at it (drives files panel and @-picker with deterministic content).OMP_WEB_MOCK_STEP_MSto lengthen the canned turn so tests can act mid-turn instead of racing the drain.Stabilization notes (baked into the tests as comments)