driftdetect-mcp 0.7.0 → 0.8.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 (66) hide show
  1. package/dist/bin/server.js +8 -1
  2. package/dist/bin/server.js.map +1 -1
  3. package/dist/enterprise-server.d.ts +4 -0
  4. package/dist/enterprise-server.d.ts.map +1 -1
  5. package/dist/enterprise-server.js +32 -2
  6. package/dist/enterprise-server.js.map +1 -1
  7. package/dist/infrastructure/index.d.ts +1 -0
  8. package/dist/infrastructure/index.d.ts.map +1 -1
  9. package/dist/infrastructure/index.js +2 -0
  10. package/dist/infrastructure/index.js.map +1 -1
  11. package/dist/infrastructure/startup-warmer.d.ts +65 -0
  12. package/dist/infrastructure/startup-warmer.d.ts.map +1 -0
  13. package/dist/infrastructure/startup-warmer.js +257 -0
  14. package/dist/infrastructure/startup-warmer.js.map +1 -0
  15. package/dist/tools/analysis/coupling.js +181 -63
  16. package/dist/tools/analysis/coupling.js.map +1 -1
  17. package/dist/tools/analysis/cpp.d.ts +51 -0
  18. package/dist/tools/analysis/cpp.d.ts.map +1 -0
  19. package/dist/tools/analysis/cpp.js +224 -0
  20. package/dist/tools/analysis/cpp.js.map +1 -0
  21. package/dist/tools/analysis/error-handling.js +130 -37
  22. package/dist/tools/analysis/error-handling.js.map +1 -1
  23. package/dist/tools/analysis/index.d.ts +3 -0
  24. package/dist/tools/analysis/index.d.ts.map +1 -1
  25. package/dist/tools/analysis/index.js +100 -0
  26. package/dist/tools/analysis/index.js.map +1 -1
  27. package/dist/tools/analysis/quality-gate.d.ts +78 -0
  28. package/dist/tools/analysis/quality-gate.d.ts.map +1 -0
  29. package/dist/tools/analysis/quality-gate.js +164 -0
  30. package/dist/tools/analysis/quality-gate.js.map +1 -0
  31. package/dist/tools/analysis/rust.d.ts +51 -0
  32. package/dist/tools/analysis/rust.d.ts.map +1 -0
  33. package/dist/tools/analysis/rust.js +253 -0
  34. package/dist/tools/analysis/rust.js.map +1 -0
  35. package/dist/tools/analysis/simulate.d.ts +1 -0
  36. package/dist/tools/analysis/simulate.d.ts.map +1 -1
  37. package/dist/tools/analysis/simulate.js +78 -74
  38. package/dist/tools/analysis/simulate.js.map +1 -1
  39. package/dist/tools/analysis/test-topology.js +117 -44
  40. package/dist/tools/analysis/test-topology.js.map +1 -1
  41. package/dist/tools/detail/reachability.d.ts +2 -0
  42. package/dist/tools/detail/reachability.d.ts.map +1 -1
  43. package/dist/tools/detail/reachability.js +42 -32
  44. package/dist/tools/detail/reachability.js.map +1 -1
  45. package/dist/tools/orchestration/index.d.ts +2 -0
  46. package/dist/tools/orchestration/index.d.ts.map +1 -1
  47. package/dist/tools/orchestration/index.js +3 -0
  48. package/dist/tools/orchestration/index.js.map +1 -1
  49. package/dist/tools/orchestration/package-context.d.ts +134 -0
  50. package/dist/tools/orchestration/package-context.d.ts.map +1 -0
  51. package/dist/tools/orchestration/package-context.js +261 -0
  52. package/dist/tools/orchestration/package-context.js.map +1 -0
  53. package/package.json +12 -12
  54. package/LICENSE +0 -21
  55. package/dist/server.d.ts +0 -11
  56. package/dist/server.d.ts.map +0 -1
  57. package/dist/server.js +0 -3177
  58. package/dist/server.js.map +0 -1
  59. package/dist/tools/detail/dna-check.d.ts +0 -32
  60. package/dist/tools/detail/dna-check.d.ts.map +0 -1
  61. package/dist/tools/detail/dna-check.js +0 -231
  62. package/dist/tools/detail/dna-check.js.map +0 -1
  63. package/dist/tools/exploration/files-list.d.ts +0 -29
  64. package/dist/tools/exploration/files-list.d.ts.map +0 -1
  65. package/dist/tools/exploration/files-list.js +0 -94
  66. package/dist/tools/exploration/files-list.js.map +0 -1
@@ -38,6 +38,7 @@ export async function handleErrorHandling(projectRoot, args) {
38
38
  // ============================================================================
39
39
  async function handleStatus(projectRoot) {
40
40
  const builder = createResponseBuilder();
41
+ // First try to load cached data
41
42
  const dataPath = path.join(projectRoot, DRIFT_DIR, ERROR_HANDLING_DIR, 'topology.json');
42
43
  try {
43
44
  const data = JSON.parse(await fs.readFile(dataPath, 'utf-8'));
@@ -67,7 +68,52 @@ async function handleStatus(projectRoot) {
67
68
  .buildContent();
68
69
  }
69
70
  catch {
70
- throw Errors.custom('NO_ERROR_HANDLING_DATA', 'No error handling analysis found. Build it first using the CLI: drift error-handling build', ['drift error-handling build']);
71
+ // No cached data - try to build on-demand from call graph
72
+ try {
73
+ const analyzer = await buildAnalyzer(projectRoot);
74
+ const summary = analyzer.getSummary();
75
+ const metrics = analyzer.getMetrics();
76
+ if (!summary || !metrics) {
77
+ throw new Error('No analysis data available');
78
+ }
79
+ let summaryText = `🛡️ ${summary.totalFunctions} functions. `;
80
+ summaryText += `Coverage: ${summary.coveragePercent}%. `;
81
+ summaryText += `Quality: ${summary.avgQuality}/100. `;
82
+ summaryText += `${summary.unhandledPaths} unhandled paths.`;
83
+ const warnings = [];
84
+ if (summary.criticalUnhandled > 0) {
85
+ warnings.push(`${summary.criticalUnhandled} critical unhandled error paths`);
86
+ }
87
+ if (metrics.swallowedErrorCount > 0) {
88
+ warnings.push(`${metrics.swallowedErrorCount} swallowed errors`);
89
+ }
90
+ const hints = {
91
+ nextActions: summary.unhandledPaths > 0
92
+ ? ['Run drift_error_handling action="gaps" to see specific issues']
93
+ : ['Error handling looks good'],
94
+ warnings: warnings.length > 0 ? warnings : undefined,
95
+ relatedTools: ['drift_error_handling action="gaps"', 'drift_error_handling action="boundaries"'],
96
+ };
97
+ return builder
98
+ .withSummary(summaryText)
99
+ .withData({ summary, metrics })
100
+ .withHints(hints)
101
+ .buildContent();
102
+ }
103
+ catch {
104
+ // No call graph available - return graceful empty state
105
+ return builder
106
+ .withSummary('🛡️ Error handling analysis not available. Run a scan first.')
107
+ .withData({
108
+ summary: { totalFunctions: 0, coveragePercent: 0, avgQuality: 0, unhandledPaths: 0, criticalUnhandled: 0, boundaryCount: 0, avgBoundaryDepth: 0 },
109
+ metrics: { swallowedErrorCount: 0, totalTryCatch: 0, totalThrows: 0, totalFunctions: 0, functionsWithTryCatch: 0, functionsThatThrow: 0, boundaryCount: 0, avgCatchBlockSize: 0, avgThrowsPerFunction: 0, rethrowRate: 0, emptyHandlerCount: 0 }
110
+ })
111
+ .withHints({
112
+ nextActions: ['Run drift scan to analyze the codebase first'],
113
+ relatedTools: ['drift_status'],
114
+ })
115
+ .buildContent();
116
+ }
71
117
  }
72
118
  }
73
119
  async function handleGaps(projectRoot, limit, minSeverity) {
@@ -106,6 +152,7 @@ async function handleGaps(projectRoot, limit, minSeverity) {
106
152
  }
107
153
  async function handleBoundaries(projectRoot) {
108
154
  const builder = createResponseBuilder();
155
+ // First try cached data
109
156
  const dataPath = path.join(projectRoot, DRIFT_DIR, ERROR_HANDLING_DIR, 'topology.json');
110
157
  try {
111
158
  const data = JSON.parse(await fs.readFile(dataPath, 'utf-8'));
@@ -126,53 +173,99 @@ async function handleBoundaries(projectRoot) {
126
173
  .buildContent();
127
174
  }
128
175
  catch {
129
- throw Errors.custom('NO_ERROR_HANDLING_DATA', 'No error handling analysis found. Build it first.', ['drift error-handling build']);
176
+ // Try to build on-demand
177
+ try {
178
+ const analyzer = await buildAnalyzer(projectRoot);
179
+ const boundaries = analyzer.getBoundaries();
180
+ const frameworkBoundaries = boundaries.filter(b => b.isFrameworkBoundary).length;
181
+ let summaryText = `🛡️ ${boundaries.length} error boundaries. `;
182
+ summaryText += `${frameworkBoundaries} framework boundaries.`;
183
+ const hints = {
184
+ nextActions: boundaries.length === 0
185
+ ? ['Consider adding error boundaries to protect critical paths']
186
+ : ['Review boundary coverage'],
187
+ relatedTools: ['drift_error_handling action="unhandled"'],
188
+ };
189
+ return builder
190
+ .withSummary(summaryText)
191
+ .withData({ boundaries, total: boundaries.length, frameworkBoundaries })
192
+ .withHints(hints)
193
+ .buildContent();
194
+ }
195
+ catch {
196
+ // Return empty state
197
+ return builder
198
+ .withSummary('🛡️ No error boundaries detected. Run a scan first.')
199
+ .withData({ boundaries: [], total: 0, frameworkBoundaries: 0 })
200
+ .withHints({
201
+ nextActions: ['Run drift scan to analyze the codebase'],
202
+ relatedTools: ['drift_status'],
203
+ })
204
+ .buildContent();
205
+ }
130
206
  }
131
207
  }
132
208
  async function handleUnhandled(projectRoot, minSeverity) {
133
209
  const builder = createResponseBuilder();
210
+ // First try cached data
134
211
  const dataPath = path.join(projectRoot, DRIFT_DIR, ERROR_HANDLING_DIR, 'topology.json');
212
+ let paths = [];
135
213
  try {
136
214
  const data = JSON.parse(await fs.readFile(dataPath, 'utf-8'));
137
- let paths = data.topology.unhandledPaths;
138
- // Filter by severity
139
- if (minSeverity) {
140
- const severityOrder = { critical: 0, high: 1, medium: 2, low: 3 };
141
- const minOrder = severityOrder[minSeverity];
142
- paths = paths.filter(p => severityOrder[p.severity] <= minOrder);
215
+ paths = data.topology.unhandledPaths;
216
+ }
217
+ catch {
218
+ // Try to build on-demand
219
+ try {
220
+ const analyzer = await buildAnalyzer(projectRoot);
221
+ paths = analyzer.getUnhandledPaths();
143
222
  }
144
- const bySeverity = {
145
- critical: 0,
146
- high: 0,
147
- medium: 0,
148
- low: 0,
149
- };
150
- for (const p of paths) {
151
- bySeverity[p.severity]++;
223
+ catch {
224
+ // Return empty state
225
+ return builder
226
+ .withSummary('⚠️ No unhandled error path analysis available. Run a scan first.')
227
+ .withData({ paths: [], total: 0, bySeverity: { critical: 0, high: 0, medium: 0, low: 0 } })
228
+ .withHints({
229
+ nextActions: ['Run drift scan to analyze the codebase'],
230
+ relatedTools: ['drift_status'],
231
+ })
232
+ .buildContent();
152
233
  }
153
- let summaryText = `⚠️ ${paths.length} unhandled error paths. `;
154
- if (bySeverity.critical > 0)
155
- summaryText += `🔴 ${bySeverity.critical} critical. `;
156
- if (bySeverity.high > 0)
157
- summaryText += `🟡 ${bySeverity.high} high.`;
158
- const hints = {
159
- nextActions: paths.length > 0
160
- ? [`Add error boundary at: ${paths[0]?.suggestedBoundary ?? 'entry point'}`]
161
- : ['All error paths are handled!'],
162
- warnings: bySeverity.critical > 0
163
- ? ['Critical unhandled paths can cause application crashes']
164
- : undefined,
165
- relatedTools: ['drift_error_handling action="boundaries"'],
166
- };
167
- return builder
168
- .withSummary(summaryText)
169
- .withData({ paths, total: paths.length, bySeverity })
170
- .withHints(hints)
171
- .buildContent();
172
234
  }
173
- catch {
174
- throw Errors.custom('NO_ERROR_HANDLING_DATA', 'No error handling analysis found. Build it first.', ['drift error-handling build']);
235
+ // Filter by severity
236
+ if (minSeverity) {
237
+ const severityOrder = { critical: 0, high: 1, medium: 2, low: 3 };
238
+ const minOrder = severityOrder[minSeverity];
239
+ paths = paths.filter(p => severityOrder[p.severity] <= minOrder);
175
240
  }
241
+ const bySeverity = {
242
+ critical: 0,
243
+ high: 0,
244
+ medium: 0,
245
+ low: 0,
246
+ };
247
+ for (const p of paths) {
248
+ bySeverity[p.severity]++;
249
+ }
250
+ let summaryText = `⚠️ ${paths.length} unhandled error paths. `;
251
+ if (bySeverity.critical > 0)
252
+ summaryText += `🔴 ${bySeverity.critical} critical. `;
253
+ if (bySeverity.high > 0)
254
+ summaryText += `🟡 ${bySeverity.high} high.`;
255
+ const hints = {
256
+ nextActions: paths.length > 0
257
+ ? [`Add error boundary at: ${paths[0]?.suggestedBoundary ?? 'entry point'}`]
258
+ : ['All error paths are handled!'],
259
+ warnings: bySeverity.critical > 0
260
+ ? ['Critical unhandled paths can cause application crashes']
261
+ : undefined,
262
+ relatedTools: ['drift_error_handling action="boundaries"'],
263
+ };
264
+ return builder
265
+ .withSummary(summaryText)
266
+ .withData({ paths, total: paths.length, bySeverity })
267
+ .withHints(hints)
268
+ .buildContent();
176
269
  }
177
270
  async function handleAnalyze(projectRoot, funcPath) {
178
271
  const builder = createResponseBuilder();
@@ -1 +1 @@
1
- {"version":3,"file":"error-handling.js","sourceRoot":"","sources":["../../../src/tools/analysis/error-handling.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error-handling.js","sourceRoot":"","sources":["../../../src/tools/analysis/error-handling.ts"],"names":[],"mappings":"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"}
@@ -13,5 +13,8 @@ export { handleSimulate, type SimulateArgs } from './simulate.js';
13
13
  export { handleConstraints, type ConstraintsArgs, type ConstraintsAction } from './constraints.js';
14
14
  export { executeWpfTool, type WpfArgs, type WpfAction } from './wpf.js';
15
15
  export { executeGoTool, type GoArgs, type GoAction } from './go.js';
16
+ export { executeRustTool, type RustArgs, type RustAction } from './rust.js';
16
17
  export { handleConstants, type ConstantsArgs, type ConstantsAction } from './constants.js';
18
+ export { handleQualityGate, qualityGateTool, type QualityGateArgs } from './quality-gate.js';
19
+ export { executeCppTool, type CppArgs, type CppAction } from './cpp.js';
17
20
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/analysis/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AA8B/D,eAAO,MAAM,cAAc,EAAE,IAAI,EA4VhC,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxG,OAAO,EAAE,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,KAAK,iBAAiB,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC5G,OAAO,EAAE,eAAe,EAAE,KAAK,aAAa,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,KAAK,eAAe,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,KAAK,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,KAAK,aAAa,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/analysis/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAoC/D,eAAO,MAAM,cAAc,EAAE,IAAI,EAybhC,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxG,OAAO,EAAE,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,KAAK,iBAAiB,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC5G,OAAO,EAAE,eAAe,EAAE,KAAK,aAAa,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,KAAK,eAAe,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,KAAK,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,KAAK,aAAa,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC7F,OAAO,EAAE,cAAc,EAAE,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,UAAU,CAAC"}
@@ -11,6 +11,8 @@ const CONSTRAINTS_ACTIONS = ['list', 'show', 'extract', 'approve', 'ignore', 've
11
11
  const WPF_ACTIONS = ['status', 'bindings', 'mvvm', 'datacontext', 'commands'];
12
12
  const GO_ACTIONS = ['status', 'routes', 'errors', 'interfaces', 'data-access', 'goroutines'];
13
13
  const CONSTANTS_ACTIONS = ['status', 'list', 'get', 'usages', 'magic', 'dead', 'secrets', 'inconsistent'];
14
+ const RUST_ACTIONS = ['status', 'routes', 'errors', 'traits', 'data-access', 'async'];
15
+ const CPP_ACTIONS = ['status', 'classes', 'memory', 'templates', 'virtual'];
14
16
  const DECISION_CATEGORIES = [
15
17
  'technology-adoption', 'technology-removal', 'pattern-introduction',
16
18
  'pattern-migration', 'architecture-change', 'api-change',
@@ -29,7 +31,48 @@ const CONSTANT_CATEGORIES = [
29
31
  const CONSTANT_LANGUAGES = [
30
32
  'typescript', 'javascript', 'python', 'java', 'csharp', 'php', 'go'
31
33
  ];
34
+ const QUALITY_GATE_GATES = ['pattern-compliance', 'constraint-verification', 'regression-detection', 'impact-simulation', 'security-boundary', 'custom-rules'];
35
+ const QUALITY_GATE_FORMATS = ['text', 'json', 'github', 'gitlab', 'sarif'];
32
36
  export const ANALYSIS_TOOLS = [
37
+ {
38
+ name: 'drift_quality_gate',
39
+ description: 'Run quality gates on code changes. Checks pattern compliance, constraint verification, regression detection, impact simulation, security boundaries, and custom rules. Use before merging PRs to catch architectural drift.',
40
+ inputSchema: {
41
+ type: 'object',
42
+ properties: {
43
+ files: {
44
+ type: 'array',
45
+ items: { type: 'string' },
46
+ description: 'Files to check (optional - defaults to all changed files)',
47
+ },
48
+ policy: {
49
+ type: 'string',
50
+ description: 'Policy to use: default, strict, relaxed, ci-fast, or custom ID',
51
+ },
52
+ gates: {
53
+ type: 'string',
54
+ description: `Specific gates to run (comma-separated): ${QUALITY_GATE_GATES.join(', ')}`,
55
+ },
56
+ format: {
57
+ type: 'string',
58
+ enum: QUALITY_GATE_FORMATS,
59
+ description: 'Output format (default: json)',
60
+ },
61
+ verbose: {
62
+ type: 'boolean',
63
+ description: 'Include detailed output',
64
+ },
65
+ branch: {
66
+ type: 'string',
67
+ description: 'Current branch name',
68
+ },
69
+ baseBranch: {
70
+ type: 'string',
71
+ description: 'Base branch for comparison (for PRs)',
72
+ },
73
+ },
74
+ },
75
+ },
33
76
  {
34
77
  name: 'drift_simulate',
35
78
  description: 'Speculative Execution Engine: Simulates multiple implementation approaches BEFORE code generation, scoring them by friction, impact, and pattern alignment. Returns ranked approaches with trade-off analysis.',
@@ -377,6 +420,60 @@ export const ANALYSIS_TOOLS = [
377
420
  },
378
421
  },
379
422
  },
423
+ {
424
+ name: 'drift_rust',
425
+ description: 'Analyze Rust projects: routes, error handling, traits, data access, async patterns. Actions: status (project overview), routes (HTTP routes - Actix, Axum, Rocket, Warp), errors (error handling - Result, thiserror, anyhow), traits (trait definitions and implementations), data-access (database patterns - SQLx, Diesel, SeaORM), async (async patterns and runtime analysis).',
426
+ inputSchema: {
427
+ type: 'object',
428
+ properties: {
429
+ action: {
430
+ type: 'string',
431
+ enum: RUST_ACTIONS,
432
+ description: 'Action to perform: status, routes, errors, traits, data-access, async',
433
+ },
434
+ path: {
435
+ type: 'string',
436
+ description: 'File or directory path (defaults to project root)',
437
+ },
438
+ framework: {
439
+ type: 'string',
440
+ description: 'Filter by framework (for routes and data-access): actix, axum, rocket, warp, sqlx, diesel, sea-orm',
441
+ },
442
+ limit: {
443
+ type: 'number',
444
+ description: 'Limit number of results (default: 50)',
445
+ },
446
+ },
447
+ required: ['action'],
448
+ },
449
+ },
450
+ {
451
+ name: 'drift_cpp',
452
+ description: 'Analyze C++ projects: classes, memory management, templates, virtual functions. Actions: status (project overview), classes (class/struct analysis with inheritance), memory (smart pointers, RAII, manual allocation), templates (template classes and functions), virtual (virtual functions and polymorphic hierarchies).',
453
+ inputSchema: {
454
+ type: 'object',
455
+ properties: {
456
+ action: {
457
+ type: 'string',
458
+ enum: CPP_ACTIONS,
459
+ description: 'Action to perform: status, classes, memory, templates, virtual',
460
+ },
461
+ path: {
462
+ type: 'string',
463
+ description: 'File or directory path (defaults to project root)',
464
+ },
465
+ framework: {
466
+ type: 'string',
467
+ description: 'Filter by framework: Qt, Boost, Unreal Engine',
468
+ },
469
+ limit: {
470
+ type: 'number',
471
+ description: 'Limit number of results (default: 50)',
472
+ },
473
+ },
474
+ required: ['action'],
475
+ },
476
+ },
380
477
  ];
381
478
  export { handleTestTopology } from './test-topology.js';
382
479
  export { handleCoupling } from './coupling.js';
@@ -386,5 +483,8 @@ export { handleSimulate } from './simulate.js';
386
483
  export { handleConstraints } from './constraints.js';
387
484
  export { executeWpfTool } from './wpf.js';
388
485
  export { executeGoTool } from './go.js';
486
+ export { executeRustTool } from './rust.js';
389
487
  export { handleConstants } from './constants.js';
488
+ export { handleQualityGate, qualityGateTool } from './quality-gate.js';
489
+ export { executeCppTool } from './cpp.js';
390
490
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/analysis/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/analysis/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * drift_quality_gate - Enterprise Quality Gates
3
+ *
4
+ * Runs quality gates on code changes to enforce pattern compliance,
5
+ * constraint verification, regression detection, impact simulation,
6
+ * security boundaries, and custom rules.
7
+ *
8
+ * This is the enterprise CI/CD integration point for Drift.
9
+ */
10
+ import { type QualityGateResult, type OutputFormat } from 'driftdetect-core';
11
+ export interface QualityGateArgs {
12
+ /** Files to check (optional - defaults to all changed files) */
13
+ files?: string[];
14
+ /** Policy to use (default, strict, relaxed, ci-fast, or custom ID) */
15
+ policy?: string;
16
+ /** Specific gates to run (comma-separated) */
17
+ gates?: string;
18
+ /** Output format (text, json, github, gitlab, sarif) */
19
+ format?: OutputFormat;
20
+ /** Verbose output with details */
21
+ verbose?: boolean;
22
+ /** Branch name */
23
+ branch?: string;
24
+ /** Base branch for comparison */
25
+ baseBranch?: string;
26
+ }
27
+ export interface QualityGateData {
28
+ result: QualityGateResult;
29
+ }
30
+ export declare function handleQualityGate(projectRoot: string, args: QualityGateArgs): Promise<{
31
+ content: Array<{
32
+ type: string;
33
+ text: string;
34
+ }>;
35
+ isError?: boolean;
36
+ }>;
37
+ export declare const qualityGateTool: {
38
+ name: string;
39
+ description: string;
40
+ inputSchema: {
41
+ type: "object";
42
+ properties: {
43
+ files: {
44
+ type: string;
45
+ items: {
46
+ type: string;
47
+ };
48
+ description: string;
49
+ };
50
+ policy: {
51
+ type: string;
52
+ description: string;
53
+ };
54
+ gates: {
55
+ type: string;
56
+ description: string;
57
+ };
58
+ format: {
59
+ type: string;
60
+ enum: string[];
61
+ description: string;
62
+ };
63
+ verbose: {
64
+ type: string;
65
+ description: string;
66
+ };
67
+ branch: {
68
+ type: string;
69
+ description: string;
70
+ };
71
+ baseBranch: {
72
+ type: string;
73
+ description: string;
74
+ };
75
+ };
76
+ };
77
+ };
78
+ //# sourceMappingURL=quality-gate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quality-gate.d.ts","sourceRoot":"","sources":["../../../src/tools/analysis/quality-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAIL,KAAK,iBAAiB,EAEtB,KAAK,YAAY,EAClB,MAAM,kBAAkB,CAAC;AAO1B,MAAM,WAAW,eAAe;IAC9B,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,kCAAkC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kBAAkB;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iCAAiC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,iBAAiB,CAAC;CAC3B;AAMD,wBAAsB,iBAAiB,CACrC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAkHhF;AAMD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgD3B,CAAC"}