diff --git a/app/MindWork AI Studio/Dialogs/Settings/SettingsDialogDataSources.razor b/app/MindWork AI Studio/Dialogs/Settings/SettingsDialogDataSources.razor index 11ef5b70..e6d58126 100644 --- a/app/MindWork AI Studio/Dialogs/Settings/SettingsDialogDataSources.razor +++ b/app/MindWork AI Studio/Dialogs/Settings/SettingsDialogDataSources.razor @@ -15,7 +15,7 @@ - + @T("Refresh all") diff --git a/app/MindWork AI Studio/Dialogs/Settings/SettingsDialogDataSources.razor.cs b/app/MindWork AI Studio/Dialogs/Settings/SettingsDialogDataSources.razor.cs index ba58b05e..a6136595 100644 --- a/app/MindWork AI Studio/Dialogs/Settings/SettingsDialogDataSources.razor.cs +++ b/app/MindWork AI Studio/Dialogs/Settings/SettingsDialogDataSources.razor.cs @@ -41,7 +41,7 @@ public partial class SettingsDialogDataSources : SettingsDialogBase private async Task AutomaticRefreshChanged(bool enabled) { - this.SettingsManager.ConfigurationData.DataSourceIndexing.AutomaticRefresh = enabled; + this.SettingsManager.ConfigurationData.App.DataSourceIndexing.AutomaticRefresh = enabled; await this.SettingsManager.StoreSettings(); this.DataSourceEmbeddingService.RefreshAutomaticWatchers(); await this.MessageBus.SendMessage(this, Event.CONFIGURATION_CHANGED); diff --git a/app/MindWork AI Studio/Settings/DataModel/Data.cs b/app/MindWork AI Studio/Settings/DataModel/Data.cs index c14c7cff..2f66100d 100644 --- a/app/MindWork AI Studio/Settings/DataModel/Data.cs +++ b/app/MindWork AI Studio/Settings/DataModel/Data.cs @@ -129,8 +129,6 @@ public sealed class Data public DataAgentRetrievalContextValidation AgentRetrievalContextValidation { get; init; } = new(x => x.AgentRetrievalContextValidation); - public DataDataSourceIndexing DataSourceIndexing { get; init; } = new(); - public DataAssistantPluginAudit AssistantPluginAudit { get; init; } = new(x => x.AssistantPluginAudit); public DataAgenda Agenda { get; init; } = new(); diff --git a/app/MindWork AI Studio/Settings/DataModel/DataApp.cs b/app/MindWork AI Studio/Settings/DataModel/DataApp.cs index 6c0ef294..06cbeeb5 100644 --- a/app/MindWork AI Studio/Settings/DataModel/DataApp.cs +++ b/app/MindWork AI Studio/Settings/DataModel/DataApp.cs @@ -154,6 +154,11 @@ public sealed class DataApp(Expression>? configSelection = n /// public bool ShowAdminSettings { get; set; } = ManagedConfiguration.Register(configSelection, n => n.ShowAdminSettings, false); + /// + /// Settings for indexing local data sources. + /// + public DataDataSourceIndexing DataSourceIndexing { get; init; } = new(); + /// /// List of assistants that should be hidden from the UI. /// diff --git a/app/MindWork AI Studio/Tools/Services/DataSourceEmbeddingService.Watchers.cs b/app/MindWork AI Studio/Tools/Services/DataSourceEmbeddingService.Watchers.cs index 7b020d58..216d8d2c 100644 --- a/app/MindWork AI Studio/Tools/Services/DataSourceEmbeddingService.Watchers.cs +++ b/app/MindWork AI Studio/Tools/Services/DataSourceEmbeddingService.Watchers.cs @@ -15,7 +15,7 @@ public sealed partial class DataSourceEmbeddingService private void RefreshWatchers() { - if (!settingsManager.ConfigurationData.DataSourceIndexing.AutomaticRefresh) + if (!settingsManager.ConfigurationData.App.DataSourceIndexing.AutomaticRefresh) { this.RemoveAllWatchers(); return; @@ -41,7 +41,7 @@ public sealed partial class DataSourceEmbeddingService private void EnsureWatcher(IDataSource dataSource) { - if (!settingsManager.ConfigurationData.DataSourceIndexing.AutomaticRefresh) + if (!settingsManager.ConfigurationData.App.DataSourceIndexing.AutomaticRefresh) return; var configuration = GetWatchConfiguration(dataSource); @@ -143,7 +143,7 @@ public sealed partial class DataSourceEmbeddingService private void ScheduleWatchedDataSourceRefresh(string dataSourceId) { - if (!settingsManager.ConfigurationData.DataSourceIndexing.AutomaticRefresh) + if (!settingsManager.ConfigurationData.App.DataSourceIndexing.AutomaticRefresh) return; var debounceToken = new CancellationTokenSource(); diff --git a/app/MindWork AI Studio/Tools/Services/DataSourceEmbeddingService.cs b/app/MindWork AI Studio/Tools/Services/DataSourceEmbeddingService.cs index 7acadb15..acd9c7be 100644 --- a/app/MindWork AI Studio/Tools/Services/DataSourceEmbeddingService.cs +++ b/app/MindWork AI Studio/Tools/Services/DataSourceEmbeddingService.cs @@ -136,7 +136,7 @@ public sealed partial class DataSourceEmbeddingService(SettingsManager settingsM public Task QueueAllInternalDataSourcesIfAutomaticRefreshAsync() { - if (!settingsManager.ConfigurationData.DataSourceIndexing.AutomaticRefresh) + if (!settingsManager.ConfigurationData.App.DataSourceIndexing.AutomaticRefresh) { this.RefreshWatchers(); return Task.CompletedTask; @@ -148,7 +148,7 @@ public sealed partial class DataSourceEmbeddingService(SettingsManager settingsM public void RefreshAutomaticWatchers() { - if (!settingsManager.ConfigurationData.DataSourceIndexing.AutomaticRefresh) + if (!settingsManager.ConfigurationData.App.DataSourceIndexing.AutomaticRefresh) { Volatile.Write(ref this.startupHashCheckCompleted, 0); Interlocked.Exchange(ref this.startupHashCheckStarted, 0); @@ -959,7 +959,7 @@ public sealed partial class DataSourceEmbeddingService(SettingsManager settingsM private async Task RunInitialDataSourceHashCheckAsync(CancellationToken token) { - if (!settingsManager.ConfigurationData.DataSourceIndexing.AutomaticRefresh) + if (!settingsManager.ConfigurationData.App.DataSourceIndexing.AutomaticRefresh) { logger.LogInformation("Automatic local data source refresh is disabled. Startup hash checks and file watchers are disabled."); this.RemoveAllWatchers(); @@ -997,7 +997,7 @@ public sealed partial class DataSourceEmbeddingService(SettingsManager settingsM } } - if (!settingsManager.ConfigurationData.DataSourceIndexing.AutomaticRefresh) + if (!settingsManager.ConfigurationData.App.DataSourceIndexing.AutomaticRefresh) { Volatile.Write(ref this.startupHashCheckCompleted, 0); Interlocked.Exchange(ref this.startupHashCheckStarted, 0);