Repository navigation
fix(mobile): copy only the message text in the message details sheet - #6280
Conversation
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Executive SummaryThe Copy-message scoping is correct: Files Reviewed (8 files)
Previous Review Summary (commit 4173d28)Current summary above is authoritative. Previous snapshots are kept for context only. Previous review (commit 4173d28)Status: 2 Issues Found | Recommendation: Address before merge Executive SummaryThe new Overview
Issue Details (click to expand)CRITICAL
SUGGESTION
Files Reviewed (9 files)
Reviewed by deepseek-v4.1-flash · Input: 0 · Output: 0 · Cached: 0 Review guidance: REVIEW.md from base branch |
514e13d to
7f47ded
Compare
|
This description names a scenario the proof did not capture:
A repeated proof run rebuilds the same evidence, so no proof run is dispatched for a named gap. Merging with this gap open is your decision. |
Changelog for users
Changelog for maintainers
messageTextParts, defines the Copy message payload; the message bubble, the details content, and the copy hook all read it.collectCopyableTextstill handles reasoning and tool parts for other callers; only the Copy message paths filter first.getMessageDetailsContent.copyTextderives from the filtered parts, so the sheet button copies what the sheet can select.E2E proof
[e1] Copy message pastes only the message text — android emulator-5554: long-pressed the assistant message whose thinking block sits above the reply (Message details sheet showed Reasoning 122), tapped Copy message, pasted the clipboard into the Agents search field; e1-clipboard-paste.log (uiautomator node) reads text="The answer is forty-two." — the reply alone, with no reasoning text above it. Captures e1.png, e1-message-details-sheet.png, e1-session-thought-above-reply.png; steps in e1.replay.json.
[e1] Copy message pastes only the message text
[e3] No Copy message for a thinking + tool call message — android emulator-5554: the assistant message's parts are a thinking block (sheet row Reasoning 35) and the 'Sleep for 90 seconds' tool call, with no text part; its Message details sheet offers 'Report AI response' and no Copy message — e3-absent-scene.log line 1 'SCENE e3-absent OK' for the absent assertion, full sheet in e3-details-sheet.log (capture e3-message-details-no-copy.png, transcript e3-transcript-thinking-and-tool.png, steps in e3.replay.json).
[e3] No Copy message for a thinking + tool call message
E2E proof — log excerpts
/home/igor_kilocode_ai/.local/share/kwf/sections/req-20260917-165750-b36b/e2e-mobile-app/e1-clipboard-paste.log/home/igor_kilocode_ai/.local/share/kwf/sections/req-20260917-165750-b36b/e2e-mobile-app/e3-absent-scene.log/home/igor_kilocode_ai/.local/share/kwf/sections/req-20260917-165750-b36b/e2e-mobile-app/e3-details-sheet.log/home/igor_kilocode_ai/.local/share/kwf/sections/req-20260917-165750-b36b/e2e-mobile-app/e2-paste-digest.txt/home/igor_kilocode_ai/.local/share/kwf/sections/req-20260917-165750-b36b/e2e-mobile-app/e2-message-digest.txtOwner request
Follow-ups (not changed here)
Open findings (not fixed here)
E2E proof — log excerpts
/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-cli/e1-clipboard-paste.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-cli/e1-fixture-history.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-cli/e1-transcript-scene.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-cli/e2-sheet-scene.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-cli/e2-proof3-scene.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-cli/e3-clipboard-paste.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-cli/e3-fixture-history.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-mobile-app/e1-paste.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-mobile-app/fixture-sessions.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-mobile-app/e1-transcript.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-mobile-app/e1-details-sheet.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-mobile-app/e3-paste.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-mobile-app/e3-transcript.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-mobile-app/e3-details-sheet.log/home/igor_kilocode_ai/.local/share/kwf/sections/kwf-fix-review-b48b/e2e-mobile-app/e2-scene.log