repoburg 1.3.78 → 1.3.79

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 (29) hide show
  1. package/backend/dist/src/app.module.js +2 -0
  2. package/backend/dist/src/app.module.js.map +1 -1
  3. package/backend/dist/src/application-state/application-state.controller.d.ts +25 -3
  4. package/backend/dist/src/application-state/application-state.controller.js +64 -34
  5. package/backend/dist/src/application-state/application-state.controller.js.map +1 -1
  6. package/backend/dist/src/application-state/application-state.module.js +2 -1
  7. package/backend/dist/src/application-state/application-state.module.js.map +1 -1
  8. package/backend/dist/src/application-state/application-state.service.d.ts +33 -1
  9. package/backend/dist/src/application-state/application-state.service.js +233 -70
  10. package/backend/dist/src/application-state/application-state.service.js.map +1 -1
  11. package/backend/dist/src/global-config/dto/update-global-config.dto.d.ts +19 -0
  12. package/backend/dist/src/global-config/dto/update-global-config.dto.js +106 -0
  13. package/backend/dist/src/global-config/dto/update-global-config.dto.js.map +1 -0
  14. package/backend/dist/src/global-config/global-config.controller.d.ts +8 -0
  15. package/backend/dist/src/global-config/global-config.controller.js +48 -0
  16. package/backend/dist/src/global-config/global-config.controller.js.map +1 -0
  17. package/backend/dist/src/global-config/global-config.module.d.ts +2 -0
  18. package/backend/dist/src/global-config/global-config.module.js +23 -0
  19. package/backend/dist/src/global-config/global-config.module.js.map +1 -0
  20. package/backend/dist/src/global-config/global-config.service.d.ts +31 -0
  21. package/backend/dist/src/global-config/global-config.service.js +81 -0
  22. package/backend/dist/src/global-config/global-config.service.js.map +1 -0
  23. package/backend/dist/src/seeding/custom-variable-seeding.service.js +2 -1
  24. package/backend/dist/src/seeding/custom-variable-seeding.service.js.map +1 -1
  25. package/backend/dist/src/seeding/data/custom-variables/default-plan-mode.d.ts +2 -1
  26. package/backend/dist/src/seeding/data/custom-variables/default-plan-mode.js +3 -2
  27. package/backend/dist/src/seeding/data/custom-variables/default-plan-mode.js.map +1 -1
  28. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  29. package/package.json +1 -1
@@ -17,6 +17,7 @@ const common_1 = require("@nestjs/common");
17
17
  const typeorm_1 = require("@nestjs/typeorm");
18
18
  const typeorm_2 = require("typeorm");
19
19
  const core_entities_1 = require("../core-entities");
20
+ const global_config_service_1 = require("../global-config/global-config.service");
20
21
  const ACTIVE_SESSION_KEY = 'activeSessionId';
21
22
  const WEBSOCKET_ENABLED_KEY = 'websocketEnabled';
22
23
  const AUTO_CONTEXT_FETCH_ENABLED_KEY = 'autoContextFetchEnabled';
@@ -40,8 +41,9 @@ const LLM_RETRY_ENABLED_KEY = 'llmRetryEnabled';
40
41
  const LLM_RETRY_MAX_ATTEMPTS_KEY = 'llmRetryMaxAttempts';
41
42
  const DEFAULT_INSTANCE = 'default';
42
43
  let ApplicationStateService = class ApplicationStateService {
43
- constructor(applicationStateRepository) {
44
+ constructor(applicationStateRepository, globalConfigService) {
44
45
  this.applicationStateRepository = applicationStateRepository;
46
+ this.globalConfigService = globalConfigService;
45
47
  this.instance = process.env.REPOBURG_INSTANCE_NAME || DEFAULT_INSTANCE;
46
48
  }
47
49
  async setState(key, value) {
@@ -58,6 +60,92 @@ let ApplicationStateService = class ApplicationStateService {
58
60
  });
59
61
  return state?.value || null;
60
62
  }
63
+ async deleteState(key) {
64
+ await this.applicationStateRepository.delete({
65
+ instance: this.instance,
66
+ key: key,
67
+ });
68
+ }
69
+ getEffectiveBoolean(projectValue, globalValue, defaultValue) {
70
+ if (projectValue !== null) {
71
+ return { value: projectValue === 'true', source: 'project' };
72
+ }
73
+ if (globalValue !== undefined) {
74
+ return { value: globalValue, source: 'global' };
75
+ }
76
+ return { value: defaultValue, source: 'default' };
77
+ }
78
+ getEffectiveString(projectValue, globalValue, defaultValue) {
79
+ if (projectValue !== null) {
80
+ return { value: projectValue, source: 'project' };
81
+ }
82
+ if (globalValue !== undefined) {
83
+ return { value: globalValue, source: 'global' };
84
+ }
85
+ return { value: defaultValue, source: 'default' };
86
+ }
87
+ getEffectiveNumber(projectValue, globalValue, defaultValue) {
88
+ if (projectValue !== null) {
89
+ return { value: parseInt(projectValue, 10), source: 'project' };
90
+ }
91
+ if (globalValue !== undefined) {
92
+ return { value: globalValue, source: 'global' };
93
+ }
94
+ return { value: defaultValue, source: 'default' };
95
+ }
96
+ getEffectiveNullableString(projectValue, globalValue) {
97
+ if (projectValue !== null) {
98
+ return { value: projectValue, source: 'project' };
99
+ }
100
+ if (globalValue !== undefined) {
101
+ return { value: globalValue, source: 'global' };
102
+ }
103
+ return { value: null, source: 'default' };
104
+ }
105
+ async getEffectiveSettings() {
106
+ const globalConfig = this.globalConfigService.getConfig();
107
+ const projectStates = await this.applicationStateRepository.find({
108
+ where: { instance: this.instance },
109
+ });
110
+ const projectMap = new Map(projectStates.map((s) => [s.key, s.value]));
111
+ return {
112
+ executionStrategy: this.getEffectiveString(projectMap.get(EXECUTION_STRATEGY_KEY) || null, globalConfig.executionStrategy, 'apply_revert'),
113
+ websocketEnabled: this.getEffectiveBoolean(projectMap.get(WEBSOCKET_ENABLED_KEY) || null, globalConfig.websocketEnabled, true),
114
+ autoContextFetchEnabled: this.getEffectiveBoolean(projectMap.get(AUTO_CONTEXT_FETCH_ENABLED_KEY) || null, globalConfig.autoContextFetchEnabled, true),
115
+ autoSendToAIStudioEnabled: this.getEffectiveBoolean(projectMap.get(AUTO_SEND_TO_AI_STUDIO_ENABLED_KEY) || null, globalConfig.autoSendToAIStudioEnabled, false),
116
+ yoloModeEnabled: this.getEffectiveBoolean(projectMap.get(YOLO_MODE_ENABLED_KEY) || null, globalConfig.yoloModeEnabled, false),
117
+ yoloModeMessage: this.getEffectiveString(projectMap.get(YOLO_MODE_MESSAGE_KEY) || null, globalConfig.yoloModeMessage, 'continue or final'),
118
+ streamingEnabled: this.getEffectiveBoolean(projectMap.get(STREAMING_ENABLED_KEY) || null, globalConfig.streamingEnabled, false),
119
+ toolsEnabled: this.getEffectiveBoolean(projectMap.get(TOOLS_ENABLED_KEY) || null, globalConfig.toolsEnabled, true),
120
+ syntaxValidationEnabled: this.getEffectiveBoolean(projectMap.get(SYNTAX_VALIDATION_ENABLED_KEY) || null, globalConfig.syntaxValidationEnabled, true),
121
+ historyCompressionEnabled: this.getEffectiveBoolean(projectMap.get(HISTORY_COMPRESSION_ENABLED_KEY) || null, globalConfig.historyCompressionEnabled, true),
122
+ llmRetryEnabled: this.getEffectiveBoolean(projectMap.get(LLM_RETRY_ENABLED_KEY) || null, globalConfig.llmRetryEnabled, true),
123
+ llmRetryMaxAttempts: this.getEffectiveNumber(projectMap.get(LLM_RETRY_MAX_ATTEMPTS_KEY) || null, globalConfig.llmRetryMaxAttempts, 3),
124
+ contextTokenLimit: this.getEffectiveNumber(projectMap.get(CONTEXT_TOKEN_LIMIT_KEY) || null, globalConfig.contextTokenLimit, 500000),
125
+ followupTokenLimit: this.getEffectiveNumber(projectMap.get(FOLLOWUP_TOKEN_LIMIT_KEY) || null, globalConfig.followupTokenLimit, 32000),
126
+ openrouterApiKey: this.getEffectiveNullableString(projectMap.get(OPENROUTER_API_KEY) || null, globalConfig.openrouterApiKey),
127
+ zaiApiKey: this.getEffectiveNullableString(projectMap.get(ZAI_API_KEY) || null, globalConfig.zaiApiKey),
128
+ alibabaApiKey: this.getEffectiveNullableString(projectMap.get(ALIBABA_API_KEY) || null, globalConfig.alibabaApiKey),
129
+ };
130
+ }
131
+ async getProjectOverrides() {
132
+ const states = await this.applicationStateRepository.find({
133
+ where: { instance: this.instance },
134
+ });
135
+ const overrides = {};
136
+ for (const state of states) {
137
+ if (state.key !== ACTIVE_SESSION_KEY &&
138
+ state.key !== RECENT_MODELS_KEY &&
139
+ state.key !== THEME_KEY &&
140
+ state.key !== MANUAL_LLM_ENABLED_KEY) {
141
+ overrides[state.key] = state.value;
142
+ }
143
+ }
144
+ return overrides;
145
+ }
146
+ async clearOverride(key) {
147
+ await this.deleteState(key);
148
+ }
61
149
  async setActiveSessionId(sessionId) {
62
150
  await this.setState(ACTIVE_SESSION_KEY, sessionId);
63
151
  }
@@ -68,31 +156,40 @@ let ApplicationStateService = class ApplicationStateService {
68
156
  await this.setState(WEBSOCKET_ENABLED_KEY, String(enabled));
69
157
  }
70
158
  async getWebsocketEnabled() {
71
- const value = await this.getState(WEBSOCKET_ENABLED_KEY);
72
- if (value === null) {
73
- return true;
74
- }
75
- return value === 'true';
159
+ const projectValue = await this.getState(WEBSOCKET_ENABLED_KEY);
160
+ const globalValue = this.globalConfigService.get('websocketEnabled');
161
+ return this.getEffectiveBoolean(projectValue, globalValue, true).value;
162
+ }
163
+ async getWebsocketEnabledWithSource() {
164
+ const projectValue = await this.getState(WEBSOCKET_ENABLED_KEY);
165
+ const globalValue = this.globalConfigService.get('websocketEnabled');
166
+ return this.getEffectiveBoolean(projectValue, globalValue, true);
76
167
  }
77
168
  async setAutoContextFetchEnabled(enabled) {
78
169
  await this.setState(AUTO_CONTEXT_FETCH_ENABLED_KEY, String(enabled));
79
170
  }
80
171
  async getAutoContextFetchEnabled() {
81
- const value = await this.getState(AUTO_CONTEXT_FETCH_ENABLED_KEY);
82
- if (value === null) {
83
- return true;
84
- }
85
- return value === 'true';
172
+ const projectValue = await this.getState(AUTO_CONTEXT_FETCH_ENABLED_KEY);
173
+ const globalValue = this.globalConfigService.get('autoContextFetchEnabled');
174
+ return this.getEffectiveBoolean(projectValue, globalValue, true).value;
175
+ }
176
+ async getAutoContextFetchEnabledWithSource() {
177
+ const projectValue = await this.getState(AUTO_CONTEXT_FETCH_ENABLED_KEY);
178
+ const globalValue = this.globalConfigService.get('autoContextFetchEnabled');
179
+ return this.getEffectiveBoolean(projectValue, globalValue, true);
86
180
  }
87
181
  async setAutoSendToAIStudioEnabled(enabled) {
88
182
  await this.setState(AUTO_SEND_TO_AI_STUDIO_ENABLED_KEY, String(enabled));
89
183
  }
90
184
  async getAutoSendToAIStudioEnabled() {
91
- const value = await this.getState(AUTO_SEND_TO_AI_STUDIO_ENABLED_KEY);
92
- if (value === null) {
93
- return false;
94
- }
95
- return value === 'true';
185
+ const projectValue = await this.getState(AUTO_SEND_TO_AI_STUDIO_ENABLED_KEY);
186
+ const globalValue = this.globalConfigService.get('autoSendToAIStudioEnabled');
187
+ return this.getEffectiveBoolean(projectValue, globalValue, false).value;
188
+ }
189
+ async getAutoSendToAIStudioEnabledWithSource() {
190
+ const projectValue = await this.getState(AUTO_SEND_TO_AI_STUDIO_ENABLED_KEY);
191
+ const globalValue = this.globalConfigService.get('autoSendToAIStudioEnabled');
192
+ return this.getEffectiveBoolean(projectValue, globalValue, false);
96
193
  }
97
194
  async setManualLlmEnabled(enabled) {
98
195
  await this.setState(MANUAL_LLM_ENABLED_KEY, String(enabled));
@@ -108,11 +205,15 @@ let ApplicationStateService = class ApplicationStateService {
108
205
  await this.setState(EXECUTION_STRATEGY_KEY, strategy);
109
206
  }
110
207
  async getExecutionStrategy() {
111
- const value = await this.getState(EXECUTION_STRATEGY_KEY);
112
- if (value === null) {
113
- return 'apply_revert';
114
- }
115
- return value;
208
+ const projectValue = await this.getState(EXECUTION_STRATEGY_KEY);
209
+ const globalValue = this.globalConfigService.get('executionStrategy');
210
+ return this.getEffectiveString(projectValue, globalValue, 'apply_revert')
211
+ .value;
212
+ }
213
+ async getExecutionStrategyWithSource() {
214
+ const projectValue = await this.getState(EXECUTION_STRATEGY_KEY);
215
+ const globalValue = this.globalConfigService.get('executionStrategy');
216
+ return this.getEffectiveString(projectValue, globalValue, 'apply_revert');
116
217
  }
117
218
  async setTheme(theme) {
118
219
  await this.setState(THEME_KEY, theme);
@@ -125,39 +226,66 @@ let ApplicationStateService = class ApplicationStateService {
125
226
  await this.setState(CONTEXT_TOKEN_LIMIT_KEY, String(limit));
126
227
  }
127
228
  async getContextTokenLimit() {
128
- const value = await this.getState(CONTEXT_TOKEN_LIMIT_KEY);
129
- if (value === null) {
130
- return 500000;
131
- }
132
- return parseInt(value, 10);
229
+ const projectValue = await this.getState(CONTEXT_TOKEN_LIMIT_KEY);
230
+ const globalValue = this.globalConfigService.get('contextTokenLimit');
231
+ return this.getEffectiveNumber(projectValue, globalValue, 500000).value;
232
+ }
233
+ async getContextTokenLimitWithSource() {
234
+ const projectValue = await this.getState(CONTEXT_TOKEN_LIMIT_KEY);
235
+ const globalValue = this.globalConfigService.get('contextTokenLimit');
236
+ return this.getEffectiveNumber(projectValue, globalValue, 500000);
133
237
  }
134
238
  async setYoloModeEnabled(enabled) {
135
239
  await this.setState(YOLO_MODE_ENABLED_KEY, String(enabled));
136
240
  }
137
241
  async getYoloModeEnabled() {
138
- const value = await this.getState(YOLO_MODE_ENABLED_KEY);
139
- if (value === null) {
140
- return false;
141
- }
142
- return value === 'true';
242
+ const projectValue = await this.getState(YOLO_MODE_ENABLED_KEY);
243
+ const globalValue = this.globalConfigService.get('yoloModeEnabled');
244
+ return this.getEffectiveBoolean(projectValue, globalValue, false).value;
245
+ }
246
+ async getYoloModeEnabledWithSource() {
247
+ const projectValue = await this.getState(YOLO_MODE_ENABLED_KEY);
248
+ const globalValue = this.globalConfigService.get('yoloModeEnabled');
249
+ return this.getEffectiveBoolean(projectValue, globalValue, false);
143
250
  }
144
251
  async setOpenrouterApiKey(apiKey) {
145
252
  await this.setState(OPENROUTER_API_KEY, apiKey);
146
253
  }
147
254
  async getOpenrouterApiKey() {
148
- return this.getState(OPENROUTER_API_KEY);
255
+ const projectValue = await this.getState(OPENROUTER_API_KEY);
256
+ const globalValue = this.globalConfigService.get('openrouterApiKey');
257
+ return this.getEffectiveNullableString(projectValue, globalValue).value;
258
+ }
259
+ async getOpenrouterApiKeyWithSource() {
260
+ const projectValue = await this.getState(OPENROUTER_API_KEY);
261
+ const globalValue = this.globalConfigService.get('openrouterApiKey');
262
+ return this.getEffectiveNullableString(projectValue, globalValue);
149
263
  }
150
264
  async setZaiApiKey(apiKey) {
151
265
  await this.setState(ZAI_API_KEY, apiKey);
152
266
  }
153
267
  async getZaiApiKey() {
154
- return this.getState(ZAI_API_KEY);
268
+ const projectValue = await this.getState(ZAI_API_KEY);
269
+ const globalValue = this.globalConfigService.get('zaiApiKey');
270
+ return this.getEffectiveNullableString(projectValue, globalValue).value;
271
+ }
272
+ async getZaiApiKeyWithSource() {
273
+ const projectValue = await this.getState(ZAI_API_KEY);
274
+ const globalValue = this.globalConfigService.get('zaiApiKey');
275
+ return this.getEffectiveNullableString(projectValue, globalValue);
155
276
  }
156
277
  async setAlibabaApiKey(apiKey) {
157
278
  await this.setState(ALIBABA_API_KEY, apiKey);
158
279
  }
159
280
  async getAlibabaApiKey() {
160
- return this.getState(ALIBABA_API_KEY);
281
+ const projectValue = await this.getState(ALIBABA_API_KEY);
282
+ const globalValue = this.globalConfigService.get('alibabaApiKey');
283
+ return this.getEffectiveNullableString(projectValue, globalValue).value;
284
+ }
285
+ async getAlibabaApiKeyWithSource() {
286
+ const projectValue = await this.getState(ALIBABA_API_KEY);
287
+ const globalValue = this.globalConfigService.get('alibabaApiKey');
288
+ return this.getEffectiveNullableString(projectValue, globalValue);
161
289
  }
162
290
  async trackUsedModel(modelId) {
163
291
  const recent = await this.getRecentModels();
@@ -180,82 +308,117 @@ let ApplicationStateService = class ApplicationStateService {
180
308
  await this.setState(STREAMING_ENABLED_KEY, String(enabled));
181
309
  }
182
310
  async getStreamingEnabled() {
183
- const value = await this.getState(STREAMING_ENABLED_KEY);
184
- if (value === null) {
185
- return false;
186
- }
187
- return value === 'true';
311
+ const projectValue = await this.getState(STREAMING_ENABLED_KEY);
312
+ const globalValue = this.globalConfigService.get('streamingEnabled');
313
+ return this.getEffectiveBoolean(projectValue, globalValue, false).value;
314
+ }
315
+ async getStreamingEnabledWithSource() {
316
+ const projectValue = await this.getState(STREAMING_ENABLED_KEY);
317
+ const globalValue = this.globalConfigService.get('streamingEnabled');
318
+ return this.getEffectiveBoolean(projectValue, globalValue, false);
188
319
  }
189
320
  async setToolsEnabled(enabled) {
190
321
  await this.setState(TOOLS_ENABLED_KEY, String(enabled));
191
322
  }
192
323
  async getToolsEnabled() {
193
- const value = await this.getState(TOOLS_ENABLED_KEY);
194
- if (value === null) {
195
- return true;
196
- }
197
- return value === 'true';
324
+ const projectValue = await this.getState(TOOLS_ENABLED_KEY);
325
+ const globalValue = this.globalConfigService.get('toolsEnabled');
326
+ return this.getEffectiveBoolean(projectValue, globalValue, true).value;
327
+ }
328
+ async getToolsEnabledWithSource() {
329
+ const projectValue = await this.getState(TOOLS_ENABLED_KEY);
330
+ const globalValue = this.globalConfigService.get('toolsEnabled');
331
+ return this.getEffectiveBoolean(projectValue, globalValue, true);
198
332
  }
199
333
  async setSyntaxValidationEnabled(enabled) {
200
334
  await this.setState(SYNTAX_VALIDATION_ENABLED_KEY, String(enabled));
201
335
  }
202
336
  async getSyntaxValidationEnabled() {
203
- const value = await this.getState(SYNTAX_VALIDATION_ENABLED_KEY);
204
- if (value === null) {
205
- return true;
206
- }
207
- return value === 'true';
337
+ const projectValue = await this.getState(SYNTAX_VALIDATION_ENABLED_KEY);
338
+ const globalValue = this.globalConfigService.get('syntaxValidationEnabled');
339
+ return this.getEffectiveBoolean(projectValue, globalValue, true).value;
340
+ }
341
+ async getSyntaxValidationEnabledWithSource() {
342
+ const projectValue = await this.getState(SYNTAX_VALIDATION_ENABLED_KEY);
343
+ const globalValue = this.globalConfigService.get('syntaxValidationEnabled');
344
+ return this.getEffectiveBoolean(projectValue, globalValue, true);
208
345
  }
209
346
  async setYoloModeMessage(message) {
210
347
  await this.setState(YOLO_MODE_MESSAGE_KEY, message);
211
348
  }
212
349
  async getYoloModeMessage() {
213
- const value = await this.getState(YOLO_MODE_MESSAGE_KEY);
214
- return value || 'continue or final';
350
+ const projectValue = await this.getState(YOLO_MODE_MESSAGE_KEY);
351
+ const globalValue = this.globalConfigService.get('yoloModeMessage');
352
+ return this.getEffectiveString(projectValue, globalValue, 'continue or final').value;
353
+ }
354
+ async getYoloModeMessageWithSource() {
355
+ const projectValue = await this.getState(YOLO_MODE_MESSAGE_KEY);
356
+ const globalValue = this.globalConfigService.get('yoloModeMessage');
357
+ return this.getEffectiveString(projectValue, globalValue, 'continue or final');
215
358
  }
216
359
  async setFollowupTokenLimit(limit) {
217
360
  await this.setState(FOLLOWUP_TOKEN_LIMIT_KEY, String(limit));
218
361
  }
219
362
  async getFollowupTokenLimit() {
220
- const value = await this.getState(FOLLOWUP_TOKEN_LIMIT_KEY);
221
- return value ? parseInt(value, 10) : 32000;
363
+ const projectValue = await this.getState(FOLLOWUP_TOKEN_LIMIT_KEY);
364
+ const globalValue = this.globalConfigService.get('followupTokenLimit');
365
+ return this.getEffectiveNumber(projectValue, globalValue, 32000).value;
366
+ }
367
+ async getFollowupTokenLimitWithSource() {
368
+ const projectValue = await this.getState(FOLLOWUP_TOKEN_LIMIT_KEY);
369
+ const globalValue = this.globalConfigService.get('followupTokenLimit');
370
+ return this.getEffectiveNumber(projectValue, globalValue, 32000);
222
371
  }
223
372
  async setHistoryCompressionEnabled(enabled) {
224
373
  await this.setState(HISTORY_COMPRESSION_ENABLED_KEY, String(enabled));
225
374
  }
226
375
  async getHistoryCompressionEnabled() {
227
- const value = await this.getState(HISTORY_COMPRESSION_ENABLED_KEY);
228
- if (value === null) {
229
- return true;
230
- }
231
- return value === 'true';
376
+ const projectValue = await this.getState(HISTORY_COMPRESSION_ENABLED_KEY);
377
+ const globalValue = this.globalConfigService.get('historyCompressionEnabled');
378
+ return this.getEffectiveBoolean(projectValue, globalValue, true).value;
379
+ }
380
+ async getHistoryCompressionEnabledWithSource() {
381
+ const projectValue = await this.getState(HISTORY_COMPRESSION_ENABLED_KEY);
382
+ const globalValue = this.globalConfigService.get('historyCompressionEnabled');
383
+ return this.getEffectiveBoolean(projectValue, globalValue, true);
232
384
  }
233
385
  async setLlmRetryEnabled(enabled) {
234
386
  await this.setState(LLM_RETRY_ENABLED_KEY, String(enabled));
235
387
  }
236
388
  async getLlmRetryEnabled() {
237
- const value = await this.getState(LLM_RETRY_ENABLED_KEY);
238
- if (value === null) {
239
- return true;
240
- }
241
- return value === 'true';
389
+ const projectValue = await this.getState(LLM_RETRY_ENABLED_KEY);
390
+ const globalValue = this.globalConfigService.get('llmRetryEnabled');
391
+ return this.getEffectiveBoolean(projectValue, globalValue, true).value;
392
+ }
393
+ async getLlmRetryEnabledWithSource() {
394
+ const projectValue = await this.getState(LLM_RETRY_ENABLED_KEY);
395
+ const globalValue = this.globalConfigService.get('llmRetryEnabled');
396
+ return this.getEffectiveBoolean(projectValue, globalValue, true);
242
397
  }
243
398
  async setLlmRetryMaxAttempts(attempts) {
244
399
  await this.setState(LLM_RETRY_MAX_ATTEMPTS_KEY, String(attempts));
245
400
  }
246
401
  async getLlmRetryMaxAttempts() {
247
- const value = await this.getState(LLM_RETRY_MAX_ATTEMPTS_KEY);
248
- if (value === null) {
249
- return 3;
250
- }
251
- const parsed = parseInt(value, 10);
252
- return isNaN(parsed) ? 3 : Math.min(Math.max(parsed, 1), 10);
402
+ const projectValue = await this.getState(LLM_RETRY_MAX_ATTEMPTS_KEY);
403
+ const globalValue = this.globalConfigService.get('llmRetryMaxAttempts');
404
+ const result = this.getEffectiveNumber(projectValue, globalValue, 3).value;
405
+ return Math.min(Math.max(result, 1), 10);
406
+ }
407
+ async getLlmRetryMaxAttemptsWithSource() {
408
+ const projectValue = await this.getState(LLM_RETRY_MAX_ATTEMPTS_KEY);
409
+ const globalValue = this.globalConfigService.get('llmRetryMaxAttempts');
410
+ const result = this.getEffectiveNumber(projectValue, globalValue, 3);
411
+ return {
412
+ value: Math.min(Math.max(result.value, 1), 10),
413
+ source: result.source,
414
+ };
253
415
  }
254
416
  };
255
417
  exports.ApplicationStateService = ApplicationStateService;
256
418
  exports.ApplicationStateService = ApplicationStateService = __decorate([
257
419
  (0, common_1.Injectable)(),
258
420
  __param(0, (0, typeorm_1.InjectRepository)(core_entities_1.ApplicationState)),
259
- __metadata("design:paramtypes", [typeorm_2.Repository])
421
+ __metadata("design:paramtypes", [typeorm_2.Repository,
422
+ global_config_service_1.GlobalConfigService])
260
423
  ], ApplicationStateService);
261
424
  //# sourceMappingURL=application-state.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"application-state.service.js","sourceRoot":"","sources":["../../../src/application-state/application-state.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application-state.service.js","sourceRoot":"","sources":["../../../src/application-state/application-state.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ export declare class UpdateGlobalConfigDto {
2
+ executionStrategy?: string;
3
+ websocketEnabled?: boolean;
4
+ autoContextFetchEnabled?: boolean;
5
+ autoSendToAIStudioEnabled?: boolean;
6
+ yoloModeEnabled?: boolean;
7
+ yoloModeMessage?: string;
8
+ streamingEnabled?: boolean;
9
+ toolsEnabled?: boolean;
10
+ syntaxValidationEnabled?: boolean;
11
+ historyCompressionEnabled?: boolean;
12
+ llmRetryEnabled?: boolean;
13
+ llmRetryMaxAttempts?: number;
14
+ contextTokenLimit?: number;
15
+ followupTokenLimit?: number;
16
+ openrouterApiKey?: string;
17
+ zaiApiKey?: string;
18
+ alibabaApiKey?: string;
19
+ }
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.UpdateGlobalConfigDto = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ class UpdateGlobalConfigDto {
15
+ }
16
+ exports.UpdateGlobalConfigDto = UpdateGlobalConfigDto;
17
+ __decorate([
18
+ (0, class_validator_1.IsOptional)(),
19
+ (0, class_validator_1.IsString)(),
20
+ __metadata("design:type", String)
21
+ ], UpdateGlobalConfigDto.prototype, "executionStrategy", void 0);
22
+ __decorate([
23
+ (0, class_validator_1.IsOptional)(),
24
+ (0, class_validator_1.IsBoolean)(),
25
+ __metadata("design:type", Boolean)
26
+ ], UpdateGlobalConfigDto.prototype, "websocketEnabled", void 0);
27
+ __decorate([
28
+ (0, class_validator_1.IsOptional)(),
29
+ (0, class_validator_1.IsBoolean)(),
30
+ __metadata("design:type", Boolean)
31
+ ], UpdateGlobalConfigDto.prototype, "autoContextFetchEnabled", void 0);
32
+ __decorate([
33
+ (0, class_validator_1.IsOptional)(),
34
+ (0, class_validator_1.IsBoolean)(),
35
+ __metadata("design:type", Boolean)
36
+ ], UpdateGlobalConfigDto.prototype, "autoSendToAIStudioEnabled", void 0);
37
+ __decorate([
38
+ (0, class_validator_1.IsOptional)(),
39
+ (0, class_validator_1.IsBoolean)(),
40
+ __metadata("design:type", Boolean)
41
+ ], UpdateGlobalConfigDto.prototype, "yoloModeEnabled", void 0);
42
+ __decorate([
43
+ (0, class_validator_1.IsOptional)(),
44
+ (0, class_validator_1.IsString)(),
45
+ __metadata("design:type", String)
46
+ ], UpdateGlobalConfigDto.prototype, "yoloModeMessage", void 0);
47
+ __decorate([
48
+ (0, class_validator_1.IsOptional)(),
49
+ (0, class_validator_1.IsBoolean)(),
50
+ __metadata("design:type", Boolean)
51
+ ], UpdateGlobalConfigDto.prototype, "streamingEnabled", void 0);
52
+ __decorate([
53
+ (0, class_validator_1.IsOptional)(),
54
+ (0, class_validator_1.IsBoolean)(),
55
+ __metadata("design:type", Boolean)
56
+ ], UpdateGlobalConfigDto.prototype, "toolsEnabled", void 0);
57
+ __decorate([
58
+ (0, class_validator_1.IsOptional)(),
59
+ (0, class_validator_1.IsBoolean)(),
60
+ __metadata("design:type", Boolean)
61
+ ], UpdateGlobalConfigDto.prototype, "syntaxValidationEnabled", void 0);
62
+ __decorate([
63
+ (0, class_validator_1.IsOptional)(),
64
+ (0, class_validator_1.IsBoolean)(),
65
+ __metadata("design:type", Boolean)
66
+ ], UpdateGlobalConfigDto.prototype, "historyCompressionEnabled", void 0);
67
+ __decorate([
68
+ (0, class_validator_1.IsOptional)(),
69
+ (0, class_validator_1.IsBoolean)(),
70
+ __metadata("design:type", Boolean)
71
+ ], UpdateGlobalConfigDto.prototype, "llmRetryEnabled", void 0);
72
+ __decorate([
73
+ (0, class_validator_1.IsOptional)(),
74
+ (0, class_validator_1.IsNumber)(),
75
+ (0, class_validator_1.Min)(1),
76
+ (0, class_validator_1.Max)(10),
77
+ __metadata("design:type", Number)
78
+ ], UpdateGlobalConfigDto.prototype, "llmRetryMaxAttempts", void 0);
79
+ __decorate([
80
+ (0, class_validator_1.IsOptional)(),
81
+ (0, class_validator_1.IsNumber)(),
82
+ (0, class_validator_1.Min)(1),
83
+ __metadata("design:type", Number)
84
+ ], UpdateGlobalConfigDto.prototype, "contextTokenLimit", void 0);
85
+ __decorate([
86
+ (0, class_validator_1.IsOptional)(),
87
+ (0, class_validator_1.IsNumber)(),
88
+ (0, class_validator_1.Min)(1),
89
+ __metadata("design:type", Number)
90
+ ], UpdateGlobalConfigDto.prototype, "followupTokenLimit", void 0);
91
+ __decorate([
92
+ (0, class_validator_1.IsOptional)(),
93
+ (0, class_validator_1.IsString)(),
94
+ __metadata("design:type", String)
95
+ ], UpdateGlobalConfigDto.prototype, "openrouterApiKey", void 0);
96
+ __decorate([
97
+ (0, class_validator_1.IsOptional)(),
98
+ (0, class_validator_1.IsString)(),
99
+ __metadata("design:type", String)
100
+ ], UpdateGlobalConfigDto.prototype, "zaiApiKey", void 0);
101
+ __decorate([
102
+ (0, class_validator_1.IsOptional)(),
103
+ (0, class_validator_1.IsString)(),
104
+ __metadata("design:type", String)
105
+ ], UpdateGlobalConfigDto.prototype, "alibabaApiKey", void 0);
106
+ //# sourceMappingURL=update-global-config.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-global-config.dto.js","sourceRoot":"","sources":["../../../../src/global-config/dto/update-global-config.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAOyB;AAEzB,MAAa,qBAAqB;CAwEjC;AAxED,sDAwEC;AArEC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;gEACgB;AAI3B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;+DACe;AAI3B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;sEACsB;AAIlC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;wEACwB;AAIpC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;8DACc;AAI1B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;8DACc;AAIzB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;+DACe;AAI3B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;2DACW;AAIvB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;sEACsB;AAIlC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;wEACwB;AAIpC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;8DACc;AAM1B;IAJC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,qBAAG,EAAC,CAAC,CAAC;IACN,IAAA,qBAAG,EAAC,EAAE,CAAC;;kEACqB;AAK7B;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,qBAAG,EAAC,CAAC,CAAC;;gEACoB;AAK3B;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,qBAAG,EAAC,CAAC,CAAC;;iEACqB;AAI5B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;+DACe;AAI1B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;wDACQ;AAInB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;4DACY"}
@@ -0,0 +1,8 @@
1
+ import { GlobalConfigService, GlobalConfig } from './global-config.service';
2
+ import { UpdateGlobalConfigDto } from './dto/update-global-config.dto';
3
+ export declare class GlobalConfigController {
4
+ private readonly globalConfigService;
5
+ constructor(globalConfigService: GlobalConfigService);
6
+ getConfig(): GlobalConfig;
7
+ updateConfig(updateDto: UpdateGlobalConfigDto): Promise<GlobalConfig>;
8
+ }