diff --git a/docs/testing.md b/docs/testing.md index 98054e9510..3bcc882bd2 100644 --- a/docs/testing.md +++ b/docs/testing.md @@ -99,12 +99,10 @@ result that its client offloads, and Pi exercises default codemode execution. Use `REA_VERIFY_RUNTIME_ROOT` to select a production-only installed REA package. Receipts retain client versions, result digests, host coverage and owned-process cleanup. These POSIX lanes use a deterministic loopback model, so they do not -prove live model-provider or native Windows compatibility. Pi and Hermes bind -both `HOME` and `USERPROFILE` to the disposable account. Pi discovers the shared -personal skill through its default search path without an explicit skill setting; -Hermes discovers it through the selected `HERMES_HOME`. Qwen uses a -caller-configured skill directory; its default home-directory discovery remains -unverified. +prove live model-provider or native Windows compatibility. Qwen, Pi and Hermes +bind both `HOME` and `USERPROFILE` to the disposable account. Qwen and Pi discover +the shared personal skill through their default search paths without an explicit +skill setting; Hermes discovers it through the selected `HERMES_HOME`. Set `REA_VERIFY_HERMES_STICKY_PROFILE=1` to exercise native Hermes selection of a named sticky profile with `HERMES_HOME` still pointing to its root. diff --git a/scripts/verify-qwen-client.mjs b/scripts/verify-qwen-client.mjs index 4b85470d68..ed60ccd4c4 100644 --- a/scripts/verify-qwen-client.mjs +++ b/scripts/verify-qwen-client.mjs @@ -45,6 +45,7 @@ await Promise.all([ ]); const baseEnvironment = { PATH: process.env.PATH ?? "", + HOME: account, USERPROFILE: account, QWEN_HOME: profile, QWEN_RUNTIME_DIR: runtime, @@ -71,9 +72,6 @@ const original = JSON.stringify( }, telemetry: { enabled: false }, model: { name: "rea-client-fixture" }, - // Qwen uses os.homedir(), while REA's isolated CLI account uses USERPROFILE. - // This caller-owned setting lets the real client load the REA-installed bundle. - skills: { directories: [sharedSkills] }, mcpServers: { other: { command: "unrelated-server", disabled: true } }, }, null, @@ -112,7 +110,7 @@ const configured = JSON.parse( await readFile(join(profile, "settings.json"), "utf8"), ); assert.deepEqual(configured.model, { name: "rea-client-fixture" }); -assert.deepEqual(configured.skills, { directories: [sharedSkills] }); +assert.equal(configured.skills, undefined); assert.deepEqual(configured.mcpServers.other, { command: "unrelated-server", disabled: true, @@ -384,7 +382,7 @@ try { modelFixture: "loopback deterministic OpenAI-compatible endpoint; no live model-provider claim", skillDiscovery: - "caller-configured isolated shared directory; default OS home discovery unverified", + "native HOME shared personal directory; no explicit skill setting", catalogSize: TOOL_CONTRACTS.length, requests: fixture.requests, probes: fixture.probes,