Files
OmniRoute/tests/unit/compression/validation.test.ts
diegosouzapw 171081dbbb fix(core): harden input handling and compression cleanup
Replace regex-based compression artifact cleanup with linear helpers to
avoid pathological backtracking and normalize whitespace safely.
Tighten request and response parsing in assess, Gemini translation, and
executor telemetry to avoid unsafe property access and invalid category
filtering.

Also add managed database backup support for legacy encrypted
connection migration, improve SQLite load error handling, and cover the
regressions with unit tests.
2026-05-06 02:29:25 -03:00

144 lines
4.9 KiB
TypeScript

import { describe, it } from "node:test";
import assert from "node:assert/strict";
import { validateCompression } from "../../../open-sse/services/compression/validation.ts";
import {
extractPreservedBlocks,
restorePreservedBlocks,
} from "../../../open-sse/services/compression/preservation.ts";
import { cavemanCompress } from "../../../open-sse/services/compression/caveman.ts";
describe("compression preservation and validation", () => {
it("parses backtick and tilde fences with nested shorter fences", () => {
const input = [
"Before",
"````markdown",
"```js",
"const theValue = 1;",
"```",
"````",
"~~~ts",
"const x = `the`;",
"~~~",
"After",
].join("\n");
const { text, blocks } = extractPreservedBlocks(input);
assert.equal(blocks.filter((block) => block.kind === "fenced_code").length, 2);
assert.equal(restorePreservedBlocks(text, blocks), input);
});
it("uses collision-resistant sentinels instead of predictable placeholders", () => {
const input = "User literal [PRESERVED_0] and `inline code` stay separate.";
const { text, blocks } = extractPreservedBlocks(input);
assert.ok(blocks.length > 0);
assert.doesNotMatch(text, /\[PRESERVED_0\]/);
assert.equal(restorePreservedBlocks(text, blocks), input);
});
it("preserves caveman-shrink protected identifiers and versions", () => {
const input =
"Set API_KEY_VALUE in process.env.API_KEY_VALUE before calling config.api.endpoint() on 3.7.9.";
const output = cavemanCompress(
{ messages: [{ role: "user", content: input }] },
{
enabled: true,
compressRoles: ["user"],
skipRules: [],
minMessageLength: 0,
preservePatterns: [],
intensity: "full",
}
).body.messages[0].content as string;
assert.match(output, /API_KEY_VALUE/);
assert.match(output, /process\.env\.API_KEY_VALUE/);
assert.match(output, /config\.api\.endpoint\(\)/);
assert.match(output, /3\.7\.9/);
});
it("preserves Typst, LaTeX, frontmatter, headings, and markdown tables", () => {
const input = [
"---",
"title: The Test",
"---",
"# The Heading",
"| Column | Value |",
"| --- | --- |",
"| The key | The value |",
"$$",
"E = mc^2",
"$$",
"\\begin{align}a &= b\\end{align}",
"#set text(size: 12pt)",
"Please make sure to explain the document.",
].join("\n");
const output = cavemanCompress(
{ messages: [{ role: "user", content: input }] },
{
enabled: true,
compressRoles: ["user"],
skipRules: [],
minMessageLength: 0,
preservePatterns: [],
intensity: "full",
}
).body.messages[0].content as string;
assert.match(output, /^---\ntitle: The Test\n---/);
assert.match(output, /^# The Heading/m);
assert.match(output, /^\| Column \| Value \|/m);
assert.match(output, /\$\$\nE = mc\^2\n\$\$/);
assert.match(output, /\\begin\{align\}a &= b\\end\{align\}/);
assert.match(output, /^#set text\(size: 12pt\)/m);
});
it("preserves inline math and ignores normal dollar amounts", () => {
const input = "Please make sure to keep $the value$ exact and the cost as $10.";
const output = cavemanCompress(
{ messages: [{ role: "user", content: input }] },
{
enabled: true,
compressRoles: ["user"],
skipRules: [],
minMessageLength: 0,
preservePatterns: [],
intensity: "full",
}
).body.messages[0].content as string;
assert.match(output, /\$the value\$/);
assert.match(output, /\$10/);
});
it("reports validation failure when protected content is lost", () => {
const original = "Use `exact_token` and https://example.com/the/path.";
const validation = validateCompression(original, "Use token.");
assert.equal(validation.valid, false);
assert.equal(validation.fallbackApplied, true);
assert.ok(validation.errors.length >= 2);
});
it("formats validation previews with linear whitespace collapsing", () => {
const original = `Use \`${"\t".repeat(5000)}exact_token\` in the request.`;
const validation = validateCompression(original, "Use token.");
assert.equal(validation.valid, false);
assert.match(validation.errors.join("\n"), /inline code changed or missing: ` exact_token`/);
});
it("falls back to original when validation detects structural loss", () => {
const original = "Please make sure to use `the exact token` in the request.";
const result = cavemanCompress(
{ messages: [{ role: "user", content: original }] },
{
enabled: true,
compressRoles: ["user"],
skipRules: [],
minMessageLength: 0,
preservePatterns: ["`[^`]+"],
intensity: "full",
}
);
const output = result.body.messages[0].content as string;
assert.match(output, /`the exact token`/);
});
});