Description
Terminal sessions crash with integrity_violation errors, specifically render_row_count_mismatch. This appears to be triggered when resuming sessions with large scrollback buffers.
Error logs
{"ts":1776269568,"source":"ghostty","event":"integrity_violation","severity":"error","reason":"render_row_count_mismatch","detail":1,"pid":28165}
Often preceded by multiple:
{"ts":1776269349,"source":"ghostty","event":"integrity_violation","severity":"error","reason":"increase_capacity_capped_at_std_size","detail":606208,"pid":28165}
Environment
- Ghostty version: 1.3.0 (custom build "Ghostivate")
- macOS: 15.7.5 (Build 24G624)
- scrollback-limit: 50000000 (50MB)
Reproduction
- Have a terminal session with significant scrollback
- Run a command that produces large output (e.g., resuming a Claude Code session with ~2MB JSONL context)
- Terminal crashes with
render_row_count_mismatch
Workaround
Reducing scrollback-limit from 50MB to 10MB appears to mitigate but not eliminate the issue.
Additional context
The increase_capacity_capped_at_std_size errors (detail: 606208) suggest the terminal buffer is hitting capacity limits, which may be corrupting internal state leading to render_row_count_mismatch.
Description
Terminal sessions crash with
integrity_violationerrors, specificallyrender_row_count_mismatch. This appears to be triggered when resuming sessions with large scrollback buffers.Error logs
{"ts":1776269568,"source":"ghostty","event":"integrity_violation","severity":"error","reason":"render_row_count_mismatch","detail":1,"pid":28165}Often preceded by multiple:
{"ts":1776269349,"source":"ghostty","event":"integrity_violation","severity":"error","reason":"increase_capacity_capped_at_std_size","detail":606208,"pid":28165}Environment
Reproduction
render_row_count_mismatchWorkaround
Reducing
scrollback-limitfrom 50MB to 10MB appears to mitigate but not eliminate the issue.Additional context
The
increase_capacity_capped_at_std_sizeerrors (detail: 606208) suggest the terminal buffer is hitting capacity limits, which may be corrupting internal state leading torender_row_count_mismatch.