Shorten agent initialization timeout

This commit is contained in:
Mohamed Boudra
2026-05-03 19:12:36 +07:00
parent fc31d31493
commit 4332eca9ca
2 changed files with 29 additions and 1 deletions
@@ -72,6 +72,34 @@ describe("useAgentInitialization", () => {
expect(getInitDeferred(getInitKey(serverId, agentId))?.requestDirection).toBe("tail");
});
it("times out initialization after 30 seconds", async () => {
vi.useFakeTimers();
const client = makeClient();
useSessionStore.getState().initializeSession(serverId, client as never);
const { result } = renderHook(() =>
useAgentInitialization({ serverId, client: client as never }),
);
const promise = result.current.ensureAgentIsInitialized(agentId);
act(() => {
vi.advanceTimersByTime(29_999);
});
expect(getInitDeferred(getInitKey(serverId, agentId))).toBeDefined();
act(() => {
vi.advanceTimersByTime(1);
});
await expect(promise).rejects.toThrow("History sync timed out after 30s");
expect(getInitDeferred(getInitKey(serverId, agentId))).toBeUndefined();
expect(useSessionStore.getState().sessions[serverId]?.initializingAgents.get(agentId)).toBe(
false,
);
vi.useRealTimers();
});
it("refresh fetches a bounded canonical tail after refreshing the agent", async () => {
const client = makeClient();
const { result } = renderHook(() =>
@@ -10,7 +10,7 @@ import {
} from "@/utils/agent-initialization";
import { TIMELINE_FETCH_PAGE_SIZE } from "@/timeline/timeline-fetch-policy";
const INIT_TIMEOUT_MS = 5 * 60_000;
const INIT_TIMEOUT_MS = 30_000;
export function useAgentInitialization({
serverId,