diff --git a/src/agents/pi-embedded-utils.test.ts b/src/agents/pi-embedded-utils.test.ts
index 2b32c1466..e753bbab9 100644
--- a/src/agents/pi-embedded-utils.test.ts
+++ b/src/agents/pi-embedded-utils.test.ts
@@ -91,6 +91,70 @@ describe("extractAssistantText", () => {
expect(result).toBe("Before\nAfter");
});
+ it("strips minimax tool_call open and close tags", () => {
+ const msg: AssistantMessage = {
+ role: "assistant",
+ content: [
+ {
+ type: "text",
+ text: "StartInnerEnd",
+ },
+ ],
+ timestamp: Date.now(),
+ };
+
+ const result = extractAssistantText(msg);
+ expect(result).toBe("StartInnerEnd");
+ });
+
+ it("ignores invoke blocks without minimax markers", () => {
+ const msg: AssistantMessage = {
+ role: "assistant",
+ content: [
+ {
+ type: "text",
+ text: "BeforeKeepAfter",
+ },
+ ],
+ timestamp: Date.now(),
+ };
+
+ const result = extractAssistantText(msg);
+ expect(result).toBe("BeforeKeepAfter");
+ });
+
+ it("strips invoke blocks when minimax markers are present elsewhere", () => {
+ const msg: AssistantMessage = {
+ role: "assistant",
+ content: [
+ {
+ type: "text",
+ text: "BeforeDropAfter",
+ },
+ ],
+ timestamp: Date.now(),
+ };
+
+ const result = extractAssistantText(msg);
+ expect(result).toBe("BeforeAfter");
+ });
+
+ it("strips invoke blocks with nested tags", () => {
+ const msg: AssistantMessage = {
+ role: "assistant",
+ content: [
+ {
+ type: "text",
+ text: `A1B`,
+ },
+ ],
+ timestamp: Date.now(),
+ };
+
+ const result = extractAssistantText(msg);
+ expect(result).toBe("AB");
+ });
+
it("strips tool XML mixed with regular content", () => {
const msg: AssistantMessage = {
role: "assistant",