64 lines · 2.1 KB · TypeScript
RawDownload
import { describe, expect, it } from "vite-plus/test";import * as DateTime from "effect/DateTime";import { deriveLatestContextWindowSnapshot, formatContextWindowTokens } from "./contextWindow"; describe("V2 context window presentation", () => {  it("uses retained compaction token data when available", () => {    const snapshot = deriveLatestContextWindowSnapshot([      {        item: {          id: "compaction-1" as never,          threadId: "thread-1" as never,          runId: null,          nodeId: null,          providerThreadId: null,          providerTurnId: null,          nativeItemRef: null,          parentItemId: null,          ordinal: 1,          status: "completed",          title: null,          startedAt: null,          completedAt: null,          updatedAt: DateTime.makeUnsafe("2026-06-20T00:00:00.000Z"),          type: "compaction",          driver: null,          beforeTokenCount: 10_000,          afterTokenCount: 2_000,        },      },    ]);    expect(snapshot?.usedTokens).toBe(2_000);    expect(snapshot?.totalProcessedTokens).toBe(10_000);  });   it("formats compact token values", () => {    expect(formatContextWindowTokens(1_500)).toBe("1.5k");  });}); describe("live provider-turn usage (#8144)", () => {  it("prefers the provider's live report over compaction items", () => {    const snapshot = deriveLatestContextWindowSnapshot([], {      usedTokens: 42_000,      maxTokens: 200_000,      inputTokens: 40_000,      outputTokens: 2_000,      updatedAt: "2026-08-27T00:00:00.000Z",    });    expect(snapshot).not.toBeNull();    expect(snapshot?.usedTokens).toBe(42_000);    expect(snapshot?.maxTokens).toBe(200_000);    expect(snapshot?.remainingTokens).toBe(158_000);    expect(snapshot?.usedPercentage).toBe(21);  });   it("handles a report without a known context window", () => {    const snapshot = deriveLatestContextWindowSnapshot([], {      usedTokens: 42_000,      updatedAt: "2026-08-27T00:00:00.000Z",    });    expect(snapshot?.maxTokens).toBeNull();    expect(snapshot?.usedPercentage).toBeNull();  });});