- Introduced a `ProcessingMode` enum to differentiate between basic and premium processing modes.
- Updated `EtlRequest` to include a `processing_mode` field, defaulting to basic.
- Enhanced ETL pipeline services to utilize the selected processing mode for Azure Document Intelligence and LlamaCloud parsing.
- Modified various routes and services to handle processing mode, affecting document upload and indexing tasks.
- Improved error handling and logging to include processing mode details.
- Added tests to validate processing mode functionality and its impact on ETL operations.
Closes#1195.
Adds `surfsense_web/app/dashboard/error.tsx` so unhandled errors in any
dashboard route render inside the dashboard layout (sidebar/nav stay
visible) instead of blowing out to the root-level error page. `reset()`
now retries just the failed segment.
Follows the same PostHog capture pattern as the root error.tsx and adds
a secondary "Go to dashboard home" link for recovery when `reset()`
doesn't help.
Enhanced the NewChatPage to utilize the new GenericHitlApprovalToolUI for handling interrupt results. Updated the ToolFallback component to conditionally render the approval UI based on the result type. Additionally, introduced a new GenericHitlApprovalToolUI component to manage user approvals and parameter editing for tool actions.
Convert MobileEditorPanel, MobileHitlEditPanel, and MobileReportPanel from
static imports to dynamic imports with ssr: false. These panels pull in heavy
dependencies (PlateEditor, MarkdownViewer) that are only needed when users
interact with them on mobile.
Benefits:
- Reduces initial bundle size for chat page
- Mobile panels load only when opened by user
- Faster initial page load and Time to Interactive
- Heavy editor dependencies are code-split into separate chunks
Fixes#1146
- Add local state for message filter input with 300ms debounce
- Use useDebouncedValue hook to delay table filter updates
- Prevents full filtering pipeline from running on every keystroke
- Improves responsiveness for large log datasets
- Add autoComplete="username" and "current-password" to login form
- Add autoComplete="email" and "new-password" to register form inputs
- Add autoComplete="name" to profile display name input
- Add autoComplete="off" to connector search input
- Enables browser password managers and autofill functionality
- Remove 'use client' from connector-document-mapping.ts (only exports constants and pure functions)
- Remove 'use client' from sidebar-separator.tsx (purely presentational component)
- Remove 'use client' and Framer Motion from logs/loading.tsx, replace with Tailwind animations
- Reduces client bundle size by moving server-compatible code to server components
- Introduced IPC channels for getting and setting the active search space, enhancing user experience across the application.
- Updated the preload script to expose new API methods for active search space management.
- Modified the main window and quick ask functionalities to sync the active search space based on user navigation.
- Enhanced the desktop and web applications to allow users to select and manage their default search space seamlessly.
- Implemented automatic synchronization of the active search space during login and navigation events.
- Replaced icons for "General Assist," "Quick Assist," and "Extreme Assist" shortcuts to better represent their functionalities.
- Updated descriptions for each shortcut to enhance user understanding of their actions.
- Refactored the layout of the shortcut recorder for a more streamlined user experience.
- Introduced a new "General Assist" shortcut, allowing users to open SurfSense from anywhere.
- Updated shortcut management to include the new general assist functionality in both the desktop and web applications.
- Enhanced the UI to reflect changes in shortcut labels and descriptions for better clarity.
- Improved the Electron API to support the new shortcut configuration.