diff --git a/surfsense_backend/app/routes/search_source_connectors_routes.py b/surfsense_backend/app/routes/search_source_connectors_routes.py index 3a3e2c1a0..1aca7c43b 100644 --- a/surfsense_backend/app/routes/search_source_connectors_routes.py +++ b/surfsense_backend/app/routes/search_source_connectors_routes.py @@ -1086,7 +1086,9 @@ async def _run_indexing_with_notifications( ) else: # Success - just no new documents to index (all skipped/unchanged) - logger.info("Indexing completed: No new documents to process (all up to date)") + logger.info( + "Indexing completed: No new documents to process (all up to date)" + ) # Still update timestamp so ElectricSQL syncs and clears "Syncing" UI if update_timestamp_func: await update_timestamp_func(session, connector_id) diff --git a/surfsense_backend/app/tasks/connector_indexers/discord_indexer.py b/surfsense_backend/app/tasks/connector_indexers/discord_indexer.py index d2a5f5e39..8f0c76e53 100644 --- a/surfsense_backend/app/tasks/connector_indexers/discord_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/discord_indexer.py @@ -549,7 +549,10 @@ async def index_discord_messages( logger.info( f"Discord indexing completed: {documents_indexed} new messages, {documents_skipped} skipped" ) - return documents_indexed, None # Return None on success (result_message is for logging only) + return ( + documents_indexed, + None, + ) # Return None on success (result_message is for logging only) except SQLAlchemyError as db_error: await session.rollback() diff --git a/surfsense_backend/app/tasks/connector_indexers/notion_indexer.py b/surfsense_backend/app/tasks/connector_indexers/notion_indexer.py index a5d0a2037..2d36351fa 100644 --- a/surfsense_backend/app/tasks/connector_indexers/notion_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/notion_indexer.py @@ -464,7 +464,10 @@ async def index_notion_pages( # Clean up the async client await notion_client.close() - return total_processed, None # Return None on success (result_message is for logging only) + return ( + total_processed, + None, + ) # Return None on success (result_message is for logging only) except SQLAlchemyError as db_error: await session.rollback() diff --git a/surfsense_backend/app/tasks/connector_indexers/slack_indexer.py b/surfsense_backend/app/tasks/connector_indexers/slack_indexer.py index a5fbaff8f..f6ed4f567 100644 --- a/surfsense_backend/app/tasks/connector_indexers/slack_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/slack_indexer.py @@ -413,7 +413,10 @@ async def index_slack_messages( logger.info( f"Slack indexing completed: {documents_indexed} new channels, {documents_skipped} skipped" ) - return total_processed, None # Return None on success (result_message is for logging only) + return ( + total_processed, + None, + ) # Return None on success (result_message is for logging only) except SQLAlchemyError as db_error: await session.rollback() diff --git a/surfsense_backend/app/tasks/connector_indexers/teams_indexer.py b/surfsense_backend/app/tasks/connector_indexers/teams_indexer.py index f79a01929..b879ddfcb 100644 --- a/surfsense_backend/app/tasks/connector_indexers/teams_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/teams_indexer.py @@ -460,7 +460,10 @@ async def index_teams_messages( documents_indexed, documents_skipped, ) - return total_processed, None # Return None on success (result_message is for logging only) + return ( + total_processed, + None, + ) # Return None on success (result_message is for logging only) except SQLAlchemyError as db_error: await session.rollback() diff --git a/surfsense_backend/app/tasks/connector_indexers/webcrawler_indexer.py b/surfsense_backend/app/tasks/connector_indexers/webcrawler_indexer.py index 418c0fefa..fb1aae5f2 100644 --- a/surfsense_backend/app/tasks/connector_indexers/webcrawler_indexer.py +++ b/surfsense_backend/app/tasks/connector_indexers/webcrawler_indexer.py @@ -371,17 +371,14 @@ async def index_crawled_urls( ) await session.commit() - # Build result message - result_message = None + # Log failed URLs if any (for debugging purposes) if failed_urls: failed_summary = "; ".join( [f"{url}: {error}" for url, error in failed_urls[:5]] ) if len(failed_urls) > 5: failed_summary += f" (and {len(failed_urls) - 5} more)" - result_message = ( - f"Completed with {len(failed_urls)} failures: {failed_summary}" - ) + logger.warning(f"Some URLs failed to index: {failed_summary}") await task_logger.log_task_success( log_entry, @@ -400,7 +397,10 @@ async def index_crawled_urls( f"{documents_updated} updated, {documents_skipped} skipped, " f"{len(failed_urls)} failed" ) - return total_processed, None # Return None on success (result_message is for logging only) + return ( + total_processed, + None, + ) # Return None on success (result_message is for logging only) except SQLAlchemyError as db_error: await session.rollback()