Files
2026-08-24 11:09:03 +00:00

3.3 KiB

id, title, status, wave, depends_on, plan, spec
id title status wave depends_on plan spec
02-aggregate-replacement-e2e Prove one aggregate replacement prompt done 2
01-fifo-send-now-arbitration
plan.md ../../specs/ui/requirements/message-queue-send-now.md

Task 02: Prove one aggregate replacement prompt

Acceptance

  • The desktop header Send Now scenario proves the two or more queued bodies are rendered in one user-message bubble in FIFO order, not merely that all strings eventually appear somewhere in the transcript.
  • The desktop scenario still proves the queue is empty after a successful bulk claim and the replacement turn completes.
  • The existing Pixel 5 Send Now scenario passes against the repaired backend, preserving touch geometry, neighboring-row order, and zero document horizontal overflow.
  • The test does not rely on arbitrary sleeps to establish correctness; it uses visible queue/prompt/idle signals and the existing mock-agent fixtures.

Verification

cd apps/web
pnpm e2e --project=chromium e2e/tests/chat/message-queue.spec.ts --grep 'header Send Now' --retries=0
pnpm e2e --project=mobile-chrome e2e/tests/chat/mobile-message-queue-management.spec.ts --grep 'Send Now' --retries=0

Files Likely Touched

  • apps/web/e2e/tests/chat/message-queue.spec.ts
  • apps/web/e2e/tests/chat/mobile-message-queue-management.spec.ts only if the shared-path assertion needs a focused strengthening

Dependencies

  • Task 01 must pass its focused backend race tests and leave the backend handoff state stable.

Parallelism

Sequential. The browser assertions depend on the backend arbitration contract and share the queue fixtures with the existing mobile scenario.

Inputs

  • The amended spec's one-prompt FIFO handoff scenario.
  • Existing desktop header and row Send Now coverage in message-queue.spec.ts.
  • Existing Pixel 5 coverage in mobile-message-queue-management.spec.ts.
  • data-testid="user-message-bubble" as the transcript-level assertion for a single aggregate user prompt.

TDD Sequence

  1. Strengthen the desktop bulk scenario to locate the replacement user bubble containing the first body and require the second body in that same bubble; run it against the pre-fix implementation to record the expected RED behavior when the FIFO handoff wins.
  2. Run the scenario after Task 01 and assert the queue disappearance and idle transition only after the aggregate bubble is visible.
  3. Re-run the existing mobile Send Now scenario, recording touch-target and overflow evidence; do not alter production UI for this backend repair.

Output Contract

Report the RED/GREEN browser results, the exact single-bubble assertion, the mobile parity and overflow checks, files changed, generated traces/screenshots if any, and cleanup evidence. Mark this task done and update its plan checkbox only after both focused commands pass.

Results

  • Strengthened the desktop bulk scenario with a single user-message-bubble assertion containing all queued bodies in FIFO order.
  • Desktop managed E2E passed: 1 test for the header Send Now scenario.
  • Pixel 5/mobile-chrome managed E2E passed: 1 test covering Send Now without hover, 44px touch geometry, neighboring queue order, and zero horizontal overflow.
  • No production frontend change or generated E2E artifact was required.