import { describe, expect, it, vi } from "vitest"; import { shouldAutoCompact } from "./loop.js"; import type { Session } from "./session.js"; describe("shouldAutoCompact", () => { it("triggers at the session's configured threshold", () => { const session = { lastContextTokens: 90, contextWindow: 100, autoCompactThreshold: 0.85, } as unknown as Session; expect(shouldAutoCompact(session)).toBe(true); session.autoCompactThreshold = 0.95; expect(shouldAutoCompact(session)).toBe(false); }); });