@inspectr/mcplab 1.5.1 → 1.7.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 (37) hide show
  1. package/dist/app/assets/index-CYs1291A.css +1 -0
  2. package/dist/app/assets/index-Fe4npghI.js +249 -0
  3. package/dist/app/index.html +2 -2
  4. package/dist/app-server/app-context.d.ts +77 -129
  5. package/dist/app-server/app-context.d.ts.map +1 -1
  6. package/dist/app-server/oauth-debugger-domain.d.ts +174 -194
  7. package/dist/app-server/oauth-debugger-domain.d.ts.map +1 -1
  8. package/dist/app-server/oauth-debugger-domain.js +105 -32
  9. package/dist/app-server/oauth-debugger-domain.js.map +1 -1
  10. package/dist/app-server/oauth-runtime-domain.d.ts +60 -0
  11. package/dist/app-server/oauth-runtime-domain.d.ts.map +1 -0
  12. package/dist/app-server/oauth-runtime-domain.js +198 -0
  13. package/dist/app-server/oauth-runtime-domain.js.map +1 -0
  14. package/dist/app-server/oauth-runtime-routes.d.ts +18 -0
  15. package/dist/app-server/oauth-runtime-routes.d.ts.map +1 -0
  16. package/dist/app-server/oauth-runtime-routes.js +109 -0
  17. package/dist/app-server/oauth-runtime-routes.js.map +1 -0
  18. package/dist/app-server/router.d.ts.map +1 -1
  19. package/dist/app-server/router.js +18 -0
  20. package/dist/app-server/router.js.map +1 -1
  21. package/dist/app-server/runs-routes.d.ts +30 -54
  22. package/dist/app-server/runs-routes.d.ts.map +1 -1
  23. package/dist/app-server/runs-routes.js +38 -7
  24. package/dist/app-server/runs-routes.js.map +1 -1
  25. package/dist/app-server/tool-analysis-domain.d.ts +179 -120
  26. package/dist/app-server/tool-analysis-domain.d.ts.map +1 -1
  27. package/dist/app-server/tool-analysis-domain.js +186 -31
  28. package/dist/app-server/tool-analysis-domain.js.map +1 -1
  29. package/dist/app-server/tool-analysis.d.ts +12 -19
  30. package/dist/app-server/tool-analysis.d.ts.map +1 -1
  31. package/dist/app-server/tool-analysis.js +25 -2
  32. package/dist/app-server/tool-analysis.js.map +1 -1
  33. package/dist/cli.js +18 -0
  34. package/dist/cli.js.map +1 -1
  35. package/package.json +4 -4
  36. package/dist/app/assets/index-B2nN65ad.css +0 -1
  37. package/dist/app/assets/index-KAvcXAwp.js +0 -249
@@ -2,7 +2,13 @@ import { chatWithAgent, McpClientManager } from '@inspectr/mcplab-core';
2
2
  import { addJobEvent } from './jobs.js';
3
3
  import { readLibraries } from './libraries-store.js';
4
4
  import { truncateJson } from './assistant-common.js';
5
+ import { resolveRuntimeOAuthAuthHeaders } from './oauth-runtime-domain.js';
5
6
  import { pickDefaultAssistantAgentName, resolveAssistantAgentFromLibraries } from './scenario-assistant-domain.js';
7
+ const TOOL_ANALYSIS_JSON_RESPONSE_TOOL = {
8
+ name: 'submit_tool_analysis_json',
9
+ description: 'Submit the final analysis response as JSON object. Use this instead of returning free-form text.',
10
+ inputSchema: { type: 'object', additionalProperties: true }
11
+ };
6
12
  const TOOL_ANALYSIS_READ_PREFIXES = [
7
13
  'get',
8
14
  'list',
@@ -20,6 +26,14 @@ const TOOL_ANALYSIS_UNSAFE_PREFIXES = [
20
26
  'update',
21
27
  'delete',
22
28
  'remove',
29
+ 'cleanup',
30
+ 'clean',
31
+ 'clear',
32
+ 'drop',
33
+ 'purge',
34
+ 'destroy',
35
+ 'erase',
36
+ 'truncate',
23
37
  'write',
24
38
  'set',
25
39
  'patch',
@@ -29,7 +43,21 @@ const TOOL_ANALYSIS_UNSAFE_PREFIXES = [
29
43
  'run',
30
44
  'trigger'
31
45
  ];
32
- function classifyToolSafety(toolName, inputSchema) {
46
+ export function classifyToolSafety(toolName, inputSchema, annotations) {
47
+ const hasDestructiveHint = annotations?.destructiveHint === true;
48
+ const hasReadOnlyHint = annotations?.readOnlyHint === true;
49
+ if (hasDestructiveHint) {
50
+ return {
51
+ safetyClassification: 'unsafe_or_unknown',
52
+ classificationReason: "MCP annotations indicate destructive behavior ('destructiveHint: true')."
53
+ };
54
+ }
55
+ if (hasReadOnlyHint) {
56
+ return {
57
+ safetyClassification: 'read_like',
58
+ classificationReason: "MCP annotations indicate read-only behavior ('readOnlyHint: true')."
59
+ };
60
+ }
33
61
  const lower = toolName.toLowerCase();
34
62
  const read = TOOL_ANALYSIS_READ_PREFIXES.find((p) => lower.startsWith(p));
35
63
  const unsafe = TOOL_ANALYSIS_UNSAFE_PREFIXES.find((p) => lower.startsWith(p));
@@ -94,7 +122,50 @@ function normalizeToolAnalysisFinding(raw, fallbackPrefix, idx) {
94
122
  function clampStringArray(value, fallback = []) {
95
123
  return Array.isArray(value) ? value.map((v) => String(v)).filter(Boolean) : fallback;
96
124
  }
97
- function parseJsonFromAssistantText(text) {
125
+ function extractFirstBalancedJsonCandidate(text) {
126
+ const starts = [];
127
+ for (let i = 0; i < text.length; i += 1) {
128
+ const ch = text[i];
129
+ if (ch === '{')
130
+ starts.push({ idx: i, open: '{', close: '}' });
131
+ if (ch === '[')
132
+ starts.push({ idx: i, open: '[', close: ']' });
133
+ }
134
+ for (const start of starts) {
135
+ let depth = 0;
136
+ let inString = false;
137
+ let escaped = false;
138
+ for (let i = start.idx; i < text.length; i += 1) {
139
+ const ch = text[i];
140
+ if (inString) {
141
+ if (escaped) {
142
+ escaped = false;
143
+ continue;
144
+ }
145
+ if (ch === '\\') {
146
+ escaped = true;
147
+ continue;
148
+ }
149
+ if (ch === '"')
150
+ inString = false;
151
+ continue;
152
+ }
153
+ if (ch === '"') {
154
+ inString = true;
155
+ continue;
156
+ }
157
+ if (ch === start.open)
158
+ depth += 1;
159
+ if (ch === start.close) {
160
+ depth -= 1;
161
+ if (depth === 0)
162
+ return text.slice(start.idx, i + 1);
163
+ }
164
+ }
165
+ }
166
+ return null;
167
+ }
168
+ export function parseJsonFromAssistantText(text) {
98
169
  const cleaned = text.trim();
99
170
  try {
100
171
  return JSON.parse(cleaned);
@@ -102,16 +173,38 @@ function parseJsonFromAssistantText(text) {
102
173
  catch {
103
174
  const fenced = cleaned.match(/```json\s*([\s\S]+?)```/i) ?? cleaned.match(/```\s*([\s\S]+?)```/i);
104
175
  if (fenced)
105
- return JSON.parse(fenced[1]);
176
+ return JSON.parse(fenced[1].trim());
177
+ const candidate = extractFirstBalancedJsonCandidate(cleaned);
178
+ if (candidate)
179
+ return JSON.parse(candidate);
106
180
  throw new Error('Assistant returned invalid JSON');
107
181
  }
108
182
  }
183
+ function parseJsonFromToolCalls(response) {
184
+ if (!Array.isArray(response.tool_calls) || response.tool_calls.length === 0)
185
+ return undefined;
186
+ const preferred = response.tool_calls.find((c) => c.name === TOOL_ANALYSIS_JSON_RESPONSE_TOOL.name) ??
187
+ response.tool_calls[0];
188
+ const args = preferred?.arguments;
189
+ if (typeof args === 'string')
190
+ return parseJsonFromAssistantText(args);
191
+ return args;
192
+ }
109
193
  async function chatJsonWithAgent(agent, system, userPrompt) {
110
194
  const first = await chatWithAgent({
111
195
  agent,
112
196
  system,
113
- messages: [{ role: 'user', content: userPrompt }]
197
+ tools: [TOOL_ANALYSIS_JSON_RESPONSE_TOOL],
198
+ messages: [
199
+ {
200
+ role: 'user',
201
+ content: `${userPrompt}\n\nReturn your answer by calling '${TOOL_ANALYSIS_JSON_RESPONSE_TOOL.name}' with the JSON object.`
202
+ }
203
+ ]
114
204
  });
205
+ const firstToolJson = parseJsonFromToolCalls(first);
206
+ if (firstToolJson && typeof firstToolJson === 'object')
207
+ return firstToolJson;
115
208
  try {
116
209
  return parseJsonFromAssistantText(first.content ?? '');
117
210
  }
@@ -119,15 +212,23 @@ async function chatJsonWithAgent(agent, system, userPrompt) {
119
212
  const retry = await chatWithAgent({
120
213
  agent,
121
214
  system,
215
+ tools: [TOOL_ANALYSIS_JSON_RESPONSE_TOOL],
122
216
  messages: [
123
- { role: 'user', content: userPrompt },
217
+ {
218
+ role: 'user',
219
+ content: `${userPrompt}\n\nReturn your answer by calling '${TOOL_ANALYSIS_JSON_RESPONSE_TOOL.name}' with the JSON object.`
220
+ },
124
221
  { role: 'assistant', content: first.content ?? '' },
125
222
  {
126
223
  role: 'user',
127
- content: 'Reply again with valid JSON only. No prose, no markdown fences.'
224
+ content: `Reply again by calling '${TOOL_ANALYSIS_JSON_RESPONSE_TOOL.name}' only. ` +
225
+ 'No prose, no markdown fences, no explanation text.'
128
226
  }
129
227
  ]
130
228
  });
229
+ const retryToolJson = parseJsonFromToolCalls(retry);
230
+ if (retryToolJson && typeof retryToolJson === 'object')
231
+ return retryToolJson;
131
232
  return parseJsonFromAssistantText(retry.content ?? '');
132
233
  }
133
234
  }
@@ -161,7 +262,41 @@ function toolAnalysisExecutionReviewSystemPrompt() {
161
262
  'Focus on output shape consistency, error quality, schema-doc mismatches, and determinism risks.'
162
263
  ].join('\n');
163
264
  }
164
- export async function discoverMcpToolsForServers(serversByName, serverNames) {
265
+ export function buildToolAnalysisMetadataPayload(params) {
266
+ return {
267
+ serverName: params.serverName,
268
+ toolName: params.toolName,
269
+ title: params.title ?? '',
270
+ description: params.description ?? '',
271
+ inputSchema: params.inputSchema ?? null,
272
+ outputSchema: params.outputSchema ?? null,
273
+ projectGoal: 'MCP agent/workflow evaluation friendliness'
274
+ };
275
+ }
276
+ export function buildToolAnalysisSamplePlanPayload(params) {
277
+ return {
278
+ serverName: params.serverName,
279
+ toolName: params.toolName,
280
+ title: params.title ?? '',
281
+ description: params.description ?? '',
282
+ inputSchema: params.inputSchema ?? null,
283
+ outputSchema: params.outputSchema ?? null,
284
+ maxCalls: params.maxCalls
285
+ };
286
+ }
287
+ export function buildToolAnalysisExecutionReviewPayload(params) {
288
+ return {
289
+ serverName: params.serverName,
290
+ toolName: params.toolName,
291
+ title: params.title ?? '',
292
+ arguments: params.arguments,
293
+ resultPreview: params.resultPreview,
294
+ description: params.description ?? '',
295
+ inputSchema: params.inputSchema ?? null,
296
+ outputSchema: params.outputSchema ?? null
297
+ };
298
+ }
299
+ export async function discoverMcpToolsForServers(serversByName, serverNames, options) {
165
300
  const mcp = new McpClientManager();
166
301
  const discovered = [];
167
302
  for (const serverName of serverNames) {
@@ -173,10 +308,12 @@ export async function discoverMcpToolsForServers(serversByName, serverNames) {
173
308
  continue;
174
309
  }
175
310
  try {
176
- await mcp.connectAll({ [serverName]: server });
311
+ await mcp.connectAll({ [serverName]: server }, undefined, {
312
+ serverAuthHeaders: options?.serverAuthHeaders
313
+ });
177
314
  const tools = await mcp.listTools(serverName);
178
315
  entry.tools = tools.map((tool) => {
179
- const safety = classifyToolSafety(tool.name, tool.inputSchema);
316
+ const safety = classifyToolSafety(tool.name, tool.inputSchema, tool.annotations);
180
317
  return {
181
318
  serverName,
182
319
  tool,
@@ -224,7 +361,17 @@ export async function runToolAnalysisJob(params) {
224
361
  message: `Using assistant agent ${selectedAssistantAgentName} (${agentConfig.provider}/${agentConfig.model})`
225
362
  }
226
363
  });
227
- const { mcp, servers: discoveredServers } = await discoverMcpToolsForServers(libraries.servers, serverNames);
364
+ const oauthServers = serverNames.filter((serverName) => libraries.servers[serverName]?.auth?.type === 'oauth_authorization_code');
365
+ const serverAuthHeaders = oauthServers.length > 0
366
+ ? resolveRuntimeOAuthAuthHeaders({
367
+ requiredServerNames: oauthServers,
368
+ oauthRuntimeSessionsByServer: params.oauthRuntimeSessionsByServer,
369
+ runtimeSessions: params.oauthRuntimeSessions,
370
+ oauthDebuggerSessions: params.oauthDebuggerSessions
371
+ })
372
+ : undefined;
373
+ const { mcp, servers: discoveredServers } = await discoverMcpToolsForServers(libraries.servers, serverNames, { serverAuthHeaders });
374
+ const mcpServerVersions = mcp.getServerVersions();
228
375
  try {
229
376
  const serverReports = [];
230
377
  const allFindings = [];
@@ -233,13 +380,6 @@ export async function runToolAnalysisJob(params) {
233
380
  for (const discovered of discoveredServers) {
234
381
  if (job.abortController.signal.aborted)
235
382
  throw new Error('Tool analysis aborted by user');
236
- addJobEvent(job, {
237
- type: 'log',
238
- ts: new Date().toISOString(),
239
- payload: {
240
- message: `Analyzing server ${discovered.serverName} (${discovered.tools.length} tools)`
241
- }
242
- });
243
383
  const requestedToolNames = selectedToolsByServer?.[discovered.serverName];
244
384
  const requestedSet = requestedToolNames ? new Set(requestedToolNames) : null;
245
385
  const selectedTools = requestedSet
@@ -248,6 +388,13 @@ export async function runToolAnalysisJob(params) {
248
388
  const missingRequested = requestedSet
249
389
  ? requestedToolNames.filter((name) => !discovered.tools.some((t) => t.tool.name === name))
250
390
  : [];
391
+ addJobEvent(job, {
392
+ type: 'log',
393
+ ts: new Date().toISOString(),
394
+ payload: {
395
+ message: `Analyzing server ${discovered.serverName} (${selectedTools.length} selected of ${discovered.tools.length} discovered)`
396
+ }
397
+ });
251
398
  const toolReports = new Array(selectedTools.length);
252
399
  const perToolFindings = new Array(selectedTools.length);
253
400
  const perToolSkipped = new Array(selectedTools.length).fill(false);
@@ -270,8 +417,10 @@ export async function runToolAnalysisJob(params) {
270
417
  serverName: discovered.serverName,
271
418
  toolName: toolCtx.tool.name,
272
419
  publicToolName: `${discovered.serverName}::${toolCtx.tool.name}`,
420
+ title: toolCtx.tool.title,
273
421
  description: toolCtx.tool.description,
274
422
  inputSchema: toolCtx.tool.inputSchema,
423
+ outputSchema: toolCtx.tool.outputSchema,
275
424
  safetyClassification: toolCtx.safetyClassification,
276
425
  classificationReason: toolCtx.classificationReason,
277
426
  overallRecommendations: []
@@ -283,13 +432,14 @@ export async function runToolAnalysisJob(params) {
283
432
  payload: { message: `Metadata review: ${discovered.serverName}::${toolCtx.tool.name}` }
284
433
  });
285
434
  try {
286
- const metaJson = (await chatJsonWithAgent(agentConfig, toolAnalysisMetadataSystemPrompt(), JSON.stringify({
435
+ const metaJson = (await chatJsonWithAgent(agentConfig, toolAnalysisMetadataSystemPrompt(), JSON.stringify(buildToolAnalysisMetadataPayload({
287
436
  serverName: discovered.serverName,
288
437
  toolName: toolCtx.tool.name,
289
- description: toolCtx.tool.description ?? '',
290
- inputSchema: toolCtx.tool.inputSchema ?? null,
291
- projectGoal: 'MCP agent/workflow evaluation friendliness'
292
- })));
438
+ title: toolCtx.tool.title,
439
+ description: toolCtx.tool.description,
440
+ inputSchema: toolCtx.tool.inputSchema,
441
+ outputSchema: toolCtx.tool.outputSchema
442
+ }))));
293
443
  const issues = Array.isArray(metaJson.issues)
294
444
  ? metaJson.issues.map((item, idx) => normalizeToolAnalysisFinding(item, `meta-${discovered.serverName}-${toolCtx.tool.name}`, idx))
295
445
  : [];
@@ -364,13 +514,15 @@ export async function runToolAnalysisJob(params) {
364
514
  const sampleCalls = [];
365
515
  let overallObservations = [];
366
516
  try {
367
- const samplePlan = (await chatJsonWithAgent(agentConfig, toolAnalysisSampleArgsSystemPrompt(deeper.sampleCallsPerTool), JSON.stringify({
517
+ const samplePlan = (await chatJsonWithAgent(agentConfig, toolAnalysisSampleArgsSystemPrompt(deeper.sampleCallsPerTool), JSON.stringify(buildToolAnalysisSamplePlanPayload({
368
518
  serverName: discovered.serverName,
369
519
  toolName: toolCtx.tool.name,
370
- description: toolCtx.tool.description ?? '',
371
- inputSchema: toolCtx.tool.inputSchema ?? null,
520
+ title: toolCtx.tool.title,
521
+ description: toolCtx.tool.description,
522
+ inputSchema: toolCtx.tool.inputSchema,
523
+ outputSchema: toolCtx.tool.outputSchema,
372
524
  maxCalls: deeper.sampleCallsPerTool
373
- })));
525
+ }))));
374
526
  const suggestedSamples = Array.isArray(samplePlan.sampleCalls)
375
527
  ? samplePlan.sampleCalls.slice(0, deeper.sampleCallsPerTool)
376
528
  : [{ arguments: {} }];
@@ -383,14 +535,16 @@ export async function runToolAnalysisJob(params) {
383
535
  const resultPreview = summarizeToolResultForReport(result, 8000);
384
536
  let execReview = {};
385
537
  try {
386
- execReview = (await chatJsonWithAgent(agentConfig, toolAnalysisExecutionReviewSystemPrompt(), JSON.stringify({
538
+ execReview = (await chatJsonWithAgent(agentConfig, toolAnalysisExecutionReviewSystemPrompt(), JSON.stringify(buildToolAnalysisExecutionReviewPayload({
387
539
  serverName: discovered.serverName,
388
540
  toolName: toolCtx.tool.name,
541
+ title: toolCtx.tool.title,
389
542
  arguments: suggestedArgs,
390
543
  resultPreview: truncateJson(result, 4000),
391
- description: toolCtx.tool.description ?? '',
392
- inputSchema: toolCtx.tool.inputSchema ?? null
393
- })));
544
+ description: toolCtx.tool.description,
545
+ inputSchema: toolCtx.tool.inputSchema,
546
+ outputSchema: toolCtx.tool.outputSchema
547
+ }))));
394
548
  }
395
549
  catch (error) {
396
550
  execReview = {
@@ -546,7 +700,8 @@ export async function runToolAnalysisJob(params) {
546
700
  issueCounts
547
701
  },
548
702
  servers: serverReports,
549
- findings: allFindings
703
+ findings: allFindings,
704
+ mcpServerVersions: Object.keys(mcpServerVersions).length > 0 ? mcpServerVersions : undefined
550
705
  };
551
706
  }
552
707
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-analysis-domain.js","sourceRoot":"","sources":["../../src/app-server/tool-analysis-domain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-analysis-domain.js","sourceRoot":"","sources":["../../src/app-server/tool-analysis-domain.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,15 @@
1
1
  import type { IncomingMessage, ServerResponse } from 'node:http';
2
- import type { AppRouteDeps, AppRouteRequestContext, ToolAnalysisJobsMap } from './app-context.js';
3
- export type ToolAnalysisRouteDeps = Pick<
4
- AppRouteDeps,
5
- | 'parseBody'
6
- | 'asJson'
7
- | 'addJobEvent'
8
- | 'sendSseEvent'
9
- | 'readLibraries'
10
- | 'discoverMcpToolsForServers'
11
- | 'runToolAnalysisJob'
12
- >;
2
+ import type { AppRouteDeps, AppRouteRequestContext, ToolAnalysisJobsMap, OAuthRuntimeSessionsMap, OAuthDebuggerSessionsMap } from './app-context.js';
3
+ export type ToolAnalysisRouteDeps = Pick<AppRouteDeps, 'parseBody' | 'asJson' | 'addJobEvent' | 'sendSseEvent' | 'readLibraries' | 'discoverMcpToolsForServers' | 'runToolAnalysisJob'>;
13
4
  export declare function handleToolAnalysisRoutes(params: {
14
- req: IncomingMessage;
15
- res: ServerResponse;
16
- pathname: string;
17
- method: string;
18
- settings: AppRouteRequestContext['settings'];
19
- toolAnalysisJobs: ToolAnalysisJobsMap;
20
- deps: ToolAnalysisRouteDeps;
5
+ req: IncomingMessage;
6
+ res: ServerResponse;
7
+ pathname: string;
8
+ method: string;
9
+ settings: AppRouteRequestContext['settings'];
10
+ toolAnalysisJobs: ToolAnalysisJobsMap;
11
+ oauthRuntimeSessions: OAuthRuntimeSessionsMap;
12
+ oauthDebuggerSessions: OAuthDebuggerSessionsMap;
13
+ deps: ToolAnalysisRouteDeps;
21
14
  }): Promise<boolean>;
22
- //# sourceMappingURL=tool-analysis.d.ts.map
15
+ //# sourceMappingURL=tool-analysis.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-analysis.d.ts","sourceRoot":"","sources":["../../src/app-server/tool-analysis.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEjE,OAAO,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAalG,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,YAAY,EACV,WAAW,GACX,QAAQ,GACR,aAAa,GACb,cAAc,GACd,eAAe,GACf,4BAA4B,GAC5B,oBAAoB,CACvB,CAAC;AAkBF,wBAAsB,wBAAwB,CAAC,MAAM,EAAE;IACrD,GAAG,EAAE,eAAe,CAAC;IACrB,GAAG,EAAE,cAAc,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC7C,gBAAgB,EAAE,mBAAmB,CAAC;IACtC,IAAI,EAAE,qBAAqB,CAAC;CAC7B,GAAG,OAAO,CAAC,OAAO,CAAC,CAkSnB"}
1
+ {"version":3,"file":"tool-analysis.d.ts","sourceRoot":"","sources":["../../src/app-server/tool-analysis.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEjE,OAAO,KAAK,EACV,YAAY,EACZ,sBAAsB,EACtB,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,kBAAkB,CAAC;AAc1B,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,YAAY,EACV,WAAW,GACX,QAAQ,GACR,aAAa,GACb,cAAc,GACd,eAAe,GACf,4BAA4B,GAC5B,oBAAoB,CACvB,CAAC;AAkBF,wBAAsB,wBAAwB,CAAC,MAAM,EAAE;IACrD,GAAG,EAAE,eAAe,CAAC;IACrB,GAAG,EAAE,cAAc,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC7C,gBAAgB,EAAE,mBAAmB,CAAC;IACtC,oBAAoB,EAAE,uBAAuB,CAAC;IAC9C,qBAAqB,EAAE,wBAAwB,CAAC;IAChD,IAAI,EAAE,qBAAqB,CAAC;CAC7B,GAAG,OAAO,CAAC,OAAO,CAAC,CAuUnB"}
@@ -1,4 +1,5 @@
1
1
  import { resolve } from 'node:path';
2
+ import { resolveRuntimeOAuthAuthHeaders } from './oauth-runtime-domain.js';
2
3
  import { createToolAnalysisReportId, deleteToolAnalysisReportRecordFromDirs, listToolAnalysisReportsFromDirs, readToolAnalysisReportRecordFromDirs, writeToolAnalysisReportRecord } from './tool-analysis-storage.js';
3
4
  function defaultNewToolAnalysisResultsDir(workspaceRoot) {
4
5
  return resolve(workspaceRoot, 'mcplab/results/tool-analysis');
@@ -15,7 +16,7 @@ function resolveToolAnalysisReadDirs(settings) {
15
16
  return dirs;
16
17
  }
17
18
  export async function handleToolAnalysisRoutes(params) {
18
- const { req, res, pathname, method, settings, toolAnalysisJobs, deps } = params;
19
+ const { req, res, pathname, method, settings, toolAnalysisJobs, oauthRuntimeSessions, oauthDebuggerSessions, deps } = params;
19
20
  const { parseBody, asJson, addJobEvent, sendSseEvent, readLibraries, discoverMcpToolsForServers, runToolAnalysisJob } = deps;
20
21
  const errorMessage = (error) => (error instanceof Error ? error.message : String(error));
21
22
  if (pathname === '/api/tool-analysis/discover-tools' && method === 'POST') {
@@ -28,15 +29,31 @@ export async function handleToolAnalysisRoutes(params) {
28
29
  return true;
29
30
  }
30
31
  const libraries = readLibraries(settings.librariesDir);
31
- const { servers } = await discoverMcpToolsForServers(libraries.servers, serverNames);
32
+ const oauthRuntimeSessionsByServer = body.oauthRuntimeSessions && typeof body.oauthRuntimeSessions === 'object'
33
+ ? body.oauthRuntimeSessions
34
+ : undefined;
35
+ const oauthServers = serverNames.filter((serverName) => libraries.servers[serverName]?.auth?.type === 'oauth_authorization_code');
36
+ const serverAuthHeaders = oauthServers.length > 0
37
+ ? resolveRuntimeOAuthAuthHeaders({
38
+ requiredServerNames: oauthServers,
39
+ oauthRuntimeSessionsByServer,
40
+ runtimeSessions: oauthRuntimeSessions,
41
+ oauthDebuggerSessions
42
+ })
43
+ : undefined;
44
+ const { servers } = await discoverMcpToolsForServers(libraries.servers, serverNames, {
45
+ serverAuthHeaders
46
+ });
32
47
  asJson(res, 200, {
33
48
  servers: servers.map((entry) => ({
34
49
  serverName: entry.serverName,
35
50
  warnings: entry.warnings,
36
51
  tools: entry.tools.map((tool) => ({
37
52
  name: tool.tool.name,
53
+ title: tool.tool.title,
38
54
  description: tool.tool.description,
39
55
  inputSchema: tool.tool.inputSchema,
56
+ outputSchema: tool.tool.outputSchema,
40
57
  safetyClassification: tool.safetyClassification,
41
58
  classificationReason: tool.classificationReason
42
59
  }))
@@ -64,6 +81,9 @@ export async function handleToolAnalysisRoutes(params) {
64
81
  const selectedToolsByServer = body.selectedToolsByServer && typeof body.selectedToolsByServer === 'object'
65
82
  ? body.selectedToolsByServer
66
83
  : undefined;
84
+ const oauthRuntimeSessionsByServer = body.oauthRuntimeSessions && typeof body.oauthRuntimeSessions === 'object'
85
+ ? body.oauthRuntimeSessions
86
+ : undefined;
67
87
  const deeperOptions = body.deeperAnalysisOptions ?? {};
68
88
  const maxParallelTools = Math.max(1, Math.min(8, Number(body.maxParallelTools ?? deeperOptions.maxParallelTools ?? 2) || 2));
69
89
  const jobId = `ta-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
@@ -94,6 +114,9 @@ export async function handleToolAnalysisRoutes(params) {
94
114
  ? String(body.assistantAgentName)
95
115
  : undefined,
96
116
  serverNames,
117
+ oauthRuntimeSessionsByServer,
118
+ oauthRuntimeSessions,
119
+ oauthDebuggerSessions,
97
120
  selectedToolsByServer,
98
121
  modes,
99
122
  deeper: {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-analysis.js","sourceRoot":"","sources":["../../src/app-server/tool-analysis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-analysis.js","sourceRoot":"","sources":["../../src/app-server/tool-analysis.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,OAAO,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EACL,0BAA0B,EAE1B,sCAAsC,EAEtC,+BAA+B,EAE/B,oCAAoC,EACpC,6BAA6B,EAC9B,MAAM,4BAA4B,CAAC;AAapC,SAAS,gCAAgC,CAAC,aAAqB;IAC7D,OAAO,OAAO,CAAC,aAAa,EAAE,8BAA8B,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,mCAAmC,CAAC,aAAqB;IAChE,OAAO,OAAO,CAAC,aAAa,EAAE,8BAA8B,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,2BAA2B,CAAC,QAA4C;IAC/E,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,gCAAgC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC7E,MAAM,MAAM,GAAG,mCAAmC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC3E,IAAI,QAAQ,CAAC,sBAAsB,KAAK,WAAW,IAAI,MAAM,KAAK,WAAW;QAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjG,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,MAU9C;IACC,MAAM,EACJ,GAAG,EACH,GAAG,EACH,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,IAAI,EACL,GAAG,MAAM,CAAC;IACX,MAAM,EACJ,SAAS,EACT,MAAM,EACN,WAAW,EACX,YAAY,EACZ,aAAa,EACb,0BAA0B,EAC1B,kBAAkB,EACnB,GAAG,IAAI,CAAC;IAET,MAAM,YAAY,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAElG,IAAI,QAAQ,KAAK,mCAAmC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QAC1E,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;YACjD,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YACxE,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,iDAAiD,EAAE,CAAC,CAAC;YAC/E,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACvD,MAAM,4BAA4B,GAChC,IAAI,CAAC,oBAAoB,IAAI,OAAO,IAAI,CAAC,oBAAoB,KAAK,QAAQ;YACxE,CAAC,CAAE,IAAI,CAAC,oBAA+C;YACvD,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CACrC,CAAC,UAAkB,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,KAAK,0BAA0B,CACjG,CAAC;QACF,MAAM,iBAAiB,GACrB,YAAY,CAAC,MAAM,GAAG,CAAC;YACrB,CAAC,CAAC,8BAA8B,CAAC;gBAC7B,mBAAmB,EAAE,YAAY;gBACjC,4BAA4B;gBAC5B,eAAe,EAAE,oBAAoB;gBACrC,qBAAqB;aACtB,CAAC;YACJ,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,0BAA0B,CAAC,SAAS,CAAC,OAAO,EAAE,WAAW,EAAE;YACnF,iBAAiB;SAClB,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE;YACf,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC/B,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAChC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;oBACpB,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;oBACtB,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;oBAClC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;oBAClC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY;oBACpC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;iBAChD,CAAC,CAAC;aACJ,CAAC,CAAC;SACJ,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,QAAQ,KAAK,yBAAyB,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QAChE,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;YACjD,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YACxE,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,KAAK,GAAG;YACZ,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,CAAC;YACpD,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,CAAC;SACrD,CAAC;QACF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,iDAAiD,EAAE,CAAC,CAAC;YAC/E,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;YACnD,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,mCAAmC,EAAE,CAAC,CAAC;YACjE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,qBAAqB,GACzB,IAAI,CAAC,qBAAqB,IAAI,OAAO,IAAI,CAAC,qBAAqB,KAAK,QAAQ;YAC1E,CAAC,CAAE,IAAI,CAAC,qBAAkD;YAC1D,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,4BAA4B,GAChC,IAAI,CAAC,oBAAoB,IAAI,OAAO,IAAI,CAAC,oBAAoB,KAAK,QAAQ;YACxE,CAAC,CAAE,IAAI,CAAC,oBAA+C;YACvD,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,IAAI,EAAE,CAAC;QACvD,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAC/B,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,gBAAgB,IAAI,aAAa,CAAC,gBAAgB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CACvF,CAAC;QACF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC3E,MAAM,GAAG,GAAoB;YAC3B,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,IAAI,GAAG,EAAE;YAClB,eAAe,EAAE,IAAI,eAAe,EAAE;SACvC,CAAC;QACF,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACjC,WAAW,CAAC,GAAG,EAAE;YACf,IAAI,EAAE,SAAS;YACf,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YAC5B,OAAO,EAAE;gBACP,WAAW;gBACX,KAAK;gBACL,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI;gBACpF,gBAAgB;aACjB;SACF,CAAC,CAAC;QACH,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,IAAI,CAAC;gBACH,MAAM,kBAAkB,CAAC;oBACvB,GAAG;oBACH,QAAQ;oBACR,2BAA2B,EAAE,IAAI,CAAC,kBAAkB;wBAClD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC;wBACjC,CAAC,CAAC,SAAS;oBACb,WAAW;oBACX,4BAA4B;oBAC5B,oBAAoB;oBACpB,qBAAqB;oBACrB,qBAAqB;oBACrB,KAAK;oBACL,MAAM,EAAE;wBACN,aAAa,EAAE,qBAAqB;wBACpC,kBAAkB,EAAE,IAAI,CAAC,GAAG,CAC1B,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,kBAAkB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAChE;wBACD,iBAAiB,EAAE,IAAI,CAAC,GAAG,CACzB,IAAI,EACJ,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,iBAAiB,IAAI,MAAM,CAAC,IAAI,MAAM,CAAC,CAC9E;qBACF;oBACD,gBAAgB;iBACjB,CAAC,CAAC;gBACH,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;oBACf,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,0BAA0B,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;wBAC5E,MAAM,SAAS,GAAG,6BAA6B,CAAC,QAAQ,CAAC,sBAAsB,EAAE;4BAC/E,aAAa,EAAE,CAAC;4BAChB,QAAQ;4BACR,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS;4BAC/B,WAAW,EAAE,GAAG,CAAC,EAAE;4BACnB,WAAW;4BACX,MAAM,EAAE,GAAG,CAAC,MAAM;yBACnB,CAAC,CAAC;wBACH,GAAG,CAAC,aAAa,GAAG,QAAQ,CAAC;wBAC7B,GAAG,CAAC,eAAe,GAAG,SAAS,CAAC;oBAClC,CAAC;oBAAC,OAAO,YAAqB,EAAE,CAAC;wBAC/B,WAAW,CAAC,GAAG,EAAE;4BACf,IAAI,EAAE,KAAK;4BACX,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;4BAC5B,OAAO,EAAE;gCACP,IAAI,EAAE,SAAS;gCACf,OAAO,EAAE,8DAA8D,YAAY,CACjF,YAAY,CACb,EAAE;6BACJ;yBACF,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC;gBACzB,WAAW,CAAC,GAAG,EAAE;oBACf,IAAI,EAAE,WAAW;oBACjB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBAC5B,OAAO,EAAE;wBACP,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,IAAI,IAAI;wBACpC,aAAa,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI;qBACzC;iBACF,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC;gBAC/E,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC3C,WAAW,CAAC,GAAG,EAAE;oBACf,IAAI,EAAE,OAAO;oBACb,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBAC5B,OAAO,EAAE;wBACP,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC;qBACzE;iBACF,CAAC,CAAC;YACL,CAAC;oBAAS,CAAC;gBACT,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO;oBAAE,MAAM,CAAC,GAAG,EAAE,CAAC;gBAC/C,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACpB,UAAU,CAAC,GAAG,EAAE;oBACd,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAClC,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QACL,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,QAAQ,KAAK,4BAA4B,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QAClE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE;YACf,KAAK,EAAE,+BAA+B,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAC;SAC9E,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,QAAQ,CAAC,UAAU,CAAC,6BAA6B,CAAC,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QAC3E,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;YACrD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,MAAM,GAAG,oCAAoC,CACjD,2BAA2B,CAAC,QAAQ,CAAC,EACrC,QAAQ,CACT,CAAC;QACF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;YAC9D,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,QAAQ,CAAC,UAAU,CAAC,6BAA6B,CAAC,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC9E,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;YACrD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,OAAO,GAAG,sCAAsC,CACpD,2BAA2B,CAAC,QAAQ,CAAC,EACrC,QAAQ,CACT,CAAC;QACF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;YAC9D,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IACE,QAAQ,CAAC,UAAU,CAAC,0BAA0B,CAAC;QAC/C,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC5B,MAAM,KAAK,KAAK,EAChB,CAAC;QACD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;YAC7C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;QACrB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;QACnD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QAC3C,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAC1C,IAAI,cAAc,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;YACpE,GAAG,CAAC,YAAY,EAAE,CAAC;QACrB,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM;YAAE,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7B,GAAG,CAAC,GAAG,EAAE,CAAC;YACV,OAAO,IAAI,CAAC;QACd,CAAC;QACD,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACnB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IACE,QAAQ,CAAC,UAAU,CAAC,0BAA0B,CAAC;QAC/C,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC5B,MAAM,KAAK,KAAK,EAChB,CAAC;QACD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;YAC7C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,6BAA6B,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;YACxE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC;QAClF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IACE,QAAQ,CAAC,UAAU,CAAC,0BAA0B,CAAC;QAC/C,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC1B,MAAM,KAAK,MAAM,EACjB,CAAC;QACD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;YAC7C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;YACnD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,WAAW,CAAC,GAAG,EAAE;YACf,IAAI,EAAE,KAAK;YACX,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YAC5B,OAAO,EAAE;gBACP,IAAI,EAAE,aAAa;gBACnB,MAAM,EAAE,gBAAgB;gBACxB,OAAO,EAAE,wBAAwB;aAClC;SACF,CAAC,CAAC;QACH,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC;QACvB,GAAG,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}