@evolith/smart-cli 0.0.1-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 (199) hide show
  1. package/ARCHITECTURE.md +667 -89
  2. package/dist/app.module.js +2 -2
  3. package/dist/app.module.js.map +1 -1
  4. package/dist/app.module.spec.d.ts +1 -0
  5. package/dist/app.module.spec.js +305 -0
  6. package/dist/app.module.spec.js.map +1 -0
  7. package/dist/application/services/index.d.ts +14 -5
  8. package/dist/application/services/index.js +41 -3
  9. package/dist/application/services/index.js.map +1 -1
  10. package/dist/application/services/phase-transition.use-case.spec.d.ts +1 -0
  11. package/dist/application/services/phase-transition.use-case.spec.js +297 -0
  12. package/dist/application/services/phase-transition.use-case.spec.js.map +1 -0
  13. package/dist/commands/adr/adr.command.spec.d.ts +1 -0
  14. package/dist/commands/adr/adr.command.spec.js +409 -0
  15. package/dist/commands/adr/adr.command.spec.js.map +1 -0
  16. package/dist/commands/architecture/scaffold.command.spec.d.ts +1 -0
  17. package/dist/commands/architecture/scaffold.command.spec.js +207 -0
  18. package/dist/commands/architecture/scaffold.command.spec.js.map +1 -0
  19. package/dist/commands/completion/completion.command.spec.d.ts +1 -0
  20. package/dist/commands/completion/completion.command.spec.js +240 -0
  21. package/dist/commands/completion/completion.command.spec.js.map +1 -0
  22. package/dist/commands/docs/docs.command.d.ts +5 -0
  23. package/dist/commands/docs/docs.command.js +159 -3
  24. package/dist/commands/docs/docs.command.js.map +1 -1
  25. package/dist/commands/docs/docs.command.spec.d.ts +1 -0
  26. package/dist/commands/docs/docs.command.spec.js +87 -0
  27. package/dist/commands/docs/docs.command.spec.js.map +1 -0
  28. package/dist/commands/drift/drift.command.d.ts +24 -0
  29. package/dist/commands/drift/drift.command.js +250 -0
  30. package/dist/commands/drift/drift.command.js.map +1 -0
  31. package/dist/commands/drift/drift.command.spec.d.ts +1 -0
  32. package/dist/commands/drift/drift.command.spec.js +327 -0
  33. package/dist/commands/drift/drift.command.spec.js.map +1 -0
  34. package/dist/commands/history/history.command.spec.d.ts +1 -0
  35. package/dist/commands/history/history.command.spec.js +392 -0
  36. package/dist/commands/history/history.command.spec.js.map +1 -0
  37. package/dist/commands/init/agents.command.spec.d.ts +1 -0
  38. package/dist/commands/init/agents.command.spec.js +550 -0
  39. package/dist/commands/init/agents.command.spec.js.map +1 -0
  40. package/dist/commands/init/init.command.spec.d.ts +1 -0
  41. package/dist/commands/init/init.command.spec.js +272 -0
  42. package/dist/commands/init/init.command.spec.js.map +1 -0
  43. package/dist/commands/init/upgrade.command.d.ts +10 -0
  44. package/dist/commands/init/upgrade.command.js +134 -1
  45. package/dist/commands/init/upgrade.command.js.map +1 -1
  46. package/dist/commands/init/upgrade.command.spec.d.ts +1 -0
  47. package/dist/commands/init/upgrade.command.spec.js +378 -0
  48. package/dist/commands/init/upgrade.command.spec.js.map +1 -0
  49. package/dist/commands/mcp/mcp-serve.command.spec.d.ts +1 -0
  50. package/dist/commands/mcp/mcp-serve.command.spec.js +58 -0
  51. package/dist/commands/mcp/mcp-serve.command.spec.js.map +1 -0
  52. package/dist/commands/sdlc/gate-status.command.d.ts +5 -0
  53. package/dist/commands/sdlc/gate-status.command.js +114 -0
  54. package/dist/commands/sdlc/gate-status.command.js.map +1 -0
  55. package/dist/commands/sdlc/generate-domain.command.spec.d.ts +1 -0
  56. package/dist/commands/sdlc/generate-domain.command.spec.js +47 -0
  57. package/dist/commands/sdlc/generate-domain.command.spec.js.map +1 -0
  58. package/dist/commands/sdlc/handoff.command.spec.d.ts +1 -0
  59. package/dist/commands/sdlc/handoff.command.spec.js +395 -0
  60. package/dist/commands/sdlc/handoff.command.spec.js.map +1 -0
  61. package/dist/commands/sdlc/sdlc.command.js +3 -1
  62. package/dist/commands/sdlc/sdlc.command.js.map +1 -1
  63. package/dist/commands/sdlc/sdlc.command.spec.d.ts +1 -0
  64. package/dist/commands/sdlc/sdlc.command.spec.js +45 -0
  65. package/dist/commands/sdlc/sdlc.command.spec.js.map +1 -0
  66. package/dist/commands/standards/standards.command.spec.d.ts +1 -0
  67. package/dist/commands/standards/standards.command.spec.js +311 -0
  68. package/dist/commands/standards/standards.command.spec.js.map +1 -0
  69. package/dist/commands/validate/validate.command.d.ts +4 -0
  70. package/dist/commands/validate/validate.command.js +39 -0
  71. package/dist/commands/validate/validate.command.js.map +1 -1
  72. package/dist/commands/validate/validate.command.spec.d.ts +1 -0
  73. package/dist/commands/validate/validate.command.spec.js +368 -0
  74. package/dist/commands/validate/validate.command.spec.js.map +1 -0
  75. package/dist/core/abstractions/providers/logger.provider.spec.d.ts +1 -0
  76. package/dist/core/abstractions/providers/logger.provider.spec.js +212 -0
  77. package/dist/core/abstractions/providers/logger.provider.spec.js.map +1 -0
  78. package/dist/core/agents/agent-ruleset-builder.d.ts +30 -0
  79. package/dist/core/agents/agent-ruleset-builder.js +75 -0
  80. package/dist/core/agents/agent-ruleset-builder.js.map +1 -0
  81. package/dist/core/agents/agent-ruleset-builder.spec.d.ts +1 -0
  82. package/dist/core/agents/agent-ruleset-builder.spec.js +135 -0
  83. package/dist/core/agents/agent-ruleset-builder.spec.js.map +1 -0
  84. package/dist/core/di/container.spec.js +164 -0
  85. package/dist/core/di/container.spec.js.map +1 -1
  86. package/dist/core/mcp/metrics.service.spec.d.ts +1 -0
  87. package/dist/core/mcp/metrics.service.spec.js +159 -0
  88. package/dist/core/mcp/metrics.service.spec.js.map +1 -0
  89. package/dist/core/mcp/prompts/index.js +36 -0
  90. package/dist/core/mcp/prompts/index.js.map +1 -1
  91. package/dist/core/mcp/prompts/index.spec.d.ts +1 -0
  92. package/dist/core/mcp/prompts/index.spec.js +150 -0
  93. package/dist/core/mcp/prompts/index.spec.js.map +1 -0
  94. package/dist/core/mcp/resources/index.js +16 -0
  95. package/dist/core/mcp/resources/index.js.map +1 -1
  96. package/dist/core/mcp/resources/index.spec.d.ts +1 -0
  97. package/dist/core/mcp/resources/index.spec.js +212 -0
  98. package/dist/core/mcp/resources/index.spec.js.map +1 -0
  99. package/dist/core/mcp/server.d.ts +15 -9
  100. package/dist/core/mcp/server.js +480 -174
  101. package/dist/core/mcp/server.js.map +1 -1
  102. package/dist/core/mcp/server.spec.d.ts +1 -0
  103. package/dist/core/mcp/server.spec.js +563 -0
  104. package/dist/core/mcp/server.spec.js.map +1 -0
  105. package/dist/core/mcp/tools/agent.spec.d.ts +1 -0
  106. package/dist/core/mcp/tools/agent.spec.js +171 -0
  107. package/dist/core/mcp/tools/agent.spec.js.map +1 -0
  108. package/dist/core/mcp/tools/architecture.d.ts +2 -0
  109. package/dist/core/mcp/tools/architecture.js +68 -0
  110. package/dist/core/mcp/tools/architecture.js.map +1 -1
  111. package/dist/core/mcp/tools/architecture.spec.d.ts +1 -0
  112. package/dist/core/mcp/tools/architecture.spec.js +145 -0
  113. package/dist/core/mcp/tools/architecture.spec.js.map +1 -0
  114. package/dist/core/mcp/tools/moscow.d.ts +30 -0
  115. package/dist/core/mcp/tools/moscow.js +113 -0
  116. package/dist/core/mcp/tools/moscow.js.map +1 -0
  117. package/dist/core/mcp/tools/moscow.spec.d.ts +1 -0
  118. package/dist/core/mcp/tools/moscow.spec.js +209 -0
  119. package/dist/core/mcp/tools/moscow.spec.js.map +1 -0
  120. package/dist/core/mcp/tools/sdlc.js +2 -1
  121. package/dist/core/mcp/tools/sdlc.js.map +1 -1
  122. package/dist/core/mcp/tools/sdlc.spec.d.ts +1 -0
  123. package/dist/core/mcp/tools/sdlc.spec.js +170 -0
  124. package/dist/core/mcp/tools/sdlc.spec.js.map +1 -0
  125. package/dist/core/mcp/tools/validate.spec.d.ts +1 -0
  126. package/dist/core/mcp/tools/validate.spec.js +130 -0
  127. package/dist/core/mcp/tools/validate.spec.js.map +1 -0
  128. package/dist/core/mcp/watcher.service.spec.js +109 -8
  129. package/dist/core/mcp/watcher.service.spec.js.map +1 -1
  130. package/dist/core/observability/error-reporter.spec.d.ts +1 -0
  131. package/dist/core/observability/error-reporter.spec.js +291 -0
  132. package/dist/core/observability/error-reporter.spec.js.map +1 -0
  133. package/dist/core/observability/structured-logger.spec.d.ts +1 -0
  134. package/dist/core/observability/structured-logger.spec.js +197 -0
  135. package/dist/core/observability/structured-logger.spec.js.map +1 -0
  136. package/dist/core/observability/timing.spec.d.ts +1 -0
  137. package/dist/core/observability/timing.spec.js +216 -0
  138. package/dist/core/observability/timing.spec.js.map +1 -0
  139. package/dist/core/services/command-history.service.spec.d.ts +1 -0
  140. package/dist/core/services/command-history.service.spec.js +166 -0
  141. package/dist/core/services/command-history.service.spec.js.map +1 -0
  142. package/dist/core/upgrade/satellite-upgrade.service.d.ts +48 -0
  143. package/dist/core/upgrade/satellite-upgrade.service.js +358 -0
  144. package/dist/core/upgrade/satellite-upgrade.service.js.map +1 -0
  145. package/dist/core/upgrade/satellite-upgrade.service.spec.d.ts +1 -0
  146. package/dist/core/upgrade/satellite-upgrade.service.spec.js +163 -0
  147. package/dist/core/upgrade/satellite-upgrade.service.spec.js.map +1 -0
  148. package/dist/core/validators/architecture-drift.service.d.ts +68 -0
  149. package/dist/core/validators/architecture-drift.service.js +266 -0
  150. package/dist/core/validators/architecture-drift.service.js.map +1 -0
  151. package/dist/core/validators/architecture-drift.service.spec.d.ts +1 -0
  152. package/dist/core/validators/architecture-drift.service.spec.js +315 -0
  153. package/dist/core/validators/architecture-drift.service.spec.js.map +1 -0
  154. package/dist/core/validators/deep-architecture-analyzer.d.ts +58 -0
  155. package/dist/core/validators/deep-architecture-analyzer.js +333 -0
  156. package/dist/core/validators/deep-architecture-analyzer.js.map +1 -0
  157. package/dist/core/validators/deep-architecture-analyzer.spec.d.ts +1 -0
  158. package/dist/core/validators/deep-architecture-analyzer.spec.js +216 -0
  159. package/dist/core/validators/deep-architecture-analyzer.spec.js.map +1 -0
  160. package/dist/core/validators/phase-gate-validator.service.d.ts +71 -0
  161. package/dist/core/validators/phase-gate-validator.service.js +273 -0
  162. package/dist/core/validators/phase-gate-validator.service.js.map +1 -0
  163. package/dist/core/validators/phase-gate-validator.service.spec.d.ts +1 -0
  164. package/dist/core/validators/phase-gate-validator.service.spec.js +326 -0
  165. package/dist/core/validators/phase-gate-validator.service.spec.js.map +1 -0
  166. package/dist/core/validators/ruleset-validator-architecture.spec.d.ts +1 -0
  167. package/dist/core/validators/ruleset-validator-architecture.spec.js +178 -0
  168. package/dist/core/validators/ruleset-validator-architecture.spec.js.map +1 -0
  169. package/dist/core/validators/ruleset-validator.service.d.ts +24 -0
  170. package/dist/core/validators/ruleset-validator.service.js +394 -0
  171. package/dist/core/validators/ruleset-validator.service.js.map +1 -1
  172. package/dist/core/validators/ruleset-validator.service.spec.js +351 -3
  173. package/dist/core/validators/ruleset-validator.service.spec.js.map +1 -1
  174. package/dist/domain/services/adr.service.spec.d.ts +1 -0
  175. package/dist/domain/services/adr.service.spec.js +141 -0
  176. package/dist/domain/services/adr.service.spec.js.map +1 -0
  177. package/dist/domain/services/agent-registry.service.spec.d.ts +1 -0
  178. package/dist/domain/services/agent-registry.service.spec.js +162 -0
  179. package/dist/domain/services/agent-registry.service.spec.js.map +1 -0
  180. package/dist/domain/services/index.d.ts +1 -0
  181. package/dist/domain/services/index.js +3 -1
  182. package/dist/domain/services/index.js.map +1 -1
  183. package/dist/domain/services/moscow-prioritization.service.d.ts +44 -0
  184. package/dist/domain/services/moscow-prioritization.service.js +213 -0
  185. package/dist/domain/services/moscow-prioritization.service.js.map +1 -0
  186. package/dist/domain/services/moscow-prioritization.service.spec.d.ts +1 -0
  187. package/dist/domain/services/moscow-prioritization.service.spec.js +285 -0
  188. package/dist/domain/services/moscow-prioritization.service.spec.js.map +1 -0
  189. package/dist/domain/services/standards.service.spec.d.ts +1 -0
  190. package/dist/domain/services/standards.service.spec.js +600 -0
  191. package/dist/domain/services/standards.service.spec.js.map +1 -0
  192. package/dist/domain/services/tool-usage-telemetry.service.spec.d.ts +1 -0
  193. package/dist/domain/services/tool-usage-telemetry.service.spec.js +180 -0
  194. package/dist/domain/services/tool-usage-telemetry.service.spec.js.map +1 -0
  195. package/dist/infrastructure/formatters/output-formatter.service.spec.d.ts +1 -0
  196. package/dist/infrastructure/formatters/output-formatter.service.spec.js +164 -0
  197. package/dist/infrastructure/formatters/output-formatter.service.spec.js.map +1 -0
  198. package/dist/main.js +0 -0
  199. package/package.json +2 -2
@@ -18,7 +18,6 @@ const config_service_1 = require("./core/config/config.service");
18
18
  const file_manager_service_1 = require("./core/filesystem/file-manager.service");
19
19
  const sync_service_1 = require("./core/sync/sync.service");
20
20
  const watcher_service_1 = require("./core/mcp/watcher.service");
21
- const mcp_server_service_1 = require("./core/mcp/mcp-server.service");
22
21
  const sdlc_command_1 = require("./commands/sdlc/sdlc.command");
23
22
  const handoff_command_1 = require("./commands/sdlc/handoff.command");
24
23
  const generate_domain_command_1 = require("./commands/sdlc/generate-domain.command");
@@ -27,6 +26,7 @@ const adr_command_1 = require("./commands/adr/adr.command");
27
26
  const standards_command_1 = require("./commands/standards/standards.command");
28
27
  const completion_command_1 = require("./commands/completion/completion.command");
29
28
  const history_command_1 = require("./commands/history/history.command");
29
+ const drift_command_1 = require("./commands/drift/drift.command");
30
30
  let AppModule = class AppModule {
31
31
  };
32
32
  exports.AppModule = AppModule;
@@ -44,7 +44,6 @@ exports.AppModule = AppModule = __decorate([
44
44
  file_manager_service_1.FileManagerService,
45
45
  sync_service_1.SyncService,
46
46
  watcher_service_1.WatcherService,
47
- mcp_server_service_1.McpServerService,
48
47
  sdlc_command_1.SdlcCommand,
49
48
  handoff_command_1.HandoffCommand,
50
49
  generate_domain_command_1.GenerateDomainCommand,
@@ -53,6 +52,7 @@ exports.AppModule = AppModule = __decorate([
53
52
  standards_command_1.StandardsCommand,
54
53
  completion_command_1.CompletionCommand,
55
54
  history_command_1.HistoryCommand,
55
+ drift_command_1.DriftCommand,
56
56
  ],
57
57
  })
58
58
  ], AppModule);
@@ -1 +1 @@
1
- {"version":3,"file":"app.module.js","sourceRoot":"","sources":["../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,+DAA2D;AAC3D,mEAA+D;AAC/D,2EAAuE;AACvE,+DAA2D;AAC3D,qEAAiE;AACjE,wEAAmE;AACnE,iEAA6D;AAC7D,iFAA4E;AAC5E,2DAAuD;AACvD,gEAA4D;AAC5D,sEAAiE;AACjE,+DAA2D;AAC3D,qEAAiE;AACjE,qFAAgF;AAChF,+EAA2E;AAC3E,4DAAwD;AACxD,8EAA0E;AAC1E,iFAA6E;AAC7E,wEAAoE;AA0B7D,IAAM,SAAS,GAAf,MAAM,SAAS;CAAG,CAAA;AAAZ,8BAAS;oBAAT,SAAS;IAxBrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,EAAE;QACX,SAAS,EAAE;YACT,0BAAW;YACX,8BAAa;YACb,kCAAe;YACf,0BAAW;YACX,gCAAc;YACd,mCAAe;YACf,8BAAa;YACb,yCAAkB;YAClB,0BAAW;YACX,gCAAc;YACd,qCAAgB;YAChB,0BAAW;YACX,gCAAc;YACd,+CAAqB;YACrB,kCAAe;YACf,wBAAU;YACV,oCAAgB;YAChB,sCAAiB;YACjB,gCAAc;SACf;KACF,CAAC;GACW,SAAS,CAAG"}
1
+ {"version":3,"file":"app.module.js","sourceRoot":"","sources":["../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,+DAA2D;AAC3D,mEAA+D;AAC/D,2EAAuE;AACvE,+DAA2D;AAC3D,qEAAiE;AACjE,wEAAmE;AACnE,iEAA6D;AAC7D,iFAA4E;AAC5E,2DAAuD;AACvD,gEAA4D;AAC5D,+DAA2D;AAC3D,qEAAiE;AACjE,qFAAgF;AAChF,+EAA2E;AAC3E,4DAAwD;AACxD,8EAA0E;AAC1E,iFAA6E;AAC7E,wEAAoE;AACpE,kEAA8D;AA0BvD,IAAM,SAAS,GAAf,MAAM,SAAS;CAAG,CAAA;AAAZ,8BAAS;oBAAT,SAAS;IAxBrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,EAAE;QACX,SAAS,EAAE;YACT,0BAAW;YACX,8BAAa;YACb,kCAAe;YACf,0BAAW;YACX,gCAAc;YACd,mCAAe;YACf,8BAAa;YACb,yCAAkB;YAClB,0BAAW;YACX,gCAAc;YACd,0BAAW;YACX,gCAAc;YACd,+CAAqB;YACrB,kCAAe;YACf,wBAAU;YACV,oCAAgB;YAChB,sCAAiB;YACjB,gCAAc;YACd,4BAAY;SACb;KACF,CAAC;GACW,SAAS,CAAG"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,305 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const testing_1 = require("@nestjs/testing");
4
+ const app_module_1 = require("./app.module");
5
+ const init_command_1 = require("./commands/init/init.command");
6
+ const agents_command_1 = require("./commands/init/agents.command");
7
+ const validate_command_1 = require("./commands/validate/validate.command");
8
+ const docs_command_1 = require("./commands/docs/docs.command");
9
+ const upgrade_command_1 = require("./commands/init/upgrade.command");
10
+ const mcp_serve_command_1 = require("./commands/mcp/mcp-serve.command");
11
+ const config_service_1 = require("./core/config/config.service");
12
+ const file_manager_service_1 = require("./core/filesystem/file-manager.service");
13
+ const sync_service_1 = require("./core/sync/sync.service");
14
+ const watcher_service_1 = require("./core/mcp/watcher.service");
15
+ const sdlc_command_1 = require("./commands/sdlc/sdlc.command");
16
+ const handoff_command_1 = require("./commands/sdlc/handoff.command");
17
+ const generate_domain_command_1 = require("./commands/sdlc/generate-domain.command");
18
+ const scaffold_command_1 = require("./commands/architecture/scaffold.command");
19
+ const adr_command_1 = require("./commands/adr/adr.command");
20
+ const standards_command_1 = require("./commands/standards/standards.command");
21
+ const completion_command_1 = require("./commands/completion/completion.command");
22
+ const history_command_1 = require("./commands/history/history.command");
23
+ const drift_command_1 = require("./commands/drift/drift.command");
24
+ jest.mock('@clack/prompts', () => ({
25
+ intro: jest.fn(),
26
+ outro: jest.fn(),
27
+ note: jest.fn(),
28
+ select: jest.fn(),
29
+ text: jest.fn(),
30
+ confirm: jest.fn(),
31
+ multiselect: jest.fn(),
32
+ group: jest.fn(),
33
+ spinner: jest.fn(() => ({ start: jest.fn(), stop: jest.fn() })),
34
+ cancel: jest.fn(),
35
+ log: {
36
+ info: jest.fn(),
37
+ warn: jest.fn(),
38
+ success: jest.fn(),
39
+ error: jest.fn(),
40
+ message: jest.fn(),
41
+ },
42
+ }));
43
+ jest.mock('chalk', () => {
44
+ const chalkFn = (str) => str;
45
+ chalkFn.green = (str) => str;
46
+ chalkFn.red = (str) => str;
47
+ chalkFn.bold = (str) => str;
48
+ chalkFn.yellow = (str) => str;
49
+ chalkFn.blue = (str) => str;
50
+ chalkFn.cyan = (str) => str;
51
+ chalkFn.bgCyan = { white: { bold: (str) => str } };
52
+ chalkFn.bgGreen = { white: { bold: (str) => str } };
53
+ chalkFn.bgBlue = { white: { bold: (str) => str } };
54
+ chalkFn.bgYellow = { white: { bold: (str) => str } };
55
+ chalkFn.bgRed = { white: { bold: (str) => str } };
56
+ chalkFn.bgMagenta = { white: { bold: (str) => str } };
57
+ chalkFn.gray = (str) => str;
58
+ return chalkFn;
59
+ });
60
+ jest.mock('./core/mcp/tools/tool-utils', () => ({
61
+ getFileSystem: jest.fn(() => ({
62
+ exists: jest.fn(),
63
+ readFile: jest.fn(),
64
+ writeFile: jest.fn(),
65
+ readJson: jest.fn(),
66
+ writeJson: jest.fn(),
67
+ ensureDir: jest.fn(),
68
+ readdirNames: jest.fn(),
69
+ remove: jest.fn(),
70
+ })),
71
+ getContainer: jest.fn(() => ({
72
+ createFileSystem: jest.fn(),
73
+ })),
74
+ }));
75
+ jest.mock('./core/di/container', () => ({
76
+ getContainer: jest.fn(() => ({
77
+ createFileSystem: jest.fn(() => ({
78
+ exists: jest.fn(),
79
+ readFile: jest.fn(),
80
+ writeFile: jest.fn(),
81
+ readJson: jest.fn(),
82
+ writeJson: jest.fn(),
83
+ ensureDir: jest.fn(),
84
+ readdirNames: jest.fn(),
85
+ remove: jest.fn(),
86
+ })),
87
+ createLogger: jest.fn(() => ({
88
+ info: jest.fn(),
89
+ warn: jest.fn(),
90
+ error: jest.fn(),
91
+ debug: jest.fn(),
92
+ })),
93
+ createConfigParser: jest.fn(() => ({
94
+ parse: jest.fn(),
95
+ stringify: jest.fn(),
96
+ })),
97
+ resolve: jest.fn(),
98
+ registerInstance: jest.fn(),
99
+ registerSingleton: jest.fn(),
100
+ registerTransient: jest.fn(),
101
+ })),
102
+ resetContainer: jest.fn(),
103
+ createChildContainer: jest.fn(),
104
+ }));
105
+ jest.mock('./infrastructure/catalog/catalog-loader', () => ({
106
+ catalogLoader: {
107
+ loadRuntimeCatalog: jest.fn(() => []),
108
+ getMonorepoOptions: jest.fn(() => []),
109
+ getArchitecturePatterns: jest.fn(() => []),
110
+ getDefaultDatabase: jest.fn(() => 'postgresql'),
111
+ getApiProtocols: jest.fn(() => []),
112
+ },
113
+ }));
114
+ jest.mock('./application/services', () => ({
115
+ InitializeProjectUseCase: jest.fn().mockImplementation(() => ({
116
+ execute: jest.fn(),
117
+ })),
118
+ }));
119
+ jest.mock('./core/observability', () => ({
120
+ logger: {
121
+ info: jest.fn(),
122
+ error: jest.fn(),
123
+ warn: jest.fn(),
124
+ },
125
+ errorReporter: {
126
+ report: jest.fn(),
127
+ printSummary: jest.fn(),
128
+ },
129
+ OperationTimer: jest.fn().mockImplementation(() => ({
130
+ start: jest.fn(),
131
+ end: jest.fn().mockReturnValue(500),
132
+ })),
133
+ commandWatcher: {
134
+ start: jest.fn(),
135
+ end: jest.fn(),
136
+ },
137
+ }));
138
+ describe('AppModule', () => {
139
+ it('should compile the module', async () => {
140
+ const module = await testing_1.Test.createTestingModule({
141
+ imports: [app_module_1.AppModule],
142
+ }).compile();
143
+ expect(module).toBeDefined();
144
+ });
145
+ it('should provide InitCommand', async () => {
146
+ const module = await testing_1.Test.createTestingModule({
147
+ imports: [app_module_1.AppModule],
148
+ }).compile();
149
+ const command = module.get(init_command_1.InitCommand);
150
+ expect(command).toBeDefined();
151
+ expect(command).toBeInstanceOf(init_command_1.InitCommand);
152
+ });
153
+ it('should provide AgentsCommand', async () => {
154
+ const module = await testing_1.Test.createTestingModule({
155
+ imports: [app_module_1.AppModule],
156
+ }).compile();
157
+ const command = module.get(agents_command_1.AgentsCommand);
158
+ expect(command).toBeDefined();
159
+ expect(command).toBeInstanceOf(agents_command_1.AgentsCommand);
160
+ });
161
+ it('should provide ValidateCommand', async () => {
162
+ const module = await testing_1.Test.createTestingModule({
163
+ imports: [app_module_1.AppModule],
164
+ }).compile();
165
+ const command = module.get(validate_command_1.ValidateCommand);
166
+ expect(command).toBeDefined();
167
+ expect(command).toBeInstanceOf(validate_command_1.ValidateCommand);
168
+ });
169
+ it('should provide DocsCommand', async () => {
170
+ const module = await testing_1.Test.createTestingModule({
171
+ imports: [app_module_1.AppModule],
172
+ }).compile();
173
+ const command = module.get(docs_command_1.DocsCommand);
174
+ expect(command).toBeDefined();
175
+ expect(command).toBeInstanceOf(docs_command_1.DocsCommand);
176
+ });
177
+ it('should provide UpgradeCommand', async () => {
178
+ const module = await testing_1.Test.createTestingModule({
179
+ imports: [app_module_1.AppModule],
180
+ }).compile();
181
+ const command = module.get(upgrade_command_1.UpgradeCommand);
182
+ expect(command).toBeDefined();
183
+ expect(command).toBeInstanceOf(upgrade_command_1.UpgradeCommand);
184
+ });
185
+ it('should provide McpServeCommand', async () => {
186
+ const module = await testing_1.Test.createTestingModule({
187
+ imports: [app_module_1.AppModule],
188
+ }).compile();
189
+ const command = module.get(mcp_serve_command_1.McpServeCommand);
190
+ expect(command).toBeDefined();
191
+ expect(command).toBeInstanceOf(mcp_serve_command_1.McpServeCommand);
192
+ });
193
+ it('should provide ConfigService', async () => {
194
+ const module = await testing_1.Test.createTestingModule({
195
+ imports: [app_module_1.AppModule],
196
+ }).compile();
197
+ const service = module.get(config_service_1.ConfigService);
198
+ expect(service).toBeDefined();
199
+ expect(service).toBeInstanceOf(config_service_1.ConfigService);
200
+ });
201
+ it('should provide FileManagerService', async () => {
202
+ const module = await testing_1.Test.createTestingModule({
203
+ imports: [app_module_1.AppModule],
204
+ }).compile();
205
+ const service = module.get(file_manager_service_1.FileManagerService);
206
+ expect(service).toBeDefined();
207
+ expect(service).toBeInstanceOf(file_manager_service_1.FileManagerService);
208
+ });
209
+ it('should provide SyncService', async () => {
210
+ const module = await testing_1.Test.createTestingModule({
211
+ imports: [app_module_1.AppModule],
212
+ }).compile();
213
+ const service = module.get(sync_service_1.SyncService);
214
+ expect(service).toBeDefined();
215
+ expect(service).toBeInstanceOf(sync_service_1.SyncService);
216
+ });
217
+ it('should provide WatcherService', async () => {
218
+ const module = await testing_1.Test.createTestingModule({
219
+ imports: [app_module_1.AppModule],
220
+ }).compile();
221
+ const service = module.get(watcher_service_1.WatcherService);
222
+ expect(service).toBeDefined();
223
+ expect(service).toBeInstanceOf(watcher_service_1.WatcherService);
224
+ });
225
+ it('should provide SdlcCommand', async () => {
226
+ const module = await testing_1.Test.createTestingModule({
227
+ imports: [app_module_1.AppModule],
228
+ }).compile();
229
+ const command = module.get(sdlc_command_1.SdlcCommand);
230
+ expect(command).toBeDefined();
231
+ expect(command).toBeInstanceOf(sdlc_command_1.SdlcCommand);
232
+ });
233
+ it('should provide HandoffCommand', async () => {
234
+ const module = await testing_1.Test.createTestingModule({
235
+ imports: [app_module_1.AppModule],
236
+ }).compile();
237
+ const command = module.get(handoff_command_1.HandoffCommand);
238
+ expect(command).toBeDefined();
239
+ expect(command).toBeInstanceOf(handoff_command_1.HandoffCommand);
240
+ });
241
+ it('should provide GenerateDomainCommand', async () => {
242
+ const module = await testing_1.Test.createTestingModule({
243
+ imports: [app_module_1.AppModule],
244
+ }).compile();
245
+ const command = module.get(generate_domain_command_1.GenerateDomainCommand);
246
+ expect(command).toBeDefined();
247
+ expect(command).toBeInstanceOf(generate_domain_command_1.GenerateDomainCommand);
248
+ });
249
+ it('should provide ScaffoldCommand', async () => {
250
+ const module = await testing_1.Test.createTestingModule({
251
+ imports: [app_module_1.AppModule],
252
+ }).compile();
253
+ const command = module.get(scaffold_command_1.ScaffoldCommand);
254
+ expect(command).toBeDefined();
255
+ expect(command).toBeInstanceOf(scaffold_command_1.ScaffoldCommand);
256
+ });
257
+ it('should provide ADRCommand', async () => {
258
+ const module = await testing_1.Test.createTestingModule({
259
+ imports: [app_module_1.AppModule],
260
+ }).compile();
261
+ const command = module.get(adr_command_1.ADRCommand);
262
+ expect(command).toBeDefined();
263
+ expect(command).toBeInstanceOf(adr_command_1.ADRCommand);
264
+ });
265
+ it('should provide StandardsCommand', async () => {
266
+ const module = await testing_1.Test.createTestingModule({
267
+ imports: [app_module_1.AppModule],
268
+ }).compile();
269
+ const command = module.get(standards_command_1.StandardsCommand);
270
+ expect(command).toBeDefined();
271
+ expect(command).toBeInstanceOf(standards_command_1.StandardsCommand);
272
+ });
273
+ it('should provide CompletionCommand', async () => {
274
+ const module = await testing_1.Test.createTestingModule({
275
+ imports: [app_module_1.AppModule],
276
+ }).compile();
277
+ const command = module.get(completion_command_1.CompletionCommand);
278
+ expect(command).toBeDefined();
279
+ expect(command).toBeInstanceOf(completion_command_1.CompletionCommand);
280
+ });
281
+ it('should provide HistoryCommand', async () => {
282
+ const module = await testing_1.Test.createTestingModule({
283
+ imports: [app_module_1.AppModule],
284
+ }).compile();
285
+ const command = module.get(history_command_1.HistoryCommand);
286
+ expect(command).toBeDefined();
287
+ expect(command).toBeInstanceOf(history_command_1.HistoryCommand);
288
+ });
289
+ it('should provide DriftCommand', async () => {
290
+ const module = await testing_1.Test.createTestingModule({
291
+ imports: [app_module_1.AppModule],
292
+ }).compile();
293
+ const command = module.get(drift_command_1.DriftCommand);
294
+ expect(command).toBeDefined();
295
+ expect(command).toBeInstanceOf(drift_command_1.DriftCommand);
296
+ });
297
+ it('should be a valid NestJS module', async () => {
298
+ const module = await testing_1.Test.createTestingModule({
299
+ imports: [app_module_1.AppModule],
300
+ }).compile();
301
+ expect(module).toBeDefined();
302
+ expect(module.get(init_command_1.InitCommand)).toBeDefined();
303
+ });
304
+ });
305
+ //# sourceMappingURL=app.module.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.module.spec.js","sourceRoot":"","sources":["../src/app.module.spec.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { GateValidationResult } from '../../core/validators/phase-gate-validator.service';
1
2
  export interface InitProjectInput {
2
3
  name: string;
3
4
  runtime: string;
@@ -32,17 +33,26 @@ export declare class InitializeProjectUseCase {
32
33
  export declare class PhaseTransitionUseCase {
33
34
  private readonly fs;
34
35
  private readonly phaseService;
35
- constructor(fs: any);
36
+ private readonly gateValidator;
37
+ constructor(fs: any, corePath?: string);
36
38
  execute(from: string, to: string, tools: string[], cwd: string): Promise<PhaseTransitionResult>;
37
- private validateGates;
39
+ getGateStatus(cwd: string): Promise<{
40
+ currentPhase: number;
41
+ gatesPassed: number;
42
+ gatesFailed: number;
43
+ gatesPending: number;
44
+ results: GateValidationResult[];
45
+ }>;
46
+ private validateGatesWithValidator;
47
+ private validateGatesLegacy;
38
48
  }
39
- interface GateResult {
49
+ export interface GateResult {
40
50
  id: string;
41
51
  passed: boolean;
42
52
  description: string;
43
53
  required: boolean;
44
54
  }
45
- interface PhaseTransitionResult {
55
+ export interface PhaseTransitionResult {
46
56
  success: boolean;
47
57
  from: string;
48
58
  to: string;
@@ -51,4 +61,3 @@ interface PhaseTransitionResult {
51
61
  warnings: string[];
52
62
  errors: string[];
53
63
  }
54
- export {};
@@ -14,6 +14,7 @@ const services_1 = require("../../domain/services");
14
14
  const catalog_loader_1 = require("../../infrastructure/catalog/catalog-loader");
15
15
  const providers_1 = require("../../infrastructure/cli/providers");
16
16
  const observability_1 = require("../../core/observability");
17
+ const phase_gate_validator_service_1 = require("../../core/validators/phase-gate-validator.service");
17
18
  class InitializeProjectUseCase {
18
19
  constructor(fs) {
19
20
  this.fs = fs;
@@ -243,9 +244,10 @@ __decorate([
243
244
  __metadata("design:returntype", Promise)
244
245
  ], InitializeProjectUseCase.prototype, "execute", null);
245
246
  class PhaseTransitionUseCase {
246
- constructor(fs) {
247
+ constructor(fs, corePath) {
247
248
  this.fs = fs;
248
249
  this.phaseService = new services_1.PhaseService();
250
+ this.gateValidator = new phase_gate_validator_service_1.PhaseGateValidatorService(corePath);
249
251
  }
250
252
  async execute(from, to, tools, cwd) {
251
253
  observability_1.logger.info('Phase transition initiated', { from, to, toolCount: tools.length });
@@ -255,7 +257,10 @@ class PhaseTransitionUseCase {
255
257
  errors.push(`Invalid phase transition: ${from} → ${to}. Must be consecutive phases.`);
256
258
  return { success: false, from, to, gateResults: [], executedTools: [], warnings, errors };
257
259
  }
258
- const gateResults = await this.validateGates(from, cwd);
260
+ const targetPhaseNumber = this.phaseService.getPhaseIndex(to);
261
+ const gateResults = targetPhaseNumber >= 0
262
+ ? await this.validateGatesWithValidator(targetPhaseNumber, cwd)
263
+ : await this.validateGatesLegacy(from, cwd);
259
264
  const failedRequiredGates = gateResults.filter(g => !g.passed && g.required);
260
265
  if (failedRequiredGates.length > 0) {
261
266
  errors.push(...failedRequiredGates.map(g => `Gate ${g.id} failed: ${g.description}`));
@@ -274,7 +279,40 @@ class PhaseTransitionUseCase {
274
279
  errors,
275
280
  };
276
281
  }
277
- async validateGates(phase, cwd) {
282
+ async getGateStatus(cwd) {
283
+ return this.gateValidator.getGateStatus(cwd);
284
+ }
285
+ async validateGatesWithValidator(phaseNumber, cwd) {
286
+ try {
287
+ const result = await this.gateValidator.validateGate(phaseNumber, cwd);
288
+ const gates = [];
289
+ for (const evidence of result.evidenceResults) {
290
+ gates.push({
291
+ id: `${result.gateId}-${evidence.artifact.replace(/\s+/g, '-')}`,
292
+ passed: evidence.passed,
293
+ description: evidence.validationMessage,
294
+ required: evidence.required,
295
+ });
296
+ }
297
+ for (const blocking of result.blockingChecks) {
298
+ if (blocking.triggered) {
299
+ gates.push({
300
+ id: `${result.gateId}-BLOCK-${blocking.criterion.replace(/\s+/g, '-').substring(0, 30)}`,
301
+ passed: false,
302
+ description: `Blocking: ${blocking.criterion} — ${blocking.action}`,
303
+ required: true,
304
+ });
305
+ }
306
+ }
307
+ return gates;
308
+ }
309
+ catch (error) {
310
+ const message = error instanceof Error ? error.message : String(error);
311
+ observability_1.logger.warn(`Gate validator failed, falling back to legacy validation: ${message}`);
312
+ return this.validateGatesLegacy(this.phaseService.getAllPhases()[phaseNumber]?.value || 'phase-0', cwd);
313
+ }
314
+ }
315
+ async validateGatesLegacy(phase, cwd) {
278
316
  const gates = [];
279
317
  const evolithYamlPath = `${cwd}/evolith.yaml`;
280
318
  switch (phase) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/application/services/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/application/services/index.ts"],"names":[],"mappings":"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"}