@evolith/smart-cli 0.0.2-beta → 0.0.3-beta

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 (135) hide show
  1. package/dist/app.module.js +0 -2
  2. package/dist/app.module.js.map +1 -1
  3. package/dist/app.module.spec.d.ts +1 -0
  4. package/dist/app.module.spec.js +305 -0
  5. package/dist/app.module.spec.js.map +1 -0
  6. package/dist/commands/adr/adr.command.spec.d.ts +1 -0
  7. package/dist/commands/adr/adr.command.spec.js +409 -0
  8. package/dist/commands/adr/adr.command.spec.js.map +1 -0
  9. package/dist/commands/architecture/scaffold.command.spec.d.ts +1 -0
  10. package/dist/commands/architecture/scaffold.command.spec.js +207 -0
  11. package/dist/commands/architecture/scaffold.command.spec.js.map +1 -0
  12. package/dist/commands/completion/completion.command.spec.d.ts +1 -0
  13. package/dist/commands/completion/completion.command.spec.js +240 -0
  14. package/dist/commands/completion/completion.command.spec.js.map +1 -0
  15. package/dist/commands/docs/docs.command.spec.d.ts +1 -0
  16. package/dist/commands/docs/docs.command.spec.js +87 -0
  17. package/dist/commands/docs/docs.command.spec.js.map +1 -0
  18. package/dist/commands/drift/drift.command.spec.d.ts +1 -0
  19. package/dist/commands/drift/drift.command.spec.js +327 -0
  20. package/dist/commands/drift/drift.command.spec.js.map +1 -0
  21. package/dist/commands/history/history.command.spec.d.ts +1 -0
  22. package/dist/commands/history/history.command.spec.js +392 -0
  23. package/dist/commands/history/history.command.spec.js.map +1 -0
  24. package/dist/commands/init/agents.command.spec.js +398 -0
  25. package/dist/commands/init/agents.command.spec.js.map +1 -1
  26. package/dist/commands/init/init.command.spec.d.ts +1 -0
  27. package/dist/commands/init/init.command.spec.js +272 -0
  28. package/dist/commands/init/init.command.spec.js.map +1 -0
  29. package/dist/commands/init/upgrade.command.spec.d.ts +1 -0
  30. package/dist/commands/init/upgrade.command.spec.js +378 -0
  31. package/dist/commands/init/upgrade.command.spec.js.map +1 -0
  32. package/dist/commands/mcp/mcp-serve.command.spec.d.ts +1 -0
  33. package/dist/commands/mcp/mcp-serve.command.spec.js +58 -0
  34. package/dist/commands/mcp/mcp-serve.command.spec.js.map +1 -0
  35. package/dist/commands/sdlc/generate-domain.command.spec.d.ts +1 -0
  36. package/dist/commands/sdlc/generate-domain.command.spec.js +47 -0
  37. package/dist/commands/sdlc/generate-domain.command.spec.js.map +1 -0
  38. package/dist/commands/sdlc/handoff.command.spec.d.ts +1 -0
  39. package/dist/commands/sdlc/handoff.command.spec.js +395 -0
  40. package/dist/commands/sdlc/handoff.command.spec.js.map +1 -0
  41. package/dist/commands/sdlc/sdlc.command.spec.d.ts +1 -0
  42. package/dist/commands/sdlc/sdlc.command.spec.js +45 -0
  43. package/dist/commands/sdlc/sdlc.command.spec.js.map +1 -0
  44. package/dist/commands/standards/standards.command.spec.d.ts +1 -0
  45. package/dist/commands/standards/standards.command.spec.js +311 -0
  46. package/dist/commands/standards/standards.command.spec.js.map +1 -0
  47. package/dist/commands/validate/validate.command.spec.d.ts +1 -0
  48. package/dist/commands/validate/validate.command.spec.js +368 -0
  49. package/dist/commands/validate/validate.command.spec.js.map +1 -0
  50. package/dist/core/abstractions/providers/logger.provider.spec.d.ts +1 -0
  51. package/dist/core/abstractions/providers/logger.provider.spec.js +212 -0
  52. package/dist/core/abstractions/providers/logger.provider.spec.js.map +1 -0
  53. package/dist/core/di/container.spec.js +164 -0
  54. package/dist/core/di/container.spec.js.map +1 -1
  55. package/dist/core/mcp/metrics.service.spec.d.ts +1 -0
  56. package/dist/core/mcp/metrics.service.spec.js +159 -0
  57. package/dist/core/mcp/metrics.service.spec.js.map +1 -0
  58. package/dist/core/mcp/prompts/index.js +36 -0
  59. package/dist/core/mcp/prompts/index.js.map +1 -1
  60. package/dist/core/mcp/prompts/index.spec.d.ts +1 -0
  61. package/dist/core/mcp/prompts/index.spec.js +150 -0
  62. package/dist/core/mcp/prompts/index.spec.js.map +1 -0
  63. package/dist/core/mcp/resources/index.js +16 -0
  64. package/dist/core/mcp/resources/index.js.map +1 -1
  65. package/dist/core/mcp/resources/index.spec.d.ts +1 -0
  66. package/dist/core/mcp/resources/index.spec.js +212 -0
  67. package/dist/core/mcp/resources/index.spec.js.map +1 -0
  68. package/dist/core/mcp/server.d.ts +2 -1
  69. package/dist/core/mcp/server.js +256 -5
  70. package/dist/core/mcp/server.js.map +1 -1
  71. package/dist/core/mcp/server.spec.d.ts +1 -0
  72. package/dist/core/mcp/server.spec.js +563 -0
  73. package/dist/core/mcp/server.spec.js.map +1 -0
  74. package/dist/core/mcp/tools/agent.spec.d.ts +1 -0
  75. package/dist/core/mcp/tools/agent.spec.js +171 -0
  76. package/dist/core/mcp/tools/agent.spec.js.map +1 -0
  77. package/dist/core/mcp/tools/architecture.d.ts +2 -0
  78. package/dist/core/mcp/tools/architecture.js +68 -0
  79. package/dist/core/mcp/tools/architecture.js.map +1 -1
  80. package/dist/core/mcp/tools/architecture.spec.d.ts +1 -0
  81. package/dist/core/mcp/tools/architecture.spec.js +145 -0
  82. package/dist/core/mcp/tools/architecture.spec.js.map +1 -0
  83. package/dist/core/mcp/tools/moscow.d.ts +30 -0
  84. package/dist/core/mcp/tools/moscow.js +113 -0
  85. package/dist/core/mcp/tools/moscow.js.map +1 -0
  86. package/dist/core/mcp/tools/moscow.spec.d.ts +1 -0
  87. package/dist/core/mcp/tools/moscow.spec.js +209 -0
  88. package/dist/core/mcp/tools/moscow.spec.js.map +1 -0
  89. package/dist/core/mcp/tools/sdlc.js +2 -1
  90. package/dist/core/mcp/tools/sdlc.js.map +1 -1
  91. package/dist/core/mcp/tools/sdlc.spec.d.ts +1 -0
  92. package/dist/core/mcp/tools/sdlc.spec.js +170 -0
  93. package/dist/core/mcp/tools/sdlc.spec.js.map +1 -0
  94. package/dist/core/mcp/tools/validate.spec.d.ts +1 -0
  95. package/dist/core/mcp/tools/validate.spec.js +130 -0
  96. package/dist/core/mcp/tools/validate.spec.js.map +1 -0
  97. package/dist/core/mcp/watcher.service.spec.js +109 -8
  98. package/dist/core/mcp/watcher.service.spec.js.map +1 -1
  99. package/dist/core/observability/error-reporter.spec.d.ts +1 -0
  100. package/dist/core/observability/error-reporter.spec.js +291 -0
  101. package/dist/core/observability/error-reporter.spec.js.map +1 -0
  102. package/dist/core/observability/structured-logger.spec.d.ts +1 -0
  103. package/dist/core/observability/structured-logger.spec.js +197 -0
  104. package/dist/core/observability/structured-logger.spec.js.map +1 -0
  105. package/dist/core/observability/timing.spec.d.ts +1 -0
  106. package/dist/core/observability/timing.spec.js +216 -0
  107. package/dist/core/observability/timing.spec.js.map +1 -0
  108. package/dist/core/upgrade/satellite-upgrade.service.spec.js +121 -101
  109. package/dist/core/upgrade/satellite-upgrade.service.spec.js.map +1 -1
  110. package/dist/core/validators/deep-architecture-analyzer.d.ts +58 -0
  111. package/dist/core/validators/deep-architecture-analyzer.js +333 -0
  112. package/dist/core/validators/deep-architecture-analyzer.js.map +1 -0
  113. package/dist/core/validators/deep-architecture-analyzer.spec.d.ts +1 -0
  114. package/dist/core/validators/deep-architecture-analyzer.spec.js +216 -0
  115. package/dist/core/validators/deep-architecture-analyzer.spec.js.map +1 -0
  116. package/dist/core/validators/phase-gate-validator.service.js +3 -1
  117. package/dist/core/validators/phase-gate-validator.service.js.map +1 -1
  118. package/dist/core/validators/ruleset-validator-architecture.spec.js +2 -2
  119. package/dist/core/validators/ruleset-validator-architecture.spec.js.map +1 -1
  120. package/dist/core/validators/ruleset-validator.service.js +7 -7
  121. package/dist/core/validators/ruleset-validator.service.js.map +1 -1
  122. package/dist/core/validators/ruleset-validator.service.spec.js +347 -0
  123. package/dist/core/validators/ruleset-validator.service.spec.js.map +1 -1
  124. package/dist/domain/services/index.d.ts +1 -0
  125. package/dist/domain/services/index.js +3 -1
  126. package/dist/domain/services/index.js.map +1 -1
  127. package/dist/domain/services/moscow-prioritization.service.d.ts +44 -0
  128. package/dist/domain/services/moscow-prioritization.service.js +213 -0
  129. package/dist/domain/services/moscow-prioritization.service.js.map +1 -0
  130. package/dist/domain/services/moscow-prioritization.service.spec.d.ts +1 -0
  131. package/dist/domain/services/moscow-prioritization.service.spec.js +285 -0
  132. package/dist/domain/services/moscow-prioritization.service.spec.js.map +1 -0
  133. package/dist/domain/services/standards.service.spec.js +461 -1
  134. package/dist/domain/services/standards.service.spec.js.map +1 -1
  135. package/package.json +2 -2
@@ -36,6 +36,29 @@ describe('DIContainer', () => {
36
36
  it('should throw when resolving unregistered service', () => {
37
37
  expect(() => container.resolve('non-existent')).toThrow('Service not registered');
38
38
  });
39
+ it('should register instance with symbol identifier', () => {
40
+ const symbolId = Symbol('test');
41
+ const instance = { data: 'symbol-test' };
42
+ container.registerInstance(symbolId, instance);
43
+ expect(container.resolve(symbolId)).toBe(instance);
44
+ });
45
+ it('should register instance with class identifier', () => {
46
+ class TestService {
47
+ constructor() {
48
+ this.name = 'test';
49
+ }
50
+ }
51
+ const instance = new TestService();
52
+ container.registerInstance(TestService, instance);
53
+ expect(container.resolve(TestService)).toBe(instance);
54
+ });
55
+ it('should overwrite existing registration', () => {
56
+ const instance1 = { value: 1 };
57
+ const instance2 = { value: 2 };
58
+ container.registerInstance('overwrite-test', instance1);
59
+ container.registerInstance('overwrite-test', instance2);
60
+ expect(container.resolve('overwrite-test')).toBe(instance2);
61
+ });
39
62
  });
40
63
  describe('registerSingleton', () => {
41
64
  it('should create singleton via factory', () => {
@@ -49,6 +72,14 @@ describe('DIContainer', () => {
49
72
  expect(instance1).toBe(instance2);
50
73
  expect(callCount).toBe(1);
51
74
  });
75
+ it('should cache singleton instance after first resolution', () => {
76
+ const factory = jest.fn().mockReturnValue({ id: 1 });
77
+ container.registerSingleton('cached', factory);
78
+ container.resolve('cached');
79
+ container.resolve('cached');
80
+ container.resolve('cached');
81
+ expect(factory).toHaveBeenCalledTimes(1);
82
+ });
52
83
  });
53
84
  describe('registerTransient', () => {
54
85
  it('should create new instance each time', () => {
@@ -65,12 +96,37 @@ describe('DIContainer', () => {
65
96
  expect(callCount).toBe(2);
66
97
  });
67
98
  });
99
+ describe('resolve', () => {
100
+ it('should throw when registration has no instance or factory', () => {
101
+ container.registrations.set('broken', { scope: 'singleton' });
102
+ expect(() => container.resolve('broken')).toThrow('Cannot resolve service');
103
+ });
104
+ it('should resolve singleton with factory on first call', () => {
105
+ const instance = { name: 'factory-singleton' };
106
+ container.registerSingleton('factory-singleton', () => instance);
107
+ const resolved = container.resolve('factory-singleton');
108
+ expect(resolved).toBe(instance);
109
+ });
110
+ it('should resolve transient with factory each call', () => {
111
+ container.registerTransient('factory-transient', () => ({ name: 'transient' }));
112
+ const resolved1 = container.resolve('factory-transient');
113
+ const resolved2 = container.resolve('factory-transient');
114
+ expect(resolved1).toEqual(resolved2);
115
+ expect(resolved1).not.toBe(resolved2);
116
+ });
117
+ });
68
118
  describe('createLogger', () => {
69
119
  it('should create logger via provider', () => {
70
120
  const logger = container.createLogger('TestContext');
71
121
  expect(logger).toBeDefined();
72
122
  expect(typeof logger.info).toBe('function');
73
123
  });
124
+ it('should create different loggers for different contexts', () => {
125
+ const logger1 = container.createLogger('Context1');
126
+ const logger2 = container.createLogger('Context2');
127
+ expect(logger1).toBeDefined();
128
+ expect(logger2).toBeDefined();
129
+ });
74
130
  });
75
131
  describe('createFileSystem', () => {
76
132
  it('should create file system via provider', () => {
@@ -90,6 +146,21 @@ describe('DIContainer', () => {
90
146
  expect(parser).toBeDefined();
91
147
  expect(typeof parser.parse).toBe('function');
92
148
  });
149
+ it('should default to yaml when no format specified', () => {
150
+ const parser = container.createConfigParser();
151
+ expect(parser).toBeDefined();
152
+ });
153
+ it('should use config parser provider cache', () => {
154
+ const mockProvider = {
155
+ createConfigParser: jest.fn().mockReturnValue({
156
+ parse: jest.fn(),
157
+ stringify: jest.fn(),
158
+ }),
159
+ };
160
+ container.setConfigParserProvider('yaml', mockProvider);
161
+ container.createConfigParser('yaml');
162
+ expect(mockProvider.createConfigParser).toHaveBeenCalledWith('yaml');
163
+ });
93
164
  });
94
165
  describe('setLoggerProvider', () => {
95
166
  it('should replace logger provider', () => {
@@ -100,6 +171,20 @@ describe('DIContainer', () => {
100
171
  const logger = container.createLogger('new-context');
101
172
  expect(logger).toBeDefined();
102
173
  });
174
+ it('should use new provider for subsequent logger creation', () => {
175
+ const createLoggerFn = jest.fn().mockReturnValue({
176
+ info: jest.fn(),
177
+ warn: jest.fn(),
178
+ error: jest.fn(),
179
+ debug: jest.fn(),
180
+ });
181
+ const mockProvider = {
182
+ createLogger: createLoggerFn,
183
+ };
184
+ container.setLoggerProvider(mockProvider);
185
+ container.createLogger('test');
186
+ expect(createLoggerFn).toHaveBeenCalledWith('test');
187
+ });
103
188
  });
104
189
  describe('setFileSystemProvider', () => {
105
190
  it('should replace file system provider', () => {
@@ -110,6 +195,63 @@ describe('DIContainer', () => {
110
195
  const fs = container.createFileSystem();
111
196
  expect(fs).toBeDefined();
112
197
  });
198
+ it('should use new provider for subsequent file system creation', () => {
199
+ const mockFs = createMockFileSystem();
200
+ const createFileSystemFn = jest.fn().mockReturnValue(mockFs);
201
+ const mockProvider = {
202
+ createFileSystem: createFileSystemFn,
203
+ };
204
+ container.setFileSystemProvider(mockProvider);
205
+ const fs = container.createFileSystem();
206
+ expect(createFileSystemFn).toHaveBeenCalled();
207
+ expect(fs).toBe(mockFs);
208
+ });
209
+ });
210
+ describe('setConfigParserProvider', () => {
211
+ it('should register config parser provider', () => {
212
+ const mockProvider = {
213
+ createConfigParser: jest.fn().mockReturnValue({
214
+ parse: jest.fn(),
215
+ stringify: jest.fn(),
216
+ }),
217
+ };
218
+ container.setConfigParserProvider('json', mockProvider);
219
+ const parser = container.createConfigParser('json');
220
+ expect(parser).toBeDefined();
221
+ });
222
+ it('should register provider for both cache and resolution', () => {
223
+ const mockProvider = {
224
+ createConfigParser: jest.fn().mockReturnValue({
225
+ parse: jest.fn(),
226
+ stringify: jest.fn(),
227
+ }),
228
+ };
229
+ container.setConfigParserProvider('yaml', mockProvider);
230
+ const resolved = container.resolve('yaml');
231
+ expect(resolved).toBe(mockProvider);
232
+ });
233
+ });
234
+ describe('default providers', () => {
235
+ it('should have ILoggerProvider registered by default', () => {
236
+ const provider = container.resolve('ILoggerProvider');
237
+ expect(provider).toBeDefined();
238
+ expect(typeof provider.createLogger).toBe('function');
239
+ });
240
+ it('should have IFileSystemProvider registered by default', () => {
241
+ const provider = container.resolve('IFileSystemProvider');
242
+ expect(provider).toBeDefined();
243
+ expect(typeof provider.createFileSystem).toBe('function');
244
+ });
245
+ it('should have yaml config parser registered by default', () => {
246
+ const provider = container.resolve('yaml');
247
+ expect(provider).toBeDefined();
248
+ expect(typeof provider.createConfigParser).toBe('function');
249
+ });
250
+ it('should have json config parser registered by default', () => {
251
+ const provider = container.resolve('json');
252
+ expect(provider).toBeDefined();
253
+ expect(typeof provider.createConfigParser).toBe('function');
254
+ });
113
255
  });
114
256
  describe('global container', () => {
115
257
  it('should return same instance with getContainer', () => {
@@ -123,6 +265,12 @@ describe('DIContainer', () => {
123
265
  const container2 = (0, container_1.getContainer)();
124
266
  expect(container1).not.toBe(container2);
125
267
  });
268
+ it('should create new container after reset', () => {
269
+ const container1 = (0, container_1.getContainer)();
270
+ (0, container_1.resetContainer)();
271
+ const container2 = (0, container_1.getContainer)();
272
+ expect(container2).toBeInstanceOf(container_1.DIContainer);
273
+ });
126
274
  });
127
275
  describe('createChildContainer', () => {
128
276
  it('should inherit providers from parent', () => {
@@ -132,6 +280,22 @@ describe('DIContainer', () => {
132
280
  const logger = child.createLogger('child');
133
281
  expect(logger).toBeDefined();
134
282
  });
283
+ it('should create independent child container', () => {
284
+ const parent = (0, container_1.getContainer)();
285
+ const child = (0, container_1.createChildContainer)();
286
+ expect(child).not.toBe(parent);
287
+ });
288
+ it('should inherit file system provider', () => {
289
+ const child = (0, container_1.createChildContainer)();
290
+ const fs = child.createFileSystem();
291
+ expect(fs).toBeDefined();
292
+ });
293
+ it('should have default providers initialized', () => {
294
+ const child = (0, container_1.createChildContainer)();
295
+ expect(() => child.createLogger('test')).not.toThrow();
296
+ expect(() => child.createFileSystem()).not.toThrow();
297
+ expect(() => child.createConfigParser('yaml')).not.toThrow();
298
+ });
135
299
  });
136
300
  });
137
301
  //# sourceMappingURL=container.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"container.spec.js","sourceRoot":"","sources":["../../../src/core/di/container.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"container.spec.js","sourceRoot":"","sources":["../../../src/core/di/container.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const metrics_service_1 = require("./metrics.service");
4
+ describe('McpMetricsService', () => {
5
+ let service;
6
+ beforeEach(() => {
7
+ service = new metrics_service_1.McpMetricsService();
8
+ });
9
+ describe('recordToolCall', () => {
10
+ it('should record a successful tool call', () => {
11
+ service.recordToolCall('test-tool', 100, true);
12
+ const metrics = service.getMetrics();
13
+ expect(metrics.totalRequests).toBe(1);
14
+ expect(metrics.toolMetrics).toHaveLength(1);
15
+ expect(metrics.toolMetrics[0].toolName).toBe('test-tool');
16
+ expect(metrics.toolMetrics[0].callCount).toBe(1);
17
+ expect(metrics.toolMetrics[0].successCount).toBe(1);
18
+ expect(metrics.toolMetrics[0].errorCount).toBe(0);
19
+ expect(metrics.toolMetrics[0].totalLatencyMs).toBe(100);
20
+ });
21
+ it('should record a failed tool call', () => {
22
+ service.recordToolCall('test-tool', 50, false);
23
+ const metrics = service.getMetrics();
24
+ expect(metrics.totalRequests).toBe(1);
25
+ expect(metrics.toolMetrics[0].errorCount).toBe(1);
26
+ expect(metrics.toolMetrics[0].successCount).toBe(0);
27
+ });
28
+ it('should aggregate multiple calls to the same tool', () => {
29
+ service.recordToolCall('test-tool', 100, true);
30
+ service.recordToolCall('test-tool', 200, true);
31
+ service.recordToolCall('test-tool', 50, false);
32
+ const metrics = service.getMetrics();
33
+ expect(metrics.totalRequests).toBe(3);
34
+ expect(metrics.toolMetrics).toHaveLength(1);
35
+ expect(metrics.toolMetrics[0].callCount).toBe(3);
36
+ expect(metrics.toolMetrics[0].successCount).toBe(2);
37
+ expect(metrics.toolMetrics[0].errorCount).toBe(1);
38
+ expect(metrics.toolMetrics[0].totalLatencyMs).toBe(350);
39
+ });
40
+ it('should track multiple different tools', () => {
41
+ service.recordToolCall('tool-a', 100, true);
42
+ service.recordToolCall('tool-b', 200, true);
43
+ const metrics = service.getMetrics();
44
+ expect(metrics.toolMetrics).toHaveLength(2);
45
+ });
46
+ it('should calculate average latency correctly', () => {
47
+ service.recordToolCall('test-tool', 100, true);
48
+ service.recordToolCall('test-tool', 200, true);
49
+ const metrics = service.getMetrics();
50
+ expect(metrics.toolMetrics[0].averageLatencyMs).toBe(150);
51
+ });
52
+ it('should calculate error rate as percentage string', () => {
53
+ service.recordToolCall('test-tool', 100, true);
54
+ service.recordToolCall('test-tool', 100, false);
55
+ const metrics = service.getMetrics();
56
+ expect(metrics.toolMetrics[0].errorRate).toBe('50.00%');
57
+ });
58
+ it('should show 0% error rate when no calls made', () => {
59
+ const metrics = service.getMetrics();
60
+ expect(metrics.toolMetrics).toHaveLength(0);
61
+ });
62
+ it('should update lastCalled timestamp on each call', () => {
63
+ service.recordToolCall('test-tool', 100, true);
64
+ const firstMetrics = service.getToolMetrics('test-tool');
65
+ const before = new Date().toISOString();
66
+ service.recordToolCall('test-tool', 100, true);
67
+ const secondMetrics = service.getToolMetrics('test-tool');
68
+ expect(secondMetrics?.lastCalled).toBeDefined();
69
+ });
70
+ });
71
+ describe('recordError', () => {
72
+ it('should record an error code', () => {
73
+ service.recordError('ERR_001');
74
+ const metrics = service.getMetrics();
75
+ expect(metrics.topErrors).toHaveLength(1);
76
+ expect(metrics.topErrors[0].code).toBe('ERR_001');
77
+ expect(metrics.topErrors[0].count).toBe(1);
78
+ });
79
+ it('should increment error count for repeated errors', () => {
80
+ service.recordError('ERR_001');
81
+ service.recordError('ERR_001');
82
+ service.recordError('ERR_001');
83
+ const metrics = service.getMetrics();
84
+ expect(metrics.topErrors[0].count).toBe(3);
85
+ });
86
+ it('should track multiple error codes', () => {
87
+ service.recordError('ERR_001');
88
+ service.recordError('ERR_002');
89
+ service.recordError('ERR_003');
90
+ const metrics = service.getMetrics();
91
+ expect(metrics.topErrors).toHaveLength(3);
92
+ });
93
+ it('should sort errors by count descending', () => {
94
+ service.recordError('ERR_LOW');
95
+ service.recordError('ERR_HIGH');
96
+ service.recordError('ERR_HIGH');
97
+ service.recordError('ERR_HIGH');
98
+ service.recordError('ERR_MED');
99
+ service.recordError('ERR_MED');
100
+ const metrics = service.getMetrics();
101
+ expect(metrics.topErrors[0].code).toBe('ERR_HIGH');
102
+ expect(metrics.topErrors[1].code).toBe('ERR_MED');
103
+ expect(metrics.topErrors[2].code).toBe('ERR_LOW');
104
+ });
105
+ it('should limit top errors to 5', () => {
106
+ for (let i = 0; i < 10; i++) {
107
+ service.recordError(`ERR_${i}`);
108
+ }
109
+ const metrics = service.getMetrics();
110
+ expect(metrics.topErrors).toHaveLength(5);
111
+ });
112
+ });
113
+ describe('getMetrics', () => {
114
+ it('should return server start time', () => {
115
+ const metrics = service.getMetrics();
116
+ expect(metrics.serverStartTime).toBeDefined();
117
+ expect(new Date(metrics.serverStartTime).getTime()).toBeLessThanOrEqual(Date.now());
118
+ });
119
+ it('should calculate uptime', () => {
120
+ const metrics = service.getMetrics();
121
+ expect(metrics.uptimeMs).toBeGreaterThanOrEqual(0);
122
+ });
123
+ it('should return empty arrays when no data', () => {
124
+ const metrics = service.getMetrics();
125
+ expect(metrics.toolMetrics).toEqual([]);
126
+ expect(metrics.topErrors).toEqual([]);
127
+ });
128
+ });
129
+ describe('getToolMetrics', () => {
130
+ it('should return metrics for a specific tool', () => {
131
+ service.recordToolCall('test-tool', 100, true);
132
+ const toolMetrics = service.getToolMetrics('test-tool');
133
+ expect(toolMetrics).toBeDefined();
134
+ expect(toolMetrics?.toolName).toBe('test-tool');
135
+ });
136
+ it('should return undefined for unknown tool', () => {
137
+ const toolMetrics = service.getToolMetrics('unknown-tool');
138
+ expect(toolMetrics).toBeUndefined();
139
+ });
140
+ });
141
+ describe('reset', () => {
142
+ it('should clear all metrics', () => {
143
+ service.recordToolCall('test-tool', 100, true);
144
+ service.recordError('ERR_001');
145
+ service.reset();
146
+ const metrics = service.getMetrics();
147
+ expect(metrics.totalRequests).toBe(0);
148
+ expect(metrics.toolMetrics).toEqual([]);
149
+ expect(metrics.topErrors).toEqual([]);
150
+ });
151
+ it('should preserve server start time after reset', () => {
152
+ const beforeReset = service.getMetrics().serverStartTime;
153
+ service.reset();
154
+ const afterReset = service.getMetrics().serverStartTime;
155
+ expect(beforeReset).toBe(afterReset);
156
+ });
157
+ });
158
+ });
159
+ //# sourceMappingURL=metrics.service.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics.service.spec.js","sourceRoot":"","sources":["../../../src/core/mcp/metrics.service.spec.ts"],"names":[],"mappings":"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"}
@@ -51,6 +51,14 @@ const PROMPTS = [
51
51
  { name: 'path', description: 'Path to the repository', required: false },
52
52
  ],
53
53
  },
54
+ {
55
+ name: 'evolith/moscow-prioritization',
56
+ description: 'Template for creating MoSCoW prioritization matrix for SDLC discovery phase',
57
+ arguments: [
58
+ { name: 'path', description: 'Path to the repository', required: true },
59
+ { name: 'phase', description: 'Phase to prioritize (default: phase-0)', required: false },
60
+ ],
61
+ },
54
62
  ];
55
63
  async function listPrompts() {
56
64
  return { prompts: PROMPTS };
@@ -81,6 +89,9 @@ async function getPrompt(args) {
81
89
  case 'evolith/ruleset-analysis':
82
90
  template = buildRulesetAnalysisPrompt(promptArgs);
83
91
  break;
92
+ case 'evolith/moscow-prioritization':
93
+ template = buildMoscowwPrioritizationPrompt(promptArgs);
94
+ break;
84
95
  }
85
96
  return {
86
97
  messages: [
@@ -172,4 +183,29 @@ For each rule in the ruleset:
172
183
  3. Provide examples of compliance and non-compliance
173
184
  4. Suggest validation approaches`;
174
185
  }
186
+ function buildMoscowwPrioritizationPrompt(args) {
187
+ return `Please create a MoSCoW prioritization matrix for the SDLC discovery phase.
188
+
189
+ Repository: ${args.path || '<path>'}
190
+ Phase: ${args.phase || 'phase-0'}
191
+
192
+ Use the evolith-moscow-create tool to create the analysis with items categorized as:
193
+
194
+ **MUST** - Non-negotiable requirements for phase success
195
+ **SHOULD** - Important but not critical; can be deferred if necessary
196
+ **COULD** - Desirable but not necessary; nice-to-have improvements
197
+ **WONT** - Explicitly excluded from this phase (but may be considered later)
198
+
199
+ For each item, provide:
200
+ - description: Clear statement of the requirement
201
+ - category: Functional area (e.g., "Governance", "Architecture", "Documentation")
202
+ - rationale: Why this item has this priority level
203
+
204
+ Best practices:
205
+ - Keep MUST items under 60% of total items
206
+ - Every initiative should have at least one MUST item
207
+ - WONT items should be explicitly documented to avoid scope creep
208
+
209
+ After creating the analysis, use evolith-moscow-validate to ensure the prioritization is well-formed.`;
210
+ }
175
211
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/mcp/prompts/index.ts"],"names":[],"mappings":";;AAyDA,kCAEC;AAED,8BA0CC;AAjGD,MAAM,OAAO,GAAa;IACxB;QACE,IAAI,EAAE,6BAA6B;QACnC,WAAW,EAAE,uEAAuE;QACpF,SAAS,EAAE;YACT,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,oCAAoC,EAAE,QAAQ,EAAE,IAAI,EAAE;YACnF,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,yCAAyC,EAAE,QAAQ,EAAE,KAAK,EAAE;SAC7F;KACF;IACD;QACE,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,6DAA6D;QAC1E,SAAS,EAAE;YACT,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,6BAA6B,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC5E,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,gDAAgD,EAAE,QAAQ,EAAE,KAAK,EAAE;SACrG;KACF;IACD;QACE,IAAI,EAAE,6BAA6B;QACnC,WAAW,EAAE,iEAAiE;QAC9E,SAAS,EAAE;YACT,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,IAAI,EAAE;YACvE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,mCAAmC,EAAE,QAAQ,EAAE,KAAK,EAAE;SACrF;KACF;IACD;QACE,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,4CAA4C;QACzD,SAAS,EAAE;YACT,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,IAAI,EAAE;SACxE;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,2CAA2C;QACxD,SAAS,EAAE;YACT,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,IAAI,EAAE;YACvE,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE;YAClE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE;SACjE;KACF;IACD;QACE,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,iDAAiD;QAC9D,SAAS,EAAE;YACT,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,uBAAuB,EAAE,QAAQ,EAAE,IAAI,EAAE;YACzE,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,KAAK,EAAE;SACzE;KACF;CACF,CAAC;AAEK,KAAK,UAAU,WAAW;IAC/B,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAC9B,CAAC;AAEM,KAAK,UAAU,SAAS,CAAC,IAAa;IAC3C,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,IAA4D,CAAC;IAE1G,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,QAAQ,GAAG,EAAE,CAAC;IAElB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,6BAA6B;YAChC,QAAQ,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM;QACR,KAAK,0BAA0B;YAC7B,QAAQ,GAAG,0BAA0B,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM;QACR,KAAK,6BAA6B;YAChC,QAAQ,GAAG,6BAA6B,CAAC,UAAU,CAAC,CAAC;YACrD,MAAM;QACR,KAAK,0BAA0B;YAC7B,QAAQ,GAAG,yBAAyB,CAAC,UAAU,CAAC,CAAC;YACjD,MAAM;QACR,KAAK,sBAAsB;YACzB,QAAQ,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;YAC9C,MAAM;QACR,KAAK,0BAA0B;YAC7B,QAAQ,GAAG,0BAA0B,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM;IACV,CAAC;IAED,OAAO;QACL,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,QAAQ;iBACf;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,IAA4B;IACvD,OAAO,sCAAsC,IAAI,CAAC,IAAI,IAAI,QAAQ;;;;;;;;;EASlE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,8BAA8B,IAAI,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC,EAAE;;oGAEwB,CAAC;AACrG,CAAC;AAED,SAAS,0BAA0B,CAAC,IAA4B;IAC9D,OAAO;;cAEK,IAAI,CAAC,IAAI,IAAI,QAAQ;YACvB,IAAI,CAAC,QAAQ,IAAI,UAAU;;;;;;sGAM+D,CAAC;AACvG,CAAC;AAED,SAAS,6BAA6B,CAAC,IAA4B;IACjE,OAAO,gEAAgE,IAAI,CAAC,IAAI,IAAI,QAAQ;;;;;;;;;;;;;;;EAe5F,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC,yBAAyB;;6DAElB,CAAC;AAC9D,CAAC;AAED,SAAS,yBAAyB,CAAC,IAA4B;IAC7D,OAAO,6DAA6D,IAAI,CAAC,IAAI,IAAI,QAAQ;;;;;;2EAMhB,CAAC;AAC5E,CAAC;AAED,SAAS,sBAAsB,CAAC,IAA4B;IAC1D,OAAO,+CAA+C,IAAI,CAAC,SAAS,IAAI,QAAQ,SAAS,IAAI,CAAC,OAAO,IAAI,MAAM,4BAA4B,IAAI,CAAC,IAAI,IAAI,QAAQ;;;iCAGjI,IAAI,CAAC,SAAS,IAAI,QAAQ;;4BAE/B,IAAI,CAAC,OAAO,IAAI,MAAM;;iFAE+B,CAAC;AAClF,CAAC;AAED,SAAS,0BAA0B,CAAC,IAA4B;IAC9D,OAAO,uBAAuB,IAAI,CAAC,OAAO,IAAI,WAAW;;8CAEb,IAAI,CAAC,OAAO;;EAExD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,mCAAmC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE;;;;;;iCAMlC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/mcp/prompts/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};