@monoes/monomindcli 1.15.4 → 1.15.5

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 (105) hide show
  1. package/dist/src/mcp-client.d.ts.map +1 -1
  2. package/dist/src/mcp-client.js +7 -0
  3. package/dist/src/mcp-client.js.map +1 -1
  4. package/dist/src/mcp-tools/coherence/causal-infer.d.ts +15 -0
  5. package/dist/src/mcp-tools/coherence/causal-infer.d.ts.map +1 -0
  6. package/dist/src/mcp-tools/coherence/causal-infer.js +347 -0
  7. package/dist/src/mcp-tools/coherence/causal-infer.js.map +1 -0
  8. package/dist/src/mcp-tools/coherence/coherence-check.d.ts +15 -0
  9. package/dist/src/mcp-tools/coherence/coherence-check.d.ts.map +1 -0
  10. package/dist/src/mcp-tools/coherence/coherence-check.js +206 -0
  11. package/dist/src/mcp-tools/coherence/coherence-check.js.map +1 -0
  12. package/dist/src/mcp-tools/coherence/consensus-verify.d.ts +15 -0
  13. package/dist/src/mcp-tools/coherence/consensus-verify.d.ts.map +1 -0
  14. package/dist/src/mcp-tools/coherence/consensus-verify.js +303 -0
  15. package/dist/src/mcp-tools/coherence/consensus-verify.js.map +1 -0
  16. package/dist/src/mcp-tools/coherence/memory-gate.d.ts +15 -0
  17. package/dist/src/mcp-tools/coherence/memory-gate.d.ts.map +1 -0
  18. package/dist/src/mcp-tools/coherence/memory-gate.js +266 -0
  19. package/dist/src/mcp-tools/coherence/memory-gate.js.map +1 -0
  20. package/dist/src/mcp-tools/coherence/quantum-topology.d.ts +15 -0
  21. package/dist/src/mcp-tools/coherence/quantum-topology.d.ts.map +1 -0
  22. package/dist/src/mcp-tools/coherence/quantum-topology.js +406 -0
  23. package/dist/src/mcp-tools/coherence/quantum-topology.js.map +1 -0
  24. package/dist/src/mcp-tools/coherence/spectral-analyze.d.ts +15 -0
  25. package/dist/src/mcp-tools/coherence/spectral-analyze.d.ts.map +1 -0
  26. package/dist/src/mcp-tools/coherence/spectral-analyze.js +293 -0
  27. package/dist/src/mcp-tools/coherence/spectral-analyze.js.map +1 -0
  28. package/dist/src/mcp-tools/coherence/types.d.ts +277 -0
  29. package/dist/src/mcp-tools/coherence/types.d.ts.map +1 -0
  30. package/dist/src/mcp-tools/coherence/types.js +159 -0
  31. package/dist/src/mcp-tools/coherence/types.js.map +1 -0
  32. package/dist/src/mcp-tools/coherence-tools.d.ts +9 -0
  33. package/dist/src/mcp-tools/coherence-tools.d.ts.map +1 -0
  34. package/dist/src/mcp-tools/coherence-tools.js +25 -0
  35. package/dist/src/mcp-tools/coherence-tools.js.map +1 -0
  36. package/dist/src/mcp-tools/quality/chaos-resilience/chaos-inject.d.ts +163 -0
  37. package/dist/src/mcp-tools/quality/chaos-resilience/chaos-inject.d.ts.map +1 -0
  38. package/dist/src/mcp-tools/quality/chaos-resilience/chaos-inject.js +414 -0
  39. package/dist/src/mcp-tools/quality/chaos-resilience/chaos-inject.js.map +1 -0
  40. package/dist/src/mcp-tools/quality/coverage-analysis/analyze-coverage.d.ts +128 -0
  41. package/dist/src/mcp-tools/quality/coverage-analysis/analyze-coverage.d.ts.map +1 -0
  42. package/dist/src/mcp-tools/quality/coverage-analysis/analyze-coverage.js +375 -0
  43. package/dist/src/mcp-tools/quality/coverage-analysis/analyze-coverage.js.map +1 -0
  44. package/dist/src/mcp-tools/quality/coverage-analysis/prioritize-gaps.d.ts +161 -0
  45. package/dist/src/mcp-tools/quality/coverage-analysis/prioritize-gaps.d.ts.map +1 -0
  46. package/dist/src/mcp-tools/quality/coverage-analysis/prioritize-gaps.js +423 -0
  47. package/dist/src/mcp-tools/quality/coverage-analysis/prioritize-gaps.js.map +1 -0
  48. package/dist/src/mcp-tools/quality/coverage-analysis/track-trends.d.ts +165 -0
  49. package/dist/src/mcp-tools/quality/coverage-analysis/track-trends.d.ts.map +1 -0
  50. package/dist/src/mcp-tools/quality/coverage-analysis/track-trends.js +395 -0
  51. package/dist/src/mcp-tools/quality/coverage-analysis/track-trends.js.map +1 -0
  52. package/dist/src/mcp-tools/quality/defect-intelligence/analyze-root-cause.d.ts +165 -0
  53. package/dist/src/mcp-tools/quality/defect-intelligence/analyze-root-cause.d.ts.map +1 -0
  54. package/dist/src/mcp-tools/quality/defect-intelligence/analyze-root-cause.js +508 -0
  55. package/dist/src/mcp-tools/quality/defect-intelligence/analyze-root-cause.js.map +1 -0
  56. package/dist/src/mcp-tools/quality/defect-intelligence/find-similar-defects.d.ts +147 -0
  57. package/dist/src/mcp-tools/quality/defect-intelligence/find-similar-defects.d.ts.map +1 -0
  58. package/dist/src/mcp-tools/quality/defect-intelligence/find-similar-defects.js +391 -0
  59. package/dist/src/mcp-tools/quality/defect-intelligence/find-similar-defects.js.map +1 -0
  60. package/dist/src/mcp-tools/quality/defect-intelligence/predict-defects.d.ts +147 -0
  61. package/dist/src/mcp-tools/quality/defect-intelligence/predict-defects.d.ts.map +1 -0
  62. package/dist/src/mcp-tools/quality/defect-intelligence/predict-defects.js +422 -0
  63. package/dist/src/mcp-tools/quality/defect-intelligence/predict-defects.js.map +1 -0
  64. package/dist/src/mcp-tools/quality/quality-assessment/assess-readiness.d.ts +185 -0
  65. package/dist/src/mcp-tools/quality/quality-assessment/assess-readiness.d.ts.map +1 -0
  66. package/dist/src/mcp-tools/quality/quality-assessment/assess-readiness.js +437 -0
  67. package/dist/src/mcp-tools/quality/quality-assessment/assess-readiness.js.map +1 -0
  68. package/dist/src/mcp-tools/quality/quality-assessment/calculate-risk.d.ts +166 -0
  69. package/dist/src/mcp-tools/quality/quality-assessment/calculate-risk.d.ts.map +1 -0
  70. package/dist/src/mcp-tools/quality/quality-assessment/calculate-risk.js +410 -0
  71. package/dist/src/mcp-tools/quality/quality-assessment/calculate-risk.js.map +1 -0
  72. package/dist/src/mcp-tools/quality/quality-assessment/evaluate-quality-gate.d.ts +201 -0
  73. package/dist/src/mcp-tools/quality/quality-assessment/evaluate-quality-gate.d.ts.map +1 -0
  74. package/dist/src/mcp-tools/quality/quality-assessment/evaluate-quality-gate.js +363 -0
  75. package/dist/src/mcp-tools/quality/quality-assessment/evaluate-quality-gate.js.map +1 -0
  76. package/dist/src/mcp-tools/quality/security-compliance/audit-compliance.d.ts +166 -0
  77. package/dist/src/mcp-tools/quality/security-compliance/audit-compliance.d.ts.map +1 -0
  78. package/dist/src/mcp-tools/quality/security-compliance/audit-compliance.js +394 -0
  79. package/dist/src/mcp-tools/quality/security-compliance/audit-compliance.js.map +1 -0
  80. package/dist/src/mcp-tools/quality/security-compliance/detect-secrets.d.ts +129 -0
  81. package/dist/src/mcp-tools/quality/security-compliance/detect-secrets.d.ts.map +1 -0
  82. package/dist/src/mcp-tools/quality/security-compliance/detect-secrets.js +383 -0
  83. package/dist/src/mcp-tools/quality/security-compliance/detect-secrets.js.map +1 -0
  84. package/dist/src/mcp-tools/quality/security-compliance/security-scan.d.ts +171 -0
  85. package/dist/src/mcp-tools/quality/security-compliance/security-scan.d.ts.map +1 -0
  86. package/dist/src/mcp-tools/quality/security-compliance/security-scan.js +476 -0
  87. package/dist/src/mcp-tools/quality/security-compliance/security-scan.js.map +1 -0
  88. package/dist/src/mcp-tools/quality/test-generation/generate-tests.d.ts +147 -0
  89. package/dist/src/mcp-tools/quality/test-generation/generate-tests.d.ts.map +1 -0
  90. package/dist/src/mcp-tools/quality/test-generation/generate-tests.js +400 -0
  91. package/dist/src/mcp-tools/quality/test-generation/generate-tests.js.map +1 -0
  92. package/dist/src/mcp-tools/quality/test-generation/suggest-tests.d.ts +145 -0
  93. package/dist/src/mcp-tools/quality/test-generation/suggest-tests.d.ts.map +1 -0
  94. package/dist/src/mcp-tools/quality/test-generation/suggest-tests.js +328 -0
  95. package/dist/src/mcp-tools/quality/test-generation/suggest-tests.js.map +1 -0
  96. package/dist/src/mcp-tools/quality/test-generation/tdd-cycle.d.ts +126 -0
  97. package/dist/src/mcp-tools/quality/test-generation/tdd-cycle.d.ts.map +1 -0
  98. package/dist/src/mcp-tools/quality/test-generation/tdd-cycle.js +348 -0
  99. package/dist/src/mcp-tools/quality/test-generation/tdd-cycle.js.map +1 -0
  100. package/dist/src/mcp-tools/quality-tools.d.ts +9 -0
  101. package/dist/src/mcp-tools/quality-tools.d.ts.map +1 -0
  102. package/dist/src/mcp-tools/quality-tools.js +308 -0
  103. package/dist/src/mcp-tools/quality-tools.js.map +1 -0
  104. package/dist/tsconfig.tsbuildinfo +1 -1
  105. package/package.json +1 -1
@@ -0,0 +1,363 @@
1
+ /**
2
+ * evaluate-quality-gate.ts - Quality gate evaluation MCP tool handler
3
+ *
4
+ * Evaluates quality gates against defined thresholds to determine
5
+ * release readiness. Supports multiple metrics and custom gate configurations.
6
+ */
7
+ import { z } from 'zod';
8
+ // Input schema for evaluate-quality-gate tool
9
+ export const EvaluateQualityGateInputSchema = z.object({
10
+ gates: z
11
+ .array(z.object({
12
+ metric: z.string().describe('Metric name'),
13
+ operator: z.enum(['>', '<', '>=', '<=', '==']).describe('Comparison operator'),
14
+ threshold: z.number().describe('Threshold value'),
15
+ weight: z.number().min(0).max(1).default(1).describe('Weight for overall score'),
16
+ blocking: z.boolean().default(true).describe('If true, failure blocks release'),
17
+ }))
18
+ .optional()
19
+ .describe('Custom quality gate definitions'),
20
+ defaults: z
21
+ .enum(['strict', 'standard', 'minimal'])
22
+ .default('standard')
23
+ .describe('Default gate preset if custom gates not provided'),
24
+ projectPath: z.string().optional().describe('Path to project for metric collection'),
25
+ includeMetrics: z
26
+ .array(z.enum([
27
+ 'coverage',
28
+ 'bugs',
29
+ 'vulnerabilities',
30
+ 'code-smells',
31
+ 'duplications',
32
+ 'complexity',
33
+ 'technical-debt',
34
+ 'reliability',
35
+ 'security',
36
+ 'maintainability',
37
+ ]))
38
+ .default(['coverage', 'bugs', 'vulnerabilities', 'code-smells'])
39
+ .describe('Metrics to evaluate'),
40
+ failFast: z.boolean().default(false).describe('Stop on first gate failure'),
41
+ generateReport: z.boolean().default(true).describe('Generate detailed report'),
42
+ });
43
+ // Default gate presets
44
+ const GATE_PRESETS = {
45
+ strict: [
46
+ { metric: 'coverage.overall', operator: '>=', threshold: 90, weight: 1, blocking: true },
47
+ { metric: 'coverage.branch', operator: '>=', threshold: 85, weight: 0.9, blocking: true },
48
+ { metric: 'bugs.critical', operator: '==', threshold: 0, weight: 1, blocking: true },
49
+ { metric: 'vulnerabilities.critical', operator: '==', threshold: 0, weight: 1, blocking: true },
50
+ { metric: 'vulnerabilities.high', operator: '==', threshold: 0, weight: 0.9, blocking: true },
51
+ { metric: 'codeSmells.ratio', operator: '<=', threshold: 1, weight: 0.7, blocking: false },
52
+ { metric: 'duplications.percentage', operator: '<=', threshold: 3, weight: 0.6, blocking: false },
53
+ { metric: 'complexity.avgPerFunction', operator: '<=', threshold: 10, weight: 0.5, blocking: false },
54
+ ],
55
+ standard: [
56
+ { metric: 'coverage.overall', operator: '>=', threshold: 80, weight: 1, blocking: true },
57
+ { metric: 'coverage.branch', operator: '>=', threshold: 70, weight: 0.8, blocking: false },
58
+ { metric: 'bugs.critical', operator: '==', threshold: 0, weight: 1, blocking: true },
59
+ { metric: 'vulnerabilities.critical', operator: '==', threshold: 0, weight: 1, blocking: true },
60
+ { metric: 'vulnerabilities.high', operator: '<=', threshold: 2, weight: 0.8, blocking: false },
61
+ { metric: 'codeSmells.ratio', operator: '<=', threshold: 3, weight: 0.5, blocking: false },
62
+ { metric: 'duplications.percentage', operator: '<=', threshold: 5, weight: 0.4, blocking: false },
63
+ ],
64
+ minimal: [
65
+ { metric: 'coverage.overall', operator: '>=', threshold: 60, weight: 1, blocking: true },
66
+ { metric: 'bugs.critical', operator: '==', threshold: 0, weight: 1, blocking: true },
67
+ { metric: 'vulnerabilities.critical', operator: '==', threshold: 0, weight: 1, blocking: true },
68
+ ],
69
+ };
70
+ /**
71
+ * MCP Tool Handler for evaluate-quality-gate
72
+ */
73
+ export async function handler(input, context) {
74
+ const startTime = Date.now();
75
+ try {
76
+ // Validate input
77
+ const validatedInput = EvaluateQualityGateInputSchema.parse(input);
78
+ // Get memory bridge for historical data
79
+ const bridge = context.get('aqe.bridge');
80
+ // Collect metrics
81
+ const metrics = await collectMetrics(validatedInput.projectPath, validatedInput.includeMetrics);
82
+ // Get gates to evaluate
83
+ const gates = validatedInput.gates || GATE_PRESETS[validatedInput.defaults];
84
+ // Evaluate gates
85
+ const gateResults = evaluateGates(gates, metrics, validatedInput.failFast);
86
+ // Calculate overall score
87
+ const overallScore = calculateOverallScore(gateResults);
88
+ // Determine pass/fail
89
+ const blockers = gateResults.filter((g) => !g.passed && g.blocking);
90
+ const warnings = gateResults.filter((g) => !g.passed && !g.blocking);
91
+ const passed = blockers.length === 0;
92
+ // Generate report if requested
93
+ const report = validatedInput.generateReport
94
+ ? await generateReport(metrics, gateResults, bridge)
95
+ : null;
96
+ // Build result
97
+ const result = {
98
+ success: true,
99
+ passed,
100
+ overallScore,
101
+ gateResults,
102
+ metrics,
103
+ blockers,
104
+ warnings,
105
+ report,
106
+ metadata: {
107
+ evaluatedAt: new Date().toISOString(),
108
+ durationMs: Date.now() - startTime,
109
+ preset: validatedInput.defaults,
110
+ totalGates: gateResults.length,
111
+ passedGates: gateResults.filter((g) => g.passed).length,
112
+ failedGates: gateResults.filter((g) => !g.passed).length,
113
+ },
114
+ };
115
+ return {
116
+ content: [
117
+ {
118
+ type: 'text',
119
+ text: JSON.stringify(result, null, 2),
120
+ },
121
+ ],
122
+ };
123
+ }
124
+ catch (error) {
125
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
126
+ return {
127
+ content: [
128
+ {
129
+ type: 'text',
130
+ text: JSON.stringify({
131
+ success: false,
132
+ passed: false,
133
+ error: errorMessage,
134
+ metadata: {
135
+ evaluatedAt: new Date().toISOString(),
136
+ durationMs: Date.now() - startTime,
137
+ },
138
+ }, null, 2),
139
+ },
140
+ ],
141
+ };
142
+ }
143
+ }
144
+ async function collectMetrics(projectPath, includeMetrics) {
145
+ // Simulated metric collection
146
+ // In real implementation, would integrate with coverage tools, linters, etc.
147
+ return {
148
+ coverage: {
149
+ line: 78.5,
150
+ branch: 65.2,
151
+ function: 85.0,
152
+ overall: 76.2,
153
+ },
154
+ bugs: {
155
+ total: 5,
156
+ critical: 0,
157
+ major: 2,
158
+ minor: 3,
159
+ },
160
+ vulnerabilities: {
161
+ total: 3,
162
+ critical: 0,
163
+ high: 1,
164
+ medium: 1,
165
+ low: 1,
166
+ },
167
+ codeSmells: {
168
+ total: 45,
169
+ debt: '2h 30m',
170
+ ratio: 2.1,
171
+ },
172
+ duplications: {
173
+ lines: 150,
174
+ blocks: 12,
175
+ percentage: 4.2,
176
+ },
177
+ complexity: {
178
+ cyclomatic: 180,
179
+ cognitive: 220,
180
+ avgPerFunction: 8.5,
181
+ },
182
+ technicalDebt: {
183
+ total: '3d 4h',
184
+ ratio: 1.8,
185
+ rating: 'B',
186
+ },
187
+ ratings: {
188
+ reliability: 'B',
189
+ security: 'A',
190
+ maintainability: 'B',
191
+ },
192
+ };
193
+ }
194
+ function evaluateGates(gates, metrics, failFast) {
195
+ const results = [];
196
+ for (const gate of gates) {
197
+ const actual = getMetricValue(metrics, gate.metric);
198
+ const passed = evaluateCondition(actual, gate.operator, gate.threshold);
199
+ const deviation = calculateDeviation(actual, gate.threshold, gate.operator);
200
+ results.push({
201
+ metric: gate.metric,
202
+ operator: gate.operator,
203
+ threshold: gate.threshold,
204
+ actual,
205
+ passed,
206
+ blocking: gate.blocking,
207
+ weight: gate.weight,
208
+ deviation,
209
+ message: generateMessage(gate.metric, passed, actual, gate.threshold, gate.operator),
210
+ });
211
+ if (failFast && !passed && gate.blocking) {
212
+ break;
213
+ }
214
+ }
215
+ return results;
216
+ }
217
+ function getMetricValue(metrics, metricPath) {
218
+ const parts = metricPath.split('.');
219
+ let value = metrics;
220
+ for (const part of parts) {
221
+ if (value && typeof value === 'object') {
222
+ value = value[part];
223
+ }
224
+ else {
225
+ return 0;
226
+ }
227
+ }
228
+ return typeof value === 'number' ? value : 0;
229
+ }
230
+ function evaluateCondition(actual, operator, threshold) {
231
+ switch (operator) {
232
+ case '>':
233
+ return actual > threshold;
234
+ case '<':
235
+ return actual < threshold;
236
+ case '>=':
237
+ return actual >= threshold;
238
+ case '<=':
239
+ return actual <= threshold;
240
+ case '==':
241
+ return actual === threshold;
242
+ default:
243
+ return false;
244
+ }
245
+ }
246
+ function calculateDeviation(actual, threshold, operator) {
247
+ if (operator === '>' || operator === '>=') {
248
+ return Math.round((actual - threshold) * 100) / 100;
249
+ }
250
+ if (operator === '<' || operator === '<=') {
251
+ return Math.round((threshold - actual) * 100) / 100;
252
+ }
253
+ return Math.abs(actual - threshold);
254
+ }
255
+ function generateMessage(metric, passed, actual, threshold, operator) {
256
+ if (passed) {
257
+ return `${metric}: ${actual} ${operator} ${threshold} - PASSED`;
258
+ }
259
+ return `${metric}: ${actual} does not meet ${operator} ${threshold} - FAILED`;
260
+ }
261
+ function calculateOverallScore(results) {
262
+ if (results.length === 0)
263
+ return 0;
264
+ const totalWeight = results.reduce((sum, r) => sum + r.weight, 0);
265
+ const weightedScore = results.reduce((sum, r) => {
266
+ const score = r.passed ? r.weight : 0;
267
+ return sum + score;
268
+ }, 0);
269
+ return Math.round((weightedScore / totalWeight) * 100);
270
+ }
271
+ async function generateReport(metrics, results, bridge) {
272
+ // Generate recommendations based on failures
273
+ const recommendations = [];
274
+ const failedGates = results.filter((r) => !r.passed);
275
+ for (const gate of failedGates) {
276
+ recommendations.push(generateRecommendation(gate));
277
+ }
278
+ // Get historical data for trends
279
+ let historicalData = [];
280
+ if (bridge) {
281
+ try {
282
+ historicalData = await bridge.searchSimilarPatterns('quality-gate', 5);
283
+ }
284
+ catch {
285
+ // Continue without history
286
+ }
287
+ }
288
+ // Generate trends
289
+ const trends = [
290
+ {
291
+ metric: 'coverage.overall',
292
+ previous: 74.5,
293
+ current: metrics.coverage.overall,
294
+ trend: metrics.coverage.overall > 74.5 ? 'improving' : 'declining',
295
+ },
296
+ {
297
+ metric: 'bugs.total',
298
+ previous: 8,
299
+ current: metrics.bugs.total,
300
+ trend: metrics.bugs.total < 8 ? 'improving' : 'declining',
301
+ },
302
+ {
303
+ metric: 'technicalDebt.ratio',
304
+ previous: 2.0,
305
+ current: metrics.technicalDebt.ratio,
306
+ trend: metrics.technicalDebt.ratio < 2.0 ? 'improving' : 'declining',
307
+ },
308
+ ];
309
+ // Identify risk areas
310
+ const riskAreas = [];
311
+ if (metrics.vulnerabilities.high > 0 || metrics.vulnerabilities.critical > 0) {
312
+ riskAreas.push({
313
+ name: 'Security Vulnerabilities',
314
+ severity: metrics.vulnerabilities.critical > 0 ? 'critical' : 'high',
315
+ description: `${metrics.vulnerabilities.total} vulnerabilities detected`,
316
+ files: ['security-sensitive-file.ts'],
317
+ });
318
+ }
319
+ if (metrics.complexity.avgPerFunction > 10) {
320
+ riskAreas.push({
321
+ name: 'High Complexity',
322
+ severity: 'medium',
323
+ description: `Average function complexity is ${metrics.complexity.avgPerFunction}`,
324
+ files: ['complex-module.ts'],
325
+ });
326
+ }
327
+ // Generate summary
328
+ const passedCount = results.filter((r) => r.passed).length;
329
+ const summary = `Quality gate evaluation: ${passedCount}/${results.length} gates passed. ` +
330
+ `Overall score: ${calculateOverallScore(results)}%. ` +
331
+ `${failedGates.length > 0 ? `${failedGates.length} gate(s) require attention.` : 'All gates passed successfully.'}`;
332
+ return {
333
+ summary,
334
+ recommendations,
335
+ trends,
336
+ riskAreas,
337
+ };
338
+ }
339
+ function generateRecommendation(gate) {
340
+ const recommendations = {
341
+ 'coverage.overall': 'Increase test coverage by writing additional unit and integration tests',
342
+ 'coverage.branch': 'Add tests for uncovered conditional branches',
343
+ 'bugs.critical': 'Fix critical bugs immediately before release',
344
+ 'bugs.major': 'Address major bugs in the next sprint',
345
+ 'vulnerabilities.critical': 'Critical security vulnerabilities must be patched immediately',
346
+ 'vulnerabilities.high': 'High-severity vulnerabilities should be fixed before release',
347
+ 'codeSmells.ratio': 'Refactor code to reduce code smell density',
348
+ 'duplications.percentage': 'Extract duplicated code into reusable functions or modules',
349
+ 'complexity.avgPerFunction': 'Simplify complex functions by extracting smaller methods',
350
+ };
351
+ return recommendations[gate.metric] || `Improve ${gate.metric} to meet threshold of ${gate.threshold}`;
352
+ }
353
+ // Export tool definition for MCP registration
354
+ export const toolDefinition = {
355
+ name: 'aqe/evaluate-quality-gate',
356
+ description: 'Evaluate quality gates for release readiness with configurable thresholds',
357
+ category: 'quality-assessment',
358
+ version: '3.2.3',
359
+ inputSchema: EvaluateQualityGateInputSchema,
360
+ handler,
361
+ };
362
+ export default toolDefinition;
363
+ //# sourceMappingURL=evaluate-quality-gate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evaluate-quality-gate.js","sourceRoot":"","sources":["../../../../../src/mcp-tools/quality/quality-assessment/evaluate-quality-gate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,166 @@
1
+ /**
2
+ * audit-compliance.ts - Compliance auditing MCP tool handler
3
+ *
4
+ * Generates comprehensive compliance audit reports for various security
5
+ * frameworks including OWASP, PCI-DSS, HIPAA, GDPR, and SOC2.
6
+ */
7
+ import { z } from 'zod';
8
+ export declare const AuditComplianceInputSchema: z.ZodObject<{
9
+ targetPath: z.ZodString;
10
+ frameworks: z.ZodDefault<z.ZodArray<z.ZodEnum<{
11
+ "owasp-top-10": "owasp-top-10";
12
+ "sans-25": "sans-25";
13
+ "pci-dss": "pci-dss";
14
+ hipaa: "hipaa";
15
+ gdpr: "gdpr";
16
+ soc2: "soc2";
17
+ nist: "nist";
18
+ }>>>;
19
+ auditType: z.ZodDefault<z.ZodEnum<{
20
+ full: "full";
21
+ quick: "quick";
22
+ delta: "delta";
23
+ }>>;
24
+ includeEvidence: z.ZodDefault<z.ZodBoolean>;
25
+ includeRemediation: z.ZodDefault<z.ZodBoolean>;
26
+ lastAuditDate: z.ZodOptional<z.ZodString>;
27
+ }, z.core.$strip>;
28
+ export type AuditComplianceInput = z.infer<typeof AuditComplianceInputSchema>;
29
+ export interface AuditComplianceOutput {
30
+ success: boolean;
31
+ auditSummary: AuditSummary;
32
+ frameworkResults: FrameworkAuditResult[];
33
+ controls: ControlAssessment[];
34
+ gaps: ComplianceGap[];
35
+ remediationPlan: RemediationPlan | null;
36
+ evidence: EvidenceCollection[];
37
+ metadata: AuditMetadata;
38
+ }
39
+ export interface AuditSummary {
40
+ overallScore: number;
41
+ overallStatus: 'compliant' | 'partial' | 'non-compliant';
42
+ frameworkCount: number;
43
+ controlsAssessed: number;
44
+ controlsPassed: number;
45
+ controlsFailed: number;
46
+ criticalGaps: number;
47
+ riskLevel: 'low' | 'medium' | 'high' | 'critical';
48
+ }
49
+ export interface FrameworkAuditResult {
50
+ framework: string;
51
+ version: string;
52
+ score: number;
53
+ status: 'compliant' | 'partial' | 'non-compliant';
54
+ controlsPassed: number;
55
+ controlsFailed: number;
56
+ controlsNA: number;
57
+ categories: CategoryResult[];
58
+ requiredActions: string[];
59
+ }
60
+ export interface CategoryResult {
61
+ name: string;
62
+ score: number;
63
+ status: 'pass' | 'partial' | 'fail';
64
+ controls: number;
65
+ findings: number;
66
+ }
67
+ export interface ControlAssessment {
68
+ id: string;
69
+ framework: string;
70
+ category: string;
71
+ title: string;
72
+ description: string;
73
+ status: 'pass' | 'fail' | 'partial' | 'na';
74
+ severity: 'critical' | 'high' | 'medium' | 'low';
75
+ evidence: string[];
76
+ findings: string[];
77
+ remediation?: string;
78
+ }
79
+ export interface ComplianceGap {
80
+ id: string;
81
+ framework: string;
82
+ controlId: string;
83
+ title: string;
84
+ description: string;
85
+ severity: 'critical' | 'high' | 'medium' | 'low';
86
+ businessImpact: string;
87
+ remediationEffort: 'low' | 'medium' | 'high';
88
+ deadline?: string;
89
+ }
90
+ export interface RemediationPlan {
91
+ priority: RemediationItem[];
92
+ timeline: TimelineItem[];
93
+ estimatedEffort: string;
94
+ resourcesRequired: string[];
95
+ }
96
+ export interface RemediationItem {
97
+ priority: number;
98
+ gap: string;
99
+ action: string;
100
+ owner: string;
101
+ effort: 'low' | 'medium' | 'high';
102
+ deadline: string;
103
+ }
104
+ export interface TimelineItem {
105
+ phase: string;
106
+ duration: string;
107
+ activities: string[];
108
+ milestones: string[];
109
+ }
110
+ export interface EvidenceCollection {
111
+ controlId: string;
112
+ type: 'automated' | 'manual' | 'documented';
113
+ description: string;
114
+ artifacts: string[];
115
+ collectedAt: string;
116
+ validity: 'current' | 'expired' | 'pending';
117
+ }
118
+ export interface AuditMetadata {
119
+ auditedAt: string;
120
+ durationMs: number;
121
+ auditor: string;
122
+ auditType: string;
123
+ scopeFiles: number;
124
+ controlsChecked: number;
125
+ }
126
+ export interface ToolContext {
127
+ get<T>(key: string): T | undefined;
128
+ }
129
+ /**
130
+ * MCP Tool Handler for audit-compliance
131
+ */
132
+ export declare function handler(input: AuditComplianceInput, context: ToolContext): Promise<{
133
+ content: Array<{
134
+ type: 'text';
135
+ text: string;
136
+ }>;
137
+ }>;
138
+ export declare const toolDefinition: {
139
+ name: string;
140
+ description: string;
141
+ category: string;
142
+ version: string;
143
+ inputSchema: z.ZodObject<{
144
+ targetPath: z.ZodString;
145
+ frameworks: z.ZodDefault<z.ZodArray<z.ZodEnum<{
146
+ "owasp-top-10": "owasp-top-10";
147
+ "sans-25": "sans-25";
148
+ "pci-dss": "pci-dss";
149
+ hipaa: "hipaa";
150
+ gdpr: "gdpr";
151
+ soc2: "soc2";
152
+ nist: "nist";
153
+ }>>>;
154
+ auditType: z.ZodDefault<z.ZodEnum<{
155
+ full: "full";
156
+ quick: "quick";
157
+ delta: "delta";
158
+ }>>;
159
+ includeEvidence: z.ZodDefault<z.ZodBoolean>;
160
+ includeRemediation: z.ZodDefault<z.ZodBoolean>;
161
+ lastAuditDate: z.ZodOptional<z.ZodString>;
162
+ }, z.core.$strip>;
163
+ handler: typeof handler;
164
+ };
165
+ export default toolDefinition;
166
+ //# sourceMappingURL=audit-compliance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit-compliance.d.ts","sourceRoot":"","sources":["../../../../../src/mcp-tools/quality/security-compliance/audit-compliance.ts"],"names":[],"mappings":"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"}