fix(core,tui): resolve stuck compacting status with terminal compaction events

This commit is contained in:
Kit Langton 2026-07-02 08:48:25 -04:00
commit 4f4cb8cb36
10 changed files with 297 additions and 6 deletions

View file

@ -248,6 +248,41 @@ test("tracks session status from active sessions and execution events", async ()
},
})
await wait(() => data.session.status("session-failed") === "idle")
emitEvent(events, {
id: "evt_compaction_started",
type: "session.next.compaction.started",
data: { sessionID: "session-compacting", messageID: "message-compaction", timestamp: 5, reason: "manual" },
})
await wait(() => data.session.status("session-compacting") === "running")
emitEvent(events, {
id: "evt_compaction_ended",
type: "session.next.compaction.ended",
data: {
sessionID: "session-compacting",
messageID: "message-compaction",
timestamp: 6,
reason: "manual",
text: "summary",
recent: "",
},
})
await wait(() => data.session.status("session-compacting") === "idle")
emitEvent(events, {
id: "evt_compaction_started_again",
type: "session.next.compaction.started",
data: { sessionID: "session-compacting", messageID: "message-compaction-2", timestamp: 7, reason: "manual" },
})
await wait(() => data.session.status("session-compacting") === "running")
emitEvent(events, {
id: "evt_compaction_failed",
type: "session.next.compaction.failed",
data: { sessionID: "session-compacting", messageID: "message-compaction-2", timestamp: 8, reason: "manual" },
})
await wait(() => data.session.status("session-compacting") === "idle")
} finally {
app.renderer.destroy()
}