@monoes/monomindcli 1.15.3 → 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,406 @@
1
+ /**
2
+ * Quantum Topology Tool - pr_quantum_topology
3
+ *
4
+ * Computes quantum topology features including Betti numbers and persistence diagrams.
5
+ * Analyzes topological features of point clouds and simplicial complexes.
6
+ *
7
+ * Uses QuantumEngine from prime-radiant-advanced-wasm
8
+ */
9
+ import { TopologyInputSchema, successResult, errorResult, } from './types.js';
10
+ // Default logger
11
+ const defaultLogger = {
12
+ debug: (msg, meta) => console.debug(`[pr_quantum_topology] ${msg}`, meta),
13
+ info: (msg, meta) => console.info(`[pr_quantum_topology] ${msg}`, meta),
14
+ warn: (msg, meta) => console.warn(`[pr_quantum_topology] ${msg}`, meta),
15
+ error: (msg, meta) => console.error(`[pr_quantum_topology] ${msg}`, meta),
16
+ };
17
+ // ============================================================================
18
+ // Topology Helper Functions
19
+ // ============================================================================
20
+ /**
21
+ * Compute Euclidean distance between two points
22
+ */
23
+ function euclideanDistance(a, b) {
24
+ let sum = 0;
25
+ for (let i = 0; i < a.length; i++) {
26
+ const diff = a[i] - b[i];
27
+ sum += diff * diff;
28
+ }
29
+ return Math.sqrt(sum);
30
+ }
31
+ /**
32
+ * Build distance matrix from vertices
33
+ */
34
+ function buildDistanceMatrix(vertices) {
35
+ const n = vertices.length;
36
+ const matrix = [];
37
+ for (let i = 0; i < n; i++) {
38
+ matrix[i] = [];
39
+ for (let j = 0; j < n; j++) {
40
+ matrix[i][j] = euclideanDistance(vertices[i], vertices[j]);
41
+ }
42
+ }
43
+ return matrix;
44
+ }
45
+ /**
46
+ * Build Vietoris-Rips complex at given epsilon
47
+ * Returns list of simplices (vertex index arrays)
48
+ */
49
+ function buildRipsComplex(distanceMatrix, epsilon, maxDimension) {
50
+ const n = distanceMatrix.length;
51
+ const simplices = [];
52
+ // Add 0-simplices (vertices)
53
+ for (let i = 0; i < n; i++) {
54
+ simplices.push([i]);
55
+ }
56
+ if (maxDimension < 1)
57
+ return simplices;
58
+ // Add 1-simplices (edges)
59
+ const edges = [];
60
+ for (let i = 0; i < n; i++) {
61
+ for (let j = i + 1; j < n; j++) {
62
+ if (distanceMatrix[i][j] <= epsilon) {
63
+ edges.push([i, j]);
64
+ simplices.push([i, j]);
65
+ }
66
+ }
67
+ }
68
+ if (maxDimension < 2)
69
+ return simplices;
70
+ // Add 2-simplices (triangles)
71
+ // A triangle exists if all three edges exist
72
+ const edgeSet = new Set(edges.map(e => `${e[0]}-${e[1]}`));
73
+ for (let i = 0; i < n; i++) {
74
+ for (let j = i + 1; j < n; j++) {
75
+ if (!edgeSet.has(`${i}-${j}`))
76
+ continue;
77
+ for (let k = j + 1; k < n; k++) {
78
+ if (edgeSet.has(`${i}-${k}`) && edgeSet.has(`${j}-${k}`)) {
79
+ simplices.push([i, j, k]);
80
+ }
81
+ }
82
+ }
83
+ }
84
+ if (maxDimension < 3)
85
+ return simplices;
86
+ // Add 3-simplices (tetrahedra)
87
+ // Simplified: only add if all faces exist
88
+ const triangleSet = new Set(simplices
89
+ .filter(s => s.length === 3)
90
+ .map(t => `${t[0]}-${t[1]}-${t[2]}`));
91
+ for (let i = 0; i < n; i++) {
92
+ for (let j = i + 1; j < n; j++) {
93
+ for (let k = j + 1; k < n; k++) {
94
+ for (let l = k + 1; l < n; l++) {
95
+ // Check all 4 triangular faces exist
96
+ const faces = [
97
+ `${i}-${j}-${k}`,
98
+ `${i}-${j}-${l}`,
99
+ `${i}-${k}-${l}`,
100
+ `${j}-${k}-${l}`,
101
+ ];
102
+ if (faces.every(f => triangleSet.has(f))) {
103
+ simplices.push([i, j, k, l]);
104
+ }
105
+ }
106
+ }
107
+ }
108
+ }
109
+ return simplices;
110
+ }
111
+ /**
112
+ * Compute Betti numbers from simplicial complex
113
+ * Uses simplified computation based on simplex counts
114
+ *
115
+ * Betti numbers:
116
+ * - b0: Number of connected components
117
+ * - b1: Number of loops/cycles
118
+ * - b2: Number of voids/cavities
119
+ */
120
+ function computeBettiNumbers(vertices, simplices, maxDimension) {
121
+ const n = vertices.length;
122
+ const bettiNumbers = [];
123
+ // Count simplices by dimension
124
+ const simplexCounts = new Array(maxDimension + 1).fill(0);
125
+ for (const simplex of simplices) {
126
+ const dim = simplex.length - 1;
127
+ if (dim <= maxDimension) {
128
+ simplexCounts[dim]++;
129
+ }
130
+ }
131
+ // b0: Connected components (using union-find approximation)
132
+ const parent = new Array(n).fill(-1);
133
+ function find(x) {
134
+ if (parent[x] < 0)
135
+ return x;
136
+ parent[x] = find(parent[x]);
137
+ return parent[x];
138
+ }
139
+ function union(x, y) {
140
+ const px = find(x);
141
+ const py = find(y);
142
+ if (px !== py) {
143
+ parent[px] = py;
144
+ }
145
+ }
146
+ // Connect vertices in edges
147
+ for (const simplex of simplices) {
148
+ if (simplex.length === 2) {
149
+ union(simplex[0], simplex[1]);
150
+ }
151
+ }
152
+ // Count components
153
+ let b0 = 0;
154
+ for (let i = 0; i < n; i++) {
155
+ if (parent[i] < 0)
156
+ b0++;
157
+ }
158
+ bettiNumbers.push(b0);
159
+ // b1: Approximate using Euler characteristic relationship
160
+ // For connected graphs: b1 = edges - vertices + components
161
+ if (maxDimension >= 1) {
162
+ const edges = simplexCounts[1] || 0;
163
+ const b1 = Math.max(0, edges - n + b0);
164
+ bettiNumbers.push(b1);
165
+ }
166
+ // b2: Approximate from triangle/tetrahedron relationship
167
+ if (maxDimension >= 2) {
168
+ const triangles = simplexCounts[2] || 0;
169
+ const tetrahedra = simplexCounts[3] || 0;
170
+ // Simplified: b2 related to enclosed voids
171
+ const b2 = Math.max(0, tetrahedra > 0 ? 1 : 0);
172
+ bettiNumbers.push(b2);
173
+ }
174
+ return bettiNumbers;
175
+ }
176
+ /**
177
+ * Compute persistence diagram using filtration
178
+ * Tracks birth and death of topological features
179
+ */
180
+ function computePersistenceDiagram(distanceMatrix, maxDimension) {
181
+ const diagram = [];
182
+ // Get all unique distances (filtration values)
183
+ const distances = [];
184
+ const n = distanceMatrix.length;
185
+ for (let i = 0; i < n; i++) {
186
+ for (let j = i + 1; j < n; j++) {
187
+ distances.push(distanceMatrix[i][j]);
188
+ }
189
+ }
190
+ distances.sort((a, b) => a - b);
191
+ const uniqueDistances = [...new Set(distances)];
192
+ // Sample filtration values
193
+ const sampleCount = Math.min(10, uniqueDistances.length);
194
+ const sampleIndices = [];
195
+ for (let i = 0; i < sampleCount; i++) {
196
+ sampleIndices.push(Math.floor(i * uniqueDistances.length / sampleCount));
197
+ }
198
+ const filtrationValues = sampleIndices.map(i => uniqueDistances[i]);
199
+ if (filtrationValues.length === 0)
200
+ return diagram;
201
+ // Track Betti numbers at each filtration value
202
+ let prevBetti = [];
203
+ for (let f = 0; f < filtrationValues.length; f++) {
204
+ const epsilon = filtrationValues[f];
205
+ const simplices = buildRipsComplex(distanceMatrix, epsilon, maxDimension);
206
+ const currentBetti = computeBettiNumbers(new Array(n).fill([]).map((_, i) => [i]), simplices, maxDimension);
207
+ if (f > 0) {
208
+ // Detect births and deaths
209
+ for (let dim = 0; dim <= maxDimension && dim < currentBetti.length; dim++) {
210
+ const prevB = prevBetti[dim] || 0;
211
+ const currB = currentBetti[dim] || 0;
212
+ // New features born
213
+ if (currB > prevB) {
214
+ for (let i = 0; i < currB - prevB; i++) {
215
+ diagram.push({
216
+ birth: filtrationValues[f - 1],
217
+ death: Infinity, // Will be updated when feature dies
218
+ dimension: dim,
219
+ });
220
+ }
221
+ }
222
+ // Features died
223
+ if (currB < prevB) {
224
+ // Find features to kill (those born earliest)
225
+ const toKill = prevB - currB;
226
+ let killed = 0;
227
+ for (let d = diagram.length - 1; d >= 0 && killed < toKill; d--) {
228
+ if (diagram[d].dimension === dim && diagram[d].death === Infinity) {
229
+ diagram[d].death = epsilon;
230
+ killed++;
231
+ }
232
+ }
233
+ }
234
+ }
235
+ }
236
+ else {
237
+ // Initial features (all vertices born at epsilon = 0)
238
+ for (let dim = 0; dim <= maxDimension && dim < currentBetti.length; dim++) {
239
+ for (let i = 0; i < currentBetti[dim]; i++) {
240
+ diagram.push({
241
+ birth: 0,
242
+ death: Infinity,
243
+ dimension: dim,
244
+ });
245
+ }
246
+ }
247
+ }
248
+ prevBetti = currentBetti;
249
+ }
250
+ return diagram;
251
+ }
252
+ /**
253
+ * Get interpretation of Betti numbers
254
+ */
255
+ function interpretBettiNumbers(bettiNumbers) {
256
+ return {
257
+ b0: `${bettiNumbers[0] || 0} connected component(s)`,
258
+ b1: `${bettiNumbers[1] || 0} loop(s)/cycle(s)`,
259
+ b2: `${bettiNumbers[2] || 0} void(s)/cavit${(bettiNumbers[2] || 0) === 1 ? 'y' : 'ies'}`,
260
+ };
261
+ }
262
+ /**
263
+ * Handler for pr_quantum_topology tool
264
+ */
265
+ async function handler(input, context) {
266
+ const logger = context?.logger ?? defaultLogger;
267
+ const startTime = performance.now();
268
+ try {
269
+ // Validate input
270
+ const validationResult = TopologyInputSchema.safeParse(input);
271
+ if (!validationResult.success) {
272
+ logger.error('Input validation failed', { error: validationResult.error.message });
273
+ return errorResult(`Invalid input: ${validationResult.error.message}`);
274
+ }
275
+ const { complex } = validationResult.data;
276
+ const { vertices, maxDimension } = complex;
277
+ logger.debug('Processing quantum topology', {
278
+ vertexCount: vertices.length,
279
+ maxDimension,
280
+ });
281
+ if (vertices.length === 0) {
282
+ return errorResult('No vertices provided');
283
+ }
284
+ // Validate vertex dimensions are consistent
285
+ const firstDim = vertices[0].length;
286
+ for (let i = 1; i < vertices.length; i++) {
287
+ if (vertices[i].length !== firstDim) {
288
+ return errorResult(`Vertex dimension mismatch: vertex ${i} has ${vertices[i].length} dimensions, expected ${firstDim}`);
289
+ }
290
+ }
291
+ let bettiNumbers;
292
+ let persistenceDiagram;
293
+ let homologyClasses;
294
+ // Try to use WASM bridge if available
295
+ if (context?.bridge?.initialized) {
296
+ try {
297
+ logger.debug('Using WASM bridge for topology computation');
298
+ const result = await context.bridge.computeTopology(complex);
299
+ bettiNumbers = result.bettiNumbers;
300
+ persistenceDiagram = result.persistenceDiagram.map(([birth, death], i) => ({
301
+ birth,
302
+ death,
303
+ dimension: Math.min(i % (maxDimension + 1), maxDimension),
304
+ }));
305
+ homologyClasses = result.homologyClasses;
306
+ }
307
+ catch (wasmError) {
308
+ logger.warn('WASM bridge failed, falling back to JS implementation', {
309
+ error: wasmError instanceof Error ? wasmError.message : String(wasmError),
310
+ });
311
+ // Use JavaScript implementation
312
+ const distanceMatrix = buildDistanceMatrix(vertices);
313
+ const maxDistance = Math.max(...distanceMatrix.flat().filter(d => d > 0));
314
+ const simplices = buildRipsComplex(distanceMatrix, maxDistance * 0.5, maxDimension);
315
+ bettiNumbers = computeBettiNumbers(vertices, simplices, maxDimension);
316
+ persistenceDiagram = computePersistenceDiagram(distanceMatrix, maxDimension);
317
+ homologyClasses = bettiNumbers.reduce((a, b) => a + b, 0);
318
+ }
319
+ }
320
+ else {
321
+ // Pure JavaScript fallback
322
+ logger.debug('Using JavaScript fallback for topology computation');
323
+ const distanceMatrix = buildDistanceMatrix(vertices);
324
+ const maxDistance = Math.max(...distanceMatrix.flat().filter(d => d > 0));
325
+ const simplices = buildRipsComplex(distanceMatrix, maxDistance * 0.5, maxDimension);
326
+ bettiNumbers = computeBettiNumbers(vertices, simplices, maxDimension);
327
+ persistenceDiagram = computePersistenceDiagram(distanceMatrix, maxDimension);
328
+ homologyClasses = bettiNumbers.reduce((a, b) => a + b, 0);
329
+ }
330
+ const output = {
331
+ bettiNumbers,
332
+ persistenceDiagram,
333
+ details: {
334
+ homologyClasses,
335
+ interpretation: interpretBettiNumbers(bettiNumbers),
336
+ vertexCount: vertices.length,
337
+ maxDimension,
338
+ },
339
+ };
340
+ const duration = performance.now() - startTime;
341
+ logger.info('Quantum topology completed', {
342
+ bettiNumbers: bettiNumbers.join(', '),
343
+ persistencePoints: persistenceDiagram.length,
344
+ homologyClasses,
345
+ durationMs: duration.toFixed(2),
346
+ });
347
+ return successResult(output);
348
+ }
349
+ catch (error) {
350
+ const duration = performance.now() - startTime;
351
+ logger.error('Quantum topology failed', {
352
+ error: error instanceof Error ? error.message : String(error),
353
+ durationMs: duration.toFixed(2),
354
+ });
355
+ return errorResult(error instanceof Error ? error : new Error(String(error)));
356
+ }
357
+ }
358
+ /**
359
+ * pr_quantum_topology MCP Tool Definition
360
+ */
361
+ export const quantumTopologyTool = {
362
+ name: 'pr_quantum_topology',
363
+ description: 'Compute quantum topology features including Betti numbers and persistence diagrams. Analyzes topological features of point clouds. Uses QuantumEngine for persistent homology computation.',
364
+ category: 'topology',
365
+ version: '0.1.3',
366
+ tags: ['topology', 'betti-numbers', 'persistence', 'homology', 'ai-interpretability'],
367
+ cacheable: true,
368
+ cacheTTL: 120000, // 2 minute cache (expensive computation)
369
+ inputSchema: {
370
+ type: 'object',
371
+ properties: {
372
+ complex: {
373
+ type: 'object',
374
+ properties: {
375
+ vertices: {
376
+ type: 'array',
377
+ items: { type: 'array', items: { type: 'number' } },
378
+ description: 'Vertex coordinates (point cloud)',
379
+ },
380
+ simplices: {
381
+ type: 'array',
382
+ items: {
383
+ type: 'object',
384
+ properties: {
385
+ vertices: { type: 'array', items: { type: 'number' } },
386
+ dimension: { type: 'number' },
387
+ },
388
+ },
389
+ description: 'Explicit simplices (optional, computed from vertices if not provided)',
390
+ },
391
+ maxDimension: {
392
+ type: 'number',
393
+ default: 2,
394
+ description: 'Maximum homology dimension to compute (0-3)',
395
+ },
396
+ },
397
+ required: ['vertices'],
398
+ description: 'Simplicial complex for topological analysis',
399
+ },
400
+ },
401
+ required: ['complex'],
402
+ },
403
+ handler,
404
+ };
405
+ export default quantumTopologyTool;
406
+ //# sourceMappingURL=quantum-topology.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quantum-topology.js","sourceRoot":"","sources":["../../../../src/mcp-tools/coherence/quantum-topology.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Spectral Analysis Tool - pr_spectral_analyze
3
+ *
4
+ * Analyzes stability of systems using spectral graph theory.
5
+ * Computes eigenvalues, spectral gap, and stability metrics.
6
+ *
7
+ * Uses SpectralEngine from prime-radiant-advanced-wasm
8
+ */
9
+ import type { MCPTool } from './types.js';
10
+ /**
11
+ * pr_spectral_analyze MCP Tool Definition
12
+ */
13
+ export declare const spectralAnalyzeTool: MCPTool;
14
+ export default spectralAnalyzeTool;
15
+ //# sourceMappingURL=spectral-analyze.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spectral-analyze.d.ts","sourceRoot":"","sources":["../../../../src/mcp-tools/coherence/spectral-analyze.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,OAAO,EAIR,MAAM,YAAY,CAAC;AAqSpB;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,OA0BjC,CAAC;AAEF,eAAe,mBAAmB,CAAC"}