agent-ide 0.2.0 → 0.3.3

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 (575) hide show
  1. package/README.md +28 -355
  2. package/dist/application/events/event-bus.d.ts.map +1 -1
  3. package/dist/application/events/event-bus.js.map +1 -1
  4. package/dist/application/index.d.ts +3 -1
  5. package/dist/application/index.d.ts.map +1 -1
  6. package/dist/application/index.js +10 -5
  7. package/dist/application/index.js.map +1 -1
  8. package/dist/application/services/cache-coordinator.service.d.ts.map +1 -1
  9. package/dist/application/services/cache-coordinator.service.js.map +1 -1
  10. package/dist/application/services/error-handler.service.d.ts.map +1 -1
  11. package/dist/application/services/error-handler.service.js.map +1 -1
  12. package/dist/application/services/module-coordinator.service.d.ts +13 -2
  13. package/dist/application/services/module-coordinator.service.d.ts.map +1 -1
  14. package/dist/application/services/module-coordinator.service.js +63 -17
  15. package/dist/application/services/module-coordinator.service.js.map +1 -1
  16. package/dist/application/services/session-manager.service.d.ts.map +1 -1
  17. package/dist/application/services/session-manager.service.js.map +1 -1
  18. package/dist/application/services/workflow-engine.service.d.ts +1 -1
  19. package/dist/application/services/workflow-engine.service.d.ts.map +1 -1
  20. package/dist/application/services/workflow-engine.service.js.map +1 -1
  21. package/dist/application/state/state-manager.d.ts +3 -3
  22. package/dist/application/state/state-manager.d.ts.map +1 -1
  23. package/dist/application/state/state-manager.js +3 -3
  24. package/dist/application/state/state-manager.js.map +1 -1
  25. package/dist/application/types.d.ts.map +1 -1
  26. package/dist/application/workflows/analysis-workflow.d.ts +1 -1
  27. package/dist/application/workflows/analysis-workflow.d.ts.map +1 -1
  28. package/dist/application/workflows/analysis-workflow.js +1 -1
  29. package/dist/application/workflows/analysis-workflow.js.map +1 -1
  30. package/dist/application/workflows/base-workflow.d.ts.map +1 -1
  31. package/dist/application/workflows/base-workflow.js.map +1 -1
  32. package/dist/application/workflows/index.d.ts +2 -2
  33. package/dist/application/workflows/index.d.ts.map +1 -1
  34. package/dist/application/workflows/index.js +2 -2
  35. package/dist/application/workflows/index.js.map +1 -1
  36. package/dist/application/workflows/refactor-workflow.d.ts +1 -1
  37. package/dist/application/workflows/refactor-workflow.d.ts.map +1 -1
  38. package/dist/application/workflows/refactor-workflow.js +1 -1
  39. package/dist/application/workflows/refactor-workflow.js.map +1 -1
  40. package/dist/core/dependency/cycle-detector.d.ts +1 -1
  41. package/dist/core/dependency/cycle-detector.d.ts.map +1 -1
  42. package/dist/core/dependency/cycle-detector.js +1 -1
  43. package/dist/core/dependency/cycle-detector.js.map +1 -1
  44. package/dist/core/dependency/dependency-analyzer.d.ts +3 -1
  45. package/dist/core/dependency/dependency-analyzer.d.ts.map +1 -1
  46. package/dist/core/dependency/dependency-analyzer.js +25 -24
  47. package/dist/core/dependency/dependency-analyzer.js.map +1 -1
  48. package/dist/core/dependency/types.d.ts.map +1 -1
  49. package/dist/core/indexing/file-index.d.ts.map +1 -1
  50. package/dist/core/indexing/file-index.js +1 -1
  51. package/dist/core/indexing/file-index.js.map +1 -1
  52. package/dist/core/indexing/file-watcher.d.ts +4 -2
  53. package/dist/core/indexing/file-watcher.d.ts.map +1 -1
  54. package/dist/core/indexing/file-watcher.js +10 -6
  55. package/dist/core/indexing/file-watcher.js.map +1 -1
  56. package/dist/core/indexing/index-engine.d.ts +3 -1
  57. package/dist/core/indexing/index-engine.d.ts.map +1 -1
  58. package/dist/core/indexing/index-engine.js +24 -15
  59. package/dist/core/indexing/index-engine.js.map +1 -1
  60. package/dist/core/indexing/symbol-index.d.ts.map +1 -1
  61. package/dist/core/indexing/types.d.ts.map +1 -1
  62. package/dist/core/search/engines/text-engine.d.ts +3 -0
  63. package/dist/core/search/engines/text-engine.d.ts.map +1 -1
  64. package/dist/core/search/engines/text-engine.js +7 -6
  65. package/dist/core/search/engines/text-engine.js.map +1 -1
  66. package/dist/core/search/service.d.ts +2 -1
  67. package/dist/core/search/service.d.ts.map +1 -1
  68. package/dist/core/search/service.js +3 -3
  69. package/dist/core/search/service.js.map +1 -1
  70. package/dist/core/search/types.d.ts.map +1 -1
  71. package/dist/core/snapshot/index.d.ts +3 -19
  72. package/dist/core/snapshot/index.d.ts.map +1 -1
  73. package/dist/core/snapshot/index.js +2 -23
  74. package/dist/core/snapshot/index.js.map +1 -1
  75. package/dist/core/snapshot/snapshot-generator.d.ts +66 -0
  76. package/dist/core/snapshot/snapshot-generator.d.ts.map +1 -0
  77. package/dist/core/snapshot/snapshot-generator.js +258 -0
  78. package/dist/core/snapshot/snapshot-generator.js.map +1 -0
  79. package/dist/core/snapshot/types.d.ts +41 -190
  80. package/dist/core/snapshot/types.d.ts.map +1 -1
  81. package/dist/core/snapshot/types.js +13 -67
  82. package/dist/core/snapshot/types.js.map +1 -1
  83. package/dist/core/transform/index.d.ts +10 -0
  84. package/dist/core/transform/index.d.ts.map +1 -0
  85. package/dist/core/transform/index.js +21 -0
  86. package/dist/core/transform/index.js.map +1 -0
  87. package/dist/core/transform/location/index.d.ts +8 -0
  88. package/dist/core/transform/location/index.d.ts.map +1 -0
  89. package/dist/core/transform/location/index.js +9 -0
  90. package/dist/core/transform/location/index.js.map +1 -0
  91. package/dist/core/{move → transform/location/move-file}/import-resolver.d.ts +1 -1
  92. package/dist/core/transform/location/move-file/import-resolver.d.ts.map +1 -0
  93. package/dist/core/{move → transform/location/move-file}/import-resolver.js +11 -12
  94. package/dist/core/transform/location/move-file/import-resolver.js.map +1 -0
  95. package/dist/core/{move → transform/location/move-file}/index.d.ts +2 -2
  96. package/dist/core/transform/location/move-file/index.d.ts.map +1 -0
  97. package/dist/core/{move → transform/location/move-file}/index.js +2 -2
  98. package/dist/core/transform/location/move-file/index.js.map +1 -0
  99. package/dist/core/{move → transform/location/move-file}/move-service.d.ts +5 -3
  100. package/dist/core/transform/location/move-file/move-service.d.ts.map +1 -0
  101. package/dist/core/{move → transform/location/move-file}/move-service.js +67 -85
  102. package/dist/core/transform/location/move-file/move-service.js.map +1 -0
  103. package/dist/core/{move → transform/location/move-file}/types.d.ts +1 -1
  104. package/dist/core/transform/location/move-file/types.d.ts.map +1 -0
  105. package/dist/core/transform/location/move-file/types.js.map +1 -0
  106. package/dist/core/transform/location/move-member/index.d.ts +10 -0
  107. package/dist/core/transform/location/move-member/index.d.ts.map +1 -0
  108. package/dist/core/transform/location/move-member/index.js +12 -0
  109. package/dist/core/transform/location/move-member/index.js.map +1 -0
  110. package/dist/core/transform/location/move-member/member-extractor.d.ts +96 -0
  111. package/dist/core/transform/location/move-member/member-extractor.d.ts.map +1 -0
  112. package/dist/core/transform/location/move-member/member-extractor.js +439 -0
  113. package/dist/core/transform/location/move-member/member-extractor.js.map +1 -0
  114. package/dist/core/transform/location/move-member/move-member-service.d.ts +87 -0
  115. package/dist/core/transform/location/move-member/move-member-service.d.ts.map +1 -0
  116. package/dist/core/transform/location/move-member/move-member-service.js +412 -0
  117. package/dist/core/transform/location/move-member/move-member-service.js.map +1 -0
  118. package/dist/core/transform/location/move-member/types.d.ts +182 -0
  119. package/dist/core/transform/location/move-member/types.d.ts.map +1 -0
  120. package/dist/core/transform/location/move-member/types.js +75 -0
  121. package/dist/core/transform/location/move-member/types.js.map +1 -0
  122. package/dist/core/transform/location/shift/file-generator.d.ts +45 -0
  123. package/dist/core/transform/location/shift/file-generator.d.ts.map +1 -0
  124. package/dist/core/transform/location/shift/file-generator.js +94 -0
  125. package/dist/core/transform/location/shift/file-generator.js.map +1 -0
  126. package/dist/core/transform/location/shift/index.d.ts +11 -0
  127. package/dist/core/transform/location/shift/index.d.ts.map +1 -0
  128. package/dist/core/transform/location/shift/index.js +13 -0
  129. package/dist/core/transform/location/shift/index.js.map +1 -0
  130. package/dist/core/transform/location/shift/line-extractor.d.ts +55 -0
  131. package/dist/core/transform/location/shift/line-extractor.d.ts.map +1 -0
  132. package/dist/core/transform/location/shift/line-extractor.js +123 -0
  133. package/dist/core/transform/location/shift/line-extractor.js.map +1 -0
  134. package/dist/core/transform/location/shift/shift-service.d.ts +57 -0
  135. package/dist/core/transform/location/shift/shift-service.d.ts.map +1 -0
  136. package/dist/core/transform/location/shift/shift-service.js +199 -0
  137. package/dist/core/transform/location/shift/shift-service.js.map +1 -0
  138. package/dist/core/transform/location/shift/types.d.ts +195 -0
  139. package/dist/core/transform/location/shift/types.d.ts.map +1 -0
  140. package/dist/core/transform/location/shift/types.js +89 -0
  141. package/dist/core/transform/location/shift/types.js.map +1 -0
  142. package/dist/core/transform/shared/code-editor.d.ts +70 -0
  143. package/dist/core/transform/shared/code-editor.d.ts.map +1 -0
  144. package/dist/core/transform/shared/code-editor.js +206 -0
  145. package/dist/core/transform/shared/code-editor.js.map +1 -0
  146. package/dist/core/transform/shared/index.d.ts +7 -0
  147. package/dist/core/transform/shared/index.d.ts.map +1 -0
  148. package/dist/core/transform/shared/index.js +7 -0
  149. package/dist/core/transform/shared/index.js.map +1 -0
  150. package/dist/core/transform/shared/symbol-finder.d.ts +154 -0
  151. package/dist/core/transform/shared/symbol-finder.d.ts.map +1 -0
  152. package/dist/core/transform/shared/symbol-finder.js +433 -0
  153. package/dist/core/transform/shared/symbol-finder.js.map +1 -0
  154. package/dist/core/transform/structure/extract/extract-function.d.ts.map +1 -0
  155. package/dist/core/{refactor → transform/structure/extract}/extract-function.js +1 -1
  156. package/dist/core/transform/structure/extract/extract-function.js.map +1 -0
  157. package/dist/core/transform/structure/extract/index.d.ts +7 -0
  158. package/dist/core/transform/structure/extract/index.d.ts.map +1 -0
  159. package/dist/core/transform/structure/extract/index.js +9 -0
  160. package/dist/core/transform/structure/extract/index.js.map +1 -0
  161. package/dist/core/transform/structure/extract/swift-extractor.d.ts.map +1 -0
  162. package/dist/core/transform/structure/extract/swift-extractor.js.map +1 -0
  163. package/dist/core/transform/structure/index.d.ts +8 -0
  164. package/dist/core/transform/structure/index.d.ts.map +1 -0
  165. package/dist/core/transform/structure/index.js +8 -0
  166. package/dist/core/transform/structure/index.js.map +1 -0
  167. package/dist/core/transform/structure/inline/index.d.ts +6 -0
  168. package/dist/core/transform/structure/inline/index.d.ts.map +1 -0
  169. package/dist/core/transform/structure/inline/index.js +6 -0
  170. package/dist/core/transform/structure/inline/index.js.map +1 -0
  171. package/dist/core/transform/structure/inline/inline-function.d.ts.map +1 -0
  172. package/dist/core/{refactor → transform/structure/inline}/inline-function.js +37 -26
  173. package/dist/core/transform/structure/inline/inline-function.js.map +1 -0
  174. package/dist/core/transform/structure/patterns/design-patterns.d.ts.map +1 -0
  175. package/dist/core/transform/structure/patterns/design-patterns.js.map +1 -0
  176. package/dist/core/transform/structure/patterns/index.d.ts +6 -0
  177. package/dist/core/transform/structure/patterns/index.d.ts.map +1 -0
  178. package/dist/core/transform/structure/patterns/index.js +6 -0
  179. package/dist/core/transform/structure/patterns/index.js.map +1 -0
  180. package/dist/core/transform/symbol/change-signature/change-signature-service.d.ts +94 -0
  181. package/dist/core/transform/symbol/change-signature/change-signature-service.d.ts.map +1 -0
  182. package/dist/core/transform/symbol/change-signature/change-signature-service.js +544 -0
  183. package/dist/core/transform/symbol/change-signature/change-signature-service.js.map +1 -0
  184. package/dist/core/transform/symbol/change-signature/index.d.ts +10 -0
  185. package/dist/core/transform/symbol/change-signature/index.d.ts.map +1 -0
  186. package/dist/core/transform/symbol/change-signature/index.js +12 -0
  187. package/dist/core/transform/symbol/change-signature/index.js.map +1 -0
  188. package/dist/core/transform/symbol/change-signature/signature-parser.d.ts +76 -0
  189. package/dist/core/transform/symbol/change-signature/signature-parser.d.ts.map +1 -0
  190. package/dist/core/transform/symbol/change-signature/signature-parser.js +387 -0
  191. package/dist/core/transform/symbol/change-signature/signature-parser.js.map +1 -0
  192. package/dist/core/transform/symbol/change-signature/types.d.ts +244 -0
  193. package/dist/core/transform/symbol/change-signature/types.d.ts.map +1 -0
  194. package/dist/core/transform/symbol/change-signature/types.js +73 -0
  195. package/dist/core/transform/symbol/change-signature/types.js.map +1 -0
  196. package/dist/core/transform/symbol/index.d.ts +7 -0
  197. package/dist/core/transform/symbol/index.d.ts.map +1 -0
  198. package/dist/core/transform/symbol/index.js +7 -0
  199. package/dist/core/transform/symbol/index.js.map +1 -0
  200. package/dist/core/transform/symbol/rename/index.d.ts +9 -0
  201. package/dist/core/transform/symbol/rename/index.d.ts.map +1 -0
  202. package/dist/core/{rename → transform/symbol/rename}/index.js +5 -3
  203. package/dist/core/transform/symbol/rename/index.js.map +1 -0
  204. package/dist/core/{rename → transform/symbol/rename}/reference-updater.d.ts +2 -2
  205. package/dist/core/transform/symbol/rename/reference-updater.d.ts.map +1 -0
  206. package/dist/core/transform/symbol/rename/reference-updater.js.map +1 -0
  207. package/dist/core/{rename → transform/symbol/rename}/rename-engine.d.ts +2 -2
  208. package/dist/core/transform/symbol/rename/rename-engine.d.ts.map +1 -0
  209. package/dist/core/{rename → transform/symbol/rename}/rename-engine.js +3 -3
  210. package/dist/core/transform/symbol/rename/rename-engine.js.map +1 -0
  211. package/dist/core/{rename → transform/symbol/rename}/scope-analyzer.d.ts +3 -3
  212. package/dist/core/transform/symbol/rename/scope-analyzer.d.ts.map +1 -0
  213. package/dist/core/{rename → transform/symbol/rename}/scope-analyzer.js +2 -2
  214. package/dist/core/transform/symbol/rename/scope-analyzer.js.map +1 -0
  215. package/dist/core/{rename → transform/symbol/rename}/types.d.ts +2 -2
  216. package/dist/core/transform/symbol/rename/types.d.ts.map +1 -0
  217. package/dist/core/transform/symbol/rename/types.js.map +1 -0
  218. package/dist/core/transform/types.d.ts +185 -0
  219. package/dist/core/transform/types.d.ts.map +1 -0
  220. package/dist/core/transform/types.js +150 -0
  221. package/dist/core/transform/types.js.map +1 -0
  222. package/dist/infrastructure/cache/cache-manager.d.ts +1 -1
  223. package/dist/infrastructure/cache/cache-manager.d.ts.map +1 -1
  224. package/dist/infrastructure/cache/cache-manager.js +1 -1
  225. package/dist/infrastructure/cache/cache-manager.js.map +1 -1
  226. package/dist/infrastructure/cache/memory-cache.js +1 -1
  227. package/dist/infrastructure/cache/memory-cache.js.map +1 -1
  228. package/dist/infrastructure/cache/strategies.d.ts +1 -1
  229. package/dist/infrastructure/cache/strategies.d.ts.map +1 -1
  230. package/dist/infrastructure/cache/strategies.js +1 -1
  231. package/dist/infrastructure/cache/strategies.js.map +1 -1
  232. package/dist/infrastructure/formatters/diff-generator.d.ts +11 -0
  233. package/dist/infrastructure/formatters/diff-generator.d.ts.map +1 -0
  234. package/dist/infrastructure/formatters/diff-generator.js +217 -0
  235. package/dist/infrastructure/formatters/diff-generator.js.map +1 -0
  236. package/dist/infrastructure/formatters/index.d.ts +11 -0
  237. package/dist/infrastructure/formatters/index.d.ts.map +1 -0
  238. package/dist/infrastructure/formatters/index.js +13 -0
  239. package/dist/infrastructure/formatters/index.js.map +1 -0
  240. package/dist/infrastructure/formatters/preview-converter.d.ts +85 -0
  241. package/dist/infrastructure/formatters/preview-converter.d.ts.map +1 -0
  242. package/dist/infrastructure/formatters/preview-converter.js +209 -0
  243. package/dist/infrastructure/formatters/preview-converter.js.map +1 -0
  244. package/dist/infrastructure/formatters/preview-formatter.d.ts +61 -0
  245. package/dist/infrastructure/formatters/preview-formatter.d.ts.map +1 -0
  246. package/dist/infrastructure/formatters/preview-formatter.js +208 -0
  247. package/dist/infrastructure/formatters/preview-formatter.js.map +1 -0
  248. package/dist/infrastructure/formatters/query-formatter.d.ts +63 -0
  249. package/dist/infrastructure/formatters/query-formatter.d.ts.map +1 -0
  250. package/dist/infrastructure/formatters/query-formatter.js +218 -0
  251. package/dist/infrastructure/formatters/query-formatter.js.map +1 -0
  252. package/dist/infrastructure/formatters/query-types.d.ts +165 -0
  253. package/dist/infrastructure/formatters/query-types.d.ts.map +1 -0
  254. package/dist/infrastructure/formatters/query-types.js +30 -0
  255. package/dist/infrastructure/formatters/query-types.js.map +1 -0
  256. package/dist/infrastructure/formatters/types.d.ts +153 -0
  257. package/dist/infrastructure/formatters/types.d.ts.map +1 -0
  258. package/dist/infrastructure/formatters/types.js +27 -0
  259. package/dist/infrastructure/formatters/types.js.map +1 -0
  260. package/dist/infrastructure/parser/base.d.ts +1 -1
  261. package/dist/infrastructure/parser/base.d.ts.map +1 -1
  262. package/dist/infrastructure/parser/base.js +1 -1
  263. package/dist/infrastructure/parser/base.js.map +1 -1
  264. package/dist/infrastructure/parser/factory.d.ts +3 -3
  265. package/dist/infrastructure/parser/factory.d.ts.map +1 -1
  266. package/dist/infrastructure/parser/factory.js +1 -1
  267. package/dist/infrastructure/parser/factory.js.map +1 -1
  268. package/dist/infrastructure/parser/interface.d.ts +1 -1
  269. package/dist/infrastructure/parser/interface.d.ts.map +1 -1
  270. package/dist/infrastructure/parser/registry.d.ts +1 -1
  271. package/dist/infrastructure/parser/registry.d.ts.map +1 -1
  272. package/dist/infrastructure/parser/registry.js +1 -1
  273. package/dist/infrastructure/parser/registry.js.map +1 -1
  274. package/dist/infrastructure/parser/types.d.ts.map +1 -1
  275. package/dist/infrastructure/storage/file-system.d.ts +2 -1
  276. package/dist/infrastructure/storage/file-system.d.ts.map +1 -1
  277. package/dist/infrastructure/storage/file-system.interface.d.ts +69 -0
  278. package/dist/infrastructure/storage/file-system.interface.d.ts.map +1 -0
  279. package/dist/infrastructure/storage/file-system.interface.js +6 -0
  280. package/dist/infrastructure/storage/file-system.interface.js.map +1 -0
  281. package/dist/infrastructure/storage/file-system.js.map +1 -1
  282. package/dist/infrastructure/storage/index.d.ts +2 -2
  283. package/dist/infrastructure/storage/index.d.ts.map +1 -1
  284. package/dist/infrastructure/storage/index.js +1 -6
  285. package/dist/infrastructure/storage/index.js.map +1 -1
  286. package/dist/infrastructure/storage/mem-file-system.d.ts +44 -0
  287. package/dist/infrastructure/storage/mem-file-system.d.ts.map +1 -0
  288. package/dist/infrastructure/storage/mem-file-system.js +105 -0
  289. package/dist/infrastructure/storage/mem-file-system.js.map +1 -0
  290. package/dist/infrastructure/storage/path-utils.d.ts +1 -1
  291. package/dist/infrastructure/storage/path-utils.d.ts.map +1 -1
  292. package/dist/interfaces/cli/cli.d.ts +13 -94
  293. package/dist/interfaces/cli/cli.d.ts.map +1 -1
  294. package/dist/interfaces/cli/cli.js +53 -2450
  295. package/dist/interfaces/cli/cli.js.map +1 -1
  296. package/dist/interfaces/cli/commands/analyze.command.d.ts +11 -0
  297. package/dist/interfaces/cli/commands/analyze.command.d.ts.map +1 -0
  298. package/dist/interfaces/cli/commands/analyze.command.js +460 -0
  299. package/dist/interfaces/cli/commands/analyze.command.js.map +1 -0
  300. package/dist/interfaces/cli/commands/change-signature.command.d.ts +11 -0
  301. package/dist/interfaces/cli/commands/change-signature.command.d.ts.map +1 -0
  302. package/dist/interfaces/cli/commands/change-signature.command.js +299 -0
  303. package/dist/interfaces/cli/commands/change-signature.command.js.map +1 -0
  304. package/dist/interfaces/cli/commands/deps.command.d.ts +11 -0
  305. package/dist/interfaces/cli/commands/deps.command.d.ts.map +1 -0
  306. package/dist/interfaces/cli/commands/deps.command.js +143 -0
  307. package/dist/interfaces/cli/commands/deps.command.js.map +1 -0
  308. package/dist/interfaces/cli/commands/extract.command.d.ts +11 -0
  309. package/dist/interfaces/cli/commands/extract.command.d.ts.map +1 -0
  310. package/dist/interfaces/cli/commands/extract.command.js +314 -0
  311. package/dist/interfaces/cli/commands/extract.command.js.map +1 -0
  312. package/dist/interfaces/cli/commands/index.d.ts +16 -0
  313. package/dist/interfaces/cli/commands/index.d.ts.map +1 -0
  314. package/dist/interfaces/cli/commands/index.js +15 -0
  315. package/dist/interfaces/cli/commands/index.js.map +1 -0
  316. package/dist/interfaces/cli/commands/inline.command.d.ts +11 -0
  317. package/dist/interfaces/cli/commands/inline.command.d.ts.map +1 -0
  318. package/dist/interfaces/cli/commands/inline.command.js +208 -0
  319. package/dist/interfaces/cli/commands/inline.command.js.map +1 -0
  320. package/dist/interfaces/cli/commands/move-member.command.d.ts +11 -0
  321. package/dist/interfaces/cli/commands/move-member.command.d.ts.map +1 -0
  322. package/dist/interfaces/cli/commands/move-member.command.js +194 -0
  323. package/dist/interfaces/cli/commands/move-member.command.js.map +1 -0
  324. package/dist/interfaces/cli/commands/move.command.d.ts +11 -0
  325. package/dist/interfaces/cli/commands/move.command.d.ts.map +1 -0
  326. package/dist/interfaces/cli/commands/move.command.js +220 -0
  327. package/dist/interfaces/cli/commands/move.command.js.map +1 -0
  328. package/dist/interfaces/cli/commands/refactor.command.d.ts +11 -0
  329. package/dist/interfaces/cli/commands/refactor.command.d.ts.map +1 -0
  330. package/dist/interfaces/cli/commands/refactor.command.js +414 -0
  331. package/dist/interfaces/cli/commands/refactor.command.js.map +1 -0
  332. package/dist/interfaces/cli/commands/rename.command.d.ts +11 -0
  333. package/dist/interfaces/cli/commands/rename.command.d.ts.map +1 -0
  334. package/dist/interfaces/cli/commands/rename.command.js +272 -0
  335. package/dist/interfaces/cli/commands/rename.command.js.map +1 -0
  336. package/dist/interfaces/cli/commands/search.command.d.ts +11 -0
  337. package/dist/interfaces/cli/commands/search.command.d.ts.map +1 -0
  338. package/dist/interfaces/cli/commands/search.command.js +409 -0
  339. package/dist/interfaces/cli/commands/search.command.js.map +1 -0
  340. package/dist/interfaces/cli/commands/shift.command.d.ts +11 -0
  341. package/dist/interfaces/cli/commands/shift.command.d.ts.map +1 -0
  342. package/dist/interfaces/cli/commands/shift.command.js +143 -0
  343. package/dist/interfaces/cli/commands/shift.command.js.map +1 -0
  344. package/dist/interfaces/cli/commands/snapshot.command.d.ts +11 -0
  345. package/dist/interfaces/cli/commands/snapshot.command.d.ts.map +1 -0
  346. package/dist/interfaces/cli/commands/snapshot.command.js +68 -0
  347. package/dist/interfaces/cli/commands/snapshot.command.js.map +1 -0
  348. package/dist/interfaces/cli/commands/types.d.ts +18 -0
  349. package/dist/interfaces/cli/commands/types.d.ts.map +1 -0
  350. package/dist/interfaces/cli/commands/types.js +5 -0
  351. package/dist/interfaces/cli/commands/types.js.map +1 -0
  352. package/dist/interfaces/cli/index.d.ts +1 -1
  353. package/dist/interfaces/cli/index.d.ts.map +1 -1
  354. package/dist/interfaces/cli/index.js +1 -1
  355. package/dist/interfaces/cli/index.js.map +1 -1
  356. package/dist/interfaces/cli/preview-output-handler.d.ts +53 -0
  357. package/dist/interfaces/cli/preview-output-handler.d.ts.map +1 -0
  358. package/dist/interfaces/cli/preview-output-handler.js +73 -0
  359. package/dist/interfaces/cli/preview-output-handler.js.map +1 -0
  360. package/dist/interfaces/cli/unified-output-handler.d.ts +77 -0
  361. package/dist/interfaces/cli/unified-output-handler.d.ts.map +1 -0
  362. package/dist/interfaces/cli/unified-output-handler.js +140 -0
  363. package/dist/interfaces/cli/unified-output-handler.js.map +1 -0
  364. package/dist/plugins/javascript/index.d.ts +2 -2
  365. package/dist/plugins/javascript/index.d.ts.map +1 -1
  366. package/dist/plugins/javascript/index.js +1 -1
  367. package/dist/plugins/javascript/index.js.map +1 -1
  368. package/dist/plugins/javascript/types.d.ts.map +1 -1
  369. package/dist/plugins/javascript/types.js.map +1 -1
  370. package/dist/plugins/python/analyzers/complexity-analyzer.d.ts +50 -0
  371. package/dist/plugins/python/analyzers/complexity-analyzer.d.ts.map +1 -0
  372. package/dist/plugins/python/analyzers/complexity-analyzer.js +172 -0
  373. package/dist/plugins/python/analyzers/complexity-analyzer.js.map +1 -0
  374. package/dist/plugins/python/analyzers/duplication-detector.d.ts +39 -0
  375. package/dist/plugins/python/analyzers/duplication-detector.d.ts.map +1 -0
  376. package/dist/plugins/python/analyzers/duplication-detector.js +146 -0
  377. package/dist/plugins/python/analyzers/duplication-detector.js.map +1 -0
  378. package/dist/plugins/python/analyzers/error-handling-checker.d.ts +28 -0
  379. package/dist/plugins/python/analyzers/error-handling-checker.d.ts.map +1 -0
  380. package/dist/plugins/python/analyzers/error-handling-checker.js +143 -0
  381. package/dist/plugins/python/analyzers/error-handling-checker.js.map +1 -0
  382. package/dist/plugins/python/analyzers/naming-checker.d.ts +56 -0
  383. package/dist/plugins/python/analyzers/naming-checker.d.ts.map +1 -0
  384. package/dist/plugins/python/analyzers/naming-checker.js +220 -0
  385. package/dist/plugins/python/analyzers/naming-checker.js.map +1 -0
  386. package/dist/plugins/python/analyzers/pattern-detector.d.ts +44 -0
  387. package/dist/plugins/python/analyzers/pattern-detector.d.ts.map +1 -0
  388. package/dist/plugins/python/analyzers/pattern-detector.js +222 -0
  389. package/dist/plugins/python/analyzers/pattern-detector.js.map +1 -0
  390. package/dist/plugins/python/analyzers/security-checker.d.ts +56 -0
  391. package/dist/plugins/python/analyzers/security-checker.d.ts.map +1 -0
  392. package/dist/plugins/python/analyzers/security-checker.js +279 -0
  393. package/dist/plugins/python/analyzers/security-checker.js.map +1 -0
  394. package/dist/plugins/python/analyzers/type-safety-checker.d.ts +44 -0
  395. package/dist/plugins/python/analyzers/type-safety-checker.d.ts.map +1 -0
  396. package/dist/plugins/python/analyzers/type-safety-checker.js +177 -0
  397. package/dist/plugins/python/analyzers/type-safety-checker.js.map +1 -0
  398. package/dist/plugins/python/analyzers/unused-symbol-detector.d.ts +37 -0
  399. package/dist/plugins/python/analyzers/unused-symbol-detector.d.ts.map +1 -0
  400. package/dist/plugins/python/analyzers/unused-symbol-detector.js +141 -0
  401. package/dist/plugins/python/analyzers/unused-symbol-detector.js.map +1 -0
  402. package/dist/plugins/python/dependency-analyzer.d.ts +86 -0
  403. package/dist/plugins/python/dependency-analyzer.d.ts.map +1 -0
  404. package/dist/plugins/python/dependency-analyzer.js +252 -0
  405. package/dist/plugins/python/dependency-analyzer.js.map +1 -0
  406. package/dist/plugins/python/index.d.ts +17 -0
  407. package/dist/plugins/python/index.d.ts.map +1 -0
  408. package/dist/plugins/python/index.js +23 -0
  409. package/dist/plugins/python/index.js.map +1 -0
  410. package/dist/plugins/python/parser.d.ts +150 -0
  411. package/dist/plugins/python/parser.d.ts.map +1 -0
  412. package/dist/plugins/python/parser.js +476 -0
  413. package/dist/plugins/python/parser.js.map +1 -0
  414. package/dist/plugins/python/symbol-extractor.d.ts +108 -0
  415. package/dist/plugins/python/symbol-extractor.d.ts.map +1 -0
  416. package/dist/plugins/python/symbol-extractor.js +389 -0
  417. package/dist/plugins/python/symbol-extractor.js.map +1 -0
  418. package/dist/plugins/python/tree-sitter-bridge.d.ts +57 -0
  419. package/dist/plugins/python/tree-sitter-bridge.d.ts.map +1 -0
  420. package/dist/plugins/python/tree-sitter-bridge.js +267 -0
  421. package/dist/plugins/python/tree-sitter-bridge.js.map +1 -0
  422. package/dist/plugins/python/types.d.ts +179 -0
  423. package/dist/plugins/python/types.d.ts.map +1 -0
  424. package/dist/plugins/python/types.js +252 -0
  425. package/dist/plugins/python/types.js.map +1 -0
  426. package/dist/plugins/swift/analyzers/complexity-analyzer.d.ts.map +1 -1
  427. package/dist/plugins/swift/analyzers/unused-symbol-detector.d.ts.map +1 -1
  428. package/dist/plugins/swift/dependency-analyzer.d.ts +1 -1
  429. package/dist/plugins/swift/dependency-analyzer.d.ts.map +1 -1
  430. package/dist/plugins/swift/dependency-analyzer.js +1 -1
  431. package/dist/plugins/swift/dependency-analyzer.js.map +1 -1
  432. package/dist/plugins/swift/parser.js +2 -2
  433. package/dist/plugins/swift/parser.js.map +1 -1
  434. package/dist/plugins/swift/symbol-extractor.d.ts +1 -1
  435. package/dist/plugins/swift/symbol-extractor.d.ts.map +1 -1
  436. package/dist/plugins/swift/symbol-extractor.js.map +1 -1
  437. package/dist/plugins/swift/types.d.ts.map +1 -1
  438. package/dist/plugins/swift/types.js.map +1 -1
  439. package/dist/plugins/typescript/analyzers/complexity-analyzer.d.ts +1 -1
  440. package/dist/plugins/typescript/analyzers/complexity-analyzer.d.ts.map +1 -1
  441. package/dist/plugins/typescript/analyzers/unused-symbol-detector.d.ts +1 -1
  442. package/dist/plugins/typescript/analyzers/unused-symbol-detector.d.ts.map +1 -1
  443. package/dist/plugins/typescript/analyzers/unused-symbol-detector.js.map +1 -1
  444. package/dist/plugins/typescript/parser.d.ts.map +1 -1
  445. package/dist/plugins/typescript/parser.js +12 -3
  446. package/dist/plugins/typescript/parser.js.map +1 -1
  447. package/dist/plugins/typescript/symbol-extractor.d.ts.map +1 -1
  448. package/dist/plugins/typescript/symbol-extractor.js +12 -0
  449. package/dist/plugins/typescript/symbol-extractor.js.map +1 -1
  450. package/dist/plugins/typescript/types.d.ts.map +1 -1
  451. package/dist/plugins/typescript/types.js +10 -0
  452. package/dist/plugins/typescript/types.js.map +1 -1
  453. package/dist/shared/errors/config-error.d.ts +1 -1
  454. package/dist/shared/errors/config-error.d.ts.map +1 -1
  455. package/dist/shared/errors/config-error.js +1 -1
  456. package/dist/shared/errors/config-error.js.map +1 -1
  457. package/dist/shared/errors/file-error.d.ts +1 -1
  458. package/dist/shared/errors/file-error.d.ts.map +1 -1
  459. package/dist/shared/errors/file-error.js +1 -1
  460. package/dist/shared/errors/file-error.js.map +1 -1
  461. package/dist/shared/errors/index.d.ts +1 -1
  462. package/dist/shared/errors/index.d.ts.map +1 -1
  463. package/dist/shared/errors/index.js +4 -4
  464. package/dist/shared/errors/index.js.map +1 -1
  465. package/dist/shared/errors/parser-error.d.ts +1 -1
  466. package/dist/shared/errors/parser-error.d.ts.map +1 -1
  467. package/dist/shared/errors/parser-error.js +1 -1
  468. package/dist/shared/errors/parser-error.js.map +1 -1
  469. package/dist/shared/errors/validation-error.d.ts +1 -1
  470. package/dist/shared/errors/validation-error.d.ts.map +1 -1
  471. package/dist/shared/errors/validation-error.js +1 -1
  472. package/dist/shared/errors/validation-error.js.map +1 -1
  473. package/dist/shared/types/ast.d.ts +1 -1
  474. package/dist/shared/types/ast.d.ts.map +1 -1
  475. package/dist/shared/types/ast.js +1 -1
  476. package/dist/shared/types/ast.js.map +1 -1
  477. package/dist/shared/types/symbol.d.ts +1 -1
  478. package/dist/shared/types/symbol.d.ts.map +1 -1
  479. package/dist/shared/utils/index.d.ts +5 -5
  480. package/dist/shared/utils/index.d.ts.map +1 -1
  481. package/dist/shared/utils/index.js +5 -5
  482. package/dist/shared/utils/index.js.map +1 -1
  483. package/package.json +8 -6
  484. package/dist/core/analysis/index.d.ts +0 -6
  485. package/dist/core/analysis/index.d.ts.map +0 -1
  486. package/dist/core/analysis/index.js +0 -7
  487. package/dist/core/analysis/index.js.map +0 -1
  488. package/dist/core/analysis/quality-metrics.d.ts +0 -158
  489. package/dist/core/analysis/quality-metrics.d.ts.map +0 -1
  490. package/dist/core/analysis/quality-metrics.js +0 -442
  491. package/dist/core/analysis/quality-metrics.js.map +0 -1
  492. package/dist/core/move/import-resolver.d.ts.map +0 -1
  493. package/dist/core/move/import-resolver.js.map +0 -1
  494. package/dist/core/move/index.d.ts.map +0 -1
  495. package/dist/core/move/index.js.map +0 -1
  496. package/dist/core/move/move-service.d.ts.map +0 -1
  497. package/dist/core/move/move-service.js.map +0 -1
  498. package/dist/core/move/types.d.ts.map +0 -1
  499. package/dist/core/move/types.js.map +0 -1
  500. package/dist/core/refactor/design-patterns.d.ts.map +0 -1
  501. package/dist/core/refactor/design-patterns.js.map +0 -1
  502. package/dist/core/refactor/extract-function.d.ts.map +0 -1
  503. package/dist/core/refactor/extract-function.js.map +0 -1
  504. package/dist/core/refactor/index.d.ts +0 -8
  505. package/dist/core/refactor/index.d.ts.map +0 -1
  506. package/dist/core/refactor/index.js +0 -11
  507. package/dist/core/refactor/index.js.map +0 -1
  508. package/dist/core/refactor/inline-function.d.ts.map +0 -1
  509. package/dist/core/refactor/inline-function.js.map +0 -1
  510. package/dist/core/refactor/swift-extractor.d.ts.map +0 -1
  511. package/dist/core/refactor/swift-extractor.js.map +0 -1
  512. package/dist/core/rename/index.d.ts +0 -9
  513. package/dist/core/rename/index.d.ts.map +0 -1
  514. package/dist/core/rename/index.js.map +0 -1
  515. package/dist/core/rename/reference-updater.d.ts.map +0 -1
  516. package/dist/core/rename/reference-updater.js.map +0 -1
  517. package/dist/core/rename/rename-engine.d.ts.map +0 -1
  518. package/dist/core/rename/rename-engine.js.map +0 -1
  519. package/dist/core/rename/scope-analyzer.d.ts.map +0 -1
  520. package/dist/core/rename/scope-analyzer.js.map +0 -1
  521. package/dist/core/rename/types.d.ts.map +0 -1
  522. package/dist/core/rename/types.js.map +0 -1
  523. package/dist/core/shit-score/grading.d.ts +0 -39
  524. package/dist/core/shit-score/grading.d.ts.map +0 -1
  525. package/dist/core/shit-score/grading.js +0 -253
  526. package/dist/core/shit-score/grading.js.map +0 -1
  527. package/dist/core/shit-score/index.d.ts +0 -9
  528. package/dist/core/shit-score/index.d.ts.map +0 -1
  529. package/dist/core/shit-score/index.js +0 -8
  530. package/dist/core/shit-score/index.js.map +0 -1
  531. package/dist/core/shit-score/score-calculator.d.ts +0 -75
  532. package/dist/core/shit-score/score-calculator.d.ts.map +0 -1
  533. package/dist/core/shit-score/score-calculator.js +0 -240
  534. package/dist/core/shit-score/score-calculator.js.map +0 -1
  535. package/dist/core/shit-score/shit-score-analyzer.d.ts +0 -84
  536. package/dist/core/shit-score/shit-score-analyzer.d.ts.map +0 -1
  537. package/dist/core/shit-score/shit-score-analyzer.js +0 -595
  538. package/dist/core/shit-score/shit-score-analyzer.js.map +0 -1
  539. package/dist/core/shit-score/types.d.ts +0 -231
  540. package/dist/core/shit-score/types.d.ts.map +0 -1
  541. package/dist/core/shit-score/types.js +0 -73
  542. package/dist/core/shit-score/types.js.map +0 -1
  543. package/dist/core/snapshot/code-compressor.d.ts +0 -39
  544. package/dist/core/snapshot/code-compressor.d.ts.map +0 -1
  545. package/dist/core/snapshot/code-compressor.js +0 -211
  546. package/dist/core/snapshot/code-compressor.js.map +0 -1
  547. package/dist/core/snapshot/config.d.ts +0 -60
  548. package/dist/core/snapshot/config.d.ts.map +0 -1
  549. package/dist/core/snapshot/config.js +0 -136
  550. package/dist/core/snapshot/config.js.map +0 -1
  551. package/dist/core/snapshot/snapshot-differ.d.ts +0 -54
  552. package/dist/core/snapshot/snapshot-differ.d.ts.map +0 -1
  553. package/dist/core/snapshot/snapshot-differ.js +0 -262
  554. package/dist/core/snapshot/snapshot-differ.js.map +0 -1
  555. package/dist/core/snapshot/snapshot-engine.d.ts +0 -94
  556. package/dist/core/snapshot/snapshot-engine.d.ts.map +0 -1
  557. package/dist/core/snapshot/snapshot-engine.js +0 -492
  558. package/dist/core/snapshot/snapshot-engine.js.map +0 -1
  559. package/dist/plugins/swift/analyzers/test-coverage-checker.d.ts +0 -26
  560. package/dist/plugins/swift/analyzers/test-coverage-checker.d.ts.map +0 -1
  561. package/dist/plugins/swift/analyzers/test-coverage-checker.js +0 -63
  562. package/dist/plugins/swift/analyzers/test-coverage-checker.js.map +0 -1
  563. package/dist/plugins/typescript/analyzers/test-coverage-checker.d.ts +0 -22
  564. package/dist/plugins/typescript/analyzers/test-coverage-checker.d.ts.map +0 -1
  565. package/dist/plugins/typescript/analyzers/test-coverage-checker.js +0 -62
  566. package/dist/plugins/typescript/analyzers/test-coverage-checker.js.map +0 -1
  567. /package/dist/core/{move → transform/location/move-file}/types.js +0 -0
  568. /package/dist/core/{refactor → transform/structure/extract}/extract-function.d.ts +0 -0
  569. /package/dist/core/{refactor → transform/structure/extract}/swift-extractor.d.ts +0 -0
  570. /package/dist/core/{refactor → transform/structure/extract}/swift-extractor.js +0 -0
  571. /package/dist/core/{refactor → transform/structure/inline}/inline-function.d.ts +0 -0
  572. /package/dist/core/{refactor → transform/structure/patterns}/design-patterns.d.ts +0 -0
  573. /package/dist/core/{refactor → transform/structure/patterns}/design-patterns.js +0 -0
  574. /package/dist/core/{rename → transform/symbol/rename}/reference-updater.js +0 -0
  575. /package/dist/core/{rename → transform/symbol/rename}/types.js +0 -0
@@ -1,9 +0,0 @@
1
- /**
2
- * ShitScore 模組統一匯出
3
- */
4
- export { ShitScoreAnalyzer, ShitScoreError } from './shit-score-analyzer.js';
5
- export { ScoreCalculator } from './score-calculator.js';
6
- export { Grading, gradeTable } from './grading.js';
7
- export type { ShitScoreResult, ShitScoreOptions, GradeInfo, GradeLevel, SeverityLevel, ShitType, DimensionScore, ShitItem, ShitStats, Recommendation, ComplexityData, MaintainabilityData, ArchitectureData, } from './types.js';
8
- export { GradeLevel as GradeLevelEnum, SeverityLevel as SeverityLevelEnum, ShitType as ShitTypeEnum, createDefaultShitScoreOptions, isShitScoreResult, } from './types.js';
9
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/shit-score/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEnD,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,SAAS,EACT,UAAU,EACV,aAAa,EACb,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,SAAS,EACT,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,UAAU,IAAI,cAAc,EAC5B,aAAa,IAAI,iBAAiB,EAClC,QAAQ,IAAI,YAAY,EACxB,6BAA6B,EAC7B,iBAAiB,GAClB,MAAM,YAAY,CAAC"}
@@ -1,8 +0,0 @@
1
- /**
2
- * ShitScore 模組統一匯出
3
- */
4
- export { ShitScoreAnalyzer, ShitScoreError } from './shit-score-analyzer.js';
5
- export { ScoreCalculator } from './score-calculator.js';
6
- export { Grading, gradeTable } from './grading.js';
7
- export { GradeLevel as GradeLevelEnum, SeverityLevel as SeverityLevelEnum, ShitType as ShitTypeEnum, createDefaultShitScoreOptions, isShitScoreResult, } from './types.js';
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/shit-score/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAkBnD,OAAO,EACL,UAAU,IAAI,cAAc,EAC5B,aAAa,IAAI,iBAAiB,EAClC,QAAQ,IAAI,YAAY,EACxB,6BAA6B,EAC7B,iBAAiB,GAClB,MAAM,YAAY,CAAC"}
@@ -1,75 +0,0 @@
1
- /**
2
- * ShitScore 評分計算器
3
- * 負責計算三大維度的垃圾度評分並計算總分
4
- */
5
- import type { DimensionScore, ComplexityData, MaintainabilityData, ArchitectureData, QualityAssuranceData } from './types.js';
6
- /**
7
- * 評分計算器
8
- */
9
- export declare class ScoreCalculator {
10
- /**
11
- * 計算總分(四個維度)
12
- */
13
- calculate(complexity: ComplexityData, maintainability: MaintainabilityData, architecture: ArchitectureData, qualityAssurance: QualityAssuranceData): {
14
- readonly complexityScore: DimensionScore;
15
- readonly maintainabilityScore: DimensionScore;
16
- readonly architectureScore: DimensionScore;
17
- readonly qualityAssuranceScore: DimensionScore;
18
- readonly totalScore: number;
19
- };
20
- /**
21
- * 計算複雜度垃圾(30%)
22
- * complexityShit = (
23
- * highComplexityRatio * 0.4 +
24
- * longFunctionRatio * 0.25 +
25
- * deepNestingRatio * 0.2 +
26
- * tooManyParamsRatio * 0.15
27
- * ) * 100
28
- */
29
- calculateComplexityShit(data: ComplexityData): DimensionScore;
30
- /**
31
- * 計算維護性垃圾(30%)
32
- * maintainabilityShit = (
33
- * deadCodeRatio * 0.35 +
34
- * largeFileRatio * 0.2 +
35
- * duplicateCodeRatio * 0.2 +
36
- * patternDuplicationRatio * 0.25
37
- * ) * 100
38
- */
39
- calculateMaintainabilityShit(data: MaintainabilityData): DimensionScore;
40
- /**
41
- * 計算架構垃圾(30%)
42
- * architectureShit = (
43
- * min(cyclicDependencies * 10, 100) * 0.6 +
44
- * orphanFileRatio * 0.25 +
45
- * highCouplingRatio * 0.15
46
- * )
47
- */
48
- calculateArchitectureShit(data: ArchitectureData): DimensionScore;
49
- /**
50
- * 計算品質保證垃圾(20%)
51
- * qualityAssuranceShit = (
52
- * typeSafetyScore * 0.3 +
53
- * testCoverageScore * 0.25 +
54
- * errorHandlingScore * 0.2 +
55
- * namingScore * 0.15 +
56
- * securityScore * 0.1
57
- * ) * 100
58
- */
59
- calculateQualityAssuranceShit(data: QualityAssuranceData): DimensionScore;
60
- /**
61
- * 計算總分
62
- * shitScore = (
63
- * complexityShit * 0.3 +
64
- * maintainabilityShit * 0.3 +
65
- * architectureShit * 0.3 +
66
- * qualityAssuranceShit * 0.2
67
- * )
68
- */
69
- calculateTotalScore(complexity: DimensionScore, maintainability: DimensionScore, architecture: DimensionScore, qualityAssurance: DimensionScore): number;
70
- /**
71
- * 四捨五入到小數點後 2 位
72
- */
73
- private round;
74
- }
75
- //# sourceMappingURL=score-calculator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"score-calculator.d.ts","sourceRoot":"","sources":["../../../src/core/shit-score/score-calculator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,qBAAa,eAAe;IAC1B;;OAEG;IACH,SAAS,CAAC,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,mBAAmB,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,oBAAoB,GAAG;QACnJ,QAAQ,CAAC,eAAe,EAAE,cAAc,CAAC;QACzC,QAAQ,CAAC,oBAAoB,EAAE,cAAc,CAAC;QAC9C,QAAQ,CAAC,iBAAiB,EAAE,cAAc,CAAC;QAC3C,QAAQ,CAAC,qBAAqB,EAAE,cAAc,CAAC;QAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;KAC7B;IAgBD;;;;;;;;OAQG;IACH,uBAAuB,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc;IA6C7D;;;;;;;;OAQG;IACH,4BAA4B,CAAC,IAAI,EAAE,mBAAmB,GAAG,cAAc;IAoDvE;;;;;;;OAOG;IACH,yBAAyB,CAAC,IAAI,EAAE,gBAAgB,GAAG,cAAc;IAsCjE;;;;;;;;;OASG;IACH,6BAA6B,CAAC,IAAI,EAAE,oBAAoB,GAAG,cAAc;IAyDzE;;;;;;;;OAQG;IACH,mBAAmB,CAAC,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,GAAG,MAAM;IAMxJ;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd"}
@@ -1,240 +0,0 @@
1
- /**
2
- * ShitScore 評分計算器
3
- * 負責計算三大維度的垃圾度評分並計算總分
4
- */
5
- /**
6
- * 評分計算器
7
- */
8
- export class ScoreCalculator {
9
- /**
10
- * 計算總分(四個維度)
11
- */
12
- calculate(complexity, maintainability, architecture, qualityAssurance) {
13
- const complexityScore = this.calculateComplexityShit(complexity);
14
- const maintainabilityScore = this.calculateMaintainabilityShit(maintainability);
15
- const architectureScore = this.calculateArchitectureShit(architecture);
16
- const qualityAssuranceScore = this.calculateQualityAssuranceShit(qualityAssurance);
17
- const totalScore = this.calculateTotalScore(complexityScore, maintainabilityScore, architectureScore, qualityAssuranceScore);
18
- return {
19
- complexityScore,
20
- maintainabilityScore,
21
- architectureScore,
22
- qualityAssuranceScore,
23
- totalScore,
24
- };
25
- }
26
- /**
27
- * 計算複雜度垃圾(30%)
28
- * complexityShit = (
29
- * highComplexityRatio * 0.4 +
30
- * longFunctionRatio * 0.25 +
31
- * deepNestingRatio * 0.2 +
32
- * tooManyParamsRatio * 0.15
33
- * ) * 100
34
- */
35
- calculateComplexityShit(data) {
36
- const total = data.totalFunctions;
37
- if (total === 0) {
38
- return {
39
- dimension: 'complexity',
40
- score: 0,
41
- weight: 0.3,
42
- weightedScore: 0,
43
- breakdown: {
44
- highComplexity: 0,
45
- longFunction: 0,
46
- deepNesting: 0,
47
- tooManyParams: 0,
48
- },
49
- };
50
- }
51
- const highComplexityRatio = data.highComplexityCount / total;
52
- const longFunctionRatio = data.longFunctionCount / total;
53
- const deepNestingRatio = data.deepNestingCount / total;
54
- const tooManyParamsRatio = data.tooManyParamsCount / total;
55
- const score = this.round((highComplexityRatio * 0.4 +
56
- longFunctionRatio * 0.25 +
57
- deepNestingRatio * 0.2 +
58
- tooManyParamsRatio * 0.15) *
59
- 100);
60
- return {
61
- dimension: 'complexity',
62
- score,
63
- weight: 0.3,
64
- weightedScore: this.round(score * 0.3),
65
- breakdown: {
66
- highComplexity: this.round(highComplexityRatio * 100),
67
- longFunction: this.round(longFunctionRatio * 100),
68
- deepNesting: this.round(deepNestingRatio * 100),
69
- tooManyParams: this.round(tooManyParamsRatio * 100),
70
- },
71
- };
72
- }
73
- /**
74
- * 計算維護性垃圾(30%)
75
- * maintainabilityShit = (
76
- * deadCodeRatio * 0.35 +
77
- * largeFileRatio * 0.2 +
78
- * duplicateCodeRatio * 0.2 +
79
- * patternDuplicationRatio * 0.25
80
- * ) * 100
81
- */
82
- calculateMaintainabilityShit(data) {
83
- const total = data.totalFiles;
84
- if (total === 0) {
85
- return {
86
- dimension: 'maintainability',
87
- score: 0,
88
- weight: 0.3,
89
- weightedScore: 0,
90
- breakdown: {
91
- deadCode: 0,
92
- largeFile: 0,
93
- duplicateCode: 0,
94
- patternDuplication: 0,
95
- },
96
- };
97
- }
98
- // 原始比例(可能超過 100%,用於 breakdown 顯示)
99
- const deadCodeRatio = data.deadCodeCount / total;
100
- const largeFileRatio = data.largeFileCount / total;
101
- const duplicateCodeRatio = data.duplicateCodeCount / total;
102
- const patternDuplicationRatio = data.patternDuplicationCount / total;
103
- // 限制比例上限為 100%,用於計算分數
104
- const deadCodeRatioCapped = Math.min(deadCodeRatio, 1);
105
- const largeFileRatioCapped = Math.min(largeFileRatio, 1);
106
- const duplicateCodeRatioCapped = Math.min(duplicateCodeRatio, 1);
107
- const patternDuplicationRatioCapped = Math.min(patternDuplicationRatio, 1);
108
- const score = this.round((deadCodeRatioCapped * 0.35 +
109
- largeFileRatioCapped * 0.2 +
110
- duplicateCodeRatioCapped * 0.2 +
111
- patternDuplicationRatioCapped * 0.25) *
112
- 100);
113
- return {
114
- dimension: 'maintainability',
115
- score,
116
- weight: 0.3,
117
- weightedScore: this.round(score * 0.3),
118
- breakdown: {
119
- deadCode: this.round(deadCodeRatio * 100),
120
- largeFile: this.round(largeFileRatio * 100),
121
- duplicateCode: this.round(duplicateCodeRatio * 100),
122
- patternDuplication: this.round(patternDuplicationRatio * 100),
123
- },
124
- };
125
- }
126
- /**
127
- * 計算架構垃圾(30%)
128
- * architectureShit = (
129
- * min(cyclicDependencies * 10, 100) * 0.6 +
130
- * orphanFileRatio * 0.25 +
131
- * highCouplingRatio * 0.15
132
- * )
133
- */
134
- calculateArchitectureShit(data) {
135
- const total = data.totalFiles;
136
- if (total === 0) {
137
- return {
138
- dimension: 'architecture',
139
- score: 0,
140
- weight: 0.3,
141
- weightedScore: 0,
142
- breakdown: {
143
- circularDependency: 0,
144
- orphanFile: 0,
145
- highCoupling: 0,
146
- },
147
- };
148
- }
149
- const cyclicScore = Math.min(data.circularDependencyCount * 10, 100);
150
- const orphanFileRatio = data.orphanFileCount / total;
151
- const highCouplingRatio = data.highCouplingCount / total;
152
- const score = this.round(cyclicScore * 0.6 + orphanFileRatio * 0.25 * 100 + highCouplingRatio * 0.15 * 100);
153
- return {
154
- dimension: 'architecture',
155
- score,
156
- weight: 0.3,
157
- weightedScore: this.round(score * 0.3),
158
- breakdown: {
159
- circularDependency: cyclicScore,
160
- orphanFile: this.round(orphanFileRatio * 100),
161
- highCoupling: this.round(highCouplingRatio * 100),
162
- },
163
- };
164
- }
165
- /**
166
- * 計算品質保證垃圾(20%)
167
- * qualityAssuranceShit = (
168
- * typeSafetyScore * 0.3 +
169
- * testCoverageScore * 0.25 +
170
- * errorHandlingScore * 0.2 +
171
- * namingScore * 0.15 +
172
- * securityScore * 0.1
173
- * ) * 100
174
- */
175
- calculateQualityAssuranceShit(data) {
176
- const total = data.totalFiles;
177
- if (total === 0) {
178
- return {
179
- dimension: 'qualityAssurance',
180
- score: 0,
181
- weight: 0.2,
182
- weightedScore: 0,
183
- breakdown: {
184
- typeSafety: 0,
185
- testCoverage: 0,
186
- errorHandling: 0,
187
- naming: 0,
188
- security: 0,
189
- },
190
- };
191
- }
192
- // 1. 型別安全評分(30%)
193
- const typeSafetyScore = Math.min((data.typeSafetyIssues / total) * 100, 100);
194
- // 2. 測試覆蓋率評分(25%)- 反向評分
195
- const testCoverageScore = (1 - data.testCoverageRatio) * 100;
196
- // 3. 錯誤處理評分(20%)
197
- const errorHandlingScore = Math.min((data.errorHandlingIssues / total) * 100, 100);
198
- // 4. 命名規範評分(15%)
199
- const namingScore = Math.min((data.namingIssues / total) * 100, 100);
200
- // 5. 安全性評分(10%)
201
- const securityScore = Math.min((data.securityIssues / total) * 100, 100);
202
- const score = this.round(typeSafetyScore * 0.3 +
203
- testCoverageScore * 0.25 +
204
- errorHandlingScore * 0.2 +
205
- namingScore * 0.15 +
206
- securityScore * 0.1);
207
- return {
208
- dimension: 'qualityAssurance',
209
- score,
210
- weight: 0.2,
211
- weightedScore: this.round(score * 0.2),
212
- breakdown: {
213
- typeSafety: this.round(typeSafetyScore),
214
- testCoverage: this.round(testCoverageScore),
215
- errorHandling: this.round(errorHandlingScore),
216
- naming: this.round(namingScore),
217
- security: this.round(securityScore),
218
- },
219
- };
220
- }
221
- /**
222
- * 計算總分
223
- * shitScore = (
224
- * complexityShit * 0.3 +
225
- * maintainabilityShit * 0.3 +
226
- * architectureShit * 0.3 +
227
- * qualityAssuranceShit * 0.2
228
- * )
229
- */
230
- calculateTotalScore(complexity, maintainability, architecture, qualityAssurance) {
231
- return this.round(complexity.weightedScore + maintainability.weightedScore + architecture.weightedScore + qualityAssurance.weightedScore);
232
- }
233
- /**
234
- * 四捨五入到小數點後 2 位
235
- */
236
- round(value) {
237
- return Math.round(value * 100) / 100;
238
- }
239
- }
240
- //# sourceMappingURL=score-calculator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"score-calculator.js","sourceRoot":"","sources":["../../../src/core/shit-score/score-calculator.ts"],"names":[],"mappings":"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"}
@@ -1,84 +0,0 @@
1
- /**
2
- * ShitScore 分析器
3
- * 主服務類別,整合所有分析功能(通過 ParserPlugin)
4
- */
5
- import type { ParserRegistry } from '../../infrastructure/parser/registry.js';
6
- import type { ShitScoreResult, ShitScoreOptions } from './types.js';
7
- /**
8
- * ShitScore 錯誤
9
- */
10
- export declare class ShitScoreError extends Error {
11
- readonly score: number;
12
- readonly maxAllowed: number;
13
- constructor(message: string, score: number, maxAllowed: number);
14
- }
15
- /**
16
- * ShitScore 分析器
17
- */
18
- export declare class ShitScoreAnalyzer {
19
- private readonly calculator;
20
- private readonly grading;
21
- private readonly parserRegistry;
22
- constructor(parserRegistry: ParserRegistry);
23
- /**
24
- * 分析專案的垃圾度
25
- */
26
- analyze(projectPath: string, options: Partial<ShitScoreOptions>): Promise<ShitScoreResult>;
27
- /**
28
- * 收集專案檔案
29
- */
30
- private collectFiles;
31
- /**
32
- * 建立檔案分析快取(解析 AST 和提取 symbols)
33
- */
34
- private buildFileCache;
35
- /**
36
- * 收集複雜度資料(使用 parser.analyzeComplexity)
37
- */
38
- private collectComplexityData;
39
- /**
40
- * 收集維護性資料(使用 parser 方法)
41
- */
42
- private collectMaintainabilityData;
43
- /**
44
- * 檢測代碼重複(簡化版 DuplicationDetector)
45
- */
46
- private detectDuplication;
47
- /**
48
- * 收集架構資料
49
- */
50
- private collectArchitectureData;
51
- /**
52
- * 收集品質保證資料(使用 parser checker 方法)
53
- */
54
- private collectQualityAssuranceData;
55
- /**
56
- * 檢查 tsconfig.json 的 strict 設定
57
- */
58
- private checkTsConfigStrict;
59
- /**
60
- * 建立詳細結果
61
- */
62
- private buildDetailedResult;
63
- /**
64
- * 提取最嚴重的垃圾項目
65
- */
66
- private extractTopShit;
67
- /**
68
- * 收集詳細檔案列表
69
- */
70
- private collectDetailedFiles;
71
- /**
72
- * 檢測循環依賴
73
- */
74
- private detectCycles;
75
- /**
76
- * 計算孤立檔案數量
77
- */
78
- private countOrphans;
79
- /**
80
- * 計算高耦合檔案數量
81
- */
82
- private countHighCoupling;
83
- }
84
- //# sourceMappingURL=shit-score-analyzer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shit-score-analyzer.d.ts","sourceRoot":"","sources":["../../../src/core/shit-score/shit-score-analyzer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAI9E,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EAQjB,MAAM,YAAY,CAAC;AAIpB;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK;aACM,KAAK,EAAE,MAAM;aAAkB,UAAU,EAAE,MAAM;gBAAlF,OAAO,EAAE,MAAM,EAAkB,KAAK,EAAE,MAAM,EAAkB,UAAU,EAAE,MAAM;CAI/F;AAYD;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;gBAEpC,cAAc,EAAE,cAAc;IAM1C;;OAEG;IACG,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC;IAmDhG;;OAEG;YACW,YAAY;IA8B1B;;OAEG;YACW,cAAc;IAuB5B;;OAEG;YACW,qBAAqB;IA8CnC;;OAEG;YACW,0BAA0B;IAwDxC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA6BzB;;OAEG;YACW,uBAAuB;IAkCrC;;OAEG;YACW,2BAA2B;IAuDzC;;OAEG;YACW,mBAAmB;IAejC;;OAEG;YACW,mBAAmB;IAuCjC;;OAEG;YACW,cAAc;IA0F5B;;OAEG;YACW,oBAAoB;IA+FlC;;OAEG;IACH,OAAO,CAAC,YAAY;IAcpB;;OAEG;IACH,OAAO,CAAC,YAAY;IAmBpB;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAS1B"}