import { describe, it } from "node:test"; import assert from "node:assert/strict"; import { applyRtkCompression, detectCodeLanguage, stripCode, } from "../../../open-sse/services/compression/index.ts"; describe("RTK code stripper", () => { it("detects common code languages", () => { assert.equal(detectCodeLanguage("interface User { id: string }"), "typescript"); assert.equal(detectCodeLanguage("def run():\n print('x')"), "python"); assert.equal(detectCodeLanguage('fn main() { println!("x"); }'), "rust"); assert.equal(detectCodeLanguage("package main\nfunc main() {}"), "go"); assert.equal(detectCodeLanguage("class Main { }"), "java"); }); it("preserves comments and string literals safely", () => { const js = stripCode( "// comment\nconst url = 'https://example.com/a//b';\n/* block */\nconsole.log(url);", "javascript" ); assert.ok(js.text.includes("// comment")); assert.ok(js.text.includes("https://example.com/a//b")); assert.ok(js.text.includes("/* block */")); }); it("preserves Python docstrings and comments", () => { const result = stripCode('"""doc"""\n# comment\nprint("ok")', "python", { preserveDocstrings: true, }); assert.ok(result.text.includes("doc")); assert.ok(result.text.includes("# comment")); }); it("applies to fenced code blocks through RTK runtime", () => { const body = { messages: [ { role: "assistant", content: `Before. \`\`\`txt ${Array.from({ length: 20 }, () => "same code line").join("\n")} \`\`\` After.`, }, ], }; const result = applyRtkCompression(body, { config: { enabled: true, intensity: "standard", applyToToolResults: false, applyToAssistantMessages: false, applyToCodeBlocks: true, enabledFilters: [], disabledFilters: [], maxLinesPerResult: 100, maxCharsPerResult: 12000, deduplicateThreshold: 3, }, }); assert.equal(result.compressed, true); const serialized = JSON.stringify(result.body.messages); assert.match(serialized, /Before/); assert.match(serialized, /After/); assert.match(serialized, /same code line/); assert.match(serialized, /\[rtk:dropped/); assert.ok(result.stats?.techniquesUsed.includes("rtk-code-strip")); }); it("does not compress non-code text when only code block compression is enabled", () => { const content = Array.from({ length: 20 }, () => "same prose line").join("\n"); const body = { messages: [{ role: "assistant", content }], }; const result = applyRtkCompression(body, { config: { enabled: true, intensity: "standard", applyToToolResults: false, applyToAssistantMessages: false, applyToCodeBlocks: true, enabledFilters: [], disabledFilters: [], maxLinesPerResult: 100, maxCharsPerResult: 12000, deduplicateThreshold: 3, }, }); assert.equal(result.compressed, false); assert.deepEqual(result.body, body); }); it("does not compress fenced code when code block compression is disabled", () => { const body = { messages: [ { role: "assistant", content: `Before. \`\`\`txt ${Array.from({ length: 20 }, () => "same code line").join("\n")} \`\`\` After.`, }, ], }; const result = applyRtkCompression(body, { config: { enabled: true, intensity: "standard", applyToToolResults: false, applyToAssistantMessages: false, applyToCodeBlocks: false, enabledFilters: [], disabledFilters: [], maxLinesPerResult: 100, maxCharsPerResult: 12000, deduplicateThreshold: 3, }, }); assert.equal(result.compressed, false); assert.deepEqual(result.body, body); }); });