@provartesting/provardx-cli 1.5.0-dev.1 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/README.md +163 -13
  2. package/bin/mcp-start.js +74 -0
  3. package/lib/commands/provar/auth/clear.d.ts +7 -0
  4. package/lib/commands/provar/auth/clear.js +36 -0
  5. package/lib/commands/provar/auth/clear.js.map +1 -0
  6. package/lib/commands/provar/auth/login.d.ts +10 -0
  7. package/lib/commands/provar/auth/login.js +90 -0
  8. package/lib/commands/provar/auth/login.js.map +1 -0
  9. package/lib/commands/provar/auth/rotate.d.ts +7 -0
  10. package/lib/commands/provar/auth/rotate.js +42 -0
  11. package/lib/commands/provar/auth/rotate.js.map +1 -0
  12. package/lib/commands/provar/auth/status.d.ts +7 -0
  13. package/lib/commands/provar/auth/status.js +107 -0
  14. package/lib/commands/provar/auth/status.js.map +1 -0
  15. package/lib/commands/provar/mcp/start.d.ts +2 -0
  16. package/lib/commands/provar/mcp/start.js +14 -1
  17. package/lib/commands/provar/mcp/start.js.map +1 -1
  18. package/lib/mcp/docs/NITROX_CATALOG_SOURCE.json +6 -0
  19. package/lib/mcp/docs/NITROX_COMPONENT_CATALOG.md +2001 -0
  20. package/lib/mcp/docs/PROVAR_TEST_STEP_REFERENCE.md +1430 -0
  21. package/lib/mcp/docs/PROVAR_TOOL_GUIDE.md +175 -0
  22. package/lib/mcp/licensing/algasClient.js +14 -5
  23. package/lib/mcp/licensing/algasClient.js.map +1 -1
  24. package/lib/mcp/licensing/ideDetection.d.ts +0 -12
  25. package/lib/mcp/licensing/ideDetection.js +1 -73
  26. package/lib/mcp/licensing/ideDetection.js.map +1 -1
  27. package/lib/mcp/licensing/licenseCache.js +7 -1
  28. package/lib/mcp/licensing/licenseCache.js.map +1 -1
  29. package/lib/mcp/licensing/licenseValidator.d.ts +3 -3
  30. package/lib/mcp/licensing/licenseValidator.js +11 -4
  31. package/lib/mcp/licensing/licenseValidator.js.map +1 -1
  32. package/lib/mcp/prompts/guidePrompts.d.ts +4 -0
  33. package/lib/mcp/prompts/guidePrompts.js +324 -0
  34. package/lib/mcp/prompts/guidePrompts.js.map +1 -0
  35. package/lib/mcp/prompts/index.d.ts +2 -0
  36. package/lib/mcp/prompts/index.js +23 -0
  37. package/lib/mcp/prompts/index.js.map +1 -0
  38. package/lib/mcp/prompts/loopPrompts.d.ts +6 -0
  39. package/lib/mcp/prompts/loopPrompts.js +435 -0
  40. package/lib/mcp/prompts/loopPrompts.js.map +1 -0
  41. package/lib/mcp/prompts/migrationPrompts.d.ts +4 -0
  42. package/lib/mcp/prompts/migrationPrompts.js +207 -0
  43. package/lib/mcp/prompts/migrationPrompts.js.map +1 -0
  44. package/lib/mcp/rules/provar_best_practices_rules.json +256 -544
  45. package/lib/mcp/security/pathPolicy.d.ts +5 -0
  46. package/lib/mcp/security/pathPolicy.js +58 -3
  47. package/lib/mcp/security/pathPolicy.js.map +1 -1
  48. package/lib/mcp/server.d.ts +17 -0
  49. package/lib/mcp/server.js +151 -6
  50. package/lib/mcp/server.js.map +1 -1
  51. package/lib/mcp/tools/antTools.d.ts +15 -0
  52. package/lib/mcp/tools/antTools.js +347 -170
  53. package/lib/mcp/tools/antTools.js.map +1 -1
  54. package/lib/mcp/tools/automationTools.d.ts +18 -8
  55. package/lib/mcp/tools/automationTools.js +332 -176
  56. package/lib/mcp/tools/automationTools.js.map +1 -1
  57. package/lib/mcp/tools/bestPracticesEngine.js +161 -23
  58. package/lib/mcp/tools/bestPracticesEngine.js.map +1 -1
  59. package/lib/mcp/tools/connectionTools.d.ts +4 -0
  60. package/lib/mcp/tools/connectionTools.js +172 -0
  61. package/lib/mcp/tools/connectionTools.js.map +1 -0
  62. package/lib/mcp/tools/defectTools.d.ts +1 -1
  63. package/lib/mcp/tools/defectTools.js +56 -50
  64. package/lib/mcp/tools/defectTools.js.map +1 -1
  65. package/lib/mcp/tools/hierarchyValidate.d.ts +1 -1
  66. package/lib/mcp/tools/hierarchyValidate.js +127 -42
  67. package/lib/mcp/tools/hierarchyValidate.js.map +1 -1
  68. package/lib/mcp/tools/nitroXTools.d.ts +23 -0
  69. package/lib/mcp/tools/nitroXTools.js +823 -0
  70. package/lib/mcp/tools/nitroXTools.js.map +1 -0
  71. package/lib/mcp/tools/pageObjectGenerate.js +132 -57
  72. package/lib/mcp/tools/pageObjectGenerate.js.map +1 -1
  73. package/lib/mcp/tools/pageObjectValidate.js +136 -46
  74. package/lib/mcp/tools/pageObjectValidate.js.map +1 -1
  75. package/lib/mcp/tools/projectInspect.js +51 -30
  76. package/lib/mcp/tools/projectInspect.js.map +1 -1
  77. package/lib/mcp/tools/projectValidateFromPath.js +70 -49
  78. package/lib/mcp/tools/projectValidateFromPath.js.map +1 -1
  79. package/lib/mcp/tools/propertiesTools.d.ts +2 -0
  80. package/lib/mcp/tools/propertiesTools.js +332 -78
  81. package/lib/mcp/tools/propertiesTools.js.map +1 -1
  82. package/lib/mcp/tools/qualityHubApiTools.d.ts +3 -0
  83. package/lib/mcp/tools/qualityHubApiTools.js +138 -0
  84. package/lib/mcp/tools/qualityHubApiTools.js.map +1 -0
  85. package/lib/mcp/tools/qualityHubTools.js +219 -70
  86. package/lib/mcp/tools/qualityHubTools.js.map +1 -1
  87. package/lib/mcp/tools/rcaTools.d.ts +3 -2
  88. package/lib/mcp/tools/rcaTools.js +189 -56
  89. package/lib/mcp/tools/rcaTools.js.map +1 -1
  90. package/lib/mcp/tools/sfSpawn.d.ts +25 -3
  91. package/lib/mcp/tools/sfSpawn.js +154 -6
  92. package/lib/mcp/tools/sfSpawn.js.map +1 -1
  93. package/lib/mcp/tools/testCaseGenerate.js +226 -78
  94. package/lib/mcp/tools/testCaseGenerate.js.map +1 -1
  95. package/lib/mcp/tools/testCaseStepTools.d.ts +4 -0
  96. package/lib/mcp/tools/testCaseStepTools.js +226 -0
  97. package/lib/mcp/tools/testCaseStepTools.js.map +1 -0
  98. package/lib/mcp/tools/testCaseValidate.d.ts +11 -0
  99. package/lib/mcp/tools/testCaseValidate.js +307 -46
  100. package/lib/mcp/tools/testCaseValidate.js.map +1 -1
  101. package/lib/mcp/tools/testPlanTools.d.ts +1 -0
  102. package/lib/mcp/tools/testPlanTools.js +299 -59
  103. package/lib/mcp/tools/testPlanTools.js.map +1 -1
  104. package/lib/mcp/tools/testPlanValidate.js +56 -18
  105. package/lib/mcp/tools/testPlanValidate.js.map +1 -1
  106. package/lib/mcp/tools/testSuiteValidate.js +37 -11
  107. package/lib/mcp/tools/testSuiteValidate.js.map +1 -1
  108. package/lib/mcp/update/updateChecker.d.ts +14 -0
  109. package/lib/mcp/update/updateChecker.js +228 -0
  110. package/lib/mcp/update/updateChecker.js.map +1 -0
  111. package/lib/services/auth/credentials.d.ts +21 -0
  112. package/lib/services/auth/credentials.js +75 -0
  113. package/lib/services/auth/credentials.js.map +1 -0
  114. package/lib/services/auth/loginFlow.d.ts +68 -0
  115. package/lib/services/auth/loginFlow.js +216 -0
  116. package/lib/services/auth/loginFlow.js.map +1 -0
  117. package/lib/services/projectValidation.d.ts +5 -2
  118. package/lib/services/projectValidation.js +83 -31
  119. package/lib/services/projectValidation.js.map +1 -1
  120. package/lib/services/qualityHub/client.d.ts +161 -0
  121. package/lib/services/qualityHub/client.js +226 -0
  122. package/lib/services/qualityHub/client.js.map +1 -0
  123. package/messages/sf.provar.auth.clear.md +16 -0
  124. package/messages/sf.provar.auth.login.md +31 -0
  125. package/messages/sf.provar.auth.rotate.md +23 -0
  126. package/messages/sf.provar.auth.status.md +16 -0
  127. package/messages/sf.provar.mcp.start.md +83 -48
  128. package/oclif.manifest.json +299 -2
  129. package/package.json +23 -12
@@ -10,30 +10,31 @@ import { makeError, makeRequestId } from '../schemas/common.js';
10
10
  import { log } from '../logging/logger.js';
11
11
  import { runSfCommand, soqlEscape } from './sfSpawn.js';
12
12
  // ── SF CLI helpers ─────────────────────────────────────────────────────────────
13
- function runSfArgs(args) {
14
- const { stdout, exitCode } = runSfCommand(args);
15
- return { stdout, exitCode };
13
+ function runSfArgs(args, sfPath) {
14
+ const { stdout, stderr, exitCode } = runSfCommand(args, sfPath);
15
+ return { stdout, stderr, exitCode };
16
16
  }
17
- function runQuery(soql, targetOrg) {
18
- const { stdout } = runSfArgs([
19
- 'data', 'query',
20
- '--query', soql,
21
- '--target-org', targetOrg,
22
- '--json',
23
- ]);
17
+ function formatSfCommandError(action, exitCode, stderr, stdout) {
18
+ const details = [stderr?.trim(), stdout?.trim()].filter(Boolean).join('\n');
19
+ return details
20
+ ? `${action} failed with exit code ${exitCode}: ${details}`
21
+ : `${action} failed with exit code ${exitCode}`;
22
+ }
23
+ function runQuery(soql, targetOrg, sfPath) {
24
+ const { stdout, stderr, exitCode } = runSfArgs(['data', 'query', '--query', soql, '--target-org', targetOrg, '--json'], sfPath);
25
+ if (exitCode !== 0) {
26
+ throw new Error(formatSfCommandError('Salesforce query', exitCode, stderr, stdout));
27
+ }
24
28
  return JSON.parse(stdout);
25
29
  }
26
- function createRecord(sobject, values, targetOrg) {
27
- const { stdout } = runSfArgs([
28
- 'data', 'create', 'record',
29
- '--sobject', sobject,
30
- '--values', values,
31
- '--target-org', targetOrg,
32
- '--json',
33
- ]);
30
+ function createRecord(sobject, values, targetOrg, sfPath) {
31
+ const { stdout, stderr, exitCode } = runSfArgs(['data', 'create', 'record', '--sobject', sobject, '--values', values, '--target-org', targetOrg, '--json'], sfPath);
32
+ if (exitCode !== 0) {
33
+ throw new Error(formatSfCommandError(`Failed to create ${sobject}`, exitCode, stderr, stdout));
34
+ }
34
35
  const parsed = JSON.parse(stdout);
35
36
  if (!parsed.result?.success) {
36
- throw new Error(`Failed to create ${sobject}: ${stdout}`);
37
+ throw new Error(formatSfCommandError(`Failed to create ${sobject}`, exitCode, stderr, stdout));
37
38
  }
38
39
  return parsed.result.id;
39
40
  }
@@ -41,14 +42,11 @@ function createRecord(sobject, values, targetOrg) {
41
42
  function safeText(value, maxLen = 200) {
42
43
  if (value === null || value === undefined)
43
44
  return '';
44
- return String(value)
45
- .replace(/"/g, "'")
46
- .replace(/\n|\r/g, ' ')
47
- .substring(0, maxLen);
45
+ return String(value).replace(/"/g, "'").replace(/\n|\r/g, ' ').substring(0, maxLen);
48
46
  }
49
- export function createDefectsForRun(runId, targetOrg, failedTestFilter) {
47
+ export function createDefectsForRun(runId, targetOrg, failedTestFilter, sfPath) {
50
48
  // Step 1: resolve job record ID from tracking ID
51
- const jobQuery = runQuery(`SELECT Id FROM provar__Test_Plan_Schedule_Job__c WHERE provar__Tracking_Id__c = '${soqlEscape(runId)}'`, targetOrg);
49
+ const jobQuery = runQuery(`SELECT Id FROM provar__Test_Plan_Schedule_Job__c WHERE provar__Tracking_Id__c = '${soqlEscape(runId)}'`, targetOrg, sfPath);
52
50
  if (jobQuery.result.totalSize === 0) {
53
51
  throw new Error(`No Test_Plan_Schedule_Job__c found with Tracking_Id__c = '${runId}'`);
54
52
  }
@@ -57,7 +55,7 @@ export function createDefectsForRun(runId, targetOrg, failedTestFilter) {
57
55
  const cycleQuery = runQuery(`SELECT Id, provar__Web_Browser__c, provar__Browser_Version__c, provar__Environment_Text__c
58
56
  FROM provar__Test_Cycle__c
59
57
  WHERE provar__Test_Plan_Schedule_Job__c = '${soqlEscape(jobId)}'
60
- LIMIT 1`, targetOrg);
58
+ LIMIT 1`, targetOrg, sfPath);
61
59
  const cycle = cycleQuery.result.records[0] ?? {};
62
60
  const browser = safeText(cycle['provar__Web_Browser__c'], 100);
63
61
  const browserVersion = safeText(cycle['provar__Browser_Version__c'], 100);
@@ -70,7 +68,7 @@ export function createDefectsForRun(runId, targetOrg, failedTestFilter) {
70
68
  const execQuery = runQuery(`SELECT Id, provar__Test_Case__c, provar__Tester__c
71
69
  FROM provar__Test_Execution__c
72
70
  WHERE provar__Test_Cycle__c = '${soqlEscape(cycleId)}'
73
- AND provar__Status__c = 'Failed'`, targetOrg);
71
+ AND provar__Status__c = 'Failed'`, targetOrg, sfPath);
74
72
  if (execQuery.result.totalSize === 0) {
75
73
  return { created: [], skipped: 0, message: 'No failed test executions found for this run.' };
76
74
  }
@@ -91,7 +89,7 @@ export function createDefectsForRun(runId, targetOrg, failedTestFilter) {
91
89
  WHERE provar__Test_Execution__c = '${soqlEscape(executionId)}'
92
90
  AND provar__Result__c = 'Fail'
93
91
  ORDER BY provar__Sequence_No__c ASC
94
- LIMIT 1`, targetOrg);
92
+ LIMIT 1`, targetOrg, sfPath);
95
93
  const step = stepQuery.result.records[0] ?? {};
96
94
  const stepExecutionId = step['Id'] ?? '';
97
95
  const stepId = String(step['provar__Test_Step__c'] ?? '');
@@ -126,17 +124,17 @@ export function createDefectsForRun(runId, targetOrg, failedTestFilter) {
126
124
  const defectValues = `Name="TC Failure: ${safeText(testCaseId, 100)}" ` +
127
125
  `provar__Description__c="${safeText(descLines, 2000)}" ` +
128
126
  'provar__Status__c="Open"';
129
- const defectId = createRecord('provar__Defect__c', defectValues, targetOrg);
127
+ const defectId = createRecord('provar__Defect__c', defectValues, targetOrg, sfPath);
130
128
  // Step 5b: link TC → Defect
131
129
  const tcDefectValues = `provar__Defect__c="${defectId}" ` +
132
130
  `provar__Test_Case__c="${testCaseId}"` +
133
131
  (stepId ? ` provar__Test_Step__c="${stepId}"` : '');
134
- const tcDefectId = createRecord('provar__Test_Case_Defect__c', tcDefectValues, targetOrg);
132
+ const tcDefectId = createRecord('provar__Test_Case_Defect__c', tcDefectValues, targetOrg, sfPath);
135
133
  // Step 5c: link Execution → Defect (with step execution if available)
136
134
  const execDefectValues = `provar__Defect__c="${defectId}" ` +
137
135
  `provar__Test_Execution__c="${executionId}"` +
138
136
  (stepExecutionId ? ` provar__Test_Step_Execution__c="${stepExecutionId}"` : '');
139
- const execDefectId = createRecord('provar__Test_Execution_Defect__c', execDefectValues, targetOrg);
137
+ const execDefectId = createRecord('provar__Test_Execution_Defect__c', execDefectValues, targetOrg, sfPath);
140
138
  log('info', 'defect created', { defectId, tcDefectId, execDefectId, executionId });
141
139
  created.push({ defectId, tcDefectId, execDefectId, executionId, testCaseId });
142
140
  }
@@ -149,26 +147,34 @@ export function createDefectsForRun(runId, targetOrg, failedTestFilter) {
149
147
  }
150
148
  // ── Tool registration ──────────────────────────────────────────────────────────
151
149
  export function registerQualityHubDefectCreate(server) {
152
- server.tool('provar.qualityhub.defect.create', [
153
- 'Create Defect__c records in Quality Hub for failed test executions in a given run.',
154
- 'Queries the run by Tracking_Id__c, finds failed Test_Execution__c records, creates a',
155
- 'Defect__c per failure (with description, step, browser, environment, tester), and links',
156
- 'it via Test_Case_Defect__c and Test_Execution_Defect__c junction records.',
157
- 'If Jira or ADO sync is configured in Quality Hub, defects sync to those systems automatically.',
158
- ].join(' '), {
159
- run_id: z
160
- .string()
161
- .describe('Test run Tracking_Id__c value returned by provar.qualityhub.testrun'),
162
- target_org: z.string().describe('SF org alias or username for the Quality Hub org'),
163
- failed_tests: z
164
- .array(z.string())
165
- .optional()
166
- .describe('Optional filter — list of Test_Case__c record ID substrings to restrict defect creation to specific failures'),
167
- }, ({ run_id, target_org, failed_tests }) => {
150
+ server.registerTool('provar_qualityhub_defect_create', {
151
+ title: 'Create Defects',
152
+ description: [
153
+ 'Create Defect__c records in Quality Hub for failed test executions in a given run.',
154
+ 'Queries the run by Tracking_Id__c, finds failed Test_Execution__c records, creates a',
155
+ 'Defect__c per failure (with description, step, browser, environment, tester), and links',
156
+ 'it via Test_Case_Defect__c and Test_Execution_Defect__c junction records.',
157
+ 'If Jira or ADO sync is configured in Quality Hub, defects sync to those systems automatically.',
158
+ ].join(' '),
159
+ inputSchema: {
160
+ run_id: z.string().describe('Test run Tracking_Id__c value returned by provar_qualityhub_testrun'),
161
+ target_org: z.string().describe('SF org alias or username for the Quality Hub org'),
162
+ failed_tests: z
163
+ .array(z.string())
164
+ .optional()
165
+ .describe('Optional filter list of Test_Case__c record ID substrings to restrict defect creation to specific failures'),
166
+ sf_path: z
167
+ .string()
168
+ .optional()
169
+ .describe('Path to the sf CLI executable when not in PATH ' +
170
+ '(e.g. "C:\\\\Program Files\\\\sf\\\\bin\\\\sf.cmd" for the Windows standalone installer). ' +
171
+ 'Leave unset to use auto-discovery.'),
172
+ },
173
+ }, ({ run_id, target_org, failed_tests, sf_path }) => {
168
174
  const requestId = makeRequestId();
169
- log('info', 'provar.qualityhub.defect.create', { requestId, run_id, target_org });
175
+ log('info', 'provar_qualityhub_defect_create', { requestId, run_id, target_org });
170
176
  try {
171
- const result = createDefectsForRun(run_id, target_org, failed_tests);
177
+ const result = createDefectsForRun(run_id, target_org, failed_tests, sf_path);
172
178
  const response = { requestId, ...result };
173
179
  return {
174
180
  content: [{ type: 'text', text: JSON.stringify(response) }],
@@ -177,7 +183,7 @@ export function registerQualityHubDefectCreate(server) {
177
183
  }
178
184
  catch (err) {
179
185
  const error = err;
180
- log('error', 'provar.qualityhub.defect.create failed', {
186
+ log('error', 'provar_qualityhub_defect_create failed', {
181
187
  requestId,
182
188
  error: error.message,
183
189
  });
@@ -1 +1 @@
1
- {"version":3,"file":"defectTools.js","sourceRoot":"","sources":["../../../src/mcp/tools/defectTools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,8BAA8B;AAC9B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAiCxD,kFAAkF;AAElF,SAAS,SAAS,CAAC,IAAc;IAC/B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,SAAiB;IAC/C,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;QAC3B,MAAM,EAAE,OAAO;QACf,SAAS,EAAE,IAAI;QACf,cAAc,EAAE,SAAS;QACzB,QAAQ;KACT,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAoB,CAAC;AAC/C,CAAC;AAED,SAAS,YAAY,CAAC,OAAe,EAAE,MAAc,EAAE,SAAiB;IACtE,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;QAC3B,MAAM,EAAE,QAAQ,EAAE,QAAQ;QAC1B,WAAW,EAAE,OAAO;QACpB,UAAU,EAAE,MAAM;QAClB,cAAc,EAAE,SAAS;QACzB,QAAQ;KACT,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAqB,CAAC;IACtD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,KAAK,MAAM,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;AAC1B,CAAC;AAED,kFAAkF;AAClF,SAAS,QAAQ,CAAC,KAAc,EAAE,MAAM,GAAG,GAAG;IAC5C,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACrD,OAAO,MAAM,CAAC,KAAK,CAAC;SACjB,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;SAClB,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAC1B,CAAC;AAYD,MAAM,UAAU,mBAAmB,CACjC,KAAa,EACb,SAAiB,EACjB,gBAA2B;IAE3B,iDAAiD;IACjD,MAAM,QAAQ,GAAG,QAAQ,CACvB,oFAAoF,UAAU,CAAC,KAAK,CAAC,GAAG,EACxG,SAAS,CACV,CAAC;IACF,IAAI,QAAQ,CAAC,MAAM,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,6DAA6D,KAAK,GAAG,CAAC,CAAC;IACzF,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE5C,qEAAqE;IACrE,MAAM,UAAU,GAAG,QAAQ,CACzB;;kDAE8C,UAAU,CAAC,KAAK,CAAC;aACtD,EACT,SAAS,CACV,CAAC;IACF,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjD,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,wBAAwB,CAAC,EAAE,GAAG,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,QAAQ,CAAC,KAAK,CAAC,4BAA4B,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1E,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,6BAA6B,CAAC,EAAE,GAAG,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAE1C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,gDAAgD;IAChD,MAAM,SAAS,GAAG,QAAQ,CACxB;;sCAEkC,UAAU,CAAC,OAAO,CAAC;sCACnB,EAClC,SAAS,CACV,CAAC;IAEF,IAAI,SAAS,CAAC,MAAM,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,+CAA+C,EAAE,CAAC;IAC/F,CAAC;IAED,IAAI,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;IAE1C,oGAAoG;IACpG,uEAAuE;IACvE,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpD,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACnC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAC7H,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAyB,EAAE,CAAC;IAEzC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,GAAG,CAAC,CAAC;QAExD,8CAA8C;QAC9C,MAAM,SAAS,GAAG,QAAQ,CACxB;;4CAEsC,UAAU,CAAC,WAAW,CAAC;;;eAGpD,EACT,SAAS,CACV,CAAC;QAEF,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,GAAG,CAAC,CAAC;QAC/D,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,0BAA0B,CAAC,EAAE,GAAG,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;QAE5D,MAAM,GAAG,GAAmB;YAC1B,WAAW;YACX,UAAU;YACV,MAAM;YACN,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC;YACxC,MAAM;YACN,UAAU;YACV,UAAU;YACV,OAAO;YACP,OAAO;YACP,cAAc;YACd,WAAW,EAAE,eAAe;SAC7B,CAAC;QAEF,4BAA4B;QAC5B,MAAM,SAAS,GAAG;YAChB,YAAY,GAAG,CAAC,UAAU,IAAI,gCAAgC,EAAE;YAChE,QAAQ,GAAG,CAAC,OAAO,KAAK,GAAG,CAAC,UAAU,EAAE;YACxC,YAAY,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE;YACtD,gBAAgB,GAAG,CAAC,WAAW,EAAE;YACjC,WAAW,GAAG,CAAC,MAAM,EAAE;YACvB,sBAAsB,GAAG,CAAC,WAAW,EAAE;YACvC,WAAW,KAAK,EAAE;SACnB;aACE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;aACvC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEf,MAAM,YAAY,GAChB,qBAAqB,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI;YAClD,2BAA2B,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI;YACxD,0BAA0B,CAAC;QAE7B,MAAM,QAAQ,GAAG,YAAY,CAAC,mBAAmB,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAE5E,4BAA4B;QAC5B,MAAM,cAAc,GAClB,sBAAsB,QAAQ,IAAI;YAClC,yBAAyB,UAAU,GAAG;YACtC,CAAC,MAAM,CAAC,CAAC,CAAC,0BAA0B,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAEtD,MAAM,UAAU,GAAG,YAAY,CAAC,6BAA6B,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC;QAE1F,sEAAsE;QACtE,MAAM,gBAAgB,GACpB,sBAAsB,QAAQ,IAAI;YAClC,8BAA8B,WAAW,GAAG;YAC5C,CAAC,eAAe,CAAC,CAAC,CAAC,oCAAoC,eAAe,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAElF,MAAM,YAAY,GAAG,YAAY,CAC/B,kCAAkC,EAClC,gBAAgB,EAChB,SAAS,CACV,CAAC;QAEF,GAAG,CAAC,MAAM,EAAE,gBAAgB,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;QAEnF,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,QAAQ,GACZ,gGAAgG,CAAC;IACnG,OAAO;QACL,OAAO;QACP,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM;QACpD,OAAO,EAAE,WAAW,OAAO,CAAC,MAAM,sBAAsB,KAAK,KAAK,QAAQ,EAAE;KAC7E,CAAC;AACJ,CAAC;AAED,kFAAkF;AAElF,MAAM,UAAU,8BAA8B,CAAC,MAAiB;IAC9D,MAAM,CAAC,IAAI,CACT,iCAAiC,EACjC;QACE,oFAAoF;QACpF,sFAAsF;QACtF,yFAAyF;QACzF,2EAA2E;QAC3E,gGAAgG;KACjG,CAAC,IAAI,CAAC,GAAG,CAAC,EACX;QACE,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,CAAC,qEAAqE,CAAC;QAClF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kDAAkD,CAAC;QACnF,YAAY,EAAE,CAAC;aACZ,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,EAAE;aACV,QAAQ,CACP,8GAA8G,CAC/G;KACJ,EACD,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE;QACvC,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;QAClC,GAAG,CAAC,MAAM,EAAE,iCAAiC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QAElF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;YACrE,MAAM,QAAQ,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,CAAC;YAC1C,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACpE,iBAAiB,EAAE,QAAQ;aAC5B,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,GAAgC,CAAC;YAC/C,GAAG,CAAC,OAAO,EAAE,wCAAwC,EAAE;gBACrD,SAAS;gBACT,KAAK,EAAE,KAAK,CAAC,OAAO;aACrB,CAAC,CAAC;YACH,OAAO;gBACL,OAAO,EAAE,IAAa;gBACtB,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB,SAAS,CAAC,KAAK,CAAC,IAAI,IAAI,sBAAsB,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CACjF;qBACF;iBACF;aACF,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAiB;IACtD,8BAA8B,CAAC,MAAM,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"defectTools.js","sourceRoot":"","sources":["../../../src/mcp/tools/defectTools.ts"],"names":[],"mappings":"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"}
@@ -36,7 +36,7 @@ export interface ProjectContext {
36
36
  secretsPasswordSet?: boolean;
37
37
  /**
38
38
  * Number of keys in the .secrets file whose values are NOT wrapped in ENC1().
39
- * Populated by provar.project.inspect → secrets_validation.unencrypted_key_count.
39
+ * Populated by provar_project_inspect → secrets_validation.unencrypted_key_count.
40
40
  * Any value > 0 triggers PROJ-ENC-001.
41
41
  */
42
42
  unencrypted_secret_count?: number;
@@ -10,33 +10,108 @@ import { XMLParser } from 'fast-xml-parser';
10
10
  import { validateTestCase } from './testCaseValidate.js';
11
11
  // ── Rule registry (ported from batch_validator/handler.py) ───────────────────
12
12
  const RULE_REGISTRY = {
13
- 'SUITE-EMPTY-001': { name: 'Empty Test Suite', description: 'A test suite must contain at least one test case or child suite.' },
14
- 'SUITE-DUP-001': { name: 'Duplicate Test Case Name in Suite', description: 'Test case names within a suite must be unique.' },
15
- 'SUITE-DUP-002': { name: 'Duplicate Child Suite Name', description: 'Child suite names within a parent suite must be unique.' },
16
- 'SUITE-SIZE-001': { name: 'Oversized Test Suite', description: 'A test suite should contain no more than 75 test cases.' },
17
- 'SUITE-NAMING-001': { name: 'Inconsistent Child Suite Naming', description: 'All child suite names should follow a consistent naming convention.' },
18
- 'SUITE-NAMING-002': { name: 'Inconsistent Test Case Naming', description: 'All test case names within a suite should follow a consistent naming convention.' },
13
+ 'SUITE-EMPTY-001': {
14
+ name: 'Empty Test Suite',
15
+ description: 'A test suite must contain at least one test case or child suite.',
16
+ },
17
+ 'SUITE-DUP-001': {
18
+ name: 'Duplicate Test Case Name in Suite',
19
+ description: 'Test case names within a suite must be unique.',
20
+ },
21
+ 'SUITE-DUP-002': {
22
+ name: 'Duplicate Child Suite Name',
23
+ description: 'Child suite names within a parent suite must be unique.',
24
+ },
25
+ 'SUITE-SIZE-001': {
26
+ name: 'Oversized Test Suite',
27
+ description: 'A test suite should contain no more than 75 test cases.',
28
+ },
29
+ 'SUITE-NAMING-001': {
30
+ name: 'Inconsistent Child Suite Naming',
31
+ description: 'All child suite names should follow a consistent naming convention.',
32
+ },
33
+ 'SUITE-NAMING-002': {
34
+ name: 'Inconsistent Test Case Naming',
35
+ description: 'All test case names within a suite should follow a consistent naming convention.',
36
+ },
19
37
  'PLAN-EMPTY-001': { name: 'Empty Test Plan', description: 'A test plan must contain at least one test suite.' },
20
- 'PLAN-DUP-001': { name: 'Duplicate Suite Name in Plan', description: 'Suite names within a test plan must be unique.' },
21
- 'PLAN-META-001': { name: 'Missing Plan Objectives', description: 'Test plans should define clear testing objectives. This field is configured in the Provar Quality Hub app (not stored in local project files).' },
22
- 'PLAN-META-002': { name: 'Missing In-Scope Definition', description: 'Test plans should specify which features are in scope. This field is configured in the Provar Quality Hub app (not stored in local project files).' },
23
- 'PLAN-META-003': { name: 'Missing Testing Methodology', description: 'Test plans should document the testing methodology. This field is configured in the Provar Quality Hub app (not stored in local project files).' },
24
- 'PLAN-META-004': { name: 'Missing Acceptance Criteria', description: 'Test plans should define acceptance criteria or an acceptable pass rate. This field is configured in the Provar Quality Hub app (not stored in local project files).' },
25
- 'PLAN-META-005': { name: 'Missing Test Environments', description: 'Test plans should specify the target test environments. This field is configured in the Provar Quality Hub app (not stored in local project files).' },
26
- 'PLAN-META-006': { name: 'Missing Test Data Strategy', description: 'Test plans should document how test data will be prepared and cleaned up. This field is configured in the Provar Quality Hub app (not stored in local project files).' },
27
- 'PLAN-META-007': { name: 'Missing Risk Assessment', description: 'Test plans should identify potential risks and mitigations. This field is configured in the Provar Quality Hub app (not stored in local project files).' },
28
- 'PLAN-SIZE-001': { name: 'Oversized Test Plan', description: 'A test plan should contain no more than 20 test suites.' },
29
- 'PLAN-NAMING-001': { name: 'Inconsistent Suite Naming in Plan', description: 'All suite names within a test plan should follow a consistent naming convention.' },
38
+ 'PLAN-DUP-001': {
39
+ name: 'Duplicate Suite Name in Plan',
40
+ description: 'Suite names within a test plan must be unique.',
41
+ },
42
+ 'PLAN-META-001': {
43
+ name: 'Missing Plan Objectives',
44
+ description: 'Test plans should define clear testing objectives. This field is configured in the Provar Quality Hub app (not stored in local project files).',
45
+ },
46
+ 'PLAN-META-002': {
47
+ name: 'Missing In-Scope Definition',
48
+ description: 'Test plans should specify which features are in scope. This field is configured in the Provar Quality Hub app (not stored in local project files).',
49
+ },
50
+ 'PLAN-META-003': {
51
+ name: 'Missing Testing Methodology',
52
+ description: 'Test plans should document the testing methodology. This field is configured in the Provar Quality Hub app (not stored in local project files).',
53
+ },
54
+ 'PLAN-META-004': {
55
+ name: 'Missing Acceptance Criteria',
56
+ description: 'Test plans should define acceptance criteria or an acceptable pass rate. This field is configured in the Provar Quality Hub app (not stored in local project files).',
57
+ },
58
+ 'PLAN-META-005': {
59
+ name: 'Missing Test Environments',
60
+ description: 'Test plans should specify the target test environments. This field is configured in the Provar Quality Hub app (not stored in local project files).',
61
+ },
62
+ 'PLAN-META-006': {
63
+ name: 'Missing Test Data Strategy',
64
+ description: 'Test plans should document how test data will be prepared and cleaned up. This field is configured in the Provar Quality Hub app (not stored in local project files).',
65
+ },
66
+ 'PLAN-META-007': {
67
+ name: 'Missing Risk Assessment',
68
+ description: 'Test plans should identify potential risks and mitigations. This field is configured in the Provar Quality Hub app (not stored in local project files).',
69
+ },
70
+ 'PLAN-SIZE-001': {
71
+ name: 'Oversized Test Plan',
72
+ description: 'A test plan should contain no more than 20 test suites.',
73
+ },
74
+ 'PLAN-NAMING-001': {
75
+ name: 'Inconsistent Suite Naming in Plan',
76
+ description: 'All suite names within a test plan should follow a consistent naming convention.',
77
+ },
30
78
  'PROJ-EMPTY-001': { name: 'Empty Project', description: 'A project must contain at least one test plan.' },
31
- 'PROJ-DUP-001': { name: 'Duplicate Test Case Name Across Project', description: 'Test case names must be unique across the entire project.' },
32
- 'PROJ-DUP-002': { name: 'Duplicate Plan Name in Project', description: 'Test plan names within a project must be unique.' },
33
- 'PROJ-CALLABLE-001': { name: 'Unresolved caseCall Reference', description: 'All caseCall references must point to existing test cases in the project.' },
34
- 'PROJ-CALLABLE-002': { name: 'Missing Callable Test Case', description: 'All callable tests referenced by caseCall must exist in the project.' },
35
- 'PROJ-CONN-001': { name: 'Undefined Connection Name', description: 'All connection names used in test cases must be defined in the project context.' },
36
- 'PROJ-ENV-001': { name: 'Duplicate Environment Name', description: 'Environment names within a project must be unique.' },
37
- 'PROJ-ENV-002': { name: 'Invalid Environment Name', description: 'Environment names must contain only letters, digits, and underscores.' },
38
- 'PROJ-SECRET-001': { name: 'Missing Secrets Password', description: 'A Provar Secrets Password must be configured to protect sensitive test data.' },
39
- 'PROJ-ENC-001': { name: 'Unencrypted Credentials in .secrets', description: 'All values in the .secrets file must be wrapped in ENC1() encryption. Plaintext credentials are a critical security risk.' },
79
+ 'PROJ-DUP-001': {
80
+ name: 'Duplicate Test Case Name Across Project',
81
+ description: 'Test case names must be unique across the entire project.',
82
+ },
83
+ 'PROJ-DUP-002': {
84
+ name: 'Duplicate Plan Name in Project',
85
+ description: 'Test plan names within a project must be unique.',
86
+ },
87
+ 'PROJ-CALLABLE-001': {
88
+ name: 'Unresolved caseCall Reference',
89
+ description: 'All caseCall references must point to existing test cases in the project.',
90
+ },
91
+ 'PROJ-CALLABLE-002': {
92
+ name: 'Missing Callable Test Case',
93
+ description: 'All callable tests referenced by caseCall must exist in the project.',
94
+ },
95
+ 'PROJ-CONN-001': {
96
+ name: 'Undefined Connection Name',
97
+ description: 'All connection names used in test cases must be defined in the project context.',
98
+ },
99
+ 'PROJ-ENV-001': {
100
+ name: 'Duplicate Environment Name',
101
+ description: 'Environment names within a project must be unique.',
102
+ },
103
+ 'PROJ-ENV-002': {
104
+ name: 'Invalid Environment Name',
105
+ description: 'Environment names must contain only letters, digits, and underscores.',
106
+ },
107
+ 'PROJ-SECRET-001': {
108
+ name: 'Missing Secrets Password',
109
+ description: 'A Provar Secrets Password must be configured to protect sensitive test data.',
110
+ },
111
+ 'PROJ-ENC-001': {
112
+ name: 'Unencrypted Credentials in .secrets',
113
+ description: 'All values in the .secrets file must be wrapped in ENC1() encryption. Plaintext credentials are a critical security risk.',
114
+ },
40
115
  };
41
116
  // ── Violation builder ─────────────────────────────────────────────────────────
42
117
  function makeViolation(rule_id, category, severity, weight, message, recommendation, applies_to, affected_files) {
@@ -58,7 +133,10 @@ function makeViolation(rule_id, category, severity, weight, message, recommendat
58
133
  }
59
134
  // ── Scoring helpers ───────────────────────────────────────────────────────────
60
135
  const SEVERITY_MULTIPLIER = {
61
- critical: 1.0, major: 0.75, minor: 0.5, info: 0.25,
136
+ critical: 1.0,
137
+ major: 0.75,
138
+ minor: 0.5,
139
+ info: 0.25,
62
140
  };
63
141
  export function computeViolationDeduction(violations) {
64
142
  let total = 0;
@@ -108,7 +186,9 @@ export function checkNamingConsistency(names, contextLabel, level, ruleId) {
108
186
  .sort()
109
187
  .map(([s, items]) => `${s}: "${items[0]}"`)
110
188
  .join(', ');
111
- return [makeViolation(ruleId, 'NamingConventions', 'info', 2, `Inconsistent naming conventions in ${contextLabel}: ${styleSummary}`, `Adopt a single naming convention across all items. Examples found: ${examples}`, [level])];
189
+ return [
190
+ makeViolation(ruleId, 'NamingConventions', 'info', 2, `Inconsistent naming conventions in ${contextLabel}: ${styleSummary}`, `Adopt a single naming convention across all items. Examples found: ${examples}`, [level]),
191
+ ];
112
192
  }
113
193
  // ── Test case validation (adapts existing validator to hierarchy result) ───────
114
194
  export function validateHierarchyTestCase(tc, qualityThreshold) {
@@ -142,12 +222,14 @@ export function validateHierarchyTestCase(tc, qualityThreshold) {
142
222
  error_count: 1,
143
223
  warning_count: 0,
144
224
  step_count: 0,
145
- issues: [{
225
+ issues: [
226
+ {
146
227
  rule_id: 'TC_000',
147
228
  severity: 'ERROR',
148
229
  message: `Unexpected error: ${e.message}`,
149
230
  applies_to: 'document',
150
- }],
231
+ },
232
+ ],
151
233
  best_practices_violations: [],
152
234
  };
153
235
  }
@@ -184,9 +266,11 @@ function checkSuiteDuplicates(suiteName, childSuites, childCases) {
184
266
  }
185
267
  function checkSuiteSize(suiteName, data) {
186
268
  const explicit = data.test_case_count;
187
- const count = explicit ?? (data.test_cases?.length ?? 0);
269
+ const count = explicit ?? data.test_cases?.length ?? 0;
188
270
  if (count > 75) {
189
- return [makeViolation('SUITE-SIZE-001', 'SuiteStructure', 'minor', 2, `Test suite "${suiteName}" contains ${count} test cases (recommended maximum: 75)`, 'Break large suites into smaller, focused child suites', ['TestSuite'])];
271
+ return [
272
+ makeViolation('SUITE-SIZE-001', 'SuiteStructure', 'minor', 2, `Test suite "${suiteName}" contains ${count} test cases (recommended maximum: 75)`, 'Break large suites into smaller, focused child suites', ['TestSuite']),
273
+ ];
190
274
  }
191
275
  return [];
192
276
  }
@@ -203,10 +287,7 @@ export function validateSuite(data, qualityThreshold) {
203
287
  ];
204
288
  const suiteResults = childSuites.map((cs) => validateSuite(cs, qualityThreshold));
205
289
  const caseResults = childCases.map((tc) => validateHierarchyTestCase(tc, qualityThreshold));
206
- const scores = [
207
- ...caseResults.map((r) => r.quality_score),
208
- ...suiteResults.map((r) => r.quality_score),
209
- ];
290
+ const scores = [...caseResults.map((r) => r.quality_score), ...suiteResults.map((r) => r.quality_score)];
210
291
  const quality_score = scores.length
211
292
  ? Math.max(0, Math.round((childAvg(scores) - computeViolationDeduction(violations)) * 100) / 100)
212
293
  : 0;
@@ -263,10 +344,7 @@ export function validatePlan(data, qualityThreshold) {
263
344
  violations.push(...checkNamingConsistency(childSuites.map((s) => s.name), `plan "${planName}"`, 'TestPlan', 'PLAN-NAMING-001'));
264
345
  const suiteResults = childSuites.map((s) => validateSuite(s, qualityThreshold));
265
346
  const caseResults = childCases.map((tc) => validateHierarchyTestCase(tc, qualityThreshold));
266
- const scores = [
267
- ...suiteResults.map((r) => r.quality_score),
268
- ...caseResults.map((r) => r.quality_score),
269
- ];
347
+ const scores = [...suiteResults.map((r) => r.quality_score), ...caseResults.map((r) => r.quality_score)];
270
348
  const quality_score = scores.length
271
349
  ? Math.max(0, Math.round((childAvg(scores) - computeViolationDeduction(violations)) * 100) / 100)
272
350
  : 0;
@@ -319,7 +397,10 @@ function checkCaseCalls(registry, diskTestCaseNames = new Set()) {
319
397
  // Include all on-disk test cases (callables have no .testinstance so they're absent from
320
398
  // the plan-built registry — merging diskTestCaseNames prevents false PROJ-CALLABLE-001/002)
321
399
  const available = new Set([...Object.keys(registry), ...diskTestCaseNames]);
322
- const availableBase = new Set([...Object.keys(registry).map((n) => path.basename(n, path.extname(n))), ...diskTestCaseNames]);
400
+ const availableBase = new Set([
401
+ ...Object.keys(registry).map((n) => path.basename(n, path.extname(n))),
402
+ ...diskTestCaseNames,
403
+ ]);
323
404
  const calledPaths = new Set();
324
405
  // Group callers by missing callee — avoids N violations for the same missing test
325
406
  const missingCalleeCallers = new Map();
@@ -336,7 +417,9 @@ function checkCaseCalls(registry, diskTestCaseNames = new Set()) {
336
417
  if (!steps)
337
418
  continue;
338
419
  const rawCalls = steps['caseCall'];
339
- const calls = rawCalls ? (Array.isArray(rawCalls) ? rawCalls : [rawCalls]) : [];
420
+ const calls = rawCalls
421
+ ? (Array.isArray(rawCalls) ? rawCalls : [rawCalls])
422
+ : [];
340
423
  for (const call of calls) {
341
424
  const called = call['@_testCasePath']?.trim() ?? '';
342
425
  if (!called)
@@ -397,7 +480,9 @@ function checkConnectionConsistency(registry, ctx) {
397
480
  if (!steps)
398
481
  continue;
399
482
  const rawCalls = steps['apiCall'];
400
- const calls = rawCalls ? (Array.isArray(rawCalls) ? rawCalls : [rawCalls]) : [];
483
+ const calls = rawCalls
484
+ ? (Array.isArray(rawCalls) ? rawCalls : [rawCalls])
485
+ : [];
401
486
  for (const call of calls) {
402
487
  const conn = extractConnFromCall(call);
403
488
  if (conn && !defined.has(conn)) {
@@ -1 +1 @@
1
- {"version":3,"file":"hierarchyValidate.js","sourceRoot":"","sources":["../../../src/mcp/tools/hierarchyValidate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hierarchyValidate.js","sourceRoot":"","sources":["../../../src/mcp/tools/hierarchyValidate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { type ValidateFunction } from 'ajv/dist/2020.js';
2
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
3
+ import type { ServerConfig } from '../server.js';
4
+ import { type ValidationIssue } from '../schemas/common.js';
5
+ interface NitroXIssue extends ValidationIssue {
6
+ field?: string;
7
+ }
8
+ interface NitroXValidationResult {
9
+ valid: boolean;
10
+ score: number;
11
+ issue_count: number;
12
+ issues: NitroXIssue[];
13
+ }
14
+ type JsonObj = Record<string, unknown>;
15
+ /** Validate a parsed NitroX .po.json against hardcoded NX rules and the FactComponent JSON schema. */
16
+ export declare function validateNitroXContent(obj: JsonObj, schemaOverride?: ValidateFunction | null): NitroXValidationResult;
17
+ export declare function registerNitroXDiscover(server: McpServer): void;
18
+ export declare function registerNitroXRead(server: McpServer, config: ServerConfig): void;
19
+ export declare function registerNitroXValidate(server: McpServer, config: ServerConfig): void;
20
+ export declare function registerNitroXGenerate(server: McpServer, config: ServerConfig): void;
21
+ export declare function registerNitroXPatch(server: McpServer, config: ServerConfig): void;
22
+ export declare function registerAllNitroXTools(server: McpServer, config: ServerConfig): void;
23
+ export {};