@evolith/smart-cli 1.1.0 → 1.1.2

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 (481) hide show
  1. package/ARCHITECTURE.md +1 -1
  2. package/LICENSE +21 -0
  3. package/README.es.md +31 -3
  4. package/README.md +915 -170
  5. package/package.json +50 -41
  6. package/shell/hooks.bash +68 -0
  7. package/shell/hooks.fish +57 -0
  8. package/shell/hooks.zsh +68 -0
  9. package/dist/app.module.d.ts +0 -2
  10. package/dist/app.module.js +0 -61
  11. package/dist/app.module.js.map +0 -1
  12. package/dist/app.module.spec.d.ts +0 -1
  13. package/dist/app.module.spec.js +0 -305
  14. package/dist/app.module.spec.js.map +0 -1
  15. package/dist/application/ports/webhook-notifier.port.d.ts +0 -4
  16. package/dist/application/ports/webhook-notifier.port.js +0 -3
  17. package/dist/application/ports/webhook-notifier.port.js.map +0 -1
  18. package/dist/application/services/index.d.ts +0 -64
  19. package/dist/application/services/index.js +0 -371
  20. package/dist/application/services/index.js.map +0 -1
  21. package/dist/application/services/initialize-project.spec.d.ts +0 -1
  22. package/dist/application/services/initialize-project.spec.js +0 -211
  23. package/dist/application/services/initialize-project.spec.js.map +0 -1
  24. package/dist/application/services/phase-transition.use-case.spec.d.ts +0 -1
  25. package/dist/application/services/phase-transition.use-case.spec.js +0 -297
  26. package/dist/application/services/phase-transition.use-case.spec.js.map +0 -1
  27. package/dist/application/services/services.test.d.ts +0 -1
  28. package/dist/application/services/services.test.js +0 -176
  29. package/dist/application/services/services.test.js.map +0 -1
  30. package/dist/application/use-cases/evaluate-gate.use-case.d.ts +0 -20
  31. package/dist/application/use-cases/evaluate-gate.use-case.js +0 -72
  32. package/dist/application/use-cases/evaluate-gate.use-case.js.map +0 -1
  33. package/dist/application/use-cases/validate-satellite.use-case.d.ts +0 -19
  34. package/dist/application/use-cases/validate-satellite.use-case.js +0 -96
  35. package/dist/application/use-cases/validate-satellite.use-case.js.map +0 -1
  36. package/dist/application/use-cases/validate-satellite.use-case.spec.d.ts +0 -1
  37. package/dist/application/use-cases/validate-satellite.use-case.spec.js +0 -102
  38. package/dist/application/use-cases/validate-satellite.use-case.spec.js.map +0 -1
  39. package/dist/commands/adr/adr.command.d.ts +0 -30
  40. package/dist/commands/adr/adr.command.js +0 -379
  41. package/dist/commands/adr/adr.command.js.map +0 -1
  42. package/dist/commands/adr/adr.command.spec.d.ts +0 -1
  43. package/dist/commands/adr/adr.command.spec.js +0 -409
  44. package/dist/commands/adr/adr.command.spec.js.map +0 -1
  45. package/dist/commands/architecture/scaffold.command.d.ts +0 -8
  46. package/dist/commands/architecture/scaffold.command.js +0 -184
  47. package/dist/commands/architecture/scaffold.command.js.map +0 -1
  48. package/dist/commands/architecture/scaffold.command.spec.d.ts +0 -1
  49. package/dist/commands/architecture/scaffold.command.spec.js +0 -207
  50. package/dist/commands/architecture/scaffold.command.spec.js.map +0 -1
  51. package/dist/commands/commands.test.d.ts +0 -1
  52. package/dist/commands/commands.test.js +0 -131
  53. package/dist/commands/commands.test.js.map +0 -1
  54. package/dist/commands/completion/completion.command.d.ts +0 -20
  55. package/dist/commands/completion/completion.command.js +0 -215
  56. package/dist/commands/completion/completion.command.js.map +0 -1
  57. package/dist/commands/completion/completion.command.spec.d.ts +0 -1
  58. package/dist/commands/completion/completion.command.spec.js +0 -240
  59. package/dist/commands/completion/completion.command.spec.js.map +0 -1
  60. package/dist/commands/docs/docs.command.d.ts +0 -14
  61. package/dist/commands/docs/docs.command.js +0 -233
  62. package/dist/commands/docs/docs.command.js.map +0 -1
  63. package/dist/commands/docs/docs.command.spec.d.ts +0 -1
  64. package/dist/commands/docs/docs.command.spec.js +0 -87
  65. package/dist/commands/docs/docs.command.spec.js.map +0 -1
  66. package/dist/commands/drift/drift.command.d.ts +0 -24
  67. package/dist/commands/drift/drift.command.js +0 -250
  68. package/dist/commands/drift/drift.command.js.map +0 -1
  69. package/dist/commands/drift/drift.command.spec.d.ts +0 -1
  70. package/dist/commands/drift/drift.command.spec.js +0 -327
  71. package/dist/commands/drift/drift.command.spec.js.map +0 -1
  72. package/dist/commands/gate/gate.command.d.ts +0 -23
  73. package/dist/commands/gate/gate.command.js +0 -210
  74. package/dist/commands/gate/gate.command.js.map +0 -1
  75. package/dist/commands/history/history.command.d.ts +0 -29
  76. package/dist/commands/history/history.command.js +0 -268
  77. package/dist/commands/history/history.command.js.map +0 -1
  78. package/dist/commands/history/history.command.spec.d.ts +0 -1
  79. package/dist/commands/history/history.command.spec.js +0 -392
  80. package/dist/commands/history/history.command.spec.js.map +0 -1
  81. package/dist/commands/init/agents.command.d.ts +0 -22
  82. package/dist/commands/init/agents.command.js +0 -502
  83. package/dist/commands/init/agents.command.js.map +0 -1
  84. package/dist/commands/init/agents.command.spec.d.ts +0 -1
  85. package/dist/commands/init/agents.command.spec.js +0 -550
  86. package/dist/commands/init/agents.command.spec.js.map +0 -1
  87. package/dist/commands/init/init.command.d.ts +0 -20
  88. package/dist/commands/init/init.command.js +0 -329
  89. package/dist/commands/init/init.command.js.map +0 -1
  90. package/dist/commands/init/init.command.spec.d.ts +0 -1
  91. package/dist/commands/init/init.command.spec.js +0 -272
  92. package/dist/commands/init/init.command.spec.js.map +0 -1
  93. package/dist/commands/init/upgrade.command.d.ts +0 -19
  94. package/dist/commands/init/upgrade.command.js +0 -210
  95. package/dist/commands/init/upgrade.command.js.map +0 -1
  96. package/dist/commands/init/upgrade.command.spec.d.ts +0 -1
  97. package/dist/commands/init/upgrade.command.spec.js +0 -378
  98. package/dist/commands/init/upgrade.command.spec.js.map +0 -1
  99. package/dist/commands/mcp/mcp-serve.command.d.ts +0 -15
  100. package/dist/commands/mcp/mcp-serve.command.js +0 -106
  101. package/dist/commands/mcp/mcp-serve.command.js.map +0 -1
  102. package/dist/commands/mcp/mcp-serve.command.spec.d.ts +0 -1
  103. package/dist/commands/mcp/mcp-serve.command.spec.js +0 -58
  104. package/dist/commands/mcp/mcp-serve.command.spec.js.map +0 -1
  105. package/dist/commands/sdlc/gate-status.command.d.ts +0 -7
  106. package/dist/commands/sdlc/gate-status.command.js +0 -189
  107. package/dist/commands/sdlc/gate-status.command.js.map +0 -1
  108. package/dist/commands/sdlc/gate-status.command.spec.d.ts +0 -1
  109. package/dist/commands/sdlc/gate-status.command.spec.js +0 -302
  110. package/dist/commands/sdlc/gate-status.command.spec.js.map +0 -1
  111. package/dist/commands/sdlc/generate-domain.command.d.ts +0 -7
  112. package/dist/commands/sdlc/generate-domain.command.js +0 -166
  113. package/dist/commands/sdlc/generate-domain.command.js.map +0 -1
  114. package/dist/commands/sdlc/generate-domain.command.spec.d.ts +0 -1
  115. package/dist/commands/sdlc/generate-domain.command.spec.js +0 -121
  116. package/dist/commands/sdlc/generate-domain.command.spec.js.map +0 -1
  117. package/dist/commands/sdlc/handoff.command.d.ts +0 -22
  118. package/dist/commands/sdlc/handoff.command.js +0 -273
  119. package/dist/commands/sdlc/handoff.command.js.map +0 -1
  120. package/dist/commands/sdlc/handoff.command.spec.d.ts +0 -1
  121. package/dist/commands/sdlc/handoff.command.spec.js +0 -395
  122. package/dist/commands/sdlc/handoff.command.spec.js.map +0 -1
  123. package/dist/commands/sdlc/sdlc.command.d.ts +0 -4
  124. package/dist/commands/sdlc/sdlc.command.js +0 -70
  125. package/dist/commands/sdlc/sdlc.command.js.map +0 -1
  126. package/dist/commands/sdlc/sdlc.command.spec.d.ts +0 -1
  127. package/dist/commands/sdlc/sdlc.command.spec.js +0 -79
  128. package/dist/commands/sdlc/sdlc.command.spec.js.map +0 -1
  129. package/dist/commands/standards/standards.command.d.ts +0 -27
  130. package/dist/commands/standards/standards.command.js +0 -308
  131. package/dist/commands/standards/standards.command.js.map +0 -1
  132. package/dist/commands/standards/standards.command.spec.d.ts +0 -1
  133. package/dist/commands/standards/standards.command.spec.js +0 -311
  134. package/dist/commands/standards/standards.command.spec.js.map +0 -1
  135. package/dist/commands/validate/validate.command.d.ts +0 -25
  136. package/dist/commands/validate/validate.command.js +0 -284
  137. package/dist/commands/validate/validate.command.js.map +0 -1
  138. package/dist/commands/validate/validate.command.spec.d.ts +0 -1
  139. package/dist/commands/validate/validate.command.spec.js +0 -368
  140. package/dist/commands/validate/validate.command.spec.js.map +0 -1
  141. package/dist/config/runtimes.json +0 -196
  142. package/dist/config/tool-catalog.json +0 -343
  143. package/dist/core/abstractions/index.d.ts +0 -6
  144. package/dist/core/abstractions/index.js +0 -23
  145. package/dist/core/abstractions/index.js.map +0 -1
  146. package/dist/core/abstractions/interfaces.d.ts +0 -61
  147. package/dist/core/abstractions/interfaces.js +0 -5
  148. package/dist/core/abstractions/interfaces.js.map +0 -1
  149. package/dist/core/abstractions/providers/config-parser.provider.d.ts +0 -15
  150. package/dist/core/abstractions/providers/config-parser.provider.js +0 -68
  151. package/dist/core/abstractions/providers/config-parser.provider.js.map +0 -1
  152. package/dist/core/abstractions/providers/config-parser.provider.spec.d.ts +0 -1
  153. package/dist/core/abstractions/providers/config-parser.provider.spec.js +0 -18
  154. package/dist/core/abstractions/providers/config-parser.provider.spec.js.map +0 -1
  155. package/dist/core/abstractions/providers/logger.provider.d.ts +0 -10
  156. package/dist/core/abstractions/providers/logger.provider.js +0 -84
  157. package/dist/core/abstractions/providers/logger.provider.js.map +0 -1
  158. package/dist/core/abstractions/providers/logger.provider.spec.d.ts +0 -1
  159. package/dist/core/abstractions/providers/logger.provider.spec.js +0 -212
  160. package/dist/core/abstractions/providers/logger.provider.spec.js.map +0 -1
  161. package/dist/core/abstractions/providers/mock-filesystem.provider.d.ts +0 -31
  162. package/dist/core/abstractions/providers/mock-filesystem.provider.js +0 -126
  163. package/dist/core/abstractions/providers/mock-filesystem.provider.js.map +0 -1
  164. package/dist/core/abstractions/providers/mock-filesystem.provider.spec.d.ts +0 -1
  165. package/dist/core/abstractions/providers/mock-filesystem.provider.spec.js +0 -56
  166. package/dist/core/abstractions/providers/mock-filesystem.provider.spec.js.map +0 -1
  167. package/dist/core/abstractions/providers/node-filesystem.provider.d.ts +0 -20
  168. package/dist/core/abstractions/providers/node-filesystem.provider.js +0 -108
  169. package/dist/core/abstractions/providers/node-filesystem.provider.js.map +0 -1
  170. package/dist/core/agents/agent-ruleset-builder.d.ts +0 -30
  171. package/dist/core/agents/agent-ruleset-builder.js +0 -75
  172. package/dist/core/agents/agent-ruleset-builder.js.map +0 -1
  173. package/dist/core/agents/agent-ruleset-builder.spec.d.ts +0 -1
  174. package/dist/core/agents/agent-ruleset-builder.spec.js +0 -135
  175. package/dist/core/agents/agent-ruleset-builder.spec.js.map +0 -1
  176. package/dist/core/architecture/nx-workspace.strategy.d.ts +0 -14
  177. package/dist/core/architecture/nx-workspace.strategy.js +0 -136
  178. package/dist/core/architecture/nx-workspace.strategy.js.map +0 -1
  179. package/dist/core/architecture/nx-workspace.strategy.spec.d.ts +0 -1
  180. package/dist/core/architecture/nx-workspace.strategy.spec.js +0 -187
  181. package/dist/core/architecture/nx-workspace.strategy.spec.js.map +0 -1
  182. package/dist/core/architecture/workspace-manager.strategy.d.ts +0 -8
  183. package/dist/core/architecture/workspace-manager.strategy.js +0 -3
  184. package/dist/core/architecture/workspace-manager.strategy.js.map +0 -1
  185. package/dist/core/config/config.service.d.ts +0 -15
  186. package/dist/core/config/config.service.js +0 -55
  187. package/dist/core/config/config.service.js.map +0 -1
  188. package/dist/core/config/config.service.spec.d.ts +0 -1
  189. package/dist/core/config/config.service.spec.js +0 -43
  190. package/dist/core/config/config.service.spec.js.map +0 -1
  191. package/dist/core/di/container.d.ts +0 -25
  192. package/dist/core/di/container.js +0 -87
  193. package/dist/core/di/container.js.map +0 -1
  194. package/dist/core/di/container.spec.d.ts +0 -1
  195. package/dist/core/di/container.spec.js +0 -301
  196. package/dist/core/di/container.spec.js.map +0 -1
  197. package/dist/core/errors/index.d.ts +0 -26
  198. package/dist/core/errors/index.js +0 -67
  199. package/dist/core/errors/index.js.map +0 -1
  200. package/dist/core/filesystem/file-manager.service.d.ts +0 -4
  201. package/dist/core/filesystem/file-manager.service.js +0 -96
  202. package/dist/core/filesystem/file-manager.service.js.map +0 -1
  203. package/dist/core/filesystem/file-manager.service.spec.d.ts +0 -1
  204. package/dist/core/filesystem/file-manager.service.spec.js +0 -103
  205. package/dist/core/filesystem/file-manager.service.spec.js.map +0 -1
  206. package/dist/core/generators/hexagonal-scaffolder.d.ts +0 -6
  207. package/dist/core/generators/hexagonal-scaffolder.js +0 -260
  208. package/dist/core/generators/hexagonal-scaffolder.js.map +0 -1
  209. package/dist/core/generators/hexagonal-scaffolder.spec.d.ts +0 -1
  210. package/dist/core/generators/hexagonal-scaffolder.spec.js +0 -164
  211. package/dist/core/generators/hexagonal-scaffolder.spec.js.map +0 -1
  212. package/dist/core/generators/mermaid-class-parser.d.ts +0 -38
  213. package/dist/core/generators/mermaid-class-parser.js +0 -183
  214. package/dist/core/generators/mermaid-class-parser.js.map +0 -1
  215. package/dist/core/generators/mermaid-class-parser.spec.d.ts +0 -1
  216. package/dist/core/generators/mermaid-class-parser.spec.js +0 -148
  217. package/dist/core/generators/mermaid-class-parser.spec.js.map +0 -1
  218. package/dist/core/mcp/mcp-server.service.d.ts +0 -7
  219. package/dist/core/mcp/mcp-server.service.js +0 -31
  220. package/dist/core/mcp/mcp-server.service.js.map +0 -1
  221. package/dist/core/mcp/metrics.service.d.ts +0 -37
  222. package/dist/core/mcp/metrics.service.js +0 -72
  223. package/dist/core/mcp/metrics.service.js.map +0 -1
  224. package/dist/core/mcp/metrics.service.spec.d.ts +0 -1
  225. package/dist/core/mcp/metrics.service.spec.js +0 -159
  226. package/dist/core/mcp/metrics.service.spec.js.map +0 -1
  227. package/dist/core/mcp/prompts/index.d.ts +0 -22
  228. package/dist/core/mcp/prompts/index.js +0 -211
  229. package/dist/core/mcp/prompts/index.js.map +0 -1
  230. package/dist/core/mcp/prompts/index.spec.d.ts +0 -1
  231. package/dist/core/mcp/prompts/index.spec.js +0 -150
  232. package/dist/core/mcp/prompts/index.spec.js.map +0 -1
  233. package/dist/core/mcp/resources/index.d.ts +0 -11
  234. package/dist/core/mcp/resources/index.js +0 -209
  235. package/dist/core/mcp/resources/index.js.map +0 -1
  236. package/dist/core/mcp/resources/index.spec.d.ts +0 -1
  237. package/dist/core/mcp/resources/index.spec.js +0 -212
  238. package/dist/core/mcp/resources/index.spec.js.map +0 -1
  239. package/dist/core/mcp/server.d.ts +0 -33
  240. package/dist/core/mcp/server.js +0 -693
  241. package/dist/core/mcp/server.js.map +0 -1
  242. package/dist/core/mcp/server.spec.d.ts +0 -1
  243. package/dist/core/mcp/server.spec.js +0 -579
  244. package/dist/core/mcp/server.spec.js.map +0 -1
  245. package/dist/core/mcp/tools/agent.d.ts +0 -41
  246. package/dist/core/mcp/tools/agent.js +0 -195
  247. package/dist/core/mcp/tools/agent.js.map +0 -1
  248. package/dist/core/mcp/tools/agent.spec.d.ts +0 -1
  249. package/dist/core/mcp/tools/agent.spec.js +0 -171
  250. package/dist/core/mcp/tools/agent.spec.js.map +0 -1
  251. package/dist/core/mcp/tools/architecture.d.ts +0 -29
  252. package/dist/core/mcp/tools/architecture.js +0 -234
  253. package/dist/core/mcp/tools/architecture.js.map +0 -1
  254. package/dist/core/mcp/tools/architecture.spec.d.ts +0 -1
  255. package/dist/core/mcp/tools/architecture.spec.js +0 -145
  256. package/dist/core/mcp/tools/architecture.spec.js.map +0 -1
  257. package/dist/core/mcp/tools/gate.d.ts +0 -1
  258. package/dist/core/mcp/tools/gate.js +0 -68
  259. package/dist/core/mcp/tools/gate.js.map +0 -1
  260. package/dist/core/mcp/tools/moscow.d.ts +0 -30
  261. package/dist/core/mcp/tools/moscow.js +0 -113
  262. package/dist/core/mcp/tools/moscow.js.map +0 -1
  263. package/dist/core/mcp/tools/moscow.spec.d.ts +0 -1
  264. package/dist/core/mcp/tools/moscow.spec.js +0 -209
  265. package/dist/core/mcp/tools/moscow.spec.js.map +0 -1
  266. package/dist/core/mcp/tools/sdlc.d.ts +0 -32
  267. package/dist/core/mcp/tools/sdlc.js +0 -190
  268. package/dist/core/mcp/tools/sdlc.js.map +0 -1
  269. package/dist/core/mcp/tools/sdlc.spec.d.ts +0 -1
  270. package/dist/core/mcp/tools/sdlc.spec.js +0 -170
  271. package/dist/core/mcp/tools/sdlc.spec.js.map +0 -1
  272. package/dist/core/mcp/tools/tool-utils.d.ts +0 -4
  273. package/dist/core/mcp/tools/tool-utils.js +0 -18
  274. package/dist/core/mcp/tools/tool-utils.js.map +0 -1
  275. package/dist/core/mcp/tools/validate.d.ts +0 -18
  276. package/dist/core/mcp/tools/validate.js +0 -56
  277. package/dist/core/mcp/tools/validate.js.map +0 -1
  278. package/dist/core/mcp/tools/validate.spec.d.ts +0 -1
  279. package/dist/core/mcp/tools/validate.spec.js +0 -130
  280. package/dist/core/mcp/tools/validate.spec.js.map +0 -1
  281. package/dist/core/mcp/watcher.service.d.ts +0 -8
  282. package/dist/core/mcp/watcher.service.js +0 -82
  283. package/dist/core/mcp/watcher.service.js.map +0 -1
  284. package/dist/core/mcp/watcher.service.spec.d.ts +0 -1
  285. package/dist/core/mcp/watcher.service.spec.js +0 -171
  286. package/dist/core/mcp/watcher.service.spec.js.map +0 -1
  287. package/dist/core/metrics/dora-calculator.d.ts +0 -18
  288. package/dist/core/metrics/dora-calculator.js +0 -146
  289. package/dist/core/metrics/dora-calculator.js.map +0 -1
  290. package/dist/core/metrics/dora-calculator.spec.d.ts +0 -1
  291. package/dist/core/metrics/dora-calculator.spec.js +0 -164
  292. package/dist/core/metrics/dora-calculator.spec.js.map +0 -1
  293. package/dist/core/metrics/git-log-reader.d.ts +0 -14
  294. package/dist/core/metrics/git-log-reader.js +0 -39
  295. package/dist/core/metrics/git-log-reader.js.map +0 -1
  296. package/dist/core/metrics/git-log-reader.spec.d.ts +0 -1
  297. package/dist/core/metrics/git-log-reader.spec.js +0 -108
  298. package/dist/core/metrics/git-log-reader.spec.js.map +0 -1
  299. package/dist/core/observability/command-watcher.d.ts +0 -45
  300. package/dist/core/observability/command-watcher.js +0 -168
  301. package/dist/core/observability/command-watcher.js.map +0 -1
  302. package/dist/core/observability/command-watcher.spec.d.ts +0 -1
  303. package/dist/core/observability/command-watcher.spec.js +0 -123
  304. package/dist/core/observability/command-watcher.spec.js.map +0 -1
  305. package/dist/core/observability/error-reporter.d.ts +0 -47
  306. package/dist/core/observability/error-reporter.js +0 -163
  307. package/dist/core/observability/error-reporter.js.map +0 -1
  308. package/dist/core/observability/error-reporter.spec.d.ts +0 -1
  309. package/dist/core/observability/error-reporter.spec.js +0 -291
  310. package/dist/core/observability/error-reporter.spec.js.map +0 -1
  311. package/dist/core/observability/index.d.ts +0 -5
  312. package/dist/core/observability/index.js +0 -26
  313. package/dist/core/observability/index.js.map +0 -1
  314. package/dist/core/observability/observability.test.d.ts +0 -1
  315. package/dist/core/observability/observability.test.js +0 -224
  316. package/dist/core/observability/observability.test.js.map +0 -1
  317. package/dist/core/observability/structured-logger.d.ts +0 -53
  318. package/dist/core/observability/structured-logger.js +0 -123
  319. package/dist/core/observability/structured-logger.js.map +0 -1
  320. package/dist/core/observability/structured-logger.spec.d.ts +0 -1
  321. package/dist/core/observability/structured-logger.spec.js +0 -197
  322. package/dist/core/observability/structured-logger.spec.js.map +0 -1
  323. package/dist/core/observability/timing.d.ts +0 -23
  324. package/dist/core/observability/timing.js +0 -140
  325. package/dist/core/observability/timing.js.map +0 -1
  326. package/dist/core/observability/timing.spec.d.ts +0 -1
  327. package/dist/core/observability/timing.spec.js +0 -216
  328. package/dist/core/observability/timing.spec.js.map +0 -1
  329. package/dist/core/observability/tool-usage-telemetry.service.d.ts +0 -46
  330. package/dist/core/observability/tool-usage-telemetry.service.js +0 -181
  331. package/dist/core/observability/tool-usage-telemetry.service.js.map +0 -1
  332. package/dist/core/services/command-executor.service.d.ts +0 -3
  333. package/dist/core/services/command-executor.service.js +0 -12
  334. package/dist/core/services/command-executor.service.js.map +0 -1
  335. package/dist/core/services/command-history.service.d.ts +0 -39
  336. package/dist/core/services/command-history.service.js +0 -150
  337. package/dist/core/services/command-history.service.js.map +0 -1
  338. package/dist/core/services/command-history.service.spec.d.ts +0 -1
  339. package/dist/core/services/command-history.service.spec.js +0 -257
  340. package/dist/core/services/command-history.service.spec.js.map +0 -1
  341. package/dist/core/services/command-providers.d.ts +0 -1
  342. package/dist/core/services/command-providers.js +0 -17
  343. package/dist/core/services/command-providers.js.map +0 -1
  344. package/dist/core/services/runtime-catalog.service.d.ts +0 -2
  345. package/dist/core/services/runtime-catalog.service.js +0 -7
  346. package/dist/core/services/runtime-catalog.service.js.map +0 -1
  347. package/dist/core/sync/sync.service.d.ts +0 -4
  348. package/dist/core/sync/sync.service.js +0 -81
  349. package/dist/core/sync/sync.service.js.map +0 -1
  350. package/dist/core/sync/sync.service.spec.d.ts +0 -1
  351. package/dist/core/sync/sync.service.spec.js +0 -63
  352. package/dist/core/sync/sync.service.spec.js.map +0 -1
  353. package/dist/core/upgrade/satellite-upgrade.service.d.ts +0 -48
  354. package/dist/core/upgrade/satellite-upgrade.service.js +0 -358
  355. package/dist/core/upgrade/satellite-upgrade.service.js.map +0 -1
  356. package/dist/core/upgrade/satellite-upgrade.service.spec.d.ts +0 -1
  357. package/dist/core/upgrade/satellite-upgrade.service.spec.js +0 -223
  358. package/dist/core/upgrade/satellite-upgrade.service.spec.js.map +0 -1
  359. package/dist/core/validators/architecture-drift.service.d.ts +0 -68
  360. package/dist/core/validators/architecture-drift.service.js +0 -266
  361. package/dist/core/validators/architecture-drift.service.js.map +0 -1
  362. package/dist/core/validators/architecture-drift.service.spec.d.ts +0 -1
  363. package/dist/core/validators/architecture-drift.service.spec.js +0 -315
  364. package/dist/core/validators/architecture-drift.service.spec.js.map +0 -1
  365. package/dist/core/validators/deep-architecture-analyzer.d.ts +0 -58
  366. package/dist/core/validators/deep-architecture-analyzer.js +0 -333
  367. package/dist/core/validators/deep-architecture-analyzer.js.map +0 -1
  368. package/dist/core/validators/deep-architecture-analyzer.spec.d.ts +0 -1
  369. package/dist/core/validators/deep-architecture-analyzer.spec.js +0 -186
  370. package/dist/core/validators/deep-architecture-analyzer.spec.js.map +0 -1
  371. package/dist/core/validators/evaluators/evaluator.interface.d.ts +0 -14
  372. package/dist/core/validators/evaluators/evaluator.interface.js +0 -3
  373. package/dist/core/validators/evaluators/evaluator.interface.js.map +0 -1
  374. package/dist/core/validators/evaluators/native-evaluator.d.ts +0 -31
  375. package/dist/core/validators/evaluators/native-evaluator.js +0 -461
  376. package/dist/core/validators/evaluators/native-evaluator.js.map +0 -1
  377. package/dist/core/validators/evaluators/opa-evaluator.d.ts +0 -20
  378. package/dist/core/validators/evaluators/opa-evaluator.js +0 -249
  379. package/dist/core/validators/evaluators/opa-evaluator.js.map +0 -1
  380. package/dist/core/validators/phase-gate-validator.service.d.ts +0 -75
  381. package/dist/core/validators/phase-gate-validator.service.js +0 -338
  382. package/dist/core/validators/phase-gate-validator.service.js.map +0 -1
  383. package/dist/core/validators/phase-gate-validator.service.spec.d.ts +0 -1
  384. package/dist/core/validators/phase-gate-validator.service.spec.js +0 -326
  385. package/dist/core/validators/phase-gate-validator.service.spec.js.map +0 -1
  386. package/dist/core/validators/rule-evaluation-engine.d.ts +0 -34
  387. package/dist/core/validators/rule-evaluation-engine.js +0 -187
  388. package/dist/core/validators/rule-evaluation-engine.js.map +0 -1
  389. package/dist/core/validators/rule-evaluation-engine.spec.d.ts +0 -1
  390. package/dist/core/validators/rule-evaluation-engine.spec.js +0 -243
  391. package/dist/core/validators/rule-evaluation-engine.spec.js.map +0 -1
  392. package/dist/core/validators/ruleset-validator-architecture.spec.d.ts +0 -1
  393. package/dist/core/validators/ruleset-validator-architecture.spec.js +0 -178
  394. package/dist/core/validators/ruleset-validator-architecture.spec.js.map +0 -1
  395. package/dist/core/validators/ruleset-validator.service.d.ts +0 -82
  396. package/dist/core/validators/ruleset-validator.service.js +0 -682
  397. package/dist/core/validators/ruleset-validator.service.js.map +0 -1
  398. package/dist/core/validators/ruleset-validator.service.spec.d.ts +0 -1
  399. package/dist/core/validators/ruleset-validator.service.spec.js +0 -469
  400. package/dist/core/validators/ruleset-validator.service.spec.js.map +0 -1
  401. package/dist/domain/entities/index.d.ts +0 -72
  402. package/dist/domain/entities/index.js +0 -119
  403. package/dist/domain/entities/index.js.map +0 -1
  404. package/dist/domain/gate-evidence.d.ts +0 -59
  405. package/dist/domain/gate-evidence.js +0 -38
  406. package/dist/domain/gate-evidence.js.map +0 -1
  407. package/dist/domain/interfaces.d.ts +0 -224
  408. package/dist/domain/interfaces.js +0 -3
  409. package/dist/domain/interfaces.js.map +0 -1
  410. package/dist/domain/services/adr.service.d.ts +0 -50
  411. package/dist/domain/services/adr.service.js +0 -129
  412. package/dist/domain/services/adr.service.js.map +0 -1
  413. package/dist/domain/services/adr.service.spec.d.ts +0 -1
  414. package/dist/domain/services/adr.service.spec.js +0 -141
  415. package/dist/domain/services/adr.service.spec.js.map +0 -1
  416. package/dist/domain/services/agent-registry.service.d.ts +0 -26
  417. package/dist/domain/services/agent-registry.service.js +0 -152
  418. package/dist/domain/services/agent-registry.service.js.map +0 -1
  419. package/dist/domain/services/agent-registry.service.spec.d.ts +0 -1
  420. package/dist/domain/services/agent-registry.service.spec.js +0 -162
  421. package/dist/domain/services/agent-registry.service.spec.js.map +0 -1
  422. package/dist/domain/services/index.d.ts +0 -34
  423. package/dist/domain/services/index.js +0 -128
  424. package/dist/domain/services/index.js.map +0 -1
  425. package/dist/domain/services/moscow-prioritization.service.d.ts +0 -44
  426. package/dist/domain/services/moscow-prioritization.service.js +0 -213
  427. package/dist/domain/services/moscow-prioritization.service.js.map +0 -1
  428. package/dist/domain/services/moscow-prioritization.service.spec.d.ts +0 -1
  429. package/dist/domain/services/moscow-prioritization.service.spec.js +0 -285
  430. package/dist/domain/services/moscow-prioritization.service.spec.js.map +0 -1
  431. package/dist/domain/services/services.test.d.ts +0 -1
  432. package/dist/domain/services/services.test.js +0 -236
  433. package/dist/domain/services/services.test.js.map +0 -1
  434. package/dist/domain/services/standards.service.d.ts +0 -47
  435. package/dist/domain/services/standards.service.js +0 -129
  436. package/dist/domain/services/standards.service.js.map +0 -1
  437. package/dist/domain/services/standards.service.spec.d.ts +0 -1
  438. package/dist/domain/services/standards.service.spec.js +0 -600
  439. package/dist/domain/services/standards.service.spec.js.map +0 -1
  440. package/dist/domain/services/tool-usage-telemetry.service.d.ts +0 -46
  441. package/dist/domain/services/tool-usage-telemetry.service.js +0 -181
  442. package/dist/domain/services/tool-usage-telemetry.service.js.map +0 -1
  443. package/dist/domain/services/tool-usage-telemetry.service.spec.d.ts +0 -1
  444. package/dist/domain/services/tool-usage-telemetry.service.spec.js +0 -180
  445. package/dist/domain/services/tool-usage-telemetry.service.spec.js.map +0 -1
  446. package/dist/infrastructure/adapters/webhook.adapter.d.ts +0 -5
  447. package/dist/infrastructure/adapters/webhook.adapter.js +0 -19
  448. package/dist/infrastructure/adapters/webhook.adapter.js.map +0 -1
  449. package/dist/infrastructure/catalog/catalog-loader.d.ts +0 -22
  450. package/dist/infrastructure/catalog/catalog-loader.js +0 -135
  451. package/dist/infrastructure/catalog/catalog-loader.js.map +0 -1
  452. package/dist/infrastructure/catalog/catalog-loader.test.d.ts +0 -1
  453. package/dist/infrastructure/catalog/catalog-loader.test.js +0 -184
  454. package/dist/infrastructure/catalog/catalog-loader.test.js.map +0 -1
  455. package/dist/infrastructure/cli/command-executor.d.ts +0 -20
  456. package/dist/infrastructure/cli/command-executor.js +0 -109
  457. package/dist/infrastructure/cli/command-executor.js.map +0 -1
  458. package/dist/infrastructure/cli/command-executor.spec.d.ts +0 -1
  459. package/dist/infrastructure/cli/command-executor.spec.js +0 -149
  460. package/dist/infrastructure/cli/command-executor.spec.js.map +0 -1
  461. package/dist/infrastructure/cli/command-executor.test.d.ts +0 -1
  462. package/dist/infrastructure/cli/command-executor.test.js +0 -98
  463. package/dist/infrastructure/cli/command-executor.test.js.map +0 -1
  464. package/dist/infrastructure/cli/providers/index.d.ts +0 -52
  465. package/dist/infrastructure/cli/providers/index.js +0 -175
  466. package/dist/infrastructure/cli/providers/index.js.map +0 -1
  467. package/dist/infrastructure/cli/providers/providers.spec.d.ts +0 -1
  468. package/dist/infrastructure/cli/providers/providers.spec.js +0 -251
  469. package/dist/infrastructure/cli/providers/providers.spec.js.map +0 -1
  470. package/dist/infrastructure/formatters/output-formatter.service.d.ts +0 -28
  471. package/dist/infrastructure/formatters/output-formatter.service.js +0 -198
  472. package/dist/infrastructure/formatters/output-formatter.service.js.map +0 -1
  473. package/dist/infrastructure/formatters/output-formatter.service.spec.d.ts +0 -1
  474. package/dist/infrastructure/formatters/output-formatter.service.spec.js +0 -164
  475. package/dist/infrastructure/formatters/output-formatter.service.spec.js.map +0 -1
  476. package/dist/main.d.ts +0 -2
  477. package/dist/main.js +0 -10
  478. package/dist/main.js.map +0 -1
  479. package/dist/test/mocks/index.d.ts +0 -44
  480. package/dist/test/mocks/index.js +0 -135
  481. package/dist/test/mocks/index.js.map +0 -1
@@ -1,308 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
- return c > 3 && r && Object.defineProperty(target, key, r), r;
23
- };
24
- var __importStar = (this && this.__importStar) || (function () {
25
- var ownKeys = function(o) {
26
- ownKeys = Object.getOwnPropertyNames || function (o) {
27
- var ar = [];
28
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
- return ar;
30
- };
31
- return ownKeys(o);
32
- };
33
- return function (mod) {
34
- if (mod && mod.__esModule) return mod;
35
- var result = {};
36
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
- __setModuleDefault(result, mod);
38
- return result;
39
- };
40
- })();
41
- var __metadata = (this && this.__metadata) || function (k, v) {
42
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
43
- };
44
- var __importDefault = (this && this.__importDefault) || function (mod) {
45
- return (mod && mod.__esModule) ? mod : { "default": mod };
46
- };
47
- Object.defineProperty(exports, "__esModule", { value: true });
48
- exports.StandardsCommand = void 0;
49
- const nest_commander_1 = require("nest-commander");
50
- const p = __importStar(require("@clack/prompts"));
51
- const chalk_1 = __importDefault(require("chalk"));
52
- const container_1 = require("../../core/di/container");
53
- const standards_service_1 = require("../../domain/services/standards.service");
54
- const observability_1 = require("../../core/observability");
55
- let StandardsCommand = class StandardsCommand extends nest_commander_1.CommandRunner {
56
- async run(passedParam, options) {
57
- const fs = (0, container_1.getContainer)().createFileSystem();
58
- if (options?.init) {
59
- await this.initializeStandards(fs);
60
- }
61
- else if (options?.list) {
62
- await this.listStandards(fs, options.category);
63
- }
64
- else if (options?.get) {
65
- await this.getStandard(fs, options.get);
66
- }
67
- else if (options?.validate) {
68
- await this.validateStandards(fs, options.validate);
69
- }
70
- else if (options?.export) {
71
- await this.exportStandard(fs, options.export, options.format);
72
- }
73
- else {
74
- await this.interactiveMode(fs);
75
- }
76
- }
77
- async interactiveMode(fs) {
78
- console.clear();
79
- p.intro(chalk_1.default.bgCyan.white.bold(' Evolith Standards - Corporate Standards Management '));
80
- const action = await p.select({
81
- message: '¿Qué acción deseas realizar?',
82
- options: [
83
- { value: 'init', label: 'Inicializar', hint: 'Crear estructura de standards' },
84
- { value: 'list', label: 'Listar Standards', hint: 'Ver todos los standards' },
85
- { value: 'get', label: 'Ver Standard', hint: 'Detalles de un standard' },
86
- { value: 'validate', label: 'Validar Código', hint: 'Validar contra standards' },
87
- { value: 'export', label: 'Exportar', hint: 'Exportar standard a MD/JSON' },
88
- ],
89
- });
90
- switch (action) {
91
- case 'init':
92
- await this.initializeStandards(fs);
93
- break;
94
- case 'list':
95
- await this.listStandards(fs);
96
- break;
97
- case 'get':
98
- const id = await p.text({ message: 'ID del Standard:' });
99
- await this.getStandard(fs, id);
100
- break;
101
- case 'validate':
102
- const code = await p.text({ message: 'Código a validar:' });
103
- await this.validateStandards(fs, code);
104
- break;
105
- case 'export':
106
- const exportId = await p.text({ message: 'ID del Standard:' });
107
- const format = await p.select({
108
- message: 'Formato:',
109
- options: [
110
- { value: 'markdown', label: 'Markdown' },
111
- { value: 'json', label: 'JSON' },
112
- ],
113
- });
114
- await this.exportStandard(fs, exportId, format);
115
- break;
116
- }
117
- }
118
- async initializeStandards(fs) {
119
- observability_1.logger.info('Initializing standards directory structure');
120
- const service = new standards_service_1.StandardsService(fs, process.cwd());
121
- const spinner = p.spinner();
122
- spinner.start('Inicializando...');
123
- try {
124
- await service.initialize();
125
- spinner.stop();
126
- p.log.success(chalk_1.default.green('✓ Estructura de standards creada'));
127
- p.log.info(' Ubicación: reference/standards/');
128
- p.log.info(' Subcarpetas: rulesets/, templates/');
129
- p.log.info('\nPara ver los standards disponibles, usa: evolith standards --list');
130
- }
131
- catch (error) {
132
- spinner.stop();
133
- observability_1.logger.error('Failed to initialize standards', { error });
134
- p.log.error(chalk_1.default.red('✗ Error inicializando standards'));
135
- }
136
- }
137
- async listStandards(fs, category) {
138
- observability_1.logger.info('Listing standards', { category });
139
- const service = new standards_service_1.StandardsService(fs, process.cwd());
140
- const cat = category;
141
- const standards = await service.list(cat);
142
- if (standards.length === 0) {
143
- p.log.warn('No hay standards registrados.');
144
- p.log.info('Usa "evolith standards --init" para inicializar la estructura.');
145
- return;
146
- }
147
- console.log(`\nTotal Standards: ${standards.length}\n`);
148
- const table = standards.map(s => ({
149
- id: s.id,
150
- name: s.name,
151
- version: s.version,
152
- category: s.category,
153
- rules: s.rules.length,
154
- }));
155
- console.table(table);
156
- }
157
- async getStandard(fs, id) {
158
- observability_1.logger.info('Getting standard', { id });
159
- const service = new standards_service_1.StandardsService(fs, process.cwd());
160
- const standard = await service.get(id);
161
- if (!standard) {
162
- p.log.error(chalk_1.default.red(`Standard ${id} no encontrado`));
163
- return;
164
- }
165
- console.log(chalk_1.default.bold(`\n${standard.name}`));
166
- console.log(`ID: ${standard.id} | Version: ${standard.version} | Category: ${standard.category}`);
167
- console.log(`\n${standard.description}\n`);
168
- if (standard.rules.length > 0) {
169
- console.log(chalk_1.default.bold('Rules:'));
170
- standard.rules.forEach(rule => {
171
- const icon = rule.severity === 'error' ? '🔴' : rule.severity === 'warning' ? '🟡' : '🔵';
172
- console.log(` ${icon} [${rule.severity}] ${rule.id}: ${rule.name}`);
173
- console.log(` ${rule.description}`);
174
- if (rule.remediation) {
175
- console.log(` → ${rule.remediation}`);
176
- }
177
- });
178
- }
179
- }
180
- async validateStandards(fs, code) {
181
- if (!code) {
182
- p.log.error('Código requerido para validación');
183
- return;
184
- }
185
- observability_1.logger.info('Validating code against standards');
186
- const service = new standards_service_1.StandardsService(fs, process.cwd());
187
- const result = await service.validate(code);
188
- console.log(chalk_1.default.bold('\nValidation Results'));
189
- console.log(`Total Rules: ${result.totalRules}`);
190
- console.log(chalk_1.default.green(`Passed: ${result.passed}`));
191
- console.log(chalk_1.default.red(`Failed: ${result.failed}`));
192
- if (result.failed > 0) {
193
- console.log(chalk_1.default.bold('\nFailed Rules:'));
194
- result.results
195
- .filter(r => !r.passed)
196
- .forEach(r => {
197
- const icon = r.severity === 'error' ? '🔴' : '🟡';
198
- console.log(` ${icon} ${r.standardId}/${r.ruleId}: ${r.ruleName}`);
199
- console.log(` ${r.message}`);
200
- });
201
- }
202
- }
203
- async exportStandard(fs, id, format) {
204
- observability_1.logger.info('Exporting standard', { id, format });
205
- const service = new standards_service_1.StandardsService(fs, process.cwd());
206
- const fmt = format || 'markdown';
207
- try {
208
- const output = await service.export(id, fmt);
209
- console.log(`\n${output}\n`);
210
- }
211
- catch (error) {
212
- observability_1.logger.error('Failed to export standard', { error });
213
- p.log.error(chalk_1.default.red(`Error exportando standard: ${error}`));
214
- }
215
- }
216
- parseInit() {
217
- return true;
218
- }
219
- parseList() {
220
- return true;
221
- }
222
- parseGet(val) {
223
- return val;
224
- }
225
- parseValidate(val) {
226
- return val;
227
- }
228
- parseExport(val) {
229
- return val;
230
- }
231
- parseFormat(val) {
232
- return val;
233
- }
234
- parseCategory(val) {
235
- return val;
236
- }
237
- };
238
- exports.StandardsCommand = StandardsCommand;
239
- __decorate([
240
- (0, nest_commander_1.Option)({
241
- flags: '--init',
242
- description: 'Inicializar estructura de standards',
243
- }),
244
- __metadata("design:type", Function),
245
- __metadata("design:paramtypes", []),
246
- __metadata("design:returntype", Boolean)
247
- ], StandardsCommand.prototype, "parseInit", null);
248
- __decorate([
249
- (0, nest_commander_1.Option)({
250
- flags: '-l, --list',
251
- description: 'Listar todos los standards',
252
- }),
253
- __metadata("design:type", Function),
254
- __metadata("design:paramtypes", []),
255
- __metadata("design:returntype", Boolean)
256
- ], StandardsCommand.prototype, "parseList", null);
257
- __decorate([
258
- (0, nest_commander_1.Option)({
259
- flags: '-g, --get [id]',
260
- description: 'Ver standard específico',
261
- }),
262
- __metadata("design:type", Function),
263
- __metadata("design:paramtypes", [String]),
264
- __metadata("design:returntype", String)
265
- ], StandardsCommand.prototype, "parseGet", null);
266
- __decorate([
267
- (0, nest_commander_1.Option)({
268
- flags: '-v, --validate [code]',
269
- description: 'Validar código contra standards',
270
- }),
271
- __metadata("design:type", Function),
272
- __metadata("design:paramtypes", [String]),
273
- __metadata("design:returntype", String)
274
- ], StandardsCommand.prototype, "parseValidate", null);
275
- __decorate([
276
- (0, nest_commander_1.Option)({
277
- flags: '-e, --export [id]',
278
- description: 'Exportar standard',
279
- }),
280
- __metadata("design:type", Function),
281
- __metadata("design:paramtypes", [String]),
282
- __metadata("design:returntype", String)
283
- ], StandardsCommand.prototype, "parseExport", null);
284
- __decorate([
285
- (0, nest_commander_1.Option)({
286
- flags: '-f, --format [format]',
287
- description: 'Formato de exportación: markdown, json',
288
- }),
289
- __metadata("design:type", Function),
290
- __metadata("design:paramtypes", [String]),
291
- __metadata("design:returntype", String)
292
- ], StandardsCommand.prototype, "parseFormat", null);
293
- __decorate([
294
- (0, nest_commander_1.Option)({
295
- flags: '-c, --category [category]',
296
- description: 'Filtrar por categoría',
297
- }),
298
- __metadata("design:type", Function),
299
- __metadata("design:paramtypes", [String]),
300
- __metadata("design:returntype", String)
301
- ], StandardsCommand.prototype, "parseCategory", null);
302
- exports.StandardsCommand = StandardsCommand = __decorate([
303
- (0, nest_commander_1.Command)({
304
- name: 'standards',
305
- description: 'Gestión de estándares Evolith (arquitectura, gobernanza, operaciones)',
306
- })
307
- ], StandardsCommand);
308
- //# sourceMappingURL=standards.command.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"standards.command.js","sourceRoot":"","sources":["../../../src/commands/standards/standards.command.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,311 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- const standards_command_1 = require("./standards.command");
37
- jest.mock('@clack/prompts', () => ({
38
- intro: jest.fn(),
39
- outro: jest.fn(),
40
- select: jest.fn(),
41
- text: jest.fn(),
42
- spinner: jest.fn(() => ({ start: jest.fn(), stop: jest.fn() })),
43
- log: {
44
- info: jest.fn(),
45
- warn: jest.fn(),
46
- success: jest.fn(),
47
- error: jest.fn(),
48
- message: jest.fn(),
49
- },
50
- }));
51
- jest.mock('chalk', () => {
52
- const chalkFn = (str) => str;
53
- chalkFn.green = (str) => str;
54
- chalkFn.red = (str) => str;
55
- chalkFn.bold = (str) => str;
56
- chalkFn.yellow = (str) => str;
57
- chalkFn.blue = (str) => str;
58
- chalkFn.cyan = (str) => str;
59
- chalkFn.bgCyan = { white: { bold: (str) => str } };
60
- return chalkFn;
61
- });
62
- jest.mock('../../core/di/container', () => ({
63
- getContainer: jest.fn(() => ({
64
- createFileSystem: jest.fn(() => ({
65
- ensureDir: jest.fn(),
66
- exists: jest.fn(),
67
- writeJson: jest.fn(),
68
- readJson: jest.fn(),
69
- })),
70
- })),
71
- resetContainer: jest.fn(),
72
- }));
73
- jest.mock('../../domain/services/standards.service', () => ({
74
- StandardsService: jest.fn().mockImplementation(() => ({
75
- initialize: jest.fn(),
76
- list: jest.fn(),
77
- get: jest.fn(),
78
- validate: jest.fn(),
79
- export: jest.fn(),
80
- })),
81
- StandardCategory: {},
82
- }));
83
- jest.mock('../../core/observability', () => ({
84
- logger: {
85
- info: jest.fn(),
86
- error: jest.fn(),
87
- warn: jest.fn(),
88
- },
89
- }));
90
- const p = __importStar(require("@clack/prompts"));
91
- const standards_service_1 = require("../../domain/services/standards.service");
92
- const mockInitialize = jest.fn();
93
- const mockList = jest.fn();
94
- const mockGet = jest.fn();
95
- const mockValidate = jest.fn();
96
- const mockExport = jest.fn();
97
- standards_service_1.StandardsService.mockImplementation(() => ({
98
- initialize: mockInitialize,
99
- list: mockList,
100
- get: mockGet,
101
- validate: mockValidate,
102
- export: mockExport,
103
- }));
104
- describe('StandardsCommand', () => {
105
- let command;
106
- let logSpy;
107
- let tableSpy;
108
- let clearSpy;
109
- beforeEach(() => {
110
- command = new standards_command_1.StandardsCommand();
111
- logSpy = jest.spyOn(console, 'log').mockImplementation(() => { });
112
- tableSpy = jest.spyOn(console, 'table').mockImplementation(() => { });
113
- clearSpy = jest.spyOn(console, 'clear').mockImplementation(() => { });
114
- jest.clearAllMocks();
115
- mockInitialize.mockReset();
116
- mockList.mockReset();
117
- mockGet.mockReset();
118
- mockValidate.mockReset();
119
- mockExport.mockReset();
120
- });
121
- afterEach(() => {
122
- logSpy.mockRestore();
123
- tableSpy.mockRestore();
124
- clearSpy.mockRestore();
125
- });
126
- describe('run', () => {
127
- it('should call initializeStandards when --init is passed', async () => {
128
- mockInitialize.mockResolvedValue(undefined);
129
- await command.run([], { init: true });
130
- expect(mockInitialize).toHaveBeenCalled();
131
- expect(p.log.success).toHaveBeenCalled();
132
- });
133
- it('should handle initialization errors', async () => {
134
- mockInitialize.mockRejectedValue(new Error('Init failed'));
135
- await command.run([], { init: true });
136
- expect(p.log.error).toHaveBeenCalled();
137
- });
138
- it('should call listStandards when --list is passed', async () => {
139
- mockList.mockResolvedValue([
140
- {
141
- id: 'STD-001',
142
- name: 'Test Standard',
143
- version: '1.0.0',
144
- category: 'architecture',
145
- description: 'Test',
146
- rules: [{ id: 'R1', name: 'Rule 1', severity: 'error', description: 'Test' }],
147
- },
148
- ]);
149
- await command.run([], { list: true });
150
- expect(mockList).toHaveBeenCalled();
151
- expect(tableSpy).toHaveBeenCalled();
152
- });
153
- it('should show warning when no standards are registered', async () => {
154
- mockList.mockResolvedValue([]);
155
- await command.run([], { list: true });
156
- expect(p.log.warn).toHaveBeenCalled();
157
- expect(tableSpy).not.toHaveBeenCalled();
158
- });
159
- it('should filter by category when --category is passed', async () => {
160
- mockList.mockResolvedValue([]);
161
- await command.run([], { list: true, category: 'governance' });
162
- expect(mockList).toHaveBeenCalledWith('governance');
163
- });
164
- it('should call getStandard when --get is passed', async () => {
165
- mockGet.mockResolvedValue({
166
- id: 'STD-001',
167
- name: 'Test Standard',
168
- version: '1.0.0',
169
- category: 'architecture',
170
- description: 'A test standard',
171
- rules: [
172
- {
173
- id: 'R1',
174
- name: 'Rule 1',
175
- severity: 'error',
176
- description: 'Test rule',
177
- remediation: 'Fix it',
178
- },
179
- ],
180
- });
181
- await command.run([], { get: 'STD-001' });
182
- expect(mockGet).toHaveBeenCalledWith('STD-001');
183
- expect(logSpy).toHaveBeenCalled();
184
- });
185
- it('should show error when standard is not found', async () => {
186
- mockGet.mockResolvedValue(undefined);
187
- await command.run([], { get: 'NONEXISTENT' });
188
- expect(p.log.error).toHaveBeenCalledWith(expect.stringContaining('no encontrado'));
189
- });
190
- it('should call validateStandards when --validate is passed', async () => {
191
- mockValidate.mockResolvedValue({
192
- totalRules: 5,
193
- passed: 3,
194
- failed: 2,
195
- results: [
196
- {
197
- standardId: 'STD-001',
198
- ruleId: 'R1',
199
- ruleName: 'Rule 1',
200
- severity: 'error',
201
- passed: false,
202
- message: 'Failed',
203
- },
204
- ],
205
- });
206
- await command.run([], { validate: 'some-code' });
207
- expect(mockValidate).toHaveBeenCalledWith('some-code');
208
- expect(logSpy).toHaveBeenCalled();
209
- });
210
- it('should enter interactive mode when --validate has empty string', async () => {
211
- p.select.mockResolvedValue('list');
212
- mockList.mockResolvedValue([]);
213
- await command.run([], { validate: '' });
214
- expect(p.intro).toHaveBeenCalled();
215
- expect(mockValidate).not.toHaveBeenCalled();
216
- });
217
- it('should call exportStandard when --export is passed', async () => {
218
- mockExport.mockResolvedValue('# Standard: Test');
219
- await command.run([], { export: 'STD-001', format: 'markdown' });
220
- expect(mockExport).toHaveBeenCalledWith('STD-001', 'markdown');
221
- });
222
- it('should default to markdown format when no format is specified', async () => {
223
- mockExport.mockResolvedValue('# Standard: Test');
224
- await command.run([], { export: 'STD-001' });
225
- expect(mockExport).toHaveBeenCalledWith('STD-001', 'markdown');
226
- });
227
- it('should handle export errors', async () => {
228
- mockExport.mockRejectedValue(new Error('Export failed'));
229
- await command.run([], { export: 'STD-001' });
230
- expect(p.log.error).toHaveBeenCalled();
231
- });
232
- it('should enter interactive mode when no options are passed', async () => {
233
- p.select.mockResolvedValue('list');
234
- mockList.mockResolvedValue([]);
235
- await command.run([], {});
236
- expect(p.intro).toHaveBeenCalled();
237
- expect(p.select).toHaveBeenCalled();
238
- });
239
- it('should handle init action in interactive mode', async () => {
240
- p.select.mockResolvedValue('init');
241
- mockInitialize.mockResolvedValue(undefined);
242
- await command.run([], {});
243
- expect(mockInitialize).toHaveBeenCalled();
244
- });
245
- it('should handle get action in interactive mode', async () => {
246
- p.select.mockResolvedValue('get');
247
- p.text.mockResolvedValue('STD-001');
248
- mockGet.mockResolvedValue(undefined);
249
- await command.run([], {});
250
- expect(p.text).toHaveBeenCalled();
251
- expect(mockGet).toHaveBeenCalledWith('STD-001');
252
- });
253
- it('should handle validate action in interactive mode', async () => {
254
- p.select.mockResolvedValue('validate');
255
- p.text.mockResolvedValue('test-code');
256
- mockValidate.mockResolvedValue({
257
- totalRules: 1,
258
- passed: 1,
259
- failed: 0,
260
- results: [],
261
- });
262
- await command.run([], {});
263
- expect(mockValidate).toHaveBeenCalledWith('test-code');
264
- });
265
- it('should handle export action in interactive mode', async () => {
266
- p.select
267
- .mockResolvedValueOnce('export')
268
- .mockResolvedValueOnce('json');
269
- p.text.mockResolvedValue('STD-001');
270
- mockExport.mockResolvedValue('{}');
271
- await command.run([], {});
272
- expect(mockExport).toHaveBeenCalledWith('STD-001', 'json');
273
- });
274
- });
275
- describe('parseInit', () => {
276
- it('should return true', () => {
277
- expect(command.parseInit()).toBe(true);
278
- });
279
- });
280
- describe('parseList', () => {
281
- it('should return true', () => {
282
- expect(command.parseList()).toBe(true);
283
- });
284
- });
285
- describe('parseGet', () => {
286
- it('should return the value', () => {
287
- expect(command.parseGet('STD-001')).toBe('STD-001');
288
- });
289
- });
290
- describe('parseValidate', () => {
291
- it('should return the value', () => {
292
- expect(command.parseValidate('test-code')).toBe('test-code');
293
- });
294
- });
295
- describe('parseExport', () => {
296
- it('should return the value', () => {
297
- expect(command.parseExport('STD-001')).toBe('STD-001');
298
- });
299
- });
300
- describe('parseFormat', () => {
301
- it('should return the value', () => {
302
- expect(command.parseFormat('json')).toBe('json');
303
- });
304
- });
305
- describe('parseCategory', () => {
306
- it('should return the value', () => {
307
- expect(command.parseCategory('architecture')).toBe('architecture');
308
- });
309
- });
310
- });
311
- //# sourceMappingURL=standards.command.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"standards.command.spec.js","sourceRoot":"","sources":["../../../src/commands/standards/standards.command.spec.ts"],"names":[],"mappings":"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"}