mirror of
https://github.com/nexu-io/open-design.git
synced 2026-10-27 09:51:12 +01:00
* 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>
30 lines
1.0 KiB
TypeScript
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);
|