fix(ai) - workflow tool outputs optim + display fix (#21500)

<!-- This is an auto-generated description by cubic. -->
<a
href="https://cubic.dev/pr/twentyhq/twenty/pull/21500?utm_source=github"
target="_blank" rel="noopener noreferrer"
data-no-image-dialog="true"><picture><source
media="(prefers-color-scheme: dark)"
srcset="https://www.cubic.dev/buttons/review-in-cubic-dark.svg"><source
media="(prefers-color-scheme: light)"
srcset="https://www.cubic.dev/buttons/review-in-cubic-light.svg"><img
alt="Review in cubic"
src="https://www.cubic.dev/buttons/review-in-cubic-dark.svg"></picture></a>
<!-- End of auto-generated description by cubic. -->
This commit is contained in:
Etienne
2026-06-16 10:50:16 +02:00
committed by GitHub
parent 12b1dba986
commit ceb7698689
7 changed files with 286 additions and 10 deletions
@@ -198,6 +198,8 @@ export const useAgentChatSubscription = (threadId: string | null) => {
const startReadLoop = async (readable: ReadableStream<UIMessageChunk>) => {
const messageStream = readUIMessageStream({ stream: readable });
let lastUsageCountedMessageId: string | null = null;
for await (const message of messageStream) {
const extendedMessage = message as ExtendedUIMessage;
@@ -225,7 +227,13 @@ export const useAgentChatSubscription = (threadId: string | null) => {
}
| undefined;
if (isDefined(metadata?.usage) && isDefined(metadata?.model)) {
if (
isDefined(metadata?.usage) &&
isDefined(metadata?.model) &&
lastUsageCountedMessageId !== extendedMessage.id
) {
lastUsageCountedMessageId = extendedMessage.id;
const usage = metadata.usage;
const model = metadata.model;