import { test } from "node:test"; import assert from "node:assert/strict"; // The URL building, project pinning and cross-project refusal now live in // `liveClient` and are covered by agentLiveClient.test.mjs. What remains // MCP-layer-specific is that the server module is *importable*: it must not // start its stdio loop as a side effect of being imported, otherwise tests and // any tool that merely inspects the module would hang waiting on stdin. test("the MCP server module imports without starting its stdio loop", async () => { const mod = await import("../out/agent/mcpServer.js"); assert.equal(typeof mod, "object"); // Reaching this line proves main() did not run on import. }); test("the CLI module imports without running", async () => { const mod = await import("../out/agent/cli.js"); assert.equal(typeof mod.parseArgs, "function"); assert.equal(typeof mod.toolNameFor, "function"); assert.equal(typeof mod.liveArgsFor, "function"); assert.ok(mod.LIVE_ONLY instanceof Set); });