From 687dc5acd47bd8f03b809ecbcf8f60d29c029e77 Mon Sep 17 00:00:00 2001 From: Dax Raad Date: Tue, 22 Jul 2025 19:29:22 -0400 Subject: [PATCH] send msg/part removed events --- packages/opencode/src/session/index.ts | 5 +++++ packages/opencode/src/session/message-v2.ts | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/packages/opencode/src/session/index.ts b/packages/opencode/src/session/index.ts index 8d7bb299c..01634ecdc 100644 --- a/packages/opencode/src/session/index.ts +++ b/packages/opencode/src/session/index.ts @@ -534,6 +534,7 @@ export namespace Session { msgs = preserve for (const msg of remove) { await Storage.remove(`session/message/${input.sessionID}/${msg.info.id}`) + await Bus.publish(MessageV2.Event.Removed, { sessionID: input.sessionID, messageID: msg.info.id }) } const last = preserve.at(-1) if (session.revert.partID && last) { @@ -542,6 +543,10 @@ export namespace Session { last.parts = preserveParts for (const part of removeParts) { await Storage.remove(`session/part/${input.sessionID}/${last.info.id}/${part.id}`) + await Bus.publish(MessageV2.Event.PartRemoved, { + messageID: last.info.id, + partID: part.id, + }) } } } diff --git a/packages/opencode/src/session/message-v2.ts b/packages/opencode/src/session/message-v2.ts index 31afdc73e..6738a8299 100644 --- a/packages/opencode/src/session/message-v2.ts +++ b/packages/opencode/src/session/message-v2.ts @@ -271,6 +271,13 @@ export namespace MessageV2 { part: Part, }), ), + PartRemoved: Bus.event( + "message.part.removed", + z.object({ + messageID: z.string(), + partID: z.string(), + }), + ), } export function fromV1(v1: Message.Info) {