diff --git a/src/agents/cache-trace.test.ts b/src/agents/cache-trace.test.ts index aa3e5620b13..31b7b5aa8e7 100644 --- a/src/agents/cache-trace.test.ts +++ b/src/agents/cache-trace.test.ts @@ -5,6 +5,25 @@ import { resolveUserPath } from "../utils.js"; import { createCacheTrace } from "./cache-trace.js"; describe("createCacheTrace", () => { + function createMemoryTraceForTest() { + const lines: string[] = []; + const trace = createCacheTrace({ + cfg: { + diagnostics: { + cacheTrace: { + enabled: true, + }, + }, + }, + env: {}, + writer: { + filePath: "memory", + write: (line) => lines.push(line), + }, + }); + return { lines, trace }; + } + it("returns null when diagnostics cache tracing is disabled", () => { const trace = createCacheTrace({ cfg: {} as OpenClawConfig, @@ -135,21 +154,7 @@ describe("createCacheTrace", () => { }); it("sanitizes cache-trace payloads before writing", () => { - const lines: string[] = []; - const trace = createCacheTrace({ - cfg: { - diagnostics: { - cacheTrace: { - enabled: true, - }, - }, - }, - env: {}, - writer: { - filePath: "memory", - write: (line) => lines.push(line), - }, - }); + const { lines, trace } = createMemoryTraceForTest(); trace?.recordStage("stream:context", { system: { @@ -241,21 +246,7 @@ describe("createCacheTrace", () => { }); it("handles circular references in messages without stack overflow", () => { - const lines: string[] = []; - const trace = createCacheTrace({ - cfg: { - diagnostics: { - cacheTrace: { - enabled: true, - }, - }, - }, - env: {}, - writer: { - filePath: "memory", - write: (line) => lines.push(line), - }, - }); + const { lines, trace } = createMemoryTraceForTest(); const parent: Record = { role: "user", content: "hello" }; const child: Record = { ref: parent };