Show inline Agent pending dots
TestFlight / Build and upload (push) Successful in 1m50s

This commit is contained in:
Sybil Agent
2026-10-29 21:31:11 -07:00
parent 5d738f897b
commit a390c7287a
8 changed files with 261 additions and 8 deletions
@@ -7,6 +7,7 @@ import {
createStreamingAssistantMetadata,
createStreamingAttemptState,
finalizeStreamingAssistant,
isInlineAgentReplyPending,
markStreamingAssistantAsAgentAside,
promoteStreamingAssistantTrace,
setStreamingAssistantSegment,
@@ -126,6 +127,15 @@ test("Agent aside stream keeps identity through loading, markdown deltas, and co
assert.equal(messages.at(-1).content, "**Inline** reply");
});
test("inline Agent pending dots stop on first text, completion, failure, and cancellation", () => {
let message = markStreamingAssistantAsAgentAside([assistantMessage()], "temp-assistant-").at(-1);
assert.equal(isInlineAgentReplyPending(message, true), true);
message = setStreamingAssistantSegment([message], "temp-assistant-", "First visible text").at(-1);
assert.equal(isInlineAgentReplyPending(message, true), false);
assert.equal(isInlineAgentReplyPending(assistantMessage(), false), false, "failed or cancelled pending state is hidden");
assert.equal(isInlineAgentReplyPending({ ...message, id: "saved-agent-reply", content: "" }, true), false);
});
test("message helpers preserve identity when no matching temporary assistant exists", () => {
const messages = [
{