v0.1.16
Performance & Stability
Improvements
- Optimize initial session loading with parallel fetches and scoped queries
- Upgrade Claude Agent SDK to 0.2.72 with new hooks and message types
- Workspace-level conversation endpoint to eliminate N+1 queries
- Add image paste support via Cmd+V in chat input
- Unify "Create from..." modal with PR, branch, and issue tabs
- Attach GitHub/Linear issue content to sessions and rename CreateFromPR to CreateSession
- Add LRU eviction to PRCache to bound memory usage
- Add conversationsBySession index for O(1) session lookups
- Split streaming selectors for fine-grained re-renders
- Improve session naming with issue context
- Replace bulk useConversationsWithUserMessages with scoped selectors
- Remove unused recharts dependency (~800KB)
- Add composite indexes for file_tabs and summaries hot queries (#902)
- Eliminate duplicate COUNT query in paginated message fetch (#901)
- Batch-fetch repos by ID in ListAllSessions instead of loading all (#905)
- Replace global scriptOutputVersion with per-run version map (#923)
- Stabilize VirtualizedMessageList itemContent callback (#918)
- Deduplicate branchCacheStore background refresh
- Eliminate redundant string clones in file watcher event loop
- Add compact mode to message pagination (#904)
- Use Set for O(1) active session lookups in useActiveSessions (#912)
- Reduce git process concurrency and add shutdown-aware context (#896)
- Add fullscreen expand for Mermaid diagrams (#814)
- Split StreamingMessage timeline into structural + text merge (#906)
- Reorder Create Session tabs and focus search on tab click
- Optimize useSidebarSessions workspace grouping from O(w×n) to O(w+n)
- Add max node count limit to buildFileTree (#919)
- Parallelize GitHub avatar lookups with bounded concurrency (#898)
- Show per-message token count and cost below AI responses (#816)
- Optimize session switching, search, and long conversation memory
- Add "Create Session from..." option to header plus menu
- Separate DataTable grouping from collapse state
- Debounce chat search input to reduce unnecessary re-renders
- Add "Sessions Needing Attention" command and deferred update restart
- Cache conversation panes for instant session switching
- Add file content cache and proactive prefetch for instant file opening
- Add in-app AWS SSO token refresh for Bedrock users
- Split 3 largest files into focused domain modules
- Upgrade Claude Agent SDK to 0.2.76
- Add specialized renderers for Grep and Glob tool blocks
- Auto-expand Edit tool blocks to show diffs inline by default
- Enable 1M context window for Opus 4.6 and Sonnet 4.6
- Add fast mode support (Opus 4.6 fast output)
- Add Aptabase product analytics telemetry
- Add gzip compression middleware to API responses
- Clean up SDK model display names and add Auto model option
- Add collapsible built-in default preview to review settings
Fixes
- Fetch tags during release to fix changelog range
- Use absolute path for Turbopack shiki alias to fix release builds
- Robust remote prefix stripping and template fallback in fix-issues action
- Improve merge PR dropdown with icons and group separators
- Expose comment id and title in MCP review comment tools
- Rename "Create from..." to "Create Session from..." and fix duplicate dots
- Defer editor focus in clear() to prevent undefined node error
- Resolve plan mode stuck state caused by SDK Zod validation errors
- Add tiered git command timeouts and clone retry with backoff
- Add 1MB size guard to GetFileDiff to prevent unbounded JSON responses (#893)
- Use content-based key in FileTree to prevent unnecessary expanded state resets (#920)
- Use server-scoped context for background goroutines (#908)
- Close useMessagePrefetch subscription leak on abort
- Add retry with exponential backoff for GitHub API rate limits (#907)
- Polish sessions table layout by removing redundant columns
- Add double-unlock guard to SessionLockManager (#917)
- Keep search box visible when branches search yields no results
- Reduce session state sync lag for PR/check status updates
- Eliminate diff file opening lag caused by FileHistoryPanel
- Use generic text for review item "Add to chat" action
- Audit and improve Command Palette — fix broken commands, add 13 new entries
- Polish Merge PR popover to match Review popover styling
- Add --follow flag to file history git log for rename tracking
- Improve action templates and review prompts for robustness
- Use real-time WebSocket checkStatus for PR merge button visibility
- Commit queued messages on result event to prevent stuck queue
- Show specific reasons for merge blockers instead of generic "PR is blocked"
- Prevent blank conversation area when navigating back to evicted conversations
- Improve error handling for PR report MCP tools when backend is unreachable
- Improve error handling for review comment MCP tools when backend is unreachable
- Prevent duplicate key error in TabBar conversation list
- Persist conversation timeline on app quit mid-turn
- Align icons and prevent text wrapping in new session popover
- Restore auto-scroll to bottom when Edit tool blocks auto-expand
- Remove non-functional "View Summary" menu item from session toolbar
- Remove manual "Attach conversation context" UI
- Resolve auto-scroll race condition during streaming
- Prevent conversation area from going blank by keeping inactive panes measurable
- Clean up orphaned temp files on startup to prevent disk accumulation (#897)
- Render auto-compact notification inline in streaming timeline
- Suppress "No newline at end of file" warning in inline diff viewer
- Improve Plate.js editor quality — types, perf, and correctness
- Prevent blank conversation pane on session switch during streaming
- Resolve "mdx not found" language error in syntax highlighter
- Prevent blank conversation pane on session/conversation switch
- Show Fast Mode toggle in composer by requesting supported models from SDK
- Terminal respects version managers (mise, asdf, rbenv, nvm, pyenv)
- Clicking selected session while in module view navigates back to conversation
- Eliminate jarring scroll jump when switching conversations
- Scroll to bottom when first opening a session
- Prevent Merge PR button showing while CI checks run on new PR
- Prevent Fast Mode icon toggling back to unselected immediately
- Scroll to bottom when switching back to a session
- Make session switching instant for recently-viewed sessions
- Restore large text paste auto-conversion to attachment
- Move diff computation to Web Worker to prevent UI blocking
- Eliminate conversation tab scroll flash with per-conversation Virtuoso caching
- Use Pierre's built-in worker pool for off-thread Shiki tokenization
- Remove broken paint gate that left previous conversations invisible
- Revert Pierre worker pool to restore Shiki syntax highlighting (#1033)
- Dequeue message into timeline when agent picks it up on init
- Re-enable Pierre worker pool for off-thread Shiki tokenization
- Move Fast toggle before Thinking in composer toolbar
- Reduce notification focus-navigate window from 3s to 1s to prevent unwanted session switching
- Handle async rejection in Tauri event listener cleanup
- Position scroll-to-bottom pill closer to composer
- Eliminate blank conversation area on navigation by using synchronous LRU dispatch
- Deduplicate Auto model entries and fix auto model API passthrough
- Show correct 1M context window for extended context models
- Add pattern-based fallback for model display names
- Replace Tauri aptabase plugin with JS SDK
Misc
- Upgrade claude-agent-sdk from 0.2.72 to 0.2.75
- Add unit tests for 6 untested lib modules
- Improve sessions datatable with workspace names, branch icons, and action padding
- Use Search icon for Find tool in conversation stream
- Extract shared BranchPill component for consistent branch name styling
- Upgrade Go and Node dependency patches
- enhance: enrich all 6 review templates with structured workflows and severity guidance
- Upgrade shiki to v4.0.2 and @shikijs/* packages
- Fix stale and incorrect information across documentation