@theia/ai-core 1.74.0-next.5 → 1.74.0-next.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/lib/browser/ai-configuration-service-impl.d.ts +32 -0
  2. package/lib/browser/ai-configuration-service-impl.d.ts.map +1 -0
  3. package/lib/browser/ai-configuration-service-impl.js +120 -0
  4. package/lib/browser/ai-configuration-service-impl.js.map +1 -0
  5. package/lib/browser/ai-configuration-service-impl.spec.d.ts +2 -0
  6. package/lib/browser/ai-configuration-service-impl.spec.d.ts.map +1 -0
  7. package/lib/browser/ai-configuration-service-impl.spec.js +214 -0
  8. package/lib/browser/ai-configuration-service-impl.spec.js.map +1 -0
  9. package/lib/browser/ai-core-frontend-module.d.ts.map +1 -1
  10. package/lib/browser/ai-core-frontend-module.js +4 -0
  11. package/lib/browser/ai-core-frontend-module.js.map +1 -1
  12. package/lib/browser/ai-settings-service.d.ts +2 -5
  13. package/lib/browser/ai-settings-service.d.ts.map +1 -1
  14. package/lib/browser/ai-settings-service.js +8 -15
  15. package/lib/browser/ai-settings-service.js.map +1 -1
  16. package/lib/browser/frontend-language-model-alias-registry.d.ts +2 -4
  17. package/lib/browser/frontend-language-model-alias-registry.d.ts.map +1 -1
  18. package/lib/browser/frontend-language-model-alias-registry.js +11 -16
  19. package/lib/browser/frontend-language-model-alias-registry.js.map +1 -1
  20. package/lib/browser/frontend-language-model-service.d.ts +2 -3
  21. package/lib/browser/frontend-language-model-service.d.ts.map +1 -1
  22. package/lib/browser/frontend-language-model-service.js +6 -6
  23. package/lib/browser/frontend-language-model-service.js.map +1 -1
  24. package/lib/browser/frontend-prompt-customization-service.d.ts +38 -0
  25. package/lib/browser/frontend-prompt-customization-service.d.ts.map +1 -1
  26. package/lib/browser/frontend-prompt-customization-service.js +189 -76
  27. package/lib/browser/frontend-prompt-customization-service.js.map +1 -1
  28. package/lib/browser/frontend-prompt-customization-service.spec.js +103 -0
  29. package/lib/browser/frontend-prompt-customization-service.spec.js.map +1 -1
  30. package/lib/browser/index.d.ts +1 -0
  31. package/lib/browser/index.d.ts.map +1 -1
  32. package/lib/browser/index.js +1 -0
  33. package/lib/browser/index.js.map +1 -1
  34. package/lib/browser/trust-aware-preference-reader.d.ts +13 -1
  35. package/lib/browser/trust-aware-preference-reader.d.ts.map +1 -1
  36. package/lib/browser/trust-aware-preference-reader.js +21 -2
  37. package/lib/browser/trust-aware-preference-reader.js.map +1 -1
  38. package/lib/browser/trust-aware-preference-reader.spec.js +26 -0
  39. package/lib/browser/trust-aware-preference-reader.spec.js.map +1 -1
  40. package/lib/common/ai-configuration-service.d.ts +104 -0
  41. package/lib/common/ai-configuration-service.d.ts.map +1 -0
  42. package/lib/common/ai-configuration-service.js +20 -0
  43. package/lib/common/ai-configuration-service.js.map +1 -0
  44. package/lib/common/ai-core-preferences.d.ts +4 -0
  45. package/lib/common/ai-core-preferences.d.ts.map +1 -1
  46. package/lib/common/ai-core-preferences.js +20 -1
  47. package/lib/common/ai-core-preferences.js.map +1 -1
  48. package/lib/common/index.d.ts +1 -0
  49. package/lib/common/index.d.ts.map +1 -1
  50. package/lib/common/index.js +1 -0
  51. package/lib/common/index.js.map +1 -1
  52. package/lib/common/language-model.d.ts +56 -2
  53. package/lib/common/language-model.d.ts.map +1 -1
  54. package/lib/common/language-model.js +53 -3
  55. package/lib/common/language-model.js.map +1 -1
  56. package/lib/common/language-model.spec.js +75 -0
  57. package/lib/common/language-model.spec.js.map +1 -1
  58. package/lib/common/prompt-service.d.ts +13 -3
  59. package/lib/common/prompt-service.d.ts.map +1 -1
  60. package/lib/common/prompt-service.js.map +1 -1
  61. package/lib/node/backend-language-model-registry.d.ts.map +1 -1
  62. package/lib/node/backend-language-model-registry.js +1 -0
  63. package/lib/node/backend-language-model-registry.js.map +1 -1
  64. package/package.json +11 -11
  65. package/src/browser/ai-configuration-service-impl.spec.ts +254 -0
  66. package/src/browser/ai-configuration-service-impl.ts +120 -0
  67. package/src/browser/ai-core-frontend-module.ts +7 -1
  68. package/src/browser/ai-settings-service.ts +8 -16
  69. package/src/browser/frontend-language-model-alias-registry.ts +12 -16
  70. package/src/browser/frontend-language-model-service.ts +5 -6
  71. package/src/browser/frontend-prompt-customization-service.spec.ts +130 -1
  72. package/src/browser/frontend-prompt-customization-service.ts +204 -84
  73. package/src/browser/index.ts +1 -0
  74. package/src/browser/trust-aware-preference-reader.spec.ts +29 -0
  75. package/src/browser/trust-aware-preference-reader.ts +23 -3
  76. package/src/common/ai-configuration-service.ts +128 -0
  77. package/src/common/ai-core-preferences.ts +23 -1
  78. package/src/common/index.ts +1 -0
  79. package/src/common/language-model.spec.ts +98 -1
  80. package/src/common/language-model.ts +107 -4
  81. package/src/common/prompt-service.ts +14 -3
  82. package/src/node/backend-language-model-registry.ts +1 -0
@@ -0,0 +1,32 @@
1
+ import { DisposableCollection, Emitter, Event } from '@theia/core';
2
+ import { JSONValue } from '@theia/core/shared/@lumino/coreutils';
3
+ import { Deferred } from '@theia/core/lib/common/promise-util';
4
+ import { PreferenceInspection, PreferenceScope, PreferenceService } from '@theia/core/lib/common/preferences';
5
+ import { AiConfigurationChange, AiConfigurationInspection, AiConfigurationService } from '../common/ai-configuration-service';
6
+ import { TrustAwarePreferenceReader } from './trust-aware-preference-reader';
7
+ export declare class AiConfigurationServiceImpl implements AiConfigurationService {
8
+ protected readonly preferenceService: PreferenceService;
9
+ protected readonly trustAwareReader: TrustAwarePreferenceReader;
10
+ protected readonly toDispose: DisposableCollection;
11
+ protected readonly onDidChangeEmitter: Emitter<AiConfigurationChange>;
12
+ readonly onDidChange: Event<AiConfigurationChange>;
13
+ protected readonly _ready: Deferred<void>;
14
+ get ready(): Promise<void>;
15
+ protected init(): void;
16
+ get<T>(key: string, defaultValue?: T, resourceUri?: string): T | undefined;
17
+ set(key: string, value: unknown, scope: PreferenceScope, resourceUri?: string): Promise<void>;
18
+ update(key: string, value: unknown, resourceUri?: string): Promise<void>;
19
+ inspect<T extends JSONValue>(key: string, resourceUri?: string): AiConfigurationInspection<T> | undefined;
20
+ /**
21
+ * Derives the trust-aware {@link AiConfigurationInspection.sourceScope} and effective `value`
22
+ * from a raw {@link PreferenceInspection}. The workspace-trust rule is applied once, via
23
+ * {@link TrustAwarePreferenceReader.suppressUntrusted} (the single owner of that rule): when
24
+ * untrusted, folder and workspace scope values are cleared, so the scope walk below naturally
25
+ * resolves to the user/default scope and the whole inspection stays consistent with {@link get}.
26
+ *
27
+ * Note: `value` reflects the narrowest defined scope, matching `PreferenceService.inspect`. For
28
+ * object-valued preferences this can differ from {@link get}, which deep-merges across scopes.
29
+ */
30
+ protected enrichInspection<T extends JSONValue>(inspection: PreferenceInspection<T>): AiConfigurationInspection<T>;
31
+ }
32
+ //# sourceMappingURL=ai-configuration-service-impl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-configuration-service-impl.d.ts","sourceRoot":"","sources":["../../src/browser/ai-configuration-service-impl.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEnE,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC9G,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC9H,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAQ7E,qBACa,0BAA2B,YAAW,sBAAsB;IAGrE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;IAEhE,SAAS,CAAC,QAAQ,CAAC,SAAS,uBAA8B;IAE1D,SAAS,CAAC,QAAQ,CAAC,kBAAkB,iCAAwC;IAC7E,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,qBAAqB,CAAC,CAAiC;IAEnF,SAAS,CAAC,QAAQ,CAAC,MAAM,iBAAwB;IACjD,IAAI,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAEzB;IAGD,SAAS,CAAC,IAAI,IAAI,IAAI;IA0BtB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAI1E,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7F,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxE,OAAO,CAAC,CAAC,SAAS,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,yBAAyB,CAAC,CAAC,CAAC,GAAG,SAAS;IAQzG;;;;;;;;;OASG;IACH,SAAS,CAAC,gBAAgB,CAAC,CAAC,SAAS,SAAS,EAAE,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,yBAAyB,CAAC,CAAC,CAAC;CAarH"}
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 EclipseSource GmbH.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.AiConfigurationServiceImpl = void 0;
19
+ const tslib_1 = require("tslib");
20
+ const core_1 = require("@theia/core");
21
+ const inversify_1 = require("@theia/core/shared/inversify");
22
+ const promise_util_1 = require("@theia/core/lib/common/promise-util");
23
+ const preferences_1 = require("@theia/core/lib/common/preferences");
24
+ const trust_aware_preference_reader_1 = require("./trust-aware-preference-reader");
25
+ /**
26
+ * Prefix shared by all AI-related preference keys. Only changes to keys under this namespace are
27
+ * surfaced through {@link AiConfigurationService.onDidChange}.
28
+ */
29
+ const AI_PREFERENCE_PREFIX = 'ai-features.';
30
+ let AiConfigurationServiceImpl = class AiConfigurationServiceImpl {
31
+ constructor() {
32
+ this.toDispose = new core_1.DisposableCollection();
33
+ this.onDidChangeEmitter = new core_1.Emitter();
34
+ this.onDidChange = this.onDidChangeEmitter.event;
35
+ this._ready = new promise_util_1.Deferred();
36
+ }
37
+ get ready() {
38
+ return this._ready.promise;
39
+ }
40
+ init() {
41
+ this._ready.resolve(Promise.all([this.preferenceService.ready, this.trustAwareReader.ready]).then(() => undefined));
42
+ this.toDispose.push(this.onDidChangeEmitter);
43
+ this.toDispose.push(this.preferenceService.onPreferenceChanged(change => {
44
+ if (change.preferenceName.startsWith(AI_PREFERENCE_PREFIX)) {
45
+ this.onDidChangeEmitter.fire({
46
+ preferenceName: change.preferenceName,
47
+ affects: resourceUri => change.affects(resourceUri),
48
+ affectsPreference: preferenceName => preferenceName === change.preferenceName
49
+ });
50
+ }
51
+ }));
52
+ this.toDispose.push(
53
+ // A trust transition can change the effective value of any trust-gated key. Emit a
54
+ // single change with no `preferenceName` and a sentinel `affects()` so listeners
55
+ // re-query, mirroring how trust-aware services already react to trust changes.
56
+ this.trustAwareReader.onDidChangeTrust(() => this.onDidChangeEmitter.fire({
57
+ preferenceName: undefined,
58
+ affects: () => true,
59
+ affectsPreference: preferenceName => preferenceName.startsWith(AI_PREFERENCE_PREFIX)
60
+ })));
61
+ }
62
+ get(key, defaultValue, resourceUri) {
63
+ return this.trustAwareReader.get(key, defaultValue, resourceUri);
64
+ }
65
+ set(key, value, scope, resourceUri) {
66
+ return this.preferenceService.set(key, value, scope, resourceUri);
67
+ }
68
+ update(key, value, resourceUri) {
69
+ return this.preferenceService.updateValue(key, value, resourceUri);
70
+ }
71
+ inspect(key, resourceUri) {
72
+ const inspection = this.preferenceService.inspect(key, resourceUri);
73
+ if (!inspection) {
74
+ return undefined;
75
+ }
76
+ return this.enrichInspection(inspection);
77
+ }
78
+ /**
79
+ * Derives the trust-aware {@link AiConfigurationInspection.sourceScope} and effective `value`
80
+ * from a raw {@link PreferenceInspection}. The workspace-trust rule is applied once, via
81
+ * {@link TrustAwarePreferenceReader.suppressUntrusted} (the single owner of that rule): when
82
+ * untrusted, folder and workspace scope values are cleared, so the scope walk below naturally
83
+ * resolves to the user/default scope and the whole inspection stays consistent with {@link get}.
84
+ *
85
+ * Note: `value` reflects the narrowest defined scope, matching `PreferenceService.inspect`. For
86
+ * object-valued preferences this can differ from {@link get}, which deep-merges across scopes.
87
+ */
88
+ enrichInspection(inspection) {
89
+ const suppressed = this.trustAwareReader.suppressUntrusted(inspection);
90
+ if (suppressed.workspaceFolderValue !== undefined) {
91
+ return { ...suppressed, sourceScope: preferences_1.PreferenceScope.Folder, value: suppressed.workspaceFolderValue };
92
+ }
93
+ if (suppressed.workspaceValue !== undefined) {
94
+ return { ...suppressed, sourceScope: preferences_1.PreferenceScope.Workspace, value: suppressed.workspaceValue };
95
+ }
96
+ if (suppressed.globalValue !== undefined) {
97
+ return { ...suppressed, sourceScope: preferences_1.PreferenceScope.User, value: suppressed.globalValue };
98
+ }
99
+ return { ...suppressed, sourceScope: undefined, value: suppressed.defaultValue };
100
+ }
101
+ };
102
+ exports.AiConfigurationServiceImpl = AiConfigurationServiceImpl;
103
+ tslib_1.__decorate([
104
+ (0, inversify_1.inject)(preferences_1.PreferenceService),
105
+ tslib_1.__metadata("design:type", Object)
106
+ ], AiConfigurationServiceImpl.prototype, "preferenceService", void 0);
107
+ tslib_1.__decorate([
108
+ (0, inversify_1.inject)(trust_aware_preference_reader_1.TrustAwarePreferenceReader),
109
+ tslib_1.__metadata("design:type", trust_aware_preference_reader_1.TrustAwarePreferenceReader)
110
+ ], AiConfigurationServiceImpl.prototype, "trustAwareReader", void 0);
111
+ tslib_1.__decorate([
112
+ (0, inversify_1.postConstruct)(),
113
+ tslib_1.__metadata("design:type", Function),
114
+ tslib_1.__metadata("design:paramtypes", []),
115
+ tslib_1.__metadata("design:returntype", void 0)
116
+ ], AiConfigurationServiceImpl.prototype, "init", null);
117
+ exports.AiConfigurationServiceImpl = AiConfigurationServiceImpl = tslib_1.__decorate([
118
+ (0, inversify_1.injectable)()
119
+ ], AiConfigurationServiceImpl);
120
+ //# sourceMappingURL=ai-configuration-service-impl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-configuration-service-impl.js","sourceRoot":"","sources":["../../src/browser/ai-configuration-service-impl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ai-configuration-service-impl.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-configuration-service-impl.spec.d.ts","sourceRoot":"","sources":["../../src/browser/ai-configuration-service-impl.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,214 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 EclipseSource GmbH.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const jsdom_1 = require("@theia/core/lib/browser/test/jsdom");
19
+ const disableJSDOM = (0, jsdom_1.enableJSDOM)();
20
+ const frontend_application_config_provider_1 = require("@theia/core/lib/browser/frontend-application-config-provider");
21
+ frontend_application_config_provider_1.FrontendApplicationConfigProvider.set({});
22
+ const chai_1 = require("chai");
23
+ const inversify_1 = require("@theia/core/shared/inversify");
24
+ const core_1 = require("@theia/core");
25
+ const promise_util_1 = require("@theia/core/lib/common/promise-util");
26
+ const preferences_1 = require("@theia/core/lib/common/preferences");
27
+ const workspace_trust_service_1 = require("@theia/workspace/lib/browser/workspace-trust-service");
28
+ const trust_aware_preference_reader_1 = require("./trust-aware-preference-reader");
29
+ const ai_configuration_service_impl_1 = require("./ai-configuration-service-impl");
30
+ disableJSDOM();
31
+ const KEY = 'ai-features.someKey';
32
+ /**
33
+ * Minimal in-memory `PreferenceService` stub that stores values per scope and derives the
34
+ * effective value with the same precedence as the real service.
35
+ */
36
+ class StubPreferenceService {
37
+ constructor() {
38
+ this.ready = Promise.resolve();
39
+ this.isReady = true;
40
+ this.values = new Map();
41
+ this.onPreferenceChangedEmitter = new core_1.Emitter();
42
+ this.onPreferenceChanged = this.onPreferenceChangedEmitter.event;
43
+ }
44
+ scopeMap(key) {
45
+ let map = this.values.get(key);
46
+ if (!map) {
47
+ map = new Map();
48
+ this.values.set(key, map);
49
+ }
50
+ return map;
51
+ }
52
+ setScopeValue(key, scope, value) {
53
+ this.scopeMap(key).set(scope, value);
54
+ }
55
+ get(preferenceName, defaultValue) {
56
+ const inspection = this.inspect(preferenceName);
57
+ return inspection?.value ?? defaultValue;
58
+ }
59
+ set(preferenceName, value, scope = preferences_1.PreferenceScope.User) {
60
+ this.scopeMap(preferenceName).set(scope, value);
61
+ this.fire(preferenceName, scope);
62
+ return Promise.resolve();
63
+ }
64
+ updateValue(preferenceName, value) {
65
+ return this.set(preferenceName, value, preferences_1.PreferenceScope.User);
66
+ }
67
+ inspect(preferenceName) {
68
+ const map = this.values.get(preferenceName);
69
+ const defaultValue = map?.get(preferences_1.PreferenceScope.Default);
70
+ const globalValue = map?.get(preferences_1.PreferenceScope.User);
71
+ const workspaceValue = map?.get(preferences_1.PreferenceScope.Workspace);
72
+ const workspaceFolderValue = map?.get(preferences_1.PreferenceScope.Folder);
73
+ const value = workspaceFolderValue ?? workspaceValue ?? globalValue ?? defaultValue;
74
+ return { preferenceName, defaultValue, globalValue, workspaceValue, workspaceFolderValue, value };
75
+ }
76
+ fire(preferenceName, scope) {
77
+ this.onPreferenceChangedEmitter.fire({
78
+ preferenceName,
79
+ scope,
80
+ domain: undefined,
81
+ affects: () => true
82
+ });
83
+ }
84
+ }
85
+ class StubWorkspaceTrustService {
86
+ constructor() {
87
+ this.trustDeferred = new promise_util_1.Deferred();
88
+ this.emitter = new core_1.Emitter();
89
+ this.onDidChangeWorkspaceTrust = this.emitter.event;
90
+ }
91
+ getWorkspaceTrust() {
92
+ return this.trustDeferred.promise;
93
+ }
94
+ fireTrustChange(trusted) {
95
+ this.emitter.fire(trusted);
96
+ }
97
+ }
98
+ describe('AiConfigurationServiceImpl', () => {
99
+ let preferences;
100
+ let trust;
101
+ let service;
102
+ const createService = async (trusted) => {
103
+ preferences = new StubPreferenceService();
104
+ trust = new StubWorkspaceTrustService();
105
+ const container = new inversify_1.Container();
106
+ container.bind(preferences_1.PreferenceService).toConstantValue(preferences);
107
+ container.bind(workspace_trust_service_1.WorkspaceTrustService).toConstantValue(trust);
108
+ container.bind(trust_aware_preference_reader_1.TrustAwarePreferenceReader).toSelf().inSingletonScope();
109
+ container.bind(ai_configuration_service_impl_1.AiConfigurationServiceImpl).toSelf().inSingletonScope();
110
+ service = container.get(ai_configuration_service_impl_1.AiConfigurationServiceImpl);
111
+ trust.trustDeferred.resolve(trusted);
112
+ await service.ready;
113
+ };
114
+ describe('acceptance scenario', () => {
115
+ beforeEach(() => createService(true));
116
+ it('writes at User scope, reads back, reports User as source scope, and fires onDidChange', async () => {
117
+ const changes = [];
118
+ service.onDidChange(change => changes.push(change));
119
+ await service.set(KEY, true, preferences_1.PreferenceScope.User);
120
+ (0, chai_1.expect)(service.get(KEY)).to.equal(true);
121
+ (0, chai_1.expect)(service.inspect(KEY)?.sourceScope).to.equal(preferences_1.PreferenceScope.User);
122
+ (0, chai_1.expect)(changes.some(change => change.preferenceName === KEY)).to.equal(true);
123
+ });
124
+ });
125
+ describe('inspect source-scope derivation (trusted)', () => {
126
+ beforeEach(() => createService(true));
127
+ it('reports undefined source scope when only the default applies', () => {
128
+ preferences.setScopeValue(KEY, preferences_1.PreferenceScope.Default, 'default');
129
+ const inspection = service.inspect(KEY);
130
+ (0, chai_1.expect)(inspection?.sourceScope).to.equal(undefined);
131
+ (0, chai_1.expect)(inspection?.value).to.equal('default');
132
+ });
133
+ it('reports User when a user value is set', () => {
134
+ preferences.setScopeValue(KEY, preferences_1.PreferenceScope.Default, 'default');
135
+ preferences.setScopeValue(KEY, preferences_1.PreferenceScope.User, 'user');
136
+ const inspection = service.inspect(KEY);
137
+ (0, chai_1.expect)(inspection?.sourceScope).to.equal(preferences_1.PreferenceScope.User);
138
+ (0, chai_1.expect)(inspection?.value).to.equal('user');
139
+ });
140
+ it('reports Workspace when a workspace value wins', () => {
141
+ preferences.setScopeValue(KEY, preferences_1.PreferenceScope.User, 'user');
142
+ preferences.setScopeValue(KEY, preferences_1.PreferenceScope.Workspace, 'workspace');
143
+ const inspection = service.inspect(KEY);
144
+ (0, chai_1.expect)(inspection?.sourceScope).to.equal(preferences_1.PreferenceScope.Workspace);
145
+ (0, chai_1.expect)(inspection?.value).to.equal('workspace');
146
+ });
147
+ });
148
+ describe('trust-aware reads', () => {
149
+ it('ignores the workspace value when untrusted', async () => {
150
+ await createService(false);
151
+ preferences.setScopeValue(KEY, preferences_1.PreferenceScope.Default, 'default');
152
+ preferences.setScopeValue(KEY, preferences_1.PreferenceScope.User, 'user');
153
+ preferences.setScopeValue(KEY, preferences_1.PreferenceScope.Workspace, 'workspace');
154
+ (0, chai_1.expect)(service.get(KEY)).to.equal('user');
155
+ const inspection = service.inspect(KEY);
156
+ (0, chai_1.expect)(inspection?.value).to.equal('user');
157
+ (0, chai_1.expect)(inspection?.sourceScope).to.equal(preferences_1.PreferenceScope.User);
158
+ // The suppressed workspace/folder values are cleared, not just excluded from `value`.
159
+ (0, chai_1.expect)(inspection?.workspaceValue).to.equal(undefined);
160
+ (0, chai_1.expect)(inspection?.workspaceFolderValue).to.equal(undefined);
161
+ });
162
+ it('honors the workspace value when trusted', async () => {
163
+ await createService(true);
164
+ preferences.setScopeValue(KEY, preferences_1.PreferenceScope.User, 'user');
165
+ preferences.setScopeValue(KEY, preferences_1.PreferenceScope.Workspace, 'workspace');
166
+ (0, chai_1.expect)(service.get(KEY)).to.equal('workspace');
167
+ (0, chai_1.expect)(service.inspect(KEY)?.value).to.equal('workspace');
168
+ });
169
+ it('fires onDidChange (without a preference name) on a trust transition', async () => {
170
+ await createService(false);
171
+ const changes = [];
172
+ service.onDidChange(change => changes.push(change));
173
+ trust.fireTrustChange(true);
174
+ (0, chai_1.expect)(changes).to.have.lengthOf(1);
175
+ (0, chai_1.expect)(changes[0].preferenceName).to.equal(undefined);
176
+ (0, chai_1.expect)(changes[0].affects()).to.equal(true);
177
+ // A trust transition affects every trust-gated (ai-features.*) key, but not unrelated ones.
178
+ (0, chai_1.expect)(changes[0].affectsPreference(KEY)).to.equal(true);
179
+ (0, chai_1.expect)(changes[0].affectsPreference('ai-features.anythingElse')).to.equal(true);
180
+ (0, chai_1.expect)(changes[0].affectsPreference('editor.fontSize')).to.equal(false);
181
+ });
182
+ });
183
+ describe('set vs update', () => {
184
+ beforeEach(() => createService(true));
185
+ it('set writes the exact scope requested', async () => {
186
+ await service.set(KEY, 'workspace', preferences_1.PreferenceScope.Workspace);
187
+ (0, chai_1.expect)(preferences.inspect(KEY)?.workspaceValue).to.equal('workspace');
188
+ (0, chai_1.expect)(preferences.inspect(KEY)?.globalValue).to.equal(undefined);
189
+ });
190
+ it('update maps to updateValue (User scope)', async () => {
191
+ await service.update(KEY, 'user');
192
+ (0, chai_1.expect)(preferences.inspect(KEY)?.globalValue).to.equal('user');
193
+ });
194
+ });
195
+ describe('onDidChange filtering', () => {
196
+ beforeEach(() => createService(true));
197
+ it('only fires for ai-features.* keys', async () => {
198
+ const changes = [];
199
+ service.onDidChange(change => changes.push(change));
200
+ await service.set('editor.fontSize', 12, preferences_1.PreferenceScope.User);
201
+ await service.set(KEY, true, preferences_1.PreferenceScope.User);
202
+ (0, chai_1.expect)(changes.map(change => change.preferenceName)).to.deep.equal([KEY]);
203
+ });
204
+ it('affectsPreference matches the changed key on a keyed change, not unrelated keys', async () => {
205
+ const changes = [];
206
+ service.onDidChange(change => changes.push(change));
207
+ await service.set(KEY, true, preferences_1.PreferenceScope.User);
208
+ (0, chai_1.expect)(changes).to.have.lengthOf(1);
209
+ (0, chai_1.expect)(changes[0].affectsPreference(KEY)).to.equal(true);
210
+ (0, chai_1.expect)(changes[0].affectsPreference('ai-features.other')).to.equal(false);
211
+ });
212
+ });
213
+ });
214
+ //# sourceMappingURL=ai-configuration-service-impl.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-configuration-service-impl.spec.js","sourceRoot":"","sources":["../../src/browser/ai-configuration-service-impl.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ai-core-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/ai-core-frontend-module.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAqE/D,wBA6HG"}
1
+ {"version":3,"file":"ai-core-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/ai-core-frontend-module.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAuE/D,wBAiIG"}
@@ -20,6 +20,7 @@ const service_connection_provider_1 = require("@theia/core/lib/browser/messaging
20
20
  const inversify_1 = require("@theia/core/shared/inversify");
21
21
  const frontend_language_model_alias_registry_1 = require("./frontend-language-model-alias-registry");
22
22
  const trust_aware_preference_reader_1 = require("./trust-aware-preference-reader");
23
+ const ai_configuration_service_impl_1 = require("./ai-configuration-service-impl");
23
24
  const language_model_alias_1 = require("../common/language-model-alias");
24
25
  const common_1 = require("../common");
25
26
  const frontend_language_model_registry_1 = require("./frontend-language-model-registry");
@@ -141,7 +142,10 @@ exports.default = new inversify_1.ContainerModule(bind => {
141
142
  bind(common_1.TokenUsageServiceClient).to(token_usage_frontend_service_impl_1.TokenUsageServiceClientImpl).inSingletonScope();
142
143
  bind(frontend_language_model_alias_registry_1.DefaultLanguageModelAliasRegistry).toSelf().inSingletonScope();
143
144
  bind(language_model_alias_1.LanguageModelAliasRegistry).toService(frontend_language_model_alias_registry_1.DefaultLanguageModelAliasRegistry);
145
+ // Internal implementation detail of AiConfigurationService; consumers inject AiConfigurationService.
144
146
  bind(trust_aware_preference_reader_1.TrustAwarePreferenceReader).toSelf().inSingletonScope();
147
+ bind(ai_configuration_service_impl_1.AiConfigurationServiceImpl).toSelf().inSingletonScope();
148
+ bind(common_1.AiConfigurationService).toService(ai_configuration_service_impl_1.AiConfigurationServiceImpl);
145
149
  bind(common_1.TokenUsageService).toDynamicValue(ctx => {
146
150
  const connection = ctx.container.get(service_connection_provider_1.RemoteConnectionProvider);
147
151
  const client = ctx.container.get(common_1.TokenUsageServiceClient);
@@ -1 +1 @@
1
- {"version":3,"file":"ai-core-frontend-module.js","sourceRoot":"","sources":["../../src/browser/ai-core-frontend-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-core-frontend-module.js","sourceRoot":"","sources":["../../src/browser/ai-core-frontend-module.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,8 @@
1
1
  import { DisposableCollection, Emitter, Event, ILogger, RecursiveReadonly } from '@theia/core';
2
- import { PreferenceService } from '@theia/core/lib/common';
3
- import { AISettings, AISettingsService, AgentSettings } from '../common';
4
- import { TrustAwarePreferenceReader } from './trust-aware-preference-reader';
2
+ import { AiConfigurationService, AISettings, AISettingsService, AgentSettings } from '../common';
5
3
  export declare class AISettingsServiceImpl implements AISettingsService {
6
4
  protected readonly logger: ILogger;
7
- protected preferenceService: PreferenceService;
8
- protected readonly trustAwareReader: TrustAwarePreferenceReader;
5
+ protected readonly aiConfigurationService: AiConfigurationService;
9
6
  static readonly PREFERENCE_NAME = "ai-features.agentSettings";
10
7
  protected toDispose: DisposableCollection;
11
8
  protected readonly onDidChangeEmitter: Emitter<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"ai-settings-service.d.ts","sourceRoot":"","sources":["../../src/browser/ai-settings-service.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAE/F,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,qBACa,qBAAsB,YAAW,iBAAiB;IAG3D,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAER,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAG1E,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;IAEhE,MAAM,CAAC,QAAQ,CAAC,eAAe,+BAA+B;IAE9D,SAAS,CAAC,SAAS,uBAA8B;IAEjD,SAAS,CAAC,QAAQ,CAAC,kBAAkB,gBAAuB;IAC5D,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAiC;IAGzD,SAAS,CAAC,IAAI,IAAI,IAAI;IAahB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxF,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;IAKtF,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;CAK9D"}
1
+ {"version":3,"file":"ai-settings-service.d.ts","sourceRoot":"","sources":["../../src/browser/ai-settings-service.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAE/F,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAEjG,qBACa,qBAAsB,YAAW,iBAAiB;IAG3D,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAGnC,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAElE,MAAM,CAAC,QAAQ,CAAC,eAAe,+BAA+B;IAE9D,SAAS,CAAC,SAAS,uBAA8B;IAEjD,SAAS,CAAC,QAAQ,CAAC,kBAAkB,gBAAuB;IAC5D,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAiC;IAGzD,SAAS,CAAC,IAAI,IAAI,IAAI;IAUhB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxF,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;IAKtF,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;CAI9D"}
@@ -20,8 +20,7 @@ const tslib_1 = require("tslib");
20
20
  // *****************************************************************************
21
21
  const core_1 = require("@theia/core");
22
22
  const inversify_1 = require("@theia/core/shared/inversify");
23
- const common_1 = require("@theia/core/lib/common");
24
- const trust_aware_preference_reader_1 = require("./trust-aware-preference-reader");
23
+ const common_1 = require("../common");
25
24
  let AISettingsServiceImpl = class AISettingsServiceImpl {
26
25
  constructor() {
27
26
  this.toDispose = new core_1.DisposableCollection();
@@ -31,18 +30,17 @@ let AISettingsServiceImpl = class AISettingsServiceImpl {
31
30
  static { AISettingsServiceImpl_1 = this; }
32
31
  static { this.PREFERENCE_NAME = 'ai-features.agentSettings'; }
33
32
  init() {
34
- this.toDispose.push(this.preferenceService.onPreferenceChanged(event => {
35
- if (event.preferenceName === AISettingsServiceImpl_1.PREFERENCE_NAME) {
33
+ this.toDispose.push(this.aiConfigurationService.onDidChange(change => {
34
+ if (change.affectsPreference(AISettingsServiceImpl_1.PREFERENCE_NAME)) {
36
35
  this.onDidChangeEmitter.fire();
37
36
  }
38
37
  }));
39
- this.toDispose.push(this.trustAwareReader.onDidChangeTrust(() => this.onDidChangeEmitter.fire()));
40
38
  }
41
39
  async updateAgentSettings(agent, agentSettings) {
42
40
  const settings = await this.getSettings();
43
41
  const toSet = { ...settings, [agent]: { ...settings[agent], ...agentSettings } };
44
42
  try {
45
- await this.preferenceService.updateValue(AISettingsServiceImpl_1.PREFERENCE_NAME, toSet);
43
+ await this.aiConfigurationService.update(AISettingsServiceImpl_1.PREFERENCE_NAME, toSet);
46
44
  }
47
45
  catch (e) {
48
46
  this.onDidChangeEmitter.fire();
@@ -54,9 +52,8 @@ let AISettingsServiceImpl = class AISettingsServiceImpl {
54
52
  return settings[agent];
55
53
  }
56
54
  async getSettings() {
57
- await this.preferenceService.ready;
58
- await this.trustAwareReader.ready;
59
- return this.trustAwareReader.get(AISettingsServiceImpl_1.PREFERENCE_NAME, {}) ?? {};
55
+ await this.aiConfigurationService.ready;
56
+ return this.aiConfigurationService.get(AISettingsServiceImpl_1.PREFERENCE_NAME, {}) ?? {};
60
57
  }
61
58
  };
62
59
  exports.AISettingsServiceImpl = AISettingsServiceImpl;
@@ -65,13 +62,9 @@ tslib_1.__decorate([
65
62
  tslib_1.__metadata("design:type", Object)
66
63
  ], AISettingsServiceImpl.prototype, "logger", void 0);
67
64
  tslib_1.__decorate([
68
- (0, inversify_1.inject)(common_1.PreferenceService),
65
+ (0, inversify_1.inject)(common_1.AiConfigurationService),
69
66
  tslib_1.__metadata("design:type", Object)
70
- ], AISettingsServiceImpl.prototype, "preferenceService", void 0);
71
- tslib_1.__decorate([
72
- (0, inversify_1.inject)(trust_aware_preference_reader_1.TrustAwarePreferenceReader),
73
- tslib_1.__metadata("design:type", trust_aware_preference_reader_1.TrustAwarePreferenceReader)
74
- ], AISettingsServiceImpl.prototype, "trustAwareReader", void 0);
67
+ ], AISettingsServiceImpl.prototype, "aiConfigurationService", void 0);
75
68
  tslib_1.__decorate([
76
69
  (0, inversify_1.postConstruct)(),
77
70
  tslib_1.__metadata("design:type", Function),
@@ -1 +1 @@
1
- {"version":3,"file":"ai-settings-service.js","sourceRoot":"","sources":["../../src/browser/ai-settings-service.ts"],"names":[],"mappings":";;;;;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,sCAA+F;AAC/F,4DAAiF;AACjF,mDAA2D;AAE3D,mFAA6E;AAGtE,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAA3B;QAYO,cAAS,GAAG,IAAI,2BAAoB,EAAE,CAAC;QAE9B,uBAAkB,GAAG,IAAI,cAAO,EAAQ,CAAC;QAC5D,gBAAW,GAAgB,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;IAqC7D,CAAC;;aA1CmB,oBAAe,GAAG,2BAA2B,AAA9B,CAA+B;IAQpD,IAAI;QACV,IAAI,CAAC,SAAS,CAAC,IAAI,CACf,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE;YAC/C,IAAI,KAAK,CAAC,cAAc,KAAK,uBAAqB,CAAC,eAAe,EAAE,CAAC;gBACjE,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;YACnC,CAAC;QACL,CAAC,CAAC,CACL,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,IAAI,CACf,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAC/E,CAAC;IACN,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,KAAa,EAAE,aAAqC;QAC1E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG,aAAa,EAAE,EAAE,CAAC;QACjF,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,uBAAqB,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QAC3F,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,GAAG,CAAC,CAAC,CAAC;QACxE,CAAC;IACL,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAAa;QAChC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,WAAW;QACb,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;QACnC,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;QAClC,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAa,uBAAqB,CAAC,eAAe,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IAClG,CAAC;;AAnDQ,sDAAqB;AAGX;IADlB,IAAA,kBAAM,EAAC,cAAO,CAAC;;qDACmB;AAEE;IAApC,IAAA,kBAAM,EAAC,0BAAiB,CAAC;;gEAAgD;AAGvD;IADlB,IAAA,kBAAM,EAAC,0DAA0B,CAAC;sCACE,0DAA0B;+DAAC;AAUtD;IADT,IAAA,yBAAa,GAAE;;;;iDAYf;gCA7BQ,qBAAqB;IADjC,IAAA,sBAAU,GAAE;GACA,qBAAqB,CAoDjC"}
1
+ {"version":3,"file":"ai-settings-service.js","sourceRoot":"","sources":["../../src/browser/ai-settings-service.ts"],"names":[],"mappings":";;;;;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,sCAA+F;AAC/F,4DAAiF;AACjF,sCAAiG;AAG1F,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAA3B;QAUO,cAAS,GAAG,IAAI,2BAAoB,EAAE,CAAC;QAE9B,uBAAkB,GAAG,IAAI,cAAO,EAAQ,CAAC;QAC5D,gBAAW,GAAgB,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;IAiC7D,CAAC;;aAtCmB,oBAAe,GAAG,2BAA2B,AAA9B,CAA+B;IAQpD,IAAI;QACV,IAAI,CAAC,SAAS,CAAC,IAAI,CACf,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE;YAC7C,IAAI,MAAM,CAAC,iBAAiB,CAAC,uBAAqB,CAAC,eAAe,CAAC,EAAE,CAAC;gBAClE,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;YACnC,CAAC;QACL,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,KAAa,EAAE,aAAqC;QAC1E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG,aAAa,EAAE,EAAE,CAAC;QACjF,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,uBAAqB,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QAC3F,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,GAAG,CAAC,CAAC,CAAC;QACxE,CAAC;IACL,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAAa;QAChC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,WAAW;QACb,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC;QACxC,OAAO,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAa,uBAAqB,CAAC,eAAe,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IACxG,CAAC;;AA7CQ,sDAAqB;AAGX;IADlB,IAAA,kBAAM,EAAC,cAAO,CAAC;;qDACmB;AAGhB;IADlB,IAAA,kBAAM,EAAC,+BAAsB,CAAC;;qEACmC;AAUxD;IADT,IAAA,yBAAa,GAAE;;;;iDASf;gCAxBQ,qBAAqB;IADjC,IAAA,sBAAU,GAAE;GACA,qBAAqB,CA8CjC"}
@@ -1,14 +1,12 @@
1
1
  import { Emitter, Event } from '@theia/core';
2
2
  import { LanguageModelAlias, LanguageModelAliasRegistry } from '../common/language-model-alias';
3
- import { PreferenceService } from '@theia/core/lib/common';
4
3
  import { Deferred } from '@theia/core/lib/common/promise-util';
5
- import { TrustAwarePreferenceReader } from './trust-aware-preference-reader';
4
+ import { AiConfigurationService } from '../common/ai-configuration-service';
6
5
  export declare class DefaultLanguageModelAliasRegistry implements LanguageModelAliasRegistry {
7
6
  protected aliases: LanguageModelAlias[];
8
7
  protected readonly onDidChangeEmitter: Emitter<void>;
9
8
  readonly onDidChange: Event<void>;
10
- protected readonly preferenceService: PreferenceService;
11
- protected readonly trustAwareReader: TrustAwarePreferenceReader;
9
+ protected readonly aiConfigurationService: AiConfigurationService;
12
10
  protected readonly _ready: Deferred<void>;
13
11
  get ready(): Promise<void>;
14
12
  protected init(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"frontend-language-model-alias-registry.d.ts","sourceRoot":"","sources":["../../src/browser/frontend-language-model-alias-registry.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAO,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAChG,OAAO,EAAmB,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE5E,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,qBACa,iCAAkC,YAAW,0BAA0B;IAEhF,SAAS,CAAC,OAAO,EAAE,kBAAkB,EAAE,CA+CrC;IACF,SAAS,CAAC,QAAQ,CAAC,kBAAkB,gBAAuB;IAC5D,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAiC;IAGlE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;IAEhE,SAAS,CAAC,QAAQ,CAAC,MAAM,iBAAwB;IACjD,IAAI,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAEzB;IAGD,SAAS,CAAC,IAAI,IAAI,IAAI;IAkBtB,QAAQ,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI;IAWzC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAS7B,UAAU,IAAI,kBAAkB,EAAE;IAIlC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;IAW9C;;;OAGG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAS3D;;OAEG;IACH,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAWpC;;OAEG;IACH,SAAS,CAAC,gBAAgB,IAAI,IAAI;CASrC"}
1
+ {"version":3,"file":"frontend-language-model-alias-registry.d.ts","sourceRoot":"","sources":["../../src/browser/frontend-language-model-alias-registry.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAO,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAGhG,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAE5E,qBACa,iCAAkC,YAAW,0BAA0B;IAEhF,SAAS,CAAC,OAAO,EAAE,kBAAkB,EAAE,CA+CrC;IACF,SAAS,CAAC,QAAQ,CAAC,kBAAkB,gBAAuB;IAC5D,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAiC;IAGlE,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAElE,SAAS,CAAC,QAAQ,CAAC,MAAM,iBAAwB;IACjD,IAAI,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAEzB;IAGD,SAAS,CAAC,IAAI,IAAI,IAAI;IAiBtB,QAAQ,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI;IAWzC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAS7B,UAAU,IAAI,kBAAkB,EAAE;IAIlC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;IAW9C;;;OAGG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAS3D;;OAEG;IACH,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAWpC;;OAEG;IACH,SAAS,CAAC,gBAAgB,IAAI,IAAI;CASrC"}