From eea3f6dc4bbf4e6bf37047a73bad276c8391673f Mon Sep 17 00:00:00 2001 From: Shakker Date: Mon, 11 May 2026 21:02:07 +0100 Subject: [PATCH] test: expose redacted attachment payload --- ...sion-transcript-repair.attachments.test.ts | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/src/agents/session-transcript-repair.attachments.test.ts b/src/agents/session-transcript-repair.attachments.test.ts index 7daa2a9afe7..b9bc9c44f7c 100644 --- a/src/agents/session-transcript-repair.attachments.test.ts +++ b/src/agents/session-transcript-repair.attachments.test.ts @@ -32,14 +32,24 @@ describe("sanitizeToolCallInputs redacts sessions_spawn attachments", () => { const secret = "SUPER_SECRET_SHOULD_NOT_PERSIST"; // pragma: allowlist secret const input = [mkSessionsSpawnToolCall(secret)]; const out = sanitizeToolCallInputs(input); - expect(out).toHaveLength(1); - const msg = out[0] as { content?: unknown[] }; - const tool = (msg.content?.[0] ?? null) as { - name?: string; - arguments?: { attachments?: Array<{ content?: string }> }; - } | null; - expect(tool?.name).toBe("sessions_spawn"); - expect(tool?.arguments?.attachments?.[0]?.content).toBe("__OPENCLAW_REDACTED__"); + expect(out).toStrictEqual([ + expect.objectContaining({ + content: [ + expect.objectContaining({ + name: "sessions_spawn", + arguments: expect.objectContaining({ + attachments: [ + { + name: "README.md", + encoding: "utf8", + content: "__OPENCLAW_REDACTED__", + }, + ], + }), + }), + ], + }), + ]); expect(JSON.stringify(out)).not.toContain(secret); });