atlas-pipeline-mcp 1.0.23 → 1.0.25

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 (50) hide show
  1. package/README.md +71 -4
  2. package/dist/common/error-handling.d.ts +86 -0
  3. package/dist/common/error-handling.d.ts.map +1 -0
  4. package/dist/common/error-handling.js +226 -0
  5. package/dist/common/error-handling.js.map +1 -0
  6. package/dist/mcp.js +50 -0
  7. package/dist/mcp.js.map +1 -1
  8. package/dist/tools/api-design-consultant.d.ts +92 -0
  9. package/dist/tools/api-design-consultant.d.ts.map +1 -0
  10. package/dist/tools/api-design-consultant.js +374 -0
  11. package/dist/tools/api-design-consultant.js.map +1 -0
  12. package/dist/tools/debug/error-classifier.d.ts +14 -0
  13. package/dist/tools/debug/error-classifier.d.ts.map +1 -0
  14. package/dist/tools/debug/error-classifier.js +40 -0
  15. package/dist/tools/debug/error-classifier.js.map +1 -0
  16. package/dist/tools/debug/language-detector.d.ts +16 -0
  17. package/dist/tools/debug/language-detector.d.ts.map +1 -0
  18. package/dist/tools/debug/language-detector.js +67 -0
  19. package/dist/tools/debug/language-detector.js.map +1 -0
  20. package/dist/tools/debug/stack-parser.d.ts +25 -0
  21. package/dist/tools/debug/stack-parser.d.ts.map +1 -0
  22. package/dist/tools/debug/stack-parser.js +122 -0
  23. package/dist/tools/debug/stack-parser.js.map +1 -0
  24. package/dist/tools/dependencies.d.ts.map +1 -1
  25. package/dist/tools/dependencies.js +50 -25
  26. package/dist/tools/dependencies.js.map +1 -1
  27. package/dist/tools/performance-optimizer.d.ts +97 -0
  28. package/dist/tools/performance-optimizer.d.ts.map +1 -0
  29. package/dist/tools/performance-optimizer.js +295 -0
  30. package/dist/tools/performance-optimizer.js.map +1 -0
  31. package/dist/tools/security-scanner.d.ts +74 -0
  32. package/dist/tools/security-scanner.d.ts.map +1 -0
  33. package/dist/tools/security-scanner.js +290 -0
  34. package/dist/tools/security-scanner.js.map +1 -0
  35. package/dist/tools/senior-mentor.d.ts +81 -0
  36. package/dist/tools/senior-mentor.d.ts.map +1 -0
  37. package/dist/tools/senior-mentor.js +308 -0
  38. package/dist/tools/senior-mentor.js.map +1 -0
  39. package/dist/tools/state-management-architect.d.ts +77 -0
  40. package/dist/tools/state-management-architect.d.ts.map +1 -0
  41. package/dist/tools/state-management-architect.js +323 -0
  42. package/dist/tools/state-management-architect.js.map +1 -0
  43. package/dist/tools/test-utils.d.ts.map +1 -1
  44. package/dist/tools/test-utils.js +109 -56
  45. package/dist/tools/test-utils.js.map +1 -1
  46. package/dist/tools/ui-ux-designer.d.ts +91 -0
  47. package/dist/tools/ui-ux-designer.d.ts.map +1 -0
  48. package/dist/tools/ui-ux-designer.js +907 -0
  49. package/dist/tools/ui-ux-designer.js.map +1 -0
  50. package/package.json +3 -2
@@ -0,0 +1,323 @@
1
+ /**
2
+ * Atlas Server - State Management Architect
3
+ *
4
+ * Advanced state management analysis and recommendations
5
+ * - State structure analysis
6
+ * - Performance optimization for state
7
+ * - Scalability assessment
8
+ * - State management pattern recommendations
9
+ * - Redux/Zustand/Recoil comparison
10
+ * - Memory leak detection
11
+ *
12
+ * @module state-management-architect
13
+ * @author Nishant Unavane
14
+ * @version 1.0.0
15
+ */
16
+ import { logger, createTimer } from '../utils.js';
17
+ import { z } from 'zod';
18
+ // ============================================================================
19
+ // Validation Schema
20
+ // ============================================================================
21
+ const StateManagementRequestSchema = z.object({
22
+ currentImplementation: z.string().optional(),
23
+ stateSize: z.number().optional(),
24
+ updateFrequency: z.enum(['high', 'medium', 'low']).optional(),
25
+ teamSize: z.number().optional(),
26
+ appComplexity: z.enum(['simple', 'medium', 'complex', 'enterprise']).optional(),
27
+ performanceIssues: z.array(z.string()).optional(),
28
+ code: z.string().optional(),
29
+ goals: z.array(z.string()).optional(),
30
+ });
31
+ // ============================================================================
32
+ // Analysis
33
+ // ============================================================================
34
+ /**
35
+ * Analyze and architect state management solution
36
+ */
37
+ export async function analyzeStateManagement(request) {
38
+ const timer = createTimer();
39
+ StateManagementRequestSchema.parse(request);
40
+ logger.info({ appComplexity: request.appComplexity, teamSize: request.teamSize }, 'Starting state management analysis');
41
+ const issues = identifyIssues(request);
42
+ const recommendations = generateRecommendations(request);
43
+ const comparison = comparePatterns(request);
44
+ const guide = createImplementationGuide(request);
45
+ const improvements = estimateImprovements(recommendations, request);
46
+ logger.info({ timeMs: timer.elapsed() }, 'State management analysis complete');
47
+ return {
48
+ currentState: request.currentImplementation || 'Not specified',
49
+ issues,
50
+ recommendations,
51
+ patternComparison: comparison,
52
+ implementation: guide,
53
+ expectedImprovements: improvements,
54
+ };
55
+ }
56
+ /**
57
+ * Identify state management issues
58
+ */
59
+ function identifyIssues(request) {
60
+ const issues = [];
61
+ if (request.currentImplementation?.toLowerCase().includes('context')) {
62
+ if (request.teamSize && request.teamSize > 5) {
63
+ issues.push({
64
+ category: 'Scalability',
65
+ severity: 'high',
66
+ issue: 'Context API becomes unwieldy with large teams',
67
+ impact: 'Prop drilling, performance issues, hard to maintain',
68
+ affectedComponents: ['Multiple components'],
69
+ });
70
+ }
71
+ }
72
+ if (request.performanceIssues?.some(i => i.toLowerCase().includes('re-render'))) {
73
+ issues.push({
74
+ category: 'Performance',
75
+ severity: 'high',
76
+ issue: 'Unnecessary re-renders due to state updates',
77
+ impact: '30-50% slower app, poor user experience',
78
+ affectedComponents: ['All components connected to state'],
79
+ });
80
+ }
81
+ if (request.stateSize && request.stateSize > 10000) {
82
+ issues.push({
83
+ category: 'Architecture',
84
+ severity: 'medium',
85
+ issue: 'State is too large and monolithic',
86
+ impact: 'Hard to reason about, slow updates, memory issues',
87
+ affectedComponents: ['Root state'],
88
+ });
89
+ }
90
+ if (request.appComplexity === 'enterprise' && !request.currentImplementation) {
91
+ issues.push({
92
+ category: 'Architecture',
93
+ severity: 'critical',
94
+ issue: 'No clear state management strategy for enterprise app',
95
+ impact: 'Scalability bottleneck, team coordination issues',
96
+ affectedComponents: ['Entire application'],
97
+ });
98
+ }
99
+ return issues;
100
+ }
101
+ /**
102
+ * Generate state management recommendations
103
+ */
104
+ function generateRecommendations(request) {
105
+ const recommendations = [];
106
+ // For simple apps
107
+ if (request.appComplexity === 'simple') {
108
+ recommendations.push({
109
+ pattern: 'useState + useReducer',
110
+ rationale: 'Minimal overhead, perfect for simple apps',
111
+ implementation: 'Use local component state with useReducer for complex logic',
112
+ pros: [
113
+ 'No external dependencies',
114
+ 'Easy to understand',
115
+ 'Great performance',
116
+ 'Built-in React features',
117
+ ],
118
+ cons: [
119
+ 'Prop drilling for shared state',
120
+ 'Not suitable for large apps',
121
+ ],
122
+ scalability: 'poor',
123
+ teamComplexity: 'low',
124
+ performanceRating: 10,
125
+ });
126
+ }
127
+ // For medium apps
128
+ if (request.appComplexity === 'medium') {
129
+ recommendations.push({
130
+ pattern: 'Zustand',
131
+ rationale: 'Lightweight, easy to learn, excellent performance',
132
+ implementation: 'Create stores with Zustand, subscribe to slices',
133
+ pros: [
134
+ 'Minimal boilerplate',
135
+ 'Great TypeScript support',
136
+ 'DevTools available',
137
+ 'Fine-grained subscriptions (no unnecessary renders)',
138
+ 'Small bundle size (~2KB)',
139
+ ],
140
+ cons: [
141
+ 'Smaller ecosystem than Redux',
142
+ 'Less maturity than Redux',
143
+ ],
144
+ scalability: 'good',
145
+ teamComplexity: 'low',
146
+ performanceRating: 9,
147
+ });
148
+ recommendations.push({
149
+ pattern: 'Jotai',
150
+ rationale: 'Primitive-based state management, very flexible',
151
+ implementation: 'Create atoms, compose them with hooks',
152
+ pros: [
153
+ 'Bottom-up approach',
154
+ 'Great for complex derived state',
155
+ 'Excellent TypeScript support',
156
+ 'Very performant',
157
+ ],
158
+ cons: [
159
+ 'More learning curve than Zustand',
160
+ 'Smaller community',
161
+ ],
162
+ scalability: 'good',
163
+ teamComplexity: 'medium',
164
+ performanceRating: 9,
165
+ });
166
+ }
167
+ // For complex/enterprise apps
168
+ if (request.appComplexity === 'complex' || request.appComplexity === 'enterprise') {
169
+ recommendations.push({
170
+ pattern: 'Redux with RTK',
171
+ rationale: 'Battle-tested, mature ecosystem, great dev tools',
172
+ implementation: 'Create slices with Redux Toolkit, use Redux Thunk or RTK Query',
173
+ pros: [
174
+ 'Massive ecosystem',
175
+ 'Time-travel debugging',
176
+ 'Predictable state updates',
177
+ 'Great for large teams',
178
+ 'Excellent middleware support',
179
+ 'RTK reduces boilerplate significantly',
180
+ ],
181
+ cons: [
182
+ 'More boilerplate than alternatives',
183
+ 'Larger bundle size',
184
+ 'Steeper learning curve',
185
+ ],
186
+ scalability: 'excellent',
187
+ teamComplexity: 'high',
188
+ performanceRating: 8,
189
+ });
190
+ }
191
+ return recommendations;
192
+ }
193
+ /**
194
+ * Compare state management patterns
195
+ */
196
+ function comparePatterns(request) {
197
+ return [
198
+ {
199
+ pattern: 'useState/useReducer',
200
+ bundleSize: '0KB (built-in)',
201
+ boilerplate: 'low',
202
+ learningCurve: 'low',
203
+ devExperience: 'Excellent for beginners, hooks are familiar',
204
+ bestFor: 'Simple apps, local component state',
205
+ suitability: request.appComplexity === 'simple' ? 10 : 3,
206
+ },
207
+ {
208
+ pattern: 'Context API',
209
+ bundleSize: '0KB (built-in)',
210
+ boilerplate: 'low',
211
+ learningCurve: 'low',
212
+ devExperience: 'Easy to learn, performance gotchas',
213
+ bestFor: 'Theming, global config, small teams',
214
+ suitability: request.appComplexity === 'simple' && (request.teamSize || 0) < 5 ? 8 : 4,
215
+ },
216
+ {
217
+ pattern: 'Zustand',
218
+ bundleSize: '~2KB',
219
+ boilerplate: 'low',
220
+ learningCurve: 'low',
221
+ devExperience: 'Excellent DX, minimal API',
222
+ bestFor: 'Medium apps, teams that value simplicity',
223
+ suitability: request.appComplexity === 'medium' ? 9 : request.appComplexity === 'simple' ? 7 : 6,
224
+ },
225
+ {
226
+ pattern: 'Redux + RTK',
227
+ bundleSize: '~40KB',
228
+ boilerplate: 'medium',
229
+ learningCurve: 'high',
230
+ devExperience: 'Excellent tools, large ecosystem',
231
+ bestFor: 'Enterprise apps, large teams, complex state',
232
+ suitability: request.appComplexity === 'enterprise' ? 10 : request.appComplexity === 'complex' ? 9 : 4,
233
+ },
234
+ {
235
+ pattern: 'Jotai',
236
+ bundleSize: '~3KB',
237
+ boilerplate: 'low',
238
+ learningCurve: 'medium',
239
+ devExperience: 'Functional, composable, performant',
240
+ bestFor: 'Apps with complex derived state',
241
+ suitability: request.appComplexity === 'complex' ? 8 : request.appComplexity === 'medium' ? 7 : 3,
242
+ },
243
+ {
244
+ pattern: 'Recoil',
245
+ bundleSize: '~4KB',
246
+ boilerplate: 'low',
247
+ learningCurve: 'medium',
248
+ devExperience: 'Atom-based, can be unintuitive',
249
+ bestFor: 'Apps with fine-grained reactive state',
250
+ suitability: request.appComplexity === 'complex' ? 7 : request.appComplexity === 'medium' ? 6 : 3,
251
+ },
252
+ ];
253
+ }
254
+ /**
255
+ * Create implementation guide
256
+ */
257
+ function createImplementationGuide(request) {
258
+ return {
259
+ steps: [
260
+ 'Audit current state structure and identify pain points',
261
+ 'Choose state management solution based on complexity',
262
+ 'Create store/reducer structure',
263
+ 'Migrate component state incrementally',
264
+ 'Add selectors/subscriptions for components',
265
+ 'Set up DevTools for debugging',
266
+ 'Add unit tests for state logic',
267
+ 'Document state patterns for team',
268
+ ],
269
+ timeline: request.appComplexity === 'enterprise'
270
+ ? '4-8 weeks'
271
+ : request.appComplexity === 'complex'
272
+ ? '2-4 weeks'
273
+ : '1-2 weeks',
274
+ risks: [
275
+ 'Performance degradation during migration',
276
+ 'Breaking existing functionality',
277
+ 'Team learning curve',
278
+ 'Increased bundle size',
279
+ ],
280
+ mitigations: [
281
+ 'Use feature flags to rollout incrementally',
282
+ 'Maintain backward compatibility',
283
+ 'Invest in team training',
284
+ 'Use code splitting for state management code',
285
+ ],
286
+ };
287
+ }
288
+ /**
289
+ * Estimate improvements
290
+ */
291
+ function estimateImprovements(recommendations, request) {
292
+ const improvements = [];
293
+ const bestRecommendation = recommendations[0];
294
+ if (request.performanceIssues?.some(i => i.toLowerCase().includes('re-render'))) {
295
+ improvements.push({
296
+ metric: 'Render performance',
297
+ currentValue: 'Multiple unnecessary renders',
298
+ expectedValue: 'Only subscribed components re-render',
299
+ improvement: '40-60% reduction in renders',
300
+ });
301
+ }
302
+ improvements.push({
303
+ metric: 'Developer experience',
304
+ expectedValue: bestRecommendation ? `${bestRecommendation.pattern} - minimal boilerplate` : 'Improved',
305
+ improvement: '30-50% faster development',
306
+ });
307
+ improvements.push({
308
+ metric: 'Code maintainability',
309
+ expectedValue: 'Clear state flow',
310
+ improvement: '50% easier to understand state logic',
311
+ });
312
+ improvements.push({
313
+ metric: 'Team scalability',
314
+ expectedValue: 'Clear patterns everyone follows',
315
+ improvement: 'New developers productive in days instead of weeks',
316
+ });
317
+ return improvements;
318
+ }
319
+ // ============================================================================
320
+ // Export
321
+ // ============================================================================
322
+ export default analyzeStateManagement;
323
+ //# sourceMappingURL=state-management-architect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-management-architect.js","sourceRoot":"","sources":["../../src/tools/state-management-architect.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"test-utils.d.ts","sourceRoot":"","sources":["../../src/tools/test-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-utils.d.ts","sourceRoot":"","sources":["../../src/tools/test-utils.ts"],"names":[],"mappings":"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"}
@@ -12,23 +12,31 @@
12
12
  * @version 1.0.0
13
13
  */
14
14
  // ============================================================================
15
+ // Constants
16
+ // ============================================================================
17
+ const DEFAULT_CONFIDENCE = 0.85;
18
+ const DEFAULT_TIMEOUT_MS = 5000;
19
+ const DEFAULT_INTERVAL_MS = 100;
20
+ const BENCHMARK_WARMUP_ITERATIONS = 10;
21
+ const DEFAULT_BENCHMARK_ITERATIONS = 100;
22
+ // ============================================================================
15
23
  // Mock Data Generators
16
24
  // ============================================================================
17
25
  /**
18
26
  * Generate mock intent analysis for testing
19
27
  */
20
28
  export function mockIntentAnalysis(overrides) {
21
- return {
29
+ const defaults = {
22
30
  primaryIntent: 'code_generation',
23
- confidence: 0.85,
31
+ confidence: DEFAULT_CONFIDENCE,
24
32
  entities: [
25
33
  { type: 'language', value: 'TypeScript', position: { start: 10, end: 20 } },
26
34
  { type: 'framework', value: 'React', position: { start: 25, end: 30 } },
27
35
  ],
28
36
  keywords: ['create', 'component', 'typescript', 'react'],
29
37
  requiresClarification: false,
30
- ...overrides,
31
38
  };
39
+ return { ...defaults, ...overrides };
32
40
  }
33
41
  /**
34
42
  * Generate mock project info for testing
@@ -189,34 +197,50 @@ export async function assertThrows(fn, expectedMessage) {
189
197
  throw new Error('Expected function to throw, but it did not');
190
198
  }
191
199
  catch (error) {
192
- if (error instanceof Error) {
193
- if (expectedMessage) {
194
- const matches = typeof expectedMessage === 'string'
195
- ? error.message.includes(expectedMessage)
196
- : expectedMessage.test(error.message);
197
- if (!matches) {
198
- throw new Error(`Expected error message "${error.message}" to match "${expectedMessage}"`);
199
- }
200
- }
201
- return error;
200
+ if (!(error instanceof Error)) {
201
+ throw error;
202
202
  }
203
- throw error;
203
+ if (expectedMessage && !matchesMessage(error.message, expectedMessage)) {
204
+ throw new Error(`Expected error message "${error.message}" to match "${expectedMessage}"`);
205
+ }
206
+ return error;
204
207
  }
205
208
  }
209
+ /**
210
+ * Helper to check if error message matches pattern
211
+ */
212
+ function matchesMessage(message, pattern) {
213
+ return typeof pattern === 'string'
214
+ ? message.includes(pattern)
215
+ : pattern.test(message);
216
+ }
206
217
  /**
207
218
  * Wait for a condition to be true
208
219
  */
209
220
  export async function waitFor(condition, options = {}) {
210
- const { timeout = 5000, interval = 100 } = options;
221
+ const timeout = options.timeout ?? DEFAULT_TIMEOUT_MS;
222
+ const interval = options.interval ?? DEFAULT_INTERVAL_MS;
211
223
  const start = Date.now();
212
- while (Date.now() - start < timeout) {
224
+ while (!hasTimedOut(start, timeout)) {
213
225
  if (await condition()) {
214
226
  return;
215
227
  }
216
- await new Promise((resolve) => setTimeout(resolve, interval));
228
+ await sleep(interval);
217
229
  }
218
230
  throw new Error(`Condition not met within ${timeout}ms`);
219
231
  }
232
+ /**
233
+ * Helper to check if operation has timed out
234
+ */
235
+ function hasTimedOut(startTime, timeout) {
236
+ return Date.now() - startTime >= timeout;
237
+ }
238
+ /**
239
+ * Helper for async sleep
240
+ */
241
+ function sleep(ms) {
242
+ return new Promise((resolve) => setTimeout(resolve, ms));
243
+ }
220
244
  /**
221
245
  * Create a spy function that tracks calls
222
246
  */
@@ -238,73 +262,102 @@ export function createSpy() {
238
262
  /**
239
263
  * Benchmark a function performance
240
264
  */
241
- export async function benchmark(name, fn, iterations = 100) {
242
- const times = [];
243
- // Warmup
244
- for (let i = 0; i < Math.min(10, iterations); i++) {
265
+ export async function benchmark(name, fn, iterations = DEFAULT_BENCHMARK_ITERATIONS) {
266
+ const times = await runBenchmarkIterations(fn, iterations);
267
+ const stats = calculateBenchmarkStats(times, iterations);
268
+ return {
269
+ name,
270
+ iterations,
271
+ ...stats,
272
+ };
273
+ }
274
+ /**
275
+ * Run benchmark iterations with warmup
276
+ */
277
+ async function runBenchmarkIterations(fn, iterations) {
278
+ // Warmup phase
279
+ const warmupCount = Math.min(BENCHMARK_WARMUP_ITERATIONS, iterations);
280
+ for (let i = 0; i < warmupCount; i++) {
245
281
  await fn();
246
282
  }
247
- // Actual benchmark
283
+ // Measurement phase
284
+ const times = [];
248
285
  for (let i = 0; i < iterations; i++) {
249
286
  const start = performance.now();
250
287
  await fn();
251
288
  times.push(performance.now() - start);
252
289
  }
253
- const totalMs = times.reduce((a, b) => a + b, 0);
290
+ return times;
291
+ }
292
+ /**
293
+ * Calculate benchmark statistics
294
+ */
295
+ function calculateBenchmarkStats(times, iterations) {
296
+ const totalMs = times.reduce((sum, time) => sum + time, 0);
254
297
  const avgMs = totalMs / iterations;
255
298
  const minMs = Math.min(...times);
256
299
  const maxMs = Math.max(...times);
257
300
  const opsPerSecond = 1000 / avgMs;
258
- return {
259
- name,
260
- iterations,
261
- totalMs,
262
- avgMs,
263
- minMs,
264
- maxMs,
265
- opsPerSecond,
266
- };
301
+ return { totalMs, avgMs, minMs, maxMs, opsPerSecond };
267
302
  }
268
303
  /**
269
304
  * Compare multiple function implementations
270
305
  */
271
- export async function benchmarkCompare(tests, iterations = 100) {
272
- const results = [];
273
- for (const test of tests) {
274
- const result = await benchmark(test.name, test.fn, iterations);
275
- results.push(result);
276
- }
306
+ export async function benchmarkCompare(tests, iterations = DEFAULT_BENCHMARK_ITERATIONS) {
307
+ const results = await Promise.all(tests.map(test => benchmark(test.name, test.fn, iterations)));
277
308
  // Sort by fastest first
278
- results.sort((a, b) => a.avgMs - b.avgMs);
279
- return results;
309
+ return results.sort((a, b) => a.avgMs - b.avgMs);
280
310
  }
281
311
  /**
282
312
  * Print benchmark results to console
283
313
  */
284
314
  export function printBenchmarkResults(results) {
315
+ if (results.length === 0) {
316
+ console.log('\nšŸ“Š No benchmark results to display\n');
317
+ return;
318
+ }
285
319
  console.log('\nšŸ“Š Benchmark Results:\n');
320
+ printBenchmarkTable(results);
321
+ printRelativePerformance(results);
322
+ }
323
+ /**
324
+ * Print formatted benchmark table
325
+ */
326
+ function printBenchmarkTable(results) {
286
327
  console.log('│ Name │ Avg (ms) │ Min (ms) │ Max (ms) │ Ops/sec │');
287
328
  console.log('ā”œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¼ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¼ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¼ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¼ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¤');
288
329
  for (const result of results) {
289
- const name = result.name.padEnd(30);
290
- const avg = result.avgMs.toFixed(2).padStart(8);
291
- const min = result.minMs.toFixed(2).padStart(8);
292
- const max = result.maxMs.toFixed(2).padStart(8);
293
- const ops = Math.round(result.opsPerSecond).toString().padStart(7);
294
- console.log(`│ ${name} │ ${avg} │ ${min} │ ${max} │ ${ops} │`);
330
+ const row = formatBenchmarkRow(result);
331
+ console.log(row);
295
332
  }
296
333
  console.log('ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”“ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”“ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”“ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”“ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜\n');
297
- // Show relative performance
298
- if (results.length > 1) {
299
- const fastest = results[0];
300
- console.log('šŸ† Relative Performance:\n');
301
- for (let i = 1; i < results.length; i++) {
302
- const result = results[i];
303
- const factor = (result.avgMs / fastest.avgMs).toFixed(2);
304
- console.log(` ${result.name}: ${factor}x slower than ${fastest.name}`);
305
- }
306
- console.log();
334
+ }
335
+ /**
336
+ * Format a single benchmark result row
337
+ */
338
+ function formatBenchmarkRow(result) {
339
+ const name = result.name.padEnd(30);
340
+ const avg = result.avgMs.toFixed(2).padStart(8);
341
+ const min = result.minMs.toFixed(2).padStart(8);
342
+ const max = result.maxMs.toFixed(2).padStart(8);
343
+ const ops = Math.round(result.opsPerSecond).toString().padStart(7);
344
+ return `│ ${name} │ ${avg} │ ${min} │ ${max} │ ${ops} │`;
345
+ }
346
+ /**
347
+ * Print relative performance comparison
348
+ */
349
+ function printRelativePerformance(results) {
350
+ if (results.length <= 1) {
351
+ return;
352
+ }
353
+ const fastest = results[0];
354
+ console.log('šŸ† Relative Performance:\n');
355
+ for (let i = 1; i < results.length; i++) {
356
+ const result = results[i];
357
+ const factor = (result.avgMs / fastest.avgMs).toFixed(2);
358
+ console.log(` ${result.name}: ${factor}x slower than ${fastest.name}`);
307
359
  }
360
+ console.log();
308
361
  }
309
362
  // ============================================================================
310
363
  // Integration Test Helpers
@@ -1 +1 @@
1
- {"version":3,"file":"test-utils.js","sourceRoot":"","sources":["../../src/tools/test-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-utils.js","sourceRoot":"","sources":["../../src/tools/test-utils.ts"],"names":[],"mappings":"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"}