Compare commits

...
Author SHA1 Message Date
James Long 8ad5ecae2a fix(tui): keep shell input streaming 2026-07-08 14:12:14 +00:00
2 changed files with 12 additions and 4 deletions
+4 -4
View File
@@ -497,7 +497,7 @@ export const { use: useData, provider: DataProvider } = createSimpleContext({
id: event.data.callID,
name: event.data.name,
time: { created: event.created },
state: { status: "pending", input: "" },
state: { status: "streaming", input: "" },
})
})
break
@@ -507,7 +507,7 @@ export const { use: useData, provider: DataProvider } = createSimpleContext({
message.assistant(draft, index, event.data.assistantMessageID),
event.data.callID,
)
if (match?.state.status === "pending") match.state.input += event.data.delta
if (match?.state.status === "streaming") match.state.input += event.data.delta
})
break
case "session.tool.input.ended":
@@ -516,7 +516,7 @@ export const { use: useData, provider: DataProvider } = createSimpleContext({
message.assistant(draft, index, event.data.assistantMessageID),
event.data.callID,
)
if (match?.state.status === "pending") match.state.input = event.data.text
if (match?.state.status === "streaming") match.state.input = event.data.text
})
break
case "session.tool.called":
@@ -568,7 +568,7 @@ export const { use: useData, provider: DataProvider } = createSimpleContext({
message.assistant(draft, index, event.data.assistantMessageID),
event.data.callID,
)
if (!match || (match.state.status !== "pending" && match.state.status !== "running")) return
if (!match || (match.state.status !== "streaming" && match.state.status !== "running")) return
match.state = {
status: "error",
error: event.data.error,
+8
View File
@@ -1751,6 +1751,14 @@ test("settles pending tools when a live failure arrives", async () => {
name: "bash",
},
})
await wait(() => {
const assistant = sync.session.message.get("session-1", "msg_explicit_assistant_9")
return (
assistant?.type === "assistant" &&
assistant.content[0]?.type === "tool" &&
assistant.content[0].state.status === "streaming"
)
})
emitEvent(events, {
id: "evt_called_1",
created: 0,