@girardelli/architect 6.0.0 → 8.1.0

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 (983) hide show
  1. package/dist/{adapters → src/adapters}/cli.d.ts +1 -2
  2. package/dist/{adapters → src/adapters}/cli.js +182 -207
  3. package/dist/src/adapters/cli.js.map +1 -0
  4. package/dist/src/adapters/github-action.d.ts +9 -0
  5. package/dist/src/adapters/github-action.js +94 -0
  6. package/dist/src/adapters/github-action.js.map +1 -0
  7. package/dist/{html-reporter → src/adapters/html-reporter}/scripts.d.ts +1 -2
  8. package/dist/{adapters → src/adapters}/html-reporter/scripts.js.map +1 -1
  9. package/dist/src/adapters/html-reporter/sections/agents.d.ts +2 -0
  10. package/dist/{html-reporter → src/adapters/html-reporter}/sections/agents.js +8 -7
  11. package/dist/src/adapters/html-reporter/sections/agents.js.map +1 -0
  12. package/dist/{html-reporter → src/adapters/html-reporter}/sections/anti-patterns.d.ts +1 -2
  13. package/dist/src/adapters/html-reporter/sections/anti-patterns.js.map +1 -0
  14. package/dist/{html-reporter → src/adapters/html-reporter}/sections/header.d.ts +1 -2
  15. package/dist/{adapters → src/adapters}/html-reporter/sections/header.js +1 -1
  16. package/dist/src/adapters/html-reporter/sections/header.js.map +1 -0
  17. package/dist/{html-reporter → src/adapters/html-reporter}/sections/layers.d.ts +1 -2
  18. package/dist/src/adapters/html-reporter/sections/layers.js.map +1 -0
  19. package/dist/src/adapters/html-reporter/sections/overview.d.ts +2 -0
  20. package/dist/src/adapters/html-reporter/sections/overview.js.map +1 -0
  21. package/dist/{html-reporter → src/adapters/html-reporter}/sections/refactoring-plan.d.ts +1 -2
  22. package/dist/src/adapters/html-reporter/sections/refactoring-plan.js.map +1 -0
  23. package/dist/{html-reporter → src/adapters/html-reporter}/sections/score.d.ts +1 -2
  24. package/dist/{adapters → src/adapters}/html-reporter/sections/score.js +1 -0
  25. package/dist/src/adapters/html-reporter/sections/score.js.map +1 -0
  26. package/dist/{adapters → src/adapters}/html-reporter/sections/suggestions.d.ts +0 -1
  27. package/dist/src/adapters/html-reporter/sections/suggestions.js.map +1 -0
  28. package/dist/{adapters → src/adapters}/html-reporter/styles.d.ts +0 -1
  29. package/dist/{adapters → src/adapters}/html-reporter/styles.js.map +1 -1
  30. package/dist/{adapters → src/adapters}/html-reporter/utils_adapters.d.ts +1 -2
  31. package/dist/src/adapters/html-reporter/utils_adapters.js.map +1 -0
  32. package/dist/{adapters → src/adapters}/html-reporter/utils_sections.d.ts +0 -1
  33. package/dist/src/adapters/html-reporter/utils_sections.js.map +1 -0
  34. package/dist/{html-reporter.d.ts → src/adapters/html-reporter.d.ts} +3 -3
  35. package/dist/{html-reporter.js → src/adapters/html-reporter.js} +11 -11
  36. package/dist/src/adapters/html-reporter.js.map +1 -0
  37. package/dist/src/adapters/progress-logger.d.ts +55 -0
  38. package/dist/src/adapters/progress-logger.js +200 -0
  39. package/dist/src/adapters/progress-logger.js.map +1 -0
  40. package/dist/{refactor-reporter.d.ts → src/adapters/refactor-reporter.d.ts} +1 -2
  41. package/dist/{refactor-reporter.js → src/adapters/refactor-reporter.js} +1 -1
  42. package/dist/src/adapters/refactor-reporter.js.map +1 -0
  43. package/dist/{reporter.d.ts → src/adapters/reporter.d.ts} +1 -2
  44. package/dist/src/adapters/reporter.js.map +1 -0
  45. package/dist/src/core/GenesisTerminal.d.ts +8 -0
  46. package/dist/src/core/GenesisTerminal.js +105 -0
  47. package/dist/src/core/GenesisTerminal.js.map +1 -0
  48. package/dist/{core → src/core}/architect.d.ts +3 -2
  49. package/dist/{core → src/core}/architect.js +20 -5
  50. package/dist/src/core/architect.js.map +1 -0
  51. package/dist/tests/architect-adapter-enrichment.test.d.ts +1 -0
  52. package/dist/tests/architect-adapter-enrichment.test.js +11 -0
  53. package/dist/tests/architect-adapter-enrichment.test.js.map +1 -0
  54. package/dist/tests/github-action.test.d.ts +1 -0
  55. package/dist/tests/github-action.test.js +92 -0
  56. package/dist/tests/github-action.test.js.map +1 -0
  57. package/package.json +15 -65
  58. package/src/adapters/cli.ts +216 -245
  59. package/src/adapters/github-action.ts +109 -0
  60. package/src/adapters/html-reporter/scripts.ts +1 -1
  61. package/src/adapters/html-reporter/sections/agents.ts +9 -9
  62. package/src/adapters/html-reporter/sections/anti-patterns.ts +1 -1
  63. package/src/adapters/html-reporter/sections/header.ts +2 -2
  64. package/src/adapters/html-reporter/sections/layers.ts +1 -1
  65. package/src/adapters/html-reporter/sections/overview.ts +1 -1
  66. package/src/adapters/html-reporter/sections/refactoring-plan.ts +1 -1
  67. package/src/adapters/html-reporter/sections/score.ts +2 -1
  68. package/src/adapters/html-reporter/utils_adapters.ts +1 -1
  69. package/src/adapters/html-reporter.ts +14 -1
  70. package/src/adapters/progress-logger.ts +236 -0
  71. package/src/adapters/refactor-reporter.ts +2 -2
  72. package/src/adapters/reporter.ts +1 -1
  73. package/src/core/GenesisTerminal.ts +127 -0
  74. package/src/core/architect.ts +25 -5
  75. package/tests/github-action.test.ts +109 -0
  76. package/tsconfig.json +12 -19
  77. package/.agent/INDEX.md +0 -197
  78. package/.agent/agents/AGENT-ORCHESTRATOR.md +0 -408
  79. package/.agent/agents/QA-TEST-ENGINEER.md +0 -152
  80. package/.agent/agents/SECURITY-AUDITOR.md +0 -87
  81. package/.agent/agents/TECH-DEBT-CONTROLLER.md +0 -154
  82. package/.agent/agents/TYPESCRIPT-BACKEND-DEVELOPER.md +0 -484
  83. package/.agent/guards/CODE-REVIEW-CHECKLIST.md +0 -94
  84. package/.agent/guards/PREFLIGHT.md +0 -200
  85. package/.agent/guards/QUALITY-GATES.md +0 -212
  86. package/.agent/hooks/post-analysis.sh +0 -64
  87. package/.agent/hooks/pre-commit.sh +0 -68
  88. package/.agent/hooks/pre-push.sh +0 -59
  89. package/.agent/rules/00-general.md +0 -229
  90. package/.agent/rules/01-architecture.md +0 -182
  91. package/.agent/rules/02-security.md +0 -388
  92. package/.agent/skills/ARCHITECT-INTEGRATION.md +0 -103
  93. package/.agent/skills/CI-PIPELINE.md +0 -113
  94. package/.agent/skills/PROJECT-PATTERNS.md +0 -62
  95. package/.agent/templates/ADR.md +0 -95
  96. package/.agent/templates/BDD.md +0 -57
  97. package/.agent/templates/C4.md +0 -67
  98. package/.agent/templates/TDD.md +0 -86
  99. package/.agent/templates/THREAT-MODEL.md +0 -63
  100. package/.agent/workflows/fix-bug.md +0 -228
  101. package/.agent/workflows/new-feature.md +0 -311
  102. package/.agent/workflows/review.md +0 -95
  103. package/.github/workflows/ci.yml +0 -43
  104. package/.github/workflows/publish.yml +0 -40
  105. package/CONTRIBUTING.md +0 -140
  106. package/LICENSE +0 -21
  107. package/PROJECT_STRUCTURE.txt +0 -168
  108. package/README.md +0 -261
  109. package/architect-report--girardelli-architect.json +0 -5332
  110. package/architect-run.sh +0 -427
  111. package/assets/banner-v3.html +0 -561
  112. package/debug.js +0 -6
  113. package/dist/adapters/cli.d.ts.map +0 -1
  114. package/dist/adapters/cli.js.map +0 -1
  115. package/dist/adapters/html-reporter/scripts.d.ts +0 -6
  116. package/dist/adapters/html-reporter/scripts.d.ts.map +0 -1
  117. package/dist/adapters/html-reporter/sections/agents.d.ts +0 -3
  118. package/dist/adapters/html-reporter/sections/agents.d.ts.map +0 -1
  119. package/dist/adapters/html-reporter/sections/agents.js +0 -259
  120. package/dist/adapters/html-reporter/sections/agents.js.map +0 -1
  121. package/dist/adapters/html-reporter/sections/anti-patterns.d.ts +0 -14
  122. package/dist/adapters/html-reporter/sections/anti-patterns.d.ts.map +0 -1
  123. package/dist/adapters/html-reporter/sections/anti-patterns.js.map +0 -1
  124. package/dist/adapters/html-reporter/sections/header.d.ts +0 -4
  125. package/dist/adapters/html-reporter/sections/header.d.ts.map +0 -1
  126. package/dist/adapters/html-reporter/sections/header.js.map +0 -1
  127. package/dist/adapters/html-reporter/sections/layers.d.ts +0 -10
  128. package/dist/adapters/html-reporter/sections/layers.d.ts.map +0 -1
  129. package/dist/adapters/html-reporter/sections/layers.js.map +0 -1
  130. package/dist/adapters/html-reporter/sections/overview.d.ts +0 -3
  131. package/dist/adapters/html-reporter/sections/overview.d.ts.map +0 -1
  132. package/dist/adapters/html-reporter/sections/overview.js.map +0 -1
  133. package/dist/adapters/html-reporter/sections/refactoring-plan.d.ts +0 -4
  134. package/dist/adapters/html-reporter/sections/refactoring-plan.d.ts.map +0 -1
  135. package/dist/adapters/html-reporter/sections/refactoring-plan.js.map +0 -1
  136. package/dist/adapters/html-reporter/sections/score.d.ts +0 -8
  137. package/dist/adapters/html-reporter/sections/score.d.ts.map +0 -1
  138. package/dist/adapters/html-reporter/sections/score.js.map +0 -1
  139. package/dist/adapters/html-reporter/sections/suggestions.d.ts.map +0 -1
  140. package/dist/adapters/html-reporter/sections/suggestions.js.map +0 -1
  141. package/dist/adapters/html-reporter/styles.d.ts.map +0 -1
  142. package/dist/adapters/html-reporter/utils.d.ts +0 -27
  143. package/dist/adapters/html-reporter/utils.d.ts.map +0 -1
  144. package/dist/adapters/html-reporter/utils.js +0 -82
  145. package/dist/adapters/html-reporter/utils.js.map +0 -1
  146. package/dist/adapters/html-reporter/utils_adapters.d.ts.map +0 -1
  147. package/dist/adapters/html-reporter/utils_adapters.js.map +0 -1
  148. package/dist/adapters/html-reporter/utils_sections.d.ts.map +0 -1
  149. package/dist/adapters/html-reporter/utils_sections.js.map +0 -1
  150. package/dist/adapters/html-reporter.d.ts +0 -9
  151. package/dist/adapters/html-reporter.d.ts.map +0 -1
  152. package/dist/adapters/html-reporter.js +0 -87
  153. package/dist/adapters/html-reporter.js.map +0 -1
  154. package/dist/adapters/html-reporter_deps.d.ts +0 -15
  155. package/dist/adapters/html-reporter_deps.d.ts.map +0 -1
  156. package/dist/adapters/html-reporter_deps.js +0 -12
  157. package/dist/adapters/html-reporter_deps.js.map +0 -1
  158. package/dist/adapters/refactor-reporter.d.ts +0 -20
  159. package/dist/adapters/refactor-reporter.d.ts.map +0 -1
  160. package/dist/adapters/refactor-reporter.js +0 -389
  161. package/dist/adapters/refactor-reporter.js.map +0 -1
  162. package/dist/adapters/reporter.d.ts +0 -13
  163. package/dist/adapters/reporter.d.ts.map +0 -1
  164. package/dist/adapters/reporter.js.map +0 -1
  165. package/dist/agent-generator/context-enricher.d.ts +0 -15
  166. package/dist/agent-generator/context-enricher.d.ts.map +0 -1
  167. package/dist/agent-generator/context-enricher.js +0 -53
  168. package/dist/agent-generator/context-enricher.js.map +0 -1
  169. package/dist/agent-generator/detectors/base-detector.d.ts +0 -9
  170. package/dist/agent-generator/detectors/base-detector.d.ts.map +0 -1
  171. package/dist/agent-generator/detectors/base-detector.js +0 -12
  172. package/dist/agent-generator/detectors/base-detector.js.map +0 -1
  173. package/dist/agent-generator/detectors/dart-detector.d.ts +0 -6
  174. package/dist/agent-generator/detectors/dart-detector.d.ts.map +0 -1
  175. package/dist/agent-generator/detectors/dart-detector.js +0 -15
  176. package/dist/agent-generator/detectors/dart-detector.js.map +0 -1
  177. package/dist/agent-generator/detectors/framework-registry.d.ts +0 -6
  178. package/dist/agent-generator/detectors/framework-registry.d.ts.map +0 -1
  179. package/dist/agent-generator/detectors/framework-registry.js +0 -81
  180. package/dist/agent-generator/detectors/framework-registry.js.map +0 -1
  181. package/dist/agent-generator/detectors/go-detector.d.ts +0 -6
  182. package/dist/agent-generator/detectors/go-detector.d.ts.map +0 -1
  183. package/dist/agent-generator/detectors/go-detector.js +0 -25
  184. package/dist/agent-generator/detectors/go-detector.js.map +0 -1
  185. package/dist/agent-generator/detectors/java-detector.d.ts +0 -6
  186. package/dist/agent-generator/detectors/java-detector.d.ts.map +0 -1
  187. package/dist/agent-generator/detectors/java-detector.js +0 -44
  188. package/dist/agent-generator/detectors/java-detector.js.map +0 -1
  189. package/dist/agent-generator/detectors/node-detector.d.ts +0 -6
  190. package/dist/agent-generator/detectors/node-detector.d.ts.map +0 -1
  191. package/dist/agent-generator/detectors/node-detector.js +0 -28
  192. package/dist/agent-generator/detectors/node-detector.js.map +0 -1
  193. package/dist/agent-generator/detectors/php-detector.d.ts +0 -6
  194. package/dist/agent-generator/detectors/php-detector.d.ts.map +0 -1
  195. package/dist/agent-generator/detectors/php-detector.js +0 -28
  196. package/dist/agent-generator/detectors/php-detector.js.map +0 -1
  197. package/dist/agent-generator/detectors/python-detector.d.ts +0 -8
  198. package/dist/agent-generator/detectors/python-detector.d.ts.map +0 -1
  199. package/dist/agent-generator/detectors/python-detector.js +0 -116
  200. package/dist/agent-generator/detectors/python-detector.js.map +0 -1
  201. package/dist/agent-generator/detectors/ruby-detector.d.ts +0 -6
  202. package/dist/agent-generator/detectors/ruby-detector.d.ts.map +0 -1
  203. package/dist/agent-generator/detectors/ruby-detector.js +0 -22
  204. package/dist/agent-generator/detectors/ruby-detector.js.map +0 -1
  205. package/dist/agent-generator/detectors/rust-detector.d.ts +0 -6
  206. package/dist/agent-generator/detectors/rust-detector.d.ts.map +0 -1
  207. package/dist/agent-generator/detectors/rust-detector.js +0 -18
  208. package/dist/agent-generator/detectors/rust-detector.js.map +0 -1
  209. package/dist/agent-generator/detectors/structure-detector.d.ts +0 -5
  210. package/dist/agent-generator/detectors/structure-detector.d.ts.map +0 -1
  211. package/dist/agent-generator/detectors/structure-detector.js +0 -35
  212. package/dist/agent-generator/detectors/structure-detector.js.map +0 -1
  213. package/dist/agent-generator/detectors/toolchain-detector.d.ts +0 -6
  214. package/dist/agent-generator/detectors/toolchain-detector.d.ts.map +0 -1
  215. package/dist/agent-generator/detectors/toolchain-detector.js +0 -163
  216. package/dist/agent-generator/detectors/toolchain-detector.js.map +0 -1
  217. package/dist/agent-generator/domain-inferrer.d.ts +0 -52
  218. package/dist/agent-generator/domain-inferrer.d.ts.map +0 -1
  219. package/dist/agent-generator/domain-inferrer.js +0 -585
  220. package/dist/agent-generator/domain-inferrer.js.map +0 -1
  221. package/dist/agent-generator/engines/audit-engine.d.ts +0 -7
  222. package/dist/agent-generator/engines/audit-engine.d.ts.map +0 -1
  223. package/dist/agent-generator/engines/audit-engine.js +0 -84
  224. package/dist/agent-generator/engines/audit-engine.js.map +0 -1
  225. package/dist/agent-generator/engines/context-builder.d.ts +0 -11
  226. package/dist/agent-generator/engines/context-builder.d.ts.map +0 -1
  227. package/dist/agent-generator/engines/context-builder.js +0 -86
  228. package/dist/agent-generator/engines/context-builder.js.map +0 -1
  229. package/dist/agent-generator/engines/generation-engine.d.ts +0 -9
  230. package/dist/agent-generator/engines/generation-engine.d.ts.map +0 -1
  231. package/dist/agent-generator/engines/generation-engine.js +0 -177
  232. package/dist/agent-generator/engines/generation-engine.js.map +0 -1
  233. package/dist/agent-generator/engines/suggestion-engine.d.ts +0 -15
  234. package/dist/agent-generator/engines/suggestion-engine.d.ts.map +0 -1
  235. package/dist/agent-generator/engines/suggestion-engine.js +0 -176
  236. package/dist/agent-generator/engines/suggestion-engine.js.map +0 -1
  237. package/dist/agent-generator/enrichers/analysis-helpers.d.ts +0 -9
  238. package/dist/agent-generator/enrichers/analysis-helpers.d.ts.map +0 -1
  239. package/dist/agent-generator/enrichers/analysis-helpers.js +0 -51
  240. package/dist/agent-generator/enrichers/analysis-helpers.js.map +0 -1
  241. package/dist/agent-generator/enrichers/description-generator.d.ts +0 -5
  242. package/dist/agent-generator/enrichers/description-generator.d.ts.map +0 -1
  243. package/dist/agent-generator/enrichers/description-generator.js +0 -81
  244. package/dist/agent-generator/enrichers/description-generator.js.map +0 -1
  245. package/dist/agent-generator/enrichers/endpoint-extractor.d.ts +0 -8
  246. package/dist/agent-generator/enrichers/endpoint-extractor.d.ts.map +0 -1
  247. package/dist/agent-generator/enrichers/endpoint-extractor.js +0 -91
  248. package/dist/agent-generator/enrichers/endpoint-extractor.js.map +0 -1
  249. package/dist/agent-generator/enrichers/layer-classifier.d.ts +0 -13
  250. package/dist/agent-generator/enrichers/layer-classifier.d.ts.map +0 -1
  251. package/dist/agent-generator/enrichers/layer-classifier.js +0 -150
  252. package/dist/agent-generator/enrichers/layer-classifier.js.map +0 -1
  253. package/dist/agent-generator/enrichers/module-extractor.d.ts +0 -11
  254. package/dist/agent-generator/enrichers/module-extractor.d.ts.map +0 -1
  255. package/dist/agent-generator/enrichers/module-extractor.js +0 -174
  256. package/dist/agent-generator/enrichers/module-extractor.js.map +0 -1
  257. package/dist/agent-generator/framework-detector.d.ts +0 -18
  258. package/dist/agent-generator/framework-detector.d.ts.map +0 -1
  259. package/dist/agent-generator/framework-detector.js +0 -58
  260. package/dist/agent-generator/framework-detector.js.map +0 -1
  261. package/dist/agent-generator/index.d.ts +0 -22
  262. package/dist/agent-generator/index.d.ts.map +0 -1
  263. package/dist/agent-generator/index.js +0 -39
  264. package/dist/agent-generator/index.js.map +0 -1
  265. package/dist/agent-generator/stack-detector.d.ts +0 -14
  266. package/dist/agent-generator/stack-detector.d.ts.map +0 -1
  267. package/dist/agent-generator/stack-detector.js +0 -124
  268. package/dist/agent-generator/stack-detector.js.map +0 -1
  269. package/dist/agent-generator/templates/core/agents.d.ts +0 -17
  270. package/dist/agent-generator/templates/core/agents.d.ts.map +0 -1
  271. package/dist/agent-generator/templates/core/agents.js +0 -1256
  272. package/dist/agent-generator/templates/core/agents.js.map +0 -1
  273. package/dist/agent-generator/templates/core/architecture-rules.d.ts +0 -7
  274. package/dist/agent-generator/templates/core/architecture-rules.d.ts.map +0 -1
  275. package/dist/agent-generator/templates/core/architecture-rules.js +0 -274
  276. package/dist/agent-generator/templates/core/architecture-rules.js.map +0 -1
  277. package/dist/agent-generator/templates/core/general-rules.d.ts +0 -8
  278. package/dist/agent-generator/templates/core/general-rules.d.ts.map +0 -1
  279. package/dist/agent-generator/templates/core/general-rules.js +0 -301
  280. package/dist/agent-generator/templates/core/general-rules.js.map +0 -1
  281. package/dist/agent-generator/templates/core/hooks-generator.d.ts +0 -21
  282. package/dist/agent-generator/templates/core/hooks-generator.d.ts.map +0 -1
  283. package/dist/agent-generator/templates/core/hooks-generator.js +0 -233
  284. package/dist/agent-generator/templates/core/hooks-generator.js.map +0 -1
  285. package/dist/agent-generator/templates/core/index-md.d.ts +0 -7
  286. package/dist/agent-generator/templates/core/index-md.d.ts.map +0 -1
  287. package/dist/agent-generator/templates/core/index-md.js +0 -246
  288. package/dist/agent-generator/templates/core/index-md.js.map +0 -1
  289. package/dist/agent-generator/templates/core/orchestrator.d.ts +0 -8
  290. package/dist/agent-generator/templates/core/orchestrator.d.ts.map +0 -1
  291. package/dist/agent-generator/templates/core/orchestrator.js +0 -422
  292. package/dist/agent-generator/templates/core/orchestrator.js.map +0 -1
  293. package/dist/agent-generator/templates/core/preflight.d.ts +0 -8
  294. package/dist/agent-generator/templates/core/preflight.d.ts.map +0 -1
  295. package/dist/agent-generator/templates/core/preflight.js +0 -213
  296. package/dist/agent-generator/templates/core/preflight.js.map +0 -1
  297. package/dist/agent-generator/templates/core/quality-gates.d.ts +0 -11
  298. package/dist/agent-generator/templates/core/quality-gates.d.ts.map +0 -1
  299. package/dist/agent-generator/templates/core/quality-gates.js +0 -254
  300. package/dist/agent-generator/templates/core/quality-gates.js.map +0 -1
  301. package/dist/agent-generator/templates/core/security-rules.d.ts +0 -7
  302. package/dist/agent-generator/templates/core/security-rules.d.ts.map +0 -1
  303. package/dist/agent-generator/templates/core/security-rules.js +0 -528
  304. package/dist/agent-generator/templates/core/security-rules.js.map +0 -1
  305. package/dist/agent-generator/templates/core/skills-generator.d.ts +0 -19
  306. package/dist/agent-generator/templates/core/skills-generator.d.ts.map +0 -1
  307. package/dist/agent-generator/templates/core/skills-generator.js +0 -546
  308. package/dist/agent-generator/templates/core/skills-generator.js.map +0 -1
  309. package/dist/agent-generator/templates/core/workflow-fix-bug.d.ts +0 -7
  310. package/dist/agent-generator/templates/core/workflow-fix-bug.d.ts.map +0 -1
  311. package/dist/agent-generator/templates/core/workflow-fix-bug.js +0 -237
  312. package/dist/agent-generator/templates/core/workflow-fix-bug.js.map +0 -1
  313. package/dist/agent-generator/templates/core/workflow-new-feature.d.ts +0 -8
  314. package/dist/agent-generator/templates/core/workflow-new-feature.d.ts.map +0 -1
  315. package/dist/agent-generator/templates/core/workflow-new-feature.js +0 -321
  316. package/dist/agent-generator/templates/core/workflow-new-feature.js.map +0 -1
  317. package/dist/agent-generator/templates/core/workflow-review.d.ts +0 -7
  318. package/dist/agent-generator/templates/core/workflow-review.d.ts.map +0 -1
  319. package/dist/agent-generator/templates/core/workflow-review.js +0 -104
  320. package/dist/agent-generator/templates/core/workflow-review.js.map +0 -1
  321. package/dist/agent-generator/templates/domain/index.d.ts +0 -22
  322. package/dist/agent-generator/templates/domain/index.d.ts.map +0 -1
  323. package/dist/agent-generator/templates/domain/index.js +0 -1176
  324. package/dist/agent-generator/templates/domain/index.js.map +0 -1
  325. package/dist/agent-generator/templates/helpers/base-helpers.d.ts +0 -11
  326. package/dist/agent-generator/templates/helpers/base-helpers.d.ts.map +0 -1
  327. package/dist/agent-generator/templates/helpers/base-helpers.js +0 -20
  328. package/dist/agent-generator/templates/helpers/base-helpers.js.map +0 -1
  329. package/dist/agent-generator/templates/helpers/cross-ref-helpers.d.ts +0 -3
  330. package/dist/agent-generator/templates/helpers/cross-ref-helpers.d.ts.map +0 -1
  331. package/dist/agent-generator/templates/helpers/cross-ref-helpers.js +0 -77
  332. package/dist/agent-generator/templates/helpers/cross-ref-helpers.js.map +0 -1
  333. package/dist/agent-generator/templates/helpers/security-helpers.d.ts +0 -3
  334. package/dist/agent-generator/templates/helpers/security-helpers.d.ts.map +0 -1
  335. package/dist/agent-generator/templates/helpers/security-helpers.js +0 -182
  336. package/dist/agent-generator/templates/helpers/security-helpers.js.map +0 -1
  337. package/dist/agent-generator/templates/helpers/stack-helpers.d.ts +0 -5
  338. package/dist/agent-generator/templates/helpers/stack-helpers.d.ts.map +0 -1
  339. package/dist/agent-generator/templates/helpers/stack-helpers.js +0 -69
  340. package/dist/agent-generator/templates/helpers/stack-helpers.js.map +0 -1
  341. package/dist/agent-generator/templates/helpers/structure-helpers.d.ts +0 -3
  342. package/dist/agent-generator/templates/helpers/structure-helpers.d.ts.map +0 -1
  343. package/dist/agent-generator/templates/helpers/structure-helpers.js +0 -275
  344. package/dist/agent-generator/templates/helpers/structure-helpers.js.map +0 -1
  345. package/dist/agent-generator/templates/helpers/summary-helpers.d.ts +0 -7
  346. package/dist/agent-generator/templates/helpers/summary-helpers.d.ts.map +0 -1
  347. package/dist/agent-generator/templates/helpers/summary-helpers.js +0 -56
  348. package/dist/agent-generator/templates/helpers/summary-helpers.js.map +0 -1
  349. package/dist/agent-generator/templates/stack/index.d.ts +0 -8
  350. package/dist/agent-generator/templates/stack/index.d.ts.map +0 -1
  351. package/dist/agent-generator/templates/stack/index.js +0 -695
  352. package/dist/agent-generator/templates/stack/index.js.map +0 -1
  353. package/dist/agent-generator/templates/template-helpers.d.ts +0 -12
  354. package/dist/agent-generator/templates/template-helpers.d.ts.map +0 -1
  355. package/dist/agent-generator/templates/template-helpers.js +0 -12
  356. package/dist/agent-generator/templates/template-helpers.js.map +0 -1
  357. package/dist/agent-generator/types.d.ts +0 -196
  358. package/dist/agent-generator/types.d.ts.map +0 -1
  359. package/dist/agent-generator/types.js +0 -27
  360. package/dist/agent-generator/types.js.map +0 -1
  361. package/dist/analyzer.d.ts +0 -38
  362. package/dist/analyzer.d.ts.map +0 -1
  363. package/dist/analyzer.js +0 -383
  364. package/dist/analyzer.js.map +0 -1
  365. package/dist/analyzers/forecast.d.ts +0 -85
  366. package/dist/analyzers/forecast.d.ts.map +0 -1
  367. package/dist/analyzers/forecast.js +0 -337
  368. package/dist/analyzers/forecast.js.map +0 -1
  369. package/dist/analyzers/git-cache.d.ts +0 -7
  370. package/dist/analyzers/git-cache.d.ts.map +0 -1
  371. package/dist/analyzers/git-cache.js +0 -41
  372. package/dist/analyzers/git-cache.js.map +0 -1
  373. package/dist/analyzers/git-history.d.ts +0 -113
  374. package/dist/analyzers/git-history.d.ts.map +0 -1
  375. package/dist/analyzers/git-history.js +0 -339
  376. package/dist/analyzers/git-history.js.map +0 -1
  377. package/dist/analyzers/index.d.ts +0 -10
  378. package/dist/analyzers/index.d.ts.map +0 -1
  379. package/dist/analyzers/index.js +0 -7
  380. package/dist/analyzers/index.js.map +0 -1
  381. package/dist/analyzers/temporal-scorer.d.ts +0 -72
  382. package/dist/analyzers/temporal-scorer.d.ts.map +0 -1
  383. package/dist/analyzers/temporal-scorer.js +0 -140
  384. package/dist/analyzers/temporal-scorer.js.map +0 -1
  385. package/dist/anti-patterns.d.ts +0 -24
  386. package/dist/anti-patterns.d.ts.map +0 -1
  387. package/dist/anti-patterns.js +0 -230
  388. package/dist/anti-patterns.js.map +0 -1
  389. package/dist/cli.d.ts +0 -14
  390. package/dist/cli.d.ts.map +0 -1
  391. package/dist/cli.js.map +0 -1
  392. package/dist/config.d.ts +0 -12
  393. package/dist/config.d.ts.map +0 -1
  394. package/dist/config.js +0 -110
  395. package/dist/config.js.map +0 -1
  396. package/dist/core/agent-generator/context-enricher.d.ts +0 -18
  397. package/dist/core/agent-generator/context-enricher.d.ts.map +0 -1
  398. package/dist/core/agent-generator/context-enricher.js +0 -53
  399. package/dist/core/agent-generator/context-enricher.js.map +0 -1
  400. package/dist/core/agent-generator/detectors/base-detector.d.ts +0 -9
  401. package/dist/core/agent-generator/detectors/base-detector.d.ts.map +0 -1
  402. package/dist/core/agent-generator/detectors/base-detector.js +0 -12
  403. package/dist/core/agent-generator/detectors/base-detector.js.map +0 -1
  404. package/dist/core/agent-generator/detectors/dart-detector.d.ts +0 -6
  405. package/dist/core/agent-generator/detectors/dart-detector.d.ts.map +0 -1
  406. package/dist/core/agent-generator/detectors/dart-detector.js +0 -15
  407. package/dist/core/agent-generator/detectors/dart-detector.js.map +0 -1
  408. package/dist/core/agent-generator/detectors/framework-registry.d.ts +0 -6
  409. package/dist/core/agent-generator/detectors/framework-registry.d.ts.map +0 -1
  410. package/dist/core/agent-generator/detectors/framework-registry.js +0 -81
  411. package/dist/core/agent-generator/detectors/framework-registry.js.map +0 -1
  412. package/dist/core/agent-generator/detectors/go-detector.d.ts +0 -6
  413. package/dist/core/agent-generator/detectors/go-detector.d.ts.map +0 -1
  414. package/dist/core/agent-generator/detectors/go-detector.js +0 -25
  415. package/dist/core/agent-generator/detectors/go-detector.js.map +0 -1
  416. package/dist/core/agent-generator/detectors/java-detector.d.ts +0 -6
  417. package/dist/core/agent-generator/detectors/java-detector.d.ts.map +0 -1
  418. package/dist/core/agent-generator/detectors/java-detector.js +0 -44
  419. package/dist/core/agent-generator/detectors/java-detector.js.map +0 -1
  420. package/dist/core/agent-generator/detectors/node-detector.d.ts +0 -6
  421. package/dist/core/agent-generator/detectors/node-detector.d.ts.map +0 -1
  422. package/dist/core/agent-generator/detectors/node-detector.js +0 -28
  423. package/dist/core/agent-generator/detectors/node-detector.js.map +0 -1
  424. package/dist/core/agent-generator/detectors/php-detector.d.ts +0 -6
  425. package/dist/core/agent-generator/detectors/php-detector.d.ts.map +0 -1
  426. package/dist/core/agent-generator/detectors/php-detector.js +0 -28
  427. package/dist/core/agent-generator/detectors/php-detector.js.map +0 -1
  428. package/dist/core/agent-generator/detectors/python-detector.d.ts +0 -8
  429. package/dist/core/agent-generator/detectors/python-detector.d.ts.map +0 -1
  430. package/dist/core/agent-generator/detectors/python-detector.js +0 -116
  431. package/dist/core/agent-generator/detectors/python-detector.js.map +0 -1
  432. package/dist/core/agent-generator/detectors/ruby-detector.d.ts +0 -6
  433. package/dist/core/agent-generator/detectors/ruby-detector.d.ts.map +0 -1
  434. package/dist/core/agent-generator/detectors/ruby-detector.js +0 -22
  435. package/dist/core/agent-generator/detectors/ruby-detector.js.map +0 -1
  436. package/dist/core/agent-generator/detectors/rust-detector.d.ts +0 -6
  437. package/dist/core/agent-generator/detectors/rust-detector.d.ts.map +0 -1
  438. package/dist/core/agent-generator/detectors/rust-detector.js +0 -18
  439. package/dist/core/agent-generator/detectors/rust-detector.js.map +0 -1
  440. package/dist/core/agent-generator/detectors/structure-detector.d.ts +0 -5
  441. package/dist/core/agent-generator/detectors/structure-detector.d.ts.map +0 -1
  442. package/dist/core/agent-generator/detectors/structure-detector.js +0 -35
  443. package/dist/core/agent-generator/detectors/structure-detector.js.map +0 -1
  444. package/dist/core/agent-generator/detectors/toolchain-detector.d.ts +0 -6
  445. package/dist/core/agent-generator/detectors/toolchain-detector.d.ts.map +0 -1
  446. package/dist/core/agent-generator/detectors/toolchain-detector.js +0 -163
  447. package/dist/core/agent-generator/detectors/toolchain-detector.js.map +0 -1
  448. package/dist/core/agent-generator/domain-inferrer.d.ts +0 -52
  449. package/dist/core/agent-generator/domain-inferrer.d.ts.map +0 -1
  450. package/dist/core/agent-generator/domain-inferrer.js +0 -585
  451. package/dist/core/agent-generator/domain-inferrer.js.map +0 -1
  452. package/dist/core/agent-generator/engines/audit-engine.d.ts +0 -9
  453. package/dist/core/agent-generator/engines/audit-engine.d.ts.map +0 -1
  454. package/dist/core/agent-generator/engines/audit-engine.js +0 -84
  455. package/dist/core/agent-generator/engines/audit-engine.js.map +0 -1
  456. package/dist/core/agent-generator/engines/context-builder.d.ts +0 -13
  457. package/dist/core/agent-generator/engines/context-builder.d.ts.map +0 -1
  458. package/dist/core/agent-generator/engines/context-builder.js +0 -86
  459. package/dist/core/agent-generator/engines/context-builder.js.map +0 -1
  460. package/dist/core/agent-generator/engines/generation-engine.d.ts +0 -8
  461. package/dist/core/agent-generator/engines/generation-engine.d.ts.map +0 -1
  462. package/dist/core/agent-generator/engines/generation-engine.js +0 -162
  463. package/dist/core/agent-generator/engines/generation-engine.js.map +0 -1
  464. package/dist/core/agent-generator/engines/generation-engine_deps.d.ts +0 -22
  465. package/dist/core/agent-generator/engines/generation-engine_deps.d.ts.map +0 -1
  466. package/dist/core/agent-generator/engines/generation-engine_deps.js +0 -17
  467. package/dist/core/agent-generator/engines/generation-engine_deps.js.map +0 -1
  468. package/dist/core/agent-generator/engines/suggestion-engine.d.ts +0 -14
  469. package/dist/core/agent-generator/engines/suggestion-engine.d.ts.map +0 -1
  470. package/dist/core/agent-generator/engines/suggestion-engine.js +0 -173
  471. package/dist/core/agent-generator/engines/suggestion-engine.js.map +0 -1
  472. package/dist/core/agent-generator/engines/suggestion-engine_deps.d.ts +0 -9
  473. package/dist/core/agent-generator/engines/suggestion-engine_deps.d.ts.map +0 -1
  474. package/dist/core/agent-generator/engines/suggestion-engine_deps.js +0 -5
  475. package/dist/core/agent-generator/engines/suggestion-engine_deps.js.map +0 -1
  476. package/dist/core/agent-generator/enrichers/analysis-helpers.d.ts +0 -10
  477. package/dist/core/agent-generator/enrichers/analysis-helpers.d.ts.map +0 -1
  478. package/dist/core/agent-generator/enrichers/analysis-helpers.js +0 -51
  479. package/dist/core/agent-generator/enrichers/analysis-helpers.js.map +0 -1
  480. package/dist/core/agent-generator/enrichers/description-generator.d.ts +0 -5
  481. package/dist/core/agent-generator/enrichers/description-generator.d.ts.map +0 -1
  482. package/dist/core/agent-generator/enrichers/description-generator.js +0 -81
  483. package/dist/core/agent-generator/enrichers/description-generator.js.map +0 -1
  484. package/dist/core/agent-generator/enrichers/endpoint-extractor.d.ts +0 -8
  485. package/dist/core/agent-generator/enrichers/endpoint-extractor.d.ts.map +0 -1
  486. package/dist/core/agent-generator/enrichers/endpoint-extractor.js +0 -91
  487. package/dist/core/agent-generator/enrichers/endpoint-extractor.js.map +0 -1
  488. package/dist/core/agent-generator/enrichers/layer-classifier.d.ts +0 -13
  489. package/dist/core/agent-generator/enrichers/layer-classifier.d.ts.map +0 -1
  490. package/dist/core/agent-generator/enrichers/layer-classifier.js +0 -150
  491. package/dist/core/agent-generator/enrichers/layer-classifier.js.map +0 -1
  492. package/dist/core/agent-generator/enrichers/module-extractor.d.ts +0 -11
  493. package/dist/core/agent-generator/enrichers/module-extractor.d.ts.map +0 -1
  494. package/dist/core/agent-generator/enrichers/module-extractor.js +0 -174
  495. package/dist/core/agent-generator/enrichers/module-extractor.js.map +0 -1
  496. package/dist/core/agent-generator/framework-detector.d.ts +0 -18
  497. package/dist/core/agent-generator/framework-detector.d.ts.map +0 -1
  498. package/dist/core/agent-generator/framework-detector.js +0 -58
  499. package/dist/core/agent-generator/framework-detector.js.map +0 -1
  500. package/dist/core/agent-generator/index.d.ts +0 -26
  501. package/dist/core/agent-generator/index.d.ts.map +0 -1
  502. package/dist/core/agent-generator/index.js +0 -39
  503. package/dist/core/agent-generator/index.js.map +0 -1
  504. package/dist/core/agent-generator/stack-detector.d.ts +0 -14
  505. package/dist/core/agent-generator/stack-detector.d.ts.map +0 -1
  506. package/dist/core/agent-generator/stack-detector.js +0 -124
  507. package/dist/core/agent-generator/stack-detector.js.map +0 -1
  508. package/dist/core/agent-generator/templates/core/agents.d.ts +0 -17
  509. package/dist/core/agent-generator/templates/core/agents.d.ts.map +0 -1
  510. package/dist/core/agent-generator/templates/core/agents.js +0 -1256
  511. package/dist/core/agent-generator/templates/core/agents.js.map +0 -1
  512. package/dist/core/agent-generator/templates/core/architecture-rules.d.ts +0 -7
  513. package/dist/core/agent-generator/templates/core/architecture-rules.d.ts.map +0 -1
  514. package/dist/core/agent-generator/templates/core/architecture-rules.js +0 -274
  515. package/dist/core/agent-generator/templates/core/architecture-rules.js.map +0 -1
  516. package/dist/core/agent-generator/templates/core/general-rules.d.ts +0 -8
  517. package/dist/core/agent-generator/templates/core/general-rules.d.ts.map +0 -1
  518. package/dist/core/agent-generator/templates/core/general-rules.js +0 -301
  519. package/dist/core/agent-generator/templates/core/general-rules.js.map +0 -1
  520. package/dist/core/agent-generator/templates/core/hooks-generator.d.ts +0 -21
  521. package/dist/core/agent-generator/templates/core/hooks-generator.d.ts.map +0 -1
  522. package/dist/core/agent-generator/templates/core/hooks-generator.js +0 -233
  523. package/dist/core/agent-generator/templates/core/hooks-generator.js.map +0 -1
  524. package/dist/core/agent-generator/templates/core/index-md.d.ts +0 -7
  525. package/dist/core/agent-generator/templates/core/index-md.d.ts.map +0 -1
  526. package/dist/core/agent-generator/templates/core/index-md.js +0 -246
  527. package/dist/core/agent-generator/templates/core/index-md.js.map +0 -1
  528. package/dist/core/agent-generator/templates/core/orchestrator.d.ts +0 -8
  529. package/dist/core/agent-generator/templates/core/orchestrator.d.ts.map +0 -1
  530. package/dist/core/agent-generator/templates/core/orchestrator.js +0 -422
  531. package/dist/core/agent-generator/templates/core/orchestrator.js.map +0 -1
  532. package/dist/core/agent-generator/templates/core/preflight.d.ts +0 -8
  533. package/dist/core/agent-generator/templates/core/preflight.d.ts.map +0 -1
  534. package/dist/core/agent-generator/templates/core/preflight.js +0 -213
  535. package/dist/core/agent-generator/templates/core/preflight.js.map +0 -1
  536. package/dist/core/agent-generator/templates/core/quality-gates.d.ts +0 -11
  537. package/dist/core/agent-generator/templates/core/quality-gates.d.ts.map +0 -1
  538. package/dist/core/agent-generator/templates/core/quality-gates.js +0 -254
  539. package/dist/core/agent-generator/templates/core/quality-gates.js.map +0 -1
  540. package/dist/core/agent-generator/templates/core/security-rules.d.ts +0 -7
  541. package/dist/core/agent-generator/templates/core/security-rules.d.ts.map +0 -1
  542. package/dist/core/agent-generator/templates/core/security-rules.js +0 -528
  543. package/dist/core/agent-generator/templates/core/security-rules.js.map +0 -1
  544. package/dist/core/agent-generator/templates/core/skills-generator.d.ts +0 -19
  545. package/dist/core/agent-generator/templates/core/skills-generator.d.ts.map +0 -1
  546. package/dist/core/agent-generator/templates/core/skills-generator.js +0 -546
  547. package/dist/core/agent-generator/templates/core/skills-generator.js.map +0 -1
  548. package/dist/core/agent-generator/templates/core/workflow-fix-bug.d.ts +0 -7
  549. package/dist/core/agent-generator/templates/core/workflow-fix-bug.d.ts.map +0 -1
  550. package/dist/core/agent-generator/templates/core/workflow-fix-bug.js +0 -237
  551. package/dist/core/agent-generator/templates/core/workflow-fix-bug.js.map +0 -1
  552. package/dist/core/agent-generator/templates/core/workflow-new-feature.d.ts +0 -8
  553. package/dist/core/agent-generator/templates/core/workflow-new-feature.d.ts.map +0 -1
  554. package/dist/core/agent-generator/templates/core/workflow-new-feature.js +0 -321
  555. package/dist/core/agent-generator/templates/core/workflow-new-feature.js.map +0 -1
  556. package/dist/core/agent-generator/templates/core/workflow-review.d.ts +0 -7
  557. package/dist/core/agent-generator/templates/core/workflow-review.d.ts.map +0 -1
  558. package/dist/core/agent-generator/templates/core/workflow-review.js +0 -104
  559. package/dist/core/agent-generator/templates/core/workflow-review.js.map +0 -1
  560. package/dist/core/agent-generator/templates/domain/index.d.ts +0 -22
  561. package/dist/core/agent-generator/templates/domain/index.d.ts.map +0 -1
  562. package/dist/core/agent-generator/templates/domain/index.js +0 -1176
  563. package/dist/core/agent-generator/templates/domain/index.js.map +0 -1
  564. package/dist/core/agent-generator/templates/helpers/base-helpers.d.ts +0 -11
  565. package/dist/core/agent-generator/templates/helpers/base-helpers.d.ts.map +0 -1
  566. package/dist/core/agent-generator/templates/helpers/base-helpers.js +0 -20
  567. package/dist/core/agent-generator/templates/helpers/base-helpers.js.map +0 -1
  568. package/dist/core/agent-generator/templates/helpers/cross-ref-helpers.d.ts +0 -3
  569. package/dist/core/agent-generator/templates/helpers/cross-ref-helpers.d.ts.map +0 -1
  570. package/dist/core/agent-generator/templates/helpers/cross-ref-helpers.js +0 -77
  571. package/dist/core/agent-generator/templates/helpers/cross-ref-helpers.js.map +0 -1
  572. package/dist/core/agent-generator/templates/helpers/security-helpers.d.ts +0 -3
  573. package/dist/core/agent-generator/templates/helpers/security-helpers.d.ts.map +0 -1
  574. package/dist/core/agent-generator/templates/helpers/security-helpers.js +0 -182
  575. package/dist/core/agent-generator/templates/helpers/security-helpers.js.map +0 -1
  576. package/dist/core/agent-generator/templates/helpers/stack-helpers.d.ts +0 -5
  577. package/dist/core/agent-generator/templates/helpers/stack-helpers.d.ts.map +0 -1
  578. package/dist/core/agent-generator/templates/helpers/stack-helpers.js +0 -69
  579. package/dist/core/agent-generator/templates/helpers/stack-helpers.js.map +0 -1
  580. package/dist/core/agent-generator/templates/helpers/structure-helpers.d.ts +0 -3
  581. package/dist/core/agent-generator/templates/helpers/structure-helpers.d.ts.map +0 -1
  582. package/dist/core/agent-generator/templates/helpers/structure-helpers.js +0 -275
  583. package/dist/core/agent-generator/templates/helpers/structure-helpers.js.map +0 -1
  584. package/dist/core/agent-generator/templates/helpers/summary-helpers.d.ts +0 -7
  585. package/dist/core/agent-generator/templates/helpers/summary-helpers.d.ts.map +0 -1
  586. package/dist/core/agent-generator/templates/helpers/summary-helpers.js +0 -56
  587. package/dist/core/agent-generator/templates/helpers/summary-helpers.js.map +0 -1
  588. package/dist/core/agent-generator/templates/stack/index.d.ts +0 -8
  589. package/dist/core/agent-generator/templates/stack/index.d.ts.map +0 -1
  590. package/dist/core/agent-generator/templates/stack/index.js +0 -695
  591. package/dist/core/agent-generator/templates/stack/index.js.map +0 -1
  592. package/dist/core/agent-generator/templates/template-helpers.d.ts +0 -12
  593. package/dist/core/agent-generator/templates/template-helpers.d.ts.map +0 -1
  594. package/dist/core/agent-generator/templates/template-helpers.js +0 -12
  595. package/dist/core/agent-generator/templates/template-helpers.js.map +0 -1
  596. package/dist/core/agent-generator/types/agent.d.ts +0 -40
  597. package/dist/core/agent-generator/types/agent.d.ts.map +0 -1
  598. package/dist/core/agent-generator/types/agent.js +0 -27
  599. package/dist/core/agent-generator/types/agent.js.map +0 -1
  600. package/dist/core/agent-generator/types/domain.d.ts +0 -59
  601. package/dist/core/agent-generator/types/domain.d.ts.map +0 -1
  602. package/dist/core/agent-generator/types/domain.js +0 -2
  603. package/dist/core/agent-generator/types/domain.js.map +0 -1
  604. package/dist/core/agent-generator/types/stack.d.ts +0 -37
  605. package/dist/core/agent-generator/types/stack.d.ts.map +0 -1
  606. package/dist/core/agent-generator/types/stack.js +0 -2
  607. package/dist/core/agent-generator/types/stack.js.map +0 -1
  608. package/dist/core/agent-generator/types/template.d.ts +0 -30
  609. package/dist/core/agent-generator/types/template.d.ts.map +0 -1
  610. package/dist/core/agent-generator/types/template.js +0 -2
  611. package/dist/core/agent-generator/types/template.js.map +0 -1
  612. package/dist/core/agent-generator/types.d.ts +0 -197
  613. package/dist/core/agent-generator/types.d.ts.map +0 -1
  614. package/dist/core/agent-generator/types.js +0 -27
  615. package/dist/core/agent-generator/types.js.map +0 -1
  616. package/dist/core/analyzer.d.ts +0 -39
  617. package/dist/core/analyzer.d.ts.map +0 -1
  618. package/dist/core/analyzer.js +0 -383
  619. package/dist/core/analyzer.js.map +0 -1
  620. package/dist/core/analyzers/forecast.d.ts +0 -85
  621. package/dist/core/analyzers/forecast.d.ts.map +0 -1
  622. package/dist/core/analyzers/forecast.js +0 -337
  623. package/dist/core/analyzers/forecast.js.map +0 -1
  624. package/dist/core/analyzers/index.d.ts +0 -10
  625. package/dist/core/analyzers/index.d.ts.map +0 -1
  626. package/dist/core/analyzers/index.js +0 -7
  627. package/dist/core/analyzers/index.js.map +0 -1
  628. package/dist/core/analyzers/temporal-scorer.d.ts +0 -72
  629. package/dist/core/analyzers/temporal-scorer.d.ts.map +0 -1
  630. package/dist/core/analyzers/temporal-scorer.js +0 -140
  631. package/dist/core/analyzers/temporal-scorer.js.map +0 -1
  632. package/dist/core/anti-patterns.d.ts +0 -25
  633. package/dist/core/anti-patterns.d.ts.map +0 -1
  634. package/dist/core/anti-patterns.js +0 -239
  635. package/dist/core/anti-patterns.js.map +0 -1
  636. package/dist/core/architect.d.ts.map +0 -1
  637. package/dist/core/architect.js.map +0 -1
  638. package/dist/core/architect_deps.d.ts +0 -14
  639. package/dist/core/architect_deps.d.ts.map +0 -1
  640. package/dist/core/architect_deps.js +0 -12
  641. package/dist/core/architect_deps.js.map +0 -1
  642. package/dist/core/config.d.ts +0 -12
  643. package/dist/core/config.d.ts.map +0 -1
  644. package/dist/core/config.js +0 -110
  645. package/dist/core/config.js.map +0 -1
  646. package/dist/core/diagram.d.ts +0 -10
  647. package/dist/core/diagram.d.ts.map +0 -1
  648. package/dist/core/diagram.js +0 -101
  649. package/dist/core/diagram.js.map +0 -1
  650. package/dist/core/project-summarizer.d.ts +0 -17
  651. package/dist/core/project-summarizer.d.ts.map +0 -1
  652. package/dist/core/project-summarizer.js +0 -39
  653. package/dist/core/project-summarizer.js.map +0 -1
  654. package/dist/core/refactor-engine.d.ts +0 -19
  655. package/dist/core/refactor-engine.d.ts.map +0 -1
  656. package/dist/core/refactor-engine.js +0 -86
  657. package/dist/core/refactor-engine.js.map +0 -1
  658. package/dist/core/rules/barrel-optimizer.d.ts +0 -14
  659. package/dist/core/rules/barrel-optimizer.d.ts.map +0 -1
  660. package/dist/core/rules/barrel-optimizer.js +0 -78
  661. package/dist/core/rules/barrel-optimizer.js.map +0 -1
  662. package/dist/core/rules/dead-code-detector.d.ts +0 -22
  663. package/dist/core/rules/dead-code-detector.d.ts.map +0 -1
  664. package/dist/core/rules/dead-code-detector.js +0 -118
  665. package/dist/core/rules/dead-code-detector.js.map +0 -1
  666. package/dist/core/rules/hub-splitter.d.ts +0 -14
  667. package/dist/core/rules/hub-splitter.d.ts.map +0 -1
  668. package/dist/core/rules/hub-splitter.js +0 -119
  669. package/dist/core/rules/hub-splitter.js.map +0 -1
  670. package/dist/core/rules/import-organizer.d.ts +0 -14
  671. package/dist/core/rules/import-organizer.d.ts.map +0 -1
  672. package/dist/core/rules/import-organizer.js +0 -86
  673. package/dist/core/rules/import-organizer.js.map +0 -1
  674. package/dist/core/rules/module-grouper.d.ts +0 -14
  675. package/dist/core/rules/module-grouper.d.ts.map +0 -1
  676. package/dist/core/rules/module-grouper.js +0 -118
  677. package/dist/core/rules/module-grouper.js.map +0 -1
  678. package/dist/core/scorer.d.ts +0 -27
  679. package/dist/core/scorer.d.ts.map +0 -1
  680. package/dist/core/scorer.js +0 -229
  681. package/dist/core/scorer.js.map +0 -1
  682. package/dist/core/summarizer/keyword-extractor.d.ts +0 -7
  683. package/dist/core/summarizer/keyword-extractor.d.ts.map +0 -1
  684. package/dist/core/summarizer/keyword-extractor.js +0 -37
  685. package/dist/core/summarizer/keyword-extractor.js.map +0 -1
  686. package/dist/core/summarizer/module-inferrer.d.ts +0 -12
  687. package/dist/core/summarizer/module-inferrer.d.ts.map +0 -1
  688. package/dist/core/summarizer/module-inferrer.js +0 -171
  689. package/dist/core/summarizer/module-inferrer.js.map +0 -1
  690. package/dist/core/summarizer/package-reader.d.ts +0 -4
  691. package/dist/core/summarizer/package-reader.d.ts.map +0 -1
  692. package/dist/core/summarizer/package-reader.js +0 -30
  693. package/dist/core/summarizer/package-reader.js.map +0 -1
  694. package/dist/core/summarizer/purpose-inferrer.d.ts +0 -9
  695. package/dist/core/summarizer/purpose-inferrer.d.ts.map +0 -1
  696. package/dist/core/summarizer/purpose-inferrer.js +0 -178
  697. package/dist/core/summarizer/purpose-inferrer.js.map +0 -1
  698. package/dist/core/summarizer/readme-reader.d.ts +0 -4
  699. package/dist/core/summarizer/readme-reader.d.ts.map +0 -1
  700. package/dist/core/summarizer/readme-reader.js +0 -21
  701. package/dist/core/summarizer/readme-reader.js.map +0 -1
  702. package/dist/core/types/core.d.ts +0 -87
  703. package/dist/core/types/core.d.ts.map +0 -1
  704. package/dist/core/types/core.js +0 -2
  705. package/dist/core/types/core.js.map +0 -1
  706. package/dist/core/types/infrastructure.d.ts +0 -39
  707. package/dist/core/types/infrastructure.d.ts.map +0 -1
  708. package/dist/core/types/infrastructure.js +0 -2
  709. package/dist/core/types/infrastructure.js.map +0 -1
  710. package/dist/core/types/rules.d.ts +0 -54
  711. package/dist/core/types/rules.d.ts.map +0 -1
  712. package/dist/core/types/rules.js +0 -2
  713. package/dist/core/types/rules.js.map +0 -1
  714. package/dist/core/types/summarizer.d.ts +0 -13
  715. package/dist/core/types/summarizer.d.ts.map +0 -1
  716. package/dist/core/types/summarizer.js +0 -2
  717. package/dist/core/types/summarizer.js.map +0 -1
  718. package/dist/core/types.d.ts +0 -187
  719. package/dist/core/types.d.ts.map +0 -1
  720. package/dist/core/types.js +0 -2
  721. package/dist/core/types.js.map +0 -1
  722. package/dist/diagram.d.ts +0 -10
  723. package/dist/diagram.d.ts.map +0 -1
  724. package/dist/diagram.js +0 -101
  725. package/dist/diagram.js.map +0 -1
  726. package/dist/html-reporter/scripts.d.ts.map +0 -1
  727. package/dist/html-reporter/scripts.js +0 -316
  728. package/dist/html-reporter/scripts.js.map +0 -1
  729. package/dist/html-reporter/sections/agents.d.ts +0 -3
  730. package/dist/html-reporter/sections/agents.d.ts.map +0 -1
  731. package/dist/html-reporter/sections/agents.js.map +0 -1
  732. package/dist/html-reporter/sections/anti-patterns.d.ts.map +0 -1
  733. package/dist/html-reporter/sections/anti-patterns.js +0 -64
  734. package/dist/html-reporter/sections/anti-patterns.js.map +0 -1
  735. package/dist/html-reporter/sections/header.d.ts.map +0 -1
  736. package/dist/html-reporter/sections/header.js +0 -30
  737. package/dist/html-reporter/sections/header.js.map +0 -1
  738. package/dist/html-reporter/sections/layers.d.ts.map +0 -1
  739. package/dist/html-reporter/sections/layers.js +0 -143
  740. package/dist/html-reporter/sections/layers.js.map +0 -1
  741. package/dist/html-reporter/sections/overview.d.ts +0 -3
  742. package/dist/html-reporter/sections/overview.d.ts.map +0 -1
  743. package/dist/html-reporter/sections/overview.js +0 -58
  744. package/dist/html-reporter/sections/overview.js.map +0 -1
  745. package/dist/html-reporter/sections/refactoring-plan.d.ts.map +0 -1
  746. package/dist/html-reporter/sections/refactoring-plan.js +0 -120
  747. package/dist/html-reporter/sections/refactoring-plan.js.map +0 -1
  748. package/dist/html-reporter/sections/score.d.ts.map +0 -1
  749. package/dist/html-reporter/sections/score.js +0 -69
  750. package/dist/html-reporter/sections/score.js.map +0 -1
  751. package/dist/html-reporter/sections/suggestions.d.ts +0 -8
  752. package/dist/html-reporter/sections/suggestions.d.ts.map +0 -1
  753. package/dist/html-reporter/sections/suggestions.js +0 -34
  754. package/dist/html-reporter/sections/suggestions.js.map +0 -1
  755. package/dist/html-reporter/styles.d.ts +0 -2
  756. package/dist/html-reporter/styles.d.ts.map +0 -1
  757. package/dist/html-reporter/styles.js +0 -504
  758. package/dist/html-reporter/styles.js.map +0 -1
  759. package/dist/html-reporter/utils.d.ts +0 -27
  760. package/dist/html-reporter/utils.d.ts.map +0 -1
  761. package/dist/html-reporter/utils.js +0 -82
  762. package/dist/html-reporter/utils.js.map +0 -1
  763. package/dist/html-reporter.d.ts.map +0 -1
  764. package/dist/html-reporter.js.map +0 -1
  765. package/dist/index.d.ts +0 -17
  766. package/dist/index.d.ts.map +0 -1
  767. package/dist/index.js +0 -14
  768. package/dist/index.js.map +0 -1
  769. package/dist/infrastructure/git-cache.d.ts +0 -7
  770. package/dist/infrastructure/git-cache.d.ts.map +0 -1
  771. package/dist/infrastructure/git-cache.js +0 -41
  772. package/dist/infrastructure/git-cache.js.map +0 -1
  773. package/dist/infrastructure/git-history.d.ts +0 -113
  774. package/dist/infrastructure/git-history.d.ts.map +0 -1
  775. package/dist/infrastructure/git-history.js +0 -339
  776. package/dist/infrastructure/git-history.js.map +0 -1
  777. package/dist/infrastructure/logger.d.ts +0 -21
  778. package/dist/infrastructure/logger.d.ts.map +0 -1
  779. package/dist/infrastructure/logger.js +0 -59
  780. package/dist/infrastructure/logger.js.map +0 -1
  781. package/dist/infrastructure/scanner.d.ts +0 -32
  782. package/dist/infrastructure/scanner.d.ts.map +0 -1
  783. package/dist/infrastructure/scanner.js +0 -330
  784. package/dist/infrastructure/scanner.js.map +0 -1
  785. package/dist/logger.d.ts +0 -21
  786. package/dist/logger.d.ts.map +0 -1
  787. package/dist/logger.js +0 -59
  788. package/dist/logger.js.map +0 -1
  789. package/dist/project-summarizer.d.ts +0 -16
  790. package/dist/project-summarizer.d.ts.map +0 -1
  791. package/dist/project-summarizer.js +0 -39
  792. package/dist/project-summarizer.js.map +0 -1
  793. package/dist/refactor-engine.d.ts +0 -18
  794. package/dist/refactor-engine.d.ts.map +0 -1
  795. package/dist/refactor-engine.js +0 -86
  796. package/dist/refactor-engine.js.map +0 -1
  797. package/dist/refactor-reporter.d.ts.map +0 -1
  798. package/dist/refactor-reporter.js.map +0 -1
  799. package/dist/reporter.d.ts.map +0 -1
  800. package/dist/reporter.js +0 -135
  801. package/dist/reporter.js.map +0 -1
  802. package/dist/rules/barrel-optimizer.d.ts +0 -13
  803. package/dist/rules/barrel-optimizer.d.ts.map +0 -1
  804. package/dist/rules/barrel-optimizer.js +0 -77
  805. package/dist/rules/barrel-optimizer.js.map +0 -1
  806. package/dist/rules/dead-code-detector.d.ts +0 -21
  807. package/dist/rules/dead-code-detector.d.ts.map +0 -1
  808. package/dist/rules/dead-code-detector.js +0 -117
  809. package/dist/rules/dead-code-detector.js.map +0 -1
  810. package/dist/rules/hub-splitter.d.ts +0 -13
  811. package/dist/rules/hub-splitter.d.ts.map +0 -1
  812. package/dist/rules/hub-splitter.js +0 -110
  813. package/dist/rules/hub-splitter.js.map +0 -1
  814. package/dist/rules/import-organizer.d.ts +0 -13
  815. package/dist/rules/import-organizer.d.ts.map +0 -1
  816. package/dist/rules/import-organizer.js +0 -85
  817. package/dist/rules/import-organizer.js.map +0 -1
  818. package/dist/rules/module-grouper.d.ts +0 -13
  819. package/dist/rules/module-grouper.d.ts.map +0 -1
  820. package/dist/rules/module-grouper.js +0 -110
  821. package/dist/rules/module-grouper.js.map +0 -1
  822. package/dist/scanner.d.ts +0 -31
  823. package/dist/scanner.d.ts.map +0 -1
  824. package/dist/scanner.js +0 -330
  825. package/dist/scanner.js.map +0 -1
  826. package/dist/scorer.d.ts +0 -27
  827. package/dist/scorer.d.ts.map +0 -1
  828. package/dist/scorer.js +0 -229
  829. package/dist/scorer.js.map +0 -1
  830. package/dist/summarizer/keyword-extractor.d.ts +0 -6
  831. package/dist/summarizer/keyword-extractor.d.ts.map +0 -1
  832. package/dist/summarizer/keyword-extractor.js +0 -37
  833. package/dist/summarizer/keyword-extractor.js.map +0 -1
  834. package/dist/summarizer/module-inferrer.d.ts +0 -10
  835. package/dist/summarizer/module-inferrer.d.ts.map +0 -1
  836. package/dist/summarizer/module-inferrer.js +0 -171
  837. package/dist/summarizer/module-inferrer.js.map +0 -1
  838. package/dist/summarizer/package-reader.d.ts +0 -4
  839. package/dist/summarizer/package-reader.d.ts.map +0 -1
  840. package/dist/summarizer/package-reader.js +0 -30
  841. package/dist/summarizer/package-reader.js.map +0 -1
  842. package/dist/summarizer/purpose-inferrer.d.ts +0 -8
  843. package/dist/summarizer/purpose-inferrer.d.ts.map +0 -1
  844. package/dist/summarizer/purpose-inferrer.js +0 -178
  845. package/dist/summarizer/purpose-inferrer.js.map +0 -1
  846. package/dist/summarizer/readme-reader.d.ts +0 -4
  847. package/dist/summarizer/readme-reader.d.ts.map +0 -1
  848. package/dist/summarizer/readme-reader.js +0 -21
  849. package/dist/summarizer/readme-reader.js.map +0 -1
  850. package/dist/types.d.ts +0 -186
  851. package/dist/types.d.ts.map +0 -1
  852. package/dist/types.js +0 -2
  853. package/dist/types.js.map +0 -1
  854. package/examples/sample-report.md +0 -207
  855. package/fix-scorer.js +0 -18
  856. package/fix-tests.js +0 -73
  857. package/jest.config.js +0 -18
  858. package/scripts/decompose-detectors.ts +0 -183
  859. package/scripts/decompose-detectors_deps.ts +0 -16
  860. package/scripts/decompose-enrichers.ts +0 -191
  861. package/scripts/decompose-enrichers_deps.ts +0 -10
  862. package/scripts/decompose-helpers.ts +0 -92
  863. package/scripts/decompose-summarizer.ts +0 -127
  864. package/setup-refactor.sh +0 -21
  865. package/src/adapters/html-reporter_deps.ts +0 -14
  866. package/src/core/agent-generator/context-enricher.ts +0 -67
  867. package/src/core/agent-generator/detectors/base-detector.ts +0 -18
  868. package/src/core/agent-generator/detectors/dart-detector.ts +0 -17
  869. package/src/core/agent-generator/detectors/framework-registry.ts +0 -82
  870. package/src/core/agent-generator/detectors/go-detector.ts +0 -26
  871. package/src/core/agent-generator/detectors/java-detector.ts +0 -46
  872. package/src/core/agent-generator/detectors/node-detector.ts +0 -28
  873. package/src/core/agent-generator/detectors/php-detector.ts +0 -28
  874. package/src/core/agent-generator/detectors/python-detector.ts +0 -125
  875. package/src/core/agent-generator/detectors/ruby-detector.ts +0 -24
  876. package/src/core/agent-generator/detectors/rust-detector.ts +0 -19
  877. package/src/core/agent-generator/detectors/structure-detector.ts +0 -38
  878. package/src/core/agent-generator/detectors/toolchain-detector.ts +0 -180
  879. package/src/core/agent-generator/domain-inferrer.ts +0 -630
  880. package/src/core/agent-generator/engines/audit-engine.ts +0 -98
  881. package/src/core/agent-generator/engines/context-builder.ts +0 -96
  882. package/src/core/agent-generator/engines/generation-engine.ts +0 -184
  883. package/src/core/agent-generator/engines/generation-engine_deps.ts +0 -21
  884. package/src/core/agent-generator/engines/suggestion-engine.ts +0 -202
  885. package/src/core/agent-generator/engines/suggestion-engine_deps.ts +0 -8
  886. package/src/core/agent-generator/enrichers/analysis-helpers.ts +0 -58
  887. package/src/core/agent-generator/enrichers/description-generator.ts +0 -91
  888. package/src/core/agent-generator/enrichers/endpoint-extractor.ts +0 -114
  889. package/src/core/agent-generator/enrichers/layer-classifier.ts +0 -156
  890. package/src/core/agent-generator/enrichers/module-extractor.ts +0 -203
  891. package/src/core/agent-generator/framework-detector.ts +0 -66
  892. package/src/core/agent-generator/index.ts +0 -55
  893. package/src/core/agent-generator/stack-detector.ts +0 -115
  894. package/src/core/agent-generator/templates/core/agents.ts +0 -1296
  895. package/src/core/agent-generator/templates/core/architecture-rules.ts +0 -287
  896. package/src/core/agent-generator/templates/core/general-rules.ts +0 -306
  897. package/src/core/agent-generator/templates/core/hooks-generator.ts +0 -242
  898. package/src/core/agent-generator/templates/core/index-md.ts +0 -260
  899. package/src/core/agent-generator/templates/core/orchestrator.ts +0 -459
  900. package/src/core/agent-generator/templates/core/preflight.ts +0 -215
  901. package/src/core/agent-generator/templates/core/quality-gates.ts +0 -256
  902. package/src/core/agent-generator/templates/core/security-rules.ts +0 -543
  903. package/src/core/agent-generator/templates/core/skills-generator.ts +0 -585
  904. package/src/core/agent-generator/templates/core/workflow-fix-bug.ts +0 -239
  905. package/src/core/agent-generator/templates/core/workflow-new-feature.ts +0 -323
  906. package/src/core/agent-generator/templates/core/workflow-review.ts +0 -106
  907. package/src/core/agent-generator/templates/domain/index.ts +0 -1201
  908. package/src/core/agent-generator/templates/helpers/base-helpers.ts +0 -32
  909. package/src/core/agent-generator/templates/helpers/cross-ref-helpers.ts +0 -79
  910. package/src/core/agent-generator/templates/helpers/security-helpers.ts +0 -196
  911. package/src/core/agent-generator/templates/helpers/stack-helpers.ts +0 -78
  912. package/src/core/agent-generator/templates/helpers/structure-helpers.ts +0 -291
  913. package/src/core/agent-generator/templates/helpers/summary-helpers.ts +0 -65
  914. package/src/core/agent-generator/templates/stack/index.ts +0 -705
  915. package/src/core/agent-generator/templates/template-helpers.ts +0 -12
  916. package/src/core/agent-generator/types/agent.ts +0 -65
  917. package/src/core/agent-generator/types/domain.ts +0 -63
  918. package/src/core/agent-generator/types/stack.ts +0 -38
  919. package/src/core/agent-generator/types/template.ts +0 -31
  920. package/src/core/analyzer.ts +0 -448
  921. package/src/core/analyzers/forecast.ts +0 -496
  922. package/src/core/analyzers/index.ts +0 -33
  923. package/src/core/analyzers/temporal-scorer.ts +0 -227
  924. package/src/core/anti-patterns.ts +0 -297
  925. package/src/core/architect_deps.ts +0 -13
  926. package/src/core/config.ts +0 -123
  927. package/src/core/diagram.ts +0 -129
  928. package/src/core/project-summarizer.ts +0 -42
  929. package/src/core/refactor-engine.ts +0 -112
  930. package/src/core/rules/barrel-optimizer.ts +0 -99
  931. package/src/core/rules/dead-code-detector.ts +0 -134
  932. package/src/core/rules/hub-splitter.ts +0 -135
  933. package/src/core/rules/import-organizer.ts +0 -100
  934. package/src/core/rules/module-grouper.ts +0 -133
  935. package/src/core/scorer.ts +0 -254
  936. package/src/core/summarizer/keyword-extractor.ts +0 -53
  937. package/src/core/summarizer/module-inferrer.ts +0 -194
  938. package/src/core/summarizer/package-reader.ts +0 -34
  939. package/src/core/summarizer/purpose-inferrer.ts +0 -197
  940. package/src/core/summarizer/readme-reader.ts +0 -24
  941. package/src/core/types/core.ts +0 -93
  942. package/src/core/types/infrastructure.ts +0 -41
  943. package/src/core/types/rules.ts +0 -51
  944. package/src/core/types/summarizer.ts +0 -8
  945. package/src/index.ts +0 -27
  946. package/src/infrastructure/git-cache.ts +0 -52
  947. package/src/infrastructure/git-history.ts +0 -497
  948. package/src/infrastructure/logger.ts +0 -68
  949. package/src/infrastructure/scanner.ts +0 -347
  950. package/src/scripts/bundle-deps.js +0 -123
  951. package/src/scripts/fix-imports.mjs +0 -106
  952. package/src/scripts/refactor-imports.js +0 -74
  953. package/src/scripts/refactor-utils.js +0 -23
  954. package/test-shotgun.js +0 -7
  955. package/tests/agent-generator.test.ts +0 -428
  956. package/tests/analyzers-integration.test.ts +0 -174
  957. package/tests/anti-patterns.test.ts +0 -95
  958. package/tests/context-enricher.test.ts +0 -972
  959. package/tests/fixtures/monorepo/package.json +0 -6
  960. package/tests/fixtures/monorepo/packages/app/package.json +0 -12
  961. package/tests/fixtures/monorepo/packages/app/src/index.ts +0 -6
  962. package/tests/fixtures/monorepo/packages/core/package.json +0 -7
  963. package/tests/fixtures/monorepo/packages/core/src/index.ts +0 -7
  964. package/tests/forecast.test.ts +0 -509
  965. package/tests/framework-detector.test.ts +0 -1172
  966. package/tests/git-history.test.ts +0 -254
  967. package/tests/monorepo-scan.test.ts +0 -170
  968. package/tests/scanner.test.ts +0 -54
  969. package/tests/scorer.test.ts +0 -674
  970. package/tests/stack-detector.test.ts +0 -241
  971. package/tests/template-generation.test.ts +0 -707
  972. package/tests/template-helpers.test.ts +0 -1130
  973. package/tests/temporal-scorer.test.ts +0 -307
  974. /package/dist/{adapters → src/adapters}/html-reporter/scripts.js +0 -0
  975. /package/dist/{adapters → src/adapters}/html-reporter/sections/anti-patterns.js +0 -0
  976. /package/dist/{adapters → src/adapters}/html-reporter/sections/layers.js +0 -0
  977. /package/dist/{adapters → src/adapters}/html-reporter/sections/overview.js +0 -0
  978. /package/dist/{adapters → src/adapters}/html-reporter/sections/refactoring-plan.js +0 -0
  979. /package/dist/{adapters → src/adapters}/html-reporter/sections/suggestions.js +0 -0
  980. /package/dist/{adapters → src/adapters}/html-reporter/styles.js +0 -0
  981. /package/dist/{adapters → src/adapters}/html-reporter/utils_adapters.js +0 -0
  982. /package/dist/{adapters → src/adapters}/html-reporter/utils_sections.js +0 -0
  983. /package/dist/{adapters → src/adapters}/reporter.js +0 -0
@@ -1,1130 +0,0 @@
1
- import { getEnriched, isEnriched, depthScale, depthAtLeast, crossRef, domainBadge, complianceBadges, depthIndicator, modulesSummaryTable, integrationsSummary, frameworkBadge, projectStructureBadge, toolchainCommands, frameworkModuleStructure, frameworkSecurityChecklist } from '../src/core/agent-generator/templates/template-helpers.js';
2
- import { TemplateContext, EnrichedTemplateContext } from '../src/core/agent-generator/types/template.js';
3
- import { StackInfo, FrameworkInfo, DetectedToolchain } from '../src/core/agent-generator/types/stack.js';
4
- import { DomainInsights, ModuleDetail, DetectedEndpoint } from '../src/core/agent-generator/types/domain.js';
5
- import { AnalysisReport } from '../src/core/types/core.js';
6
- import { RefactoringPlan } from '../src/core/types/rules.js';
7
-
8
- // ───────────────────────────────────────────────────────────────
9
- // MOCK BUILDERS
10
- // ───────────────────────────────────────────────────────────────
11
-
12
- /**
13
- * Build a minimal AnalysisReport for testing.
14
- */
15
- function makeReport(overrides: Partial<AnalysisReport> = {}): AnalysisReport {
16
- return {
17
- timestamp: new Date().toISOString(),
18
- projectInfo: {
19
- path: '/test-project',
20
- name: 'test-project',
21
- frameworks: ['NestJS'],
22
- totalFiles: 100,
23
- totalLines: 10000,
24
- primaryLanguages: ['TypeScript'],
25
- },
26
- score: {
27
- overall: 75,
28
- components: [],
29
- breakdown: { modularity: 80, coupling: 70, cohesion: 75, layering: 80 },
30
- },
31
- antiPatterns: [],
32
- layers: [],
33
- dependencyGraph: { nodes: [], edges: [] },
34
- suggestions: [],
35
- diagram: { mermaid: '', type: 'layer' },
36
- ...overrides,
37
- };
38
- }
39
-
40
- /**
41
- * Build a minimal RefactoringPlan for testing.
42
- */
43
- function makePlan(overrides: Partial<RefactoringPlan> = {}): RefactoringPlan {
44
- return {
45
- timestamp: new Date().toISOString(),
46
- projectPath: '/test-project',
47
- currentScore: { overall: 75, components: [], breakdown: { modularity: 80, coupling: 70, cohesion: 75, layering: 80 } },
48
- estimatedScoreAfter: { overall: 85, breakdown: { modularity: 85, coupling: 80, cohesion: 85, layering: 85 } },
49
- steps: [],
50
- totalOperations: 0,
51
- tier1Steps: 0,
52
- tier2Steps: 0,
53
- ...overrides,
54
- };
55
- }
56
-
57
- /**
58
- * Build a minimal StackInfo for testing.
59
- */
60
- function makeStack(overrides: Partial<StackInfo> = {}): StackInfo {
61
- return {
62
- primary: 'TypeScript',
63
- languages: ['TypeScript'],
64
- frameworks: ['NestJS'],
65
- hasBackend: true,
66
- hasFrontend: false,
67
- hasMobile: false,
68
- hasDatabase: true,
69
- testFramework: 'Jest',
70
- packageManager: 'npm',
71
- ...overrides,
72
- };
73
- }
74
-
75
- /**
76
- * Build a basic TemplateContext (non-enriched).
77
- */
78
- function makeContext(overrides: Partial<TemplateContext> = {}): TemplateContext {
79
- return {
80
- report: makeReport(),
81
- plan: makePlan(),
82
- stack: makeStack(),
83
- projectName: 'test-project',
84
- stackLabel: 'NestJS + TypeScript',
85
- config: {
86
- coverageMinimum: 80,
87
- scoreThreshold: 70,
88
- language: 'pt-BR',
89
- goldenRules: [],
90
- blockers: [],
91
- },
92
- ...overrides,
93
- };
94
- }
95
-
96
- /**
97
- * Build an EnrichedTemplateContext with all enrichment fields.
98
- */
99
- function makeEnrichedContext(
100
- overrides: Partial<EnrichedTemplateContext> = {},
101
- ): EnrichedTemplateContext {
102
- const domain: DomainInsights = {
103
- domain: 'fintech',
104
- subDomain: 'payment-processing',
105
- description: 'Payment processing platform',
106
- businessEntities: [
107
- {
108
- name: 'User',
109
- source: 'src/entities/user.entity.ts',
110
- fields: ['id', 'email', 'name'],
111
- relationships: ['accounts', 'transactions'],
112
- layer: 'entity',
113
- },
114
- {
115
- name: 'Transaction',
116
- source: 'src/entities/transaction.entity.ts',
117
- fields: ['id', 'amount', 'userId'],
118
- relationships: ['user', 'account'],
119
- layer: 'entity',
120
- },
121
- ],
122
- compliance: [
123
- {
124
- name: 'PCI-DSS',
125
- reason: 'Processes payment card data',
126
- mandatoryChecks: ['encryption', 'access-control', 'audit-logging'],
127
- },
128
- {
129
- name: 'LGPD',
130
- reason: 'Processes Brazilian personal data',
131
- mandatoryChecks: ['consent', 'right-to-be-forgotten', 'data-portability'],
132
- },
133
- ],
134
- integrations: [
135
- { name: 'Stripe', type: 'payment', detectedFrom: 'src/services/payment.ts' },
136
- { name: 'PostgreSQL', type: 'database', detectedFrom: 'package.json' },
137
- { name: 'Redis', type: 'storage', detectedFrom: 'src/cache/redis.service.ts' },
138
- ],
139
- keywords: ['payment', 'transaction', 'user', 'account'],
140
- confidence: 0.92,
141
- };
142
-
143
- const modules: ModuleDetail[] = [
144
- {
145
- name: 'Users Module',
146
- path: 'src/users',
147
- files: ['user.controller.ts', 'user.service.ts', 'user.entity.ts'],
148
- fileCount: 3,
149
- lineCount: 350,
150
- description: 'User management',
151
- hasTests: true,
152
- testFiles: ['user.service.spec.ts'],
153
- entities: ['User'],
154
- controllers: ['UserController'],
155
- services: ['UserService'],
156
- layer: 'feature',
157
- },
158
- {
159
- name: 'Transactions Module',
160
- path: 'src/transactions',
161
- files: ['transaction.controller.ts', 'transaction.service.ts', 'transaction.entity.ts'],
162
- fileCount: 3,
163
- lineCount: 420,
164
- description: 'Transaction processing',
165
- hasTests: true,
166
- testFiles: ['transaction.service.spec.ts'],
167
- entities: ['Transaction'],
168
- controllers: ['TransactionController'],
169
- services: ['TransactionService'],
170
- layer: 'feature',
171
- },
172
- {
173
- name: 'Payment Module',
174
- path: 'src/payment',
175
- files: ['payment.service.ts', 'payment.controller.ts'],
176
- fileCount: 2,
177
- lineCount: 280,
178
- description: 'Payment processing',
179
- hasTests: true,
180
- testFiles: ['payment.service.spec.ts'],
181
- entities: [],
182
- controllers: ['PaymentController'],
183
- services: ['PaymentService'],
184
- layer: 'feature',
185
- },
186
- ];
187
-
188
- const endpoints: DetectedEndpoint[] = [
189
- {
190
- method: 'GET',
191
- path: '/users',
192
- file: 'src/users/user.controller.ts',
193
- handler: 'getUsers',
194
- hasAuth: true,
195
- hasValidation: true,
196
- },
197
- {
198
- method: 'POST',
199
- path: '/transactions',
200
- file: 'src/transactions/transaction.controller.ts',
201
- handler: 'createTransaction',
202
- hasAuth: true,
203
- hasValidation: true,
204
- },
205
- ];
206
-
207
- const detectedFrameworks: FrameworkInfo[] = [
208
- { name: 'NestJS', version: '10.2.8', category: 'web', confidence: 0.99 },
209
- { name: 'TypeORM', version: '0.3.17', category: 'orm', confidence: 0.98 },
210
- { name: 'Jest', version: '29.7.0', category: 'test', confidence: 0.99 },
211
- { name: 'ESLint', version: '8.50.0', category: 'lint', confidence: 0.95 },
212
- ];
213
-
214
- const toolchain: DetectedToolchain = {
215
- buildCmd: 'npm run build',
216
- testCmd: 'npm test',
217
- lintCmd: 'npm run lint',
218
- runCmd: 'npm run start:dev',
219
- coverageCmd: 'npm run test:cov',
220
- installCmd: 'npm install',
221
- migrateCmd: 'npm run migration:run',
222
- depsFile: 'package.json',
223
- };
224
-
225
- return {
226
- ...makeContext(),
227
- domain,
228
- modules,
229
- endpoints,
230
- untestedModules: [],
231
- criticalPaths: ['src/payment/payment.service.ts'],
232
- projectDepth: 'large',
233
- detectedFrameworks,
234
- primaryFramework: detectedFrameworks[0],
235
- toolchain,
236
- projectStructure: 'modular',
237
- ...overrides,
238
- };
239
- }
240
-
241
- // ───────────────────────────────────────────────────────────────
242
- // TEST SUITE
243
- // ───────────────────────────────────────────────────────────────
244
-
245
- describe('template-helpers', () => {
246
- // ─ 1. getEnriched ─
247
- describe('getEnriched', () => {
248
- it('should return enriched context when context is enriched', () => {
249
- const enriched = makeEnrichedContext();
250
- const result = getEnriched(enriched);
251
-
252
- expect(result).toBeDefined();
253
- expect(result.domain).toBeDefined();
254
- expect(result.domain?.domain).toBe('fintech');
255
- expect(result.modules).toBeDefined();
256
- expect(result.modules?.length).toBe(3);
257
- });
258
-
259
- it('should return empty object when context is not enriched', () => {
260
- const basic = makeContext();
261
- const result = getEnriched(basic);
262
-
263
- expect(result).toEqual({});
264
- expect(result.domain).toBeUndefined();
265
- });
266
- });
267
-
268
- // ─ 2. isEnriched ─
269
- describe('isEnriched', () => {
270
- it('should return true for enriched context', () => {
271
- const enriched = makeEnrichedContext();
272
- expect(isEnriched(enriched)).toBe(true);
273
- });
274
-
275
- it('should return false for non-enriched context', () => {
276
- const basic = makeContext();
277
- expect(isEnriched(basic)).toBe(false);
278
- });
279
-
280
- it('should narrow type correctly', () => {
281
- const ctx: TemplateContext = makeEnrichedContext();
282
- if (isEnriched(ctx)) {
283
- // Should be able to access domain safely
284
- expect(ctx.domain.domain).toBe('fintech');
285
- }
286
- });
287
- });
288
-
289
- // ─ 3. depthScale ─
290
- describe('depthScale', () => {
291
- it('should return small value for small projects', () => {
292
- const ctx = makeEnrichedContext({ projectDepth: 'small' });
293
- const result = depthScale(ctx, {
294
- small: 5,
295
- medium: 10,
296
- large: 20,
297
- enterprise: 50,
298
- });
299
- expect(result).toBe(5);
300
- });
301
-
302
- it('should return medium value for medium projects', () => {
303
- const ctx = makeEnrichedContext({ projectDepth: 'medium' });
304
- const result = depthScale(ctx, {
305
- small: 5,
306
- medium: 10,
307
- large: 20,
308
- enterprise: 50,
309
- });
310
- expect(result).toBe(10);
311
- });
312
-
313
- it('should return large value for large projects', () => {
314
- const ctx = makeEnrichedContext({ projectDepth: 'large' });
315
- const result = depthScale(ctx, {
316
- small: 5,
317
- medium: 10,
318
- large: 20,
319
- enterprise: 50,
320
- });
321
- expect(result).toBe(20);
322
- });
323
-
324
- it('should return enterprise value for enterprise projects', () => {
325
- const ctx = makeEnrichedContext({ projectDepth: 'enterprise' });
326
- const result = depthScale(ctx, {
327
- small: 5,
328
- medium: 10,
329
- large: 20,
330
- enterprise: 50,
331
- });
332
- expect(result).toBe(50);
333
- });
334
-
335
- it('should default to medium when projectDepth is missing', () => {
336
- const ctx = makeContext(); // Non-enriched
337
- const result = depthScale(ctx, {
338
- small: 5,
339
- medium: 10,
340
- large: 20,
341
- enterprise: 50,
342
- });
343
- expect(result).toBe(10);
344
- });
345
-
346
- it('should work with string values', () => {
347
- const ctx = makeEnrichedContext({ projectDepth: 'large' });
348
- const result = depthScale(ctx, {
349
- small: 'tiny',
350
- medium: 'regular',
351
- large: 'huge',
352
- enterprise: 'massive',
353
- });
354
- expect(result).toBe('huge');
355
- });
356
- });
357
-
358
- // ─ 4. depthAtLeast ─
359
- describe('depthAtLeast', () => {
360
- it('should return true when project depth >= minimum', () => {
361
- const ctx = makeEnrichedContext({ projectDepth: 'large' });
362
- expect(depthAtLeast(ctx, 'medium')).toBe(true);
363
- expect(depthAtLeast(ctx, 'large')).toBe(true);
364
- });
365
-
366
- it('should return false when project depth < minimum', () => {
367
- const ctx = makeEnrichedContext({ projectDepth: 'small' });
368
- expect(depthAtLeast(ctx, 'medium')).toBe(false);
369
- expect(depthAtLeast(ctx, 'large')).toBe(false);
370
- });
371
-
372
- it('should work with enterprise depth', () => {
373
- const ctx = makeEnrichedContext({ projectDepth: 'enterprise' });
374
- expect(depthAtLeast(ctx, 'small')).toBe(true);
375
- expect(depthAtLeast(ctx, 'medium')).toBe(true);
376
- expect(depthAtLeast(ctx, 'large')).toBe(true);
377
- expect(depthAtLeast(ctx, 'enterprise')).toBe(true);
378
- });
379
-
380
- it('should default to medium when projectDepth missing', () => {
381
- const ctx = makeContext(); // Non-enriched
382
- expect(depthAtLeast(ctx, 'small')).toBe(true);
383
- expect(depthAtLeast(ctx, 'medium')).toBe(true);
384
- expect(depthAtLeast(ctx, 'large')).toBe(false);
385
- });
386
- });
387
-
388
- // ─ 5. crossRef ─
389
- describe('crossRef', () => {
390
- it('should generate cross-reference table for backend agent', () => {
391
- const ctx = makeContext({
392
- stack: makeStack({
393
- hasBackend: true,
394
- hasFrontend: true,
395
- hasMobile: true,
396
- hasDatabase: true,
397
- }),
398
- });
399
-
400
- const result = crossRef('backend', ctx);
401
-
402
- expect(result).toContain('🔗 Cross-References');
403
- expect(result).toContain('Database Engineer');
404
- expect(result).toContain('Security Auditor');
405
- expect(result).toContain('QA Test Engineer');
406
- expect(result).toContain('Tech Debt Controller');
407
- });
408
-
409
- it('should filter out missing stack components', () => {
410
- const ctx = makeContext({
411
- stack: makeStack({
412
- hasFrontend: false,
413
- hasMobile: false,
414
- hasDatabase: false,
415
- }),
416
- });
417
-
418
- const result = crossRef('backend', ctx);
419
-
420
- // Should not mention frontend or mobile when missing
421
- expect(result).not.toContain('Frontend Developer');
422
- expect(result).not.toContain('Flutter');
423
- });
424
-
425
- it('should return empty string for unknown agent', () => {
426
- const ctx = makeContext();
427
- const result = crossRef('unknown-agent', ctx);
428
- expect(result).toBe('');
429
- });
430
-
431
- it('should include cross-references for frontend agent', () => {
432
- const ctx = makeContext({
433
- stack: makeStack({ hasBackend: true, hasFrontend: true }),
434
- });
435
-
436
- const result = crossRef('frontend', ctx);
437
-
438
- expect(result).toContain('Backend Developer');
439
- expect(result).toContain('QA Test Engineer');
440
- });
441
-
442
- it('should include cross-references for orchestrator agent', () => {
443
- const ctx = makeContext({
444
- stack: makeStack({
445
- hasBackend: true,
446
- hasFrontend: true,
447
- hasMobile: true,
448
- hasDatabase: true,
449
- }),
450
- });
451
-
452
- const result = crossRef('orchestrator', ctx);
453
-
454
- expect(result).toContain('Backend Developer');
455
- expect(result).toContain('Frontend Developer');
456
- expect(result).toContain('Flutter UI Developer');
457
- expect(result).toContain('Database Engineer');
458
- expect(result).toContain('Security Auditor');
459
- });
460
- });
461
-
462
- // ─ 6. domainBadge ─
463
- describe('domainBadge', () => {
464
- it('should generate domain badge for enriched context', () => {
465
- const ctx = makeEnrichedContext();
466
- const result = domainBadge(ctx);
467
-
468
- expect(result).toContain('📌 **Domínio:**');
469
- expect(result).toContain('fintech');
470
- expect(result).toContain('payment-processing');
471
- expect(result).toContain('**Confiança:** 92%');
472
- });
473
-
474
- it('should return empty string for non-enriched context', () => {
475
- const ctx = makeContext();
476
- const result = domainBadge(ctx);
477
- expect(result).toBe('');
478
- });
479
-
480
- it('should format confidence as percentage', () => {
481
- const ctx = makeEnrichedContext({
482
- domain: {
483
- ...makeEnrichedContext().domain,
484
- confidence: 0.85,
485
- },
486
- });
487
-
488
- const result = domainBadge(ctx);
489
- expect(result).toContain('85%');
490
- });
491
- });
492
-
493
- // ─ 7. complianceBadges ─
494
- describe('complianceBadges', () => {
495
- it('should generate compliance badges when present', () => {
496
- const ctx = makeEnrichedContext();
497
- const result = complianceBadges(ctx);
498
-
499
- expect(result).toContain('⚖️ Compliance Obrigatório');
500
- expect(result).toContain('PCI-DSS');
501
- expect(result).toContain('LGPD');
502
- expect(result).toContain('encryption');
503
- expect(result).toContain('consent');
504
- });
505
-
506
- it('should return empty string when no compliance', () => {
507
- const ctx = makeEnrichedContext({
508
- domain: {
509
- ...makeEnrichedContext().domain,
510
- compliance: [],
511
- },
512
- });
513
-
514
- const result = complianceBadges(ctx);
515
- expect(result).toBe('');
516
- });
517
-
518
- it('should list all mandatory checks', () => {
519
- const ctx = makeEnrichedContext();
520
- const result = complianceBadges(ctx);
521
-
522
- expect(result).toContain('access-control');
523
- expect(result).toContain('audit-logging');
524
- expect(result).toContain('right-to-be-forgotten');
525
- });
526
- });
527
-
528
- // ─ 8. depthIndicator ─
529
- describe('depthIndicator', () => {
530
- it('should return green indicator for small projects', () => {
531
- const ctx = makeEnrichedContext({ projectDepth: 'small' });
532
- const result = depthIndicator(ctx);
533
- expect(result).toBe('🟢 Projeto Pequeno (< 50 arquivos)');
534
- });
535
-
536
- it('should return yellow indicator for medium projects', () => {
537
- const ctx = makeEnrichedContext({ projectDepth: 'medium' });
538
- const result = depthIndicator(ctx);
539
- expect(result).toBe('🟡 Projeto Médio (50-200 arquivos)');
540
- });
541
-
542
- it('should return orange indicator for large projects', () => {
543
- const ctx = makeEnrichedContext({ projectDepth: 'large' });
544
- const result = depthIndicator(ctx);
545
- expect(result).toBe('🟠 Projeto Grande (200-500 arquivos)');
546
- });
547
-
548
- it('should return red indicator for enterprise projects', () => {
549
- const ctx = makeEnrichedContext({ projectDepth: 'enterprise' });
550
- const result = depthIndicator(ctx);
551
- expect(result).toBe('🔴 Enterprise (500+ arquivos)');
552
- });
553
-
554
- it('should default to medium when projectDepth missing', () => {
555
- const ctx = makeContext();
556
- const result = depthIndicator(ctx);
557
- expect(result).toBe('🟡 Projeto Médio (50-200 arquivos)');
558
- });
559
- });
560
-
561
- // ─ 9. modulesSummaryTable ─
562
- describe('modulesSummaryTable', () => {
563
- it('should generate markdown table for modules', () => {
564
- const ctx = makeEnrichedContext();
565
- const result = modulesSummaryTable(ctx);
566
-
567
- expect(result).toContain('| Módulo | Arquivos | Linhas | Testes | Camada |');
568
- expect(result).toContain('Users Module');
569
- expect(result).toContain('Transactions Module');
570
- expect(result).toContain('✅'); // hasTests = true
571
- });
572
-
573
- it('should return empty string when no modules', () => {
574
- const ctx = makeEnrichedContext({ modules: [] });
575
- const result = modulesSummaryTable(ctx);
576
- expect(result).toBe('');
577
- });
578
-
579
- it('should respect depth scaling for max modules', () => {
580
- const modules = Array.from({ length: 30 }, (_, i) => ({
581
- name: `Module ${i + 1}`,
582
- path: `src/module-${i + 1}`,
583
- files: ['index.ts'],
584
- fileCount: 1,
585
- lineCount: 100,
586
- description: `Module ${i + 1}`,
587
- hasTests: true,
588
- testFiles: ['index.spec.ts'],
589
- entities: [],
590
- controllers: [],
591
- services: [],
592
- layer: 'feature',
593
- }));
594
-
595
- const smallCtx = makeEnrichedContext({ projectDepth: 'small', modules });
596
- const smallResult = modulesSummaryTable(smallCtx);
597
- const smallLines = smallResult.split('\n').length;
598
-
599
- const largeCtx = makeEnrichedContext({ projectDepth: 'large', modules });
600
- const largeResult = modulesSummaryTable(largeCtx);
601
- const largeLines = largeResult.split('\n').length;
602
-
603
- expect(smallLines).toBeLessThan(largeLines); // Small project shows fewer modules
604
- });
605
-
606
- it('should show line count with locale formatting', () => {
607
- const ctx = makeEnrichedContext();
608
- const result = modulesSummaryTable(ctx);
609
- expect(result).toContain('350');
610
- expect(result).toContain('420');
611
- });
612
-
613
- it('should show "—" for zero line count', () => {
614
- const ctx = makeEnrichedContext({
615
- modules: [
616
- {
617
- name: 'Empty Module',
618
- path: 'src/empty',
619
- files: [],
620
- fileCount: 0,
621
- lineCount: 0,
622
- description: 'Empty',
623
- hasTests: false,
624
- testFiles: [],
625
- entities: [],
626
- controllers: [],
627
- services: [],
628
- layer: 'feature',
629
- },
630
- ],
631
- });
632
-
633
- const result = modulesSummaryTable(ctx);
634
- expect(result).toContain('—');
635
- });
636
- });
637
-
638
- // ─ 10. integrationsSummary ─
639
- describe('integrationsSummary', () => {
640
- it('should generate integrations summary', () => {
641
- const ctx = makeEnrichedContext();
642
- const result = integrationsSummary(ctx);
643
-
644
- expect(result).toContain('Integrações Externas Detectadas');
645
- expect(result).toContain('Stripe');
646
- expect(result).toContain('payment');
647
- expect(result).toContain('PostgreSQL');
648
- expect(result).toContain('Redis');
649
- });
650
-
651
- it('should return empty string when no integrations', () => {
652
- const ctx = makeEnrichedContext({
653
- domain: {
654
- ...makeEnrichedContext().domain,
655
- integrations: [],
656
- },
657
- });
658
-
659
- const result = integrationsSummary(ctx);
660
- expect(result).toBe('');
661
- });
662
-
663
- it('should show detected location for each integration', () => {
664
- const ctx = makeEnrichedContext();
665
- const result = integrationsSummary(ctx);
666
-
667
- expect(result).toContain('src/services/payment.ts');
668
- expect(result).toContain('package.json');
669
- expect(result).toContain('src/cache/redis.service.ts');
670
- });
671
- });
672
-
673
- // ─ 11. frameworkBadge ─
674
- describe('frameworkBadge', () => {
675
- it('should generate framework badge with versions', () => {
676
- const ctx = makeEnrichedContext();
677
- const result = frameworkBadge(ctx);
678
-
679
- expect(result).toContain('🚀 **Stack Detectada:**');
680
- expect(result).toContain('NestJS');
681
- expect(result).toContain('10.2.8');
682
- expect(result).toContain('TypeORM');
683
- expect(result).toContain('0.3.17');
684
- });
685
-
686
- it('should include test frameworks', () => {
687
- const ctx = makeEnrichedContext();
688
- const result = frameworkBadge(ctx);
689
-
690
- expect(result).toContain('Testes: Jest');
691
- });
692
-
693
- it('should include lint frameworks', () => {
694
- const ctx = makeEnrichedContext();
695
- const result = frameworkBadge(ctx);
696
-
697
- expect(result).toContain('Lint: ESLint');
698
- });
699
-
700
- it('should return empty string when no frameworks detected', () => {
701
- const ctx = makeEnrichedContext({
702
- detectedFrameworks: [],
703
- primaryFramework: null,
704
- });
705
-
706
- const result = frameworkBadge(ctx);
707
- expect(result).toBe('');
708
- });
709
-
710
- it('should handle frameworks without versions', () => {
711
- const ctx = makeEnrichedContext({
712
- detectedFrameworks: [
713
- { name: 'NestJS', version: null, category: 'web', confidence: 0.99 },
714
- ],
715
- primaryFramework: { name: 'NestJS', version: null, category: 'web', confidence: 0.99 },
716
- });
717
-
718
- const result = frameworkBadge(ctx);
719
- expect(result).toContain('NestJS');
720
- });
721
- });
722
-
723
- // ─ 12. projectStructureBadge ─
724
- describe('projectStructureBadge', () => {
725
- it('should return clean architecture badge', () => {
726
- const ctx = makeEnrichedContext({ projectStructure: 'clean-architecture' });
727
- const result = projectStructureBadge(ctx);
728
- expect(result).toBe('🏛️ Clean Architecture / DDD');
729
- });
730
-
731
- it('should return MVC badge', () => {
732
- const ctx = makeEnrichedContext({ projectStructure: 'mvc' });
733
- const result = projectStructureBadge(ctx);
734
- expect(result).toBe('📐 MVC (Model-View-Controller)');
735
- });
736
-
737
- it('should return modular badge', () => {
738
- const ctx = makeEnrichedContext({ projectStructure: 'modular' });
739
- const result = projectStructureBadge(ctx);
740
- expect(result).toBe('📦 Modular (Feature-based)');
741
- });
742
-
743
- it('should return flat badge', () => {
744
- const ctx = makeEnrichedContext({ projectStructure: 'flat' });
745
- const result = projectStructureBadge(ctx);
746
- expect(result).toBe('📄 Flat Structure');
747
- });
748
-
749
- it('should return monorepo badge', () => {
750
- const ctx = makeEnrichedContext({ projectStructure: 'monorepo' });
751
- const result = projectStructureBadge(ctx);
752
- expect(result).toBe('🏗️ Monorepo');
753
- });
754
-
755
- it('should return unknown badge', () => {
756
- const ctx = makeEnrichedContext({ projectStructure: 'unknown' });
757
- const result = projectStructureBadge(ctx);
758
- expect(result).toBe('❓ Estrutura não identificada');
759
- });
760
- });
761
-
762
- // ─ 13. toolchainCommands ─
763
- describe('toolchainCommands', () => {
764
- it('should generate toolchain commands block', () => {
765
- const ctx = makeEnrichedContext();
766
- const result = toolchainCommands(ctx);
767
-
768
- expect(result).toContain('🔧 Toolchain Detectado');
769
- expect(result).toContain('```bash');
770
- expect(result).toContain('npm run build');
771
- expect(result).toContain('npm test');
772
- expect(result).toContain('npm run lint');
773
- expect(result).toContain('npm run start:dev');
774
- expect(result).toContain('npm run test:cov');
775
- });
776
-
777
- it('should include migration command when present', () => {
778
- const ctx = makeEnrichedContext();
779
- const result = toolchainCommands(ctx);
780
-
781
- expect(result).toContain('npm run migration:run');
782
- });
783
-
784
- it('should show deps file', () => {
785
- const ctx = makeEnrichedContext();
786
- const result = toolchainCommands(ctx);
787
-
788
- expect(result).toContain('package.json');
789
- });
790
-
791
- it('should return empty string when no toolchain', () => {
792
- const ctx = makeEnrichedContext({
793
- toolchain: undefined as any,
794
- });
795
-
796
- const result = toolchainCommands(ctx);
797
- expect(result).toBe('');
798
- });
799
-
800
- it('should omit migration section when migrateCmd is null', () => {
801
- const ctx = makeEnrichedContext({
802
- toolchain: {
803
- buildCmd: 'npm run build',
804
- testCmd: 'npm test',
805
- lintCmd: 'npm run lint',
806
- runCmd: 'npm run start:dev',
807
- coverageCmd: 'npm run test:cov',
808
- installCmd: 'npm install',
809
- migrateCmd: null,
810
- depsFile: 'package.json',
811
- },
812
- });
813
-
814
- const result = toolchainCommands(ctx);
815
- expect(result).not.toContain('# Migrations');
816
- });
817
- });
818
-
819
- // ─ 14. frameworkModuleStructure ─
820
- describe('frameworkModuleStructure', () => {
821
- it('should return FastAPI structure for FastAPI framework', () => {
822
- const ctx = makeEnrichedContext({
823
- stack: makeStack({ primary: 'Python', frameworks: ['FastAPI'] }),
824
- primaryFramework: { name: 'FastAPI', version: '0.104.1', category: 'web', confidence: 0.99 },
825
- projectStructure: 'modular',
826
- });
827
-
828
- const result = frameworkModuleStructure(ctx);
829
-
830
- expect(result).toContain('app/');
831
- expect(result).toContain('main.py');
832
- expect(result).toContain('api/');
833
- expect(result).toContain('routes/');
834
- expect(result).toContain('dependencies.py');
835
- expect(result).toContain('core/');
836
- expect(result).toContain('config.py');
837
- expect(result).toContain('services/');
838
- });
839
-
840
- it('should return Django structure for Django framework', () => {
841
- const ctx = makeEnrichedContext({
842
- stack: makeStack({ primary: 'Python', frameworks: ['Django'] }),
843
- primaryFramework: { name: 'Django', version: '4.2', category: 'web', confidence: 0.99 },
844
- projectStructure: 'modular',
845
- });
846
-
847
- const result = frameworkModuleStructure(ctx);
848
-
849
- expect(result).toContain('manage.py');
850
- expect(result).toContain('config/');
851
- expect(result).toContain('settings/');
852
- expect(result).toContain('apps/');
853
- expect(result).toContain('models.py');
854
- expect(result).toContain('views.py');
855
- expect(result).toContain('serializers.py');
856
- });
857
-
858
- it('should return NestJS structure for NestJS framework', () => {
859
- const ctx = makeEnrichedContext({
860
- primaryFramework: { name: 'NestJS', version: '10.2.8', category: 'web', confidence: 0.99 },
861
- projectStructure: 'modular',
862
- });
863
-
864
- const result = frameworkModuleStructure(ctx);
865
-
866
- expect(result).toContain('src/');
867
- expect(result).toContain('main.ts');
868
- expect(result).toContain('modules/');
869
- expect(result).toContain('[name].module.ts');
870
- expect(result).toContain('[name].controller.ts');
871
- expect(result).toContain('[name].service.ts');
872
- expect(result).toContain('dto/');
873
- });
874
-
875
- it('should return Express structure for Express framework', () => {
876
- const ctx = makeEnrichedContext({
877
- primaryFramework: { name: 'Express', version: '4.18.2', category: 'web', confidence: 0.99 },
878
- projectStructure: 'modular',
879
- });
880
-
881
- const result = frameworkModuleStructure(ctx);
882
-
883
- expect(result).toContain('src/');
884
- expect(result).toContain('routes/');
885
- expect(result).toContain('controllers/');
886
- expect(result).toContain('services/');
887
- expect(result).toContain('models/');
888
- expect(result).toContain('middleware/');
889
- });
890
-
891
- it('should return Spring Boot structure for Spring Boot framework', () => {
892
- const ctx = makeEnrichedContext({
893
- stack: makeStack({ primary: 'Java', frameworks: ['Spring Boot'] }),
894
- primaryFramework: { name: 'Spring Boot', version: '3.1.5', category: 'web', confidence: 0.99 },
895
- projectStructure: 'modular',
896
- });
897
-
898
- const result = frameworkModuleStructure(ctx);
899
-
900
- expect(result).toContain('src/main/java');
901
- expect(result).toContain('Application.java');
902
- expect(result).toContain('controller/');
903
- expect(result).toContain('service/');
904
- expect(result).toContain('repository/');
905
- expect(result).toContain('model/');
906
- expect(result).toContain('@SpringBootApplication');
907
- });
908
-
909
- it('should return Laravel structure for Laravel framework', () => {
910
- const ctx = makeEnrichedContext({
911
- stack: makeStack({ primary: 'PHP', frameworks: ['Laravel'] }),
912
- primaryFramework: { name: 'Laravel', version: '10.0', category: 'web', confidence: 0.99 },
913
- projectStructure: 'modular',
914
- });
915
-
916
- const result = frameworkModuleStructure(ctx);
917
-
918
- expect(result).toContain('app/');
919
- expect(result).toContain('Http/');
920
- expect(result).toContain('Controllers/');
921
- expect(result).toContain('Models/');
922
- expect(result).toContain('database/');
923
- expect(result).toContain('migrations/');
924
- });
925
-
926
- it('should return Ruby on Rails structure for Rails framework', () => {
927
- const ctx = makeEnrichedContext({
928
- stack: makeStack({ primary: 'Ruby', frameworks: ['Ruby on Rails'] }),
929
- primaryFramework: { name: 'Ruby on Rails', version: '7.0', category: 'web', confidence: 0.99 },
930
- projectStructure: 'modular',
931
- });
932
-
933
- const result = frameworkModuleStructure(ctx);
934
-
935
- expect(result).toContain('app/');
936
- expect(result).toContain('controllers/');
937
- expect(result).toContain('models/');
938
- expect(result).toContain('views/');
939
- expect(result).toContain('config/');
940
- expect(result).toContain('routes.rb');
941
- });
942
-
943
- it('should return Go framework structure for Gin', () => {
944
- const ctx = makeEnrichedContext({
945
- stack: makeStack({ primary: 'Go', frameworks: ['Gin'] }),
946
- primaryFramework: { name: 'Gin', version: '1.9.1', category: 'web', confidence: 0.99 },
947
- projectStructure: 'modular',
948
- });
949
-
950
- const result = frameworkModuleStructure(ctx);
951
-
952
- expect(result).toContain('cmd/');
953
- expect(result).toContain('internal/');
954
- expect(result).toContain('handler/');
955
- expect(result).toContain('service/');
956
- expect(result).toContain('go.mod');
957
- });
958
-
959
- it('should return clean architecture Python structure', () => {
960
- const ctx = makeEnrichedContext({
961
- stack: makeStack({ primary: 'Python', frameworks: ['FastAPI'] }),
962
- primaryFramework: { name: 'FastAPI', version: '0.104.1', category: 'web', confidence: 0.99 },
963
- projectStructure: 'clean-architecture',
964
- });
965
-
966
- const result = frameworkModuleStructure(ctx);
967
-
968
- expect(result).toContain('src/[projeto]/');
969
- expect(result).toContain('domain/');
970
- expect(result).toContain('entities/');
971
- expect(result).toContain('application/');
972
- expect(result).toContain('infrastructure/');
973
- expect(result).toContain('presentation/');
974
- });
975
-
976
- it('should return generic fallback structure', () => {
977
- const ctx = makeEnrichedContext({
978
- stack: makeStack({ primary: 'UnknownLang', frameworks: [] }),
979
- primaryFramework: null,
980
- projectStructure: 'unknown',
981
- });
982
-
983
- const result = frameworkModuleStructure(ctx);
984
-
985
- expect(result).toContain('src/');
986
- expect(result).toContain('controllers/');
987
- expect(result).toContain('services/');
988
- expect(result).toContain('models/');
989
- });
990
- });
991
-
992
- // ─ 15. frameworkSecurityChecklist ─
993
- describe('frameworkSecurityChecklist', () => {
994
- it('should return FastAPI security checklist', () => {
995
- const ctx = makeEnrichedContext({
996
- primaryFramework: { name: 'FastAPI', version: '0.104.1', category: 'web', confidence: 0.99 },
997
- });
998
-
999
- const result = frameworkSecurityChecklist(ctx);
1000
-
1001
- expect(result).toContain('Checklist Segurança — FastAPI');
1002
- expect(result).toContain('Pydantic models');
1003
- expect(result).toContain('OAuth2PasswordBearer');
1004
- expect(result).toContain('CORS');
1005
- expect(result).toContain('Rate limiting');
1006
- expect(result).toContain('passlib');
1007
- expect(result).toContain('JWT tokens');
1008
- });
1009
-
1010
- it('should return Django security checklist', () => {
1011
- const ctx = makeEnrichedContext({
1012
- stack: makeStack({ primary: 'Python', frameworks: ['Django'] }),
1013
- primaryFramework: { name: 'Django', version: '4.2', category: 'web', confidence: 0.99 },
1014
- });
1015
-
1016
- const result = frameworkSecurityChecklist(ctx);
1017
-
1018
- expect(result).toContain('Checklist Segurança — Django');
1019
- expect(result).toContain('CSRF protection');
1020
- expect(result).toContain('XSS protection');
1021
- expect(result).toContain('SQL Injection');
1022
- expect(result).toContain('SECURE_SSL_REDIRECT');
1023
- expect(result).toContain('DEBUG = False');
1024
- });
1025
-
1026
- it('should return NestJS security checklist', () => {
1027
- const ctx = makeEnrichedContext({
1028
- primaryFramework: { name: 'NestJS', version: '10.2.8', category: 'web', confidence: 0.99 },
1029
- });
1030
-
1031
- const result = frameworkSecurityChecklist(ctx);
1032
-
1033
- expect(result).toContain('Checklist Segurança — NestJS');
1034
- expect(result).toContain('Helmet');
1035
- expect(result).toContain('CORS');
1036
- expect(result).toContain('Rate limiting');
1037
- expect(result).toContain('class-validator');
1038
- expect(result).toContain('Guards');
1039
- expect(result).toContain('JWT');
1040
- expect(result).toContain('npm audit');
1041
- });
1042
-
1043
- it('should return Express security checklist', () => {
1044
- const ctx = makeEnrichedContext({
1045
- primaryFramework: { name: 'Express', version: '4.18.2', category: 'web', confidence: 0.99 },
1046
- });
1047
-
1048
- const result = frameworkSecurityChecklist(ctx);
1049
-
1050
- expect(result).toContain('Checklist Segurança — Express');
1051
- expect(result).toContain('Helmet.js');
1052
- expect(result).toContain('CORS');
1053
- expect(result).toContain('Rate limiting');
1054
- expect(result).toContain('Input validation');
1055
- expect(result).toContain('JWT');
1056
- });
1057
-
1058
- it('should return Spring Boot security checklist', () => {
1059
- const ctx = makeEnrichedContext({
1060
- stack: makeStack({ primary: 'Java', frameworks: ['Spring Boot'] }),
1061
- primaryFramework: { name: 'Spring Boot', version: '3.1.5', category: 'web', confidence: 0.99 },
1062
- });
1063
-
1064
- const result = frameworkSecurityChecklist(ctx);
1065
-
1066
- expect(result).toContain('Checklist Segurança — Spring Boot');
1067
- expect(result).toContain('Spring Security');
1068
- expect(result).toContain('CSRF');
1069
- expect(result).toContain('CORS');
1070
- expect(result).toContain('BCrypt');
1071
- });
1072
-
1073
- it('should return Laravel security checklist', () => {
1074
- const ctx = makeEnrichedContext({
1075
- stack: makeStack({ primary: 'PHP', frameworks: ['Laravel'] }),
1076
- primaryFramework: { name: 'Laravel', version: '10.0', category: 'web', confidence: 0.99 },
1077
- });
1078
-
1079
- const result = frameworkSecurityChecklist(ctx);
1080
-
1081
- expect(result).toContain('Checklist Segurança — Laravel');
1082
- expect(result).toContain('CSRF token');
1083
- expect(result).toContain('Eloquent');
1084
- expect(result).toContain('Form Requests');
1085
- expect(result).toContain('Sanctum/Passport');
1086
- });
1087
-
1088
- it('should return Python fallback security checklist', () => {
1089
- const ctx = makeEnrichedContext({
1090
- stack: makeStack({ primary: 'Python', frameworks: [] }),
1091
- primaryFramework: null,
1092
- });
1093
-
1094
- const result = frameworkSecurityChecklist(ctx);
1095
-
1096
- expect(result).toContain('Checklist Segurança — Python');
1097
- expect(result).toContain('pydantic');
1098
- expect(result).toContain('Queries parametrizadas');
1099
- expect(result).toContain('pip-audit');
1100
- });
1101
-
1102
- it('should return Go fallback security checklist', () => {
1103
- const ctx = makeEnrichedContext({
1104
- stack: makeStack({ primary: 'Go', frameworks: [] }),
1105
- primaryFramework: null,
1106
- });
1107
-
1108
- const result = frameworkSecurityChecklist(ctx);
1109
-
1110
- expect(result).toContain('Checklist Segurança — Go');
1111
- expect(result).toContain('validator');
1112
- expect(result).toContain('Prepared statements');
1113
- expect(result).toContain('govulncheck');
1114
- });
1115
-
1116
- it('should return generic fallback when no framework or language match', () => {
1117
- const ctx = makeEnrichedContext({
1118
- stack: makeStack({ primary: 'UnknownLang', frameworks: [] }),
1119
- primaryFramework: null,
1120
- });
1121
-
1122
- const result = frameworkSecurityChecklist(ctx);
1123
-
1124
- expect(result).toContain('Checklist Segurança — UnknownLang');
1125
- expect(result).toContain('Inputs sanitizados');
1126
- expect(result).toContain('CSRF tokens');
1127
- expect(result).toContain('HTTPS');
1128
- });
1129
- });
1130
- });