Commit Graph

3125 Commits

Author SHA1 Message Date
Spence 63beb2d93b Spence/channels prop otherusers (#6056) 2025-12-10 16:09:03 -05:00
Spence 17dfeb29ec Spence/navigationcustomization (#6050) 2025-12-10 12:38:04 -05:00
Spence 564351cfa2 Spence/peers refactorcont (#6016) 2025-12-08 10:44:12 -05:00
spencrmartin 82c0925c06 Add enhanced debugging for Matrix room ownership
- Add fullRegistry logging to see complete ownership mapping
- Create debug script for Matrix room ownership analysis
- Enhanced logging shows all room-to-session mappings
- Script helps identify duplicate registrations and ownership conflicts
- Provides clearMatrixRegistry() function for manual cleanup
2025-12-05 17:37:57 -05:00
spencrmartin 06090970da Fix Matrix message isolation: prevent messages appearing in wrong tabs
- Replace hasExplicitMatrixRoomId check with room ownership validation
- Only the tab that owns a Matrix room (registered in globalMatrixListenerRegistry) processes messages
- Each Matrix room can only have one designated owner tab at a time
- Prevents Matrix messages from leaking to other Matrix tabs for different rooms
- Maintains proper message isolation between Matrix tabs
2025-12-05 17:34:16 -05:00
spencrmartin ecba53b8a7 Fix session isolation while preserving localStorage
- Keep localStorage for tab persistence across app restarts
- Generate unique session IDs for each restored tab to prevent conflicts
- Each tab gets temp_restored_[timestamp]_[random] session ID on restore
- Backend sessions are created properly for each tab
- Maintains tab state (titles, types, Matrix properties) while ensuring isolation
2025-12-05 16:57:54 -05:00
spencrmartin 244642a6a7 Fix session isolation: prevent shared session IDs across tabs
- Disable localStorage restoration to prevent session ID conflicts
- Always start with fresh tabs and unique session IDs
- Clear localStorage on app start to ensure clean state
- Each tab now gets a truly unique backend session ID
- Fixes messages appearing in wrong tabs due to shared sessions
2025-12-05 16:56:29 -05:00
spencrmartin 7bc0a836eb debug: add extensive logging to track session ID isolation issues 2025-12-05 16:50:32 -05:00
Spence 5333640a9c Spence/channels fix roomcreation (#6003) 2025-12-05 16:32:31 -05:00
Spence 8297942293 Spence/channels fixes (#6002) 2025-12-05 11:49:09 -05:00
Spence bafb951553 Add navigation overlay mode with full implementation (#5982) 2025-12-04 11:53:31 -05:00
spencrmartin b9d7f8a634 Add detailed debugging to Matrix room history message detection
- Enhanced getRoomHistory method with comprehensive logging
- Added detailed message type detection debugging
- Log current user ID, message processing steps, and final categorization
- Added message type breakdown summary for troubleshooting
- This will help identify why user messages aren't appearing after reload
2025-12-03 16:55:17 -05:00
spencrmartin c39b9a3ca3 Fix Matrix room history message type detection
- Ensure user messages from self are properly categorized as 'user' type
- Only categorize messages as 'assistant' if they have explicit Goose markers or are from other users
- This fixes the issue where user's own messages weren't appearing in conversation history
- Improved message type detection logic to be more precise and reliable
2025-12-03 16:48:04 -05:00
spencrmartin 5db7d65819 Ensure 1:1 session mapping for Matrix Spaces and Rooms
- Updated createSpace method to automatically create session mappings
- Updated createRoom method to automatically create session mappings
- Both Matrix Spaces and regular rooms now have guaranteed 1:1 relationship with Goose sessions
- Session mappings ensure Matrix room history and Goose session history stay synchronized
- This enables proper session loading when navigating to Matrix rooms/spaces
2025-12-03 16:45:54 -05:00
spencrmartin 42421f2a06 Implement Matrix Spaces navigation and room creation
- Update MatrixService to support Matrix Spaces with isSpace, roomType, and isPublic properties
- Add SpaceChild interface for representing space hierarchy
- Implement space navigation with drill-down into sub-spaces and back navigation
- Add contextual room/space creation (create spaces at top level, rooms within spaces)
- Update ChannelsView to show only Matrix Spaces instead of all non-DM rooms
- Add breadcrumb navigation and space content display
- Include empty tiles for creating new rooms within spaces
2025-12-03 16:33:31 -05:00
Spence 4e302227b8 Spence/vision channelsfix (#5960) 2025-12-03 10:21:14 -05:00
Spence 46b9b714fe Spence/channels (#5952) 2025-12-02 13:33:24 -05:00
Spence cc945effdd feat: add configurable navigation position (top/left/bottom/right) (#5945) 2025-12-02 10:37:12 -05:00
Spence 2863217f44 fix: update Hub background matrix nodes and text colors (#5913) 2025-11-28 11:54:17 -05:00
Spence f7822116bb fix: auto-create and show new tab when submitting from Hub (#5912) 2025-11-28 11:23:39 -05:00
Spence 331abd5ff0 Spence/vision background (#5906) 2025-11-27 20:55:12 -05:00
Spence 04d10cd30d Spence/vision marketplace (#5904) 2025-11-27 13:33:34 -05:00
Spence e926293921 Spence/vision peers (#5894) 2025-11-26 13:45:05 -05:00
Spence dcc446d3a0 Spence/vision toolcalls2 (#5891) 2025-11-26 12:42:03 -05:00
Spence ff2b8ceb3f Spence/vision tabs (#5890) 2025-11-26 10:23:32 -05:00
Spence 81787ab382 Spence/vision chatinput (#5878) 2025-11-25 14:56:49 -05:00
spencrmartin 93fba464f3 Revert "Vision gui (#5872)"
This reverts commit 76e6e5f325.
2025-11-25 13:25:37 -05:00
Spence 76e6e5f325 Vision gui (#5872)
Co-authored-by: Thomas Petersen <thomasp@BLKFYD79LLC2M.local>
2025-11-25 09:54:23 -05:00
spencrmartin 17d8a6370d Fix extension loading in AgentManager and various UI improvements
- Add extension loading to AgentManager::get_or_create_agent() to ensure extensions are loaded from config when creating new agents
- Fixes issue where extensions weren't coming online in alpha (showing 0 enabled)
- Add detailed logging for extension loading success/failure
- Various UI improvements to sidecar and chat components
2025-11-24 13:09:17 -05:00
spencrmartin d44531c19a Preserve comment gutter space when sidecar is open
- Add pr-16 (64px) right padding to messages in condensed mode
- Position badge at right-2 instead of right-0 -mr-12
- Badge stays within message bounds, visible in gutter
- Prevents text from extending into comment gutter area
- Maintains consistent spacing with/without sidecars
2025-11-23 09:14:01 -05:00
spencrmartin e50787c241 Add smooth animations to comment interactions
- Badge appears with fade-in and zoom-in (200ms)
- Badge scales up on hover (105%) and down on click (95%)
- Drawer slides in from top with fade (200ms)
- Comment input wrapper animates in smoothly
- Active:scale-95 provides tactile click feedback
- All transitions use duration-200 for consistency
- Creates polished, responsive feel
2025-11-23 09:11:24 -05:00
spencrmartin 4986493876 Add yellow highlight to selected text while creating comment
- Show yellow highlight overlay on selected text during comment creation
- Uses same yellow highlight style as existing comments
- Slightly more opaque (40% vs 30%) to indicate active selection
- Highlight persists while comment input is open
- Provides visual feedback of what text is being commented on
- Matches existing comment highlight appearance
2025-11-23 09:06:37 -05:00
spencrmartin 2f920c0b96 Show only comment input when clicking 'Add comment' badge
- Track which badge was clicked (existing vs new)
- Existing badge shows full drawer with all comments
- New 'Add comment' badge shows only comment input
- No existing comments shown when adding new comment
- Cleaner UX for creating new comment threads
2025-11-23 09:00:48 -05:00
spencrmartin 1d3859279a Show separate 'Add comment' badge for new selections
- Existing comments badge stays at first comment position
- New selection shows separate 'Add comment' badge at selection position
- Both badges can be visible simultaneously
- Prevents existing badge from jumping when making new selection
- New badge hidden when drawer is expanded
2025-11-23 08:59:00 -05:00
spencrmartin 87c4994f3c Remove blue comment button that appears on text selection
- Comment out the floating blue comment button
- Selection still triggers badge appearance via onSelectionChange
- Cleaner UI - badge is the only comment trigger
- Removes duplicate comment creation UI
2025-11-23 08:57:55 -05:00
spencrmartin e3c73fe9ba Use subtle text style for comment badge icon and text
- Change text-text-prominent to text-text-subtle for icon
- Change text-text-prominent to text-text-subtle for count and 'Add comment' text
- More subtle, less prominent appearance in UI
- Maintains text-text-muted for resolved indicators
2025-11-23 08:57:16 -05:00
spencrmartin 82cc04c730 Keep comment badge on single line with whitespace-nowrap
- Add whitespace-nowrap to prevent text wrapping
- Add flex-shrink-0 to icon to prevent squishing
- Ensures 'Add comment' text stays on one line
- Badge maintains compact appearance
2025-11-23 08:56:38 -05:00
spencrmartin 56176b6ad4 Show 'Add comment' text in badge when no comments exist
- Badge shows 'Add comment' when totalComments is 0
- Shows count when comments exist
- Clearer call-to-action for new comment threads
- Maintains icon + text layout consistency
2025-11-23 08:55:44 -05:00
spencrmartin c2d50102bd Condense multiple comment threads into single badge with total count
- Show one badge per message instead of one per comment thread
- Badge displays total count of all comments on the message
- Positioned at first comment's highlight location
- Drawer shows all comments when expanded
- Cleaner UI when message has multiple comment threads
- Badge count includes all top-level comments and replies
2025-11-23 08:55:02 -05:00
spencrmartin 147b8955b2 Position comment badges in right gutter aligned with highlights
- Badges now positioned absolutely at highlight Y position
- Appear in right gutter (right-0 -mr-12) in condensed mode
- Each badge positioned by its comment's highlight location
- Drawer expands from badge position, not bottom of message
- Maintains visual connection between highlight and comment
- Same positioning logic as full mode, just in gutter instead of margin
2025-11-23 08:53:55 -05:00
spencrmartin 796c45b1cb Make comment drawer overlay without affecting message layout
- Drawer now absolutely positioned (doesn't push messages down)
- Positioned top-full right-0 from badge
- Added shadow-xl for better visual separation
- High z-index (z-50) to overlay other content
- No vertical layout shift when expanding/collapsing
- Messages stay in their original positions
2025-11-23 08:52:45 -05:00
spencrmartin e0504287d3 Position comment badge on right side with drawer expanding below
- Badge now positioned on right side of message
- Drawer expands below badge (not inline with it)
- Fixed width container (384px) aligned right
- Remove absolute positioning from badge
- Better visual hierarchy and alignment
2025-11-23 08:51:38 -05:00
spencrmartin 0b668f0cc4 Replace slide-in panel with inline expandable drawer for condensed comments
- Add CommentDrawer component that expands inline like an accordion
- Badge click expands drawer below message (no layout shift)
- Smooth 200ms height transition with max-height 600px
- Collapsible header with chevron up/down indicator
- Stays within message flow - better UX than panel
- Remove unused CommentPanel, CommentPanelContext, CommentPanelLayout
- Update GooseMessage to render condensed comments inline
- Uses app design tokens throughout
2025-11-23 08:50:51 -05:00
spencrmartin e01827faa7 Replace modal with slide-in panel for condensed comment mode
- Add CommentPanel component that slides in from right like mini-sidecar
- Add CommentPanelContext for global panel state management
- Add CommentPanelLayout wrapper to shift chat content left when panel opens
- Update MessageComments to use panel instead of modal
- Smooth 300ms transitions for panel and content shift
- Uses app design tokens for consistent styling
- Better UX - no backdrop overlay, content stays visible
2025-11-23 08:46:45 -05:00
spencrmartin f02accbf38 Add responsive comment system with condensed mode for sidecars and small screens 2025-11-23 08:41:48 -05:00
spencrmartin 70b7ef8945 Update tooltip changes in TabBar 2025-11-23 08:29:26 -05:00
spencrmartin f9900e99ba Fix Matrix notification 'Open Chat' to load history automatically
- Wait for existing session mappings instead of creating duplicate recipe sessions
- Clear empty cache entries to force reload from backend
- Skip backend loading for temp_ sessions (like new_ sessions)
- Auto-reload after 15 seconds if history doesn't load (increments reloadCount to force remount)
- Expose useChatStream cache globally for debugging and cache clearing
- Add detailed logging throughout the flow for debugging

This fixes the issue where clicking 'Open Chat' on a Matrix notification would show a blank chat that required manual reload (Cmd+Shift+R) to see the conversation history.
2025-11-21 16:02:50 -05:00
spencrmartin ac0dcea0e7 Improve tab clickability and close button interaction
- Add 24px invisible tap target above tabs for easier clicking
- Increase close button size and padding for better usability
- Set close button z-index to 100 to prevent draggable area conflicts
- Remove tab separator lines to accommodate extended tap target
- Increase bottom accent bar from 2px to 3px for better visibility
2025-11-21 15:41:09 -05:00
spencrmartin 93e7e48d89 Move user badge to the left side of avatar container
- Changed from right: -20px to right: 20px
- Badge now appears inside the avatar container, to the left
- Creates an overlapping effect with the Goose dot
2025-11-21 15:22:16 -05:00
spencrmartin 63fab5fd74 Push user badge 8px further to the right
- Changed from -right-3 (-12px) to right: -20px
- This adds 8px more distance from the Goose dot avatar
- Creates more visual separation between the two avatars
2025-11-21 15:21:40 -05:00