Conversation
…, shell wraps, Alacritty) (#127) * fix(core): preserve shell transcript across narrow wraps * fix(core): suppress soft-wrap-only shell rerenders * fix(core): compare default shell output by logical wraps * feat(cli): add Alacritty + Ghostty to synchronized output allowlist + docs Auto-detect Alacritty (ALACRITTY_WINDOW_ID, TERM=alacritty[-direct]) and Ghostty (TERM_PROGRAM=ghostty, GHOSTTY_RESOURCES_DIR). Both support DEC mode 2026 — Alacritty since v0.14 (Jan 2024), Ghostty since launch. Docs: README "Environment variable overrides" table now lists the three flicker-related env vars (PROTO_LEGACY_ERASE_LINES, PROTO_FORCE_SYNCHRONIZED_OUTPUT, PROTO_DISABLE_SYNCHRONIZED_OUTPUT) and adds a "TUI flicker mitigation" section explaining the two interventions and the auto-detected terminal allowlist. Tests: 5 new entries in the parametrized auto-detect test. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(cli): pre-slice tool output by visual height before Ink layout Backport of upstream #3591 (commits 172df3d07 + 9ac3c1165). Adds sliceTextForMaxHeight() to ToolMessage.tsx that walks tool output by code-point and tracks visual width per terminal column, slicing to maxHeight before the string enters Ink's <Text wrap="wrap">. Without this, a single 160k-character JSON/base64 line never gets sliced (lines.length === 1 <= maxHeight), but Ink still computes layout over the full unbounded string — the source of the "Ink hangs on huge tool output" symptom. The hidden line count is passed to MaxSizedBox via additionalHiddenLinesCount so the "+ N hidden lines" indicator stays accurate. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(cli): throttle streamed Content/Thought events with 60ms flush timer Backport of upstream #3591 (commit b4428f3c8). Wraps the for-await event loop with a per-stream buffered queue that coalesces consecutive Content (or Thought) events into a single React state update. Without this, every streamed token chunk triggered an Ink redraw — the main source of streaming flicker. - bufferedEvents queue + flushTimer (STREAM_UPDATE_THROTTLE_MS = 60). - flushBufferedStreamEvents() merges consecutive same-kind events before dispatching to handleContentEvent / handleThoughtEvent. - All non-Content/Thought events flush immediately to preserve order. - Retry path discards buffered partial content from the failed attempt. - try/finally guarantees a final flush on stream end or throw. - flushBufferedStreamEventsRef exposes the flusher to cancelOngoingRequest so partial output still commits to history when the user hits Esc. Adapted from upstream: - Our fork removed dualOutput.startAssistantMessage/processEvent calls. - Our HookSystemMessage handler treats the message as content (Ralph Loop iteration info) rather than upstream's stop-hook history item; we flush before processing to preserve ordering. - Upstream's UserPromptSubmitBlocked / StopHookLoop / dualOutput helpers don't exist in our fork — handled implicitly via the exhaustive switch. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: 秦奇 <gary.gq@alibaba-inc.com> Co-authored-by: Automaker <automaker@localhost> Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Warning Rate limit exceeded
Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 11 minutes and 6 seconds. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (15)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Code Coverage Summary
CLI Package - Full Text ReportCore Package - Full Text ReportFor detailed HTML reports, please see the 'coverage-reports-22.x-ubuntu-latest' artifact from the main CI run. |
Summary
Promotes everything since #123:
After merge, auto-release tags v0.26.13 (or higher) and publishes to npm.
🤖 Generated with Claude Code