Skip to content

Commit ae085b9

Browse files
committed
fix(cron): prefer finalAssistantVisibleText over raw error text in task summary
When a cron agentTurn run had no non-error payloads (e.g. a tool call failed and the agent self-corrected via LLM output rather than an explicit messaging tool call), fallbackSummary fell through to pickSummaryFromOutput(firstText) where firstText was the tool error payload. Introduce finalAssistantVisibleText as an intermediate fallback in both fallbackSummary and fallbackOutputText so that the agent's self-corrected reply is surfaced instead of the raw error text. Closes #74807
1 parent 5f13af6 commit ae085b9

1 file changed

Lines changed: 10 additions & 2 deletions

File tree

src/cron/isolated-agent/helpers.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -258,9 +258,17 @@ export function resolveCronPayloadOutcome(params: {
258258
preferFinalAssistantVisibleText?: boolean;
259259
}): CronPayloadOutcome {
260260
const firstText = params.payloads[0]?.text ?? "";
261+
const normalizedFinalAssistantVisibleTextEarly = normalizeOptionalString(
262+
params.finalAssistantVisibleText,
263+
);
261264
const fallbackSummary =
262-
pickSummaryFromPayloads(params.payloads) ?? pickSummaryFromOutput(firstText);
263-
const fallbackOutputText = pickLastNonEmptyTextFromPayloads(params.payloads);
265+
pickSummaryFromPayloads(params.payloads) ??
266+
(normalizedFinalAssistantVisibleTextEarly
267+
? pickSummaryFromOutput(normalizedFinalAssistantVisibleTextEarly)
268+
: undefined) ??
269+
pickSummaryFromOutput(firstText);
270+
const fallbackOutputText =
271+
pickLastNonEmptyTextFromPayloads(params.payloads) ?? normalizedFinalAssistantVisibleTextEarly;
264272
const deliveryPayload = pickLastDeliverablePayload(params.payloads);
265273
const selectedDeliveryPayloads = pickDeliverablePayloads(params.payloads);
266274
const deliveryPayloadHasStructuredContent = payloadHasStructuredDeliveryContent(deliveryPayload);

0 commit comments

Comments
 (0)