2.0 KiB
2.0 KiB
id, title, status, wave, depends_on, plan, spec
| id | title | status | wave | depends_on | plan | spec | |
|---|---|---|---|---|---|---|---|
| 03-activity-e2e | Quick Chat activity E2E | done | 3 |
|
plan.md | ../../specs/quick-chat-idle-dot/spec.md |
Task 03: Quick Chat Activity E2E
-
Acceptance:
- Desktop and tablet tests prove tab spinner, blue running bubble, emerald finished bubble, and clear-on-open behavior.
- Mobile header and task-switcher tests prove the same state sequence through touch controls.
- WebSocket waits are armed before each message, and all indicator locators are scoped to their entry point.
-
Verification:
cd apps && pnpm install --frozen-lockfile \ && cd web \ && pnpm e2e:run tests/chat/quick-chat-idle-dot.spec.ts \ && pnpm e2e:run --project mobile-chrome tests/chat/mobile-quick-chat-idle-dot.spec.ts -
Files likely touched:
apps/web/e2e/tests/chat/quick-chat-idle-dot.spec.tsapps/web/e2e/tests/chat/mobile-quick-chat-idle-dot.spec.tsapps/web/e2e/tests/chat/quick-chat-helpers.tsonly if a shared activity locator removes duplication
-
Dependencies: Task 02.
-
Parallelism: sequential.
-
Inputs: Spec scenarios, plan
E2E Tests, and the existingwatchWs,openQuickChatWithAgent, andsendQuickChatMessagepatterns. -
Risks: The completion and session-state events use separate streams. Assert the running state before completion, then wait for the semantic completion before the finished assertion.
-
Output contract: Report discovered test counts, exact command results, rendered mobile evidence, blockers, risks, cleanup, and synchronized task and plan status.
Results
- Desktop/tablet command passed: 2 tests covering tab spinner, running state, finished state, and clear-on-open behavior.
- Mobile command passed: 2 tests covering the mobile header and task-switcher lifecycle through touch controls.
pnpm --filter @kandev/web run lint:e2e-sleepspassed.- WebSocket waits are armed before sends and all activity locators are scoped to their entry point.
- No test cleanup or runtime blockers remain for this task.