@mcp-abap-adt/llm-agent-server-libs 19.2.0 → 20.4.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.
Files changed (179) hide show
  1. package/dist/builders/controller-skill-pipeline-builder.d.ts +57 -0
  2. package/dist/builders/controller-skill-pipeline-builder.d.ts.map +1 -0
  3. package/dist/builders/controller-skill-pipeline-builder.js +175 -0
  4. package/dist/builders/controller-skill-pipeline-builder.js.map +1 -0
  5. package/dist/factories/controller-factory.d.ts +2 -2
  6. package/dist/factories/controller-factory.d.ts.map +1 -1
  7. package/dist/factories/controller-factory.js +2 -1
  8. package/dist/factories/controller-factory.js.map +1 -1
  9. package/dist/generated/version.d.ts +1 -1
  10. package/dist/generated/version.js +1 -1
  11. package/dist/index.d.ts +1 -0
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +1 -0
  14. package/dist/index.js.map +1 -1
  15. package/dist/pipelines/controller.d.ts +4 -2
  16. package/dist/pipelines/controller.d.ts.map +1 -1
  17. package/dist/pipelines/controller.js +33 -8
  18. package/dist/pipelines/controller.js.map +1 -1
  19. package/dist/pipelines/coordinator-resolvers.d.ts +68 -0
  20. package/dist/pipelines/coordinator-resolvers.d.ts.map +1 -0
  21. package/dist/pipelines/coordinator-resolvers.js +97 -0
  22. package/dist/pipelines/coordinator-resolvers.js.map +1 -0
  23. package/dist/pipelines/dag.d.ts +2 -2
  24. package/dist/pipelines/dag.js +2 -2
  25. package/dist/pipelines/parsers.d.ts +1 -1
  26. package/dist/pipelines/parsers.d.ts.map +1 -1
  27. package/dist/pipelines/parsers.js +5 -4
  28. package/dist/pipelines/parsers.js.map +1 -1
  29. package/dist/pipelines/register-skill-sources.d.ts.map +1 -1
  30. package/dist/pipelines/register-skill-sources.js +5 -0
  31. package/dist/pipelines/register-skill-sources.js.map +1 -1
  32. package/dist/pipelines/stepper.d.ts +2 -2
  33. package/dist/pipelines/stepper.js +2 -2
  34. package/dist/smart-agent/build-stepper-root.d.ts +3 -2
  35. package/dist/smart-agent/build-stepper-root.d.ts.map +1 -1
  36. package/dist/smart-agent/build-stepper-root.js +2 -1
  37. package/dist/smart-agent/build-stepper-root.js.map +1 -1
  38. package/dist/smart-agent/config-reload-watcher.d.ts +30 -0
  39. package/dist/smart-agent/config-reload-watcher.d.ts.map +1 -0
  40. package/dist/smart-agent/config-reload-watcher.js +101 -0
  41. package/dist/smart-agent/config-reload-watcher.js.map +1 -0
  42. package/dist/smart-agent/config-validator.d.ts +21 -0
  43. package/dist/smart-agent/config-validator.d.ts.map +1 -0
  44. package/dist/smart-agent/config-validator.js +196 -0
  45. package/dist/smart-agent/config-validator.js.map +1 -0
  46. package/dist/smart-agent/config.d.ts +16 -254
  47. package/dist/smart-agent/config.d.ts.map +1 -1
  48. package/dist/smart-agent/config.js +17 -904
  49. package/dist/smart-agent/config.js.map +1 -1
  50. package/dist/smart-agent/controller/board.d.ts +6 -3
  51. package/dist/smart-agent/controller/board.d.ts.map +1 -1
  52. package/dist/smart-agent/controller/board.js +21 -0
  53. package/dist/smart-agent/controller/board.js.map +1 -1
  54. package/dist/smart-agent/controller/controller-coordinator-handler.d.ts +16 -50
  55. package/dist/smart-agent/controller/controller-coordinator-handler.d.ts.map +1 -1
  56. package/dist/smart-agent/controller/controller-coordinator-handler.js +83 -371
  57. package/dist/smart-agent/controller/controller-coordinator-handler.js.map +1 -1
  58. package/dist/smart-agent/controller/finalizer.d.ts +5 -0
  59. package/dist/smart-agent/controller/finalizer.d.ts.map +1 -1
  60. package/dist/smart-agent/controller/finalizer.js +12 -5
  61. package/dist/smart-agent/controller/finalizer.js.map +1 -1
  62. package/dist/smart-agent/controller/parser.d.ts +11 -0
  63. package/dist/smart-agent/controller/parser.d.ts.map +1 -0
  64. package/dist/smart-agent/controller/parser.js +77 -0
  65. package/dist/smart-agent/controller/parser.js.map +1 -0
  66. package/dist/smart-agent/controller/planner.d.ts +20 -16
  67. package/dist/smart-agent/controller/planner.d.ts.map +1 -1
  68. package/dist/smart-agent/controller/planner.js +58 -64
  69. package/dist/smart-agent/controller/planner.js.map +1 -1
  70. package/dist/smart-agent/controller/recall.d.ts +48 -0
  71. package/dist/smart-agent/controller/recall.d.ts.map +1 -0
  72. package/dist/smart-agent/controller/recall.js +196 -0
  73. package/dist/smart-agent/controller/recall.js.map +1 -0
  74. package/dist/smart-agent/controller/reviewer.d.ts.map +1 -1
  75. package/dist/smart-agent/controller/reviewer.js +1 -1
  76. package/dist/smart-agent/controller/reviewer.js.map +1 -1
  77. package/dist/smart-agent/controller/types.d.ts +8 -9
  78. package/dist/smart-agent/controller/types.d.ts.map +1 -1
  79. package/dist/smart-agent/controller/usage-logging.d.ts +16 -0
  80. package/dist/smart-agent/controller/usage-logging.d.ts.map +1 -0
  81. package/dist/smart-agent/controller/usage-logging.js +39 -0
  82. package/dist/smart-agent/controller/usage-logging.js.map +1 -0
  83. package/dist/smart-agent/http/adapter-route-handler.d.ts +13 -0
  84. package/dist/smart-agent/http/adapter-route-handler.d.ts.map +1 -0
  85. package/dist/smart-agent/http/adapter-route-handler.js +76 -0
  86. package/dist/smart-agent/http/adapter-route-handler.js.map +1 -0
  87. package/dist/smart-agent/http/chat-route-handler.d.ts +15 -0
  88. package/dist/smart-agent/http/chat-route-handler.d.ts.map +1 -0
  89. package/dist/smart-agent/http/chat-route-handler.js +327 -0
  90. package/dist/smart-agent/http/chat-route-handler.js.map +1 -0
  91. package/dist/smart-agent/http/config-route-handler.d.ts +21 -0
  92. package/dist/smart-agent/http/config-route-handler.d.ts.map +1 -0
  93. package/dist/smart-agent/http/config-route-handler.js +149 -0
  94. package/dist/smart-agent/http/config-route-handler.js.map +1 -0
  95. package/dist/smart-agent/http/health-route-handler.d.ts +12 -0
  96. package/dist/smart-agent/http/health-route-handler.d.ts.map +1 -0
  97. package/dist/smart-agent/http/health-route-handler.js +19 -0
  98. package/dist/smart-agent/http/health-route-handler.js.map +1 -0
  99. package/dist/smart-agent/http/models-route-handler.d.ts +17 -0
  100. package/dist/smart-agent/http/models-route-handler.d.ts.map +1 -0
  101. package/dist/smart-agent/http/models-route-handler.js +65 -0
  102. package/dist/smart-agent/http/models-route-handler.js.map +1 -0
  103. package/dist/smart-agent/http/response-helpers.d.ts +31 -0
  104. package/dist/smart-agent/http/response-helpers.d.ts.map +1 -0
  105. package/dist/smart-agent/http/response-helpers.js +59 -0
  106. package/dist/smart-agent/http/response-helpers.js.map +1 -0
  107. package/dist/smart-agent/http/route-table.d.ts +44 -0
  108. package/dist/smart-agent/http/route-table.d.ts.map +1 -0
  109. package/dist/smart-agent/http/route-table.js +35 -0
  110. package/dist/smart-agent/http/route-table.js.map +1 -0
  111. package/dist/smart-agent/http/session-cookie.d.ts +10 -0
  112. package/dist/smart-agent/http/session-cookie.d.ts.map +1 -0
  113. package/dist/smart-agent/http/session-cookie.js +16 -0
  114. package/dist/smart-agent/http/session-cookie.js.map +1 -0
  115. package/dist/smart-agent/http/sessions-route-handler.d.ts +8 -0
  116. package/dist/smart-agent/http/sessions-route-handler.d.ts.map +1 -0
  117. package/dist/smart-agent/http/sessions-route-handler.js +54 -0
  118. package/dist/smart-agent/http/sessions-route-handler.js.map +1 -0
  119. package/dist/smart-agent/http/usage-route-handler.d.ts +12 -0
  120. package/dist/smart-agent/http/usage-route-handler.d.ts.map +1 -0
  121. package/dist/smart-agent/http/usage-route-handler.js +28 -0
  122. package/dist/smart-agent/http/usage-route-handler.js.map +1 -0
  123. package/dist/smart-agent/knowledge/make-knowledge-backend.d.ts +13 -0
  124. package/dist/smart-agent/knowledge/make-knowledge-backend.d.ts.map +1 -0
  125. package/dist/smart-agent/knowledge/make-knowledge-backend.js +18 -0
  126. package/dist/smart-agent/knowledge/make-knowledge-backend.js.map +1 -0
  127. package/dist/smart-agent/llm/role-llm-resolver.d.ts +30 -0
  128. package/dist/smart-agent/llm/role-llm-resolver.d.ts.map +1 -0
  129. package/dist/smart-agent/llm/role-llm-resolver.js +44 -0
  130. package/dist/smart-agent/llm/role-llm-resolver.js.map +1 -0
  131. package/dist/smart-agent/llm-config-map.d.ts +38 -0
  132. package/dist/smart-agent/llm-config-map.d.ts.map +1 -0
  133. package/dist/smart-agent/llm-config-map.js +75 -0
  134. package/dist/smart-agent/llm-config-map.js.map +1 -0
  135. package/dist/smart-agent/mcp-readiness-monitor.d.ts +38 -0
  136. package/dist/smart-agent/mcp-readiness-monitor.d.ts.map +1 -0
  137. package/dist/smart-agent/mcp-readiness-monitor.js +81 -0
  138. package/dist/smart-agent/mcp-readiness-monitor.js.map +1 -0
  139. package/dist/smart-agent/mcp-readiness-registry.d.ts +37 -0
  140. package/dist/smart-agent/mcp-readiness-registry.d.ts.map +1 -0
  141. package/dist/smart-agent/mcp-readiness-registry.js +55 -0
  142. package/dist/smart-agent/mcp-readiness-registry.js.map +1 -0
  143. package/dist/smart-agent/resolve-config-sections.d.ts +15 -0
  144. package/dist/smart-agent/resolve-config-sections.d.ts.map +1 -0
  145. package/dist/smart-agent/resolve-config-sections.js +212 -0
  146. package/dist/smart-agent/resolve-config-sections.js.map +1 -0
  147. package/dist/smart-agent/session-lifecycle/index.d.ts +117 -0
  148. package/dist/smart-agent/session-lifecycle/index.d.ts.map +1 -0
  149. package/dist/smart-agent/session-lifecycle/index.js +152 -0
  150. package/dist/smart-agent/session-lifecycle/index.js.map +1 -0
  151. package/dist/smart-agent/skill-plugins-config.d.ts +9 -1
  152. package/dist/smart-agent/skill-plugins-config.d.ts.map +1 -1
  153. package/dist/smart-agent/skill-plugins-config.js +27 -1
  154. package/dist/smart-agent/skill-plugins-config.js.map +1 -1
  155. package/dist/smart-agent/skill-plugins-host-factory.d.ts +14 -2
  156. package/dist/smart-agent/skill-plugins-host-factory.d.ts.map +1 -1
  157. package/dist/smart-agent/skill-plugins-host-factory.js +16 -4
  158. package/dist/smart-agent/skill-plugins-host-factory.js.map +1 -1
  159. package/dist/smart-agent/smart-server.d.ts +151 -222
  160. package/dist/smart-agent/smart-server.d.ts.map +1 -1
  161. package/dist/smart-agent/smart-server.js +529 -1385
  162. package/dist/smart-agent/smart-server.js.map +1 -1
  163. package/dist/smart-agent/stepper-config.d.ts +138 -0
  164. package/dist/smart-agent/stepper-config.d.ts.map +1 -0
  165. package/dist/smart-agent/stepper-config.js +216 -0
  166. package/dist/smart-agent/stepper-config.js.map +1 -0
  167. package/dist/smart-agent/tools-rag-handle.d.ts +10 -0
  168. package/dist/smart-agent/tools-rag-handle.d.ts.map +1 -0
  169. package/dist/smart-agent/tools-rag-handle.js +76 -0
  170. package/dist/smart-agent/tools-rag-handle.js.map +1 -0
  171. package/dist/smart-agent/workers/worker-registry.d.ts +159 -0
  172. package/dist/smart-agent/workers/worker-registry.d.ts.map +1 -0
  173. package/dist/smart-agent/workers/worker-registry.js +203 -0
  174. package/dist/smart-agent/workers/worker-registry.js.map +1 -0
  175. package/dist/smart-agent/yaml-loader.d.ts +7 -0
  176. package/dist/smart-agent/yaml-loader.d.ts.map +1 -0
  177. package/dist/smart-agent/yaml-loader.js +146 -0
  178. package/dist/smart-agent/yaml-loader.js.map +1 -0
  179. package/package.json +7 -7
@@ -0,0 +1,212 @@
1
+ /**
2
+ * Per-section config builders extracted from resolveSmartServerConfig.
3
+ * Internal module — not re-exported by the package barrel.
4
+ */
5
+ import { get } from './yaml-loader.js';
6
+ export function resolveLlmSection(yaml, apiKey) {
7
+ return get(yaml, 'llm')
8
+ ? typeof get(yaml, 'llm', 'provider') === 'string'
9
+ ? {
10
+ provider: get(yaml, 'llm', 'provider'),
11
+ apiKey,
12
+ url: get(yaml, 'llm', 'url'),
13
+ model: get(yaml, 'llm', 'model'),
14
+ temperature: Number(get(yaml, 'llm', 'temperature') ?? 0.7),
15
+ classifierTemperature: Number(get(yaml, 'llm', 'classifierTemperature') ?? 0.1),
16
+ }
17
+ : get(yaml, 'llm')
18
+ : undefined;
19
+ }
20
+ export function resolveRagSection(yaml, args) {
21
+ return get(yaml, 'rag')
22
+ ? {
23
+ type: get(yaml, 'rag', 'type'),
24
+ embedder: get(yaml, 'rag', 'embedder') ?? undefined,
25
+ url: get(yaml, 'rag', 'url'),
26
+ model: get(yaml, 'rag', 'model'),
27
+ collectionName: args['rag-collection-name'] ??
28
+ get(yaml, 'rag', 'collectionName') ??
29
+ undefined,
30
+ dedupThreshold: Number(get(yaml, 'rag', 'dedupThreshold') ?? 0.92),
31
+ vectorWeight: Number(get(yaml, 'rag', 'vectorWeight') ?? 0.7),
32
+ keywordWeight: Number(get(yaml, 'rag', 'keywordWeight') ?? 0.3),
33
+ ...(get(yaml, 'rag', 'resourceGroup') !== undefined
34
+ ? { resourceGroup: String(get(yaml, 'rag', 'resourceGroup')) }
35
+ : {}),
36
+ ...(get(yaml, 'rag', 'scenario') !== undefined
37
+ ? {
38
+ scenario: String(get(yaml, 'rag', 'scenario')),
39
+ }
40
+ : {}),
41
+ }
42
+ : undefined;
43
+ }
44
+ export function resolveMcpSection(yaml, args) {
45
+ const rawMcp = yaml.mcp;
46
+ const mcpIsArray = Array.isArray(rawMcp);
47
+ const mcpUrl = get(yaml, 'mcp', 'url');
48
+ const mcpCommand = get(yaml, 'mcp', 'command');
49
+ const mcpTypeRaw = mcpIsArray
50
+ ? null // array form: type resolved per-entry inside connectMcpClientsFromConfig
51
+ : (get(yaml, 'mcp', 'type') ??
52
+ (mcpUrl ? 'http' : mcpCommand ? 'stdio' : null));
53
+ const mcpType = (mcpTypeRaw === 'none' ? null : mcpTypeRaw);
54
+ return mcpIsArray
55
+ ? rawMcp
56
+ : mcpType
57
+ ? {
58
+ type: mcpType,
59
+ url: mcpUrl || undefined,
60
+ command: mcpCommand || undefined,
61
+ args: args['mcp-args'] || get(yaml, 'mcp', 'args')
62
+ ? String(args['mcp-args'] || get(yaml, 'mcp', 'args')).split(' ')
63
+ : undefined,
64
+ headers: get(yaml, 'mcp', 'headers') ||
65
+ undefined,
66
+ ...(get(yaml, 'mcp', 'timeout') !== undefined
67
+ ? { timeout: Number(get(yaml, 'mcp', 'timeout')) }
68
+ : {}),
69
+ ...(get(yaml, 'mcp', 'toolTimeouts') !== undefined
70
+ ? {
71
+ toolTimeouts: get(yaml, 'mcp', 'toolTimeouts'),
72
+ }
73
+ : {}),
74
+ }
75
+ : undefined;
76
+ }
77
+ export function resolveAgentSection(yaml, args) {
78
+ return {
79
+ externalToolsValidationMode: (get(yaml, 'agent', 'externalToolsValidationMode') ?? 'permissive'),
80
+ maxIterations: Number(get(yaml, 'agent', 'maxIterations') ?? 10),
81
+ maxToolCalls: Number(get(yaml, 'agent', 'maxToolCalls') ?? 30),
82
+ toolUnavailableTtlMs: Number(get(yaml, 'agent', 'toolUnavailableTtlMs') ?? 600000),
83
+ ragQueryK: Number(get(yaml, 'agent', 'ragQueryK') ?? 10),
84
+ ...(get(yaml, 'agent', 'contextBudgetTokens') !== undefined
85
+ ? {
86
+ contextBudgetTokens: Number(get(yaml, 'agent', 'contextBudgetTokens')),
87
+ }
88
+ : {}),
89
+ ...(get(yaml, 'agent', 'semanticHistoryEnabled') !== undefined
90
+ ? {
91
+ semanticHistoryEnabled: Boolean(get(yaml, 'agent', 'semanticHistoryEnabled')),
92
+ }
93
+ : {}),
94
+ ...(get(yaml, 'agent', 'historyRecencyWindow') !== undefined
95
+ ? {
96
+ historyRecencyWindow: Number(get(yaml, 'agent', 'historyRecencyWindow')),
97
+ }
98
+ : {}),
99
+ ...(get(yaml, 'agent', 'historyTurnSummaryPrompt') !== undefined
100
+ ? {
101
+ historyTurnSummaryPrompt: String(get(yaml, 'agent', 'historyTurnSummaryPrompt')),
102
+ }
103
+ : {}),
104
+ showReasoning: Boolean(args['agent-show-reasoning'] ??
105
+ get(yaml, 'agent', 'showReasoning') ??
106
+ false),
107
+ historyAutoSummarizeLimit: Number(get(yaml, 'agent', 'historyAutoSummarizeLimit') ?? 10),
108
+ queryExpansionEnabled: Boolean(get(yaml, 'agent', 'queryExpansionEnabled') ?? false),
109
+ toolResultCacheTtlMs: Number(get(yaml, 'agent', 'toolResultCacheTtlMs') ?? 300000),
110
+ sessionTokenBudget: Number(get(yaml, 'agent', 'sessionTokenBudget') ?? 0),
111
+ ...(get(yaml, 'agent', 'classificationEnabled') !== undefined
112
+ ? {
113
+ classificationEnabled: Boolean(get(yaml, 'agent', 'classificationEnabled')),
114
+ }
115
+ : {}),
116
+ ...(get(yaml, 'agent', 'toolReselectPerIteration') !== undefined
117
+ ? {
118
+ toolReselectPerIteration: Boolean(get(yaml, 'agent', 'toolReselectPerIteration')),
119
+ }
120
+ : {}),
121
+ ...(get(yaml, 'agent', 'ragTranslateEnabled') !== undefined
122
+ ? {
123
+ ragTranslateEnabled: Boolean(get(yaml, 'agent', 'ragTranslateEnabled')),
124
+ }
125
+ : {}),
126
+ ...(get(yaml, 'agent', 'refreshToolsPerIteration') !== undefined
127
+ ? {
128
+ refreshToolsPerIteration: Boolean(get(yaml, 'agent', 'refreshToolsPerIteration')),
129
+ }
130
+ : {}),
131
+ ...(get(yaml, 'agent', 'streamMode') !== undefined
132
+ ? {
133
+ streamMode: String(get(yaml, 'agent', 'streamMode')),
134
+ }
135
+ : {}),
136
+ ...(get(yaml, 'agent', 'llmCallStrategy') !== undefined
137
+ ? {
138
+ llmCallStrategy: String(get(yaml, 'agent', 'llmCallStrategy')),
139
+ }
140
+ : {}),
141
+ ...(get(yaml, 'agent', 'heartbeatIntervalMs') !== undefined
142
+ ? {
143
+ heartbeatIntervalMs: Number(get(yaml, 'agent', 'heartbeatIntervalMs')),
144
+ }
145
+ : {}),
146
+ ...(get(yaml, 'agent', 'healthTimeoutMs') !== undefined
147
+ ? {
148
+ healthTimeoutMs: Number(get(yaml, 'agent', 'healthTimeoutMs')),
149
+ }
150
+ : {}),
151
+ ...(get(yaml, 'agent', 'retry') !== undefined
152
+ ? {
153
+ retry: get(yaml, 'agent', 'retry'),
154
+ }
155
+ : {}),
156
+ ...(get(yaml, 'agent', 'toolSelection') !== undefined
157
+ ? {
158
+ toolSelection: get(yaml, 'agent', 'toolSelection'),
159
+ }
160
+ : {}),
161
+ };
162
+ }
163
+ export function resolvePromptsSection(yaml) {
164
+ const promptSystem = get(yaml, 'prompts', 'system') ?? null;
165
+ const promptClassifier = get(yaml, 'prompts', 'classifier') ?? null;
166
+ const promptReasoning = get(yaml, 'prompts', 'reasoning') ?? null;
167
+ const promptRagTranslate = get(yaml, 'prompts', 'ragTranslate') ?? null;
168
+ const promptHistorySummary = get(yaml, 'prompts', 'historySummary') ?? null;
169
+ return promptSystem ||
170
+ promptClassifier ||
171
+ promptReasoning ||
172
+ promptRagTranslate ||
173
+ promptHistorySummary
174
+ ? {
175
+ ...(promptSystem ? { system: promptSystem } : {}),
176
+ ...(promptClassifier ? { classifier: promptClassifier } : {}),
177
+ ...(typeof promptReasoning === 'string'
178
+ ? { reasoning: promptReasoning }
179
+ : {}),
180
+ ...(typeof promptRagTranslate === 'string'
181
+ ? { ragTranslate: promptRagTranslate }
182
+ : {}),
183
+ ...(typeof promptHistorySummary === 'string'
184
+ ? { historySummary: promptHistorySummary }
185
+ : {}),
186
+ }
187
+ : undefined;
188
+ }
189
+ export function resolvePipelineSelection(yaml) {
190
+ // Pipeline selection: `pipeline: { name, config }`. `name` is required;
191
+ // `config` is the plugin's opaque dialect (validated by the plugin's
192
+ // parseConfig at build time). A bare string (`pipeline: stepper`) is
193
+ // accepted as shorthand for `{ name: <string> }`.
194
+ const raw = yaml.pipeline;
195
+ if (raw === undefined || raw === null)
196
+ return {};
197
+ if (typeof raw === 'string')
198
+ return { pipeline: { name: raw } };
199
+ const obj = raw;
200
+ if (typeof obj.name !== 'string') {
201
+ throw new Error("pipeline: requires a 'name' (one of: flat, linear, dag, stepper, controller, controller-weak, or a registered plugin)");
202
+ }
203
+ return {
204
+ pipeline: {
205
+ name: obj.name,
206
+ ...(obj.config && typeof obj.config === 'object'
207
+ ? { config: obj.config }
208
+ : {}),
209
+ },
210
+ };
211
+ }
212
+ //# sourceMappingURL=resolve-config-sections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-config-sections.js","sourceRoot":"","sources":["../../src/smart-agent/resolve-config-sections.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * Session-lifecycle helpers — extracted from smart-server.ts (R3).
3
+ *
4
+ * Free functions and types that compose the SessionGraphFactory + SessionRegistry,
5
+ * seed session knowledge, record start/end, and implement the /v1/sessions
6
+ * extracted handlers. `_withSession` (which touches `SmartServer` instance state)
7
+ * stays in smart-server.ts and calls these helpers via import.
8
+ */
9
+ import type { IKnowledgeRagHandle, ILogger, IMcpClient, IRag, IRagRegistry } from '@mcp-abap-adt/llm-agent';
10
+ import { type SessionAgentParts, type SessionGraph, SessionRegistry, type SmartAgent } from '@mcp-abap-adt/llm-agent-libs';
11
+ import { resolveSessionIdentity } from '../session-identity-resolver.js';
12
+ import type { ISessionMetaStore, SessionMetaRow } from '../session-meta-store.js';
13
+ /**
14
+ * Share the parent RAG registry with subagents (per-session worker re-wire).
15
+ * Session/user/global collections written at the top level become visible to
16
+ * workers; the per-call scope filter (`rag-query.ts`) isolates by
17
+ * `ctx.sessionId` / `ctx.options.userId`. A worker's own declared store is
18
+ * registered INTO this same registry under its namespace. When the parent
19
+ * registry is undefined (no top-level registry yet — e.g. unit test seam),
20
+ * return undefined so the builder allocates its own SimpleRagRegistry.
21
+ */
22
+ export declare function resolveSubAgentRagRegistry(input: {
23
+ parentRagRegistry: IRagRegistry | undefined;
24
+ }): IRagRegistry | undefined;
25
+ /**
26
+ * Options for `buildSessionLifecycle`. Composes the SessionGraphFactory + the
27
+ * SessionRegistry; exposes a thin facade so `_handle` stays unit-testable.
28
+ */
29
+ export interface SessionLifecycleOptions {
30
+ idleTtlMs: number;
31
+ maxSessions: number;
32
+ cookieName: string;
33
+ mcpClients: IMcpClient[];
34
+ toolsRag: IRag | undefined;
35
+ ragRegistry: IRagRegistry;
36
+ buildAgent: (parts: SessionAgentParts) => Promise<SmartAgent | undefined>;
37
+ /** Optional logger forwarded to SessionGraphFactory for cleanup-failure surfacing. */
38
+ logger?: ILogger;
39
+ /**
40
+ * Optional per-session teardown hook run during `SessionGraph.dispose()`.
41
+ * The host wires this to invoke the pipeline plugin's
42
+ * `IPipelineInstance.close()` captured by `buildPipelineInstance`.
43
+ */
44
+ onDispose?: (sessionId: string) => Promise<void>;
45
+ }
46
+ /**
47
+ * Composes the cookie identity resolver + SessionGraphFactory + SessionRegistry
48
+ * into one lifecycle object the server's `_handle` consumes. The default MCP
49
+ * factory returns the shared GLOBAL clients by reference (one upstream
50
+ * connection); a creds-aware build swaps it out (out of scope here).
51
+ */
52
+ export declare function buildSessionLifecycle(opts: SessionLifecycleOptions): {
53
+ resolve: (cookieHeader: string | undefined, isHttps: boolean) => ReturnType<typeof resolveSessionIdentity>;
54
+ acquire: (sessionId: string) => Promise<ReturnType<SessionRegistry['acquire']> extends Promise<infer G> ? G : never>;
55
+ release: (sessionId: string, graph?: SessionGraph) => void;
56
+ evictIdle: () => Promise<void>;
57
+ disposeAll: () => Promise<void>;
58
+ invalidateAll: () => Promise<void>;
59
+ registry: SessionRegistry;
60
+ };
61
+ export type SessionLifecycle = ReturnType<typeof buildSessionLifecycle>;
62
+ /** Response shape for GET /v1/sessions */
63
+ export interface SessionListBody {
64
+ sessions: SessionMetaRow[];
65
+ }
66
+ /** Response shape for POST /v1/sessions/:id/resume */
67
+ export interface SessionResumeBody {
68
+ ok: boolean;
69
+ session?: SessionMetaRow;
70
+ error?: string;
71
+ }
72
+ /**
73
+ * Seed session-scope guidance entries into a BRAND-NEW session's knowledge-RAG
74
+ * (deployment-supplied tool-usage guidance the planner/executor read in "Known
75
+ * facts"). Idempotent: rehydrates via init() and writes ONLY when the session is
76
+ * empty (`fingerprint() === 'n=0'`), so resumes never duplicate. Entries are
77
+ * config DATA — the runtime stays MCP-agnostic (no tool knowledge in agent code).
78
+ */
79
+ export declare function seedSessionKnowledge(kr: IKnowledgeRagHandle & {
80
+ init?(): Promise<void>;
81
+ fingerprint?(): string;
82
+ }, seeds: ReadonlyArray<{
83
+ content: string;
84
+ artifactType: string;
85
+ }>, nowIso: string): Promise<void>;
86
+ /**
87
+ * Record that a request for `sessionId` STARTED — create the meta row on first
88
+ * sight, else touch it and mark in-progress. Called from the live request path
89
+ * (`_withSession`) so GET /v1/sessions, resume and delete actually see sessions
90
+ * produced by normal chat/stream traffic (review Finding 3). `userIdentity` is
91
+ * the sessionId itself in the default no-auth build — matching how the
92
+ * /v1/sessions endpoints resolve identity (`resolved.identity.sessionId`).
93
+ */
94
+ export declare function recordSessionStart(store: ISessionMetaStore, sessionId: string, nowIso: string): Promise<void>;
95
+ /**
96
+ * Record that a request for `sessionId` FINISHED — touch + mark idle (so it can
97
+ * be resumed). No-op if the row was deleted mid-flight.
98
+ */
99
+ export declare function recordSessionEnd(store: ISessionMetaStore, sessionId: string, nowIso: string): Promise<void>;
100
+ /**
101
+ * List all sessions for a given user identity.
102
+ * Extracted for unit-testability (mirrors the /v1/usage handler pattern).
103
+ */
104
+ export declare function handleListSessions(store: ISessionMetaStore, identity: string): Promise<SessionListBody>;
105
+ /**
106
+ * Resume (claim) a session by ID for a user identity.
107
+ * Sets the session status to 'idle' so it can be re-entered.
108
+ */
109
+ export declare function handleResumeSession(store: ISessionMetaStore, identity: string, id: string): Promise<SessionResumeBody>;
110
+ /**
111
+ * Delete a session by ID for a user identity, and evict its RAG state.
112
+ */
113
+ export declare function handleDeleteSession(store: ISessionMetaStore, identity: string, id: string, evictFn: (sessionId: string) => Promise<void>): Promise<{
114
+ ok: boolean;
115
+ error?: string;
116
+ }>;
117
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/session-lifecycle/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,152 @@
1
+ /**
2
+ * Session-lifecycle helpers — extracted from smart-server.ts (R3).
3
+ *
4
+ * Free functions and types that compose the SessionGraphFactory + SessionRegistry,
5
+ * seed session knowledge, record start/end, and implement the /v1/sessions
6
+ * extracted handlers. `_withSession` (which touches `SmartServer` instance state)
7
+ * stays in smart-server.ts and calls these helpers via import.
8
+ */
9
+ import { SessionGraphFactory, SessionRegistry, } from '@mcp-abap-adt/llm-agent-libs';
10
+ import { resolveSessionIdentity } from '../session-identity-resolver.js';
11
+ /**
12
+ * Share the parent RAG registry with subagents (per-session worker re-wire).
13
+ * Session/user/global collections written at the top level become visible to
14
+ * workers; the per-call scope filter (`rag-query.ts`) isolates by
15
+ * `ctx.sessionId` / `ctx.options.userId`. A worker's own declared store is
16
+ * registered INTO this same registry under its namespace. When the parent
17
+ * registry is undefined (no top-level registry yet — e.g. unit test seam),
18
+ * return undefined so the builder allocates its own SimpleRagRegistry.
19
+ */
20
+ export function resolveSubAgentRagRegistry(input) {
21
+ return input.parentRagRegistry;
22
+ }
23
+ /**
24
+ * Composes the cookie identity resolver + SessionGraphFactory + SessionRegistry
25
+ * into one lifecycle object the server's `_handle` consumes. The default MCP
26
+ * factory returns the shared GLOBAL clients by reference (one upstream
27
+ * connection); a creds-aware build swaps it out (out of scope here).
28
+ */
29
+ export function buildSessionLifecycle(opts) {
30
+ const factory = new SessionGraphFactory({
31
+ mcpClientFactory: (_identity) => opts.mcpClients,
32
+ toolsRag: opts.toolsRag,
33
+ ragRegistry: opts.ragRegistry,
34
+ buildAgent: opts.buildAgent,
35
+ logger: opts.logger,
36
+ onDispose: opts.onDispose,
37
+ });
38
+ const registry = new SessionRegistry({
39
+ idleTtlMs: opts.idleTtlMs,
40
+ maxSessions: opts.maxSessions,
41
+ factory,
42
+ });
43
+ return {
44
+ resolve: (cookieHeader, isHttps) => resolveSessionIdentity({
45
+ cookieHeader,
46
+ cookieName: opts.cookieName,
47
+ maxAgeSeconds: Math.max(1, Math.floor(opts.idleTtlMs / 1000)),
48
+ isHttps,
49
+ }),
50
+ acquire: (sessionId) => registry.acquire(sessionId),
51
+ release: (sessionId, graph) => registry.release(sessionId, graph),
52
+ evictIdle: () => registry.evictIdle(),
53
+ disposeAll: () => registry.disposeAll(),
54
+ invalidateAll: () => registry.invalidateAll(),
55
+ registry,
56
+ };
57
+ }
58
+ /**
59
+ * Seed session-scope guidance entries into a BRAND-NEW session's knowledge-RAG
60
+ * (deployment-supplied tool-usage guidance the planner/executor read in "Known
61
+ * facts"). Idempotent: rehydrates via init() and writes ONLY when the session is
62
+ * empty (`fingerprint() === 'n=0'`), so resumes never duplicate. Entries are
63
+ * config DATA — the runtime stays MCP-agnostic (no tool knowledge in agent code).
64
+ */
65
+ export async function seedSessionKnowledge(kr, seeds, nowIso) {
66
+ if (seeds.length === 0)
67
+ return;
68
+ await kr.init?.();
69
+ if (kr.fingerprint?.() !== 'n=0')
70
+ return; // not a brand-new session → skip
71
+ for (const s of seeds) {
72
+ await kr.write({
73
+ content: s.content,
74
+ metadata: {
75
+ traceId: 'seed',
76
+ turnId: 'seed',
77
+ stepperId: 'seed',
78
+ task: 'session-seed',
79
+ artifactType: s.artifactType,
80
+ createdAt: nowIso,
81
+ },
82
+ });
83
+ }
84
+ }
85
+ /**
86
+ * Record that a request for `sessionId` STARTED — create the meta row on first
87
+ * sight, else touch it and mark in-progress. Called from the live request path
88
+ * (`_withSession`) so GET /v1/sessions, resume and delete actually see sessions
89
+ * produced by normal chat/stream traffic (review Finding 3). `userIdentity` is
90
+ * the sessionId itself in the default no-auth build — matching how the
91
+ * /v1/sessions endpoints resolve identity (`resolved.identity.sessionId`).
92
+ */
93
+ export async function recordSessionStart(store, sessionId, nowIso) {
94
+ const existing = await store.get(sessionId);
95
+ if (!existing) {
96
+ await store.create({
97
+ sessionId,
98
+ userIdentity: sessionId,
99
+ createdAt: nowIso,
100
+ lastUsedAt: nowIso,
101
+ status: 'in-progress',
102
+ });
103
+ return;
104
+ }
105
+ await store.touch(sessionId, nowIso);
106
+ await store.setStatus(sessionId, 'in-progress');
107
+ }
108
+ /**
109
+ * Record that a request for `sessionId` FINISHED — touch + mark idle (so it can
110
+ * be resumed). No-op if the row was deleted mid-flight.
111
+ */
112
+ export async function recordSessionEnd(store, sessionId, nowIso) {
113
+ const existing = await store.get(sessionId);
114
+ if (!existing)
115
+ return;
116
+ await store.touch(sessionId, nowIso);
117
+ await store.setStatus(sessionId, 'idle');
118
+ }
119
+ /**
120
+ * List all sessions for a given user identity.
121
+ * Extracted for unit-testability (mirrors the /v1/usage handler pattern).
122
+ */
123
+ export async function handleListSessions(store, identity) {
124
+ const sessions = await store.listForUser(identity);
125
+ return { sessions };
126
+ }
127
+ /**
128
+ * Resume (claim) a session by ID for a user identity.
129
+ * Sets the session status to 'idle' so it can be re-entered.
130
+ */
131
+ export async function handleResumeSession(store, identity, id) {
132
+ const row = await store.get(id);
133
+ if (!row || row.userIdentity !== identity) {
134
+ return { ok: false, error: 'session not found' };
135
+ }
136
+ await store.setStatus(id, 'idle');
137
+ const updated = await store.get(id);
138
+ return { ok: true, session: updated };
139
+ }
140
+ /**
141
+ * Delete a session by ID for a user identity, and evict its RAG state.
142
+ */
143
+ export async function handleDeleteSession(store, identity, id, evictFn) {
144
+ const row = await store.get(id);
145
+ if (!row || row.userIdentity !== identity) {
146
+ return { ok: false, error: 'session not found' };
147
+ }
148
+ await store.delete(id);
149
+ await evictFn(id);
150
+ return { ok: true };
151
+ }
152
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/smart-agent/session-lifecycle/index.ts"],"names":[],"mappings":"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"}
@@ -28,10 +28,18 @@ export type SkillPluginsCatalogConfig = {
28
28
  table?: string;
29
29
  };
30
30
  /** A FETCHED source: a marketplace/registry pulled into memory. Requires a
31
- * non-empty `enabled` plugin list (omitting it is a config error, NOT "load all"). */
31
+ * non-empty `enabled` plugin list AND exactly one transport selector
32
+ * (`registry` for an HTTP marketplace, or `github` for a GitHub repo). */
32
33
  export interface SkillPluginsFetchedSource {
33
34
  id: string;
35
+ /** HTTP marketplace base URL. Mutually exclusive with `github`. */
34
36
  registry?: string;
37
+ /** GitHub repo URL or bare `owner/repo`. Mutually exclusive with `registry`. */
38
+ github?: string;
39
+ /** Branch/tag/sha for a `github` source; default = repo `default_branch`. */
40
+ ref?: string;
41
+ /** Optional auth token for a `github` source (env-expanded upstream). */
42
+ token?: string;
35
43
  enabled?: readonly string[];
36
44
  /** Acquisition/materialisation strategy name (validated via the registry). */
37
45
  strategy?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"skill-plugins-config.d.ts","sourceRoot":"","sources":["../../src/smart-agent/skill-plugins-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,sFAAsF;AACtF,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1E,sFAAsF;AACtF,MAAM,MAAM,yBAAyB,GACjC;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnE;uFACuF;AACvF,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED;yFACyF;AACzF,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,SAAS,OAAO,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,kBAAkB,GAC1B,yBAAyB,GACzB,yBAAyB,CAAC;AAE9B,kEAAkE;AAClE,MAAM,WAAW,kBAAkB;IACjC,gEAAgE;IAChE,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,uBAAuB,CAAC;IAC/B,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8DAA8D;IAC9D,QAAQ,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,yBAAyB,CAAC;IACnC,iDAAiD;IACjD,CAAC,EAAE,MAAM,CAAC;IACV,oEAAoE;IACpE,SAAS,EAAE,MAAM,CAAC;IAClB,oFAAoF;IACpF,cAAc,EAAE,MAAM,CAAC;IACvB,oCAAoC;IACpC,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5B,uFAAuF;IACvF,MAAM,EAAE,OAAO,CAAC;IAChB,6EAA6E;IAC7E,qBAAqB,EAAE,MAAM,CAAC;IAC9B,wFAAwF;IACxF,cAAc,EAAE,MAAM,CAAC;IACvB,oFAAoF;IACpF,aAAa,EAAE,MAAM,CAAC;IACtB,iGAAiG;IACjG,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oFAAoF;IACpF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kFAAkF;IAClF,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,kFAAkF;IAClF,aAAa,EAAE,OAAO,CAAC;IACvB,sFAAsF;IACtF,OAAO,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACzC;AA0ID;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,kBAAkB,CA+NxE"}
1
+ {"version":3,"file":"skill-plugins-config.d.ts","sourceRoot":"","sources":["../../src/smart-agent/skill-plugins-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,sFAAsF;AACtF,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1E,sFAAsF;AACtF,MAAM,MAAM,yBAAyB,GACjC;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnE;;2EAE2E;AAC3E,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED;yFACyF;AACzF,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,SAAS,OAAO,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,kBAAkB,GAC1B,yBAAyB,GACzB,yBAAyB,CAAC;AAE9B,kEAAkE;AAClE,MAAM,WAAW,kBAAkB;IACjC,gEAAgE;IAChE,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,uBAAuB,CAAC;IAC/B,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8DAA8D;IAC9D,QAAQ,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,yBAAyB,CAAC;IACnC,iDAAiD;IACjD,CAAC,EAAE,MAAM,CAAC;IACV,oEAAoE;IACpE,SAAS,EAAE,MAAM,CAAC;IAClB,oFAAoF;IACpF,cAAc,EAAE,MAAM,CAAC;IACvB,oCAAoC;IACpC,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5B,uFAAuF;IACvF,MAAM,EAAE,OAAO,CAAC;IAChB,6EAA6E;IAC7E,qBAAqB,EAAE,MAAM,CAAC;IAC9B,wFAAwF;IACxF,cAAc,EAAE,MAAM,CAAC;IACvB,oFAAoF;IACpF,aAAa,EAAE,MAAM,CAAC;IACtB,iGAAiG;IACjG,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oFAAoF;IACpF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kFAAkF;IAClF,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,kFAAkF;IAClF,aAAa,EAAE,OAAO,CAAC;IACvB,sFAAsF;IACtF,OAAO,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACzC;AAsKD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,kBAAkB,CA+NxE"}
@@ -111,8 +111,34 @@ function parseSource(raw) {
111
111
  const out = {
112
112
  id,
113
113
  enabled: enabled,
114
- ...(typeof raw.registry === 'string' ? { registry: raw.registry } : {}),
115
114
  };
115
+ if (raw.registry !== undefined) {
116
+ if (typeof raw.registry !== 'string' || raw.registry.length === 0) {
117
+ fail(`source '${id}': registry must be a non-empty string`);
118
+ }
119
+ out.registry = raw.registry;
120
+ }
121
+ if (raw.github !== undefined) {
122
+ if (typeof raw.github !== 'string' || raw.github.length === 0) {
123
+ fail(`source '${id}': github must be a non-empty string`);
124
+ }
125
+ out.github = raw.github;
126
+ }
127
+ if (raw.ref !== undefined) {
128
+ if (typeof raw.ref !== 'string') {
129
+ fail(`source '${id}': ref must be a string`);
130
+ }
131
+ out.ref = raw.ref;
132
+ }
133
+ if (raw.token !== undefined) {
134
+ if (typeof raw.token !== 'string') {
135
+ fail(`source '${id}': token must be a string`);
136
+ }
137
+ out.token = raw.token;
138
+ }
139
+ if ((out.registry === undefined) === (out.github === undefined)) {
140
+ fail(`source '${id}': a fetched source needs exactly one of 'registry' or 'github'`);
141
+ }
116
142
  if (raw.strategy !== undefined) {
117
143
  if (typeof raw.strategy !== 'string') {
118
144
  fail(`source '${id}': strategy must be a string`);
@@ -1 +1 @@
1
- {"version":3,"file":"skill-plugins-config.js","sourceRoot":"","sources":["../../src/smart-agent/skill-plugins-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-plugins-config.js","sourceRoot":"","sources":["../../src/smart-agent/skill-plugins-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAmF1E,SAAS,QAAQ,CAAC,CAAU;IAC1B,OAAO,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,IAAI,CAAC,GAAW;IACvB,MAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED;;;;GAIG;AACH,MAAM,cAAc,GAAG,qDAAqD,CAAC;AAE7E;;;;GAIG;AACH,SAAS,MAAM,CAAC,GAAY,EAAE,IAAY;IACxC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACtB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,IAAI,CAAC,GAAG,IAAI,oCAAoC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,UAAU,CAAC,GAAY;IAC9B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IACpD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;IACtB,IAAI,IAAI,KAAK,WAAW;QAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IACvD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,IAAI,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC,6CAA6C,CAAC,CAAC;QACtD,CAAC;QACD,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,GAAG,CAAC,GAAG;YACZ,GAAG,CAAC,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ;gBACpC,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE;gBAChC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CACT,eAAe,MAAM,CAAC,IAAI,CAAC,0CAA0C,CACtE,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,GAAY;IAChC,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IACrD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;IACtB,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,SAAS;QAC7C,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IAChC,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,IACE,OAAO,GAAG,CAAC,gBAAgB,KAAK,QAAQ;YACxC,GAAG,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,EACjC,CAAC;YACD,IAAI,CAAC,gEAAgE,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrE,IAAI,CACF,kBAAkB,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,+CAA+C,cAAc,CAAC,MAAM,GAAG,CAC3G,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;YACtC,GAAG,CAAC,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/D,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CACT,iBAAiB,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAC3E,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,GAA4B;IACnD,2EAA2E;IAC3E,OAAO,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,WAAW,CAAC,GAAY;IAC/B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAC1D,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC;IAClB,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,IAAI,CAAC,kEAAkE,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,WAAW,EAAE,6BAA6B,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAA6B,EAAE,CAAC;IAC5D,CAAC;IACD,qDAAqD;IACrD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAC5B,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QACvB,OAAO,CAAC,MAAM,KAAK,CAAC;QACpB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAC5C,CAAC;QACD,IAAI,CACF,WAAW,EAAE,oFAAoF,CAClG,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,GAA8B;QACrC,EAAE;QACF,OAAO,EAAE,OAA4B;KACtC,CAAC;IACF,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC/B,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClE,IAAI,CAAC,WAAW,EAAE,wCAAwC,CAAC,CAAC;QAC9D,CAAC;QACD,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;IAC9B,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC7B,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,WAAW,EAAE,sCAAsC,CAAC,CAAC;QAC5D,CAAC;QACD,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;IAC1B,CAAC;IACD,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAC1B,IAAI,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAChC,IAAI,CAAC,WAAW,EAAE,yBAAyB,CAAC,CAAC;QAC/C,CAAC;QACD,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;IACpB,CAAC;IACD,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC5B,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC,WAAW,EAAE,2BAA2B,CAAC,CAAC;QACjD,CAAC;QACD,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;IACxB,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,EAAE,CAAC;QAChE,IAAI,CACF,WAAW,EAAE,iEAAiE,CAC/E,CAAC;IACJ,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC/B,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,WAAW,EAAE,8BAA8B,CAAC,CAAC;QACpD,CAAC;QACD,mEAAmE;QACnE,IAAI,CAAC;YACH,0BAA0B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;IAC9B,CAAC;IACD,IAAI,GAAG,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,WAAW,EAAE,qCAAqC,CAAC,CAAC;QAC3D,CAAC;QACD,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,cAAc,CAAC;IAC1C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAY;IAClD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,IAAI,CAAC,0BAA0B,CAAC,CAAC;IAErD,qCAAqC;IACrC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,UAAU,CAAC;IACpC,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,IAAI,CAAC,iEAAiE,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1C,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;IAEhD,gDAAgD;IAChD,MAAM,gBAAgB,GACpB,OAAO,GAAG,CAAC,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9E,IAAI,eAAe,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACzC,IAAI,CACF,8HAA8H,CAC/H,CAAC;IACJ,CAAC;IAED,+DAA+D;IAC/D,IAAI,eAAe,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACnD,IAAI,CACF,+JAA+J,CAChK,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,0EAA0E;IAC1E,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,IAAI,SAAS,GAAG,GAAG,CAAC;IACpB,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,IAAI,CACF,oDAAoD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CACrF,CAAC;QACJ,CAAC;QACD,SAAS,GAAG,CAAC,CAAC;IAChB,CAAC;IACD,MAAM,cAAc,GAClB,GAAG,CAAC,cAAc,KAAK,SAAS;QAC9B,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC;QAC9C,CAAC,CAAC,IAAI,CAAC;IACX,MAAM,qBAAqB,GACzB,GAAG,CAAC,qBAAqB,KAAK,SAAS;QACrC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,EAAE,uBAAuB,CAAC;QAC5D,CAAC,CAAC,CAAC,CAAC;IACR,MAAM,cAAc,GAClB,GAAG,CAAC,cAAc,KAAK,SAAS;QAC9B,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC;QAC9C,CAAC,CAAC,KAAK,CAAC;IACZ,MAAM,aAAa,GACjB,GAAG,CAAC,aAAa,KAAK,SAAS;QAC7B,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,eAAe,CAAC;QAC5C,CAAC,CAAC,OAAO,CAAC;IACd,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7D,MAAM,KAAK,GAAG;QACZ,QAAQ,EACN,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS;YACzC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;YAC7C,CAAC,CAAC,IAAI;KACX,CAAC;IAEF,IAAI,cAAc,GAAG,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC,4DAA4D,CAAC,CAAC;IACrE,CAAC;IAED,yEAAyE;IACzE,uEAAuE;IACvE,gCAAgC;IAChC,IAAI,eAAmC,CAAC;IACxC,IAAI,GAAG,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACtC,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;QACjE,IAAI,eAAe,IAAI,cAAc,EAAE,CAAC;YACtC,IAAI,CACF,oBAAoB,eAAe,+BAA+B,cAAc,GAAG,CACpF,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,IAAI,eAAe,EAAE,CAAC;QAC3B,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,GAAG,CAAC,CAAC;IACrD,CAAC;IAED,oDAAoD;IACpD,EAAE;IACF,kFAAkF;IAClF,yEAAyE;IACzE,4EAA4E;IAC5E,iFAAiF;IACjF,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC;IAC/B,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3D,IAAI,CACF,0CAA0C,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CACxE,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IACtE,MAAM,gBAAgB,GACpB,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE3E,qEAAqE;IACrE,4EAA4E;IAC5E,4EAA4E;IAC5E,mEAAmE;IACnE,kEAAkE;IAClE,IAAI,aAAsB,CAAC;IAC3B,IAAI,UAAU,EAAE,CAAC;QACf,aAAa,GAAG,gBAAgB,IAAI,IAAI,CAAC;QACzC,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;YAC5B,IAAI,CACF,yFAAyF,CAC1F,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;YAC9B,IAAI,CACF,wEAAwE;gBACtE,uEAAuE;gBACvE,0EAA0E,CAC7E,CAAC;QACJ,CAAC;QACD,aAAa,GAAG,KAAK,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,UAAU,IAAI,CAAC,eAAe,EAAE,CAAC;QACpC,IAAI,CACF,kHAAkH,CACnH,CAAC;IACJ,CAAC;IAED,qDAAqD;IACrD,IAAI,OAAyC,CAAC;IAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACtC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;gBACnB,IAAI,CACF,uBAAuB,CAAC,CAAC,EAAE,uCAAuC,CACnE,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;QACrC,CAAC,CAAC;YACE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACvC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,KAAK,SAAS;gBAClC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBACvC,CAAC,CAAC,EAAE,CAAC;SACR;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,2EAA2E;IAC3E,2EAA2E;IAC3E,oEAAoE;IACpE,2EAA2E;IAC3E,2EAA2E;IAC3E,2BAA2B;IAC3B,IAAI,gBAA+C,CAAC;IACpD,IAAI,GAAG,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACvC,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;YACpC,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,CACzB,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CACpD,EACD,CAAC;YACD,IAAI,CACF,kEAAkE;gBAChE,QAAQ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAClD,CAAC;QACJ,CAAC;QACD,gBAAgB,GAAG,GAAG,CAAC,gBAAqC,CAAC;IAC/D,CAAC;IAED,6EAA6E;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,8EAA8E;IAC9E,6EAA6E;IAC7E,iBAAiB;IACjB,IAAI,oBAAwC,CAAC;IAC7C,IAAI,GAAG,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;QAC3C,IACE,OAAO,GAAG,CAAC,oBAAoB,KAAK,QAAQ;YAC5C,GAAG,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAC5C,CAAC;YACD,IAAI,CACF,2DAA2D;gBACzD,QAAQ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC,GAAG,CACtD,CAAC;QACJ,CAAC;QACD,oBAAoB,GAAG,GAAG,CAAC,oBAAoB,CAAC;IAClD,CAAC;IAED,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,KAAK;QACL,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS;YAC7B,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE;YACnD,CAAC,CAAC,EAAE,CAAC;QACP,OAAO;QACP,CAAC;QACD,SAAS;QACT,cAAc;QACd,KAAK;QACL,MAAM,EAAE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK;QAC9D,qBAAqB;QACrB,cAAc;QACd,aAAa;QACb,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,aAAa;QACb,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChC,CAAC;AACJ,CAAC"}