mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-07-26 09:52:11 +03:00
* refactor(cli): remove legacy Qwen Code integration * refactor(qwen): remove deprecated Qwen OAuth provider * feat(cli): rebuild Qwen Code integration for upstream V4 * fix(qwen): clear stale CLI auth on reset * test(qwen): align retired provider coverage * fix(db): renumber qwen-cleanup migration 129 -> 130 release/v3.8.49 tip took slot 129 via #7843 (usage_history_codex_strong_identity, itself renumbered from 128 during the #7838/#7840 base-red cleanup) after this branch forked; renumber remove_unregistered_qwen_data to 130. Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com> --------- Co-authored-by: Diego Rodrigues de Sa e Souza <8016841+diegosouzapw@users.noreply.github.com>
52 lines
1.7 KiB
TypeScript
52 lines
1.7 KiB
TypeScript
import test from "node:test";
|
|
import assert from "node:assert/strict";
|
|
|
|
const { resolveVersionProbe, shouldUseShellForVersionProbe } =
|
|
await import("../../src/lib/acp/registry.ts");
|
|
const { getAgentById } = await import("../../src/lib/acp/registry.ts");
|
|
|
|
test("resolveVersionProbe parses quoted binary paths without shell semantics", () => {
|
|
const probe = resolveVersionProbe(
|
|
"/tmp/My Custom Agent",
|
|
'"/tmp/My Custom Agent" --version',
|
|
true
|
|
);
|
|
|
|
assert.deepEqual(probe, {
|
|
command: "/tmp/My Custom Agent",
|
|
args: ["--version"],
|
|
});
|
|
});
|
|
|
|
test("resolveVersionProbe rejects custom version commands that switch binaries", () => {
|
|
const probe = resolveVersionProbe("/tmp/custom-agent", 'bash -lc "id"', true);
|
|
assert.equal(probe, null);
|
|
});
|
|
|
|
test("resolveVersionProbe rejects shell metacharacters in version commands", () => {
|
|
const probe = resolveVersionProbe(
|
|
"/tmp/custom-agent",
|
|
"/tmp/custom-agent --version; touch /tmp/pwned",
|
|
true
|
|
);
|
|
assert.equal(probe, null);
|
|
});
|
|
|
|
test("shouldUseShellForVersionProbe preserves Windows npm wrapper detection", () => {
|
|
assert.equal(shouldUseShellForVersionProbe("codex", "win32"), true);
|
|
assert.equal(
|
|
shouldUseShellForVersionProbe("C:\\Users\\dev\\AppData\\Roaming\\npm\\codex.cmd", "win32"),
|
|
true
|
|
);
|
|
assert.equal(shouldUseShellForVersionProbe("C:\\Tools\\claude.exe", "win32"), false);
|
|
assert.equal(shouldUseShellForVersionProbe("codex", "linux"), false);
|
|
});
|
|
|
|
test("Qwen Code is registered with its upstream ACP mode", () => {
|
|
const qwen = getAgentById("qwen");
|
|
assert.ok(qwen);
|
|
assert.deepEqual(qwen.spawnArgs, ["--acp"]);
|
|
assert.equal(qwen.providerAlias, "qwen-code");
|
|
assert.equal(qwen.protocol, "stdio");
|
|
});
|