@mcp-abap-adt/llm-agent 5.2.2 → 5.5.0
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/dist/index.d.ts +8 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/smart-agent/adapters/llm-adapter.d.ts +1 -0
- package/dist/smart-agent/adapters/llm-adapter.d.ts.map +1 -1
- package/dist/smart-agent/adapters/llm-adapter.js +3 -0
- package/dist/smart-agent/adapters/llm-adapter.js.map +1 -1
- package/dist/smart-agent/agent.d.ts +11 -4
- package/dist/smart-agent/agent.d.ts.map +1 -1
- package/dist/smart-agent/agent.js +60 -80
- package/dist/smart-agent/agent.js.map +1 -1
- package/dist/smart-agent/builder.d.ts +13 -14
- package/dist/smart-agent/builder.d.ts.map +1 -1
- package/dist/smart-agent/builder.js +26 -22
- package/dist/smart-agent/builder.js.map +1 -1
- package/dist/smart-agent/classifier/llm-classifier.d.ts +3 -1
- package/dist/smart-agent/classifier/llm-classifier.d.ts.map +1 -1
- package/dist/smart-agent/classifier/llm-classifier.js +20 -1
- package/dist/smart-agent/classifier/llm-classifier.js.map +1 -1
- package/dist/smart-agent/config.d.ts +1 -1
- package/dist/smart-agent/config.d.ts.map +1 -1
- package/dist/smart-agent/config.js +32 -0
- package/dist/smart-agent/config.js.map +1 -1
- package/dist/smart-agent/interfaces/index.d.ts +2 -1
- package/dist/smart-agent/interfaces/index.d.ts.map +1 -1
- package/dist/smart-agent/interfaces/index.js.map +1 -1
- package/dist/smart-agent/interfaces/llm.d.ts +2 -0
- package/dist/smart-agent/interfaces/llm.d.ts.map +1 -1
- package/dist/smart-agent/interfaces/mcp-connection-strategy.d.ts +28 -0
- package/dist/smart-agent/interfaces/mcp-connection-strategy.d.ts.map +1 -0
- package/dist/smart-agent/interfaces/mcp-connection-strategy.js +2 -0
- package/dist/smart-agent/interfaces/mcp-connection-strategy.js.map +1 -0
- package/dist/smart-agent/interfaces/request-logger.d.ts +53 -0
- package/dist/smart-agent/interfaces/request-logger.d.ts.map +1 -0
- package/dist/smart-agent/interfaces/request-logger.js +2 -0
- package/dist/smart-agent/interfaces/request-logger.js.map +1 -0
- package/dist/smart-agent/interfaces/types.d.ts +4 -0
- package/dist/smart-agent/interfaces/types.d.ts.map +1 -1
- package/dist/smart-agent/interfaces/types.js.map +1 -1
- package/dist/smart-agent/logger/default-request-logger.d.ts +16 -0
- package/dist/smart-agent/logger/default-request-logger.d.ts.map +1 -0
- package/dist/smart-agent/logger/default-request-logger.js +72 -0
- package/dist/smart-agent/logger/default-request-logger.js.map +1 -0
- package/dist/smart-agent/logger/noop-request-logger.d.ts +11 -0
- package/dist/smart-agent/logger/noop-request-logger.d.ts.map +1 -0
- package/dist/smart-agent/logger/noop-request-logger.js +19 -0
- package/dist/smart-agent/logger/noop-request-logger.js.map +1 -0
- package/dist/smart-agent/mcp-client-factory.d.ts +3 -0
- package/dist/smart-agent/mcp-client-factory.d.ts.map +1 -0
- package/dist/smart-agent/mcp-client-factory.js +21 -0
- package/dist/smart-agent/mcp-client-factory.js.map +1 -0
- package/dist/smart-agent/pipeline/context.d.ts +3 -10
- package/dist/smart-agent/pipeline/context.d.ts.map +1 -1
- package/dist/smart-agent/pipeline/context.js +1 -1
- package/dist/smart-agent/pipeline/handlers/index.d.ts +1 -2
- package/dist/smart-agent/pipeline/handlers/index.d.ts.map +1 -1
- package/dist/smart-agent/pipeline/handlers/index.js +1 -3
- package/dist/smart-agent/pipeline/handlers/index.js.map +1 -1
- package/dist/smart-agent/pipeline/handlers/present.d.ts.map +1 -1
- package/dist/smart-agent/pipeline/handlers/present.js +0 -1
- package/dist/smart-agent/pipeline/handlers/present.js.map +1 -1
- package/dist/smart-agent/pipeline/handlers/rag-query.d.ts.map +1 -1
- package/dist/smart-agent/pipeline/handlers/rag-query.js +7 -0
- package/dist/smart-agent/pipeline/handlers/rag-query.js.map +1 -1
- package/dist/smart-agent/pipeline/handlers/summarize.d.ts.map +1 -1
- package/dist/smart-agent/pipeline/handlers/summarize.js +9 -0
- package/dist/smart-agent/pipeline/handlers/summarize.js.map +1 -1
- package/dist/smart-agent/pipeline/handlers/tool-loop.d.ts.map +1 -1
- package/dist/smart-agent/pipeline/handlers/tool-loop.js +41 -12
- package/dist/smart-agent/pipeline/handlers/tool-loop.js.map +1 -1
- package/dist/smart-agent/pipeline/handlers/translate.d.ts.map +1 -1
- package/dist/smart-agent/pipeline/handlers/translate.js +9 -0
- package/dist/smart-agent/pipeline/handlers/translate.js.map +1 -1
- package/dist/smart-agent/pipeline/index.d.ts +1 -1
- package/dist/smart-agent/pipeline/index.d.ts.map +1 -1
- package/dist/smart-agent/pipeline/index.js +1 -1
- package/dist/smart-agent/pipeline/index.js.map +1 -1
- package/dist/smart-agent/pipeline/types.d.ts +1 -2
- package/dist/smart-agent/pipeline/types.d.ts.map +1 -1
- package/dist/smart-agent/pipeline/types.js +0 -1
- package/dist/smart-agent/pipeline/types.js.map +1 -1
- package/dist/smart-agent/providers.d.ts +3 -3
- package/dist/smart-agent/providers.d.ts.map +1 -1
- package/dist/smart-agent/providers.js +8 -9
- package/dist/smart-agent/providers.js.map +1 -1
- package/dist/smart-agent/rag/query-expander.d.ts +3 -1
- package/dist/smart-agent/rag/query-expander.d.ts.map +1 -1
- package/dist/smart-agent/rag/query-expander.js +16 -1
- package/dist/smart-agent/rag/query-expander.js.map +1 -1
- package/dist/smart-agent/resilience/circuit-breaker-llm.d.ts +1 -0
- package/dist/smart-agent/resilience/circuit-breaker-llm.d.ts.map +1 -1
- package/dist/smart-agent/resilience/circuit-breaker-llm.js +3 -0
- package/dist/smart-agent/resilience/circuit-breaker-llm.js.map +1 -1
- package/dist/smart-agent/resilience/retry-llm.d.ts +1 -0
- package/dist/smart-agent/resilience/retry-llm.d.ts.map +1 -1
- package/dist/smart-agent/resilience/retry-llm.js +3 -0
- package/dist/smart-agent/resilience/retry-llm.js.map +1 -1
- package/dist/smart-agent/smart-server.d.ts +2 -2
- package/dist/smart-agent/smart-server.d.ts.map +1 -1
- package/dist/smart-agent/smart-server.js +7 -18
- package/dist/smart-agent/smart-server.js.map +1 -1
- package/dist/smart-agent/strategies/index.d.ts +4 -0
- package/dist/smart-agent/strategies/index.d.ts.map +1 -0
- package/dist/smart-agent/strategies/index.js +4 -0
- package/dist/smart-agent/strategies/index.js.map +1 -0
- package/dist/smart-agent/strategies/lazy-connection-strategy.d.ts +15 -0
- package/dist/smart-agent/strategies/lazy-connection-strategy.d.ts.map +1 -0
- package/dist/smart-agent/strategies/lazy-connection-strategy.js +82 -0
- package/dist/smart-agent/strategies/lazy-connection-strategy.js.map +1 -0
- package/dist/smart-agent/strategies/noop-connection-strategy.d.ts +7 -0
- package/dist/smart-agent/strategies/noop-connection-strategy.d.ts.map +1 -0
- package/dist/smart-agent/strategies/noop-connection-strategy.js +6 -0
- package/dist/smart-agent/strategies/noop-connection-strategy.js.map +1 -0
- package/dist/smart-agent/strategies/periodic-connection-strategy.d.ts +13 -0
- package/dist/smart-agent/strategies/periodic-connection-strategy.d.ts.map +1 -0
- package/dist/smart-agent/strategies/periodic-connection-strategy.js +40 -0
- package/dist/smart-agent/strategies/periodic-connection-strategy.js.map +1 -0
- package/dist/smart-agent/testing/index.d.ts +2 -0
- package/dist/smart-agent/testing/index.d.ts.map +1 -1
- package/dist/smart-agent/testing/index.js +1 -0
- package/dist/smart-agent/testing/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
* pipeline YAML) delegate here to resolve config into interface instances.
|
|
7
7
|
*/
|
|
8
8
|
import { type SapAICoreCredentials } from '../llm-providers/sap-core-ai.js';
|
|
9
|
+
import type { ILlm } from './interfaces/llm.js';
|
|
9
10
|
import type { EmbedderFactory, IEmbedder, IRag } from './interfaces/rag.js';
|
|
10
|
-
import { TokenCountingLlm } from './llm/token-counting-llm.js';
|
|
11
11
|
export interface LlmProviderConfig {
|
|
12
12
|
provider: 'deepseek' | 'openai' | 'anthropic' | 'sap-ai-sdk';
|
|
13
13
|
apiKey?: string;
|
|
@@ -21,12 +21,12 @@ export interface LlmProviderConfig {
|
|
|
21
21
|
* Create an ILlm from a declarative provider config.
|
|
22
22
|
* This is the only function that knows about concrete LLM implementations.
|
|
23
23
|
*/
|
|
24
|
-
export declare function makeLlm(cfg: LlmProviderConfig, temperature: number):
|
|
24
|
+
export declare function makeLlm(cfg: LlmProviderConfig, temperature: number): ILlm;
|
|
25
25
|
/**
|
|
26
26
|
* Create a default DeepSeek-based ILlm from simple config (apiKey + model).
|
|
27
27
|
* Used by the flat YAML / CLI path.
|
|
28
28
|
*/
|
|
29
|
-
export declare function makeDefaultLlm(apiKey: string, model: string, temperature: number):
|
|
29
|
+
export declare function makeDefaultLlm(apiKey: string, model: string, temperature: number): ILlm;
|
|
30
30
|
export interface EmbedderResolutionConfig {
|
|
31
31
|
/** Embedder name — looked up in the factory registry. Default: 'ollama' */
|
|
32
32
|
embedder?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/smart-agent/providers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,iCAAiC,CAAC;AAGzC,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/smart-agent/providers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,iCAAiC,CAAC;AAGzC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAW5E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,YAAY,CAAC;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,oBAAoB,CAAC;CACpC;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAiFzE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAClB,IAAI,CAEN;AAMD,MAAM,WAAW,wBAAwB;IACvC,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,6DAA6D;IAC7D,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAClD;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,wBAAwB,EAC7B,OAAO,CAAC,EAAE,yBAAyB,GAClC,SAAS,CAiBX;AAMD,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,mDAAmD;IACnD,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,6DAA6D;IAC7D,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAClD;AAED;;;GAGG;AACH,wBAAgB,OAAO,CACrB,GAAG,EAAE,mBAAmB,EACxB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,IAAI,CAqDN"}
|
|
@@ -15,7 +15,6 @@ import { OpenAIProvider } from '../llm-providers/openai.js';
|
|
|
15
15
|
import { SapCoreAIProvider, } from '../llm-providers/sap-core-ai.js';
|
|
16
16
|
import { MCPClientWrapper } from '../mcp/client.js';
|
|
17
17
|
import { LlmAdapter } from './adapters/llm-adapter.js';
|
|
18
|
-
import { TokenCountingLlm } from './llm/token-counting-llm.js';
|
|
19
18
|
import { builtInEmbedderFactories } from './rag/embedder-factories.js';
|
|
20
19
|
import { InMemoryRag } from './rag/in-memory-rag.js';
|
|
21
20
|
import { OllamaRag } from './rag/ollama-rag.js';
|
|
@@ -44,10 +43,10 @@ export function makeLlm(cfg, temperature) {
|
|
|
44
43
|
llmProvider: provider,
|
|
45
44
|
mcpClient: dummyMcp,
|
|
46
45
|
});
|
|
47
|
-
return new
|
|
46
|
+
return new LlmAdapter(agent, {
|
|
48
47
|
model: provider.model,
|
|
49
48
|
getModels: () => provider.getModels(),
|
|
50
|
-
})
|
|
49
|
+
});
|
|
51
50
|
}
|
|
52
51
|
case 'openai': {
|
|
53
52
|
const provider = new OpenAIProvider({
|
|
@@ -60,10 +59,10 @@ export function makeLlm(cfg, temperature) {
|
|
|
60
59
|
llmProvider: provider,
|
|
61
60
|
mcpClient: dummyMcp,
|
|
62
61
|
});
|
|
63
|
-
return new
|
|
62
|
+
return new LlmAdapter(agent, {
|
|
64
63
|
model: provider.model,
|
|
65
64
|
getModels: () => provider.getModels(),
|
|
66
|
-
})
|
|
65
|
+
});
|
|
67
66
|
}
|
|
68
67
|
case 'anthropic': {
|
|
69
68
|
const provider = new AnthropicProvider({
|
|
@@ -76,10 +75,10 @@ export function makeLlm(cfg, temperature) {
|
|
|
76
75
|
llmProvider: provider,
|
|
77
76
|
mcpClient: dummyMcp,
|
|
78
77
|
});
|
|
79
|
-
return new
|
|
78
|
+
return new LlmAdapter(agent, {
|
|
80
79
|
model: provider.model,
|
|
81
80
|
getModels: () => provider.getModels(),
|
|
82
|
-
})
|
|
81
|
+
});
|
|
83
82
|
}
|
|
84
83
|
case 'sap-ai-sdk': {
|
|
85
84
|
const provider = new SapCoreAIProvider({
|
|
@@ -94,10 +93,10 @@ export function makeLlm(cfg, temperature) {
|
|
|
94
93
|
llmProvider: provider,
|
|
95
94
|
mcpClient: dummyMcp,
|
|
96
95
|
});
|
|
97
|
-
return new
|
|
96
|
+
return new LlmAdapter(agent, {
|
|
98
97
|
model: provider.model,
|
|
99
98
|
getModels: () => provider.getModels(),
|
|
100
|
-
})
|
|
99
|
+
});
|
|
101
100
|
}
|
|
102
101
|
default: {
|
|
103
102
|
const _exhaustive = cfg.provider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/smart-agent/providers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAEL,iBAAiB,GAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/smart-agent/providers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ILlm } from '../interfaces/llm.js';
|
|
2
|
+
import type { IRequestLogger } from '../interfaces/request-logger.js';
|
|
2
3
|
import { type CallOptions, RagError, type Result } from '../interfaces/types.js';
|
|
3
4
|
export interface IQueryExpander {
|
|
4
5
|
expand(query: string, options?: CallOptions): Promise<Result<string, RagError>>;
|
|
@@ -8,7 +9,8 @@ export declare class NoopQueryExpander implements IQueryExpander {
|
|
|
8
9
|
}
|
|
9
10
|
export declare class LlmQueryExpander implements IQueryExpander {
|
|
10
11
|
private readonly llm;
|
|
11
|
-
|
|
12
|
+
private readonly requestLogger?;
|
|
13
|
+
constructor(llm: ILlm, requestLogger?: IRequestLogger | undefined);
|
|
12
14
|
expand(query: string, options?: CallOptions): Promise<Result<string, RagError>>;
|
|
13
15
|
}
|
|
14
16
|
//# sourceMappingURL=query-expander.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-expander.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/rag/query-expander.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EACL,KAAK,WAAW,EAChB,QAAQ,EACR,KAAK,MAAM,EACZ,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,cAAc;IAC7B,MAAM,CACJ,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;CACtC;AAED,qBAAa,iBAAkB,YAAW,cAAc;IAChD,MAAM,CACV,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,WAAW,GACrB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CAGrC;AAKD,qBAAa,gBAAiB,YAAW,cAAc;
|
|
1
|
+
{"version":3,"file":"query-expander.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/rag/query-expander.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EACL,KAAK,WAAW,EAChB,QAAQ,EACR,KAAK,MAAM,EACZ,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,cAAc;IAC7B,MAAM,CACJ,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;CACtC;AAED,qBAAa,iBAAkB,YAAW,cAAc;IAChD,MAAM,CACV,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,WAAW,GACrB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CAGrC;AAKD,qBAAa,gBAAiB,YAAW,cAAc;IAEnD,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;gBADd,GAAG,EAAE,IAAI,EACT,aAAa,CAAC,EAAE,cAAc,YAAA;IAG3C,MAAM,CACV,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CAgDrC"}
|
|
@@ -7,15 +7,30 @@ export class NoopQueryExpander {
|
|
|
7
7
|
const EXPAND_SYSTEM_PROMPT = 'Given the user query, produce an expanded search query with synonyms and related terms. Return ONLY the expanded query text, no explanation.';
|
|
8
8
|
export class LlmQueryExpander {
|
|
9
9
|
llm;
|
|
10
|
-
|
|
10
|
+
requestLogger;
|
|
11
|
+
constructor(llm, requestLogger) {
|
|
11
12
|
this.llm = llm;
|
|
13
|
+
this.requestLogger = requestLogger;
|
|
12
14
|
}
|
|
13
15
|
async expand(query, options) {
|
|
14
16
|
try {
|
|
17
|
+
const chatStart = Date.now();
|
|
15
18
|
const res = await this.llm.chat([
|
|
16
19
|
{ role: 'system', content: EXPAND_SYSTEM_PROMPT },
|
|
17
20
|
{ role: 'user', content: query },
|
|
18
21
|
], [], options);
|
|
22
|
+
if (this.requestLogger) {
|
|
23
|
+
this.requestLogger.logLlmCall({
|
|
24
|
+
component: 'query-expander',
|
|
25
|
+
model: this.llm.model ?? 'unknown',
|
|
26
|
+
promptTokens: res.ok ? (res.value.usage?.promptTokens ?? 0) : 0,
|
|
27
|
+
completionTokens: res.ok
|
|
28
|
+
? (res.value.usage?.completionTokens ?? 0)
|
|
29
|
+
: 0,
|
|
30
|
+
totalTokens: res.ok ? (res.value.usage?.totalTokens ?? 0) : 0,
|
|
31
|
+
durationMs: Date.now() - chatStart,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
19
34
|
if (!res.ok) {
|
|
20
35
|
return {
|
|
21
36
|
ok: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-expander.js","sourceRoot":"","sources":["../../../src/smart-agent/rag/query-expander.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"query-expander.js","sourceRoot":"","sources":["../../../src/smart-agent/rag/query-expander.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,QAAQ,GAET,MAAM,wBAAwB,CAAC;AAShC,MAAM,OAAO,iBAAiB;IAC5B,KAAK,CAAC,MAAM,CACV,KAAa,EACb,QAAsB;QAEtB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IACpC,CAAC;CACF;AAED,MAAM,oBAAoB,GACxB,8IAA8I,CAAC;AAEjJ,MAAM,OAAO,gBAAgB;IAER;IACA;IAFnB,YACmB,GAAS,EACT,aAA8B;QAD9B,QAAG,GAAH,GAAG,CAAM;QACT,kBAAa,GAAb,aAAa,CAAiB;IAC9C,CAAC;IAEJ,KAAK,CAAC,MAAM,CACV,KAAa,EACb,OAAqB;QAErB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAC7B;gBACE,EAAE,IAAI,EAAE,QAAiB,EAAE,OAAO,EAAE,oBAAoB,EAAE;gBAC1D,EAAE,IAAI,EAAE,MAAe,EAAE,OAAO,EAAE,KAAK,EAAE;aAC1C,EACD,EAAE,EACF,OAAO,CACR,CAAC;YACF,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;oBAC5B,SAAS,EAAE,gBAAgB;oBAC3B,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,SAAS;oBAClC,YAAY,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC/D,gBAAgB,EAAE,GAAG,CAAC,EAAE;wBACtB,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,gBAAgB,IAAI,CAAC,CAAC;wBAC1C,CAAC,CAAC,CAAC;oBACL,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC7D,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;iBACnC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,KAAK,EAAE,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC;iBAC7D,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;YACpC,CAAC;YAED,sDAAsD;YACtD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,QAAQ,EAAE,EAAE,CAAC;QACrD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,IAAI,QAAQ,CACjB,2BAA2B,MAAM,CAAC,GAAG,CAAC,EAAE,EACxC,oBAAoB,CACrB;aACF,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
|
|
@@ -12,6 +12,7 @@ export declare class CircuitBreakerLlm implements ILlm {
|
|
|
12
12
|
private readonly inner;
|
|
13
13
|
readonly breaker: CircuitBreaker;
|
|
14
14
|
constructor(inner: ILlm, breaker: CircuitBreaker);
|
|
15
|
+
get model(): string | undefined;
|
|
15
16
|
chat(messages: Message[], tools?: LlmTool[], options?: CallOptions): Promise<Result<LlmResponse, LlmError>>;
|
|
16
17
|
streamChat(messages: Message[], tools?: LlmTool[], options?: CallOptions): AsyncIterable<Result<LlmStreamChunk, LlmError>>;
|
|
17
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circuit-breaker-llm.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/resilience/circuit-breaker-llm.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EACL,KAAK,WAAW,EAChB,QAAQ,EACR,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,MAAM,EACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,qBAAa,iBAAkB,YAAW,IAAI;IAE1C,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,QAAQ,CAAC,OAAO,EAAE,cAAc;gBADf,KAAK,EAAE,IAAI,EACnB,OAAO,EAAE,cAAc;
|
|
1
|
+
{"version":3,"file":"circuit-breaker-llm.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/resilience/circuit-breaker-llm.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EACL,KAAK,WAAW,EAChB,QAAQ,EACR,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,MAAM,EACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,qBAAa,iBAAkB,YAAW,IAAI;IAE1C,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,QAAQ,CAAC,OAAO,EAAE,cAAc;gBADf,KAAK,EAAE,IAAI,EACnB,OAAO,EAAE,cAAc;IAGlC,IAAI,KAAK,IAAI,MAAM,GAAG,SAAS,CAE9B;IAEK,IAAI,CACR,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,CAAC,EAAE,OAAO,EAAE,EACjB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAgBlC,UAAU,CACf,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,CAAC,EAAE,OAAO,EAAE,EACjB,OAAO,CAAC,EAAE,WAAW,GACpB,aAAa,CAAC,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;CAoCnD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circuit-breaker-llm.js","sourceRoot":"","sources":["../../../src/smart-agent/resilience/circuit-breaker-llm.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAEL,QAAQ,GAKT,MAAM,wBAAwB,CAAC;AAGhC,MAAM,OAAO,iBAAiB;IAET;IACR;IAFX,YACmB,KAAW,EACnB,OAAuB;QADf,UAAK,GAAL,KAAK,CAAM;QACnB,YAAO,GAAP,OAAO,CAAgB;IAC/B,CAAC;IAEJ,KAAK,CAAC,IAAI,CACR,QAAmB,EACnB,KAAiB,EACjB,OAAqB;QAErB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAClC,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,IAAI,QAAQ,CAAC,yBAAyB,EAAE,cAAc,CAAC;aAC/D,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/D,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC/B,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,CAAC,UAAU,CACf,QAAmB,EACnB,KAAiB,EACjB,OAAqB;QAErB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAClC,MAAM;gBACJ,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,IAAI,QAAQ,CAAC,yBAAyB,EAAE,cAAc,CAAC;aAC/D,CAAC;YACF,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAC7C,QAAQ,EACR,KAAK,EACL,OAAO,CACR,EAAE,CAAC;gBACF,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;oBACd,QAAQ,GAAG,IAAI,CAAC;oBAChB,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;oBAC7B,MAAM,KAAK,CAAC;oBACZ,OAAO;gBACT,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,GAAG,IAAI,CAAC;YAChB,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAC7B,MAAM;gBACJ,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,IAAI,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC;aAC9C,CAAC;YACF,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC/B,CAAC;IACH,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"circuit-breaker-llm.js","sourceRoot":"","sources":["../../../src/smart-agent/resilience/circuit-breaker-llm.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAEL,QAAQ,GAKT,MAAM,wBAAwB,CAAC;AAGhC,MAAM,OAAO,iBAAiB;IAET;IACR;IAFX,YACmB,KAAW,EACnB,OAAuB;QADf,UAAK,GAAL,KAAK,CAAM;QACnB,YAAO,GAAP,OAAO,CAAgB;IAC/B,CAAC;IAEJ,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,IAAI,CACR,QAAmB,EACnB,KAAiB,EACjB,OAAqB;QAErB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAClC,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,IAAI,QAAQ,CAAC,yBAAyB,EAAE,cAAc,CAAC;aAC/D,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC/D,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC/B,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,CAAC,UAAU,CACf,QAAmB,EACnB,KAAiB,EACjB,OAAqB;QAErB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAClC,MAAM;gBACJ,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,IAAI,QAAQ,CAAC,yBAAyB,EAAE,cAAc,CAAC;aAC/D,CAAC;YACF,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAC7C,QAAQ,EACR,KAAK,EACL,OAAO,CACR,EAAE,CAAC;gBACF,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;oBACd,QAAQ,GAAG,IAAI,CAAC;oBAChB,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;oBAC7B,MAAM,KAAK,CAAC;oBACZ,OAAO;gBACT,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,GAAG,IAAI,CAAC;YAChB,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAC7B,MAAM;gBACJ,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,IAAI,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC;aAC9C,CAAC;YACF,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC/B,CAAC;IACH,CAAC;CACF"}
|
|
@@ -20,6 +20,7 @@ export declare class RetryLlm implements ILlm {
|
|
|
20
20
|
private readonly inner;
|
|
21
21
|
private readonly opts;
|
|
22
22
|
constructor(inner: ILlm, options?: Partial<RetryOptions>);
|
|
23
|
+
get model(): string | undefined;
|
|
23
24
|
chat(messages: Message[], tools?: LlmTool[], options?: CallOptions): Promise<Result<LlmResponse, LlmError>>;
|
|
24
25
|
streamChat(messages: Message[], tools?: LlmTool[], options?: CallOptions): AsyncIterable<Result<LlmStreamChunk, LlmError>>;
|
|
25
26
|
private isRetryable;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry-llm.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/resilience/retry-llm.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EACL,KAAK,WAAW,EAChB,QAAQ,EACR,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,MAAM,EACZ,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,YAAY;IAC3B,oFAAoF;IACpF,WAAW,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,SAAS,EAAE,MAAM,CAAC;IAClB,2EAA2E;IAC3E,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAQD,qBAAa,QAAS,YAAW,IAAI;IAIjC,OAAO,CAAC,QAAQ,CAAC,KAAK;IAHxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAe;gBAGjB,KAAK,EAAE,IAAI,EAC5B,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"retry-llm.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/resilience/retry-llm.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EACL,KAAK,WAAW,EAChB,QAAQ,EACR,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,MAAM,EACZ,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,YAAY;IAC3B,oFAAoF;IACpF,WAAW,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,SAAS,EAAE,MAAM,CAAC;IAClB,2EAA2E;IAC3E,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAQD,qBAAa,QAAS,YAAW,IAAI;IAIjC,OAAO,CAAC,QAAQ,CAAC,KAAK;IAHxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAe;gBAGjB,KAAK,EAAE,IAAI,EAC5B,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC;IAKjC,IAAI,KAAK,IAAI,MAAM,GAAG,SAAS,CAE9B;IAEK,IAAI,CACR,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,CAAC,EAAE,OAAO,EAAE,EACjB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAoBlC,UAAU,CACf,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,CAAC,EAAE,OAAO,EAAE,EACjB,OAAO,CAAC,EAAE,WAAW,GACpB,aAAa,CAAC,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IAsClD,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,OAAO;CAchB"}
|
|
@@ -18,6 +18,9 @@ export class RetryLlm {
|
|
|
18
18
|
this.inner = inner;
|
|
19
19
|
this.opts = { ...DEFAULT_OPTIONS, ...options };
|
|
20
20
|
}
|
|
21
|
+
get model() {
|
|
22
|
+
return this.inner.model;
|
|
23
|
+
}
|
|
21
24
|
async chat(messages, tools, options) {
|
|
22
25
|
for (let attempt = 0;; attempt++) {
|
|
23
26
|
if (options?.signal?.aborted) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry-llm.js","sourceRoot":"","sources":["../../../src/smart-agent/resilience/retry-llm.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"retry-llm.js","sourceRoot":"","sources":["../../../src/smart-agent/resilience/retry-llm.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,8 @@ import type { ILlmApiAdapter } from './interfaces/api-adapter.js';
|
|
|
5
5
|
import type { IClientAdapter } from './interfaces/client-adapter.js';
|
|
6
6
|
import type { IMcpClient } from './interfaces/mcp-client.js';
|
|
7
7
|
import type { EmbedderFactory, IEmbedder } from './interfaces/rag.js';
|
|
8
|
+
import type { IRequestLogger } from './interfaces/request-logger.js';
|
|
8
9
|
import type { ISkillManager } from './interfaces/skill.js';
|
|
9
|
-
import type { TokenUsage } from './llm/token-counting-llm.js';
|
|
10
10
|
import type { PipelineConfig } from './pipeline.js';
|
|
11
11
|
import type { IPluginLoader } from './plugins/types.js';
|
|
12
12
|
export interface SmartServerLlmConfig {
|
|
@@ -129,7 +129,7 @@ export interface SmartServerConfig {
|
|
|
129
129
|
export interface SmartServerHandle {
|
|
130
130
|
port: number;
|
|
131
131
|
close(): Promise<void>;
|
|
132
|
-
|
|
132
|
+
requestLogger: IRequestLogger;
|
|
133
133
|
}
|
|
134
134
|
export { generateConfigTemplate, loadYamlConfig, type ResolveConfigArgs, resolveEnvVars, resolveSmartServerConfig, YAML_TEMPLATE, type YamlConfig, } from './config.js';
|
|
135
135
|
export declare class SmartServer {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smart-server.d.ts","sourceRoot":"","sources":["../../src/smart-agent/smart-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAcH,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"smart-server.d.ts","sourceRoot":"","sources":["../../src/smart-agent/smart-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAcH,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAG3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAKpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAgBxD,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;IACpD;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,2BAA2B,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAC;IACtD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,wDAAwD;IACxD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC/C,4EAA4E;IAC5E,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,uBAAuB;IACtC,0EAA0E;IAC1E,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,YAAY,CAAC;IACzC,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,kFAAkF;IAClF,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAExD,MAAM,WAAW,+BAA+B;IAC9C,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8DAA8D;IAC9D,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,oBAAoB,CAAC;IAC1B,GAAG,CAAC,EAAE,oBAAoB,CAAC;IAC3B,GAAG,CAAC,EAAE,oBAAoB,CAAC;IAC3B,KAAK,CAAC,EAAE,sBAAsB,CAAC;IAC/B,OAAO,CAAC,EAAE,wBAAwB,CAAC;IACnC,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,+BAA+B,CAAC;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sGAAsG;IACtG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mFAAmF;IACnF,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,yFAAyF;IACzF,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,kFAAkF;IAClF,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACpD;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,sFAAsF;IACtF,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,iFAAiF;IACjF,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC;IAC1B,4EAA4E;IAC5E,cAAc,CAAC,EAAE,cAAc,EAAE,CAAC;IAClC,mEAAmE;IACnE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gGAAgG;IAChG,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,kEAAkE;IAClE,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,aAAa,EAAE,cAAc,CAAC;CAC/B;AAsED,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,KAAK,iBAAiB,EACtB,cAAc,EACd,wBAAwB,EACxB,aAAa,EACb,KAAK,UAAU,GAChB,MAAM,aAAa,CAAC;AAErB,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoB;IACxC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAY;gBAErB,MAAM,EAAE,iBAAiB;IAI/B,KAAK,IAAI,OAAO,CAAC,iBAAiB,CAAC;YA0V3B,OAAO;YAmGP,qBAAqB;YAqErB,WAAW;CAiY1B"}
|
|
@@ -102,17 +102,6 @@ export class SmartServer {
|
|
|
102
102
|
const helperLlm = pipeline?.llm?.helper
|
|
103
103
|
? makeLlm(pipeline.llm.helper, Number(pipeline.llm.helper.temperature ?? 0.1))
|
|
104
104
|
: undefined;
|
|
105
|
-
// Usage tracking — aggregate main + classifier
|
|
106
|
-
const getUsage = () => {
|
|
107
|
-
const m = mainLlm.getUsage();
|
|
108
|
-
const c = classifierLlm.getUsage();
|
|
109
|
-
return {
|
|
110
|
-
prompt_tokens: m.prompt_tokens + c.prompt_tokens,
|
|
111
|
-
completion_tokens: m.completion_tokens + c.completion_tokens,
|
|
112
|
-
total_tokens: m.total_tokens + c.total_tokens,
|
|
113
|
-
requests: m.requests + c.requests,
|
|
114
|
-
};
|
|
115
|
-
};
|
|
116
105
|
// ---- Plugin loader -------------------------------------------------------
|
|
117
106
|
const pluginLoader = this.cfg.pluginLoader ??
|
|
118
107
|
(() => {
|
|
@@ -173,7 +162,6 @@ export class SmartServer {
|
|
|
173
162
|
})
|
|
174
163
|
.withMainLlm(mainLlm)
|
|
175
164
|
.withClassifierLlm(classifierLlm)
|
|
176
|
-
.withUsageProvider(getUsage)
|
|
177
165
|
.withLogger(fileLogger)
|
|
178
166
|
.withMode(this.cfg.mode ?? 'smart');
|
|
179
167
|
if (helperLlm) {
|
|
@@ -329,7 +317,8 @@ export class SmartServer {
|
|
|
329
317
|
watcher.start();
|
|
330
318
|
closeFns.push(() => watcher.stop());
|
|
331
319
|
}
|
|
332
|
-
const
|
|
320
|
+
const { requestLogger } = agentHandle;
|
|
321
|
+
const server = http.createServer((req, res) => this._handle(req, res, requestLogger, smartAgent, chat, streamChat, log, healthChecker, modelProvider, adapterMap).catch((err) => {
|
|
333
322
|
if (!res.headersSent) {
|
|
334
323
|
res.writeHead(500, { 'Content-Type': 'application/json' });
|
|
335
324
|
res.end(jsonError(String(err), 'server_error'));
|
|
@@ -350,12 +339,12 @@ export class SmartServer {
|
|
|
350
339
|
await fn();
|
|
351
340
|
await new Promise((res, rej) => server.close((e) => (e ? rej(e) : res())));
|
|
352
341
|
},
|
|
353
|
-
|
|
342
|
+
requestLogger,
|
|
354
343
|
});
|
|
355
344
|
});
|
|
356
345
|
});
|
|
357
346
|
}
|
|
358
|
-
async _handle(req, res,
|
|
347
|
+
async _handle(req, res, requestLogger, smartAgent, chat, streamChat, log, healthChecker, modelProvider, adapterMap) {
|
|
359
348
|
const rawUrl = req.url ?? '/';
|
|
360
349
|
const urlPath = rawUrl.split('?')[0].replace(/\/$/, '') || '/';
|
|
361
350
|
for (const [k, v] of Object.entries(CORS_HEADERS))
|
|
@@ -392,7 +381,7 @@ export class SmartServer {
|
|
|
392
381
|
}
|
|
393
382
|
if (req.method === 'GET' && urlPath === '/v1/usage') {
|
|
394
383
|
res.writeHead(200, { 'Content-Type': 'application/json' });
|
|
395
|
-
res.end(JSON.stringify(
|
|
384
|
+
res.end(JSON.stringify(requestLogger.getSummary()));
|
|
396
385
|
return;
|
|
397
386
|
}
|
|
398
387
|
if (req.method === 'GET' &&
|
|
@@ -417,7 +406,7 @@ export class SmartServer {
|
|
|
417
406
|
}
|
|
418
407
|
if (req.method === 'POST' &&
|
|
419
408
|
(urlPath === '/v1/chat/completions' || urlPath === '/chat/completions')) {
|
|
420
|
-
await this._handleChat(req, res,
|
|
409
|
+
await this._handleChat(req, res, requestLogger, smartAgent, chat, streamChat, log, modelProvider);
|
|
421
410
|
return;
|
|
422
411
|
}
|
|
423
412
|
res.writeHead(404, { 'Content-Type': 'application/json' });
|
|
@@ -475,7 +464,7 @@ export class SmartServer {
|
|
|
475
464
|
res.writeHead(200);
|
|
476
465
|
res.end(JSON.stringify(adapter.formatResult(result.value, normalized.context)));
|
|
477
466
|
}
|
|
478
|
-
async _handleChat(req, res,
|
|
467
|
+
async _handleChat(req, res, _requestLogger, smartAgent, _chat, _streamChat, log, modelProvider) {
|
|
479
468
|
const rawBody = await readBody(req);
|
|
480
469
|
let parsed;
|
|
481
470
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smart-server.js","sourceRoot":"","sources":["../../src/smart-agent/smart-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,OAAO,EAAE,iBAAiB,EAAyB,MAAM,cAAc,CAAC;AACxE,OAAO,EACL,aAAa,GAEd,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAK3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAOrE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAG3D,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAEL,iCAAiC,GAClC,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AA0I9D,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,SAAS,aAAa,CAAC,CAAa;IAClC,IAAI,CAAC,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAChC,IAAI,CAAC,KAAK,YAAY;QAAE,OAAO,YAAY,CAAC;IAC5C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,SAAS,CAAC,OAAe,EAAE,IAAY,EAAE,IAAa;IAC7D,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;KACpD,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAC1B,OAAe,EACf,IAAgC,EAChC,KAAa;IAEb,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,KAAK,EAAE;YACL,OAAO;YACP,IAAI,EAAE,uBAAuB;YAC7B,IAAI;YACJ,KAAK;SACN;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,QAAQ,CAAC,GAAoB;IACpC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACrE,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAC1B,GAA6B;IAE7B,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC;IAClC,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC9C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACtC,KAAK,OAAO;YACV,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACrC,KAAK,YAAY;YACf,OAAO,IAAI,sBAAsB,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACpD;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED,MAAM,YAAY,GAAG;IACnB,6BAA6B,EAAE,GAAG;IAClC,8BAA8B,EAAE,oBAAoB;IACpD,8BAA8B,EAAE,6BAA6B;CAC9D,CAAC;AAEF,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,OAAO,EACL,sBAAsB,EACtB,cAAc,EAEd,cAAc,EACd,wBAAwB,EACxB,aAAa,GAEd,MAAM,aAAa,CAAC;AAErB,MAAM,OAAO,WAAW;IACL,GAAG,CAAoB;IACvB,IAAI,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;IAEjC,YAAY,MAAyB;QACnC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC;QACtC,MAAM,UAAU,GAAY;YAC1B,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAuC,CAAC;SACzD,CAAC;QACF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;QAEnC,0EAA0E;QAE1E,iBAAiB;QACjB,MAAM,QAAQ,GAAG,MAAM,CACrB,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CACpE,CAAC;QACF,MAAM,OAAO,GAAG,QAAQ,EAAE,GAAG,EAAE,IAAI;YACjC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC;YACtC,CAAC,CAAC,cAAc,CACZ,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EACnB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,eAAe,EACrC,QAAQ,CACT,CAAC;QAEN,MAAM,cAAc,GAAG,MAAM,CAC3B,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,WAAW;YACpC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,qBAAqB;YAClC,GAAG,CACN,CAAC;QACF,MAAM,aAAa,GAAG,QAAQ,EAAE,GAAG,EAAE,UAAU;YAC7C,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC;YAClD,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI;gBACnB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC;gBAC5C,CAAC,CAAC,cAAc,CACZ,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EACnB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,eAAe,EACrC,cAAc,CACf,CAAC;QAER,MAAM,SAAS,GAAG,QAAQ,EAAE,GAAG,EAAE,MAAM;YACrC,CAAC,CAAC,OAAO,CACL,QAAQ,CAAC,GAAG,CAAC,MAAM,EACnB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,GAAG,CAAC,CAC/C;YACH,CAAC,CAAC,SAAS,CAAC;QAEd,+CAA+C;QAC/C,MAAM,QAAQ,GAAG,GAAe,EAAE;YAChC,MAAM,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,aAAa,CAAC,QAAQ,EAAE,CAAC;YACnC,OAAO;gBACL,aAAa,EAAE,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa;gBAChD,iBAAiB,EAAE,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC,iBAAiB;gBAC5D,YAAY,EAAE,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY;gBAC7C,QAAQ,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ;aAClC,CAAC;QACJ,CAAC,CAAC;QAEF,6EAA6E;QAC7E,MAAM,YAAY,GAChB,IAAI,CAAC,GAAG,CAAC,YAAY;YACrB,CAAC,GAAG,EAAE;gBACJ,MAAM,IAAI,GAAG,oBAAoB,EAAE,CAAC;gBACpC,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS;oBAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACtD,OAAO,IAAI,sBAAsB,CAAC;oBAChC,IAAI;oBACJ,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;iBAC5D,CAAC,CAAC;YACL,CAAC,CAAC,EAAE,CAAC;QAEP,wEAAwE;QACxE,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC;QAC1C,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,GAAG,CAAC;gBACF,KAAK,EAAE,gBAAgB;gBACvB,KAAK,EAAE,OAAO,CAAC,WAAW;gBAC1B,aAAa,EAAE,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;gBAChD,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;gBACzD,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ;gBAC/B,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa;gBACzC,kBAAkB,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe;gBAC7C,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM;aACtC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,GAAG,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1D,CAAC;QAED,4DAA4D;QAC5D,MAAM,uBAAuB,GAAG;YAC9B,GAAG,OAAO,CAAC,iBAAiB;YAC5B,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,uCAAuC;SACvE,CAAC;QAEF,iBAAiB;QACjB,MAAM,UAAU,GAAG;YACjB,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ;YACnC,cAAc,EAAE,uBAAuB;SACxC,CAAC;QAEF,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,IAAI,QAAQ,EAAE,GAAG,EAAE,CAAC;YAClB,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzD,IAAI,MAAM;oBAAE,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YACxC,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC;YACnB,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;YACrD,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;QACpD,CAAC;QAED,0EAA0E;QAC1E,IAAI,OAAO,GAAG,IAAI,iBAAiB,CAAC;YAClC,GAAG,EAAE,QAAQ,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG;YAClC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK;YACrB,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO;SAC1B,CAAC;aACC,WAAW,CAAC,OAAO,CAAC;aACpB,iBAAiB,CAAC,aAAa,CAAC;aAChC,iBAAiB,CAAC,QAAQ,CAAC;aAC3B,UAAU,CAAC,UAAU,CAAC;aACtB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,CAAC;QAEtC,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;YAC5B,OAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAChE,CAAC;QAED,mDAAmD;QACnD,yEAAyE;QACzE,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YACpD,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1B,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YAC5B,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACjE,CAAC;QAED,4CAA4C;QAC5C,MAAM,YAAY,GAChB,IAAI,CAAC,GAAG,CAAC,YAAY;YACrB,OAAO,CAAC,YAAY;YACpB,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;QACnD,CAAC;QAED,8DAA8D;QAC9D,MAAM,UAAU,GACd,IAAI,CAAC,GAAG,CAAC,UAAU;YACnB,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACnE,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC/C,CAAC;QAED,oFAAoF;QACpF,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CACzC,oCAAoC,CACrC,CAAC;QACF,MAAM,cAAc,GAAG;YACrB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;YAClC,GAAG,OAAO,CAAC,cAAc;YACzB,IAAI,kBAAkB,EAAE;SACzB,CAAC;QACF,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;YACrC,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC/C,CAAC;QAED,6DAA6D;QAC7D,IAAI,QAAQ,EAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACvD,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC;gBAC7B,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,GAAG;gBAChC,MAAM,EAAE,QAAQ,CAAC,MAAM;aACxB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QAC1C,MAAM,EACJ,KAAK,EAAE,UAAU,EACjB,IAAI,EACJ,UAAU,EACV,KAAK,EAAE,UAAU,EACjB,eAAe,EACf,SAAS,EACT,aAAa,GACd,GAAG,WAAW,CAAC;QAEhB,4EAA4E;QAC5E,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CACvC,kCAAkC,CACnC,CAAC;QACF,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAC1C,qCAAqC,CACtC,CAAC;QACF,MAAM,UAAU,GAAG,IAAI,GAAG,EAA0B,CAAC;QACrD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,IAAI,mBAAmB,EAAE,CAAC;YAC5C,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACpC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACzB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBAC3C,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAsC,CAAC,UAAU,CAAC,CAAC;QAEjE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC;YACtC,KAAK,EAAE,UAAU;YACjB,SAAS;YACT,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO;YACpC,eAAe;SAChB,CAAC,CAAC;QAEH,8BAA8B;QAC9B,UAAU;aACP,WAAW,EAAE;aACb,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACZ,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;gBACX,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;gBACpB,MAAM,SAAS,GACb,CAAC,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC;oBAChB,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACxB,CAAC,CAAC,IAAI;wBACN,CAAC,CAAC,cAAc,CAAC;gBACvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,UAAU,SAAS,IAAI,CAC7F,CAAC;gBACF,CAAC,CAAC,GAAG;qBACF,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;qBACpB,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;gBACtD,CAAC,CAAC,CAAC;YACP,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,CAAC,IAAI,CAAC,CAChE,CAAC;QAEJ,yEAAyE;QACzE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACxB,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACvD,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,MAA2B,EAAE,EAAE;gBACnD,GAAG,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,CAAC;gBACxC,6BAA6B;gBAC7B,MAAM,WAAW,GAA4B,EAAE,CAAC;gBAChD,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS;oBACpC,WAAW,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;gBACnD,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS;oBACnC,WAAW,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;gBACjD,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS;oBAChC,WAAW,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;gBAC3C,IAAI,MAAM,CAAC,oBAAoB,KAAK,SAAS;oBAC3C,WAAW,CAAC,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAC;gBACjE,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS;oBACpC,WAAW,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;gBACnD,IAAI,MAAM,CAAC,yBAAyB,KAAK,SAAS;oBAChD,WAAW,CAAC,yBAAyB;wBACnC,MAAM,CAAC,yBAAyB,CAAC;gBACrC,IAAI,MAAM,CAAC,OAAO,EAAE,YAAY,KAAK,SAAS;oBAC5C,WAAW,CAAC,kBAAkB,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;gBAC/D,IAAI,MAAM,CAAC,OAAO,EAAE,cAAc,KAAK,SAAS;oBAC9C,WAAW,CAAC,oBAAoB,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC;gBACnE,IAAI,MAAM,CAAC,qBAAqB,KAAK,SAAS;oBAC5C,WAAW,CAAC,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;gBACnE,IAAI,MAAM,CAAC,gBAAgB,KAAK,SAAS;oBACvC,WAAW,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;gBACzD,IAAI,MAAM,CAAC,qBAAqB,KAAK,SAAS;oBAC5C,WAAW,CAAC,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;gBACnE,IAAI,MAAM,CAAC,gBAAgB,KAAK,SAAS;oBACvC,WAAW,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;gBACzD,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxC,UAAU,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;gBAC5C,CAAC;gBACD,2BAA2B;gBAC3B,IACE,MAAM,CAAC,YAAY,KAAK,SAAS;oBACjC,MAAM,CAAC,aAAa,KAAK,SAAS,EAClC,CAAC;oBACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC7C,IACE,KAAK;4BACL,OAAQ,KAAmB,CAAC,aAAa,KAAK,UAAU,EACxD,CAAC;4BACA,KAAmB,CAAC,aAAa,CAAC;gCACjC,YAAY,EAAE,MAAM,CAAC,YAAY;gCACjC,aAAa,EAAE,MAAM,CAAC,aAAa;6BACpC,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAY,EAAE,EAAE;gBACnC,GAAG,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAC5C,IAAI,CAAC,OAAO,CACV,GAAG,EACH,GAAG,EACH,QAAQ,EACR,UAAU,EACV,IAAI,EACJ,UAAU,EACV,GAAG,EACH,aAAa,EACb,aAAa,EACb,UAAU,CACX,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACd,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBACrB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC3D,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;YAClD,CAAC;QACH,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC;YACnC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,SAAS,CAAC;YACxC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC3B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;gBAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC9B,MAAM,UAAU,GACd,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC/D,GAAG,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;gBACzD,OAAO,CAAC;oBACN,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,KAAK,IAAI,EAAE;wBAChB,KAAK,MAAM,EAAE,IAAI,QAAQ;4BAAE,MAAM,EAAE,EAAE,CAAC;wBACtC,MAAM,IAAI,OAAO,CAAO,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACnC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAC1C,CAAC;oBACJ,CAAC;oBACD,QAAQ;iBACT,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,GAAoB,EACpB,GAAmB,EACnB,QAA0B,EAC1B,UAAsB,EACtB,IAA8B,EAC9B,UAA0C,EAC1C,GAAyC,EACzC,aAA4B,EAC5B,aAA8B,EAC9B,UAAwC;QAExC,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC;QAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;QAC/D,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;YAAE,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACvE,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7B,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,GAAG,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QACD,GAAG,CAAC;YACF,KAAK,EAAE,cAAc;YACrB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,GAAG,EAAE,MAAM;YACX,cAAc,EAAE,OAAO;SACxB,CAAC,CAAC;QAEH,IACE,GAAG,CAAC,MAAM,KAAK,KAAK;YACpB,CAAC,OAAO,KAAK,YAAY,IAAI,OAAO,KAAK,SAAS,CAAC,EACnD,CAAC;YACD,IAAI,IAAI,GAAmC;gBACzC,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE;aAChE,CAAC;YACF,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,CAAC;gBAC/C,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;oBACd,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC9B,EAAE,EAAE,CAAC,CAAC,EAAE;wBACR,MAAM,EAAE,OAAO;wBACf,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,SAAS;qBAClC,CAAC,CAAC,CAAC;gBACN,CAAC;YACH,CAAC;YACD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAClD,OAAO;QACT,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;YACpD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;QACD,IACE,GAAG,CAAC,MAAM,KAAK,KAAK;YACpB,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,YAAY,CAAC,EACnD,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YAC3D,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAChE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAChC,OAAO;QACT,CAAC;QACD,qDAAqD;QACrD,IACE,GAAG,CAAC,MAAM,KAAK,MAAM;YACrB,CAAC,OAAO,KAAK,cAAc,IAAI,OAAO,KAAK,WAAW,CAAC,EACvD,CAAC;YACD,MAAM,gBAAgB,GAAG,UAAU,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;YACtD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC3D,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,kCAAkC,EAAE,WAAW,CAAC,CAAC,CAAC;gBACpE,OAAO;YACT,CAAC;YACD,MAAM,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QACD,IACE,GAAG,CAAC,MAAM,KAAK,MAAM;YACrB,CAAC,OAAO,KAAK,sBAAsB,IAAI,OAAO,KAAK,mBAAmB,CAAC,EACvE,CAAC;YACD,MAAM,IAAI,CAAC,WAAW,CACpB,GAAG,EACH,GAAG,EACH,QAAQ,EACR,UAAU,EACV,IAAI,EACJ,UAAU,EACV,GAAG,EACH,aAAa,CACd,CAAC;YACF,OAAO;QACT,CAAC;QACD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC3D,GAAG,CAAC,GAAG,CACL,SAAS,CAAC,UAAU,GAAG,CAAC,MAAM,IAAI,OAAO,EAAE,EAAE,uBAAuB,CAAC,CACtE,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,GAAoB,EACpB,GAAmB,EACnB,KAAiB,EACjB,OAAuB;QAEvB,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACP,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC,CAAC;YAC5D,OAAO;QACT,CAAC;QAED,IAAI,UAA6B,CAAC;QAClC,IAAI,CAAC;YACH,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,sBAAsB,EAAE,CAAC;gBAC1C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBACtE,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC,CAAC;gBACzD,OAAO;YACT,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;YACtB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACjB,cAAc,EAAE,mBAAmB;gBACnC,eAAe,EAAE,UAAU;gBAC3B,UAAU,EAAE,YAAY;aACzB,CAAC,CAAC;YAEH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,eAAe,CAC/C,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,EAC5D,UAAU,CAAC,OAAO,CACnB,EAAE,CAAC;gBACF,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/D,GAAG,CAAC,KAAK,CAAC,GAAG,SAAS,SAAS,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC;YACnD,CAAC;YACD,GAAG,CAAC,GAAG,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,gBAAgB;QAChB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;QAC5E,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,GAAG,CACL,IAAI,CAAC,SAAS,CACZ,OAAO,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI;gBACzD,KAAK,EAAE;oBACL,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO;oBAC7B,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI;iBACxB;aACF,CACF,CACF,CAAC;YACF,OAAO;QACT,CAAC;QACD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACnB,GAAG,CAAC,GAAG,CACL,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CACvE,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,GAAoB,EACpB,GAAmB,EACnB,SAA2B,EAC3B,UAAsB,EACtB,KAA+B,EAC/B,WAA2C,EAC3C,GAAyC,EACzC,aAA8B;QAE9B,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,mBAAmB,EAAE,uBAAuB,CAAC,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QACD,IACE,OAAO,MAAM,KAAK,QAAQ;YAC1B,MAAM,KAAK,IAAI;YACf,CAAC,KAAK,CAAC,OAAO,CAAE,MAAkC,CAAC,QAAQ,CAAC,EAC5D,CAAC;YACD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CACL,SAAS,CACP,oCAAoC,EACpC,uBAAuB,CACxB,CACF,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,MAWZ,CAAC;QAEF,MAAM,WAAW,GAAG,CAAC,CAAU,EAAU,EAAE;YACzC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS;gBAAE,OAAO,EAAE,CAAC;YAC7C,IAAI,OAAO,CAAC,KAAK,QAAQ;gBAAE,OAAO,CAAC,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;gBAAE,OAAO,EAAE,CAAC;YACjC,OAAO,CAAC;iBACL,MAAM,CACL,CAAC,CAAC,EAAuC,EAAE,CACzC,OAAO,CAAC,KAAK,QAAQ;gBACrB,CAAC,KAAK,IAAI;gBACT,CAAwB,CAAC,IAAI,KAAK,MAAM;gBACzC,OAAQ,CAAwB,CAAC,IAAI,KAAK,QAAQ,CACrD;iBACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;iBAClB,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC,CAAC;QAEF,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QACpE,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CACL,SAAS,CACP,mDAAmD,EACnD,uBAAuB,CACxB,CACF,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAI,GAAG,CAAC,OAAO,CAAC,cAAc,CAAY,IAAI,SAAS,CAAC;QACvE,MAAM,aAAa,GAAG,IAAI,aAAa,CACrC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,EACvB,SAAS,EACT,OAAO,CACR,CAAC;QACF,MAAM,mBAAmB,GACvB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,2BAA2B,IAAI,YAAY,CAAC;QAC9D,MAAM,uBAAuB,GAAG,iCAAiC,CAC/D,IAAI,CAAC,KAAK,CACX,CAAC;QACF,MAAM,aAAa,GAAG,uBAAuB,CAAC,KAAK,CAAC;QACpD,IAAI,uBAAuB,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,GAAG,CAAC;gBACF,KAAK,EAAE,iCAAiC;gBACxC,OAAO;gBACP,SAAS;gBACT,IAAI,EAAE,mBAAmB;gBACzB,KAAK,EAAE,uBAAuB,CAAC,MAAM,CAAC,MAAM;gBAC5C,MAAM,EAAE,uBAAuB,CAAC,MAAM;aACvC,CAAC,CAAC;YACH,aAAa,CAAC,OAAO,CAAC,iCAAiC,EAAE;gBACvD,IAAI,EAAE,mBAAmB;gBACzB,KAAK,EAAE,uBAAuB,CAAC,MAAM,CAAC,MAAM;gBAC5C,MAAM,EAAE,uBAAuB,CAAC,MAAM;aACvC,CAAC,CAAC;YACH,IAAI,mBAAmB,KAAK,QAAQ,EAAE,CAAC;gBACrC,MAAM,UAAU,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACrD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC3D,GAAG,CAAC,GAAG,CACL,mBAAmB,CACjB,UAAU,CAAC,OAAO,EAClB,UAAU,CAAC,IAAI,EACf,UAAU,CAAC,KAAK,CACjB,CACF,CAAC;gBACF,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,GAAG,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAEvE,MAAM,IAAI,GAAG;YACX,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,aAAa;YACb,SAAS;YACT,KAAK,EAAE,EAAE,OAAO,EAAE;YAClB,aAAa;YACb,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;QAEF,MAAM,aAAa,GACjB,IAAI,CAAC,KAAK,IAAI,aAAa,EAAE,QAAQ,EAAE,IAAI,aAAa,CAAC;QAE3D,MAAM,kBAAkB,GAAG,IAAI,CAAC,QAAQ;aACrC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,MAAM,IAAI,GAAG,CAAC,CAAC,IAAuB,CAAC;YACvC,MAAM,iBAAiB,GAAY;gBACjC,IAAI;gBACJ,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;aAChC,CAAC;YAEF,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;gBACpB,IAAI,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;oBAChE,iBAAiB,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC;gBAClD,CAAC;qBAAM,CAAC;oBACN,aAAa,CAAC,OAAO,CAAC,0BAA0B,EAAE;wBAChD,MAAM,EAAE,sBAAsB;qBAC/B,CAAC,CAAC;oBACH,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;YAED,IAAI,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;gBACxD,MAAM,SAAS,GAAG,CAAC,CAAC,UAAU;qBAC3B,MAAM,CACL,CACE,EAAE,EAKF,EAAE,CACF,OAAO,EAAE,KAAK,QAAQ;oBACtB,EAAE,KAAK,IAAI;oBACX,OAAQ,EAAuB,CAAC,EAAE,KAAK,QAAQ;oBAC9C,EAAyB,CAAC,IAAI,KAAK,UAAU;oBAC9C,OAAQ,EAAwC,CAAC,QAAQ;wBACvD,EAAE,IAAI,KAAK,QAAQ;oBACrB,OAAQ,EAA6C,CAAC,QAAQ;wBAC5D,EAAE,SAAS,KAAK,QAAQ,CAC7B;qBACA,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBACZ,EAAE,EAAE,EAAE,CAAC,EAAE;oBACT,IAAI,EAAE,UAAmB;oBACzB,QAAQ,EAAE;wBACR,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI;wBACtB,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS;qBACjC;iBACF,CAAC,CAAC,CAAC;gBAEN,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,iBAAiB,CAAC,UAAU,GAAG,SAAS,CAAC;oBACzC,IAAI,CAAC,iBAAiB,CAAC,OAAO;wBAAE,iBAAiB,CAAC,OAAO,GAAG,IAAI,CAAC;gBACnE,CAAC;YACH,CAAC;YAED,OAAO,iBAAiB,CAAC;QAC3B,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,CAAC,EAAgB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QAC3C,MAAM,kBAAkB,GACtB,uBAAuB,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;YACvC,CAAC,CAAC;gBACE,4BAA4B,EAAE,MAAM,CAClC,uBAAuB,CAAC,MAAM,CAAC,MAAM,CACtC;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QAET,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACjB,cAAc,EAAE,mBAAmB;gBACnC,eAAe,EAAE,UAAU;gBAC3B,UAAU,EAAE,YAAY;gBACxB,GAAG,kBAAkB;aACtB,CAAC,CAAC;YACH,MAAM,EAAE,GAAG,YAAY,UAAU,EAAE,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAE9C,MAAM,MAAM,GAAG,UAAU,CAAC,aAAa,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;YAClE,IAAI,UAAU,GAAG,IAAI,CAAC;YACtB,IAAI,gBAAgB,GAAG,KAAK,CAAC;YAC7B,IAAI,SAAS,GAIF,IAAI,CAAC;YAEhB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;oBACd,MAAM,UAAU,GAAG;wBACjB,EAAE;wBACF,MAAM,EAAE,uBAAuB;wBAC/B,OAAO;wBACP,KAAK,EAAE,aAAa;wBACpB,OAAO,EAAE;4BACP;gCACE,KAAK,EAAE,CAAC;gCACR,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE;gCACpD,aAAa,EAAE,MAAM;6BACtB;yBACF;qBACF,CAAC;oBACF,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;oBACrD,gBAAgB,GAAG,IAAI,CAAC;oBACxB,MAAM;gBACR,CAAC;gBACD,qEAAqE;gBACrE,IAAI,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;oBAC1B,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;oBACjC,GAAG,CAAC,KAAK,CAAC,oBAAoB,EAAE,CAAC,IAAI,YAAY,EAAE,CAAC,OAAO,QAAQ,CAAC,CAAC;oBACrE,SAAS;gBACX,CAAC;gBACD,2DAA2D;gBAC3D,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;oBACvB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAClC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,QAAQ,IAAI,CACpC,CAAC;oBACF,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC/C,CAAC;gBACD,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;oBACtB,SAAS,GAAG;wBACV,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY;wBAC7C,iBAAiB,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB;wBACrD,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW;qBAC5C,CAAC;gBACJ,CAAC;gBACD,MAAM,YAAY,GAAG;oBACnB,EAAE;oBACF,MAAM,EAAE,uBAAuB;oBAC/B,OAAO;oBACP,KAAK,EAAE,aAAa;oBACpB,KAAK,EAAE,IAAI;iBACZ,CAAC;gBAEF,IAAI,UAAU,EAAE,CAAC;oBACf,GAAG,CAAC,KAAK,CACP,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,YAAY,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,MAAM,CACnK,CAAC;oBACF,UAAU,GAAG,KAAK,CAAC;oBACnB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS;wBAAE,SAAS;gBACpE,CAAC;gBAED,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;oBACjD,MAAM,KAAK,GAA4B,EAAE,CAAC;oBAC1C,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO;wBAAE,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;oBAC7D,IAAI,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;wBAC1B,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;4BAC3D,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;4BACxC,OAAO;gCACL,KAAK,EAAE,EAAE,CAAC,KAAK;gCACf,EAAE,EAAE,EAAE,CAAC,EAAE;gCACT,IAAI,EAAE,UAAU;gCAChB,QAAQ,EAAE;oCACR,IAAI,EAAE,EAAE,CAAC,IAAI;oCACb,SAAS,EAAE,EAAE,CAAC,SAAS,IAAI,EAAE;iCAC9B;6BACF,CAAC;wBACJ,CAAC,CAAC,CAAC;oBACL,CAAC;oBACD,GAAG,CAAC,KAAK,CACP,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,YAAY,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,MAAM,CACxG,CAAC;gBACJ,CAAC;gBAED,IAAI,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;oBAC7B,GAAG,CAAC,KAAK,CACP,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,YAAY,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,YAA0B,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAC7J,CAAC;oBACF,gBAAgB,GAAG,IAAI,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,MAAM,YAAY,GAAG;oBACnB,EAAE;oBACF,MAAM,EAAE,uBAAuB;oBAC/B,OAAO;oBACP,KAAK,EAAE,aAAa;oBACpB,KAAK,EAAE,IAAI;iBACZ,CAAC;gBACF,GAAG,CAAC,KAAK,CACP,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,YAAY,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,MAAM,CAC9G,CAAC;YACJ,CAAC;YAED,IACE,IAAI,CAAC,GAAG,CAAC,WAAW,KAAK,KAAK;gBAC9B,IAAI,CAAC,cAAc,EAAE,aAAa;gBAClC,SAAS,EACT,CAAC;gBACD,GAAG,CAAC,KAAK,CACP,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,uBAAuB,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,MAAM,CACrI,CAAC;YACJ,CAAC;YACD,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAC9B,GAAG,CAAC,GAAG,EAAE,CAAC;YACV,GAAG,CAAC;gBACF,KAAK,EAAE,cAAc;gBACrB,EAAE,EAAE,IAAI;gBACR,MAAM,EAAE,IAAI;gBACZ,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe;gBACzD,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;aAC5B,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;QAClE,GAAG,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAC3E,MAAM,YAAY,GAAG,MAAM,CAAC,EAAE;YAC5B,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO;gBACpB,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC;YACnD,CAAC,CAAC,UAAU,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACrC,MAAM,iBAAiB,GAAG,MAAM,CAAC,EAAE;YACjC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;YACxC,CAAC,CAAC,MAAM,CAAC;QACX,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,IAAI,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACpC,UAAU,GAAG;gBACX,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY;gBAC9C,iBAAiB,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB;gBACtD,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW;aAC7C,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAA4B;YACvC,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,YAAY;SACtB,CAAC;QACF,IAAI,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YACxC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;QAC9C,CAAC;QAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;YACjB,cAAc,EAAE,kBAAkB;YAClC,GAAG,kBAAkB;SACtB,CAAC,CAAC;QACH,GAAG,CAAC,GAAG,CACL,IAAI,CAAC,SAAS,CAAC;YACb,EAAE,EAAE,YAAY,UAAU,EAAE,EAAE;YAC9B,MAAM,EAAE,iBAAiB;YACzB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;YACtC,KAAK,EAAE,aAAa;YACpB,OAAO,EAAE;gBACP;oBACE,KAAK,EAAE,CAAC;oBACR,OAAO;oBACP,aAAa,EAAE,iBAAiB;iBACjC;aACF;YACD,KAAK,EAAE,UAAU,IAAI;gBACnB,aAAa,EAAE,CAAC;gBAChB,iBAAiB,EAAE,CAAC;gBACpB,YAAY,EAAE,CAAC;aAChB;SACF,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"smart-server.js","sourceRoot":"","sources":["../../src/smart-agent/smart-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/strategies/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/smart-agent/strategies/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { IMcpClient } from '../interfaces/mcp-client.js';
|
|
2
|
+
import type { ConnectionStrategyOptions, IMcpConnectionStrategy, McpClientFactory, McpConnectionConfig, McpConnectionResult } from '../interfaces/mcp-connection-strategy.js';
|
|
3
|
+
export declare class LazyConnectionStrategy implements IMcpConnectionStrategy {
|
|
4
|
+
private readonly _slots;
|
|
5
|
+
private readonly _skipRevectorize;
|
|
6
|
+
private readonly _cooldownMs;
|
|
7
|
+
private readonly _factory;
|
|
8
|
+
private _resolving;
|
|
9
|
+
constructor(configs: McpConnectionConfig[], options?: ConnectionStrategyOptions, factory?: McpClientFactory);
|
|
10
|
+
resolve(_currentClients?: IMcpClient[]): Promise<McpConnectionResult>;
|
|
11
|
+
private _doResolve;
|
|
12
|
+
private _checkHealth;
|
|
13
|
+
dispose(): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=lazy-connection-strategy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazy-connection-strategy.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/strategies/lazy-connection-strategy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,0CAA0C,CAAC;AAWlD,qBAAa,sBAAuB,YAAW,sBAAsB;IACnE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAU;IAC3C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAC5C,OAAO,CAAC,UAAU,CAA6C;gBAG7D,OAAO,EAAE,mBAAmB,EAAE,EAC9B,OAAO,CAAC,EAAE,yBAAyB,EACnC,OAAO,CAAC,EAAE,gBAAgB;IAY5B,OAAO,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;YAYvD,UAAU;YAyCV,YAAY;IAapB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAO/B"}
|