



















@@ -252,6 +252,22 @@ describe("waitForAgentRun", () => {
252252});
253253});
254254255+it("defaults non-finite wait timeouts before sending agent.wait", async () => {
256+callGatewayMock.mockResolvedValue({ status: "ok" });
257+258+const result = await waitForAgentRun({ runId: "run-nan", timeoutMs: Number.NaN });
259+260+expect(result).toEqual({ status: "ok" });
261+expect(callGatewayMock).toHaveBeenCalledWith({
262+method: "agent.wait",
263+params: {
264+runId: "run-nan",
265+timeoutMs: 1,
266+},
267+timeoutMs: 2_001,
268+});
269+});
270+255271it("preserves timing metadata from agent.wait", async () => {
256272callGatewayMock.mockResolvedValue({
257273status: "ok",
@@ -457,4 +473,22 @@ describe("waitForAgentRunsToDrain", () => {
457473expectAgentWaitRequest(requireRequestAt(requests, 0), "run-1", 1_000);
458474expectAgentWaitRequest(requireRequestAt(requests, 1), "run-2", 1_000);
459475});
476+477+it("defaults non-finite drain timeouts before computing the deadline", async () => {
478+callGatewayMock.mockResolvedValue({ status: "ok" });
479+let activeRunIds = ["run-1"];
480+481+const result = await waitForAgentRunsToDrain({
482+timeoutMs: Number.NaN,
483+getPendingRunIds: () => {
484+const current = activeRunIds;
485+activeRunIds = [];
486+return current;
487+},
488+});
489+490+expect(result.timedOut).toBe(false);
491+expect(Number.isFinite(result.deadlineAtMs)).toBe(true);
492+expectAgentWaitRequest(requireRequestAt(gatewayWaitRequests(), 0), "run-1", 1);
493+});
460494});
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。