fix(cursor): retry pre-header discovery eof - #3052
Conversation
|
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; 9 remain after this review. 📝 WalkthroughWalkthroughThe Cursor HTTP/2 discovery handler now classifies pre-header stream closure as a transport failure. Tests verify one bounded retry and successful model discovery after the next request succeeds. ChangesCursor discovery resilience
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: 🟡 Moderate · up to The localized transport retry fix has focused verification and no identified architecture concerns, but the PR still marks its required readiness conditions as incomplete, so it should not be treated as merge-ready until those conditions are confirmed or explicitly accepted. Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Linked Issues checkExplanation The changes satisfy issue
✨ Finishing Touches🧪 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 |
|
✅ Deterministic PR hygiene checks passed. |
⏳ DRAFT
What to do
Review readiness checklist
0/4 boxes ticked. This PR stays in draft until every box above is ticked. |
리뷰 · 우선순위 71 / 80설명 이 PR은 Cursor live model discovery가 HTTP/2에서 응답 헤더가 오기 전에 스트림이 끊길 때 생기는 간헐 실패를 고친다. 지금 고치는 방식은 한 줄이다다. 현재 라인 265 (PR 추가분, live-models.ts req.on end) - status===0을 transport로 재분류하는 한 줄은 맞다. 기존 status!==200 분기가 status||"unknown"으로 HTTP unknown을 만들던 경로를 먼저 끊는다. 메인테이너의 판단이 필요한 지점
너의 추천 작성자에게 checklist를 채우고 draft를 ready로 올리라고 한 뒤, 그 상태로 머지해도 된다. 한 줄 수정 + 이슈 재현 픽스처 테스트라서 스코프가 깨끗하고 #3051을 닫는다. types/config 스플릿과 무관하니 close-don't-rebase 대상이 아니다. 머지 후 #3051은 Closes로 자동 종료되는지 확인하면 끝. 이 댓글은 grok-bot이 작성했습니다 |
Summary
Fix Cursor live model discovery when an HTTP/2 stream ends before response headers. The adapter now classifies status-less EOF as a transient transport failure, so the existing bounded retry can recover without changing completed HTTP-status, authentication, decode, or empty-response handling.
Closes #3051
Verification
bun test tests/cursor-hardening.test.ts(42 pass)PATH="/Users/terrytan/.nvm/versions/node/v24.3.0/bin:/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin" bun run test:changed(9637 pass, 3 skip)PATH="/Users/terrytan/.nvm/versions/node/v24.3.0/bin:/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin" bun run typecheckPATH="/Users/terrytan/.nvm/versions/node/v24.3.0/bin:/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin" bun run privacy:scanPATH="/Users/terrytan/.nvm/versions/node/v24.3.0/bin:/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin" bun run test(exit 0; parallel phase 16345 pass, 12 skip)git diff --checkChecklist
Review readiness checklist
This PR stays in draft until every box below is ticked. Tick all four boxes once the requirements are met:
All CI tests are green on my local testing.
I pushed my PR to the latest dev commit.
I resolved all correct Codex and CodeRabbit findings.
My PR is ready for review.
Summary by CodeRabbit
Bug Fixes
Tests