Repository navigation
Description
Client or integration
Other
Area
Platform (Windows / macOS / Linux)
Summary
tests/clients/desktop-compatibility-build-probe.test.ts › "owned ancestor junctions and persistent retargets fail before proof publication" intermittently fails on hosted Windows runners. The PowerShell child it spawns produces no output and is killed at the test's 10 s deadlineMs (exitCode: null, signal: SIGKILL, timedOut: true, empty stdout and stderr). The same test passes in about 1.5 s on other hosted Windows runs from the same dev base, so the deadline looks too tight for slow PowerShell start-up under runner load, not like a product defect. Separately, the harness reports it as an assertion failure, so the shard does not retry it.
Reproduction
Not deterministic. Observed in:
- Cross-platform CI
lane=allrun 40540187621, attempt 1, jobwindows 8/9(shard 8/9, batch 12/50), heada99745788(feat(codex): restore LazyCodex role models from a change history #7693). The failing call is attests/clients/desktop-compatibility-build-probe.test.ts:41(spawnTestChild([resolveTrustedWindowsPowerShellExe(), "-NoProfile", "-NonInteractive", "-Command", script], { cwd: root, deadlineMs: 10_000 })), with the assertion at:44. Attempt 2 of the same job passed. - The same test passed (1480 ms) in
lane=allrun 40530456183, jobwindows 8/9, head950062c71(feat(dashboard): revocable server-side remembered device sessions #7593), on the samedevbased9f594b01.
#7693 does not reach this test. It changes only src/codex/role-model-history.ts and src/server/management/codex-agent-role-routes.ts (imported by management-api.ts and route-registry.ts). The probe test imports src/codex/desktop-compatibility/installed-build.ts (→ lib/test-home-guard, lib/windows-elevation, desktop-app/types), tests/helpers/spawn-test-child.ts and tests/helpers/desktop-package-observation.ts. None of these import the changed files or management routes, and the subprocess is a fixed PowerShell script.
Possible directions: give this test's PowerShell spawn the same start-up allowance other Windows PowerShell tests use, or classify a no-output deadline kill as a retryable infrastructure timeout in the Windows shard runner.
Version
dev at d9f594b01 (2.94.0 line)
Operating system
GitHub-hosted Windows runner (windows 8/9 shard of ci.yml lane=all)
Provider and model
No response
Logs or error output
error: expect(received).toMatchObject(expected)
- "exitCode": 0,
+ "elapsedMs": 10028.5582,
+ "exitCode": null,
+ "signal": "SIGKILL",
+ "stderr": "",
+ "stdout": "",
+ "timedOut": true,
(fail) owned ancestor junctions and persistent retargets fail before proof publication [10038.62ms]
##[error]Test failure in shard 8/9 batch 12/50 (exit 1); not retrying assertion/test failures.
Screenshots and supporting files
No response
Redacted configuration
No response
Checks
- I searched existing issues and documentation.
- I removed secrets, tokens, account details, request credentials, and personal data.
Activity
docs(fork): triage second upstream batch (lidge-jun#7785-lidge-jun#7794…
test(windows): warm the PowerShell ancestry probe before its timed run (
Ingwannu commentedon Oct 29, 2026
Closing the fixture issue as addressed on dev by #7885, merged as
d588ca9d22a905a1ab5efef3f31151723229df8a(verified in trusted dev9b78a16f4fe0c300527e6b183052407269bb941d). The same ancestry probe now runs through the existing cold-spawn warm-up and emits bounded phase markers before the PowerShell result; the measured 10s execution deadline and all junction/publication assertions remain. This addresses the cold-lifecycle diagnosis without classifying every assertion failure as retriable.Exact-head required PR CI is successful. The PR records a native Windows 12-pass probe and 57-pass adjacent set; those are author-run receipts, not an independent Windows run here. I verified the current source but did not reproduce a loaded hosted Windows shard. The next full Windows batch remains its own platform evidence, and a recurrent deadline with phase markers would be new evidence to reopen this report. No per-PR lane=all run, live package probe or service mutation was made.