@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
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const index_1 = require("./index");
4
+ describe('MCP Prompts', () => {
5
+ describe('listPrompts', () => {
6
+ it('should return list of available prompts', async () => {
7
+ const result = await (0, index_1.listPrompts)();
8
+ expect(result.prompts).toBeDefined();
9
+ expect(Array.isArray(result.prompts)).toBe(true);
10
+ expect(result.prompts.length).toBe(7);
11
+ });
12
+ it('should include validate-repository prompt', async () => {
13
+ const result = await (0, index_1.listPrompts)();
14
+ const prompt = result.prompts.find((p) => p.name === 'evolith/validate-repository');
15
+ expect(prompt).toBeDefined();
16
+ expect(prompt?.arguments.some((a) => a.name === 'path')).toBe(true);
17
+ });
18
+ it('should include agent-onboarding prompt', async () => {
19
+ const result = await (0, index_1.listPrompts)();
20
+ const prompt = result.prompts.find((p) => p.name === 'evolith/agent-onboarding');
21
+ expect(prompt).toBeDefined();
22
+ });
23
+ it('should include architecture-review prompt', async () => {
24
+ const result = await (0, index_1.listPrompts)();
25
+ const prompt = result.prompts.find((p) => p.name === 'evolith/architecture-review');
26
+ expect(prompt).toBeDefined();
27
+ });
28
+ it('should include phase-gate-check prompt', async () => {
29
+ const result = await (0, index_1.listPrompts)();
30
+ const prompt = result.prompts.find((p) => p.name === 'evolith/phase-gate-check');
31
+ expect(prompt).toBeDefined();
32
+ });
33
+ it('should include sdlc-handoff prompt', async () => {
34
+ const result = await (0, index_1.listPrompts)();
35
+ const prompt = result.prompts.find((p) => p.name === 'evolith/sdlc-handoff');
36
+ expect(prompt).toBeDefined();
37
+ expect(prompt?.arguments.some((a) => a.name === 'fromPhase')).toBe(true);
38
+ });
39
+ it('should include ruleset-analysis prompt', async () => {
40
+ const result = await (0, index_1.listPrompts)();
41
+ const prompt = result.prompts.find((p) => p.name === 'evolith/ruleset-analysis');
42
+ expect(prompt).toBeDefined();
43
+ });
44
+ });
45
+ describe('getPrompt', () => {
46
+ describe('evolith/validate-repository', () => {
47
+ it('should return validation prompt template', async () => {
48
+ const result = await (0, index_1.getPrompt)({ name: 'evolith/validate-repository', arguments: { path: '/test/repo' } });
49
+ expect(result.messages).toHaveLength(1);
50
+ expect(result.messages[0].role).toBe('user');
51
+ expect(result.messages[0].content.text).toContain('/test/repo');
52
+ expect(result.messages[0].content.text).toContain('evolith-validate');
53
+ });
54
+ it('should include ruleset focus when provided', async () => {
55
+ const result = await (0, index_1.getPrompt)({
56
+ name: 'evolith/validate-repository',
57
+ arguments: { path: '/test/repo', ruleset: 'governance' },
58
+ });
59
+ expect(result.messages[0].content.text).toContain('governance');
60
+ });
61
+ it('should use placeholders when args not provided', async () => {
62
+ const result = await (0, index_1.getPrompt)({ name: 'evolith/validate-repository', arguments: {} });
63
+ expect(result.messages[0].content.text).toContain('<path>');
64
+ });
65
+ });
66
+ describe('evolith/agent-onboarding', () => {
67
+ it('should return agent onboarding prompt template', async () => {
68
+ const result = await (0, index_1.getPrompt)({
69
+ name: 'evolith/agent-onboarding',
70
+ arguments: { name: 'test-agent', template: 'enterprise' },
71
+ });
72
+ expect(result.messages[0].content.text).toContain('test-agent');
73
+ expect(result.messages[0].content.text).toContain('enterprise');
74
+ expect(result.messages[0].content.text).toContain('evolith-agent-install');
75
+ });
76
+ it('should default to standard template', async () => {
77
+ const result = await (0, index_1.getPrompt)({
78
+ name: 'evolith/agent-onboarding',
79
+ arguments: { name: 'test-agent' },
80
+ });
81
+ expect(result.messages[0].content.text).toContain('standard');
82
+ });
83
+ });
84
+ describe('evolith/architecture-review', () => {
85
+ it('should return architecture review prompt template', async () => {
86
+ const result = await (0, index_1.getPrompt)({
87
+ name: 'evolith/architecture-review',
88
+ arguments: { path: '/test/repo', level: 'F2' },
89
+ });
90
+ expect(result.messages[0].content.text).toContain('/test/repo');
91
+ expect(result.messages[0].content.text).toContain('F2');
92
+ expect(result.messages[0].content.text).toContain('F1-01');
93
+ expect(result.messages[0].content.text).toContain('F2-01');
94
+ expect(result.messages[0].content.text).toContain('F3-01');
95
+ });
96
+ it('should check all levels when level not specified', async () => {
97
+ const result = await (0, index_1.getPrompt)({
98
+ name: 'evolith/architecture-review',
99
+ arguments: { path: '/test/repo' },
100
+ });
101
+ expect(result.messages[0].content.text).toContain('Check all three levels');
102
+ });
103
+ });
104
+ describe('evolith/phase-gate-check', () => {
105
+ it('should return phase gate check prompt template', async () => {
106
+ const result = await (0, index_1.getPrompt)({
107
+ name: 'evolith/phase-gate-check',
108
+ arguments: { path: '/test/repo' },
109
+ });
110
+ expect(result.messages[0].content.text).toContain('/test/repo');
111
+ expect(result.messages[0].content.text).toContain('evolith-sdlc-status');
112
+ });
113
+ });
114
+ describe('evolith/sdlc-handoff', () => {
115
+ it('should return SDLC handoff prompt template', async () => {
116
+ const result = await (0, index_1.getPrompt)({
117
+ name: 'evolith/sdlc-handoff',
118
+ arguments: { path: '/test/repo', fromPhase: 'phase-1', toPhase: 'phase-2' },
119
+ });
120
+ expect(result.messages[0].content.text).toContain('phase-1');
121
+ expect(result.messages[0].content.text).toContain('phase-2');
122
+ expect(result.messages[0].content.text).toContain('evolith-sdlc-handoff');
123
+ });
124
+ });
125
+ describe('evolith/ruleset-analysis', () => {
126
+ it('should return ruleset analysis prompt template', async () => {
127
+ const result = await (0, index_1.getPrompt)({
128
+ name: 'evolith/ruleset-analysis',
129
+ arguments: { ruleset: 'GOV-01', path: '/test/repo' },
130
+ });
131
+ expect(result.messages[0].content.text).toContain('GOV-01');
132
+ expect(result.messages[0].content.text).toContain('/test/repo');
133
+ });
134
+ it('should work without path', async () => {
135
+ const result = await (0, index_1.getPrompt)({
136
+ name: 'evolith/ruleset-analysis',
137
+ arguments: { ruleset: 'GOV-01' },
138
+ });
139
+ expect(result.messages[0].content.text).toContain('GOV-01');
140
+ });
141
+ });
142
+ describe('unknown prompt', () => {
143
+ it('should throw error for unknown prompt', async () => {
144
+ await expect((0, index_1.getPrompt)({ name: 'evolith/unknown' }))
145
+ .rejects.toThrow('Unknown prompt: evolith/unknown');
146
+ });
147
+ });
148
+ });
149
+ });
150
+ //# sourceMappingURL=index.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../../../../src/core/mcp/prompts/index.spec.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,7 @@ const RESOURCES = [
44
44
  { uri: 'evolith://governance/version', name: 'Governance Version', description: 'Current governance schema version' },
45
45
  { uri: 'evolith://core/version', name: 'Core Version', description: 'Current Core schema version' },
46
46
  { uri: 'evolith://repository/config', name: 'Repository Config', description: 'Repository evolith.yaml content' },
47
+ { uri: 'evolith://moscow/phase-0', name: 'MoSCoW Phase 0', description: 'MoSCoW prioritization matrix for discovery phase' },
47
48
  ];
48
49
  async function listResources() {
49
50
  return { resources: RESOURCES };
@@ -78,6 +79,13 @@ async function readResource(args) {
78
79
  else if (uri === 'evolith://repository/config') {
79
80
  return await getRepositoryConfig(fs, configParser);
80
81
  }
82
+ else if (uri === 'evolith://moscow/phase-0') {
83
+ return await getMoscowwAnalysis(fs, 'phase-0');
84
+ }
85
+ else if (uri.startsWith('evolith://moscow/')) {
86
+ const phase = uri.replace('evolith://moscow/', '');
87
+ return await getMoscowwAnalysis(fs, phase);
88
+ }
81
89
  else if (uri === 'evolith://open-core/artifacts') {
82
90
  return await getOpenCoreArtifacts(fs);
83
91
  }
@@ -179,6 +187,14 @@ async function getAclRules(fs) {
179
187
  }
180
188
  return { error: 'ACL rules not found' };
181
189
  }
190
+ async function getMoscowwAnalysis(fs, phase) {
191
+ const dir = process.cwd();
192
+ const moscowPath = path.join(dir, '.evolith', 'moscow', `${phase}.json`);
193
+ if (await fs.exists(moscowPath)) {
194
+ return await fs.readJson(moscowPath);
195
+ }
196
+ return { error: `MoSCoW analysis not found for ${phase}` };
197
+ }
182
198
  function findCorePath(satellitePath, fs) {
183
199
  const parts = satellitePath.split(path.sep);
184
200
  while (parts.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/mcp/resources/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/mcp/resources/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const index_1 = require("./index");
4
+ jest.mock('../tools/tool-utils', () => ({
5
+ getFileSystem: jest.fn(),
6
+ getContainer: jest.fn(),
7
+ }));
8
+ const tool_utils_1 = require("../tools/tool-utils");
9
+ const mockFileSystem = {
10
+ exists: jest.fn(),
11
+ readdir: jest.fn(),
12
+ readdirNames: jest.fn(),
13
+ readJson: jest.fn(),
14
+ readFile: jest.fn(),
15
+ existsSync: jest.fn(),
16
+ stat: jest.fn(),
17
+ };
18
+ const mockConfigParser = {
19
+ parse: jest.fn(),
20
+ };
21
+ describe('MCP Resources', () => {
22
+ beforeEach(() => {
23
+ jest.clearAllMocks();
24
+ tool_utils_1.getFileSystem.mockReturnValue(mockFileSystem);
25
+ tool_utils_1.getContainer.mockReturnValue({
26
+ createConfigParser: jest.fn().mockReturnValue(mockConfigParser),
27
+ });
28
+ });
29
+ describe('listResources', () => {
30
+ it('should return list of available resources', async () => {
31
+ const result = await (0, index_1.listResources)();
32
+ expect(result.resources).toBeDefined();
33
+ expect(Array.isArray(result.resources)).toBe(true);
34
+ expect(result.resources.length).toBeGreaterThan(0);
35
+ });
36
+ it('should include rulesets resource', async () => {
37
+ const result = await (0, index_1.listResources)();
38
+ const rulesetsResource = result.resources.find((r) => r.uri === 'evolith://rulesets');
39
+ expect(rulesetsResource).toBeDefined();
40
+ expect(rulesetsResource?.name).toBe('Rulesets');
41
+ });
42
+ it('should include phase-gates resource', async () => {
43
+ const result = await (0, index_1.listResources)();
44
+ const phaseGatesResource = result.resources.find((r) => r.uri === 'evolith://phase-gates');
45
+ expect(phaseGatesResource).toBeDefined();
46
+ });
47
+ it('should include agents resource', async () => {
48
+ const result = await (0, index_1.listResources)();
49
+ const agentsResource = result.resources.find((r) => r.uri === 'evolith://agents');
50
+ expect(agentsResource).toBeDefined();
51
+ });
52
+ it('should include governance version resource', async () => {
53
+ const result = await (0, index_1.listResources)();
54
+ const versionResource = result.resources.find((r) => r.uri === 'evolith://governance/version');
55
+ expect(versionResource).toBeDefined();
56
+ });
57
+ it('should include core version resource', async () => {
58
+ const result = await (0, index_1.listResources)();
59
+ const coreVersionResource = result.resources.find((r) => r.uri === 'evolith://core/version');
60
+ expect(coreVersionResource).toBeDefined();
61
+ });
62
+ it('should include repository config resource', async () => {
63
+ const result = await (0, index_1.listResources)();
64
+ const configResource = result.resources.find((r) => r.uri === 'evolith://repository/config');
65
+ expect(configResource).toBeDefined();
66
+ });
67
+ });
68
+ describe('readResource', () => {
69
+ describe('evolith://rulesets', () => {
70
+ it('should return empty list when rulesets directory not found', async () => {
71
+ mockFileSystem.existsSync.mockReturnValue(false);
72
+ const result = await (0, index_1.readResource)({ uri: 'evolith://rulesets' });
73
+ expect(result.error).toBeDefined();
74
+ expect(result.rulesets).toEqual([]);
75
+ });
76
+ it('should return list of rulesets when directory exists', async () => {
77
+ mockFileSystem.exists.mockResolvedValue(true);
78
+ mockFileSystem.readdir.mockResolvedValue([
79
+ { name: 'governance', isDirectory: () => true },
80
+ { name: 'acl', isDirectory: () => true },
81
+ ]);
82
+ mockFileSystem.readdirNames
83
+ .mockResolvedValueOnce(['open-core-boundary.rules.json'])
84
+ .mockResolvedValueOnce(['anti-corruption-layer.rules.json']);
85
+ const result = await (0, index_1.readResource)({ uri: 'evolith://rulesets' });
86
+ expect(result.rulesets.length).toBeGreaterThan(0);
87
+ expect(result.count).toBe(result.rulesets.length);
88
+ });
89
+ });
90
+ describe('evolith://phase-gates', () => {
91
+ it('should return phase gate definitions', async () => {
92
+ const result = await (0, index_1.readResource)({ uri: 'evolith://phase-gates' });
93
+ expect(result.phaseGates).toBeDefined();
94
+ expect(result.phaseGates.length).toBe(5);
95
+ expect(result.phaseGates[0].phase).toBe('phase-0');
96
+ expect(result.phaseGates[0].name).toBe('Foundation');
97
+ });
98
+ it('should include all 5 phases', async () => {
99
+ const result = await (0, index_1.readResource)({ uri: 'evolith://phase-gates' });
100
+ const phases = result.phaseGates.map((g) => g.phase);
101
+ expect(phases).toContain('phase-0');
102
+ expect(phases).toContain('phase-1');
103
+ expect(phases).toContain('phase-2');
104
+ expect(phases).toContain('phase-3');
105
+ expect(phases).toContain('phase-4');
106
+ });
107
+ });
108
+ describe('evolith://agents', () => {
109
+ it('should return empty list when agents directory not found', async () => {
110
+ mockFileSystem.exists.mockResolvedValue(false);
111
+ const result = await (0, index_1.readResource)({ uri: 'evolith://agents' });
112
+ expect(result.agents).toEqual([]);
113
+ });
114
+ it('should return list of agents when directory exists', async () => {
115
+ mockFileSystem.exists.mockResolvedValue(true);
116
+ mockFileSystem.readdirNames.mockResolvedValue(['agent-1', 'agent-2']);
117
+ const result = await (0, index_1.readResource)({ uri: 'evolith://agents' });
118
+ expect(result.agents).toEqual(['agent-1', 'agent-2']);
119
+ expect(result.count).toBe(2);
120
+ });
121
+ });
122
+ describe('evolith://governance/version', () => {
123
+ it('should return governance version', async () => {
124
+ const result = await (0, index_1.readResource)({ uri: 'evolith://governance/version' });
125
+ expect(result.version).toBe('1.0.0');
126
+ expect(result.schema).toBe('governance');
127
+ });
128
+ });
129
+ describe('evolith://core/version', () => {
130
+ it('should return core version', async () => {
131
+ const result = await (0, index_1.readResource)({ uri: 'evolith://core/version' });
132
+ expect(result.version).toBe('1.0.0');
133
+ expect(result.schema).toBe('core');
134
+ });
135
+ });
136
+ describe('evolith://repository/config', () => {
137
+ it('should return error when evolith.yaml not found', async () => {
138
+ mockFileSystem.exists.mockResolvedValue(false);
139
+ const result = await (0, index_1.readResource)({ uri: 'evolith://repository/config' });
140
+ expect(result.error).toBe('evolith.yaml not found');
141
+ });
142
+ it('should return parsed config when evolith.yaml exists', async () => {
143
+ mockFileSystem.exists.mockResolvedValue(true);
144
+ mockFileSystem.readFile.mockResolvedValue('name: test\ncoreRef: 1.0.0');
145
+ mockConfigParser.parse.mockReturnValue({ name: 'test', coreRef: '1.0.0' });
146
+ const result = await (0, index_1.readResource)({ uri: 'evolith://repository/config' });
147
+ expect(result.name).toBe('test');
148
+ expect(result.coreRef).toBe('1.0.0');
149
+ });
150
+ });
151
+ describe('evolith://ruleset/{name}', () => {
152
+ it('should return ruleset content when found', async () => {
153
+ mockFileSystem.existsSync.mockReturnValue(true);
154
+ mockFileSystem.readJson.mockResolvedValue({ rules: [{ id: 'R-01' }] });
155
+ const result = await (0, index_1.readResource)({ uri: 'evolith://ruleset/governance/open-core-boundary' });
156
+ expect(result.rules).toBeDefined();
157
+ });
158
+ it('should return error when ruleset not found', async () => {
159
+ mockFileSystem.existsSync.mockReturnValue(false);
160
+ mockFileSystem.exists.mockResolvedValue(false);
161
+ const result = await (0, index_1.readResource)({ uri: 'evolith://ruleset/nonexistent' });
162
+ expect(result.error).toBe('Ruleset not found: nonexistent');
163
+ });
164
+ });
165
+ describe('evolith://agent/{name}', () => {
166
+ it('should return agent content when found', async () => {
167
+ mockFileSystem.exists.mockResolvedValue(true);
168
+ mockFileSystem.readJson.mockResolvedValue({ agent: { name: 'test-agent' } });
169
+ const result = await (0, index_1.readResource)({ uri: 'evolith://agent/test-agent' });
170
+ expect(result.agent.name).toBe('test-agent');
171
+ });
172
+ it('should return error when agent not found', async () => {
173
+ mockFileSystem.exists.mockResolvedValue(false);
174
+ const result = await (0, index_1.readResource)({ uri: 'evolith://agent/nonexistent' });
175
+ expect(result.error).toBe('Agent not found: nonexistent');
176
+ });
177
+ });
178
+ describe('evolith://open-core/artifacts', () => {
179
+ it('should return open-core boundary rules when found', async () => {
180
+ mockFileSystem.exists.mockResolvedValue(true);
181
+ mockFileSystem.readJson.mockResolvedValue({ rules: [] });
182
+ const result = await (0, index_1.readResource)({ uri: 'evolith://open-core/artifacts' });
183
+ expect(result.rules).toBeDefined();
184
+ });
185
+ it('should return error when rules not found', async () => {
186
+ mockFileSystem.exists.mockResolvedValue(false);
187
+ const result = await (0, index_1.readResource)({ uri: 'evolith://open-core/artifacts' });
188
+ expect(result.error).toBe('Open-Core Boundary rules not found');
189
+ });
190
+ });
191
+ describe('evolith://acl/rules', () => {
192
+ it('should return ACL rules when found', async () => {
193
+ mockFileSystem.exists.mockResolvedValue(true);
194
+ mockFileSystem.readJson.mockResolvedValue({ rules: [{ id: 'ACL-01' }] });
195
+ const result = await (0, index_1.readResource)({ uri: 'evolith://acl/rules' });
196
+ expect(result.rules).toBeDefined();
197
+ });
198
+ it('should return error when ACL rules not found', async () => {
199
+ mockFileSystem.exists.mockResolvedValue(false);
200
+ const result = await (0, index_1.readResource)({ uri: 'evolith://acl/rules' });
201
+ expect(result.error).toBe('ACL rules not found');
202
+ });
203
+ });
204
+ describe('unknown URI', () => {
205
+ it('should throw error for unknown resource URI', async () => {
206
+ await expect((0, index_1.readResource)({ uri: 'evolith://unknown' }))
207
+ .rejects.toThrow('Unknown resource URI: evolith://unknown');
208
+ });
209
+ });
210
+ });
211
+ });
212
+ //# sourceMappingURL=index.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../../../../src/core/mcp/resources/index.spec.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,8 @@ declare class DirectMcpServer {
13
13
  private readonly logger;
14
14
  private rulesetValidator;
15
15
  private metricsService;
16
- constructor(rulesetValidator?: RulesetValidatorService, metricsService?: McpMetricsService);
16
+ private readonly transportType;
17
+ constructor(transportType?: McpTransport, port?: number, apiKey?: string, rulesetValidator?: RulesetValidatorService, metricsService?: McpMetricsService);
17
18
  start(): Promise<void>;
18
19
  stop(): Promise<void>;
19
20
  private handleMessage;