@girardelli/architect 5.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 (335) hide show
  1. package/dist/{cli.d.ts → src/adapters/cli.d.ts} +1 -2
  2. package/dist/{cli.js → src/adapters/cli.js} +191 -213
  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/src/adapters/html-reporter/scripts.d.ts +5 -0
  8. package/dist/src/adapters/html-reporter/scripts.js +400 -0
  9. package/dist/src/adapters/html-reporter/scripts.js.map +1 -0
  10. package/dist/src/adapters/html-reporter/sections/agents.d.ts +2 -0
  11. package/dist/src/adapters/html-reporter/sections/agents.js +260 -0
  12. package/dist/src/adapters/html-reporter/sections/agents.js.map +1 -0
  13. package/dist/src/adapters/html-reporter/sections/anti-patterns.d.ts +13 -0
  14. package/dist/src/adapters/html-reporter/sections/anti-patterns.js +64 -0
  15. package/dist/src/adapters/html-reporter/sections/anti-patterns.js.map +1 -0
  16. package/dist/src/adapters/html-reporter/sections/header.d.ts +3 -0
  17. package/dist/src/adapters/html-reporter/sections/header.js +30 -0
  18. package/dist/src/adapters/html-reporter/sections/header.js.map +1 -0
  19. package/dist/src/adapters/html-reporter/sections/layers.d.ts +9 -0
  20. package/dist/src/adapters/html-reporter/sections/layers.js +143 -0
  21. package/dist/src/adapters/html-reporter/sections/layers.js.map +1 -0
  22. package/dist/src/adapters/html-reporter/sections/overview.d.ts +2 -0
  23. package/dist/src/adapters/html-reporter/sections/overview.js +58 -0
  24. package/dist/src/adapters/html-reporter/sections/overview.js.map +1 -0
  25. package/dist/src/adapters/html-reporter/sections/refactoring-plan.d.ts +3 -0
  26. package/dist/src/adapters/html-reporter/sections/refactoring-plan.js +151 -0
  27. package/dist/src/adapters/html-reporter/sections/refactoring-plan.js.map +1 -0
  28. package/dist/src/adapters/html-reporter/sections/score.d.ts +7 -0
  29. package/dist/src/adapters/html-reporter/sections/score.js +70 -0
  30. package/dist/src/adapters/html-reporter/sections/score.js.map +1 -0
  31. package/dist/src/adapters/html-reporter/sections/suggestions.d.ts +7 -0
  32. package/dist/src/adapters/html-reporter/sections/suggestions.js +34 -0
  33. package/dist/src/adapters/html-reporter/sections/suggestions.js.map +1 -0
  34. package/dist/src/adapters/html-reporter/styles.d.ts +1 -0
  35. package/dist/src/adapters/html-reporter/styles.js +526 -0
  36. package/dist/src/adapters/html-reporter/styles.js.map +1 -0
  37. package/dist/src/adapters/html-reporter/utils_adapters.d.ts +20 -0
  38. package/dist/src/adapters/html-reporter/utils_adapters.js +32 -0
  39. package/dist/src/adapters/html-reporter/utils_adapters.js.map +1 -0
  40. package/dist/src/adapters/html-reporter/utils_sections.d.ts +7 -0
  41. package/dist/src/adapters/html-reporter/utils_sections.js +58 -0
  42. package/dist/src/adapters/html-reporter/utils_sections.js.map +1 -0
  43. package/dist/src/adapters/html-reporter.d.ts +10 -0
  44. package/dist/src/adapters/html-reporter.js +97 -0
  45. package/dist/src/adapters/html-reporter.js.map +1 -0
  46. package/dist/src/adapters/progress-logger.d.ts +55 -0
  47. package/dist/src/adapters/progress-logger.js +200 -0
  48. package/dist/src/adapters/progress-logger.js.map +1 -0
  49. package/dist/{refactor-reporter.d.ts → src/adapters/refactor-reporter.d.ts} +1 -2
  50. package/dist/{refactor-reporter.js → src/adapters/refactor-reporter.js} +1 -1
  51. package/dist/src/adapters/refactor-reporter.js.map +1 -0
  52. package/dist/{reporter.d.ts → src/adapters/reporter.d.ts} +1 -2
  53. package/dist/src/adapters/reporter.js.map +1 -0
  54. package/dist/src/core/GenesisTerminal.d.ts +8 -0
  55. package/dist/src/core/GenesisTerminal.js +105 -0
  56. package/dist/src/core/GenesisTerminal.js.map +1 -0
  57. package/dist/{index.d.ts → src/core/architect.d.ts} +4 -18
  58. package/dist/{index.js → src/core/architect.js} +22 -21
  59. package/dist/src/core/architect.js.map +1 -0
  60. package/dist/tests/architect-adapter-enrichment.test.d.ts +1 -0
  61. package/dist/tests/architect-adapter-enrichment.test.js +11 -0
  62. package/dist/tests/architect-adapter-enrichment.test.js.map +1 -0
  63. package/dist/tests/github-action.test.d.ts +1 -0
  64. package/dist/tests/github-action.test.js +92 -0
  65. package/dist/tests/github-action.test.js.map +1 -0
  66. package/package.json +15 -65
  67. package/src/adapters/cli.ts +492 -0
  68. package/src/adapters/github-action.ts +109 -0
  69. package/src/adapters/html-reporter/scripts.ts +402 -0
  70. package/src/adapters/html-reporter/sections/agents.ts +267 -0
  71. package/src/adapters/html-reporter/sections/anti-patterns.ts +81 -0
  72. package/src/adapters/html-reporter/sections/header.ts +35 -0
  73. package/src/adapters/html-reporter/sections/layers.ts +165 -0
  74. package/src/adapters/html-reporter/sections/overview.ts +64 -0
  75. package/src/adapters/html-reporter/sections/refactoring-plan.ts +166 -0
  76. package/src/adapters/html-reporter/sections/score.ts +80 -0
  77. package/src/adapters/html-reporter/sections/suggestions.ts +39 -0
  78. package/src/adapters/html-reporter/styles.ts +525 -0
  79. package/src/adapters/html-reporter/utils_adapters.ts +39 -0
  80. package/src/adapters/html-reporter/utils_sections.ts +55 -0
  81. package/src/adapters/html-reporter.ts +102 -0
  82. package/src/adapters/progress-logger.ts +236 -0
  83. package/src/{refactor-reporter.ts → adapters/refactor-reporter.ts} +2 -2
  84. package/src/{reporter.ts → adapters/reporter.ts} +1 -1
  85. package/src/core/GenesisTerminal.ts +127 -0
  86. package/src/{index.ts → core/architect.ts} +27 -45
  87. package/tests/github-action.test.ts +109 -0
  88. package/tsconfig.json +12 -19
  89. package/CONTRIBUTING.md +0 -140
  90. package/LICENSE +0 -21
  91. package/PROJECT_STRUCTURE.txt +0 -168
  92. package/README.md +0 -257
  93. package/architect-run.sh +0 -431
  94. package/assets/banner-v3.html +0 -561
  95. package/dist/agent-generator/context-enricher.d.ts +0 -58
  96. package/dist/agent-generator/context-enricher.d.ts.map +0 -1
  97. package/dist/agent-generator/context-enricher.js +0 -613
  98. package/dist/agent-generator/context-enricher.js.map +0 -1
  99. package/dist/agent-generator/domain-inferrer.d.ts +0 -52
  100. package/dist/agent-generator/domain-inferrer.d.ts.map +0 -1
  101. package/dist/agent-generator/domain-inferrer.js +0 -585
  102. package/dist/agent-generator/domain-inferrer.js.map +0 -1
  103. package/dist/agent-generator/framework-detector.d.ts +0 -40
  104. package/dist/agent-generator/framework-detector.d.ts.map +0 -1
  105. package/dist/agent-generator/framework-detector.js +0 -611
  106. package/dist/agent-generator/framework-detector.js.map +0 -1
  107. package/dist/agent-generator/index.d.ts +0 -47
  108. package/dist/agent-generator/index.d.ts.map +0 -1
  109. package/dist/agent-generator/index.js +0 -545
  110. package/dist/agent-generator/index.js.map +0 -1
  111. package/dist/agent-generator/stack-detector.d.ts +0 -14
  112. package/dist/agent-generator/stack-detector.d.ts.map +0 -1
  113. package/dist/agent-generator/stack-detector.js +0 -124
  114. package/dist/agent-generator/stack-detector.js.map +0 -1
  115. package/dist/agent-generator/templates/core/agents.d.ts +0 -17
  116. package/dist/agent-generator/templates/core/agents.d.ts.map +0 -1
  117. package/dist/agent-generator/templates/core/agents.js +0 -1256
  118. package/dist/agent-generator/templates/core/agents.js.map +0 -1
  119. package/dist/agent-generator/templates/core/architecture-rules.d.ts +0 -7
  120. package/dist/agent-generator/templates/core/architecture-rules.d.ts.map +0 -1
  121. package/dist/agent-generator/templates/core/architecture-rules.js +0 -274
  122. package/dist/agent-generator/templates/core/architecture-rules.js.map +0 -1
  123. package/dist/agent-generator/templates/core/general-rules.d.ts +0 -8
  124. package/dist/agent-generator/templates/core/general-rules.d.ts.map +0 -1
  125. package/dist/agent-generator/templates/core/general-rules.js +0 -301
  126. package/dist/agent-generator/templates/core/general-rules.js.map +0 -1
  127. package/dist/agent-generator/templates/core/hooks-generator.d.ts +0 -21
  128. package/dist/agent-generator/templates/core/hooks-generator.d.ts.map +0 -1
  129. package/dist/agent-generator/templates/core/hooks-generator.js +0 -233
  130. package/dist/agent-generator/templates/core/hooks-generator.js.map +0 -1
  131. package/dist/agent-generator/templates/core/index-md.d.ts +0 -7
  132. package/dist/agent-generator/templates/core/index-md.d.ts.map +0 -1
  133. package/dist/agent-generator/templates/core/index-md.js +0 -246
  134. package/dist/agent-generator/templates/core/index-md.js.map +0 -1
  135. package/dist/agent-generator/templates/core/orchestrator.d.ts +0 -8
  136. package/dist/agent-generator/templates/core/orchestrator.d.ts.map +0 -1
  137. package/dist/agent-generator/templates/core/orchestrator.js +0 -422
  138. package/dist/agent-generator/templates/core/orchestrator.js.map +0 -1
  139. package/dist/agent-generator/templates/core/preflight.d.ts +0 -8
  140. package/dist/agent-generator/templates/core/preflight.d.ts.map +0 -1
  141. package/dist/agent-generator/templates/core/preflight.js +0 -213
  142. package/dist/agent-generator/templates/core/preflight.js.map +0 -1
  143. package/dist/agent-generator/templates/core/quality-gates.d.ts +0 -11
  144. package/dist/agent-generator/templates/core/quality-gates.d.ts.map +0 -1
  145. package/dist/agent-generator/templates/core/quality-gates.js +0 -254
  146. package/dist/agent-generator/templates/core/quality-gates.js.map +0 -1
  147. package/dist/agent-generator/templates/core/security-rules.d.ts +0 -7
  148. package/dist/agent-generator/templates/core/security-rules.d.ts.map +0 -1
  149. package/dist/agent-generator/templates/core/security-rules.js +0 -528
  150. package/dist/agent-generator/templates/core/security-rules.js.map +0 -1
  151. package/dist/agent-generator/templates/core/skills-generator.d.ts +0 -19
  152. package/dist/agent-generator/templates/core/skills-generator.d.ts.map +0 -1
  153. package/dist/agent-generator/templates/core/skills-generator.js +0 -546
  154. package/dist/agent-generator/templates/core/skills-generator.js.map +0 -1
  155. package/dist/agent-generator/templates/core/workflow-fix-bug.d.ts +0 -7
  156. package/dist/agent-generator/templates/core/workflow-fix-bug.d.ts.map +0 -1
  157. package/dist/agent-generator/templates/core/workflow-fix-bug.js +0 -237
  158. package/dist/agent-generator/templates/core/workflow-fix-bug.js.map +0 -1
  159. package/dist/agent-generator/templates/core/workflow-new-feature.d.ts +0 -8
  160. package/dist/agent-generator/templates/core/workflow-new-feature.d.ts.map +0 -1
  161. package/dist/agent-generator/templates/core/workflow-new-feature.js +0 -321
  162. package/dist/agent-generator/templates/core/workflow-new-feature.js.map +0 -1
  163. package/dist/agent-generator/templates/core/workflow-review.d.ts +0 -7
  164. package/dist/agent-generator/templates/core/workflow-review.d.ts.map +0 -1
  165. package/dist/agent-generator/templates/core/workflow-review.js +0 -104
  166. package/dist/agent-generator/templates/core/workflow-review.js.map +0 -1
  167. package/dist/agent-generator/templates/domain/index.d.ts +0 -22
  168. package/dist/agent-generator/templates/domain/index.d.ts.map +0 -1
  169. package/dist/agent-generator/templates/domain/index.js +0 -1176
  170. package/dist/agent-generator/templates/domain/index.js.map +0 -1
  171. package/dist/agent-generator/templates/stack/index.d.ts +0 -8
  172. package/dist/agent-generator/templates/stack/index.d.ts.map +0 -1
  173. package/dist/agent-generator/templates/stack/index.js +0 -695
  174. package/dist/agent-generator/templates/stack/index.js.map +0 -1
  175. package/dist/agent-generator/templates/template-helpers.d.ts +0 -75
  176. package/dist/agent-generator/templates/template-helpers.d.ts.map +0 -1
  177. package/dist/agent-generator/templates/template-helpers.js +0 -726
  178. package/dist/agent-generator/templates/template-helpers.js.map +0 -1
  179. package/dist/agent-generator/types.d.ts +0 -196
  180. package/dist/agent-generator/types.d.ts.map +0 -1
  181. package/dist/agent-generator/types.js +0 -27
  182. package/dist/agent-generator/types.js.map +0 -1
  183. package/dist/analyzer.d.ts +0 -38
  184. package/dist/analyzer.d.ts.map +0 -1
  185. package/dist/analyzer.js +0 -383
  186. package/dist/analyzer.js.map +0 -1
  187. package/dist/analyzers/forecast.d.ts +0 -85
  188. package/dist/analyzers/forecast.d.ts.map +0 -1
  189. package/dist/analyzers/forecast.js +0 -337
  190. package/dist/analyzers/forecast.js.map +0 -1
  191. package/dist/analyzers/git-cache.d.ts +0 -7
  192. package/dist/analyzers/git-cache.d.ts.map +0 -1
  193. package/dist/analyzers/git-cache.js +0 -41
  194. package/dist/analyzers/git-cache.js.map +0 -1
  195. package/dist/analyzers/git-history.d.ts +0 -113
  196. package/dist/analyzers/git-history.d.ts.map +0 -1
  197. package/dist/analyzers/git-history.js +0 -333
  198. package/dist/analyzers/git-history.js.map +0 -1
  199. package/dist/analyzers/index.d.ts +0 -10
  200. package/dist/analyzers/index.d.ts.map +0 -1
  201. package/dist/analyzers/index.js +0 -7
  202. package/dist/analyzers/index.js.map +0 -1
  203. package/dist/analyzers/temporal-scorer.d.ts +0 -72
  204. package/dist/analyzers/temporal-scorer.d.ts.map +0 -1
  205. package/dist/analyzers/temporal-scorer.js +0 -140
  206. package/dist/analyzers/temporal-scorer.js.map +0 -1
  207. package/dist/anti-patterns.d.ts +0 -24
  208. package/dist/anti-patterns.d.ts.map +0 -1
  209. package/dist/anti-patterns.js +0 -230
  210. package/dist/anti-patterns.js.map +0 -1
  211. package/dist/cli.d.ts.map +0 -1
  212. package/dist/cli.js.map +0 -1
  213. package/dist/config.d.ts +0 -12
  214. package/dist/config.d.ts.map +0 -1
  215. package/dist/config.js +0 -110
  216. package/dist/config.js.map +0 -1
  217. package/dist/diagram.d.ts +0 -9
  218. package/dist/diagram.d.ts.map +0 -1
  219. package/dist/diagram.js +0 -116
  220. package/dist/diagram.js.map +0 -1
  221. package/dist/html-reporter.d.ts +0 -47
  222. package/dist/html-reporter.d.ts.map +0 -1
  223. package/dist/html-reporter.js +0 -1747
  224. package/dist/html-reporter.js.map +0 -1
  225. package/dist/index.d.ts.map +0 -1
  226. package/dist/index.js.map +0 -1
  227. package/dist/project-summarizer.d.ts +0 -38
  228. package/dist/project-summarizer.d.ts.map +0 -1
  229. package/dist/project-summarizer.js +0 -463
  230. package/dist/project-summarizer.js.map +0 -1
  231. package/dist/refactor-engine.d.ts +0 -18
  232. package/dist/refactor-engine.d.ts.map +0 -1
  233. package/dist/refactor-engine.js +0 -86
  234. package/dist/refactor-engine.js.map +0 -1
  235. package/dist/refactor-reporter.d.ts.map +0 -1
  236. package/dist/refactor-reporter.js.map +0 -1
  237. package/dist/reporter.d.ts.map +0 -1
  238. package/dist/reporter.js.map +0 -1
  239. package/dist/rules/barrel-optimizer.d.ts +0 -13
  240. package/dist/rules/barrel-optimizer.d.ts.map +0 -1
  241. package/dist/rules/barrel-optimizer.js +0 -77
  242. package/dist/rules/barrel-optimizer.js.map +0 -1
  243. package/dist/rules/dead-code-detector.d.ts +0 -21
  244. package/dist/rules/dead-code-detector.d.ts.map +0 -1
  245. package/dist/rules/dead-code-detector.js +0 -117
  246. package/dist/rules/dead-code-detector.js.map +0 -1
  247. package/dist/rules/hub-splitter.d.ts +0 -13
  248. package/dist/rules/hub-splitter.d.ts.map +0 -1
  249. package/dist/rules/hub-splitter.js +0 -110
  250. package/dist/rules/hub-splitter.js.map +0 -1
  251. package/dist/rules/import-organizer.d.ts +0 -13
  252. package/dist/rules/import-organizer.d.ts.map +0 -1
  253. package/dist/rules/import-organizer.js +0 -85
  254. package/dist/rules/import-organizer.js.map +0 -1
  255. package/dist/rules/module-grouper.d.ts +0 -13
  256. package/dist/rules/module-grouper.d.ts.map +0 -1
  257. package/dist/rules/module-grouper.js +0 -110
  258. package/dist/rules/module-grouper.js.map +0 -1
  259. package/dist/scanner.d.ts +0 -31
  260. package/dist/scanner.d.ts.map +0 -1
  261. package/dist/scanner.js +0 -328
  262. package/dist/scanner.js.map +0 -1
  263. package/dist/scorer.d.ts +0 -27
  264. package/dist/scorer.d.ts.map +0 -1
  265. package/dist/scorer.js +0 -229
  266. package/dist/scorer.js.map +0 -1
  267. package/dist/types.d.ts +0 -186
  268. package/dist/types.d.ts.map +0 -1
  269. package/dist/types.js +0 -2
  270. package/dist/types.js.map +0 -1
  271. package/examples/sample-report.md +0 -207
  272. package/jest.config.js +0 -18
  273. package/src/agent-generator/context-enricher.ts +0 -672
  274. package/src/agent-generator/domain-inferrer.ts +0 -635
  275. package/src/agent-generator/framework-detector.ts +0 -669
  276. package/src/agent-generator/index.ts +0 -634
  277. package/src/agent-generator/stack-detector.ts +0 -115
  278. package/src/agent-generator/templates/core/agents.ts +0 -1296
  279. package/src/agent-generator/templates/core/architecture-rules.ts +0 -287
  280. package/src/agent-generator/templates/core/general-rules.ts +0 -306
  281. package/src/agent-generator/templates/core/hooks-generator.ts +0 -242
  282. package/src/agent-generator/templates/core/index-md.ts +0 -260
  283. package/src/agent-generator/templates/core/orchestrator.ts +0 -459
  284. package/src/agent-generator/templates/core/preflight.ts +0 -215
  285. package/src/agent-generator/templates/core/quality-gates.ts +0 -256
  286. package/src/agent-generator/templates/core/security-rules.ts +0 -543
  287. package/src/agent-generator/templates/core/skills-generator.ts +0 -585
  288. package/src/agent-generator/templates/core/workflow-fix-bug.ts +0 -239
  289. package/src/agent-generator/templates/core/workflow-new-feature.ts +0 -323
  290. package/src/agent-generator/templates/core/workflow-review.ts +0 -106
  291. package/src/agent-generator/templates/domain/index.ts +0 -1201
  292. package/src/agent-generator/templates/stack/index.ts +0 -705
  293. package/src/agent-generator/templates/template-helpers.ts +0 -776
  294. package/src/agent-generator/types.ts +0 -232
  295. package/src/analyzer.ts +0 -447
  296. package/src/analyzers/forecast.ts +0 -496
  297. package/src/analyzers/git-cache.ts +0 -52
  298. package/src/analyzers/git-history.ts +0 -488
  299. package/src/analyzers/index.ts +0 -33
  300. package/src/analyzers/temporal-scorer.ts +0 -227
  301. package/src/anti-patterns.ts +0 -287
  302. package/src/cli.ts +0 -517
  303. package/src/config.ts +0 -123
  304. package/src/diagram.ts +0 -144
  305. package/src/html-reporter.ts +0 -1830
  306. package/src/project-summarizer.ts +0 -521
  307. package/src/refactor-engine.ts +0 -117
  308. package/src/rules/barrel-optimizer.ts +0 -97
  309. package/src/rules/dead-code-detector.ts +0 -132
  310. package/src/rules/hub-splitter.ts +0 -123
  311. package/src/rules/import-organizer.ts +0 -98
  312. package/src/rules/module-grouper.ts +0 -124
  313. package/src/scanner.ts +0 -344
  314. package/src/scorer.ts +0 -254
  315. package/src/types.ts +0 -193
  316. package/tests/agent-generator.test.ts +0 -427
  317. package/tests/analyzers-integration.test.ts +0 -174
  318. package/tests/anti-patterns.test.ts +0 -94
  319. package/tests/context-enricher.test.ts +0 -971
  320. package/tests/fixtures/monorepo/package.json +0 -6
  321. package/tests/fixtures/monorepo/packages/app/package.json +0 -12
  322. package/tests/fixtures/monorepo/packages/app/src/index.ts +0 -6
  323. package/tests/fixtures/monorepo/packages/core/package.json +0 -7
  324. package/tests/fixtures/monorepo/packages/core/src/index.ts +0 -7
  325. package/tests/forecast.test.ts +0 -509
  326. package/tests/framework-detector.test.ts +0 -1172
  327. package/tests/git-history.test.ts +0 -254
  328. package/tests/monorepo-scan.test.ts +0 -170
  329. package/tests/scanner.test.ts +0 -54
  330. package/tests/scorer.test.ts +0 -674
  331. package/tests/stack-detector.test.ts +0 -241
  332. package/tests/template-generation.test.ts +0 -706
  333. package/tests/template-helpers.test.ts +0 -1152
  334. package/tests/temporal-scorer.test.ts +0 -307
  335. /package/dist/{reporter.js → src/adapters/reporter.js} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"html-reporter.js","sourceRoot":"","sources":["../src/html-reporter.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,38 +0,0 @@
1
- import { AnalysisReport, ProjectSummary } from './types.js';
2
- /**
3
- * ProjectSummarizer — infers what a project does from its metadata,
4
- * structure, README, package.json, and file naming conventions.
5
- *
6
- * v5.0: Workspace-aware module inference, package.json-first descriptions,
7
- * entry point detection from `bin` fields, and keyword blacklisting.
8
- */
9
- export declare class ProjectSummarizer {
10
- /** Keywords that should never appear in project summaries */
11
- private static readonly KEYWORD_BLACKLIST;
12
- summarize(projectPath: string, report: AnalysisReport): ProjectSummary;
13
- private readPackageJson;
14
- private readReadme;
15
- private inferModules;
16
- /**
17
- * Workspace-aware module inference.
18
- * Uses package.json name, description, and file count from each workspace.
19
- */
20
- private inferModulesFromWorkspaces;
21
- /**
22
- * Get a meaningful description for a workspace.
23
- * Priority: package.json description > README first line > heuristic
24
- */
25
- private getWorkspaceDescription;
26
- private countFilesInDir;
27
- /**
28
- * Fallback module inference from directory structure (non-workspace projects)
29
- */
30
- private inferModulesFromStructure;
31
- private describeModule;
32
- private findEntryPoints;
33
- private extractKeywords;
34
- private buildTechStack;
35
- private buildDescription;
36
- private inferPurpose;
37
- }
38
- //# sourceMappingURL=project-summarizer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"project-summarizer.d.ts","sourceRoot":"","sources":["../src/project-summarizer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,cAAc,EAA2B,MAAM,YAAY,CAAC;AAErF;;;;;;GAMG;AACH,qBAAa,iBAAiB;IAE5B,6DAA6D;IAC7D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAItC;IAEH,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,cAAc;IAsBtE,OAAO,CAAC,eAAe;IA0BvB,OAAO,CAAC,UAAU;IAkBlB,OAAO,CAAC,YAAY;IAYpB;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IA8BlC;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA2B/B,OAAO,CAAC,eAAe;IAavB;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAgDjC,OAAO,CAAC,cAAc;IA0DtB,OAAO,CAAC,eAAe;IAkEvB,OAAO,CAAC,eAAe;IAyCvB,OAAO,CAAC,cAAc;IA0CtB,OAAO,CAAC,gBAAgB;IAkCxB,OAAO,CAAC,YAAY;CAoDrB"}
@@ -1,463 +0,0 @@
1
- import { readFileSync, existsSync } from 'fs';
2
- import { join, basename } from 'path';
3
- /**
4
- * ProjectSummarizer — infers what a project does from its metadata,
5
- * structure, README, package.json, and file naming conventions.
6
- *
7
- * v5.0: Workspace-aware module inference, package.json-first descriptions,
8
- * entry point detection from `bin` fields, and keyword blacklisting.
9
- */
10
- export class ProjectSummarizer {
11
- summarize(projectPath, report) {
12
- const packageInfo = this.readPackageJson(projectPath);
13
- const readmeContent = this.readReadme(projectPath);
14
- const modules = this.inferModules(report, projectPath);
15
- const entryPoints = this.findEntryPoints(report, projectPath);
16
- const keywords = this.extractKeywords(packageInfo, readmeContent, modules, report);
17
- const techStack = this.buildTechStack(report, packageInfo);
18
- const description = this.buildDescription(packageInfo, readmeContent, report);
19
- const purpose = this.inferPurpose(keywords, modules, report);
20
- return {
21
- description,
22
- purpose,
23
- modules,
24
- techStack,
25
- entryPoints,
26
- keywords,
27
- };
28
- }
29
- // ── Package.json ──
30
- readPackageJson(projectPath) {
31
- const candidates = [
32
- join(projectPath, 'package.json'),
33
- join(projectPath, 'pyproject.toml'),
34
- join(projectPath, 'pubspec.yaml'),
35
- join(projectPath, 'Cargo.toml'),
36
- join(projectPath, 'pom.xml'),
37
- join(projectPath, 'build.gradle'),
38
- ];
39
- for (const candidate of candidates) {
40
- if (existsSync(candidate)) {
41
- try {
42
- if (candidate.endsWith('.json')) {
43
- return JSON.parse(readFileSync(candidate, 'utf-8'));
44
- }
45
- // For non-JSON, return raw content as 'raw' field
46
- return { raw: readFileSync(candidate, 'utf-8'), type: basename(candidate) };
47
- }
48
- catch {
49
- // ignore
50
- }
51
- }
52
- }
53
- return {};
54
- }
55
- readReadme(projectPath) {
56
- const candidates = ['README.md', 'readme.md', 'README.txt', 'README', 'README.rst'];
57
- for (const name of candidates) {
58
- const path = join(projectPath, name);
59
- if (existsSync(path)) {
60
- try {
61
- // Read first 3000 chars — enough for description, skip excessive content
62
- return readFileSync(path, 'utf-8').slice(0, 3000);
63
- }
64
- catch {
65
- // ignore
66
- }
67
- }
68
- }
69
- return '';
70
- }
71
- // ── Module Inference — Workspace-Aware ──
72
- inferModules(report, projectPath) {
73
- const workspaces = report.projectInfo.workspaces;
74
- // If we have workspaces, use them as the authoritative module list
75
- if (workspaces && workspaces.length > 0) {
76
- return this.inferModulesFromWorkspaces(workspaces, report);
77
- }
78
- // Fallback: infer from directory structure
79
- return this.inferModulesFromStructure(report);
80
- }
81
- /**
82
- * Workspace-aware module inference.
83
- * Uses package.json name, description, and file count from each workspace.
84
- */
85
- inferModulesFromWorkspaces(workspaces, report) {
86
- return workspaces
87
- .map((ws) => {
88
- // Count files belonging to this workspace
89
- const wsPrefix = ws.relativePath + '/';
90
- const fileCount = report.dependencyGraph.nodes.filter((n) => n.startsWith(wsPrefix) || n.startsWith(ws.relativePath)).length;
91
- // Get description: prefer package.json description, then README, then heuristic
92
- const description = this.getWorkspaceDescription(ws);
93
- // Use the short name (last segment of npm scope or dir name)
94
- const displayName = ws.name.includes('/')
95
- ? ws.name.split('/').pop() || ws.name
96
- : basename(ws.relativePath);
97
- return {
98
- name: displayName,
99
- files: fileCount || this.countFilesInDir(ws.path),
100
- description,
101
- };
102
- })
103
- .filter((m) => m.files > 0)
104
- .sort((a, b) => b.files - a.files);
105
- }
106
- /**
107
- * Get a meaningful description for a workspace.
108
- * Priority: package.json description > README first line > heuristic
109
- */
110
- getWorkspaceDescription(ws) {
111
- // 1. package.json description (most reliable)
112
- if (ws.description && ws.description.trim().length > 5) {
113
- return ws.description.trim();
114
- }
115
- // 2. README.md first paragraph
116
- const readmePath = join(ws.path, 'README.md');
117
- if (existsSync(readmePath)) {
118
- try {
119
- const lines = readFileSync(readmePath, 'utf-8').split('\n');
120
- for (const line of lines) {
121
- const trimmed = line.trim();
122
- if (!trimmed || trimmed.startsWith('#') || trimmed.startsWith('[')
123
- || trimmed.startsWith('<') || trimmed.startsWith('!')
124
- || trimmed.length < 15)
125
- continue;
126
- return trimmed.slice(0, 200);
127
- }
128
- }
129
- catch {
130
- // skip
131
- }
132
- }
133
- // 3. Heuristic from name and deps
134
- return this.describeModule(basename(ws.relativePath), new Set(Object.keys(ws.dependencies)));
135
- }
136
- countFilesInDir(dirPath) {
137
- try {
138
- const { globSync } = require('glob');
139
- return globSync('**/*.{ts,tsx,js,jsx,py,java,go}', {
140
- cwd: dirPath,
141
- ignore: ['**/node_modules/**', '**/dist/**'],
142
- nodir: true,
143
- }).length;
144
- }
145
- catch {
146
- return 0;
147
- }
148
- }
149
- /**
150
- * Fallback module inference from directory structure (non-workspace projects)
151
- */
152
- inferModulesFromStructure(report) {
153
- const modules = new Map();
154
- for (const node of report.dependencyGraph.nodes) {
155
- // Safety: skip any node_modules paths that leaked through
156
- if (node.includes('node_modules'))
157
- continue;
158
- const parts = node.split('/');
159
- // Skip root-level files
160
- if (parts.length < 2)
161
- continue;
162
- // Get the module directory (2nd level, or 1st level for flat projects)
163
- let moduleName;
164
- const firstDir = parts[0];
165
- // Common source directories — go one level deeper
166
- if (['src', 'lib', 'app', 'packages', 'modules', 'features', 'apps'].includes(firstDir)) {
167
- moduleName = parts.length > 2 ? parts[1] : firstDir;
168
- }
169
- else if (firstDir === 'tests' || firstDir === 'test' || firstDir === '__tests__') {
170
- continue; // Skip test directories for module inference
171
- }
172
- else {
173
- moduleName = firstDir;
174
- }
175
- if (!modules.has(moduleName)) {
176
- modules.set(moduleName, { files: new Set(), hints: new Set() });
177
- }
178
- const mod = modules.get(moduleName);
179
- mod.files.add(node);
180
- // Extract hints from filenames
181
- const filename = basename(node).replace(/\.(ts|js|py|dart|go|java|rb|php|cs|tsx|jsx)$/, '');
182
- if (filename !== 'index' && filename !== 'main' && filename !== '__init__') {
183
- mod.hints.add(filename.toLowerCase());
184
- }
185
- }
186
- return [...modules.entries()]
187
- .filter(([, data]) => data.files.size > 0)
188
- .sort((a, b) => b[1].files.size - a[1].files.size)
189
- .slice(0, 15) // Top 15 modules
190
- .map(([name, data]) => ({
191
- name,
192
- files: data.files.size,
193
- description: this.describeModule(name, data.hints),
194
- }));
195
- }
196
- describeModule(name, hints) {
197
- const n = name.toLowerCase();
198
- const h = [...hints].join(' ');
199
- // Known module patterns
200
- const patterns = [
201
- [/auth/, 'Autenticação e autorização'],
202
- [/user/, 'Gestão de usuários'],
203
- [/payment|billing|charge|invoice/, 'Pagamentos e faturamento'],
204
- [/order|cart|checkout/, 'Pedidos e checkout'],
205
- [/product|catalog|item/, 'Catálogo de produtos'],
206
- [/notif/, 'Sistema de notificações'],
207
- [/email|mail|smtp/, 'Envio de emails'],
208
- [/report|analytics|dashboard/, 'Relatórios e analytics'],
209
- [/config|setting/, 'Configuração do sistema'],
210
- [/util|helper|common|shared/, 'Utilitários compartilhados'],
211
- [/middleware|interceptor|guard|pipe/, 'Middleware e interceptors'],
212
- [/database|db|migration|seed/, 'Banco de dados e migrations'],
213
- [/api|controller|route|endpoint/, 'API endpoints'],
214
- [/service|business|domain/, 'Lógica de negócio'],
215
- [/model|entity|schema/, 'Modelos de dados'],
216
- [/test|spec|fixture/, 'Testes'],
217
- [/validator|validation|sanitiz/, 'Validação de dados'],
218
- [/security|crypto|encrypt/, 'Segurança e criptografia'],
219
- [/cache|redis/, 'Cache e performance'],
220
- [/queue|worker|job|task/, 'Processamento assíncrono'],
221
- [/log|monitor|trace|metric/, 'Logging e monitoramento'],
222
- [/file|upload|storage|s3/, 'Armazenamento de arquivos'],
223
- [/search|elastic|index/, 'Busca e indexação'],
224
- [/chat|message|websocket|socket/, 'Comunicação em tempo real'],
225
- [/i18n|locale|translation/, 'Internacionalização'],
226
- [/theme|style|design/, 'Design system e temas'],
227
- [/component|widget|ui/, 'Componentes de UI'],
228
- [/page|screen|view/, 'Páginas/telas'],
229
- [/hook|composable/, 'Hooks/composables reutilizáveis'],
230
- [/store|state|redux|bloc/, 'Gerenciamento de estado'],
231
- [/navigation|router|routing/, 'Navegação e rotas'],
232
- [/bridge/, 'Camada de integração'],
233
- [/core/, 'Núcleo e orquestração'],
234
- [/event/, 'Sistema de eventos'],
235
- [/type/, 'Definições de tipos'],
236
- [/mcp/, 'MCP Server'],
237
- [/cli/, 'Interface de linha de comando'],
238
- [/cloud/, 'Serviço cloud / API'],
239
- [/autonomy/, 'Automação e self-healing'],
240
- [/app/, 'Aplicação principal'],
241
- ];
242
- const combined = `${n} ${h}`;
243
- for (const [regex, desc] of patterns) {
244
- if (regex.test(combined))
245
- return desc;
246
- }
247
- return `Módulo ${name}`;
248
- }
249
- // ── Entry Points — Workspace-Aware ──
250
- findEntryPoints(report, projectPath) {
251
- const entries = [];
252
- // 1. From workspace bin fields
253
- const workspaces = report.projectInfo.workspaces;
254
- if (workspaces) {
255
- for (const ws of workspaces) {
256
- if (ws.bin) {
257
- if (typeof ws.bin === 'string') {
258
- entries.push(`${ws.relativePath}/${ws.bin}`);
259
- }
260
- else {
261
- for (const [, binPath] of Object.entries(ws.bin)) {
262
- const fullPath = `${ws.relativePath}/${binPath}`;
263
- entries.push(fullPath);
264
- }
265
- }
266
- }
267
- if (ws.main) {
268
- entries.push(`${ws.relativePath}/${ws.main}`);
269
- }
270
- }
271
- }
272
- // 2. From root package.json bin/main
273
- const rootPkgPath = join(projectPath, 'package.json');
274
- if (existsSync(rootPkgPath)) {
275
- try {
276
- const pkg = JSON.parse(readFileSync(rootPkgPath, 'utf-8'));
277
- if (pkg.bin) {
278
- if (typeof pkg.bin === 'string') {
279
- entries.push(pkg.bin);
280
- }
281
- else {
282
- for (const [, binPath] of Object.entries(pkg.bin)) {
283
- entries.push(binPath);
284
- }
285
- }
286
- }
287
- if (pkg.main && !entries.includes(pkg.main)) {
288
- entries.push(pkg.main);
289
- }
290
- }
291
- catch {
292
- // skip
293
- }
294
- }
295
- // 3. Pattern-based detection (fallback)
296
- const entryPatterns = [
297
- /^(src\/)?(main|index|app|server|cli)\.(ts|js|py|dart|go|java)$/,
298
- /^(src\/)?bin\//,
299
- /^packages\/[^/]+\/src\/(main|index|app|server|cli)\.(ts|js)$/,
300
- /^packages\/[^/]+\/src\/bin\//,
301
- /manage\.py$/,
302
- /^main\.go$/,
303
- ];
304
- const patternEntries = report.dependencyGraph.nodes
305
- .filter(node => entryPatterns.some(p => p.test(node)))
306
- .filter(node => !entries.includes(node));
307
- entries.push(...patternEntries);
308
- return [...new Set(entries)].slice(0, 10);
309
- }
310
- // ── Keywords ──
311
- extractKeywords(packageInfo, readme, modules, report) {
312
- const keywords = new Set();
313
- // From package.json keywords
314
- if (Array.isArray(packageInfo.keywords)) {
315
- for (const kw of packageInfo.keywords) {
316
- if (typeof kw === 'string')
317
- keywords.add(kw.toLowerCase());
318
- }
319
- }
320
- // From module names (only clean names)
321
- for (const mod of modules) {
322
- const name = mod.name.toLowerCase();
323
- if (!ProjectSummarizer.KEYWORD_BLACKLIST.has(name)) {
324
- keywords.add(name);
325
- }
326
- }
327
- // From frameworks detected
328
- for (const fw of report.projectInfo.frameworks) {
329
- keywords.add(fw.toLowerCase());
330
- }
331
- // From languages
332
- for (const lang of report.projectInfo.primaryLanguages) {
333
- keywords.add(lang.toLowerCase());
334
- }
335
- // Filter out blacklisted and generic entries
336
- return [...keywords]
337
- .filter(kw => !ProjectSummarizer.KEYWORD_BLACKLIST.has(kw) && kw.length > 1)
338
- .slice(0, 20);
339
- }
340
- // ── Tech Stack ──
341
- buildTechStack(report, packageInfo) {
342
- const stack = [];
343
- // Languages
344
- stack.push(...report.projectInfo.primaryLanguages);
345
- // Frameworks from report
346
- stack.push(...report.projectInfo.frameworks);
347
- // Dependencies from package.json
348
- const deps = { ...(packageInfo.dependencies || {}), ...(packageInfo.devDependencies || {}) };
349
- const notable = [
350
- 'express', 'fastify', 'nestjs', '@nestjs/core', 'koa', 'hapi',
351
- 'react', 'next', 'angular', 'vue', 'svelte',
352
- 'prisma', '@prisma/client', 'typeorm', 'sequelize', 'mongoose', 'knex',
353
- 'jest', 'mocha', 'vitest', 'cypress', 'playwright',
354
- 'tailwindcss', 'styled-components', 'emotion',
355
- 'redis', 'ioredis', 'bull', 'bullmq',
356
- 'graphql', 'apollo', '@apollo/server',
357
- 'socket.io', 'ws',
358
- 'passport', 'jsonwebtoken', 'bcrypt',
359
- 'winston', 'pino',
360
- 'swagger', '@nestjs/swagger',
361
- 'docker', 'kubernetes',
362
- 'aws-sdk', '@aws-sdk',
363
- 'stripe', 'paypal',
364
- ];
365
- for (const dep of Object.keys(deps)) {
366
- const cleaned = dep.replace('@', '').split('/')[0];
367
- if (notable.some(n => dep.includes(n))) {
368
- if (!stack.some(s => s.toLowerCase() === cleaned.toLowerCase())) {
369
- stack.push(dep);
370
- }
371
- }
372
- }
373
- return [...new Set(stack)].slice(0, 15);
374
- }
375
- // ── Description Builder ──
376
- buildDescription(packageInfo, readme, report) {
377
- // Priority 1: package.json description
378
- if (typeof packageInfo.description === 'string' && packageInfo.description.trim()) {
379
- return packageInfo.description.trim();
380
- }
381
- // Priority 2: First paragraph of README (skip badges, titles)
382
- if (readme) {
383
- const lines = readme.split('\n');
384
- for (const line of lines) {
385
- const trimmed = line.trim();
386
- // Skip empty lines, headers, badges, links, HTML tags
387
- if (!trimmed)
388
- continue;
389
- if (trimmed.startsWith('#'))
390
- continue;
391
- if (trimmed.startsWith('[!') || trimmed.startsWith('[!['))
392
- continue;
393
- if (trimmed.startsWith('<'))
394
- continue;
395
- if (trimmed.startsWith('---') || trimmed.startsWith('==='))
396
- continue;
397
- if (trimmed.startsWith('!['))
398
- continue;
399
- if (trimmed.length < 20)
400
- continue;
401
- // Found a real text paragraph
402
- return trimmed.slice(0, 300);
403
- }
404
- }
405
- // Priority 3: Infer from project name and structure
406
- const name = report.projectInfo.name || 'Unknown';
407
- const langs = report.projectInfo.primaryLanguages.join(', ');
408
- const files = report.projectInfo.totalFiles;
409
- return `Projeto ${name} — ${files} arquivos em ${langs}`;
410
- }
411
- // ── Purpose Inference ──
412
- inferPurpose(keywords, modules, report) {
413
- const allSignals = [
414
- ...keywords,
415
- ...modules.map(m => m.name.toLowerCase()),
416
- ...modules.map(m => m.description.toLowerCase()),
417
- // Only use project nodes, never leaked node_modules paths
418
- ...report.dependencyGraph.nodes
419
- .filter(n => !n.includes('node_modules'))
420
- .map(n => n.toLowerCase()),
421
- ].join(' ');
422
- // Infer project type from signals
423
- const types = [
424
- [/api.*(rest|graph|endpoint)|controller.*route|swagger|openapi/, 'API Backend'],
425
- [/cli|command.*line|bin\/|yargs|commander/, 'CLI Tool'],
426
- [/component.*ui|react|angular|vue|frontend|page.*screen/, 'Frontend Application'],
427
- [/mobile|flutter|dart|react.native|ionic/, 'Mobile App'],
428
- [/library|lib|package|npm|pub|sdk|module/, 'Library / Package'],
429
- [/test|spec|validator|lint|analyz|check/, 'Tool de Análise / Validação'],
430
- [/microservice|service|worker|queue/, 'Microservice'],
431
- [/monorepo|workspace|packages\//, 'Monorepo'],
432
- [/bot|scraper|crawler|automation/, 'Bot / Automação'],
433
- [/game|canvas|webgl|three/, 'Game / Visualização'],
434
- [/e-?commerce|shop|cart|product|catalog/, 'E-commerce'],
435
- [/blog|cms|content|post|article/, 'CMS / Blog'],
436
- [/auth|login|oauth|sso|identity/, 'Sistema de Autenticação'],
437
- [/chat|message|realtime|socket/, 'Comunicação Real-time'],
438
- [/dashboard|admin|panel|analytics/, 'Dashboard / Admin Panel'],
439
- [/payment|billing|fintech|finance|bank/, 'Fintech / Pagamentos'],
440
- [/health|medical|patient|clinic/, 'Healthcare'],
441
- [/education|course|learn|student/, 'EdTech'],
442
- ];
443
- const matched = [];
444
- for (const [regex, type] of types) {
445
- if (regex.test(allSignals)) {
446
- matched.push(type);
447
- }
448
- }
449
- if (matched.length > 0) {
450
- return matched.slice(0, 3).join(' + ');
451
- }
452
- // Fallback
453
- const langs = report.projectInfo.primaryLanguages.join('/');
454
- return `Projeto ${langs}`;
455
- }
456
- }
457
- /** Keywords that should never appear in project summaries */
458
- ProjectSummarizer.KEYWORD_BLACKLIST = new Set([
459
- 'node_modules', 'dist', 'build', '.git', '.next', 'coverage',
460
- '__tests__', '__mocks__', 'src', 'lib', 'index', 'main',
461
- 'out', 'tmp', '.cache', 'vendor', '.vscode', '.idea',
462
- ]);
463
- //# sourceMappingURL=project-summarizer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"project-summarizer.js","sourceRoot":"","sources":["../src/project-summarizer.ts"],"names":[],"mappings":"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"}