Files
OmniRoute/tests/integration/compression-pipeline.test.ts
Antigravity Assistant 934c133103 fix(analytics): avoid persisting inferred API key ownership
Stop usage analytics reads from backfilling missing API key attribution
into historical rows so legacy records remain unchanged and surface as
unknown instead of guessed ownership.

Also require management authentication on admin concurrency and
compression analytics endpoints, and preserve image payloads during lite
compression unless a model is explicitly marked as non-vision.
2026-04-30 20:31:00 -03:00

149 lines
4.9 KiB
TypeScript

import { describe, it } from "node:test";
import assert from "node:assert/strict";
import {
selectCompressionStrategy,
getEffectiveMode,
applyCompression,
} from "../../open-sse/services/compression/strategySelector.ts";
import {
applyLiteCompression,
replaceImageUrls,
} from "../../open-sse/services/compression/lite.ts";
import {
createCompressionStats,
estimateCompressionTokens,
} from "../../open-sse/services/compression/stats.ts";
import type { CompressionConfig } from "../../open-sse/services/compression/types.ts";
const baseConfig: CompressionConfig = {
enabled: true,
defaultMode: "lite",
autoTriggerTokens: 0,
cacheMinutes: 5,
preserveSystemPrompt: true,
comboOverrides: {},
};
describe("Full Compression Pipeline", () => {
it("end-to-end: lite mode compresses whitespace and tracks stats", () => {
const body = {
messages: [
{ role: "system", content: "You are helpful." },
{ role: "system", content: "You are helpful." },
{ role: "user", content: "hello\n\n\n\nworld" },
],
};
// Step 1: Select strategy
const mode = selectCompressionStrategy(baseConfig, null, 100);
assert.equal(mode, "lite");
// Step 2: Apply compression
const result = applyCompression(body, mode);
assert.equal(result.compressed, true);
assert.ok(result.stats);
// Step 3: Verify stats
assert.ok(result.stats!.originalTokens > 0);
assert.ok(result.stats!.compressedTokens > 0);
assert.ok(result.stats!.compressedTokens <= result.stats!.originalTokens);
assert.ok(result.stats!.savingsPercent >= 0);
assert.equal(result.stats!.mode, "lite");
});
it("end-to-end: off mode returns unchanged body", () => {
const body = { messages: [{ role: "user", content: "test" }] };
const offConfig = { ...baseConfig, enabled: false };
const mode = selectCompressionStrategy(offConfig, null, 100);
assert.equal(mode, "off");
const result = applyCompression(body, mode);
assert.equal(result.compressed, false);
assert.equal(result.stats, null);
});
it("end-to-end: combo override selects lite for specific combo", () => {
const config: CompressionConfig = {
...baseConfig,
defaultMode: "off" as const,
comboOverrides: { "my-combo": "lite" as const },
};
const body = { messages: [{ role: "user", content: "test\n\n\n\nmessage" }] };
const mode = selectCompressionStrategy(config, "my-combo", 100);
assert.equal(mode, "lite");
const result = applyCompression(body, mode);
assert.equal(result.compressed, true);
});
it("end-to-end: auto-trigger activates compression", () => {
const config: CompressionConfig = {
...baseConfig,
defaultMode: "off" as const,
autoTriggerTokens: 50,
};
const body = { messages: [{ role: "user", content: "x".repeat(1000) }] };
// Below threshold → off
const mode1 = getEffectiveMode(config, null, 10);
assert.equal(mode1, "off");
// Above threshold → lite
const mode2 = getEffectiveMode(config, null, 100);
assert.equal(mode2, "lite");
});
it("lite compression + stats pipeline works together", () => {
const body = {
messages: [
{ role: "system", content: "Be helpful." },
{ role: "system", content: "Be helpful." },
{ role: "user", content: "hello\n\n\n\nworld" },
{ role: "user", content: "hello\n\n\n\nworld" },
],
};
const result = applyLiteCompression(body);
assert.equal(result.compressed, true);
assert.ok(result.stats);
assert.ok(result.stats.savingsPercent > 0);
assert.ok(result.stats.techniquesUsed.length >= 1);
});
it("lite compression preserves multimodal image payloads unless non-vision is explicit", () => {
const dataUrl = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAB";
const body = {
messages: [
{
role: "user",
content: [
{ type: "text", text: "Describe this image" },
{ type: "image_url", image_url: { url: dataUrl } },
],
},
],
};
const preserved = applyLiteCompression(body, { model: "openai/gpt-4.1" });
assert.equal(preserved.compressed, false);
assert.deepEqual(preserved.body, body);
const placeholder = replaceImageUrls(body, { model: "text-only-model", supportsVision: false });
assert.equal(placeholder.applied, true);
const content = placeholder.body.messages?.[0]?.content;
assert.ok(Array.isArray(content));
assert.deepEqual(content[1], { type: "text", text: "[image: png]" });
});
it("token estimation is consistent", () => {
const text = "hello world this is a test";
const tokens = estimateCompressionTokens(text);
assert.equal(tokens, Math.ceil(text.length / 4));
const obj = { messages: [{ role: "user", content: text }] };
const objTokens = estimateCompressionTokens(obj);
assert.equal(objTokens, Math.ceil(JSON.stringify(obj).length / 4));
});
});