Conversation
1. Removed a lot of unnecessary borders around elements. 2. Added line numbers for the input in issue conversation 3. Added a `BodyPreview` component that shows a preview of the issue body in the TUI list widget. test(ui): update tests chore: fix lints feat(style): migrate over issue_create fix(style): remove old style borders for new ones in textarea previews fix: fix bugs
…ersation fix: render placeholder in create issue mode for convo preview
test(markdown): add UI tests for fixed list rendering
Greptile SummaryThis is an automated release PR ( Key changes:
|
| Filename | Overview |
|---|---|
| src/ui/components/issue_convo_preview.rs | Major feature addition: the preview panel now shows a "Nearby Issues" list when in Details mode, with Up/Down/Enter navigation. Contains one unused import (textwrap::wrap) that will produce a compiler warning. |
| src/ui/components/issue_conversation.rs | Bug fix for checklist rendering: replaces list_prefix: Option<String> with a ListPrefix struct that correctly handles first-line vs. continuation indentation and prevents the bullet prefix from doubling with the task marker. |
| src/ui/components/issue_list.rs | Refactored: build_issue_list_item and build_issue_list_lines extracted as public helpers; new build_details_preview_issue_ids computes a centered 5-item window around the selected issue; IssueListPreviewUpdated action is dispatched on issue open. |
| src/ui/components/issue_create.rs | Sends IssueListPreviewUpdated after creating a new issue, but only with a single-item issue_ids list, which limits preview navigation for newly created issues. |
| src/ui/mod.rs | Passes issue_pool to IssueConvoPreview::new(); adds IssueListPreviewUpdated variant to the Action enum. |
| benches/ui_hotspots.rs | Switches from criterion::black_box to the stable std::hint::black_box, which is the recommended approach per the Criterion docs. |
| tests/markdown_checklists.rs | New integration tests covering checklist rendering (unchecked, checked, wrapping continuations) using insta snapshots; good coverage of the bug fix. |
| CHANGELOG.md | Auto-generated release notes for 0.3.5; missing a blank line between the new section and the preceding ## [0.3.4] heading. |
Sequence Diagram
sequenceDiagram
participant User
participant IssueList
participant IssueConvoPreview
participant IssueConversation
User->>IssueList: Press Enter on issue
IssueList->>IssueList: build_details_preview_issue_ids(selected_number)
IssueList-->>IssueConvoPreview: Action::SelectedIssue { number, labels }
IssueList-->>IssueConvoPreview: Action::SelectedIssuePreview { seed }
IssueList-->>IssueConvoPreview: Action::IssueListPreviewUpdated { issue_ids, selected_number }
IssueList-->>IssueConversation: Action::EnterIssueDetails { seed }
IssueConvoPreview->>IssueConvoPreview: screen = Details → render_issue_list_preview()
User->>IssueConvoPreview: Press Up/Down
IssueConvoPreview->>IssueConvoPreview: list_state.select_previous/next()
IssueConvoPreview->>IssueConvoPreview: selected_number updated
User->>IssueConvoPreview: Press Enter
IssueConvoPreview-->>IssueConvoPreview: Action::SelectedIssue { number }
IssueConvoPreview-->>IssueConvoPreview: Action::IssueListPreviewUpdated { issue_ids }
IssueConvoPreview-->>IssueConversation: Action::EnterIssueDetails { seed }
Comments Outside Diff (1)
-
src/ui/components/issue_create.rs, line 692-697 (link)Single-item preview list for new issues
When a new issue is created,
IssueListPreviewUpdatedis sent withissue_ids: vec![issue_id]— a list of exactly one entry. This means the "Nearby Issues" panel inIssueConvoPreviewwill only ever show the newly-created issue rather than a window centred around it (asbuild_details_preview_issue_idsdoes inIssueList). If users can navigate nearby issues from the preview pane, they'll immediately hit the end of the list.Consider using
build_details_preview_issue_idshere too (requires a reference to the current issue list), or at minimum documenting the intentional limitation.
Last reviewed commit: "chore: release"
| }, | ||
| }; | ||
| use std::sync::{Arc, RwLock}; | ||
| use textwrap::wrap; |
| - test fix(benches): make benches use `std::hint::black_box` | ||
| ## [0.3.4] - 2026-03-08 |
There was a problem hiding this comment.
Missing blank line between changelog sections
There is no blank line separating the last entry of the 0.3.5 section from the ## [0.3.4] heading. Some Markdown parsers will fail to recognise the heading and render it as plain text instead. This is likely a quirk in the release-plz template, but worth a one-line fix.
| - test fix(benches): make benches use `std::hint::black_box` | |
| ## [0.3.4] - 2026-03-08 | |
| - test fix(benches): make benches use `std::hint::black_box` | |
| ## [0.3.4] - 2026-03-08 |
🤖 New release
ratatui-toaster: 0.1.1 -> 0.1.2 (✓ API compatible changes)gitv-tui: 0.3.4 -> 0.3.5 (✓ API compatible changes)Changelog
ratatui-toastergitv-tuiThis PR was generated with release-plz.