fix (web): show syncing status for initial knowledge sources

This commit is contained in:
FFXN 2026-09-03 19:02:57 +08:00
parent 43d50ce021
commit 069be90768
2 changed files with 24 additions and 1 deletions

View File

@ -1009,6 +1009,16 @@ describe('SourcesPage', () => {
name: 'Initial documents',
status: 'disabled',
}),
source({
id: 'syncing-initial-source',
metadata: {
clientRequestId: 'initial-website-source:operation-3',
preview: true,
},
name: 'Syncing initial website',
status: 'disabled',
syncWorkflow: sourceWorkflow('importing'),
}),
source({
id: 'failed',
metadata: {
@ -1032,6 +1042,13 @@ describe('SourcesPage', () => {
expect(within(initializingRow).getByRole('status')).toHaveTextContent(
'Initial documents: knowledgeSpace.sourceStatus.initializing',
)
const syncingRow = screen.getByRole('row', { name: /Syncing initial website/ })
expect(within(syncingRow).getByRole('status')).toHaveTextContent(
'Syncing initial website: knowledgeSpace.sourceStatus.syncing',
)
expect(
within(syncingRow).getByText('knowledgeSpace.sourceSyncProgress:{"completed":0,"total":1}'),
).toBeInTheDocument()
const failedRow = screen.getByRole('row', { name: /Initial website/ })
expect(within(failedRow).getByText('knowledgeSpace.sourceStatus.error')).toBeInTheDocument()

View File

@ -206,8 +206,14 @@ export function sourceHasPendingAsyncImport(source: Source) {
}
export function sourceDisplayStatus(source: Source): SourceDisplayStatus {
if (isInitialSource(source) && source.status === 'disabled' && source.metadata.preview === true)
if (isInitialSource(source) && source.status === 'disabled' && source.metadata.preview === true) {
if (source.syncWorkflow) {
const workflowStatus = sourceWorkflowStatus(source.syncWorkflow.state)
return workflowStatus === 'active' ? 'initializing' : workflowStatus
}
return 'initializing'
}
if (isInitialSource(source) && source.status === 'disabled' && source.metadata.initialImport) {
if (source.syncWorkflow) {