From: shamoon <4887959+shamoon@users.noreply.github.com> Date: Mon, 8 Sep 2025 18:33:39 +0000 (-0700) Subject: Merge branch 'dev' into feature-ai X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e00dc63021695eff05d2bc49093e114dabb4d0d9;p=thirdparty%2Fpaperless-ngx.git Merge branch 'dev' into feature-ai --- e00dc63021695eff05d2bc49093e114dabb4d0d9 diff --cc src-ui/src/app/components/admin/settings/settings.component.spec.ts index a1949ae031,300067d1b9..15dedc0789 --- a/src-ui/src/app/components/admin/settings/settings.component.spec.ts +++ b/src-ui/src/app/components/admin/settings/settings.component.spec.ts @@@ -61,6 -61,40 +61,43 @@@ const groups = { id: 2, name: 'group2' }, ] + const status: SystemStatus = { + pngx_version: '2.4.3', + server_os: 'macOS-14.1.1-arm64-arm-64bit', + install_type: InstallType.BareMetal, + storage: { total: 494384795648, available: 13573525504 }, + database: { + type: 'sqlite', + url: '/paperless-ngx/data/db.sqlite3', + status: SystemStatusItemStatus.ERROR, + error: null, + migration_status: { + latest_migration: 'socialaccount.0006_alter_socialaccount_extra_data', + unapplied_migrations: [], + }, + }, + tasks: { + redis_url: 'redis://localhost:6379', + redis_status: SystemStatusItemStatus.ERROR, + redis_error: 'Error 61 connecting to localhost:6379. Connection refused.', + celery_status: SystemStatusItemStatus.ERROR, + celery_url: 'celery@localhost', + celery_error: 'Error connecting to celery@localhost', + index_status: SystemStatusItemStatus.OK, + index_last_modified: new Date().toISOString(), + index_error: null, + classifier_status: SystemStatusItemStatus.OK, + classifier_last_trained: new Date().toISOString(), + classifier_error: null, + sanity_check_status: SystemStatusItemStatus.ERROR, + sanity_check_last_run: new Date().toISOString(), + sanity_check_error: 'Error running sanity check.', ++ llmindex_status: SystemStatusItemStatus.DISABLED, ++ llmindex_last_modified: new Date().toISOString(), ++ llmindex_error: null, + }, + } + describe('SettingsComponent', () => { let component: SettingsComponent let fixture: ComponentFixture diff --cc src-ui/src/app/components/common/system-status-dialog/system-status-dialog.component.html index d5df7959d0,99fddbf2c3..c34f984b21 --- a/src-ui/src/app/components/common/system-status-dialog/system-status-dialog.component.html +++ b/src-ui/src/app/components/common/system-status-dialog/system-status-dialog.component.html @@@ -254,43 -254,18 +254,55 @@@
Error:
{{status.tasks.sanity_check_error}} } +
WebSocket Connection
+
+ + @if (status.websocket_connected === 'OK') { + OK + + } @else { + Error + + } + +
+ @if (aiEnabled) { +
AI Index
+
+ + @if (currentUserIsSuperUser) { + @if (isRunning(PaperlessTaskName.LLMIndexUpdate)) { +
+ } @else { + + } + } +
+ + @if (status.tasks.llmindex_status === 'OK') { +
Last Run:
{{status.tasks.llmindex_last_modified | customDate:'medium'}} + } @else { +
Error:
{{status.tasks.llmindex_error}} + } +
+ } diff --cc src-ui/src/app/components/common/system-status-dialog/system-status-dialog.component.ts index 19171941cf,f88d56ff6e..d53bb74bf9 --- a/src-ui/src/app/components/common/system-status-dialog/system-status-dialog.component.ts +++ b/src-ui/src/app/components/common/system-status-dialog/system-status-dialog.component.ts @@@ -43,7 -43,7 +45,8 @@@ export class SystemStatusDialogComponen private tasksService = inject(TasksService) private toastService = inject(ToastService) private permissionsService = inject(PermissionsService) + private websocketStatusService = inject(WebsocketStatusService) + private settingsService = inject(SettingsService) public SystemStatusItemStatus = SystemStatusItemStatus public PaperlessTaskName = PaperlessTaskName diff --cc src-ui/src/app/data/system-status.ts index dc18677a5e,334dc54f87..7dcbffa202 --- a/src-ui/src/app/data/system-status.ts +++ b/src-ui/src/app/data/system-status.ts @@@ -44,8 -43,6 +44,9 @@@ export interface SystemStatus sanity_check_status: SystemStatusItemStatus sanity_check_last_run: string // ISO date string sanity_check_error: string + llmindex_status: SystemStatusItemStatus + llmindex_last_modified: string // ISO date string + llmindex_error: string } + websocket_connected?: SystemStatusItemStatus // added client-side }