test(windows): remove WP13 CPU starvation and skip one platform-independent restore scenario - #2452
Conversation
|
✅ Deterministic PR hygiene checks passed. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
Included review availability: Your plan provides up to 10 included reviews per hour; 6 remain after this review. 📝 WalkthroughWalkthroughThe lock contention tests now poll release markers synchronously, wait with ChangesLock contention test stabilization
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This test-only change reduces Windows test CPU starvation and skips one Windows-only timing-sensitive scenario without changing product behavior; no actionable merge-blocking risk remains after normal checks and review. Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
리뷰 · 우선순위 45 / 80설명: 이 풀 리퀘스트는 윈도우 WP13 씨아이에서 남은 시험 실패 두 개를 고친다. 제품 코드는 안 건드린다. 워크플로도 안 건드린다. 파일은 시험 두 개뿐이다. 지금 CURRENT 시나리오 E 는 자식이 잠금을 잡고 놓아 주기 표시를 최대 45초 동안 기다린다. 지금 HEAD 의 tests/helpers/codex-write-lock-child.ts 51줄은 Restore truth 시험은 플랫폼과 상관 없는 바쁜 봉투 계약이다. 일부러 에스큐라이트를 막고 실제 시엘아이를 켠다. 그 런타임이 주장이 아니다. 작성자는 맥에서 약 11.85초로 통과했다고 적었다. 이 PR 은 윈도우만 건너뛴다. 이유는 시험 바로 위에 적혀 있다. A-reduced 와 E 는 윈도우에서 남긴다. 심볼 링크 세 개와 번 패닉은 이미 다른 커밋이 고쳤고 이 PR 은 안 만진다. 맥에서는 윈도우 스케줄 완화를 증명할 수 없다. 파워셸 신원 한도도 맥에서 안 돈다. 윈도우 전용 건너뛰기도 맥에서 안 보인다. 작성자도 씨아이 레그 내기라고 적었다. 그 정직함이 맞다. 로컬 집중 시험은 151 통과라고 적혀 있다. 이 상자에서 윈도우 레그를 다시 돌리지는 않았다. 2152 는 원래 실패가 여섯이었다. 이 PR 은 남은 두 개만 다룬다. 그래서 2152 를 이 PR 만으로 닫지 않는다. 제품 경로, 콤보 미리보기, 도구 정수 허용 목록은 안 만진다. 사용자 길이로는 제품 구멍이 아니라 윈도우 씨아이 빨강이라서 45. 카탈로그 팁은 Ox Alpha x-preview-f-free + deepseek-v4-flash-vision-exp. Cursor 정적 카탈로그는 opus-4-8-fast / opus-5-fast. 2334 CursorCredentialRouter 는 여전히 src/providers/cursor-pool.ts 모듈+테스트만 있고 어댑터에 연결되지 않았다. 2332 H2 는 discovery 전용. 2320 overflow + 2342 는 이미 dev. 2188 사이드카는 이미 dev. 2361 tests/helpers/codex-write-lock-child.ts 라인 51 - HEAD 는 Bun.file().size 를 바삐 돈다. 이 PR 이 existsSync 와 Atomics.wait 20밀리다 메인테이너의 판단이 필요한 지점
너의 추천 이 댓글은 grok-bot이 작성했습니다 |
Summary
Repairs the two WP13 Windows CI failures that survived the earlier round of
#2152 work. Test-only: exactly two files, no product code, no workflow change.
The other four failures in the original report are already fixed and are not
touched here — the three symlink fixtures by
8f04c9a52(explicit Windows skipsat
tests/update-npm-cache-preflight.test.ts:84,:96,:181) and the Bunpanic by
0776683(bounded crash-only retry at.github/workflows/ci.yml:622).Scenario E,
namespace_unsafe.tests/helpers/codex-write-lock-child.ts:49tight-spun on
Bun.file(...).sizefor up to 45 seconds, burning a core. Thecontender meanwhile runs a PowerShell identity lookup with a 30-second CI ceiling
(
src/codex/user-identity.ts:43), and a timeout there maps tonamespace_unsafeatsrc/codex/codex-write-lock.ts:290. The starvation wasincidental to what E actually asserts. Now
existsSyncpolling with 20 msAtomics.waitintervals, release-marker protocol unchanged, and the refusalmessage is surfaced in the child's JSON diagnostics so the next failure is
diagnosable instead of mute.
Scenario "Restore truth", 45-second watchdog. It verifies a
platform-independent busy-envelope contract, then pays ~11 s of deliberate SQLite
contention plus real CLI startup. Its runtime is not the assertion. Now skipped
on Windows only, with the reason in the source.
A-reducedandEstay activeon Windows.
Verification
macOS ran and passed
A-reduced,E, every other scenario, andRestore truth(~11.85 s), so the non-Windows path and the release-markercoordination are proven.
What this cannot prove locally: macOS cannot demonstrate Windows scheduler
relief, cannot exercise the PowerShell identity timeout, and cannot show the
Windows-only skip taking effect. That needs the manual Windows CI leg
(
.github/workflows/ci.yml:537). Merging this is a bet that removing adocumented CPU-starvation source helps a timeout-shaped failure — a reasonable
one, but stated as a bet rather than a proof.
Checklist
devSummary by CodeRabbit