fix(daemon): stabilize LaunchAgent restart and proxy env passthrough (#27276)

Merged via /review-pr -> /prepare-pr -> /merge-pr.

Prepared head SHA: b08797a995
Co-authored-by: frankekn <4488090+frankekn@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
This commit is contained in:
Frank Yang
2026-02-25 23:40:48 -08:00
committed by GitHub
parent 96c7702526
commit b975711429
7 changed files with 334 additions and 5 deletions

View File

@@ -309,6 +309,26 @@ describe("buildServiceEnvironment", () => {
expect(env.OPENCLAW_LAUNCHD_LABEL).toBe("ai.openclaw.work");
}
});
it("forwards proxy environment variables for launchd/systemd runtime", () => {
const env = buildServiceEnvironment({
env: {
HOME: "/home/user",
HTTP_PROXY: " http://proxy.local:7890 ",
HTTPS_PROXY: "https://proxy.local:7890",
NO_PROXY: "localhost,127.0.0.1",
http_proxy: "http://proxy.local:7890",
all_proxy: "socks5://proxy.local:1080",
},
port: 18789,
});
expect(env.HTTP_PROXY).toBe("http://proxy.local:7890");
expect(env.HTTPS_PROXY).toBe("https://proxy.local:7890");
expect(env.NO_PROXY).toBe("localhost,127.0.0.1");
expect(env.http_proxy).toBe("http://proxy.local:7890");
expect(env.all_proxy).toBe("socks5://proxy.local:1080");
});
});
describe("buildNodeServiceEnvironment", () => {
@@ -319,6 +339,19 @@ describe("buildNodeServiceEnvironment", () => {
expect(env.HOME).toBe("/home/user");
});
it("forwards proxy environment variables for node services", () => {
const env = buildNodeServiceEnvironment({
env: {
HOME: "/home/user",
HTTPS_PROXY: " https://proxy.local:7890 ",
no_proxy: "localhost,127.0.0.1",
},
});
expect(env.HTTPS_PROXY).toBe("https://proxy.local:7890");
expect(env.no_proxy).toBe("localhost,127.0.0.1");
});
it("forwards TMPDIR for node services", () => {
const env = buildNodeServiceEnvironment({
env: { HOME: "/home/user", TMPDIR: "/tmp/custom" },