@theia/ai-core 1.73.0-next.29 → 1.73.0-next.31
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.
- package/lib/browser/skill-service.d.ts +5 -0
- package/lib/browser/skill-service.d.ts.map +1 -1
- package/lib/browser/skill-service.js +28 -2
- package/lib/browser/skill-service.js.map +1 -1
- package/lib/browser/skill-service.spec.js +34 -5
- package/lib/browser/skill-service.spec.js.map +1 -1
- package/package.json +9 -9
- package/src/browser/skill-service.spec.ts +44 -5
- package/src/browser/skill-service.ts +29 -2
|
@@ -30,6 +30,10 @@ export declare class DefaultSkillService implements SkillService {
|
|
|
30
30
|
readonly onSkillsChanged: Event<void>;
|
|
31
31
|
protected lastSkillDirectoriesValue: string | undefined;
|
|
32
32
|
protected updateDebounceTimeout: ReturnType<typeof setTimeout> | undefined;
|
|
33
|
+
/** True while {@link update} is running, so concurrent callers do not duplicate the scan and its log output. */
|
|
34
|
+
protected updateInProgress: boolean;
|
|
35
|
+
/** Set when {@link update} is called while another run is in progress; triggers a follow-up scan when the current one finishes. */
|
|
36
|
+
protected updateRescheduled: boolean;
|
|
33
37
|
protected _ready: Deferred<void>;
|
|
34
38
|
get ready(): Promise<void>;
|
|
35
39
|
protected init(): void;
|
|
@@ -37,6 +41,7 @@ export declare class DefaultSkillService implements SkillService {
|
|
|
37
41
|
getSkill(name: string): Skill | undefined;
|
|
38
42
|
protected scheduleUpdate(): void;
|
|
39
43
|
protected update(): Promise<void>;
|
|
44
|
+
protected doUpdate(): Promise<void>;
|
|
40
45
|
protected getWorkspaceSkillsDirectoryPaths(): string[];
|
|
41
46
|
protected getDefaultSkillsDirectoryPaths(): Promise<string[]>;
|
|
42
47
|
protected processSkillDirectoryWithParentWatching(directoryPath: string, skills: Map<string, Skill>, disposables: DisposableCollection, watchedDirectories: Set<string>, parentWatchers: Map<string, string>): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-service.d.ts","sourceRoot":"","sources":["../../src/browser/skill-service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAEjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAEzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAqC,MAAM,+BAA+B,CAAC;AACrG,OAAO,EACH,KAAK,EAMR,MAAM,iBAAiB,CAAC;AAKzB,eAAO,MAAM,YAAY,eAAyB,CAAC;AACnD,MAAM,WAAW,YAAY;IACzB,gCAAgC;IAChC,SAAS,IAAI,KAAK,EAAE,CAAC;IAErB,0BAA0B;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;IAE1C,qCAAqC;IACrC,QAAQ,CAAC,eAAe,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAEtC,mEAAmE;IACnE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC;AAED,qBACa,mBAAoB,YAAW,YAAY;IAEpD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAI5C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAGnC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAG1D,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAEtD,SAAS,CAAC,MAAM,qBAA4B;IAC5C,SAAS,CAAC,SAAS,uBAA8B;IACjD,SAAS,CAAC,kBAAkB,cAAqB;IACjD,SAAS,CAAC,cAAc,sBAA6B;IAErD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,gBAAuB;IAChE,QAAQ,CAAC,eAAe,EAAE,KAAK,CAAC,IAAI,CAAC,CAAqC;IAC1E,SAAS,CAAC,yBAAyB,EAAE,MAAM,GAAG,SAAS,CAAC;IAExD,SAAS,CAAC,qBAAqB,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,SAAS,CAAC;IAE3E,SAAS,CAAC,MAAM,iBAAwB;IACxC,IAAI,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAEzB;IAGD,SAAS,CAAC,IAAI,IAAI,IAAI;IAkEtB,SAAS,IAAI,KAAK,EAAE;IAIpB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAIzC,SAAS,CAAC,cAAc,IAAI,IAAI;cAUhB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"skill-service.d.ts","sourceRoot":"","sources":["../../src/browser/skill-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,10 @@ let DefaultSkillService = class DefaultSkillService {
|
|
|
37
37
|
this.parentWatchers = new Map();
|
|
38
38
|
this.onSkillsChangedEmitter = new core_1.Emitter();
|
|
39
39
|
this.onSkillsChanged = this.onSkillsChangedEmitter.event;
|
|
40
|
+
/** True while {@link update} is running, so concurrent callers do not duplicate the scan and its log output. */
|
|
41
|
+
this.updateInProgress = false;
|
|
42
|
+
/** Set when {@link update} is called while another run is in progress; triggers a follow-up scan when the current one finishes. */
|
|
43
|
+
this.updateRescheduled = false;
|
|
40
44
|
this._ready = new promise_util_1.Deferred();
|
|
41
45
|
}
|
|
42
46
|
get ready() {
|
|
@@ -121,6 +125,28 @@ let DefaultSkillService = class DefaultSkillService {
|
|
|
121
125
|
clearTimeout(this.updateDebounceTimeout);
|
|
122
126
|
this.updateDebounceTimeout = undefined;
|
|
123
127
|
}
|
|
128
|
+
// Serialise concurrent update() calls: a workspace-ready trigger and a file-change-driven
|
|
129
|
+
// scheduleUpdate() can fire within the same async tick, in which case both runs would
|
|
130
|
+
// scan and log everything, producing the duplicated log lines that motivated this guard.
|
|
131
|
+
// The second caller records a pending request and lets the first finish; the follow-up
|
|
132
|
+
// is then re-scheduled through the debouncer so any further events coalesce into it.
|
|
133
|
+
if (this.updateInProgress) {
|
|
134
|
+
this.updateRescheduled = true;
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
this.updateInProgress = true;
|
|
138
|
+
try {
|
|
139
|
+
await this.doUpdate();
|
|
140
|
+
}
|
|
141
|
+
finally {
|
|
142
|
+
this.updateInProgress = false;
|
|
143
|
+
if (this.updateRescheduled) {
|
|
144
|
+
this.updateRescheduled = false;
|
|
145
|
+
this.scheduleUpdate();
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
async doUpdate() {
|
|
124
150
|
this.toDispose.dispose();
|
|
125
151
|
const newDisposables = new core_1.DisposableCollection();
|
|
126
152
|
const newSkills = new Map();
|
|
@@ -181,10 +207,10 @@ let DefaultSkillService = class DefaultSkillService {
|
|
|
181
207
|
const parentUriString = parentURI.toString();
|
|
182
208
|
disposables.push(this.fileService.watch(parentURI, { recursive: false, excludes: [] }));
|
|
183
209
|
parentWatchers.set(parentUriString, directoryPath);
|
|
184
|
-
this.logger.
|
|
210
|
+
this.logger.debug(`Watching parent directory '${parentPath}' for skills folder creation`);
|
|
185
211
|
}
|
|
186
212
|
else {
|
|
187
|
-
this.logger.
|
|
213
|
+
this.logger.debug(`Cannot watch skills directory '${directoryPath}': parent directory does not exist`);
|
|
188
214
|
}
|
|
189
215
|
}
|
|
190
216
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-service.js","sourceRoot":"","sources":["../../src/browser/skill-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skill-service.js","sourceRoot":"","sources":["../../src/browser/skill-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -224,6 +224,7 @@ description: Skill with no content
|
|
|
224
224
|
let fileServiceMock;
|
|
225
225
|
let loggerWarnSpy;
|
|
226
226
|
let loggerInfoSpy;
|
|
227
|
+
let loggerDebugSpy;
|
|
227
228
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
228
229
|
let envVariablesServerMock;
|
|
229
230
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -240,6 +241,7 @@ description: Skill with no content
|
|
|
240
241
|
const loggerMock = sinon.createStubInstance(core_1.Logger);
|
|
241
242
|
loggerMock.warn = loggerWarnSpy;
|
|
242
243
|
loggerMock.info = loggerInfoSpy;
|
|
244
|
+
loggerMock.debug = loggerDebugSpy;
|
|
243
245
|
service.logger = loggerMock;
|
|
244
246
|
service.envVariablesServer = envVariablesServerMock;
|
|
245
247
|
service.workspaceService = workspaceServiceMock;
|
|
@@ -257,6 +259,7 @@ description: Skill with no content
|
|
|
257
259
|
};
|
|
258
260
|
loggerWarnSpy = sinon.stub();
|
|
259
261
|
loggerInfoSpy = sinon.stub();
|
|
262
|
+
loggerDebugSpy = sinon.stub();
|
|
260
263
|
envVariablesServerMock = {
|
|
261
264
|
getHomeDirUri: sinon.stub().resolves('file:///home/testuser'),
|
|
262
265
|
getConfigDirUri: sinon.stub().resolves('file:///home/testuser/.theia-ide')
|
|
@@ -292,10 +295,12 @@ description: Skill with no content
|
|
|
292
295
|
await new Promise(resolve => setTimeout(resolve, 10));
|
|
293
296
|
// Verify parent directory is watched
|
|
294
297
|
(0, chai_1.expect)(fileServiceMock.watch.calledWith(sinon.match((uri) => uri.path.toString() === '/home/testuser/.theia-ide'), sinon.match({ recursive: false, excludes: [] }))).to.be.true;
|
|
295
|
-
// Verify
|
|
296
|
-
(0, chai_1.expect)(
|
|
298
|
+
// Verify debug log about watching parent (demoted from info to keep startup quiet)
|
|
299
|
+
(0, chai_1.expect)(loggerDebugSpy.calledWith(sinon.match(/Watching parent directory.*for skills folder creation/))).to.be.true;
|
|
300
|
+
// And the same line must not be emitted at info level any more.
|
|
301
|
+
(0, chai_1.expect)(loggerInfoSpy.calledWith(sinon.match(/Watching parent directory/))).to.be.false;
|
|
297
302
|
});
|
|
298
|
-
it('should log
|
|
303
|
+
it('should log a debug entry when parent directory does not exist', async () => {
|
|
299
304
|
const service = createService();
|
|
300
305
|
// Neither skills directory nor parent exists
|
|
301
306
|
fileServiceMock.exists.resolves(false);
|
|
@@ -303,8 +308,32 @@ description: Skill with no content
|
|
|
303
308
|
service.init();
|
|
304
309
|
await workspaceServiceMock.ready;
|
|
305
310
|
await new Promise(resolve => setTimeout(resolve, 10));
|
|
306
|
-
//
|
|
307
|
-
(0, chai_1.expect)(
|
|
311
|
+
// The absent-default-tree case is expected on fresh machines and is now debug-level only.
|
|
312
|
+
(0, chai_1.expect)(loggerDebugSpy.calledWith(sinon.match(/Cannot watch skills directory.*parent directory does not exist/))).to.be.true;
|
|
313
|
+
// It must no longer surface as a startup warning.
|
|
314
|
+
(0, chai_1.expect)(loggerWarnSpy.calledWith(sinon.match(/Cannot watch skills directory.*parent directory does not exist/))).to.be.false;
|
|
315
|
+
});
|
|
316
|
+
it('coalesces concurrent update() calls so a single scan runs at a time', async () => {
|
|
317
|
+
const service = createService();
|
|
318
|
+
// Default skills directory does not exist, but parent does, so each update logs once.
|
|
319
|
+
fileServiceMock.exists
|
|
320
|
+
.withArgs(sinon.match((uri) => uri.path.toString() === '/home/testuser/.theia-ide/skills'))
|
|
321
|
+
.resolves(false);
|
|
322
|
+
fileServiceMock.exists
|
|
323
|
+
.withArgs(sinon.match((uri) => uri.path.toString() === '/home/testuser/.theia-ide'))
|
|
324
|
+
.resolves(true);
|
|
325
|
+
// Drive two updates in the same tick - the second must be coalesced into a follow-up
|
|
326
|
+
// re-schedule rather than racing the first and producing duplicated log lines.
|
|
327
|
+
const update = service.update.bind(service);
|
|
328
|
+
await Promise.all([update(), update()]);
|
|
329
|
+
// Give the rescheduled run (debounced via scheduleUpdate) time to fire.
|
|
330
|
+
await new Promise(resolve => setTimeout(resolve, 80));
|
|
331
|
+
// The watcher must be installed (the underlying scan must have run); the same log line
|
|
332
|
+
// must have been emitted at most once per scan, never twice from interleaved scans.
|
|
333
|
+
const matchingDebugCalls = loggerDebugSpy.getCalls().filter(call => /Watching parent directory.*for skills folder creation/.test(String(call.args[0])));
|
|
334
|
+
// Two scans (initial + rescheduled) are allowed, but never more, and never zero.
|
|
335
|
+
(0, chai_1.expect)(matchingDebugCalls.length).to.be.greaterThan(0);
|
|
336
|
+
(0, chai_1.expect)(matchingDebugCalls.length).to.be.lessThan(3);
|
|
308
337
|
});
|
|
309
338
|
it('should log warning for non-existent configured directories', async () => {
|
|
310
339
|
const service = createService();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-service.spec.js","sourceRoot":"","sources":["../../src/browser/skill-service.spec.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;;AAEhF,8DAAiE;AACjE,MAAM,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC;AAEnC,uHAAiH;AACjH,wEAAiC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAE1C,+BAA8B;AAC9B,+BAA+B;AAC/B,2CAA0E;AAC1E,sDAAmD;AACnD,sCAAwE;AAExE,mDAAsD;AAEtD,YAAY,EAAE,CAAC;AAEf,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC1B,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC7B,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAC7D,MAAM,QAAQ,GAAG,gBAAgB,CAAC;YAClC,MAAM,qBAAqB,GAAG,CAAC,UAAU,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;YAEhF,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;YAEjF,IAAA,aAAM,EAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC3B,uBAAuB;gBACvB,8BAA8B;gBAC9B,gBAAgB;aACnB,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAChD,MAAM,qBAAqB,GAAG,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;YAE3E,yCAAyC;YACzC,IAAA,aAAM,EAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACtC,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;YACtE,MAAM,MAAM,GAAG,IAAA,+BAAuB,EAClC,CAAC,4BAA4B,EAAE,2BAA2B,CAAC,EAC3D,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,EACtC,CAAC,0BAA0B,EAAE,2BAA2B,CAAC,CAC5D,CAAC;YAEF,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBACzB,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,WAAW,EAAE;gBACzD,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,WAAW,EAAE;gBACxD,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAAY,EAAE;gBAC/C,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAAY,EAAE;gBAC/C,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,SAAS,EAAE;gBACrD,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,SAAS,EAAE;aACzD,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uGAAuG,EAAE,GAAG,EAAE;YAC7G,0FAA0F;YAC1F,4FAA4F;YAC5F,4DAA4D;YAC5D,MAAM,MAAM,GAAG,IAAA,+BAAuB,EAClC,CAAC,4BAA4B,EAAE,2BAA2B,CAAC,EAC3D,EAAE,EACF,EAAE,CACL,CAAC;YAEF,IAAA,aAAM,EAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBAClD,4BAA4B;gBAC5B,2BAA2B;aAC9B,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC3C,MAAM,MAAM,GAAG,IAAA,+BAAuB,EAClC,EAAE,EACF,CAAC,gBAAgB,CAAC,EAClB,CAAC,0BAA0B,CAAC,CAC/B,CAAC;YAEF,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBACzB,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,YAAY,EAAE;gBAC9C,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,SAAS,EAAE;aACxD,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC3C,MAAM,MAAM,GAAG,IAAA,+BAAuB,EAClC,EAAE,EACF,EAAE,EACF,CAAC,0BAA0B,EAAE,2BAA2B,CAAC,CAC5D,CAAC;YAEF,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBACzB,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,SAAS,EAAE;gBACrD,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,SAAS,EAAE;aACzD,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;YAC9D,MAAM,MAAM,GAAG,IAAA,+BAAuB,EAClC,CAAC,4BAA4B,CAAC,EAC9B,CAAC,4BAA4B,EAAE,gBAAgB,CAAC,EAChD,CAAC,0BAA0B,CAAC,CAC/B,CAAC;YAEF,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBACzB,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,WAAW,EAAE;gBACzD,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,YAAY,EAAE;gBAC9C,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,SAAS,EAAE;aACxD,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC5D,MAAM,MAAM,GAAG,IAAA,+BAAuB,EAClC,CAAC,4BAA4B,CAAC,EAC9B,CAAC,0BAA0B,CAAC,EAC5B,CAAC,0BAA0B,CAAC,CAC/B,CAAC;YAEF,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBACzB,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,WAAW,EAAE;gBACzD,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,YAAY,EAAE;aAC3D,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC5C,MAAM,MAAM,GAAG,IAAA,+BAAuB,EAClC,CAAC,4BAA4B,CAAC,EAC9B,EAAE,EACF,CAAC,0BAA0B,CAAC,CAC/B,CAAC;YAEF,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBACzB,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,WAAW,EAAE;gBACzD,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,SAAS,EAAE;aACxD,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YACzC,MAAM,MAAM,GAAG,IAAA,+BAAuB,EAClC,CAAC,4BAA4B,CAAC,EAC9B,CAAC,gBAAgB,CAAC,EAClB,EAAE,CACL,CAAC;YAEF,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBACzB,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,WAAW,EAAE;gBACzD,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,YAAY,EAAE;aACjD,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACpD,MAAM,MAAM,GAAG,IAAA,+BAAuB,EAClC,CAAC,4BAA4B,EAAE,4BAA4B,CAAC,EAC5D,EAAE,EACF,EAAE,CACL,CAAC;YAEF,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBACzB,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,WAAW,EAAE;aAC5D,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC5C,MAAM,WAAW,GAAG;;;;;;;;;;;2BAWL,CAAC;YAEhB,MAAM,MAAM,GAAG,IAAA,sBAAc,EAAC,WAAW,CAAC,CAAC;YAE3C,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;;2BAEjB,CAAC,CAAC;YACjB,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC;YAC5C,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACnD,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACnF,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACjD,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC3D,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;YACpE,MAAM,WAAW,GAAG,gCAAgC,CAAC;YAErD,MAAM,MAAM,GAAG,IAAA,sBAAc,EAAC,WAAW,CAAC,CAAC;YAE3C,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;YAClE,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YAC/C,MAAM,WAAW,GAAG;;cAElB,CAAC;YAEH,MAAM,MAAM,GAAG,IAAA,sBAAc,EAAC,WAAW,CAAC,CAAC;YAE3C,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC7C,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;YACvC,MAAM,WAAW,GAAG;;;;cAIlB,CAAC;YAEH,MAAM,MAAM,GAAG,IAAA,sBAAc,EAAC,WAAW,CAAC,CAAC;YAE3C,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC7C,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;YACvC,MAAM,WAAW,GAAG;;;;QAIxB,CAAC;YAEG,MAAM,MAAM,GAAG,IAAA,sBAAc,EAAC,WAAW,CAAC,CAAC;YAE3C,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC3C,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YACxD,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACjE,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;YACjD,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;YACvD,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;YAClC,MAAM,WAAW,GAAG;;;;;;;QAOxB,CAAC;YAEG,MAAM,MAAM,GAAG,IAAA,sBAAc,EAAC,WAAW,CAAC,CAAC;YAE3C,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAC1D,MAAM,WAAW,GAAG;;;;;;;;OAQzB,CAAC;YAEI,MAAM,MAAM,GAAG,IAAA,sBAAc,EAAC,WAAW,CAAC,CAAC;YAE3C,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YAClD,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC9C,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAChD,MAAM,WAAW,GAAG;;;;CAI/B,CAAC;YAEU,MAAM,MAAM,GAAG,IAAA,sBAAc,EAAC,WAAW,CAAC,CAAC;YAE3C,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YACxD,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACvC,8DAA8D;QAC9D,IAAI,eAAoB,CAAC;QACzB,IAAI,aAA8B,CAAC;QACnC,IAAI,aAA8B,CAAC;QACnC,8DAA8D;QAC9D,IAAI,sBAA2B,CAAC;QAChC,8DAA8D;QAC9D,IAAI,oBAAyB,CAAC;QAC9B,8DAA8D;QAC9D,IAAI,eAAoB,CAAC;QACzB,IAAI,kBAA6C,CAAC;QAClD,8DAA8D;QAC9D,IAAI,wBAAsC,CAAC;QAE3C,SAAS,aAAa;YAClB,MAAM,OAAO,GAAG,IAAI,mCAAmB,EAAE,CAAC;YACzC,OAA+C,CAAC,WAAW,GAAG,eAAe,CAAC;YAC9E,OAA+C,CAAC,WAAW,GAAG,eAAe,CAAC;YAC/E,MAAM,UAAU,GAAY,KAAK,CAAC,kBAAkB,CAAC,aAAM,CAAC,CAAC;YAC7D,UAAU,CAAC,IAAI,GAAG,aAAa,CAAC;YAChC,UAAU,CAAC,IAAI,GAAG,aAAa,CAAC;YAC/B,OAA0C,CAAC,MAAM,GAAG,UAAU,CAAC;YAC/D,OAAsD,CAAC,kBAAkB,GAAG,sBAAsB,CAAC;YACnG,OAAoD,CAAC,gBAAgB,GAAG,oBAAoB,CAAC;YAC9F,OAAO,OAAO,CAAC;QACnB,CAAC;QAED,UAAU,CAAC,GAAG,EAAE;YACZ,kBAAkB,GAAG,IAAI,cAAO,EAAoB,CAAC;YACrD,wBAAwB,GAAG,IAAI,cAAO,EAAE,CAAC;YAEzC,eAAe,GAAG;gBACd,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE;gBACpB,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,iBAAU,CAAC,IAAI,CAAC;gBAC5C,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE;gBACrB,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;gBAClB,gBAAgB,EAAE,CAAC,QAAuC,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC;aACpG,CAAC;YAEF,aAAa,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAC7B,aAAa,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAE7B,sBAAsB,GAAG;gBACrB,aAAa,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;gBAC7D,eAAe,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;aAC7E,CAAC;YAEF,oBAAoB,GAAG;gBACnB,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE;gBACxB,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrC,kBAAkB,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,iBAAU,CAAC,IAAI,CAAC;aAC5D,CAAC;YAEF,eAAe,GAAG;gBACd,qCAAqC,EAAE,EAAE;gBACzC,mBAAmB,EAAE,wBAAwB,CAAC,KAAK;aACtD,CAAC;QACN,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,GAAG,EAAE;YACX,KAAK,CAAC,OAAO,EAAE,CAAC;YAChB,kBAAkB,CAAC,OAAO,EAAE,CAAC;YAC7B,wBAAwB,CAAC,OAAO,EAAE,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YAChF,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAEhC,2DAA2D;YAC3D,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,kCAAkC,CAAC,CAAC;iBAC/F,QAAQ,CAAC,KAAK,CAAC,CAAC;YACrB,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,2BAA2B,CAAC,CAAC;iBACxF,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEpB,8BAA8B;YAC7B,OAA2C,CAAC,IAAI,EAAE,CAAC;YACpD,MAAM,oBAAoB,CAAC,KAAK,CAAC;YACjC,qCAAqC;YACrC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YAEtD,qCAAqC;YACrC,IAAA,aAAM,EAAC,eAAe,CAAC,KAAK,CAAC,UAAU,CACnC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,2BAA2B,CAAC,EAC9E,KAAK,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAClD,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAEd,wCAAwC;YACxC,IAAA,aAAM,EAAC,aAAa,CAAC,UAAU,CAC3B,KAAK,CAAC,KAAK,CAAC,uDAAuD,CAAC,CACvE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAEhC,6CAA6C;YAC7C,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEvC,8BAA8B;YAC7B,OAA2C,CAAC,IAAI,EAAE,CAAC;YACpD,MAAM,oBAAoB,CAAC,KAAK,CAAC;YACjC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YAEtD,qDAAqD;YACrD,IAAA,aAAM,EAAC,aAAa,CAAC,UAAU,CAC3B,KAAK,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAChF,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;YACxE,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAEhC,iDAAiD;YAChD,eAA2C,CAAC,qCAAqC,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;YAErH,iEAAiE;YACjE,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,kCAAkC,CAAC,CAAC;iBAC/F,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpB,eAAe,CAAC,OAAO;iBAClB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,kCAAkC,CAAC,CAAC;iBAC/F,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;YAEhC,sCAAsC;YACtC,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,4BAA4B,CAAC,CAAC;iBACzF,QAAQ,CAAC,KAAK,CAAC,CAAC;YAErB,8BAA8B;YAC7B,OAA2C,CAAC,IAAI,EAAE,CAAC;YACpD,MAAM,oBAAoB,CAAC,KAAK,CAAC;YACjC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YAEtD,iEAAiE;YACjE,IAAA,aAAM,EAAC,aAAa,CAAC,UAAU,CAC3B,KAAK,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAC5D,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;YAC/E,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAEhC,6DAA6D;YAC7D,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,kCAAkC,CAAC,CAAC;iBAC/F,QAAQ,CAAC,KAAK,CAAC,CAAC;YACrB,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,2BAA2B,CAAC,CAAC;iBACxF,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEpB,sCAAsC;YACrC,OAA2C,CAAC,IAAI,EAAE,CAAC;YACpD,MAAM,oBAAoB,CAAC,KAAK,CAAC;YACjC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YAEtD,6BAA6B;YAC7B,IAAA,aAAM,EAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAE9C,2DAA2D;YAC3D,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,kCAAkC,CAAC,CAAC;iBAC/F,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpB,eAAe,CAAC,OAAO;iBAClB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,kCAAkC,CAAC,CAAC;iBAC/F,QAAQ,CAAC;gBACN,QAAQ,EAAE,CAAC;wBACP,WAAW,EAAE,IAAI;wBACjB,IAAI,EAAE,YAAY;wBAClB,QAAQ,EAAE,UAAG,CAAC,YAAY,CAAC,6CAA6C,CAAC;qBAC5E,CAAC;aACL,CAAC,CAAC;YACP,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,sDAAsD,CAAC,CAAC;iBACnH,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpB,eAAe,CAAC,IAAI;iBACf,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,sDAAsD,CAAC,CAAC;iBACnH,QAAQ,CAAC;gBACN,KAAK,EAAE;;;;mBAIR;aACF,CAAC,CAAC;YAEP,2DAA2D;YAC3D,kBAAkB,CAAC,IAAI,CAAC;gBACpB,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,CAAC,EAAE,uBAAuB;wBAChC,QAAQ,EAAE,UAAG,CAAC,YAAY,CAAC,kCAAkC,CAAC;qBACjE,CAAC;gBACF,UAAU,EAAE,EAAE;aACc,CAAC,CAAC;YAElC,wCAAwC;YACxC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;YAEvD,0BAA0B;YAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;YACnC,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACjC,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uGAAuG,EAAE,KAAK,IAAI,EAAE;YACnH,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAEhC,oBAAoB,CAAC,WAAW,CAAC,OAAO,CAAC;gBACrC,EAAE,QAAQ,EAAE,UAAG,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE;aAC/C,CAAC,CAAC;YAEH,sFAAsF;YACtF,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,kCAAkC,CAAC,CAAC;iBAC/F,QAAQ,CAAC,KAAK,CAAC,CAAC;YACrB,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,2BAA2B,CAAC,CAAC;iBACxF,QAAQ,CAAC,KAAK,CAAC,CAAC;YACrB,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,+BAA+B,CAAC,CAAC;iBAC5F,QAAQ,CAAC,KAAK,CAAC,CAAC;YACrB,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,wBAAwB,CAAC,CAAC;iBACrF,QAAQ,CAAC,KAAK,CAAC,CAAC;YAErB,8EAA8E;YAC9E,MAAM,eAAe,GAAG,4BAA4B,CAAC;YACrD,MAAM,cAAc,GAAG,2BAA2B,CAAC;YACnD,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,eAAe,CAAC,CAAC;iBAC5E,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpB,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,cAAc,CAAC,CAAC;iBAC3E,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpB,eAAe,CAAC,OAAO;iBAClB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,eAAe,CAAC,CAAC;iBAC5E,QAAQ,CAAC;gBACN,QAAQ,EAAE,CAAC;wBACP,WAAW,EAAE,IAAI;wBACjB,IAAI,EAAE,WAAW;wBACjB,QAAQ,EAAE,UAAG,CAAC,YAAY,CAAC,GAAG,eAAe,YAAY,CAAC;qBAC7D,CAAC;aACL,CAAC,CAAC;YACP,eAAe,CAAC,OAAO;iBAClB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,cAAc,CAAC,CAAC;iBAC3E,QAAQ,CAAC;gBACN,QAAQ,EAAE,CAAC;wBACP,WAAW,EAAE,IAAI;wBACjB,IAAI,EAAE,WAAW;wBACjB,QAAQ,EAAE,UAAG,CAAC,YAAY,CAAC,GAAG,cAAc,YAAY,CAAC;qBAC5D,CAAC;aACL,CAAC,CAAC;YAEP,8EAA8E;YAC9E,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,GAAG,eAAe,qBAAqB,CAAC,CAAC;iBACpG,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpB,eAAe,CAAC,MAAM;iBACjB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,GAAG,cAAc,qBAAqB,CAAC,CAAC;iBACnG,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpB,eAAe,CAAC,IAAI;iBACf,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,GAAG,eAAe,qBAAqB,CAAC,CAAC;iBACpG,QAAQ,CAAC;gBACN,KAAK,EAAE,oEAAoE;aAC9E,CAAC,CAAC;YACP,eAAe,CAAC,IAAI;iBACf,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,GAAG,cAAc,qBAAqB,CAAC,CAAC;iBACnG,QAAQ,CAAC;gBACN,KAAK,EAAE,kEAAkE;aAC5E,CAAC,CAAC;YAEN,OAA2C,CAAC,IAAI,EAAE,CAAC;YACpD,MAAM,oBAAoB,CAAC,KAAK,CAAC;YACjC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YAEtD,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC5C,IAAA,aAAM,EAAC,KAAK,EAAE,gCAAgC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC;YACpE,IAAA,aAAM,EAAC,KAAM,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YACpD,IAAA,aAAM,EAAC,KAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,WAAI,CAAC,GAAG,eAAe,qBAAqB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAC7F,4EAA4E;YAC5E,IAAA,aAAM,EAAC,aAAa,CAAC,UAAU,CAC3B,KAAK,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAClD,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAClB,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"skill-service.spec.js","sourceRoot":"","sources":["../../src/browser/skill-service.spec.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/ai-core",
|
|
3
|
-
"version": "1.73.0-next.
|
|
3
|
+
"version": "1.73.0-next.31+f888a90fa",
|
|
4
4
|
"description": "Theia - AI Core",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/core": "1.73.0-next.
|
|
7
|
-
"@theia/editor": "1.73.0-next.
|
|
8
|
-
"@theia/filesystem": "1.73.0-next.
|
|
9
|
-
"@theia/monaco": "1.73.0-next.
|
|
6
|
+
"@theia/core": "1.73.0-next.31+f888a90fa",
|
|
7
|
+
"@theia/editor": "1.73.0-next.31+f888a90fa",
|
|
8
|
+
"@theia/filesystem": "1.73.0-next.31+f888a90fa",
|
|
9
|
+
"@theia/monaco": "1.73.0-next.31+f888a90fa",
|
|
10
10
|
"@theia/monaco-editor-core": "1.108.201",
|
|
11
|
-
"@theia/output": "1.73.0-next.
|
|
12
|
-
"@theia/variable-resolver": "1.73.0-next.
|
|
13
|
-
"@theia/workspace": "1.73.0-next.
|
|
11
|
+
"@theia/output": "1.73.0-next.31+f888a90fa",
|
|
12
|
+
"@theia/variable-resolver": "1.73.0-next.31+f888a90fa",
|
|
13
|
+
"@theia/workspace": "1.73.0-next.31+f888a90fa",
|
|
14
14
|
"@types/js-yaml": "^4.0.9",
|
|
15
15
|
"fast-deep-equal": "^3.1.3",
|
|
16
16
|
"js-yaml": "^4.1.1",
|
|
@@ -58,5 +58,5 @@
|
|
|
58
58
|
"nyc": {
|
|
59
59
|
"extends": "../../configs/nyc.json"
|
|
60
60
|
},
|
|
61
|
-
"gitHead": "
|
|
61
|
+
"gitHead": "f888a90fa9ccf8c0468fcb567369625c51ede3ee"
|
|
62
62
|
}
|
|
@@ -311,6 +311,7 @@ description: Skill with no content
|
|
|
311
311
|
let fileServiceMock: any;
|
|
312
312
|
let loggerWarnSpy: sinon.SinonStub;
|
|
313
313
|
let loggerInfoSpy: sinon.SinonStub;
|
|
314
|
+
let loggerDebugSpy: sinon.SinonStub;
|
|
314
315
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
315
316
|
let envVariablesServerMock: any;
|
|
316
317
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -328,6 +329,7 @@ description: Skill with no content
|
|
|
328
329
|
const loggerMock: ILogger = sinon.createStubInstance(Logger);
|
|
329
330
|
loggerMock.warn = loggerWarnSpy;
|
|
330
331
|
loggerMock.info = loggerInfoSpy;
|
|
332
|
+
loggerMock.debug = loggerDebugSpy;
|
|
331
333
|
(service as unknown as { logger: unknown }).logger = loggerMock;
|
|
332
334
|
(service as unknown as { envVariablesServer: unknown }).envVariablesServer = envVariablesServerMock;
|
|
333
335
|
(service as unknown as { workspaceService: unknown }).workspaceService = workspaceServiceMock;
|
|
@@ -348,6 +350,7 @@ description: Skill with no content
|
|
|
348
350
|
|
|
349
351
|
loggerWarnSpy = sinon.stub();
|
|
350
352
|
loggerInfoSpy = sinon.stub();
|
|
353
|
+
loggerDebugSpy = sinon.stub();
|
|
351
354
|
|
|
352
355
|
envVariablesServerMock = {
|
|
353
356
|
getHomeDirUri: sinon.stub().resolves('file:///home/testuser'),
|
|
@@ -395,13 +398,17 @@ description: Skill with no content
|
|
|
395
398
|
sinon.match({ recursive: false, excludes: [] })
|
|
396
399
|
)).to.be.true;
|
|
397
400
|
|
|
398
|
-
// Verify
|
|
399
|
-
expect(
|
|
401
|
+
// Verify debug log about watching parent (demoted from info to keep startup quiet)
|
|
402
|
+
expect(loggerDebugSpy.calledWith(
|
|
400
403
|
sinon.match(/Watching parent directory.*for skills folder creation/)
|
|
401
404
|
)).to.be.true;
|
|
405
|
+
// And the same line must not be emitted at info level any more.
|
|
406
|
+
expect(loggerInfoSpy.calledWith(
|
|
407
|
+
sinon.match(/Watching parent directory/)
|
|
408
|
+
)).to.be.false;
|
|
402
409
|
});
|
|
403
410
|
|
|
404
|
-
it('should log
|
|
411
|
+
it('should log a debug entry when parent directory does not exist', async () => {
|
|
405
412
|
const service = createService();
|
|
406
413
|
|
|
407
414
|
// Neither skills directory nor parent exists
|
|
@@ -412,10 +419,42 @@ description: Skill with no content
|
|
|
412
419
|
await workspaceServiceMock.ready;
|
|
413
420
|
await new Promise(resolve => setTimeout(resolve, 10));
|
|
414
421
|
|
|
415
|
-
//
|
|
416
|
-
expect(
|
|
422
|
+
// The absent-default-tree case is expected on fresh machines and is now debug-level only.
|
|
423
|
+
expect(loggerDebugSpy.calledWith(
|
|
417
424
|
sinon.match(/Cannot watch skills directory.*parent directory does not exist/)
|
|
418
425
|
)).to.be.true;
|
|
426
|
+
// It must no longer surface as a startup warning.
|
|
427
|
+
expect(loggerWarnSpy.calledWith(
|
|
428
|
+
sinon.match(/Cannot watch skills directory.*parent directory does not exist/)
|
|
429
|
+
)).to.be.false;
|
|
430
|
+
});
|
|
431
|
+
|
|
432
|
+
it('coalesces concurrent update() calls so a single scan runs at a time', async () => {
|
|
433
|
+
const service = createService();
|
|
434
|
+
|
|
435
|
+
// Default skills directory does not exist, but parent does, so each update logs once.
|
|
436
|
+
fileServiceMock.exists
|
|
437
|
+
.withArgs(sinon.match((uri: URI) => uri.path.toString() === '/home/testuser/.theia-ide/skills'))
|
|
438
|
+
.resolves(false);
|
|
439
|
+
fileServiceMock.exists
|
|
440
|
+
.withArgs(sinon.match((uri: URI) => uri.path.toString() === '/home/testuser/.theia-ide'))
|
|
441
|
+
.resolves(true);
|
|
442
|
+
|
|
443
|
+
// Drive two updates in the same tick - the second must be coalesced into a follow-up
|
|
444
|
+
// re-schedule rather than racing the first and producing duplicated log lines.
|
|
445
|
+
const update = (service as unknown as { update: () => Promise<void> }).update.bind(service);
|
|
446
|
+
await Promise.all([update(), update()]);
|
|
447
|
+
// Give the rescheduled run (debounced via scheduleUpdate) time to fire.
|
|
448
|
+
await new Promise(resolve => setTimeout(resolve, 80));
|
|
449
|
+
|
|
450
|
+
// The watcher must be installed (the underlying scan must have run); the same log line
|
|
451
|
+
// must have been emitted at most once per scan, never twice from interleaved scans.
|
|
452
|
+
const matchingDebugCalls = loggerDebugSpy.getCalls().filter(call =>
|
|
453
|
+
/Watching parent directory.*for skills folder creation/.test(String(call.args[0]))
|
|
454
|
+
);
|
|
455
|
+
// Two scans (initial + rescheduled) are allowed, but never more, and never zero.
|
|
456
|
+
expect(matchingDebugCalls.length).to.be.greaterThan(0);
|
|
457
|
+
expect(matchingDebugCalls.length).to.be.lessThan(3);
|
|
419
458
|
});
|
|
420
459
|
|
|
421
460
|
it('should log warning for non-existent configured directories', async () => {
|
|
@@ -79,6 +79,11 @@ export class DefaultSkillService implements SkillService {
|
|
|
79
79
|
|
|
80
80
|
protected updateDebounceTimeout: ReturnType<typeof setTimeout> | undefined;
|
|
81
81
|
|
|
82
|
+
/** True while {@link update} is running, so concurrent callers do not duplicate the scan and its log output. */
|
|
83
|
+
protected updateInProgress = false;
|
|
84
|
+
/** Set when {@link update} is called while another run is in progress; triggers a follow-up scan when the current one finishes. */
|
|
85
|
+
protected updateRescheduled = false;
|
|
86
|
+
|
|
82
87
|
protected _ready = new Deferred<void>();
|
|
83
88
|
get ready(): Promise<void> {
|
|
84
89
|
return this._ready.promise;
|
|
@@ -174,6 +179,28 @@ export class DefaultSkillService implements SkillService {
|
|
|
174
179
|
clearTimeout(this.updateDebounceTimeout);
|
|
175
180
|
this.updateDebounceTimeout = undefined;
|
|
176
181
|
}
|
|
182
|
+
// Serialise concurrent update() calls: a workspace-ready trigger and a file-change-driven
|
|
183
|
+
// scheduleUpdate() can fire within the same async tick, in which case both runs would
|
|
184
|
+
// scan and log everything, producing the duplicated log lines that motivated this guard.
|
|
185
|
+
// The second caller records a pending request and lets the first finish; the follow-up
|
|
186
|
+
// is then re-scheduled through the debouncer so any further events coalesce into it.
|
|
187
|
+
if (this.updateInProgress) {
|
|
188
|
+
this.updateRescheduled = true;
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
this.updateInProgress = true;
|
|
192
|
+
try {
|
|
193
|
+
await this.doUpdate();
|
|
194
|
+
} finally {
|
|
195
|
+
this.updateInProgress = false;
|
|
196
|
+
if (this.updateRescheduled) {
|
|
197
|
+
this.updateRescheduled = false;
|
|
198
|
+
this.scheduleUpdate();
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
protected async doUpdate(): Promise<void> {
|
|
177
204
|
this.toDispose.dispose();
|
|
178
205
|
const newDisposables = new DisposableCollection();
|
|
179
206
|
const newSkills = new Map<string, Skill>();
|
|
@@ -258,9 +285,9 @@ export class DefaultSkillService implements SkillService {
|
|
|
258
285
|
const parentUriString = parentURI.toString();
|
|
259
286
|
disposables.push(this.fileService.watch(parentURI, { recursive: false, excludes: [] }));
|
|
260
287
|
parentWatchers.set(parentUriString, directoryPath);
|
|
261
|
-
this.logger.
|
|
288
|
+
this.logger.debug(`Watching parent directory '${parentPath}' for skills folder creation`);
|
|
262
289
|
} else {
|
|
263
|
-
this.logger.
|
|
290
|
+
this.logger.debug(`Cannot watch skills directory '${directoryPath}': parent directory does not exist`);
|
|
264
291
|
}
|
|
265
292
|
}
|
|
266
293
|
} catch (error) {
|