Files
OmniRoute/tests/unit/zcode-protocol.test.ts
Bezrabotnyi 595d04dad9 feat(providers): add local ZCode ACP backend (#10184)
* feat(providers): add local ZCode ACP backend

* test(snapshots): regenerate translate-path golden for zcode provider

The new local ZCode ACP backend (zcode://app-server/stdio) was added to the
provider catalog but the translate-path golden snapshot was not regenerated,
so the combined suite (provider-translate-path-golden.test.ts) failed on the
merged tip. Regenerate the snapshot to include the zcode translate-path entry.

Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com>

* docs(env): document ZCODE_* vars for the local zcode provider

Registers the 11 ZCODE_* env vars read by the zcode executor (.env.example
+ docs/reference/ENVIRONMENT.md) so the env-doc-sync gate stays green.

Co-authored-by: Diego Souza <8016841+diegosouzapw@users.noreply.github.com>

* test(autoCombo): include zcode in the glm-family provider set

#10184's local zcode backend advertises the full GLM_SHARED_MODELS
line-up (registry/zcode, authType none) — same documented case as auggie
and devin-cli-agentic. Update auto/glm provider-set assertion to include
it.

Co-authored-by: Diego Souza <8016841+diegosouzapw@users.noreply.github.com>

---------

Co-authored-by: roomhacker <roomhacker@bezrabotnyi.com>
Co-authored-by: adevwithpurpose <adevwithpurpose@users.noreply.github.com>
Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com>
2026-08-16 00:13:36 -03:00

31 lines
936 B
TypeScript

import test from "node:test";
import assert from "node:assert/strict";
import { join } from "node:path";
import { ZcodeAppServerClient } from "../../open-sse/executors/zcodeProtocol.ts";
const fixture = join(process.cwd(), "tests/fixtures/fake-zcode-app-server.mjs");
test("ZCode protocol performs hello handshake and exchanges fragmented framed RPC", async () => {
const client = new ZcodeAppServerClient({
command: process.execPath,
args: [fixture],
cwd: process.cwd(),
startupTimeoutMs: 3000,
requestTimeoutMs: 3000,
});
try {
await client.start();
const result = await client.call("zcode-agent", "initialize", [
{ workspacePath: "/workspace", workspaceIdentity: "/workspace" },
]);
assert.deepEqual(result, {
available: true,
protocolName: "ZCode Protocol",
protocolVersion: 1,
transportKind: "stdio",
});
} finally {
await client.close();
}
});