Commit graph

4031 commits

Author SHA1 Message Date
Anish Sarkar
d2a4b238d7 feat: enhance Google Drive client with thread-safe download and export methods
- Implemented per-thread HTTP transport for concurrent downloads to ensure thread safety.
- Refactored `download_file` and `download_file_to_disk` methods to utilize blocking calls on separate threads, improving performance during file operations.
- Added logging to track the start and end of download and export processes, providing better visibility into execution time.
- Updated unit tests to verify parallel execution of download and export operations, ensuring efficiency in handling multiple requests.
2026-03-27 19:25:03 +05:30
Anish Sarkar
0bc1c766ff feat: migrate Confluence and Jira indexers to unified parallel pipeline
- Refactored Confluence and Jira indexers to utilize the shared IndexingPipelineService for improved document processing.
- Updated the `_build_connector_doc` function in both indexers to create ConnectorDocument instances with enhanced metadata and fallback summaries.
- Modified the `index_confluence_pages` and `index_jira_issues` functions to return a tuple of (indexed_count, skipped_count, warning_or_error_message) for better error handling and reporting.
- Added unit tests for both indexers to validate the new parallel processing logic and ensure correct document creation and indexing behavior.
2026-03-27 16:02:09 +05:30
Anish Sarkar
22e36d00fc refactor: update bulk delete bar positioning and styling in DocumentsTableShell 2026-03-27 12:20:43 +05:30
Anish Sarkar
7a2467c1ed refactor: remove type counts invalidation from document mutation atoms 2026-03-27 12:10:26 +05:30
Anish Sarkar
ec79142d52 refactor: replace document type counts atom with real-time hook
- Removed the `documentTypeCountsAtom` and its associated logic from the document query atoms.
- Introduced `useZeroDocumentTypeCounts` hook to provide real-time document type counts, enhancing responsiveness as documents are indexed.
- Updated components to utilize the new hook for fetching document type counts, ensuring instant updates in the UI.
2026-03-27 12:04:01 +05:30
Anish Sarkar
683a4c17dd feat: implement thread-safe embedding access in document converters
- Added a reentrant lock to ensure thread-safe access to the tokenizer and embedding model, preventing runtime errors during concurrent operations.
- Updated the `truncate_for_embedding` and `embed_text` functions to utilize the lock, ensuring safe execution in multi-threaded environments.
- Enhanced the `embed_texts` function to maintain thread safety while processing multiple texts for embedding.
2026-03-27 11:31:00 +05:30
Anish Sarkar
db6dd058dd feat: migrate Linear and Notion indexers to unified parallel pipeline
- Refactored Linear and Notion indexers to utilize the shared IndexingPipelineService for improved document deduplication, summarization, chunking, and embedding with bounded parallel indexing.
- Updated the `_build_connector_doc` function in both indexers to create ConnectorDocument instances with enhanced metadata and fallback summaries.
- Modified the `index_linear_issues` and `index_notion_pages` functions to return a tuple of (indexed_count, skipped_count, warning_or_error_message) for better error handling and reporting.
- Added unit tests for both indexers to validate the new parallel processing logic and ensure correct document creation and indexing behavior.
2026-03-27 11:19:32 +05:30
Anish Sarkar
da6bbcfe39 feat: add file streaming download functionality to Google Drive client
- Introduced `download_file_to_disk` method to stream files directly to disk in chunks, reducing memory usage during downloads.
- Updated `download_and_extract_content` function to utilize the new streaming download method for binary files, enhancing efficiency in handling large files.
- Improved error handling for download operations, providing clearer feedback on failures.
2026-03-27 08:54:06 +05:30
Anish Sarkar
7c7f8b216c feat: implement batch indexing for selected Google Drive files
- Introduced `index_google_drive_selected_files` function to enable indexing of multiple user-selected files in parallel, improving efficiency.
- Refactored existing indexing logic to handle batch processing, including error handling for individual file failures.
- Added unit tests for the new batch indexing functionality, ensuring robustness and proper error collection during the indexing process.
2026-03-27 00:17:07 +05:30
Anish Sarkar
2f30e48e90 feat: implement async service locking in Google Drive client
- Introduced an asyncio lock to the GoogleDriveClient to ensure thread-safe access to the service instance.
- Refactored the get_service method to utilize the lock, preventing concurrent attempts to create the service and improving stability in multi-threaded environments.
2026-03-27 00:06:21 +05:30
Anish Sarkar
c016962064 feat: implement parallel file downloading and indexing in Google Drive indexer
- Added `_download_files_parallel` function to enable concurrent downloading of files from Google Drive, improving efficiency in document processing.
- Introduced `_download_and_index` function to handle the parallel downloading and indexing phases, streamlining the overall workflow.
- Updated `_index_full_scan` and `_index_with_delta_sync` methods to utilize the new parallel downloading functionality, enhancing performance.
- Added unit tests to validate the new parallel downloading and indexing logic, ensuring robustness and error handling during document processing.
2026-03-26 23:53:26 +05:30
Anish Sarkar
bd6e335cb3 feat: enhance performance logging in indexing pipeline
- Added performance logging to the `index_batch_parallel` method, capturing metrics for document indexing duration and concurrency.
- Introduced timing measurements for both the overall indexing process and the parallel document gathering phase, improving observability of the indexing workflow.
- Updated logging statements to provide detailed insights into the number of documents processed, indexed, and failed during the indexing operation.
2026-03-26 23:10:49 +05:30
Anish Sarkar
4fd776e7ef feat: implement parallel indexing for Google Calendar and Gmail connectors
- Refactored Google Calendar and Gmail indexers to utilize the new `index_batch_parallel` method for concurrent document indexing, enhancing performance.
- Updated the indexing logic to replace serial processing with parallel execution, allowing for improved efficiency in handling multiple documents.
- Adjusted logging and error handling to accommodate the new parallel processing approach, ensuring robust operation during indexing.
- Enhanced unit tests to validate the functionality of the parallel indexing method and its integration with existing workflows.
2026-03-26 19:34:04 +05:30
Anish Sarkar
e5cb6bfacf feat: implement parallel document indexing in IndexingPipelineService
- Added `index_batch_parallel` method to enable concurrent indexing of documents with bounded concurrency, improving performance and efficiency.
- Refactored existing indexing logic to utilize `asyncio.to_thread` for non-blocking execution of embedding and chunking functions.
- Introduced unit tests to validate the functionality of the new parallel indexing method, ensuring robustness and error handling during document processing.
2026-03-26 19:33:49 +05:30
Anish Sarkar
bbd5ee8a19 feat: enhance Google Calendar event update functionality
- Introduced helper functions `_is_date_only` and `_build_time_body` to streamline the construction of event start and end times for all-day and timed events.
- Refactored the `create_update_calendar_event_tool` to utilize the new helper functions, improving code readability and maintainability.
- Updated the Google Calendar sync service to ensure proper handling of calendar IDs with a default fallback to "primary".
- Modified the ApprovalCard component to simplify the construction of event update arguments, enhancing clarity and reducing redundancy.
2026-03-25 20:35:23 +05:30
Anish Sarkar
c3d5c865fd fix: update file skipping logic in Google Drive indexer
- Modified the `_should_skip_file` function to prevent skipping of documents with a FAILED status, ensuring they are reprocessed even if their content remains unchanged.
- Added a new integration test to verify that FAILED documents are not skipped during the indexing process.
2026-03-25 18:51:40 +05:30
Anish Sarkar
8c41fd91ba feat: add integration tests for indexing pipeline components
- Introduced integration tests for Calendar, Drive, and Gmail indexers to ensure proper document creation and migration.
- Added tests for batch indexing functionality to validate the processing of multiple documents.
- Implemented tests for legacy document migration to verify updates to document types and hashes.
- Enhanced test coverage for the IndexingPipelineService to ensure robust functionality across various document types.
2026-03-25 18:34:02 +05:30
Anish Sarkar
f7b52470eb feat: enhance Google connectors indexing with content extraction and document migration
- Added `download_and_extract_content` function to extract content from Google Drive files as markdown.
- Updated Google Drive indexer to utilize the new content extraction method.
- Implemented document migration logic to update legacy Composio document types to their native Google types.
- Introduced identifier hashing for stable document identification.
- Improved file pre-filtering to handle unchanged and rename-only files efficiently.
2026-03-25 18:33:44 +05:30
Rohan Verma
2da6fd89ea
Merge pull request #929 from AnishSarkar22/impr/thinking-steps
Impr: Updated to assistant-ui v0.12.x & many UI changes
2026-03-24 14:08:54 -07:00
Anish Sarkar
7222dd3ce7 fix: correct closing tag for button in roles manager component 2026-03-25 02:19:12 +05:30
DESKTOP-RTLN3BA\$punk
7b7fe171ca Merge commit '8232893fbb' into dev 2026-03-24 13:44:49 -07:00
Rohan Verma
8232893fbb
Merge pull request #932 from MODSetter/fix/roles-manager-jsx-tag
Fix mismatched JSX closing tag in roles-manager causing build failure
2026-03-24 13:22:53 -07:00
DESKTOP-RTLN3BA\$punk
724c81de42 Fix mismatched JSX closing tag in roles-manager causing build failure
Made-with: Cursor
2026-03-24 13:21:47 -07:00
Anish Sarkar
778cfac6fa Merge remote-tracking branch 'upstream/dev' into impr/thinking-steps 2026-03-25 01:50:10 +05:30
DESKTOP-RTLN3BA\$punk
9a29843866 Merge commit '31b0527e9a' into dev 2026-03-24 12:59:49 -07:00
Rohan Verma
31b0527e9a
Merge pull request #927 from LikiosSedo/fix/abort-controller-audio
fix: add AbortController to fetch call in audio download
2026-03-24 12:55:40 -07:00
Rohan Verma
3b3fca0769
Merge pull request #926 from LikiosSedo/fix/replace-any-types-contact-form
fix: replace `any` types with proper types in contact form component
2026-03-24 12:55:18 -07:00
Rohan Verma
2745518fdf
Merge pull request #925 from mvanhorn/fix/nested-interactive-elements
fix: separate nested interactive elements in roles manager
2026-03-24 12:54:42 -07:00
Rohan Verma
ac403402ea
Merge pull request #928 from CREDO23/feat/migrate-electric-to-zero
[Feat] Migrate real-time sync from Electric SQL to Rocicorp Zero
2026-03-24 12:30:57 -07:00
DESKTOP-RTLN3BA\$punk
90c89f7d99 Merge commit 'c3c4671797' into dev 2026-03-24 12:30:30 -07:00
Rohan Verma
c3c4671797
Merge pull request #931 from MODSetter/litellm_fix
Revert "fix: update dependency versions in pyproject.toml and uv.lock"
2026-03-24 12:28:55 -07:00
DESKTOP-RTLN3BA\$punk
80ddc3d2d2 Revert "fix: update dependency versions in pyproject.toml and uv.lock"
This reverts commit e5c651da00.
2026-03-24 12:28:08 -07:00
Rohan Verma
5b7ecee3b5
Merge pull request #930 from MODSetter/litellm_fix
fix: update dependency versions in pyproject.toml and uv.lock
2026-03-24 12:23:03 -07:00
DESKTOP-RTLN3BA\$punk
e5c651da00 fix: update dependency versions in pyproject.toml and uv.lock
- Changed litellm dependency to a specific version (1.80.10).
- Updated grpcio and protobuf dependencies in uv.lock to support different Python versions.
- Added sdist URLs for grpcio, griffe, and griffecli packages in uv.lock.
2026-03-24 12:22:27 -07:00
Anish Sarkar
c674fb3054 chore: ran linting 2026-03-25 00:27:24 +05:30
Anish Sarkar
323f7f2b4a Merge remote-tracking branch 'upstream/dev' into impr/thinking-steps 2026-03-25 00:17:08 +05:30
Anish Sarkar
eafc0c3808 refactor: enhance UserMessage component with improved layout and action bar functionality 2026-03-25 00:16:52 +05:30
Anish Sarkar
c894185102 refactor: implement error handling for video download and PPTX export in video presentation component 2026-03-24 23:57:32 +05:30
Anish Sarkar
fde8faec7e refactor: update UserAvatar component to use Next.js Image 2026-03-24 23:54:04 +05:30
Anish Sarkar
d0dcb8a98b refactor: simplify video presentation UI components and enhance loading/error states 2026-03-24 23:53:51 +05:30
Anish Sarkar
06b242c8f1 refactor: integrate custom table components into markdown rendering in chat 2026-03-24 23:42:12 +05:30
Anish Sarkar
15a81dbf41 feat: add GenerateImageToolUI component for rendering generated images with error handling and loading states 2026-03-24 23:03:00 +05:30
CREDO23
5d8a62a4a6 merge upstream/dev into feat/migrate-electric-to-zero
Resolve 8 conflicts:
- Accept upstream deletion of 3 composio_*_connector.py (unified Google connectors)
- Accept our deletion of ElectricProvider.tsx, use-connectors-electric.ts,
  use-messages-electric.ts (replaced by Zero equivalents)
- Keep both new deps in package.json (@rocicorp/zero + @slate-serializers/html)
- Regenerate pnpm-lock.yaml
2026-03-24 17:40:34 +02:00
CREDO23
5bf2734e8c add migration to clean up Electric SQL artifacts 2026-03-24 17:19:07 +02:00
CREDO23
65539b5381 revert changelog - keep historical ElectricSQL reference 2026-03-24 17:08:21 +02:00
CREDO23
0916c1addd remove stale ElectricSQL references from changelog and test fixtures 2026-03-24 17:07:11 +02:00
CREDO23
657f546908 fix: always render ZeroProvider, allow anon queries without 401 2026-03-24 16:59:42 +02:00
Anish Sarkar
a99791009a refactor: enhance markdown rendering with syntax highlighting and theme support 2026-03-24 20:24:30 +05:30
CREDO23
54ffdc5aad fix: always init Zero when user exists, pass auth as optional 2026-03-24 16:39:37 +02:00
CREDO23
5c98f1c717 add ZERO_MUTATE_URL and no-op mutate endpoint for zero-cache auth passthrough 2026-03-24 16:25:13 +02:00