- Created a new notifications table with necessary fields and indexes.
- Set up Electric SQL replication for notifications, search_source_connectors, and documents tables.
- Implemented idempotent checks for user and publication creation in the migration script.
- Introduced a new notifications table with relevant fields and indexes.
- Configured Electric SQL replication for the notifications, search_source_connectors, and documents tables.
- Centralized Electric SQL user credentials in the migration script for better management.
- Ensured idempotency in the migration process for creating users and publications.
- Added centralized configuration for Electric SQL user credentials in env.py.
- Updated migration script to utilize these credentials for creating and granting permissions to the Electric SQL user.
- Enhanced error handling in the indexing process to differentiate between actual failures and cases where no new documents are processed.
- Updated notification messages to reflect the status accurately, including a message for when no new items are synced.
- Standardized return values across various indexer tasks to return `None` on success, simplifying logging and error management.
- Added an `updated_at` timestamp field to the Notification model for better tracking of notification updates.
- Updated the NotificationButton component to change the unread notification badge color for improved visibility.
- Adjusted the NotificationPopup component's layout and text handling for better responsiveness and readability.
- Added session refresh for notifications to prevent stale data after rollbacks in multiple document processing tasks.
- Wrapped notification update logic in try-except blocks to handle potential failures gracefully and log errors without crashing the process.
- Improved error handling for notification updates in various document processing functions, enhancing overall robustness.
- Introduced new notifications API routes for marking notifications as read and marking all as read, with automatic syncing via Electric SQL.
- Updated the frontend hook to utilize the new API for marking notifications as read, enhancing the user experience with real-time updates.
- Included necessary response models for API interactions.