@provartesting/provardx-cli 1.5.0-beta.1 → 1.5.0-beta.10
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/README.md +137 -13
- package/lib/commands/provar/auth/clear.d.ts +7 -0
- package/lib/commands/provar/auth/clear.js +36 -0
- package/lib/commands/provar/auth/clear.js.map +1 -0
- package/lib/commands/provar/auth/login.d.ts +10 -0
- package/lib/commands/provar/auth/login.js +90 -0
- package/lib/commands/provar/auth/login.js.map +1 -0
- package/lib/commands/provar/auth/rotate.d.ts +7 -0
- package/lib/commands/provar/auth/rotate.js +42 -0
- package/lib/commands/provar/auth/rotate.js.map +1 -0
- package/lib/commands/provar/auth/status.d.ts +7 -0
- package/lib/commands/provar/auth/status.js +107 -0
- package/lib/commands/provar/auth/status.js.map +1 -0
- package/lib/mcp/docs/PROVAR_TEST_STEP_REFERENCE.md +1430 -0
- package/lib/mcp/licensing/licenseValidator.d.ts +3 -3
- package/lib/mcp/licensing/licenseValidator.js +4 -4
- package/lib/mcp/prompts/index.d.ts +2 -0
- package/lib/mcp/prompts/index.js +19 -0
- package/lib/mcp/prompts/index.js.map +1 -0
- package/lib/mcp/prompts/loopPrompts.d.ts +6 -0
- package/lib/mcp/prompts/loopPrompts.js +435 -0
- package/lib/mcp/prompts/loopPrompts.js.map +1 -0
- package/lib/mcp/prompts/migrationPrompts.d.ts +4 -0
- package/lib/mcp/prompts/migrationPrompts.js +207 -0
- package/lib/mcp/prompts/migrationPrompts.js.map +1 -0
- package/lib/mcp/rules/provar_best_practices_rules.json +256 -544
- package/lib/mcp/server.js +45 -1
- package/lib/mcp/server.js.map +1 -1
- package/lib/mcp/tools/antTools.d.ts +15 -0
- package/lib/mcp/tools/antTools.js +204 -50
- package/lib/mcp/tools/antTools.js.map +1 -1
- package/lib/mcp/tools/automationTools.d.ts +36 -3
- package/lib/mcp/tools/automationTools.js +335 -42
- package/lib/mcp/tools/automationTools.js.map +1 -1
- package/lib/mcp/tools/bestPracticesEngine.js +161 -23
- package/lib/mcp/tools/bestPracticesEngine.js.map +1 -1
- package/lib/mcp/tools/connectionTools.d.ts +4 -0
- package/lib/mcp/tools/connectionTools.js +168 -0
- package/lib/mcp/tools/connectionTools.js.map +1 -0
- package/lib/mcp/tools/nitroXTools.d.ts +22 -0
- package/lib/mcp/tools/nitroXTools.js +750 -0
- package/lib/mcp/tools/nitroXTools.js.map +1 -0
- package/lib/mcp/tools/pageObjectGenerate.js +103 -35
- package/lib/mcp/tools/pageObjectGenerate.js.map +1 -1
- package/lib/mcp/tools/propertiesTools.d.ts +2 -0
- package/lib/mcp/tools/propertiesTools.js +277 -39
- package/lib/mcp/tools/propertiesTools.js.map +1 -1
- package/lib/mcp/tools/qualityHubApiTools.d.ts +3 -0
- package/lib/mcp/tools/qualityHubApiTools.js +134 -0
- package/lib/mcp/tools/qualityHubApiTools.js.map +1 -0
- package/lib/mcp/tools/qualityHubTools.js +127 -19
- package/lib/mcp/tools/qualityHubTools.js.map +1 -1
- package/lib/mcp/tools/rcaTools.d.ts +3 -2
- package/lib/mcp/tools/rcaTools.js +145 -20
- package/lib/mcp/tools/rcaTools.js.map +1 -1
- package/lib/mcp/tools/testCaseGenerate.js +88 -59
- package/lib/mcp/tools/testCaseGenerate.js.map +1 -1
- package/lib/mcp/tools/testCaseStepTools.d.ts +4 -0
- package/lib/mcp/tools/testCaseStepTools.js +221 -0
- package/lib/mcp/tools/testCaseStepTools.js.map +1 -0
- package/lib/mcp/tools/testCaseValidate.d.ts +11 -0
- package/lib/mcp/tools/testCaseValidate.js +146 -19
- package/lib/mcp/tools/testCaseValidate.js.map +1 -1
- package/lib/services/auth/credentials.d.ts +21 -0
- package/lib/services/auth/credentials.js +75 -0
- package/lib/services/auth/credentials.js.map +1 -0
- package/lib/services/auth/loginFlow.d.ts +68 -0
- package/lib/services/auth/loginFlow.js +216 -0
- package/lib/services/auth/loginFlow.js.map +1 -0
- package/lib/services/qualityHub/client.d.ts +161 -0
- package/lib/services/qualityHub/client.js +226 -0
- package/lib/services/qualityHub/client.js.map +1 -0
- package/messages/sf.provar.auth.clear.md +16 -0
- package/messages/sf.provar.auth.login.md +31 -0
- package/messages/sf.provar.auth.rotate.md +23 -0
- package/messages/sf.provar.auth.status.md +16 -0
- package/oclif.manifest.json +214 -1
- package/package.json +8 -4
package/lib/mcp/server.js
CHANGED
|
@@ -5,6 +5,9 @@
|
|
|
5
5
|
* For full license text, see LICENSE.md file in the repo root or https://opensource.org/licenses/BSD-3-Clause
|
|
6
6
|
*/
|
|
7
7
|
import { createRequire } from 'node:module';
|
|
8
|
+
import { readFileSync } from 'node:fs';
|
|
9
|
+
import { fileURLToPath } from 'node:url';
|
|
10
|
+
import { dirname, join } from 'node:path';
|
|
8
11
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
9
12
|
import { z } from 'zod';
|
|
10
13
|
import { log } from './logging/logger.js';
|
|
@@ -20,11 +23,16 @@ import { registerTestPlanValidate } from './tools/testPlanValidate.js';
|
|
|
20
23
|
import { registerProjectValidateFromPath } from './tools/projectValidateFromPath.js';
|
|
21
24
|
import { registerAllPropertiesTools } from './tools/propertiesTools.js';
|
|
22
25
|
import { registerAllQualityHubTools } from './tools/qualityHubTools.js';
|
|
26
|
+
import { registerAllQualityHubApiTools } from './tools/qualityHubApiTools.js';
|
|
23
27
|
import { registerAllAutomationTools } from './tools/automationTools.js';
|
|
24
28
|
import { registerAllDefectTools } from './tools/defectTools.js';
|
|
25
29
|
import { registerAllAntTools } from './tools/antTools.js';
|
|
26
30
|
import { registerAllRcaTools } from './tools/rcaTools.js';
|
|
27
31
|
import { registerAllTestPlanTools } from './tools/testPlanTools.js';
|
|
32
|
+
import { registerAllNitroXTools } from './tools/nitroXTools.js';
|
|
33
|
+
import { registerAllTestCaseStepTools } from './tools/testCaseStepTools.js';
|
|
34
|
+
import { registerAllConnectionTools } from './tools/connectionTools.js';
|
|
35
|
+
import { registerAllPrompts } from './prompts/index.js';
|
|
28
36
|
export function createProvarMcpServer(config) {
|
|
29
37
|
log('info', 'Creating Provar MCP server', { allowedPaths: config.allowedPaths });
|
|
30
38
|
const server = new McpServer({
|
|
@@ -52,11 +60,47 @@ export function createProvarMcpServer(config) {
|
|
|
52
60
|
registerProjectValidateFromPath(server, config);
|
|
53
61
|
registerAllPropertiesTools(server, config);
|
|
54
62
|
registerAllQualityHubTools(server);
|
|
63
|
+
registerAllQualityHubApiTools(server);
|
|
55
64
|
registerAllAutomationTools(server, config);
|
|
56
65
|
registerAllDefectTools(server);
|
|
57
66
|
registerAllAntTools(server, config);
|
|
58
|
-
registerAllRcaTools(server);
|
|
67
|
+
registerAllRcaTools(server, config);
|
|
59
68
|
registerAllTestPlanTools(server, config);
|
|
69
|
+
registerAllNitroXTools(server, config);
|
|
70
|
+
registerAllTestCaseStepTools(server, config);
|
|
71
|
+
registerAllConnectionTools(server, config);
|
|
72
|
+
// ── Provar prompts ───────────────────────────────────────────────────────────
|
|
73
|
+
registerAllPrompts(server);
|
|
74
|
+
// ── Documentation resources ──────────────────────────────────────────────────
|
|
75
|
+
const docsDir = join(dirname(fileURLToPath(import.meta.url)), 'docs');
|
|
76
|
+
server.resource('provar-step-reference', 'provar://docs/step-reference', {
|
|
77
|
+
description: 'Canonical reference for all Provar XML test step API IDs, argument formats, validation rules, and corpus-verified examples. Use this to understand correct step structure when generating or reviewing test cases.',
|
|
78
|
+
mimeType: 'text/markdown',
|
|
79
|
+
}, () => {
|
|
80
|
+
try {
|
|
81
|
+
const content = readFileSync(join(docsDir, 'PROVAR_TEST_STEP_REFERENCE.md'), 'utf-8');
|
|
82
|
+
return {
|
|
83
|
+
contents: [
|
|
84
|
+
{
|
|
85
|
+
uri: 'provar://docs/step-reference',
|
|
86
|
+
mimeType: 'text/markdown',
|
|
87
|
+
text: content,
|
|
88
|
+
},
|
|
89
|
+
],
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
catch {
|
|
93
|
+
return {
|
|
94
|
+
contents: [
|
|
95
|
+
{
|
|
96
|
+
uri: 'provar://docs/step-reference',
|
|
97
|
+
mimeType: 'text/markdown',
|
|
98
|
+
text: '# Provar Test Step Reference\n\nReference doc not found. If you are developing from source, rebuild the package. Otherwise, reinstall or upgrade the plugin/package and try again.',
|
|
99
|
+
},
|
|
100
|
+
],
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
});
|
|
60
104
|
return server;
|
|
61
105
|
}
|
|
62
106
|
//# sourceMappingURL=server.js.map
|
package/lib/mcp/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAE1C,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnD,MAAM,cAAc,GAAY,WAAW,CAAC,oBAAoB,CAAyB,CAAC,OAAO,CAAC;AAClG,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAC;AACrF,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,4 +18,19 @@ export interface AntValidationResult {
|
|
|
18
18
|
}
|
|
19
19
|
/** Pure function — exported for unit testing */
|
|
20
20
|
export declare function validateAntXml(xmlContent: string): AntValidationResult;
|
|
21
|
+
export interface JUnitStepResult {
|
|
22
|
+
testItemId: string;
|
|
23
|
+
title: string;
|
|
24
|
+
status: 'pass' | 'fail' | 'skip';
|
|
25
|
+
errorMessage?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface JUnitParseResult {
|
|
28
|
+
steps: JUnitStepResult[];
|
|
29
|
+
warning?: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Scan a Provar results directory for JUnit XML files and return structured step results.
|
|
33
|
+
* Returns an empty steps array (+ optional warning) when no XML is found or parsing fails.
|
|
34
|
+
*/
|
|
35
|
+
export declare function parseJUnitResults(resultsDir: string): JUnitParseResult;
|
|
21
36
|
export declare function registerAllAntTools(server: McpServer, config: ServerConfig): void;
|
|
@@ -25,9 +25,7 @@ const FilesetSchema = z.object({
|
|
|
25
25
|
.describe('Specific .testcase or .testplan file names to include (e.g. ["Login.testcase"]). Omit to run everything in dir.'),
|
|
26
26
|
});
|
|
27
27
|
const PlanFeatureSchema = z.object({
|
|
28
|
-
name: z
|
|
29
|
-
.enum(['PDF', 'PIECHART', 'EMAIL', 'JUNIT'])
|
|
30
|
-
.describe('Feature name (PDF, PIECHART, EMAIL, JUNIT)'),
|
|
28
|
+
name: z.enum(['PDF', 'PIECHART', 'EMAIL', 'JUNIT']).describe('Feature name (PDF, PIECHART, EMAIL, JUNIT)'),
|
|
31
29
|
type: z.enum(['OUTPUT', 'NOTIFICATION']).describe('Feature type'),
|
|
32
30
|
enabled: z.boolean().describe('Whether this feature is enabled'),
|
|
33
31
|
});
|
|
@@ -103,14 +101,8 @@ export function registerAntGenerate(server, config) {
|
|
|
103
101
|
.string()
|
|
104
102
|
.default('Full Screen')
|
|
105
103
|
.describe('Browser window configuration (e.g. "Full Screen").'),
|
|
106
|
-
web_browser_provider_name: z
|
|
107
|
-
|
|
108
|
-
.default('Desktop')
|
|
109
|
-
.describe('Browser provider name (e.g. "Desktop").'),
|
|
110
|
-
web_browser_device_name: z
|
|
111
|
-
.string()
|
|
112
|
-
.default('Full Screen')
|
|
113
|
-
.describe('Browser device name (e.g. "Full Screen").'),
|
|
104
|
+
web_browser_provider_name: z.string().default('Desktop').describe('Browser provider name (e.g. "Desktop").'),
|
|
105
|
+
web_browser_device_name: z.string().default('Full Screen').describe('Browser device name (e.g. "Full Screen").'),
|
|
114
106
|
test_environment: z
|
|
115
107
|
.string()
|
|
116
108
|
.default('')
|
|
@@ -146,24 +138,18 @@ export function registerAntGenerate(server, config) {
|
|
|
146
138
|
.boolean()
|
|
147
139
|
.optional()
|
|
148
140
|
.describe('When true, the ANT build does not fail even if tests fail. Useful for CI pipelines that collect results separately.'),
|
|
149
|
-
invoke_test_run_monitor: z
|
|
150
|
-
.boolean()
|
|
151
|
-
.default(true)
|
|
152
|
-
.describe('Enable the Provar test run monitor.'),
|
|
141
|
+
invoke_test_run_monitor: z.boolean().default(true).describe('Enable the Provar test run monitor.'),
|
|
153
142
|
// ── Secrets / security ──────────────────────────────────────────────────
|
|
154
143
|
secrets_password: z
|
|
155
144
|
.string()
|
|
156
145
|
.default('${env.ProvarSecretsPassword}')
|
|
157
|
-
.describe('
|
|
146
|
+
.describe('Encryption key used to decrypt the Provar .secrets file (the password string itself, not a file path). Defaults to reading from the ProvarSecretsPassword environment variable.'),
|
|
158
147
|
test_environment_secrets_password: z
|
|
159
148
|
.string()
|
|
160
149
|
.optional()
|
|
161
150
|
.describe('Per-environment secrets password. Defaults to reading from the ProvarSecretsPassword_EnvName environment variable.'),
|
|
162
151
|
// ── Test Cycle ──────────────────────────────────────────────────────────
|
|
163
|
-
test_cycle_path: z
|
|
164
|
-
.string()
|
|
165
|
-
.optional()
|
|
166
|
-
.describe('Path to a TestCycle folder (used with test cycle reporting).'),
|
|
152
|
+
test_cycle_path: z.string().optional().describe('Path to a TestCycle folder (used with test cycle reporting).'),
|
|
167
153
|
test_cycle_run_type: z
|
|
168
154
|
.enum(['ALL', 'FAILED', 'NEW'])
|
|
169
155
|
.optional()
|
|
@@ -182,14 +168,8 @@ export function registerAntGenerate(server, config) {
|
|
|
182
168
|
.string()
|
|
183
169
|
.optional()
|
|
184
170
|
.describe('Where to write the build.xml file (returned in response). Required when dry_run=false.'),
|
|
185
|
-
overwrite: z
|
|
186
|
-
|
|
187
|
-
.default(false)
|
|
188
|
-
.describe('Overwrite output_path if the file already exists.'),
|
|
189
|
-
dry_run: z
|
|
190
|
-
.boolean()
|
|
191
|
-
.default(true)
|
|
192
|
-
.describe('true = return XML only (default); false = write to output_path.'),
|
|
171
|
+
overwrite: z.boolean().default(false).describe('Overwrite output_path if the file already exists.'),
|
|
172
|
+
dry_run: z.boolean().default(true).describe('true = return XML only (default); false = write to output_path.'),
|
|
193
173
|
}, (input) => {
|
|
194
174
|
const requestId = makeRequestId();
|
|
195
175
|
log('info', 'provar.ant.generate', {
|
|
@@ -237,7 +217,7 @@ export function registerAntGenerate(server, config) {
|
|
|
237
217
|
}
|
|
238
218
|
catch (err) {
|
|
239
219
|
const error = err;
|
|
240
|
-
const errResult = makeError(error instanceof PathPolicyError ? error.code :
|
|
220
|
+
const errResult = makeError(error instanceof PathPolicyError ? error.code : error.code ?? 'GENERATE_ERROR', error.message, requestId, false);
|
|
241
221
|
log('error', 'provar.ant.generate failed', { requestId, error: error.message });
|
|
242
222
|
return { isError: true, content: [{ type: 'text', text: JSON.stringify(errResult) }] };
|
|
243
223
|
}
|
|
@@ -251,14 +231,8 @@ export function registerAntValidate(server, config) {
|
|
|
251
231
|
'<Run-Test-Case> with required attributes (provarHome, projectPath, resultsPath),',
|
|
252
232
|
'and at least one <fileset> child. Returns is_valid, issues list, and a validity_score.',
|
|
253
233
|
].join(' '), {
|
|
254
|
-
content: z
|
|
255
|
-
|
|
256
|
-
.optional()
|
|
257
|
-
.describe('XML content to validate directly'),
|
|
258
|
-
file_path: z
|
|
259
|
-
.string()
|
|
260
|
-
.optional()
|
|
261
|
-
.describe('Path to the build.xml file to validate'),
|
|
234
|
+
content: z.string().optional().describe('XML content to validate directly'),
|
|
235
|
+
file_path: z.string().optional().describe('Path to the build.xml file to validate'),
|
|
262
236
|
}, ({ content, file_path }) => {
|
|
263
237
|
const requestId = makeRequestId();
|
|
264
238
|
log('info', 'provar.ant.validate', { requestId, has_content: !!content, file_path });
|
|
@@ -408,10 +382,7 @@ function escapeXmlAttr(value) {
|
|
|
408
382
|
.replace(/</g, '<')
|
|
409
383
|
.replace(/>/g, '>');
|
|
410
384
|
}
|
|
411
|
-
const REQUIRED_TASKDEF_CLASSNAMES = [
|
|
412
|
-
'com.provar.testrunner.ant.CompileTask',
|
|
413
|
-
'com.provar.testrunner.ant.RunnerTask',
|
|
414
|
-
];
|
|
385
|
+
const REQUIRED_TASKDEF_CLASSNAMES = ['com.provar.testrunner.ant.CompileTask', 'com.provar.testrunner.ant.RunnerTask'];
|
|
415
386
|
const VALID_BROWSERS = ['Chrome', 'Chrome_Headless', 'Firefox', 'Edge', 'Edge_Legacy', 'Safari', 'IE'];
|
|
416
387
|
const VALID_CACHE = ['Reuse', 'Refresh', 'Reload'];
|
|
417
388
|
const VALID_OUTPUT_LEVELS = ['BASIC', 'WARNING', 'DEBUG'];
|
|
@@ -468,19 +439,43 @@ function validateProjectStructure(project, defaultTarget, issues) {
|
|
|
468
439
|
}
|
|
469
440
|
function validateRtcEnumAttrs(rtc, webBrowser, issues) {
|
|
470
441
|
if (webBrowser && !VALID_BROWSERS.includes(webBrowser)) {
|
|
471
|
-
issues.push({
|
|
442
|
+
issues.push({
|
|
443
|
+
rule_id: 'ANT_030',
|
|
444
|
+
severity: 'WARNING',
|
|
445
|
+
message: `webBrowser "${webBrowser}" is not a recognised value. Expected one of: ${VALID_BROWSERS.join(', ')}.`,
|
|
446
|
+
applies_to: 'Run-Test-Case',
|
|
447
|
+
suggestion: `Use one of the supported browser values: ${VALID_BROWSERS.join(', ')}.`,
|
|
448
|
+
});
|
|
472
449
|
}
|
|
473
450
|
const metadataCache = rtc['@_salesforceMetadataCache'];
|
|
474
451
|
if (metadataCache && !VALID_CACHE.includes(metadataCache)) {
|
|
475
|
-
issues.push({
|
|
452
|
+
issues.push({
|
|
453
|
+
rule_id: 'ANT_031',
|
|
454
|
+
severity: 'WARNING',
|
|
455
|
+
message: `salesforceMetadataCache "${metadataCache}" is not a recognised value. Expected one of: ${VALID_CACHE.join(', ')}.`,
|
|
456
|
+
applies_to: 'Run-Test-Case',
|
|
457
|
+
suggestion: `Use one of: ${VALID_CACHE.join(', ')}.`,
|
|
458
|
+
});
|
|
476
459
|
}
|
|
477
460
|
const testOutputLevel = rtc['@_testOutputlevel'];
|
|
478
461
|
if (testOutputLevel && !VALID_OUTPUT_LEVELS.includes(testOutputLevel)) {
|
|
479
|
-
issues.push({
|
|
462
|
+
issues.push({
|
|
463
|
+
rule_id: 'ANT_032',
|
|
464
|
+
severity: 'WARNING',
|
|
465
|
+
message: `testOutputlevel "${testOutputLevel}" is not a recognised value. Expected one of: ${VALID_OUTPUT_LEVELS.join(', ')}.`,
|
|
466
|
+
applies_to: 'Run-Test-Case',
|
|
467
|
+
suggestion: `Use one of: ${VALID_OUTPUT_LEVELS.join(', ')}.`,
|
|
468
|
+
});
|
|
480
469
|
}
|
|
481
470
|
const disposition = rtc['@_resultsPathDisposition'];
|
|
482
471
|
if (disposition && !VALID_DISPOSITIONS.includes(disposition)) {
|
|
483
|
-
issues.push({
|
|
472
|
+
issues.push({
|
|
473
|
+
rule_id: 'ANT_033',
|
|
474
|
+
severity: 'WARNING',
|
|
475
|
+
message: `resultsPathDisposition "${disposition}" is not a recognised value. Expected one of: ${VALID_DISPOSITIONS.join(', ')}.`,
|
|
476
|
+
applies_to: 'Run-Test-Case',
|
|
477
|
+
suggestion: `Use one of: ${VALID_DISPOSITIONS.join(', ')}.`,
|
|
478
|
+
});
|
|
484
479
|
}
|
|
485
480
|
}
|
|
486
481
|
function validateRunTestCase(rtc, issues) {
|
|
@@ -490,22 +485,52 @@ function validateRunTestCase(rtc, issues) {
|
|
|
490
485
|
const webBrowser = rtc['@_webBrowser'] ?? null;
|
|
491
486
|
const testEnvironment = rtc['@_testEnvironment'] ?? null;
|
|
492
487
|
if (!provarHome) {
|
|
493
|
-
issues.push({
|
|
488
|
+
issues.push({
|
|
489
|
+
rule_id: 'ANT_021',
|
|
490
|
+
severity: 'ERROR',
|
|
491
|
+
message: '<Run-Test-Case> missing required "provarHome" attribute.',
|
|
492
|
+
applies_to: 'Run-Test-Case',
|
|
493
|
+
suggestion: 'Add provarHome="${provar.home}" to <Run-Test-Case>.',
|
|
494
|
+
});
|
|
494
495
|
}
|
|
495
496
|
if (!projectPath) {
|
|
496
|
-
issues.push({
|
|
497
|
+
issues.push({
|
|
498
|
+
rule_id: 'ANT_022',
|
|
499
|
+
severity: 'ERROR',
|
|
500
|
+
message: '<Run-Test-Case> missing required "projectPath" attribute.',
|
|
501
|
+
applies_to: 'Run-Test-Case',
|
|
502
|
+
suggestion: 'Add projectPath="${testproject.home}" to <Run-Test-Case>.',
|
|
503
|
+
});
|
|
497
504
|
}
|
|
498
505
|
if (!resultsPath) {
|
|
499
|
-
issues.push({
|
|
506
|
+
issues.push({
|
|
507
|
+
rule_id: 'ANT_023',
|
|
508
|
+
severity: 'ERROR',
|
|
509
|
+
message: '<Run-Test-Case> missing required "resultsPath" attribute.',
|
|
510
|
+
applies_to: 'Run-Test-Case',
|
|
511
|
+
suggestion: 'Add resultsPath="${testproject.results}" to <Run-Test-Case>.',
|
|
512
|
+
});
|
|
500
513
|
}
|
|
501
514
|
validateRtcEnumAttrs(rtc, webBrowser, issues);
|
|
502
515
|
const filesets = rtc['fileset'] ?? [];
|
|
503
516
|
if (filesets.length === 0) {
|
|
504
|
-
issues.push({
|
|
517
|
+
issues.push({
|
|
518
|
+
rule_id: 'ANT_040',
|
|
519
|
+
severity: 'ERROR',
|
|
520
|
+
message: '<Run-Test-Case> has no <fileset> children — no tests will be selected.',
|
|
521
|
+
applies_to: 'Run-Test-Case',
|
|
522
|
+
suggestion: 'Add at least one <fileset dir="..."/> pointing to your tests or plans folder.',
|
|
523
|
+
});
|
|
505
524
|
}
|
|
506
525
|
for (const [i, fsEntry] of filesets.entries()) {
|
|
507
526
|
if (!fsEntry['@_dir']) {
|
|
508
|
-
issues.push({
|
|
527
|
+
issues.push({
|
|
528
|
+
rule_id: 'ANT_041',
|
|
529
|
+
severity: 'ERROR',
|
|
530
|
+
message: `<fileset> at index ${i} is missing required "dir" attribute.`,
|
|
531
|
+
applies_to: 'fileset',
|
|
532
|
+
suggestion: 'Add dir="..." to each <fileset> element.',
|
|
533
|
+
});
|
|
509
534
|
}
|
|
510
535
|
}
|
|
511
536
|
return { provarHome, projectPath, resultsPath, webBrowser, testEnvironment, filesetCount: filesets.length };
|
|
@@ -606,6 +631,135 @@ function finalizeAnt(issues, provarHome, projectPath, resultsPath, webBrowser, t
|
|
|
606
631
|
issues,
|
|
607
632
|
};
|
|
608
633
|
}
|
|
634
|
+
function extractFailureText(el) {
|
|
635
|
+
if (!el)
|
|
636
|
+
return undefined;
|
|
637
|
+
if (typeof el === 'string')
|
|
638
|
+
return el.trim() || undefined;
|
|
639
|
+
if (typeof el === 'object') {
|
|
640
|
+
const obj = el;
|
|
641
|
+
// Prefer CDATA body ('#text') — it has the specific error. Fall back to 'message' attribute.
|
|
642
|
+
const body = obj['#text']?.trim();
|
|
643
|
+
const msg = obj['message']?.trim();
|
|
644
|
+
if (body && msg && body !== msg)
|
|
645
|
+
return `${msg}: ${body}`;
|
|
646
|
+
return body ?? msg;
|
|
647
|
+
}
|
|
648
|
+
return undefined;
|
|
649
|
+
}
|
|
650
|
+
function extractStepsFromJUnit(parsed) {
|
|
651
|
+
const steps = [];
|
|
652
|
+
let idx = 0;
|
|
653
|
+
// Normalise to array of suites — handles both <testsuites> and bare <testsuite>
|
|
654
|
+
let suites = [];
|
|
655
|
+
if (parsed['testsuites']) {
|
|
656
|
+
const inner = parsed['testsuites']['testsuite'];
|
|
657
|
+
suites = Array.isArray(inner)
|
|
658
|
+
? inner
|
|
659
|
+
: inner
|
|
660
|
+
? [inner]
|
|
661
|
+
: [];
|
|
662
|
+
}
|
|
663
|
+
else if (parsed['testsuite']) {
|
|
664
|
+
const ts = parsed['testsuite'];
|
|
665
|
+
suites = Array.isArray(ts) ? ts : [ts];
|
|
666
|
+
}
|
|
667
|
+
for (const suite of suites) {
|
|
668
|
+
const rawTc = suite['testcase'];
|
|
669
|
+
if (!rawTc)
|
|
670
|
+
continue;
|
|
671
|
+
const testcases = Array.isArray(rawTc)
|
|
672
|
+
? rawTc
|
|
673
|
+
: [rawTc];
|
|
674
|
+
for (const tc of testcases) {
|
|
675
|
+
idx++;
|
|
676
|
+
// Provar JUnit: name = test case file name (no attribute prefix since attributeNamePrefix: '')
|
|
677
|
+
const title = tc['name'] ?? `Test ${idx}`;
|
|
678
|
+
const hasFailure = 'failure' in tc || 'error' in tc;
|
|
679
|
+
const hasSkipped = 'skipped' in tc;
|
|
680
|
+
let status = 'pass';
|
|
681
|
+
if (hasFailure)
|
|
682
|
+
status = 'fail';
|
|
683
|
+
else if (hasSkipped)
|
|
684
|
+
status = 'skip';
|
|
685
|
+
const errorMessage = extractFailureText(tc['failure'] ?? tc['error']);
|
|
686
|
+
const step = { testItemId: String(idx), title, status };
|
|
687
|
+
if (errorMessage)
|
|
688
|
+
step.errorMessage = errorMessage;
|
|
689
|
+
steps.push(step);
|
|
690
|
+
}
|
|
691
|
+
}
|
|
692
|
+
return steps;
|
|
693
|
+
}
|
|
694
|
+
function findXmlFiles(dir) {
|
|
695
|
+
const results = [];
|
|
696
|
+
try {
|
|
697
|
+
for (const entry of fs.readdirSync(dir, { withFileTypes: true })) {
|
|
698
|
+
if (entry.isFile() && entry.name.endsWith('.xml') && !entry.name.startsWith('.')) {
|
|
699
|
+
results.push(path.join(dir, entry.name));
|
|
700
|
+
}
|
|
701
|
+
}
|
|
702
|
+
}
|
|
703
|
+
catch {
|
|
704
|
+
// ignore unreadable dirs
|
|
705
|
+
}
|
|
706
|
+
return results;
|
|
707
|
+
}
|
|
708
|
+
/**
|
|
709
|
+
* Scan a Provar results directory for JUnit XML files and return structured step results.
|
|
710
|
+
* Returns an empty steps array (+ optional warning) when no XML is found or parsing fails.
|
|
711
|
+
*/
|
|
712
|
+
export function parseJUnitResults(resultsDir) {
|
|
713
|
+
if (!fs.existsSync(resultsDir)) {
|
|
714
|
+
return { steps: [], warning: `Results directory not found: ${resultsDir}` };
|
|
715
|
+
}
|
|
716
|
+
const xmlFiles = findXmlFiles(resultsDir);
|
|
717
|
+
if (xmlFiles.length === 0) {
|
|
718
|
+
return {
|
|
719
|
+
steps: [],
|
|
720
|
+
warning: 'No JUnit XML files found in results directory — structured step output unavailable.',
|
|
721
|
+
};
|
|
722
|
+
}
|
|
723
|
+
const parser = new XMLParser({
|
|
724
|
+
ignoreAttributes: false,
|
|
725
|
+
attributeNamePrefix: '',
|
|
726
|
+
textNodeName: '#text',
|
|
727
|
+
allowBooleanAttributes: true,
|
|
728
|
+
parseAttributeValue: false,
|
|
729
|
+
isArray: (tagName) => ['testsuite', 'testcase'].includes(tagName),
|
|
730
|
+
});
|
|
731
|
+
const allSteps = [];
|
|
732
|
+
let parsedAny = false;
|
|
733
|
+
let parseFailures = 0;
|
|
734
|
+
for (const xmlFile of xmlFiles) {
|
|
735
|
+
try {
|
|
736
|
+
const content = fs.readFileSync(xmlFile, 'utf-8');
|
|
737
|
+
const parsed = parser.parse(content);
|
|
738
|
+
const steps = extractStepsFromJUnit(parsed);
|
|
739
|
+
allSteps.push(...steps);
|
|
740
|
+
parsedAny = true;
|
|
741
|
+
}
|
|
742
|
+
catch {
|
|
743
|
+
parseFailures++;
|
|
744
|
+
}
|
|
745
|
+
}
|
|
746
|
+
if (!parsedAny) {
|
|
747
|
+
return {
|
|
748
|
+
steps: [],
|
|
749
|
+
warning: 'JUnit XML files found but could not be parsed — structured step output unavailable.',
|
|
750
|
+
};
|
|
751
|
+
}
|
|
752
|
+
if (allSteps.length === 0) {
|
|
753
|
+
return {
|
|
754
|
+
steps: [],
|
|
755
|
+
warning: 'JUnit XML found but no test steps could be extracted — files may not be standard JUnit format.',
|
|
756
|
+
};
|
|
757
|
+
}
|
|
758
|
+
const warning = parseFailures > 0
|
|
759
|
+
? `${parseFailures} JUnit XML file(s) could not be parsed — step data may be incomplete.`
|
|
760
|
+
: undefined;
|
|
761
|
+
return { steps: allSteps, warning };
|
|
762
|
+
}
|
|
609
763
|
// ── Registration ──────────────────────────────────────────────────────────────
|
|
610
764
|
export function registerAllAntTools(server, config) {
|
|
611
765
|
registerAntGenerate(server, config);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"antTools.js","sourceRoot":"","sources":["../../../src/mcp/tools/antTools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,8BAA8B;AAC9B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,aAAa,EAAwB,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAE3C,iFAAiF;AAEjF,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IACjF,EAAE,EAAE,CAAC;SACF,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,mGAAmG,CACpG;IACH,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CACP,iHAAiH,CAClH;CACJ,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC3C,QAAQ,CAAC,4CAA4C,CAAC;IACzD,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;IACjE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;CACjE,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACtC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAChD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACjD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC;IAC3D,uBAAuB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClD,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACvC,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,+BAA+B,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC1D,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACjD,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACvC,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAC3C,6BAA6B,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACzD,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC9C,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACpD,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACjD,sBAAsB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAClD,sBAAsB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACjD,gCAAgC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3D,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACrD,CAAC,CAAC;AAEH,iFAAiF;AAEjF,MAAM,UAAU,mBAAmB,CAAC,MAAiB,EAAE,MAAoB;IACzE,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB;QACE,uCAAuC;QACvC,uFAAuF;QACvF,oGAAoG;QACpG,8DAA8D;KAC/D,CAAC,IAAI,CAAC,GAAG,CAAC,EACX;QACE,2EAA2E;QAC3E,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,CACP,iJAAiJ,CAClJ;QACH,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CACP,oFAAoF,CACrF;QACH,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,OAAO,CAAC,gBAAgB,CAAC;aACzB,QAAQ,CAAC,oEAAoE,CAAC;QACjF,kBAAkB,EAAE,CAAC;aAClB,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,oGAAoG,CACrG;QACH,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,+EAA+E,CAAC;QAC5F,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,uEAAuE,CAAC;QAEpF,2EAA2E;QAC3E,QAAQ,EAAE,CAAC;aACR,KAAK,CAAC,aAAa,CAAC;aACpB,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CACP,oDAAoD;YAClD,wDAAwD;YACxD,6DAA6D;YAC7D,uFAAuF,CAC1F;QAEH,2EAA2E;QAC3E,WAAW,EAAE,CAAC;aACX,IAAI,CAAC,CAAC,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;aACrF,OAAO,CAAC,QAAQ,CAAC;aACjB,QAAQ,CAAC,wCAAwC,CAAC;QACrD,yBAAyB,EAAE,CAAC;aACzB,MAAM,EAAE;aACR,OAAO,CAAC,aAAa,CAAC;aACtB,QAAQ,CAAC,oDAAoD,CAAC;QACjE,yBAAyB,EAAE,CAAC;aACzB,MAAM,EAAE;aACR,OAAO,CAAC,SAAS,CAAC;aAClB,QAAQ,CAAC,yCAAyC,CAAC;QACtD,uBAAuB,EAAE,CAAC;aACvB,MAAM,EAAE;aACR,OAAO,CAAC,aAAa,CAAC;aACtB,QAAQ,CAAC,2CAA2C,CAAC;QACxD,gBAAgB,EAAE,CAAC;aAChB,MAAM,EAAE;aACR,OAAO,CAAC,EAAE,CAAC;aACX,QAAQ,CAAC,oGAAoG,CAAC;QAEjH,2EAA2E;QAC3E,yBAAyB,EAAE,CAAC;aACzB,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;aACpC,OAAO,CAAC,OAAO,CAAC;aAChB,QAAQ,CACP,6HAA6H,CAC9H;QAEH,2EAA2E;QAC3E,wBAAwB,EAAE,CAAC;aACxB,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;aACvC,OAAO,CAAC,WAAW,CAAC;aACpB,QAAQ,CACP,0HAA0H,CAC3H;QACH,iBAAiB,EAAE,CAAC;aACjB,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;aACnC,OAAO,CAAC,OAAO,CAAC;aAChB,QAAQ,CAAC,uCAAuC,CAAC;QACpD,mBAAmB,EAAE,CAAC;aACnB,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;aACnC,OAAO,CAAC,SAAS,CAAC;aAClB,QAAQ,CAAC,yCAAyC,CAAC;QAEtD,2EAA2E;QAC3E,sBAAsB,EAAE,CAAC;aACtB,OAAO,EAAE;aACT,OAAO,CAAC,KAAK,CAAC;aACd,QAAQ,CAAC,qDAAqD,CAAC;QAClE,2BAA2B,EAAE,CAAC;aAC3B,OAAO,EAAE;aACT,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CAAC,gEAAgE,CAAC;QAC7E,eAAe,EAAE,CAAC;aACf,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CACP,qHAAqH,CACtH;QACH,uBAAuB,EAAE,CAAC;aACvB,OAAO,EAAE;aACT,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CAAC,qCAAqC,CAAC;QAElD,2EAA2E;QAC3E,gBAAgB,EAAE,CAAC;aAChB,MAAM,EAAE;aACR,OAAO,CAAC,8BAA8B,CAAC;aACvC,QAAQ,CACP,iHAAiH,CAClH;QACH,iCAAiC,EAAE,CAAC;aACjC,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,oHAAoH,CACrH;QAEH,2EAA2E;QAC3E,eAAe,EAAE,CAAC;aACf,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,8DAA8D,CAAC;QAC3E,mBAAmB,EAAE,CAAC;aACnB,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;aAC9B,QAAQ,EAAE;aACV,QAAQ,CAAC,qDAAqD,CAAC;QAElE,2EAA2E;QAC3E,aAAa,EAAE,CAAC;aACb,KAAK,CAAC,iBAAiB,CAAC;aACxB,QAAQ,EAAE;aACV,QAAQ,CACP,kFAAkF;YAChF,4CAA4C,CAC/C;QAEH,2EAA2E;QAC3E,gBAAgB,EAAE,qBAAqB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACzD,8EAA8E,CAC/E;QACD,qBAAqB,EAAE,0BAA0B,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACnE,0FAA0F,CAC3F;QAED,2EAA2E;QAC3E,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,wFAAwF,CAAC;QACrG,SAAS,EAAE,CAAC;aACT,OAAO,EAAE;aACT,OAAO,CAAC,KAAK,CAAC;aACd,QAAQ,CAAC,mDAAmD,CAAC;QAChE,OAAO,EAAE,CAAC;aACP,OAAO,EAAE;aACT,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CAAC,iEAAiE,CAAC;KAC/E,EACD,CAAC,KAAK,EAAE,EAAE;QACR,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;QAClC,GAAG,CAAC,MAAM,EAAE,qBAAqB,EAAE;YACjC,SAAS;YACT,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,+EAA+E;YAC/E,0EAA0E;YAC1E,iBAAiB,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1D,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC3D,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC3D,IAAI,KAAK,CAAC,YAAY;gBAAE,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YACnF,IAAI,KAAK,CAAC,SAAS;gBAAE,iBAAiB,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAC7E,IAAI,KAAK,CAAC,kBAAkB;gBAAE,iBAAiB,CAAC,KAAK,CAAC,kBAAkB,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YAE/F,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACjF,IAAI,OAAO,GAAG,KAAK,CAAC;YAEpB,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC/B,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;gBAEjD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;oBAChD,MAAM,GAAG,GAAG,SAAS,CACnB,aAAa,EACb,wBAAwB,QAAQ,kCAAkC,EAClE,SAAS,CACV,CAAC;oBACF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC5F,CAAC;gBAED,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC1D,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;gBAChD,OAAO,GAAG,IAAI,CAAC;gBACf,GAAG,CAAC,MAAM,EAAE,iCAAiC,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC1E,CAAC;YAED,MAAM,MAAM,GAAG;gBACb,SAAS;gBACT,WAAW,EAAE,UAAU;gBACvB,SAAS,EAAE,QAAQ;gBACnB,OAAO;gBACP,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC;YACF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClE,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,GAAgC,CAAC;YAC/C,MAAM,SAAS,GAAG,SAAS,CACzB,KAAK,YAAY,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,gBAAgB,CAAC,EAChF,KAAK,CAAC,OAAO,EACb,SAAS,EACT,KAAK,CACN,CAAC;YACF,GAAG,CAAC,OAAO,EAAE,4BAA4B,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAChF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;QAClG,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAED,iFAAiF;AAEjF,MAAM,UAAU,mBAAmB,CAAC,MAAiB,EAAE,MAAoB;IACzE,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB;QACE,6DAA6D;QAC7D,qFAAqF;QACrF,kFAAkF;QAClF,wFAAwF;KACzF,CAAC,IAAI,CAAC,GAAG,CAAC,EACX;QACE,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,kCAAkC,CAAC;QAC/C,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,wCAAwC,CAAC;KACtD,EACD,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE;QACzB,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;QAClC,GAAG,CAAC,MAAM,EAAE,qBAAqB,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;QAErF,IAAI,CAAC;YACH,IAAI,MAAM,GAAG,OAAO,CAAC;YAErB,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;gBACzB,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;gBAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACzC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC7B,MAAM,GAAG,GAAG,SAAS,CAAC,gBAAgB,EAAE,mBAAmB,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAC;oBAClF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC5F,CAAC;gBACD,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC9C,CAAC;YAED,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,GAAG,GAAG,SAAS,CAAC,eAAe,EAAE,sCAAsC,EAAE,SAAS,CAAC,CAAC;gBAC1F,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC5F,CAAC;YAED,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAAC;YAC5C,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClE,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,GAAgC,CAAC;YAC/C,MAAM,SAAS,GAAG,SAAS,CACzB,KAAK,YAAY,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAChE,KAAK,CAAC,OAAO,EACb,SAAS,EACT,KAAK,CACN,CAAC;YACF,GAAG,CAAC,OAAO,EAAE,4BAA4B,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAChF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;QAClG,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAuDD,SAAS,qBAAqB,CAAC,KAAuB,EAAE,CAAwB;IAC9E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,KAAK,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACxC,KAAK,CAAC,IAAI,CAAC,0BAA0B,KAAK,CAAC,eAAe,GAAG,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,KAAK,CAAC,uBAAuB,EAAE,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,KAAuB;IAC1C,MAAM,CAAC,GAAG,aAAa,CAAC;IACxB,MAAM,SAAS,GAAG,KAAK,CAAC,kBAAkB,IAAI,qBAAqB,CAAC;IAEpE,+EAA+E;IAC/E,MAAM,KAAK,GAAa;QACtB,8BAA8B;QAC9B,iCAAiC;QACjC,yCAAyC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK;QAClE,8CAA8C,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK;QACxE,iDAAiD,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK;QAC3E,8CAA8C,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK;KAC7E,CAAC;IAEF,IAAI,KAAK,CAAC,iCAAiC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CACR,6DAA6D,CAAC,CAAC,KAAK,CAAC,iCAAiC,CAAC,KAAK,CAC7G,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CACR,mGAAmG,CACpG,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACxF,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,+EAA+E;IAC/E,KAAK,CAAC,IAAI,CACR,oIAAoI,EACpI,iNAAiN,EACjN,8NAA8N,EAC9N,EAAE,CACH,CAAC;IAEF,+EAA+E;IAC/E,KAAK,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IAC7C,KAAK,CAAC,IAAI,CAAC,qFAAqF,EAAE,EAAE,CAAC,CAAC;IAEtG,gFAAgF;IAChF,MAAM,QAAQ,GAAa;QACzB,gDAAgD;QAChD,2CAA2C;QAC3C,8CAA8C;QAC9C,mCAAmC,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,GAAG;QACvE,4BAA4B,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG;QACxD,uBAAuB,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG;QAC9C,oCAAoC,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,GAAG;QACzE,mCAAmC,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,GAAG;QACxE,iCAAiC,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,GAAG;QACpE,qCAAqC,KAAK,CAAC,2BAA2B,GAAG;QACzE,oCAAoC,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,GAAG;QACzE,6BAA6B,CAAC,CAAC,SAAS,CAAC,GAAG;QAC5C,4BAA4B,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG;QACzD,8BAA8B,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG;QAC7D,+BAA+B,KAAK,CAAC,sBAAsB,GAAG;QAC9D,+CAA+C;QAC/C,6EAA6E;KAC9E,CAAC;IAEF,QAAQ,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAElD,iDAAiD;IACjD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,gFAAgF;IAChF,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpD,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC/D,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACnC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACpD,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,iFAAiF;IACjF,IAAI,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CACR,4BAA4B,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,OAAO,KAAK,CACzF,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,iFAAiF;IACjF,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,KAAK,CAAC,gBAAgB,CAAC;QAClC,KAAK,CAAC,IAAI,CACR,qCAAqC,EAAE,CAAC,UAAU,wBAAwB,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,cAAc,IAAI,EAAE,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,4BAA4B,EAAE,CAAC,uBAAuB,gBAAgB,EAAE,CAAC,UAAU,KAAK,CAC3T,CAAC;IACJ,CAAC;IAED,iFAAiF;IACjF,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;QAChC,MAAM,EAAE,GAAG,KAAK,CAAC,qBAAqB,CAAC;QACvC,KAAK,CAAC,IAAI,CACR,4DAA4D,EAAE,CAAC,+BAA+B,0BAA0B,EAAE,CAAC,qBAAqB,iBAAiB,EAAE,CAAC,WAAW,qBAAqB,EAAE,CAAC,eAAe,iCAAiC,EAAE,CAAC,6BAA6B,yBAAyB,EAAE,CAAC,mBAAmB,6BAA6B,EAAE,CAAC,wBAAwB,0BAA0B,EAAE,CAAC,qBAAqB,2BAA2B,EAAE,CAAC,sBAAsB,0BAA0B,EAAE,CAAC,sBAAsB,mCAAmC,EAAE,CAAC,gCAAgC,4BAA4B,EAAE,CAAC,wBAAwB,KAAK,CAC1pB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;IAExE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,OAAO,KAAK;SACT,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC3B,CAAC;AAkBD,MAAM,2BAA2B,GAAG;IAClC,uCAAuC;IACvC,sCAAsC;CACvC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;AACvG,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AACnD,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAC1D,MAAM,kBAAkB,GAAG,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAW7D,SAAS,wBAAwB,CAC/B,OAAgC,EAChC,aAAiC,EACjC,MAAyB;IAEzB,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,iDAAiD;YAC1D,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,4DAA4D;SACzE,CAAC,CAAC;IACL,CAAC;IAED,MAAM,QAAQ,GAAI,OAAO,CAAC,SAAS,CAAgD,IAAI,EAAE,CAAC;IAC1F,KAAK,MAAM,aAAa,IAAI,2BAA2B,EAAE,CAAC;QACxD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAE,EAAE,CAAC,aAAa,CAAwB,KAAK,aAAa,CAAC,CAAC;QACjG,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC;gBACV,OAAO,EAAE,SAAS;gBAClB,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,oCAAoC,aAAa,IAAI;gBAC9D,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,2BAA2B,aAAa,wBAAwB;aAC7E,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAI,OAAO,CAAC,QAAQ,CAAgD,IAAI,EAAE,CAAC;IACxF,MAAM,eAAe,GAAG,aAAa;QACnC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAC,CAAC,QAAQ,CAAwB,KAAK,aAAa,CAAC;QAC5E,CAAC,CAAC,SAAS,CAAC;IAEd,IAAI,aAAa,IAAI,CAAC,eAAe,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,mBAAmB,aAAa,2BAA2B;YACpE,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,uBAAuB,aAAa,aAAa;SAC9D,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,eAAe,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,0CAA0C;YACnD,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,oCAAoC;SACjD,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAAC,GAA4B,EAAE,UAAyB,EAAE,MAAyB;IAC9G,IAAI,UAAU,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACvD,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,eAAe,UAAU,iDAAiD,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,4CAA4C,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/R,CAAC;IACD,MAAM,aAAa,GAAG,GAAG,CAAC,2BAA2B,CAAuB,CAAC;IAC7E,IAAI,aAAa,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,4BAA4B,aAAa,iDAAiD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5Q,CAAC;IACD,MAAM,eAAe,GAAG,GAAG,CAAC,mBAAmB,CAAuB,CAAC;IACvE,IAAI,eAAe,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QACtE,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,oBAAoB,eAAe,iDAAiD,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACtR,CAAC;IACD,MAAM,WAAW,GAAG,GAAG,CAAC,0BAA0B,CAAuB,CAAC;IAC1E,IAAI,WAAW,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,2BAA2B,WAAW,iDAAiD,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACvR,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,GAA4B,EAAE,MAAyB;IAClF,MAAM,UAAU,GAAI,GAAG,CAAC,cAAc,CAAwB,IAAI,IAAI,CAAC;IACvE,MAAM,WAAW,GAAI,GAAG,CAAC,eAAe,CAAwB,IAAI,IAAI,CAAC;IACzE,MAAM,WAAW,GAAI,GAAG,CAAC,eAAe,CAAwB,IAAI,IAAI,CAAC;IACzE,MAAM,UAAU,GAAI,GAAG,CAAC,cAAc,CAAwB,IAAI,IAAI,CAAC;IACvE,MAAM,eAAe,GAAI,GAAG,CAAC,mBAAmB,CAAwB,IAAI,IAAI,CAAC;IAEjF,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,0DAA0D,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,qDAAqD,EAAE,CAAC,CAAC;IAC9N,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,2DAA2D,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,2DAA2D,EAAE,CAAC,CAAC;IACrO,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,2DAA2D,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,8DAA8D,EAAE,CAAC,CAAC;IACxO,CAAC;IACD,oBAAoB,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAI,GAAG,CAAC,SAAS,CAAgD,IAAI,EAAE,CAAC;IACtF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,wEAAwE,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,+EAA+E,EAAE,CAAC,CAAC;IACtQ,CAAC;IACD,KAAK,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;QAC9C,IAAI,CAAE,OAAO,CAAC,OAAO,CAAwB,EAAE,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,sBAAsB,CAAC,uCAAuC,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,0CAA0C,EAAE,CAAC,CAAC;QACjN,CAAC;IACH,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;AAC9G,CAAC;AAED,gDAAgD;AAChD,MAAM,UAAU,cAAc,CAAC,UAAkB;IAC/C,MAAM,MAAM,GAAsB,EAAE,CAAC;IAErC,2BAA2B;IAC3B,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,oGAAoG;YAC7G,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,wCAAwC;SACrD,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;IACR,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,gBAAgB,EAAE,KAAK;QACvB,mBAAmB,EAAE,IAAI;QACzB,mBAAmB,EAAE,KAAK;QAC1B,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CACnB,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;KAC/E,CAAC,CAAC;IACH,IAAI,MAA+B,CAAC;IACpC,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAA4B,CAAC;IAC/D,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,UAAU,GAAG,CAAU,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,oBAAoB,UAAU,CAAC,OAAO,EAAE;YACjD,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,wBAAwB;SACrC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,0CAA0C;IAC1C,IAAI,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,iCAAiC;YAC1C,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,sCAAsC;SACnD,CAAC,CAAC;QACH,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAA4B,CAAC;IAC7D,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,CAAuB,CAAC;IAEjE,MAAM,MAAM,GAAG,wBAAwB,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IACxE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,+BAA+B;IAC/B,MAAM,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAwC,CAAC;IACpF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,uDAAuD;YAChE,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,gFAAgF;SAC7F,CAAC,CAAC;IACL,CAAC;IAED,8BAA8B;IAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAAwC,CAAC;IAC3E,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,yDAAyD;YAClE,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,iDAAiD;SAC9D,CAAC,CAAC;QACH,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,GACvF,mBAAmB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAEnC,OAAO,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC;AAC9G,CAAC;AAED,SAAS,WAAW,CAClB,MAAyB,EACzB,UAAyB,EACzB,WAA0B,EAC1B,WAA0B,EAC1B,UAAyB,EACzB,eAA8B,EAC9B,YAAoB;IAEpB,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM,CAAC;IACvE,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IAC3E,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,UAAU,GAAG,EAAE,CAAC,CAAC;IAEzD,OAAO;QACL,QAAQ,EAAE,UAAU,KAAK,CAAC;QAC1B,cAAc,EAAE,aAAa;QAC7B,WAAW,EAAE,UAAU;QACvB,YAAY,EAAE,WAAW;QACzB,YAAY,EAAE,WAAW;QACzB,WAAW,EAAE,UAAU;QACvB,gBAAgB,EAAE,eAAe;QACjC,aAAa,EAAE,YAAY;QAC3B,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,YAAY;QAC3B,MAAM;KACP,CAAC;AACJ,CAAC;AAED,iFAAiF;AAEjF,MAAM,UAAU,mBAAmB,CAAC,MAAiB,EAAE,MAAoB;IACzE,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACtC,CAAC"}
|
|
1
|
+
{"version":3,"file":"antTools.js","sourceRoot":"","sources":["../../../src/mcp/tools/antTools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
1
2
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
3
|
import type { ServerConfig } from '../server.js';
|
|
3
4
|
/**
|
|
@@ -5,10 +6,42 @@ import type { ServerConfig } from '../server.js';
|
|
|
5
6
|
* Used as a fallback when `sf` is not in PATH.
|
|
6
7
|
*/
|
|
7
8
|
export declare function getSfCommonPaths(): string[];
|
|
8
|
-
/**
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Exposed for testing only — pre-seeds the cached sf executable path, bypassing the probe spawn.
|
|
11
|
+
* Pass `undefined` to reset the cache so the next call triggers a fresh probe.
|
|
12
|
+
*/
|
|
13
|
+
export declare function setSfPathCacheForTesting(value: string | null | undefined): void;
|
|
14
|
+
/** Exposed for testing only — overrides process.platform for needsWindowsShell decisions. */
|
|
15
|
+
export declare function setSfPlatformForTesting(platform: NodeJS.Platform | undefined): void;
|
|
16
|
+
/**
|
|
17
|
+
* Returns true when spawning `executable` requires the Windows shell.
|
|
18
|
+
* On Windows, `.cmd` and `.bat` batch scripts cannot be executed directly by
|
|
19
|
+
* Node's spawnSync — they must be invoked through cmd.exe (i.e. shell: true).
|
|
20
|
+
* The bare name "sf" also needs this treatment on Windows because the file on
|
|
21
|
+
* disk is actually "sf.cmd" and Node won't auto-append the extension.
|
|
22
|
+
*
|
|
23
|
+
* The `platform` parameter defaults to `process.platform` and is exposed for
|
|
24
|
+
* unit testing so tests can verify both Windows and non-Windows behaviour
|
|
25
|
+
* without having to run on the corresponding OS.
|
|
26
|
+
*/
|
|
27
|
+
export declare function needsWindowsShell(executable: string, platform?: NodeJS.Platform): boolean;
|
|
10
28
|
export declare function registerAutomationConfigLoad(server: McpServer, config: ServerConfig): void;
|
|
11
|
-
|
|
29
|
+
/**
|
|
30
|
+
* Strip Java schema-validator debug lines and stale logger-lock SEVERE warnings
|
|
31
|
+
* from Provar testrun output. These two patterns account for the bulk of output
|
|
32
|
+
* volume and cause MCP responses to be truncated before the pass/fail lines.
|
|
33
|
+
*
|
|
34
|
+
* Everything else (including real SEVERE failures) passes through unchanged.
|
|
35
|
+
* Collapses runs of blank lines to a single blank to keep the output readable.
|
|
36
|
+
* Returns the filtered text and the count of suppressed lines.
|
|
37
|
+
*/
|
|
38
|
+
export declare function filterTestRunOutput(raw: string): {
|
|
39
|
+
filtered: string;
|
|
40
|
+
suppressed: number;
|
|
41
|
+
};
|
|
42
|
+
/** Exposed for testing only — set the results path returned by the sf config reader. Pass undefined to reset. */
|
|
43
|
+
export declare function setSfResultsPathForTesting(p: string | null | undefined): void;
|
|
44
|
+
export declare function registerAutomationTestRun(server: McpServer, config: ServerConfig): void;
|
|
12
45
|
export declare function registerAutomationCompile(server: McpServer): void;
|
|
13
46
|
export declare function registerAutomationMetadataDownload(server: McpServer): void;
|
|
14
47
|
export declare function registerAutomationSetup(server: McpServer): void;
|