fix(cursor): consolidate quarantine and replay allocation fixes - #5507
Conversation
Carries #5476, including same-line marker attribution and upstream-error ordering regressions. Co-authored-by: luvs01 <27862058+luvs01@users.noreply.github.com>
Partially carries #5474. Preserve complete-history turn and invocation fidelity; defer the raw-message cutoff because it can discard the initiating instruction. Add long-history regression coverage. Co-authored-by: luvs01 <27862058+luvs01@users.noreply.github.com>
Carries #5458. Reuse serialized arguments, probe UTF-8 length within the remaining envelope budget, and preserve final encoded-cost validation. Co-authored-by: luvs01 <27862058+luvs01@users.noreply.github.com>
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. Important Review skippedReview was skipped as selected files did not have any reviewable changes. ⚙️ Run configurationConfiguration used: Repository: lidge-jun/opencodex/.coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: lidge-jun/opencodex/.coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (7)
Included review availability: Your plan provides up to 10 included reviews per hour; 7 remain after this review. 📝 WalkthroughWalkthroughCursor recovery now bounds held output and detector input, attributes corruption to separate marker windows, preserves replay entry positions, and performs bounded UTF-8 checks for invocation arguments. Tests cover oversized frames, marker attribution, long repetition runs, and restoration limits. ChangesCursor midstream recovery
Cursor replay encoding
Priority: ⬇️ Low Estimated code review effort: 3 (Moderate) | ~30 minutes Change: Bug fix Possibly related PRs
Merge Risk: ⚪ Minimal · up to The implementation bounds Cursor quarantine and replay argument materialization while preserving marker attribution and event ordering; no concrete production-impacting defect is identified, so the PR is mergeable. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 62.50% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 8 functions across 6 files. (1 skipped: 1 unsupported.) ✨ Finishing Touches 💡 2📝 Generate docstrings 💡
🛠️ Fix failing CI checks 💡
🧪 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 |
Document the intentional per-frame prefix boundary and verify late matches pass through without corrective retry while leading-match regressions remain intact. Co-authored-by: luvs01 <27862058+luvs01@users.noreply.github.com>
|
✅ Deterministic PR hygiene checks passed. |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
리뷰 · 우선순위 58 / 80이 PR은 Cursor 어댑터에서 출력을 잠깐 붙잡아 두는 격리(quarantine)와 과거 대화를 다시 만드는 재생(replay) 경로를 한꺼번에 고칩니다. 모델이 한 번에 아주 큰 글·생각 조각을 보내도 격리 버퍼가 8 KiB를 넘기지 않게 막고, 앞부분만 보고 echo/라우팅 환각을 판별한 뒤에도 순서는 유지합니다. 중간 echo 진단은 서로 가까운 마커를 각각 따로 기록하고, 마커 줄에 있는 call-id도 그 마커 몫으로 잡습니다. 재생 쪽에서는 같은 내용이 반복될 때 라인 - 메인테이너의 판단이 필요한 지점 피드 앞부분만(echo 512자, 라우팅 2048자) 보고 교정 재시도를 걸고, 그 뒤에 오는 매칭은 그냥 통과시키는 경계가 제품으로 괜찮은지. 구조 문서와 회귀 테스트에는 이미 박혀 있습니다. 원본 PR 닫기는 포함이 너의 추천 CI(특히 cursor 관련 테스트 샤드) 통과를 보고 머지하세요. 머지 후 #5476·#5458은 닫고, #5474는 cutoff 후속 이슈를 남기거나 원본을 열린 채로 두세요. throw 경로의 이 댓글은 grok-bot이 작성했습니다 |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Summary
Bound Cursor output quarantine to 8 KiB while preserving reasoning order, leading-marker classification, and upstream error visibility. Retain independent adjacent echo findings, including call IDs on a marker's own line. Replace duplicate replay roots by their recorded index and avoid oversized UTF-8 allocations while restoring invocation arguments.
This bundle carries the following contributions from @luvs01 in three ordered contribution commits, followed by a dev merge and a focused contract-regression follow-up:
51c12285e729169d146682521f268116cda2a9cdf4eab495c382a49cc69301b2baf4aa8e5143ee3060bb62f81f130cdee436c5fffbf5dc87a8fc9284The external root envelope remains 192 roots / 512 KiB, with 2 KiB invocation admission followed by spare-budget restoration. Full history traversal remains; this PR does not claim a total request CPU or heap bound. Quarantine classifies only bounded leading windows and flushes when its retained-output budget is exhausted.
Original PR closure remains a maintainer action after proving inclusion on dev. No native stack or dependent PR chain is used.
Verification
git diff --checkpassed.6c2f7676dcedba21bdbacf4fb84a7b2c286d1ee6after feat(desktop): native macOS usage panel and release regression fixes #5490 landed; the shared CI, test runner, layout registries, and management route have no lane-local modifications. Final exact-head hosted CI is pending. Original-head CI is historical evidence only; it does not verify this combined branch.Checklist
Co-authored-by: luvs01 27862058+luvs01@users.noreply.github.com
Summary by CodeRabbit