feat(frontends,ui): opus 5.5 progress updates show in the web panel and the vault transcript
This commit is contained in:
1 parent
bbce425eeb
commit
13873f857b
5 files changed
+125
-72
No files matched your search
@@ -233,8 +233,10 @@ export class ActivityModel {
|
||||
}
|
||||
if (sdk.type === "content_block_delta" && parent === null) {
|
||||
const delta = sdk.delta as Record<string, unknown> | undefined;
|
||||
if (delta?.type === "text_delta" && typeof delta.text === "string") {
|
||||
turn.text = joinText(turn.text, delta.text, turn.paused);
|
||||
const text =
|
||||
delta?.type === "thinking_delta" ? delta.thinking : delta?.text;
|
||||
if (typeof text === "string" && text) {
|
||||
turn.text = joinText(turn.text, text, turn.paused);
|
||||
turn.paused = false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -190,9 +190,17 @@
|
||||
}
|
||||
|
||||
function blocks(message: HistoryMessage): ContentBlock[] {
|
||||
return typeof message.content === "string"
|
||||
? [{ text: message.content, type: "text" }]
|
||||
: message.content;
|
||||
if (typeof message.content === "string") {
|
||||
return [{ text: message.content, type: "text" }];
|
||||
}
|
||||
return message.content.flatMap((block) => {
|
||||
if (block.type !== "thinking") {
|
||||
return [block];
|
||||
}
|
||||
return block.thinking?.trim()
|
||||
? [{ text: block.thinking, type: "text" }]
|
||||
: [];
|
||||
});
|
||||
}
|
||||
|
||||
function resultText(block: ContentBlock): string {
|
||||
@@ -287,7 +295,7 @@
|
||||
{/if}
|
||||
</button>
|
||||
</div>
|
||||
{:else if !(isResultOnly && !showResults)}
|
||||
{:else if parts.length > 0 && !(isResultOnly && !showResults)}
|
||||
<div
|
||||
class={cn(
|
||||
"group flex min-w-0 max-w-full flex-col gap-1.5",
|
||||
@@ -334,8 +342,6 @@
|
||||
: "bg-muted/40"
|
||||
)}
|
||||
>{clip(resultText(block), RESULT_CLIP)}</pre>
|
||||
{:else if block.type === "thinking"}
|
||||
<p class="px-1 text-kind-deep text-xs">thinking</p>
|
||||
{/if}
|
||||
{/each}
|
||||
</div>
|
||||
|
||||
Reference in new issue
Block a user