Add inline persistent Agent mentions
TestFlight / Build and upload (push) Successful in 1m57s

This commit is contained in:
Sybil Agent
2026-10-29 18:28:52 -07:00
parent 35a6c537ad
commit 5d738f897b
23 changed files with 1772 additions and 44 deletions
@@ -7,6 +7,7 @@ import {
createStreamingAssistantMetadata,
createStreamingAttemptState,
finalizeStreamingAssistant,
markStreamingAssistantAsAgentAside,
promoteStreamingAssistantTrace,
setStreamingAssistantSegment,
transitionStreamingToolCall,
@@ -111,6 +112,20 @@ test("a fresh per-attempt accumulator can replay and reclassify an already-seen
assert.equal(metadata(messages)?.ephemeralTrace, "Replayed trace");
});
test("Agent aside stream keeps identity through loading, markdown deltas, and completion", () => {
let messages = [assistantMessage()];
messages = markStreamingAssistantAsAgentAside(messages, "temp-assistant-");
assert.equal(messages.at(-1).name, "Sybil Agent");
assert.equal(asStreamingAssistantMetadata(messages.at(-1).metadata).agentAside, true);
assert.equal(asStreamingAssistantMetadata(messages.at(-1).metadata).status, "sending");
messages = setStreamingAssistantSegment(messages, "temp-assistant-", "**Inline** reply");
messages = finalizeStreamingAssistant(messages, "temp-assistant-", "**Inline** reply");
assert.equal(asStreamingAssistantMetadata(messages.at(-1).metadata).agentAside, true);
assert.equal(asStreamingAssistantMetadata(messages.at(-1).metadata).status, "complete");
assert.equal(messages.at(-1).content, "**Inline** reply");
});
test("message helpers preserve identity when no matching temporary assistant exists", () => {
const messages = [
{