Files
0688faaec3 reland(sidecar): converge product clients on package boundary (#7636)
* reland(sidecar): converge product clients after weekly release

Restore the sidecar convergence from #7244 after the release-scheduling revert in #7634. This tree matches the previously reviewed and cross-platform QA-accepted implementation at d83d4e032f.

* fix(sidecar): clarify identity and cache witnesses

Generated-By: looper 0.11.2 (runner=fixer, agent=codex)

* fix(packaged): probe cross-source desktop owners

Generated-By: looper 0.11.2 (runner=fixer, agent=codex)

* fix(sidecar): preserve cross-source launch ownership

Generated-By: looper 0.11.2 (runner=fixer, agent=codex)

* test(pack): assert cross-source Windows launch ownership

Generated-By: looper 0.11.2 (runner=fixer, agent=codex)

* fix(sidecar): align HyperFrames with client boundary

Generated-By: looper 0.11.2 (runner=fixer, agent=codex)

* fix(e2e): keep HyperFrames fixture in helper lane

Generated-By: looper 0.11.2 (runner=fixer, agent=codex)

* docs(sidecar): restore review and handoff contracts

Generated-By: looper 0.11.2 (runner=fixer, agent=codex)

* fix(sidecar): restore cache and daemon boundaries

Generated-By: looper 0.11.2 (runner=fixer, agent=codex)

* fix(pack): restore sourcemaps and Linux smoke discovery

Generated-By: looper 0.11.2 (runner=fixer, agent=codex)

* fix(sidecar): make payload handoff generation-atomic

* fix(sidecar): preserve packaged action and mode parity

Generated-By: looper 0.11.2 (runner=fixer, agent=codex)

* test(pack): align Linux cleanup resource count

Generated-By: looper 0.11.2 (runner=fixer, agent=codex)

* fix(packaged): preserve headless sidecar mode

* test: normalize source line endings

* fix(daemon): launch Codex cmd shims on Windows

---------

Co-authored-by: Looper <looper@noreply.github.com>
2026-09-01 13:22:04 +00:00

30 lines
1.0 KiB
TypeScript

import { writeFile } from "node:fs/promises";
import { fileURLToPath } from "node:url";
import { spawnSidecar, type SidecarStamp } from "../../src/index.js";
const serializedStamp = process.env.OD_TEST_NESTED_SIDECAR_STAMP;
const readyPath = process.env.OD_TEST_NESTED_SIDECAR_READY;
if (serializedStamp == null || readyPath == null) {
throw new Error("nested sidecar fixture configuration is required");
}
const childStamp = JSON.parse(serializedStamp) as SidecarStamp;
const child = await spawnSidecar({
args: [fileURLToPath(new URL("./stamped-child.ts", import.meta.url))],
command: process.execPath,
// Windows isolation is a sidecar invariant even when a caller attempts to
// opt out. On POSIX this remains a normal attached child.
detached: false,
resources: {
dataRoot: "/tmp/open-design-nested-child",
ownerPid: null,
port: 0,
runtimeRoot: "/tmp/open-design-nested-child-runtime",
},
stamp: childStamp,
});
await writeFile(readyPath, JSON.stringify({ pid: child.process.pid }));
setInterval(() => undefined, 60_000);