fix(look-at): allow stable idle after sync prompt

This commit is contained in:
YeonGyu-Kim
2026-05-21 12:32:55 +09:00
parent 98d760a5f3
commit 036e04c15b
+21 -11
View File
@@ -86,24 +86,34 @@ Original error: ${createResult.error}`
log("[look_at] Prompt error (ignored, will still fetch messages):", promptError) log("[look_at] Prompt error (ignored, will still fetch messages):", promptError)
} }
let observedMessages: unknown[] | undefined
let observedText: string | undefined
if (typeof ctx.client.session.status === "function") { if (typeof ctx.client.session.status === "function") {
await waitForLookAtSessionResult(ctx.client, sessionID) const waitResult = await waitForLookAtSessionResult(ctx.client, sessionID, {
allowStableIdleWithoutActivity: true,
})
observedText = waitResult.outcome.text ?? undefined
if (observedText) {
observedMessages = waitResult.messages
}
} }
log(`[look_at] Fetching messages from session ${sessionID}...`) let messages = observedMessages
const messagesResult = await ctx.client.session.messages({ if (!messages) {
path: { id: sessionID }, log(`[look_at] Fetching messages from session ${sessionID}...`)
}) const messagesResult = await ctx.client.session.messages({
path: { id: sessionID },
})
if (messagesResult.error) { if (messagesResult.error) {
log("[look_at] Messages error:", messagesResult.error) log("[look_at] Messages error:", messagesResult.error)
return `Error: Failed to get messages: ${messagesResult.error}` return `Error: Failed to get messages: ${messagesResult.error}`
}
messages = messagesResult.data
} }
const messages = messagesResult.data
log(`[look_at] Got ${messages.length} messages`) log(`[look_at] Got ${messages.length} messages`)
const responseText = extractLatestAssistantText(messages) const responseText = observedText ?? extractLatestAssistantText(messages)
if (!responseText) { if (!responseText) {
log("[look_at] No assistant message found") log("[look_at] No assistant message found")
return "Error: No response from multimodal-looker agent" return "Error: No response from multimodal-looker agent"