- Updated the EditorPanelContent to streamline the header layout and improve button styling for closing the panel.
- Adjusted the grid layout for better alignment and spacing, enhancing the overall user experience.
- Integrated a vertical separator with updated styling for a more cohesive design.
- Eliminated references to document editing in DocumentNode, FolderTreeView, and DocumentsSidebar for a cleaner interface.
- Updated DocumentNode to enhance accessibility with keyboard interactions and improved click handling.
- Adjusted layout in AllChatsSidebar and MobileSidebar for better user experience and consistency across components.
- Eliminated DocumentsSidebar and related state management from FreeLayoutDataProvider and LayoutDataProvider for a cleaner architecture.
- Updated Sidebar and MobileSidebar components to remove unused props and improve layout consistency.
- Adjusted navigation item handling to simplify sidebar interactions and enhance user experience.
- Introduced a comprehensive specification for renaming `searchSpace` to `workspace` in `surfsense_web` and `surfsense_desktop`, ensuring all TypeScript identifiers, React props, and local data structures are updated.
- Implemented migration shims for persisted local state to prevent data loss during the transition.
- Updated observability metrics and IPC channels to reflect the new naming convention.
- Removed legacy `active-search-space` module and replaced it with `active-workspace` to maintain consistency.
- Ensured no behavioral changes or data loss for users during the renaming process.
- Introduced a new state for detecting the artifacts page in LayoutDataProvider.
- Simplified the EmptyState component in ArtifactsLibrary for a cleaner presentation.
- Improved header layout in ArtifactsLibrary for better responsiveness and visual clarity.
- Updated section classes in UserSettingsLayoutShell and WorkspaceSettingsLayoutShell for better alignment.
- Adjusted padding in LayoutDataProvider for improved spacing on team and automation pages.
- Enhanced AllChatsSidebar layout by removing unnecessary height constraints for a more flexible design.
- Enhanced padding and gap in AllChatsSidebar for improved layout consistency.
- Adjusted skeleton and button sizes for better usability in chat components.
- Refactored folder type validation to ensure search_space_id is set based on workspace_id when missing.
- Removed unnecessary min-height and overflow properties in FolderTreeView and DocumentsSidebar for cleaner layout.
- Updated AllChatsSidebar to improve header styling and adjust padding for better visual consistency.
- Enhanced input and button sizes for improved usability across chat components.
- Removed unnecessary filtering logic in FolderTreeView to simplify document rendering.
- Updated DocumentsSidebar to eliminate redundant props and enhance layout consistency.
- Adjusted Sidebar component to conditionally render DocumentsSidebar based on the documentsPanel state.
- Added the ensure_publication function to create and verify the zero_publication if it is missing, ensuring idempotency during database initialization.
- Integrated ensure_publication into the create_db_and_tables function to prevent zero-cache crash loops on startup.
- Introduced a self-check script to validate the ensure_publication functionality on a create_all-bootstrapped database.
- Updated various components to reflect the transition from search space to workspace, including adjustments in imports and routing paths.
- Added SidebarListItem component to standardize the appearance of sidebar items across DocumentNode and FolderNode.
- Refactored DocumentNode and FolderNode to utilize SidebarListItem for improved layout and interaction.
- Updated ChatListItem to leverage sidebarListItemClassName for consistent styling.
- Enhanced SidebarSection to improve content rendering and visibility transitions.
- Replaced div wrappers in AuthenticatedDocumentsSidebarBase and AnonymousDocumentsSidebar with SidebarSection for better structure and consistency.
- Updated EmbeddedDocumentsMenu to enhance document management functionality.
- Changed icon from MoreHorizontal to SlidersVertical for improved visual representation.
- Adjusted SidebarSection styling for better alignment and spacing.
- Introduced EmbeddedDocumentsMenu component to facilitate document type filtering and folder creation.
- Updated AuthenticatedDocumentsSidebarBase and AnonymousDocumentsSidebar to integrate the new menu.
- Enhanced UI with dropdown functionality for improved user experience in document management.
- Updated the FolderTreeView component to clarify upload instructions.
- Introduced a new renderDocumentTree function in DocumentsSidebar for better organization and readability.
- Refactored the Sidebar component to utilize SidebarSection for improved layout consistency.
- Added contentClassName prop to SidebarSection for flexible styling options.
- Introduced a new dropdown menu item for managing connectors in the ComposerAction component.
- Removed unused upload button and related props from the DocumentsFilters component for improved clarity and simplicity.
- Updated LayoutDataProvider and RightPanel components to streamline state management and enhance layout consistency.
- Simplified the TeamPage function parameter destructuring for better readability.
- Updated LayoutDataProvider to increase maximum width for specific pages, enhancing layout consistency.
- Adjusted ZeroProvider state management to use undefined instead of null for clarity in context handling.
- Implemented a dropdown menu to filter between active and archived chats.
- Removed the previous tabbed interface for filtering and replaced it with a more intuitive dropdown.
- Updated layout and styling for better user experience.
- Integrated Reddit link into the CommunityStrip component for enhanced community engagement.
- Updated the FooterNew component to include a Reddit section with the corresponding icon.
- Modified JSON-LD structured data to include the Reddit URL for improved SEO and social media presence.
- Introduced a new schema structure for API connectors, including request and response fields.
- Updated connector implementations for Google Maps, Google Search, Reddit, Web Crawl, and YouTube to include detailed schema information.
- Enhanced the ConnectorPage component to render request and response schemas dynamically.
- Added SchemaField interface to standardize schema field definitions across connectors.
- Updated component props across multiple files to replace searchSpaceId with workspaceId for consistency.
- Adjusted internal logic to maintain functionality while aligning with the new terminology.
- Changed references from "search space" to "workspace" in various components for consistency.
- Updated the LayoutDataProvider to handle workspace data more effectively.
- Adjusted UI elements in IconRail and MobileSidebar to reflect the new terminology.
- Modified messages in the localization file to align with the updated terminology.
- Added activeWorkspaceIdAtom as a reference to activeSearchSpaceIdAtom.
- Refactored the UserTextPart component in user-message.tsx to simplify icon determination and tooltip logic, enhancing code clarity and maintainability.
- Updated the pricing page to include improved SEO metadata, including title, description, and keywords.
- Added structured data using JsonLd for better search engine visibility.
- Revised pricing plan descriptions and features for clarity and accuracy.
- Enhanced link behavior for external pricing links to open in a new tab with appropriate security attributes.
- Updated FAQ sections to reflect changes in credit and billing explanations.
- Introduced new skills in the skills-lock.json for animation vocabulary, emil design engineering, and review animations, enhancing the skill set available for users.
- Homepage rebuilt around competitive-intelligence positioning: connector grid,
how-it-works, use-case art, compare table, FAQ, and a scripted new-chat hero
demo (typewriter prompt, agent timeline, streamed answer, /login on send)
- Marketing pages for the Reddit/YouTube/Maps/SERP/Web Crawl scrape APIs at
/<slug>, a /connectors hub, and a bespoke /mcp-connector page
- Remove stale app/dashboard/[search_space_id] tree that broke the build
(canonical route is [workspace_id])
Co-authored-by: Cursor <cursoragent@cursor.com>
MCP consolidation:
- Route all MCP-capable connectors (Slack, Jira, Linear, ClickUp, Airtable,
Notion, Confluence, interim Gmail/Calendar, custom MCP) through a single
`mcp_discovery` subagent. Drive/OneDrive/Dropbox stay native to enrich the KB.
- Deprecate Discord/Teams/Luma: no viable official MCP server.
Google-only web search:
- Remove the main-agent `web_search` tool and the SearXNG platform service;
all public web search now flows through the `google_search` subagent via task().
- Deprecate the Tavily/SearXNG/Linkup/Baidu search connectors (HTTP 410 on
create, "Deprecated" badge); guide heavy users to the custom MCP connector.
- Remove web search from anonymous chat (pure Q&A).
- Tear SearXNG out of docker compose + install scripts; drop tavily-python
and linkup-sdk deps and their config/env vars.
Fix:
- metrics._package_version() now swallows any metadata lookup failure. A
malformed editable-install distribution with no `Version` field raised
KeyError deep in importlib.metadata, and since it runs on every
record_subagent_invoke_duration call it was crashing every task()
delegation. Verified end-to-end against live GPT-5.4.
Co-authored-by: Cursor <cursoragent@cursor.com>
The chat composers submit on Enter without checking whether an IME
composition is active. For Japanese/Chinese/Korean input, pressing Enter
to confirm a conversion fires the submit handler and sends a half-typed
message. Guard the Enter handlers with e.nativeEvent.isComposing in the
main chat editor, the anonymous free composer, and the mention/prompt
picker key navigation.
- Refactored fetchZeroContext to include a buildHeaders function for better header management.
- Added a request function to handle 401 errors and refresh sessions as needed.
- Improved overall session management for desktop authentication.
- Updated main-agent middleware to clarify that both filesystem reads/writes and knowledge-base retrieval are handled by the `knowledge_base` subagent.
- Introduced `_forward_mention_pins` function to carry `@`-mention pins into subagent state.
- Revised system prompts to reflect the new retrieval method and ensure proper citation handling.
- Removed the `search_knowledge_base` tool and its related tests, consolidating functionality under the `task` tool.
- Enhanced documentation to guide usage of the new retrieval approach and citation practices.