@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
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAG3D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,8CAA8C;AAC9C,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC"}
@@ -1,7 +0,0 @@
1
- /**
2
- * Git History Cache — Serialize/deserialize GitHistoryReport
3
- */
4
- import type { GitHistoryReport } from './git-history.js';
5
- export declare function saveToCache(report: GitHistoryReport, projectPath: string, cacheDir?: string): void;
6
- export declare function loadFromCache(projectPath: string, cacheDir?: string, maxAgeMs?: number): GitHistoryReport | null;
7
- //# sourceMappingURL=git-cache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git-cache.d.ts","sourceRoot":"","sources":["../../src/infrastructure/git-cache.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,wBAAgB,WAAW,CACzB,MAAM,EAAE,gBAAgB,EACxB,WAAW,EAAE,MAAM,EACnB,QAAQ,SAAqB,GAC5B,IAAI,CAsBN;AAED,wBAAgB,aAAa,CAC3B,WAAW,EAAE,MAAM,EACnB,QAAQ,SAAqB,EAC7B,QAAQ,SAAU,GACjB,gBAAgB,GAAG,IAAI,CAWzB"}
@@ -1,41 +0,0 @@
1
- /**
2
- * Git History Cache — Serialize/deserialize GitHistoryReport
3
- */
4
- import * as fs from 'fs';
5
- import * as path from 'path';
6
- export function saveToCache(report, projectPath, cacheDir = '.architect-cache') {
7
- const dir = path.join(projectPath, cacheDir);
8
- fs.mkdirSync(dir, { recursive: true });
9
- const serializable = {
10
- ...report,
11
- modules: report.modules.map(m => ({
12
- ...m,
13
- files: m.files.map(f => ({
14
- ...f,
15
- authors: Array.from(f.authors),
16
- lastModified: f.lastModified.toISOString(),
17
- })),
18
- })),
19
- hotspots: report.hotspots.map(f => ({
20
- ...f,
21
- authors: Array.from(f.authors),
22
- lastModified: f.lastModified.toISOString(),
23
- })),
24
- };
25
- fs.writeFileSync(path.join(dir, 'git-history.json'), JSON.stringify(serializable, null, 2));
26
- }
27
- export function loadFromCache(projectPath, cacheDir = '.architect-cache', maxAgeMs = 3600000) {
28
- const cachePath = path.join(projectPath, cacheDir, 'git-history.json');
29
- if (!fs.existsSync(cachePath))
30
- return null;
31
- try {
32
- const raw = JSON.parse(fs.readFileSync(cachePath, 'utf-8'));
33
- if (Date.now() - new Date(raw.analyzedAt).getTime() > maxAgeMs)
34
- return null;
35
- return raw;
36
- }
37
- catch {
38
- return null;
39
- }
40
- }
41
- //# sourceMappingURL=git-cache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git-cache.js","sourceRoot":"","sources":["../../src/infrastructure/git-cache.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B,MAAM,UAAU,WAAW,CACzB,MAAwB,EACxB,WAAmB,EACnB,QAAQ,GAAG,kBAAkB;IAE7B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC7C,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEvC,MAAM,YAAY,GAAG;QACnB,GAAG,MAAM;QACT,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAChC,GAAG,CAAC;YACJ,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACvB,GAAG,CAAC;gBACJ,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC9B,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE;aAC3C,CAAC,CAAC;SACJ,CAAC,CAAC;QACH,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAClC,GAAG,CAAC;YACJ,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;YAC9B,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE;SAC3C,CAAC,CAAC;KACJ,CAAC;IAEF,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC9F,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,WAAmB,EACnB,QAAQ,GAAG,kBAAkB,EAC7B,QAAQ,GAAG,OAAO;IAElB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IACvE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAE3C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC5D,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,GAAG,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC5E,OAAO,GAAG,CAAC;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -1,113 +0,0 @@
1
- /**
2
- * Git History Analyzer — Temporal analysis of codebase evolution
3
- *
4
- * Reads git log to build velocity vectors, churn rates, and hotspot maps.
5
- * Enables Architect v4's predictive capabilities.
6
- *
7
- * Key metrics per module:
8
- * - Commit frequency (commits/week rolling 4-week average)
9
- * - Churn rate (lines added + deleted per commit)
10
- * - Author diversity (bus factor proxy)
11
- * - Change coupling (files that change together)
12
- *
13
- * @author Camilo Girardelli — Girardelli Tecnologia
14
- * @license MIT
15
- */
16
- export interface GitCommit {
17
- hash: string;
18
- author: string;
19
- date: Date;
20
- message: string;
21
- files: FileChange[];
22
- }
23
- export interface FileChange {
24
- path: string;
25
- additions: number;
26
- deletions: number;
27
- }
28
- export interface FileHistory {
29
- path: string;
30
- commits: number;
31
- totalAdditions: number;
32
- totalDeletions: number;
33
- churnRate: number;
34
- authors: Set<string>;
35
- busFactor: number;
36
- lastModified: Date;
37
- weeklyCommitRate: number;
38
- isHotspot: boolean;
39
- }
40
- export interface ModuleHistory {
41
- modulePath: string;
42
- files: FileHistory[];
43
- aggregateCommits: number;
44
- aggregateChurn: number;
45
- avgWeeklyRate: number;
46
- topHotspots: FileHistory[];
47
- velocityVector: VelocityVector;
48
- busFactor: number;
49
- }
50
- export interface VelocityVector {
51
- /** Commit rate trend: positive = accelerating, negative = decelerating */
52
- commitAcceleration: number;
53
- /** Churn trend: positive = increasing complexity, negative = stabilizing */
54
- churnTrend: number;
55
- /** Overall direction: "accelerating" | "stable" | "decelerating" */
56
- direction: 'accelerating' | 'stable' | 'decelerating';
57
- }
58
- export interface ChangeCoupling {
59
- fileA: string;
60
- fileB: string;
61
- cochangeCount: number;
62
- confidence: number;
63
- }
64
- export interface GitHistoryReport {
65
- projectPath: string;
66
- analyzedAt: string;
67
- periodWeeks: number;
68
- totalCommits: number;
69
- totalAuthors: number;
70
- modules: ModuleHistory[];
71
- hotspots: FileHistory[];
72
- changeCouplings: ChangeCoupling[];
73
- commitTimeline: WeeklySnapshot[];
74
- }
75
- export interface WeeklySnapshot {
76
- weekStart: string;
77
- commits: number;
78
- churn: number;
79
- activeFiles: number;
80
- }
81
- export interface GitAnalyzerConfig {
82
- /** How many weeks of history to analyze (default: 24) */
83
- periodWeeks?: number;
84
- /** Rolling window for averages (default: 4 weeks) */
85
- rollingWindowWeeks?: number;
86
- /** Churn threshold to flag as hotspot (default: 500 lines) */
87
- hotspotChurnThreshold?: number;
88
- /** Minimum co-change count for coupling (default: 3) */
89
- couplingMinCochanges?: number;
90
- /** Path to cache dir (default: .architect-cache/) */
91
- cacheDir?: string;
92
- }
93
- export declare class GitHistoryAnalyzer {
94
- private config;
95
- constructor(config?: GitAnalyzerConfig);
96
- /**
97
- * Analyze git history for the project at the given path.
98
- * Returns a comprehensive GitHistoryReport.
99
- */
100
- analyze(projectPath: string): Promise<GitHistoryReport>;
101
- private parseGitLog;
102
- private parseLogOutput;
103
- private buildFileHistories;
104
- private groupByModule;
105
- private calculateVelocity;
106
- private detectHotspots;
107
- private detectChangeCoupling;
108
- private buildTimeline;
109
- private validateGitRepo;
110
- private getSinceDate;
111
- private getModulePath;
112
- }
113
- //# sourceMappingURL=git-history.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git-history.d.ts","sourceRoot":"","sources":["../../src/infrastructure/git-history.ts"],"names":[],"mappings":"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"}
@@ -1,339 +0,0 @@
1
- /**
2
- * Git History Analyzer — Temporal analysis of codebase evolution
3
- *
4
- * Reads git log to build velocity vectors, churn rates, and hotspot maps.
5
- * Enables Architect v4's predictive capabilities.
6
- *
7
- * Key metrics per module:
8
- * - Commit frequency (commits/week rolling 4-week average)
9
- * - Churn rate (lines added + deleted per commit)
10
- * - Author diversity (bus factor proxy)
11
- * - Change coupling (files that change together)
12
- *
13
- * @author Camilo Girardelli — Girardelli Tecnologia
14
- * @license MIT
15
- */
16
- import { exec } from 'child_process';
17
- import { promisify } from 'util';
18
- import { logger } from './logger.js';
19
- const execAsync = promisify(exec);
20
- const DEFAULT_CONFIG = {
21
- periodWeeks: 24,
22
- rollingWindowWeeks: 4,
23
- hotspotChurnThreshold: 500,
24
- couplingMinCochanges: 3,
25
- cacheDir: '.architect-cache',
26
- };
27
- // ═══════════════════════════════════════════════════════════════
28
- // GIT HISTORY ANALYZER
29
- // ═══════════════════════════════════════════════════════════════
30
- export class GitHistoryAnalyzer {
31
- constructor(config) {
32
- this.config = { ...DEFAULT_CONFIG, ...config };
33
- }
34
- /**
35
- * Analyze git history for the project at the given path.
36
- * Returns a comprehensive GitHistoryReport.
37
- */
38
- async analyze(projectPath) {
39
- logger.debug('Starting GitHistory analysis', { projectPath, periodWeeks: this.config.periodWeeks });
40
- await this.validateGitRepo(projectPath);
41
- const sinceDate = this.getSinceDate();
42
- const commits = await this.parseGitLog(projectPath, sinceDate);
43
- logger.debug('Git history parsed', { commitCount: commits.length });
44
- const fileHistories = this.buildFileHistories(commits);
45
- const modules = this.groupByModule(fileHistories);
46
- const hotspots = this.detectHotspots(fileHistories);
47
- const changeCouplings = this.detectChangeCoupling(commits);
48
- const timeline = this.buildTimeline(commits);
49
- const allAuthors = new Set();
50
- commits.forEach(c => allAuthors.add(c.author));
51
- return {
52
- projectPath,
53
- analyzedAt: new Date().toISOString(),
54
- periodWeeks: this.config.periodWeeks,
55
- totalCommits: commits.length,
56
- totalAuthors: allAuthors.size,
57
- modules,
58
- hotspots,
59
- changeCouplings,
60
- commitTimeline: timeline,
61
- };
62
- }
63
- // ── Git Log Parsing ──
64
- async parseGitLog(projectPath, since) {
65
- const cmd = `git log --format='%H|%an|%aI|%s' --numstat --since="${since}" -- .`;
66
- let output;
67
- try {
68
- const { stdout } = await execAsync(cmd, {
69
- cwd: projectPath,
70
- encoding: 'utf-8',
71
- maxBuffer: 10 * 1024 * 1024, // 10MB buffer for large repos
72
- });
73
- output = stdout;
74
- }
75
- catch (error) {
76
- logger.warn('Failed to parse git log. History features will be bypassed.', { error, cmd });
77
- return [];
78
- }
79
- return this.parseLogOutput(output);
80
- }
81
- parseLogOutput(output) {
82
- const commits = [];
83
- const lines = output.trim().split('\n');
84
- let current = null;
85
- for (const line of lines) {
86
- if (!line.trim()) {
87
- // Blank lines separate numstat blocks, but also appear between
88
- // the commit header and its numstat output. Only finalize a commit
89
- // on blank line if it already has file changes (otherwise it's just
90
- // the gap between header and numstat).
91
- if (current && current.files.length > 0) {
92
- commits.push(current);
93
- current = null;
94
- }
95
- continue;
96
- }
97
- // Commit header: hash|author|date|message
98
- if (line.includes('|') && !line.startsWith('\t') && /^[0-9a-f]{7,}/.test(line)) {
99
- if (current)
100
- commits.push(current);
101
- const parts = line.split('|');
102
- if (parts.length >= 4) {
103
- current = {
104
- hash: parts[0],
105
- author: parts[1],
106
- date: new Date(parts[2]),
107
- message: parts.slice(3).join('|'),
108
- files: [],
109
- };
110
- }
111
- continue;
112
- }
113
- // Numstat line: additions\tdeletions\tfilepath
114
- if (current && /^\d+\t\d+\t/.test(line)) {
115
- const [add, del, filePath] = line.split('\t');
116
- if (filePath && !filePath.includes('{') /* skip renames */) {
117
- current.files.push({
118
- path: filePath,
119
- additions: parseInt(add, 10) || 0,
120
- deletions: parseInt(del, 10) || 0,
121
- });
122
- }
123
- }
124
- }
125
- if (current)
126
- commits.push(current);
127
- return commits;
128
- }
129
- // ── File History Building ──
130
- buildFileHistories(commits) {
131
- const histories = new Map();
132
- const now = new Date();
133
- const windowMs = this.config.rollingWindowWeeks * 7 * 24 * 60 * 60 * 1000;
134
- const windowStart = new Date(now.getTime() - windowMs);
135
- for (const commit of commits) {
136
- for (const file of commit.files) {
137
- if (!histories.has(file.path)) {
138
- histories.set(file.path, {
139
- path: file.path,
140
- commits: 0,
141
- totalAdditions: 0,
142
- totalDeletions: 0,
143
- churnRate: 0,
144
- authors: new Set(),
145
- busFactor: 0,
146
- lastModified: commit.date,
147
- weeklyCommitRate: 0,
148
- isHotspot: false,
149
- });
150
- }
151
- const h = histories.get(file.path);
152
- h.commits++;
153
- h.totalAdditions += file.additions;
154
- h.totalDeletions += file.deletions;
155
- h.authors.add(commit.author);
156
- if (commit.date > h.lastModified) {
157
- h.lastModified = commit.date;
158
- }
159
- }
160
- }
161
- // Calculate derived metrics
162
- const recentCommits = commits.filter(c => c.date >= windowStart);
163
- const weekCount = Math.max(this.config.rollingWindowWeeks, 1);
164
- for (const [filePath, h] of histories) {
165
- h.churnRate = h.commits > 0
166
- ? (h.totalAdditions + h.totalDeletions) / h.commits
167
- : 0;
168
- h.busFactor = h.authors.size;
169
- // Weekly commit rate from rolling window
170
- const recentFileCommits = recentCommits.filter(c => c.files.some(f => f.path === filePath)).length;
171
- h.weeklyCommitRate = recentFileCommits / weekCount;
172
- // Hotspot: high churn + high frequency
173
- h.isHotspot = (h.totalAdditions + h.totalDeletions) >= this.config.hotspotChurnThreshold
174
- && h.weeklyCommitRate >= 1;
175
- }
176
- return histories;
177
- }
178
- // ── Module Grouping ──
179
- groupByModule(fileHistories) {
180
- const moduleMap = new Map();
181
- for (const [filePath, history] of fileHistories) {
182
- const modulePath = this.getModulePath(filePath);
183
- if (!moduleMap.has(modulePath)) {
184
- moduleMap.set(modulePath, []);
185
- }
186
- moduleMap.get(modulePath).push(history);
187
- }
188
- return Array.from(moduleMap.entries()).map(([modulePath, files]) => {
189
- const aggregateCommits = files.reduce((s, f) => s + f.commits, 0);
190
- const aggregateChurn = files.reduce((s, f) => s + f.totalAdditions + f.totalDeletions, 0);
191
- const avgWeeklyRate = files.reduce((s, f) => s + f.weeklyCommitRate, 0) / Math.max(files.length, 1);
192
- const allAuthors = new Set();
193
- files.forEach(f => f.authors.forEach(a => allAuthors.add(a)));
194
- const topHotspots = files
195
- .filter(f => f.isHotspot)
196
- .sort((a, b) => (b.totalAdditions + b.totalDeletions) - (a.totalAdditions + a.totalDeletions))
197
- .slice(0, 5);
198
- return {
199
- modulePath,
200
- files,
201
- aggregateCommits,
202
- aggregateChurn,
203
- avgWeeklyRate,
204
- topHotspots,
205
- velocityVector: this.calculateVelocity(files),
206
- busFactor: allAuthors.size,
207
- };
208
- }).sort((a, b) => b.aggregateChurn - a.aggregateChurn);
209
- }
210
- // ── Velocity Calculation ──
211
- calculateVelocity(files) {
212
- if (files.length === 0) {
213
- return { commitAcceleration: 0, churnTrend: 0, direction: 'stable' };
214
- }
215
- // Sort files by last modified (most recent first)
216
- const sorted = [...files].sort((a, b) => b.lastModified.getTime() - a.lastModified.getTime());
217
- // Split into halves: recent vs older
218
- const mid = Math.floor(sorted.length / 2) || 1;
219
- const recentHalf = sorted.slice(0, mid);
220
- const olderHalf = sorted.slice(mid);
221
- const recentAvgRate = recentHalf.reduce((s, f) => s + f.weeklyCommitRate, 0) / recentHalf.length;
222
- const olderAvgRate = olderHalf.length > 0
223
- ? olderHalf.reduce((s, f) => s + f.weeklyCommitRate, 0) / olderHalf.length
224
- : recentAvgRate;
225
- const recentAvgChurn = recentHalf.reduce((s, f) => s + f.churnRate, 0) / recentHalf.length;
226
- const olderAvgChurn = olderHalf.length > 0
227
- ? olderHalf.reduce((s, f) => s + f.churnRate, 0) / olderHalf.length
228
- : recentAvgChurn;
229
- const commitAcceleration = olderAvgRate > 0
230
- ? ((recentAvgRate - olderAvgRate) / olderAvgRate) * 100
231
- : 0;
232
- const churnTrend = olderAvgChurn > 0
233
- ? ((recentAvgChurn - olderAvgChurn) / olderAvgChurn) * 100
234
- : 0;
235
- let direction = 'stable';
236
- if (commitAcceleration > 15)
237
- direction = 'accelerating';
238
- else if (commitAcceleration < -15)
239
- direction = 'decelerating';
240
- return {
241
- commitAcceleration: Math.round(commitAcceleration * 10) / 10,
242
- churnTrend: Math.round(churnTrend * 10) / 10,
243
- direction,
244
- };
245
- }
246
- // ── Hotspot Detection ──
247
- detectHotspots(fileHistories) {
248
- return Array.from(fileHistories.values())
249
- .filter(f => f.isHotspot)
250
- .sort((a, b) => (b.totalAdditions + b.totalDeletions) - (a.totalAdditions + a.totalDeletions))
251
- .slice(0, 20);
252
- }
253
- // ── Change Coupling Detection ──
254
- detectChangeCoupling(commits) {
255
- const cochangeMap = new Map();
256
- const fileCommitCount = new Map();
257
- for (const commit of commits) {
258
- const files = commit.files.map(f => f.path).sort();
259
- for (const f of files) {
260
- fileCommitCount.set(f, (fileCommitCount.get(f) || 0) + 1);
261
- }
262
- // Pairwise co-change counting (limit to 10 files per commit to avoid explosion)
263
- const limited = files.slice(0, 10);
264
- for (let i = 0; i < limited.length; i++) {
265
- for (let j = i + 1; j < limited.length; j++) {
266
- const key = `${limited[i]}|||${limited[j]}`;
267
- cochangeMap.set(key, (cochangeMap.get(key) || 0) + 1);
268
- }
269
- }
270
- }
271
- const couplings = [];
272
- for (const [key, count] of cochangeMap) {
273
- if (count < this.config.couplingMinCochanges)
274
- continue;
275
- const [fileA, fileB] = key.split('|||');
276
- const maxCommits = Math.max(fileCommitCount.get(fileA) || 1, fileCommitCount.get(fileB) || 1);
277
- couplings.push({
278
- fileA,
279
- fileB,
280
- cochangeCount: count,
281
- confidence: Math.round((count / maxCommits) * 100) / 100,
282
- });
283
- }
284
- return couplings
285
- .sort((a, b) => b.confidence - a.confidence)
286
- .slice(0, 50);
287
- }
288
- // ── Timeline Building ──
289
- buildTimeline(commits) {
290
- if (commits.length === 0)
291
- return [];
292
- const snapshots = new Map();
293
- const toMonday = (d) => {
294
- d.setHours(0, 0, 0, 0);
295
- d.setDate(d.getDate() - ((d.getDay() + 6) % 7));
296
- return d.toISOString().split('T')[0];
297
- };
298
- const now = new Date();
299
- for (let w = 0; w < this.config.periodWeeks; w++) {
300
- const key = toMonday(new Date(now.getTime() - w * 604800000));
301
- if (!snapshots.has(key)) {
302
- snapshots.set(key, { weekStart: key, commits: 0, churn: 0, activeFiles: 0 });
303
- }
304
- }
305
- for (const commit of commits) {
306
- const key = toMonday(new Date(commit.date));
307
- const snap = snapshots.get(key);
308
- if (snap) {
309
- snap.commits++;
310
- snap.churn += commit.files.reduce((s, f) => s + f.additions + f.deletions, 0);
311
- snap.activeFiles += commit.files.length;
312
- }
313
- }
314
- return Array.from(snapshots.values()).sort((a, b) => a.weekStart.localeCompare(b.weekStart));
315
- }
316
- // ── Utilities ──
317
- async validateGitRepo(projectPath) {
318
- try {
319
- await execAsync('git rev-parse --is-inside-work-tree', {
320
- cwd: projectPath,
321
- encoding: 'utf-8',
322
- });
323
- }
324
- catch {
325
- throw new Error(`Not a git repository: ${projectPath}`);
326
- }
327
- }
328
- getSinceDate() {
329
- const d = new Date();
330
- d.setDate(d.getDate() - (this.config.periodWeeks * 7));
331
- return d.toISOString().split('T')[0];
332
- }
333
- getModulePath(filePath) {
334
- const parts = filePath.split('/');
335
- // Use first directory as module, or "root" if no directory
336
- return parts.length > 1 ? parts[0] : 'root';
337
- }
338
- }
339
- //# sourceMappingURL=git-history.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git-history.js","sourceRoot":"","sources":["../../src/infrastructure/git-history.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- /**
2
- * Structured Logger for Architect
3
- * Provides leveled logging that respects CLI verbosity and environment.
4
- */
5
- export type LogLevel = 'debug' | 'info' | 'warn' | 'error';
6
- declare class Logger {
7
- private isVerbose;
8
- private isJson;
9
- setup(options: {
10
- verbose?: boolean;
11
- json?: boolean;
12
- }): void;
13
- debug(message: string, meta?: Record<string, any>): void;
14
- info(message: string, meta?: Record<string, any>): void;
15
- warn(message: string, meta?: Record<string, any>): void;
16
- error(message: string, error?: Error | unknown, meta?: Record<string, any>): void;
17
- private log;
18
- }
19
- export declare const logger: Logger;
20
- export {};
21
- //# sourceMappingURL=logger.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/infrastructure/logger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D,cAAM,MAAM;IACV,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAS;IAEvB,KAAK,CAAC,OAAO,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;IAK3D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAKxD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAKvD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAIvD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAQjF,OAAO,CAAC,GAAG;CA2BZ;AAED,eAAO,MAAM,MAAM,QAAe,CAAC"}
@@ -1,59 +0,0 @@
1
- /**
2
- * Structured Logger for Architect
3
- * Provides leveled logging that respects CLI verbosity and environment.
4
- */
5
- class Logger {
6
- constructor() {
7
- this.isVerbose = false;
8
- this.isJson = false;
9
- }
10
- setup(options) {
11
- if (options.verbose !== undefined)
12
- this.isVerbose = options.verbose;
13
- if (options.json !== undefined)
14
- this.isJson = options.json;
15
- }
16
- debug(message, meta) {
17
- if (!this.isVerbose)
18
- return;
19
- this.log('debug', message, meta);
20
- }
21
- info(message, meta) {
22
- if (!this.isVerbose)
23
- return; // Info behaves like verbose debug by default unless needed
24
- this.log('info', message, meta);
25
- }
26
- warn(message, meta) {
27
- this.log('warn', message, meta);
28
- }
29
- error(message, error, meta) {
30
- const errorMeta = error instanceof Error
31
- ? { errorMessage: error.message, stack: this.isVerbose ? error.stack : undefined, ...meta }
32
- : { rawError: String(error), ...meta };
33
- this.log('error', message, errorMeta);
34
- }
35
- log(level, message, meta) {
36
- if (this.isJson) {
37
- // In JSON mode, output minimal structured error logic inside stderr so it doesn't break stdout pipes.
38
- process.stderr.write(JSON.stringify({ level, message, timestamp: new Date().toISOString(), ...meta }) + '\n');
39
- return;
40
- }
41
- // Human-readable CLI formatting
42
- const timestamp = new Date().toISOString().split('T')[1].slice(0, 12);
43
- const color = {
44
- debug: '\x1b[38;5;240m', // gray
45
- info: '\x1b[38;5;33m', // blue
46
- warn: '\x1b[38;5;208m', // orange
47
- error: '\x1b[38;5;196m', // red
48
- }[level];
49
- const reset = '\x1b[0m';
50
- const dim = '\x1b[2m';
51
- let msg = `[${timestamp}] ${color}● ${level.toUpperCase().padEnd(5)}${reset} ${message}`;
52
- if (meta && Object.keys(meta).length > 0) {
53
- msg += ` ${dim}${JSON.stringify(meta)}${reset}`;
54
- }
55
- process.stderr.write(msg + '\n');
56
- }
57
- }
58
- export const logger = new Logger();
59
- //# sourceMappingURL=logger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/infrastructure/logger.ts"],"names":[],"mappings":"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"}