summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorSercan Sagman <[email protected]>2025-12-18 01:03:06 +0300
committerGitHub <[email protected]>2025-12-17 16:03:06 -0600
commita1b68daa9a21c3ca6352d0b1daa58e0456a4e270 (patch)
tree9b0e538535e6dfbc7059e1ae168696ae55addaed
parentca65da2d9ea96f05b0b0c1aa786f767385e3cac8 (diff)
downloadopencode-a1b68daa9a21c3ca6352d0b1daa58e0456a4e270.tar.gz
opencode-a1b68daa9a21c3ca6352d0b1daa58e0456a4e270.zip
fix(tui): exclude reverted assistant reply when copying last message (#5705)
Signed-off-by: assagman <[email protected]>
-rw-r--r--packages/opencode/src/cli/cmd/tui/routes/session/index.tsx5
1 files changed, 4 insertions, 1 deletions
diff --git a/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx b/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx
index c7d7537a2..780809bd6 100644
--- a/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx
+++ b/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx
@@ -597,7 +597,10 @@ export function Session() {
keybind: "messages_copy",
category: "Session",
onSelect: (dialog) => {
- const lastAssistantMessage = messages().findLast((msg) => msg.role === "assistant")
+ const revertID = session()?.revert?.messageID
+ const lastAssistantMessage = messages().findLast(
+ (msg) => msg.role === "assistant" && (!revertID || msg.id < revertID),
+ )
if (!lastAssistantMessage) {
toast.show({ message: "No assistant messages found", variant: "error" })
dialog.clear()