diff --git a/surfsense_backend/app/indexing_pipeline/indexing_pipeline_service.py b/surfsense_backend/app/indexing_pipeline/indexing_pipeline_service.py
index 2e82dc68c..0fa4006f5 100644
--- a/surfsense_backend/app/indexing_pipeline/indexing_pipeline_service.py
+++ b/surfsense_backend/app/indexing_pipeline/indexing_pipeline_service.py
@@ -273,17 +273,18 @@ class IndexingPipelineService:
continue
dup_check = await self.session.execute(
- select(Document.id).filter(
+ select(Document.id, Document.title).filter(
Document.content_hash == content_hash,
Document.id != existing.id,
)
)
- if dup_check.scalars().first() is not None:
+ dup_row = dup_check.first()
+ if dup_row is not None:
if not DocumentStatus.is_state(
existing.status, DocumentStatus.READY
):
existing.status = DocumentStatus.failed(
- "Duplicate content — already indexed by another document"
+ f"Duplicate content: matches '{dup_row.title}'"
)
continue
diff --git a/surfsense_web/app/dashboard/[search_space_id]/documents/(manage)/components/DocumentsTableShell.tsx b/surfsense_web/app/dashboard/[search_space_id]/documents/(manage)/components/DocumentsTableShell.tsx
index bc17949f5..4ed451850 100644
--- a/surfsense_web/app/dashboard/[search_space_id]/documents/(manage)/components/DocumentsTableShell.tsx
+++ b/surfsense_web/app/dashboard/[search_space_id]/documents/(manage)/components/DocumentsTableShell.tsx
@@ -90,7 +90,7 @@ function StatusIndicator({ status }: { status?: DocumentStatus }) {
- Pending - waiting to be synced
+ Pending: waiting to be synced
);
case "processing":
diff --git a/surfsense_web/components/documents/DocumentNode.tsx b/surfsense_web/components/documents/DocumentNode.tsx
index d8e37df1c..0a361fc2b 100644
--- a/surfsense_web/components/documents/DocumentNode.tsx
+++ b/surfsense_web/components/documents/DocumentNode.tsx
@@ -167,7 +167,7 @@ export const DocumentNode = React.memo(function DocumentNode({
- Pending — waiting to be synced
+ Pending: waiting to be synced
);
}
@@ -191,9 +191,9 @@ export const DocumentNode = React.memo(function DocumentNode({
-
- {doc.status?.reason || "Processing failed"}
-
+
+ {doc.status?.reason || "Processing failed"}
+
);
}