refactor(agents): share text block extraction helper

This commit is contained in:
Peter Steinberger
2026-02-18 18:01:09 +00:00
parent 2d55cc446a
commit 85ebdf88b0
5 changed files with 42 additions and 41 deletions

View File

@@ -14,6 +14,7 @@ import {
resolveContextWindowTokens,
summarizeInStages,
} from "../compaction.js";
import { collectTextContentBlocks } from "../content-blocks.js";
import { getCompactionSafeguardRuntime } from "./compaction-safeguard-runtime.js";
const FALLBACK_SUMMARY =
"Summary unavailable due to context limits. Older messages were truncated.";
@@ -62,20 +63,7 @@ function formatToolFailureMeta(details: unknown): string | undefined {
}
function extractToolResultText(content: unknown): string {
if (!Array.isArray(content)) {
return "";
}
const parts: string[] = [];
for (const block of content) {
if (!block || typeof block !== "object") {
continue;
}
const rec = block as { type?: unknown; text?: unknown };
if (rec.type === "text" && typeof rec.text === "string") {
parts.push(rec.text);
}
}
return parts.join("\n");
return collectTextContentBlocks(content).join("\n");
}
function collectToolFailures(messages: AgentMessage[]): ToolFailure[] {