Skip to content

fix(wework): show thinking below streaming responses - #2154

Merged
qdaxb merged 1 commit into
mainfrom
fix/wework-streaming-thinking
Jul 23, 2026
Merged

qdaxb merged 1 commit into
mainfrom
fix/wework-streaming-thinking

Conversation

@qdaxb

@qdaxb qdaxb commented Jul 23, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • keep the localized “Thinking” indicator visible below partial assistant text while a response is still streaming
  • preserve existing tool-activity de-duplication and remove the indicator when streaming completes
  • add a focused real-Tauri desktop E2E scenario with ready, streaming, and completed screenshots
  • document the focused E2E command in Chinese and English

Root cause

The message renderer only showed the thinking indicator before any visible assistant content existed. Once final text began streaming, the indicator was suppressed even though the response was still active.

Validation

  • pnpm --filter wework test — 200 files, 2002 tests passed
  • Prettier, ESLint, TypeScript, typography, and pre-push quality checks passed
  • pnpm --filter wework e2e:desktop:streaming-text passed in a real Tauri app with real Executor and Codex app-server
  • reviewed the generated ready → partial response with Thinking → completed screenshot chain

Summary by CodeRabbit

  • New Features

    • Added a desktop streaming-text regression test scenario.
    • Added the e2e:desktop:streaming-text command for running the scenario.
    • Added coverage for “Thinking” appearing beneath an in-progress response and disappearing when the response completes.
  • Bug Fixes

    • Improved the streaming message experience so the thinking indicator remains visible alongside partial assistant responses and is removed after completion.
  • Documentation

    • Documented the new desktop streaming-text test and its validation steps in English and Chinese guides.

@coderabbitai

coderabbitai Bot commented Jul 23, 2026 •

Copy link
Copy Markdown
Contributor

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 60183005-44fd-4b19-8a75-e580ffe26856

📥 Commits

Reviewing files that changed from the base of the PR and between 20e3210 and 4961866.

📒 Files selected for processing (7)
  • docs/en/wework/developer-guide/wework-e2e-automation.md
  • docs/zh/wework/developer-guide/wework-e2e-automation.md
  • wework/e2e/desktop/scenarios/streaming-text.scenario.mjs
  • wework/e2e/desktop/task-flow.e2e.mjs
  • wework/package.json
  • wework/src/components/chat/MessageList.test.tsx
  • wework/src/components/chat/MessageList.tsx

📝 Walkthrough

Walkthrough

The PR updates streamed assistant-message thinking-indicator behavior, adds component expectations for the new lifecycle, and introduces a desktop E2E scenario that mocks partial Responses SSE output and verifies screenshots, completion, and scenario-specific Codex configuration.

Changes

Streaming text regression

Layer / File(s) Summary
Thinking indicator rendering and tests
wework/src/components/chat/MessageList.tsx, wework/src/components/chat/MessageList.test.tsx
The indicator now uses streaming state and remains visible alongside streamed content; related tests expect 正在思考 during the updated states.
Streaming-text desktop scenario
wework/e2e/desktop/scenarios/streaming-text.scenario.mjs
Adds a loopback SSE scenario that holds partial assistant output, verifies indicator placement and removal after completion, captures screenshots, and reports diagnostics.
Scenario runner wiring and documentation
wework/e2e/desktop/task-flow.e2e.mjs, wework/package.json, docs/en/wework/developer-guide/wework-e2e-automation.md, docs/zh/wework/developer-guide/wework-e2e-automation.md
Passes scenario output and Codex TOML configuration through the desktop runner, adds the execution script, and documents the scenario in English and Chinese.

Estimated code review effort: 3 (Moderate) | ~30 minutes

Sequence Diagram(s)

sequenceDiagram
  participant DesktopUI
  participant TaskFlow
  participant StreamingScenario
  DesktopUI->>TaskFlow: send streaming-text prompt
  TaskFlow->>StreamingScenario: POST Responses request
  StreamingScenario-->>DesktopUI: partial assistant SSE events
  DesktopUI-->>StreamingScenario: visible reply and thinking indicator
  StreamingScenario-->>DesktopUI: completion SSE events after release
  DesktopUI-->>TaskFlow: completed reply without thinking indicator
Loading

Possibly related PRs

Suggested reviewers: ficohu

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/wework-streaming-thinking

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 Checkov (3.3.8)
wework/package.json

Traceback (most recent call last):
File "/usr/local/bin/checkov", line 2, in
from checkov.main import Checkov
ModuleNotFoundError: No module named 'checkov'


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant