
























@@ -675,9 +675,9 @@ describe("runCodexAppServerAttempt", () => {
675675});
676676const dynamicToolNames = bridge.specs.map((tool) => tool.name);
677677678-expect(dynamicToolNames).not.toEqual(
679-expect.arrayContaining(["tool_search_code", "tool_search", "tool_describe", "tool_call"]),
680-);
678+for (const toolName of ["tool_search_code", "tool_search", "tool_describe", "tool_call"]) {
679+expect(dynamicToolNames).not.toContain(toolName);
680+}
681681});
682682683683it("normalizes Codex dynamic toolsAllow entries before filtering", () => {
@@ -824,36 +824,39 @@ describe("runCodexAppServerAttempt", () => {
824824"assistant",
825825"toolResult",
826826]);
827-expect(result.messagesSnapshot[1]).toMatchObject({
828-role: "assistant",
829-content: [
830-{
831-type: "toolCall",
832-id: "call-wiki-status-1",
833-name: "wiki_status",
834-arguments: { topic: "README.md" },
835-input: { topic: "README.md" },
836-},
837-],
838-});
839-expect(result.messagesSnapshot[2]).toMatchObject({
840-role: "toolResult",
841-toolCallId: "call-wiki-status-1",
842-toolName: "wiki_status",
843-isError: false,
844-content: [
845-expect.objectContaining({
846-type: "toolResult",
847-id: "call-wiki-status-1",
848-name: "wiki_status",
849-toolName: "wiki_status",
850-toolCallId: "call-wiki-status-1",
851-toolUseId: "call-wiki-status-1",
852-tool_use_id: "call-wiki-status-1",
853-content: "wiki_status done",
854-}),
855-],
856-});
827+const assistantMessage = result.messagesSnapshot[1];
828+if (assistantMessage?.role !== "assistant") {
829+throw new Error("expected mirrored assistant tool-call message");
830+}
831+expect(assistantMessage.content).toStrictEqual([
832+{
833+type: "toolCall",
834+id: "call-wiki-status-1",
835+name: "wiki_status",
836+arguments: { topic: "README.md" },
837+input: { topic: "README.md" },
838+},
839+]);
840+const toolResultMessage = result.messagesSnapshot[2];
841+if (toolResultMessage?.role !== "toolResult") {
842+throw new Error("expected mirrored tool-result message");
843+}
844+expect(toolResultMessage.toolCallId).toBe("call-wiki-status-1");
845+expect(toolResultMessage.toolName).toBe("wiki_status");
846+expect(toolResultMessage.isError).toBe(false);
847+expect(toolResultMessage.content).toStrictEqual([
848+{
849+type: "toolResult",
850+id: "call-wiki-status-1",
851+name: "wiki_status",
852+toolName: "wiki_status",
853+toolCallId: "call-wiki-status-1",
854+toolUseId: "call-wiki-status-1",
855+tool_use_id: "call-wiki-status-1",
856+content: "wiki_status done",
857+text: "wiki_status done",
858+},
859+]);
857860expect(JSON.stringify(result.messagesSnapshot)).not.toContain("tool_search");
858861expect(JSON.stringify(result.messagesSnapshot)).not.toContain("function_call_output");
859862});
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。