Polish UI, Rename Sessions, Markdown Output Support, Queued Messages#1
Merged
Polish UI, Rename Sessions, Markdown Output Support, Queued Messages#1
Conversation
UX polish and feature additions across the chat/dashboard UI: add Markdig package for markdown rendering; replace many emoji labels with inline SVG icons; implement inline session renaming (JS focus/blur handling) and visual active-nav state in the sidebar; improve persisted/session lists and filters; add message queuing and a planning mode for input; enhance dashboard cards to render different ChatMessage types (tool calls, reasoning, errors) and truncate/preview long results; track intent and usage info with new event handlers and UI indicators; add smart scrolling JS interop and minor CSS tweaks for better layout and hover states. Also includes small model/service updates to support new message types and events.
PureWeen
added a commit
that referenced
this pull request
Feb 22, 2026
Fixes from 2× Opus 4.6, 2× Sonnet 4.6, 2× Codex 5.3, 1× Gemini 3 Pro: 1. Remove duplicate psi.WorkingDirectory assignment in RunGhAsync (all 7) 2. Fix branch collision check: use exact line matching instead of substring Contains to avoid false positives on prefix-matching branch names (Opus 4.6) 3. Wrap OnReposListReceived in InvokeOnUI to prevent Collection-modified crash when Blazor enumerates RepoManager lists (Opus 4.6 #2) 4. Make RemoveWorktree request/response with proper RequestId correlation: - Add RequestId to RemoveWorktreePayload - Add WorktreeRemoved message type for success confirmation - Client now awaits response with 30s timeout - WorktreeError routes to both create and remove pending requests (Opus 4.6 #1, Sonnet 4.6 #1/#2, Codex 5.3 #1) 5. Strengthen IsWorktreeInUse guard: also checks live non-hidden sessions by working directory path, not just organization metadata (Codex 5.3) 6. Kill orphaned gh process on CancellationToken fire (Sonnet 4.6 #1) Deferred (pre-existing, out of scope): - RepoManager state pollution with remote data (Gemini) - Hardcoded PATH overwrite on non-Windows (Gemini, pre-existing) - Server-side shared worktree guard (Gemini, defense-in-depth) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
UX polish and feature additions across the chat/dashboard UI: add Markdig package for markdown rendering; replace many emoji labels with inline SVG icons; implement inline session renaming (JS focus/blur handling) and visual active-nav state in the sidebar; improve persisted/session lists and filters; add message queuing and a planning mode for input; enhance dashboard cards to render different ChatMessage types (tool calls, reasoning, errors) and truncate/preview long results; track intent and usage info with new event handlers and UI indicators; add smart scrolling JS interop and minor CSS tweaks for better layout and hover states. Also includes small model/service updates to support new message types and events.