This release adds 2 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Summary
AI summaryUpdates P0 — Critical Fixes, P1 — Important Fixes, and Tests across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Adds `draw_str_clipped()` method to `CellBuffer` for clipping text rendering within arbitrary rectangles. Adds `draw_str_clipped()` method to `CellBuffer` for clipping text rendering within arbitrary rectangles. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Low |
Messages and sidebar now use `draw_str_clipped` to keep text within component bounds. Messages and sidebar now use `draw_str_clipped` to keep text within component bounds. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Low |
Adds 22 new tests, increasing total passing tests to 473. Adds 22 new tests, increasing total passing tests to 473. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Bugfix | High |
Fixes `push_wrapped()` to use display-width-aware wrapping, correcting overflow with wide Unicode characters. Fixes `push_wrapped()` to use display-width-aware wrapping, correcting overflow with wide Unicode characters. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Bugfix | High |
Fixes `truncate_end()` to use display width rather than byte length, correcting truncation of multi-byte UTF-8 strings. Fixes `truncate_end()` to use display width rather than byte length, correcting truncation of multi-byte UTF-8 strings. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Bugfix | High |
Prevents sidebar separator from overwriting tab labels, ensuring tabs remain visible. Prevents sidebar separator from overwriting tab labels, ensuring tabs remain visible. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Bugfix | Medium |
Clamps input area against terminal height, preventing UI collapse on small terminals. Clamps input area against terminal height, preventing UI collapse on small terminals. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Bugfix | Medium |
Repositions toast notifications above the status bar instead of inside the input area. Repositions toast notifications above the status bar instead of inside the input area. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Bugfix | Medium |
Fixes sidebar height underflow using saturating subtraction to avoid panic or wrap on tiny terminals. Fixes sidebar height underflow using saturating subtraction to avoid panic or wrap on tiny terminals. Source: llm_adapter@2026-06-03 Confidence: high |
— |
Full changelog
TUI Overlap Fixes
This release fixes critical text overlap bugs in the Rust TUI where UI components would render on top of each other.
P0 — Critical Fixes
- Added
draw_str_clipped()— newCellBuffermethod that clips text rendering to an arbitraryRect, preventing components from writing outside their allocated zone - Fixed
push_wrapped()— now uses display-width-aware wrapping instead of character count, fixing overflow with wide Unicode chars (CJK, emoji) - Fixed
truncate_end()— now usesdisplay_width()instead ofs.len()(byte count), fixing incorrect truncation of multi-byte UTF-8 strings - Fixed sidebar separator overwriting tabs — separator now drawn before tab labels so tabs remain visible
- Messages and sidebar now use
draw_str_clipped— text stays within component bounds
P1 — Important Fixes
- Input area clamped against terminal height — prevents all zones from collapsing on small terminals
- Toast repositioned — now renders above the status bar instead of inside the input area
- Sidebar height underflow fixed — uses
saturating_subto prevent panic/wrap on tiny terminals
Tests
- 22 new tests added (473 total passing)
- Coverage for
draw_str_clipped,push_wrappedwith wide chars,truncate_endwith multi-byte text, and layout clamping edge cases
Full Changelog: https://github.com/sediman-agent/OpenSkynet/compare/v0.1.5...v0.2.2
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About Sediman Browse
All releases →Related context
Related tools
Earlier breaking changes
- v0.2.7 Renamed data directory from ~/.sediman to ~/.terminator across Python and Rust codebases
Beta — feedback welcome: [email protected]