mirror of
https://github.com/garrytan/gstack.git
synced 2026-09-17 10:25:33 +02:00
fix(test): first cross-platform run of the wave's tests — Linux tmp portability + Windows-lane truthfulness
Four platform holes from the lanes' first full run over the v1.67 tests: - uninstall neutral-root fallback hardcoded /private/tmp (macOS-only) and ENOENT'd on Linux CI, where the shard TMPDIR is the gstack-containing path that forces the fallback — now realpath'd literal /tmp. - uninstall's kept-and-listed assertion demanded a backslash path on Windows while the bash uninstall prints POSIX paths — now separator-insensitive. - setup-rerun's IS_WINDOWS=0 sub-case and the iron rule's force-restart consent path are Unix-shaped by construction (Git Bash ln -snf copies without Developer Mode; the consent path boots a real replacement daemon the browserless Windows lane cannot host) — gated off win32 with the reasons in place; the Windows-relevant halves still run there. - codex-under-codex-detection drives rendered bash under a hardcoded POSIX PATH, so every case saw empty output on Windows — moved to KNOWN_WINDOWS_INCOMPATIBLE with the run receipt. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
49c1fedfd8
commit
4c335c9133
@@ -177,6 +177,12 @@ describe('#2219 iron rule (CLI integration)', () => {
|
||||
}, 45_000);
|
||||
|
||||
test('wedged-alive daemon + --force-restart IS killed (explicit consent path)', async () => {
|
||||
// Unix lanes only: the consent path must boot a REAL replacement daemon
|
||||
// to answer the command, which the secretless/browserless Windows lane
|
||||
// cannot do (no Chromium install), and the teardown relies on setsid
|
||||
// process-group semantics Windows lacks. The Windows-relevant half of
|
||||
// the iron rule — busy → refusal, never an implicit kill — runs above.
|
||||
if (process.platform === 'win32') return;
|
||||
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'browse-iron-'));
|
||||
const stateFile = path.join(tmpDir, 'browse.json');
|
||||
const daemon = await startWedgedDaemon();
|
||||
|
||||
Reference in New Issue
Block a user