specweave 0.13.5 → 0.13.6

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 (779) hide show
  1. package/bin/specweave.js +1 -0
  2. package/dist/cli/commands/init.d.ts +1 -0
  3. package/dist/cli/commands/init.d.ts.map +1 -1
  4. package/dist/cli/commands/init.js +50 -37
  5. package/dist/cli/commands/init.js.map +1 -1
  6. package/package.json +1 -1
  7. package/plugins/specweave/lib/hooks/git-diff-analyzer.js +129 -213
  8. package/plugins/specweave/lib/hooks/invoke-translator-skill.js +146 -192
  9. package/plugins/specweave/lib/hooks/prepare-reflection-context.js +103 -116
  10. package/plugins/specweave/lib/hooks/reflection-config-loader.js +85 -125
  11. package/plugins/specweave/lib/hooks/reflection-parser.js +267 -385
  12. package/plugins/specweave/lib/hooks/reflection-prompt-builder.js +169 -226
  13. package/plugins/specweave/lib/hooks/reflection-storage.js +223 -297
  14. package/plugins/specweave/lib/hooks/run-self-reflection.js +120 -191
  15. package/plugins/specweave/lib/hooks/sync-living-docs.js +87 -129
  16. package/plugins/specweave/lib/hooks/translate-file.js +239 -300
  17. package/plugins/specweave/lib/hooks/translate-living-docs.js +88 -144
  18. package/plugins/specweave/lib/hooks/types/reflection-types.js +57 -72
  19. package/plugins/specweave/lib/hooks/update-tasks-md.js +117 -179
  20. package/plugins/specweave-ado/lib/ado-board-resolver.js +135 -205
  21. package/plugins/specweave-ado/lib/ado-hierarchical-sync.js +223 -335
  22. package/plugins/specweave-ado/lib/ado-spec-sync.js +380 -414
  23. package/plugins/specweave-ado/lib/project-selector.js +168 -196
  24. package/plugins/specweave-github/hooks/hooks.json +11 -0
  25. package/plugins/specweave-github/hooks/post-increment-done.sh +224 -0
  26. package/plugins/specweave-github/lib/cli-sync-increment-changes.js +9 -20
  27. package/plugins/specweave-github/lib/github-board-resolver.js +69 -115
  28. package/plugins/specweave-github/lib/github-client-v2.js +400 -389
  29. package/plugins/specweave-github/lib/github-client.js +246 -280
  30. package/plugins/specweave-github/lib/github-hierarchical-sync.js +168 -251
  31. package/plugins/specweave-github/lib/github-issue-updater.js +231 -288
  32. package/plugins/specweave-github/lib/github-spec-sync.js +379 -420
  33. package/plugins/specweave-github/lib/github-sync-bidirectional.js +175 -202
  34. package/plugins/specweave-github/lib/github-sync-increment-changes.js +212 -251
  35. package/plugins/specweave-github/lib/index.js +11 -10
  36. package/plugins/specweave-github/lib/repo-selector.js +174 -201
  37. package/plugins/specweave-github/lib/subtask-sync.js +132 -125
  38. package/plugins/specweave-github/lib/task-parser.js +191 -207
  39. package/plugins/specweave-github/lib/task-sync.js +344 -296
  40. package/plugins/specweave-github/lib/types.js +0 -5
  41. package/plugins/specweave-jira/lib/jira-board-resolver.js +50 -79
  42. package/plugins/specweave-jira/lib/jira-hierarchical-sync.js +119 -191
  43. package/plugins/specweave-jira/lib/jira-spec-sync.js +366 -405
  44. package/plugins/specweave-jira/lib/project-selector.js +172 -201
  45. package/plugins/specweave-jira/lib/reorganization-detector.js +202 -237
  46. package/plugins/specweave-jira/lib/setup-wizard.js +162 -204
  47. package/src/templates/AGENTS.md.template +42 -0
  48. package/dist/core/agent-model-manager.d.ts +0 -52
  49. package/dist/core/agent-model-manager.d.ts.map +0 -1
  50. package/dist/core/agent-model-manager.js +0 -120
  51. package/dist/core/agent-model-manager.js.map +0 -1
  52. package/dist/core/model-selector.d.ts +0 -57
  53. package/dist/core/model-selector.d.ts.map +0 -1
  54. package/dist/core/model-selector.js +0 -115
  55. package/dist/core/model-selector.js.map +0 -1
  56. package/dist/core/phase-detector.d.ts +0 -62
  57. package/dist/core/phase-detector.d.ts.map +0 -1
  58. package/dist/core/phase-detector.js +0 -229
  59. package/dist/core/phase-detector.js.map +0 -1
  60. package/dist/hooks/lib/git-diff-analyzer.d.ts +0 -89
  61. package/dist/hooks/lib/git-diff-analyzer.d.ts.map +0 -1
  62. package/dist/hooks/lib/git-diff-analyzer.js +0 -226
  63. package/dist/hooks/lib/git-diff-analyzer.js.map +0 -1
  64. package/dist/hooks/lib/invoke-translator-skill.d.ts +0 -60
  65. package/dist/hooks/lib/invoke-translator-skill.d.ts.map +0 -1
  66. package/dist/hooks/lib/invoke-translator-skill.js +0 -201
  67. package/dist/hooks/lib/invoke-translator-skill.js.map +0 -1
  68. package/dist/hooks/lib/prepare-reflection-context.d.ts +0 -42
  69. package/dist/hooks/lib/prepare-reflection-context.d.ts.map +0 -1
  70. package/dist/hooks/lib/prepare-reflection-context.js +0 -123
  71. package/dist/hooks/lib/prepare-reflection-context.js.map +0 -1
  72. package/dist/hooks/lib/reflection-config-loader.d.ts +0 -45
  73. package/dist/hooks/lib/reflection-config-loader.d.ts.map +0 -1
  74. package/dist/hooks/lib/reflection-config-loader.js +0 -132
  75. package/dist/hooks/lib/reflection-config-loader.js.map +0 -1
  76. package/dist/hooks/lib/reflection-parser.d.ts +0 -33
  77. package/dist/hooks/lib/reflection-parser.d.ts.map +0 -1
  78. package/dist/hooks/lib/reflection-parser.js +0 -419
  79. package/dist/hooks/lib/reflection-parser.js.map +0 -1
  80. package/dist/hooks/lib/reflection-prompt-builder.d.ts +0 -56
  81. package/dist/hooks/lib/reflection-prompt-builder.d.ts.map +0 -1
  82. package/dist/hooks/lib/reflection-prompt-builder.js +0 -239
  83. package/dist/hooks/lib/reflection-prompt-builder.js.map +0 -1
  84. package/dist/hooks/lib/reflection-storage.d.ts +0 -64
  85. package/dist/hooks/lib/reflection-storage.d.ts.map +0 -1
  86. package/dist/hooks/lib/reflection-storage.js +0 -305
  87. package/dist/hooks/lib/reflection-storage.js.map +0 -1
  88. package/dist/hooks/lib/run-self-reflection.d.ts +0 -43
  89. package/dist/hooks/lib/run-self-reflection.d.ts.map +0 -1
  90. package/dist/hooks/lib/run-self-reflection.js +0 -203
  91. package/dist/hooks/lib/run-self-reflection.js.map +0 -1
  92. package/dist/hooks/lib/sync-living-docs.d.ts +0 -27
  93. package/dist/hooks/lib/sync-living-docs.d.ts.map +0 -1
  94. package/dist/hooks/lib/sync-living-docs.js +0 -116
  95. package/dist/hooks/lib/sync-living-docs.js.map +0 -1
  96. package/dist/hooks/lib/translate-file.d.ts +0 -59
  97. package/dist/hooks/lib/translate-file.d.ts.map +0 -1
  98. package/dist/hooks/lib/translate-file.js +0 -350
  99. package/dist/hooks/lib/translate-file.js.map +0 -1
  100. package/dist/hooks/lib/translate-living-docs.d.ts +0 -13
  101. package/dist/hooks/lib/translate-living-docs.d.ts.map +0 -1
  102. package/dist/hooks/lib/translate-living-docs.js +0 -175
  103. package/dist/hooks/lib/translate-living-docs.js.map +0 -1
  104. package/dist/hooks/lib/types/reflection-types.d.ts +0 -164
  105. package/dist/hooks/lib/types/reflection-types.d.ts.map +0 -1
  106. package/dist/hooks/lib/types/reflection-types.js +0 -73
  107. package/dist/hooks/lib/types/reflection-types.js.map +0 -1
  108. package/dist/hooks/lib/update-tasks-md.d.ts +0 -29
  109. package/dist/hooks/lib/update-tasks-md.d.ts.map +0 -1
  110. package/dist/hooks/lib/update-tasks-md.js +0 -203
  111. package/dist/hooks/lib/update-tasks-md.js.map +0 -1
  112. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts +0 -89
  113. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts.map +0 -1
  114. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js +0 -226
  115. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js.map +0 -1
  116. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts +0 -60
  117. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts.map +0 -1
  118. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js +0 -201
  119. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js.map +0 -1
  120. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts +0 -42
  121. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts.map +0 -1
  122. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js +0 -123
  123. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js.map +0 -1
  124. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts +0 -45
  125. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts.map +0 -1
  126. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js +0 -132
  127. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js.map +0 -1
  128. package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts +0 -33
  129. package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts.map +0 -1
  130. package/dist/plugins/specweave/lib/hooks/reflection-parser.js +0 -419
  131. package/dist/plugins/specweave/lib/hooks/reflection-parser.js.map +0 -1
  132. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts +0 -56
  133. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts.map +0 -1
  134. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js +0 -239
  135. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js.map +0 -1
  136. package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts +0 -64
  137. package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts.map +0 -1
  138. package/dist/plugins/specweave/lib/hooks/reflection-storage.js +0 -305
  139. package/dist/plugins/specweave/lib/hooks/reflection-storage.js.map +0 -1
  140. package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts +0 -43
  141. package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts.map +0 -1
  142. package/dist/plugins/specweave/lib/hooks/run-self-reflection.js +0 -203
  143. package/dist/plugins/specweave/lib/hooks/run-self-reflection.js.map +0 -1
  144. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts +0 -27
  145. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts.map +0 -1
  146. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js +0 -144
  147. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js.map +0 -1
  148. package/dist/plugins/specweave/lib/hooks/translate-file.d.ts +0 -59
  149. package/dist/plugins/specweave/lib/hooks/translate-file.d.ts.map +0 -1
  150. package/dist/plugins/specweave/lib/hooks/translate-file.js +0 -350
  151. package/dist/plugins/specweave/lib/hooks/translate-file.js.map +0 -1
  152. package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts +0 -13
  153. package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts.map +0 -1
  154. package/dist/plugins/specweave/lib/hooks/translate-living-docs.js +0 -175
  155. package/dist/plugins/specweave/lib/hooks/translate-living-docs.js.map +0 -1
  156. package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts +0 -164
  157. package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts.map +0 -1
  158. package/dist/plugins/specweave/lib/hooks/types/reflection-types.js +0 -73
  159. package/dist/plugins/specweave/lib/hooks/types/reflection-types.js.map +0 -1
  160. package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts +0 -29
  161. package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts.map +0 -1
  162. package/dist/plugins/specweave/lib/hooks/update-tasks-md.js +0 -203
  163. package/dist/plugins/specweave/lib/hooks/update-tasks-md.js.map +0 -1
  164. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts +0 -94
  165. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts.map +0 -1
  166. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js +0 -219
  167. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js.map +0 -1
  168. package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts +0 -124
  169. package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts.map +0 -1
  170. package/dist/plugins/specweave-ado/lib/ado-client-v2.js +0 -382
  171. package/dist/plugins/specweave-ado/lib/ado-client-v2.js.map +0 -1
  172. package/dist/plugins/specweave-ado/lib/ado-client.d.ts +0 -112
  173. package/dist/plugins/specweave-ado/lib/ado-client.d.ts.map +0 -1
  174. package/dist/plugins/specweave-ado/lib/ado-client.js +0 -257
  175. package/dist/plugins/specweave-ado/lib/ado-client.js.map +0 -1
  176. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts +0 -40
  177. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts.map +0 -1
  178. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js +0 -370
  179. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js.map +0 -1
  180. package/dist/plugins/specweave-ado/lib/ado-spec-sync.d.ts +0 -100
  181. package/dist/plugins/specweave-ado/lib/ado-spec-sync.d.ts.map +0 -1
  182. package/dist/plugins/specweave-ado/lib/ado-spec-sync.js +0 -471
  183. package/dist/plugins/specweave-ado/lib/ado-spec-sync.js.map +0 -1
  184. package/dist/plugins/specweave-ado/lib/project-selector.d.ts +0 -42
  185. package/dist/plugins/specweave-ado/lib/project-selector.d.ts.map +0 -1
  186. package/dist/plugins/specweave-ado/lib/project-selector.js +0 -211
  187. package/dist/plugins/specweave-ado/lib/project-selector.js.map +0 -1
  188. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.d.ts +0 -12
  189. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.d.ts.map +0 -1
  190. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.js +0 -28
  191. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.js.map +0 -1
  192. package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts +0 -54
  193. package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts.map +0 -1
  194. package/dist/plugins/specweave-github/lib/github-board-resolver.js +0 -122
  195. package/dist/plugins/specweave-github/lib/github-board-resolver.js.map +0 -1
  196. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts +0 -104
  197. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts.map +0 -1
  198. package/dist/plugins/specweave-github/lib/github-client-v2.js +0 -408
  199. package/dist/plugins/specweave-github/lib/github-client-v2.js.map +0 -1
  200. package/dist/plugins/specweave-github/lib/github-client.d.ts +0 -96
  201. package/dist/plugins/specweave-github/lib/github-client.d.ts.map +0 -1
  202. package/dist/plugins/specweave-github/lib/github-client.js +0 -299
  203. package/dist/plugins/specweave-github/lib/github-client.js.map +0 -1
  204. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts +0 -29
  205. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts.map +0 -1
  206. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js +0 -268
  207. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js.map +0 -1
  208. package/dist/plugins/specweave-github/lib/github-issue-updater.d.ts +0 -61
  209. package/dist/plugins/specweave-github/lib/github-issue-updater.d.ts.map +0 -1
  210. package/dist/plugins/specweave-github/lib/github-issue-updater.js +0 -327
  211. package/dist/plugins/specweave-github/lib/github-issue-updater.js.map +0 -1
  212. package/dist/plugins/specweave-github/lib/github-spec-sync.d.ts +0 -108
  213. package/dist/plugins/specweave-github/lib/github-spec-sync.d.ts.map +0 -1
  214. package/dist/plugins/specweave-github/lib/github-spec-sync.js +0 -505
  215. package/dist/plugins/specweave-github/lib/github-spec-sync.js.map +0 -1
  216. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.d.ts +0 -36
  217. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.d.ts.map +0 -1
  218. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.js +0 -228
  219. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.js.map +0 -1
  220. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.d.ts +0 -18
  221. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.d.ts.map +0 -1
  222. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.js +0 -287
  223. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.js.map +0 -1
  224. package/dist/plugins/specweave-github/lib/index.d.ts +0 -10
  225. package/dist/plugins/specweave-github/lib/index.d.ts.map +0 -1
  226. package/dist/plugins/specweave-github/lib/index.js +0 -10
  227. package/dist/plugins/specweave-github/lib/index.js.map +0 -1
  228. package/dist/plugins/specweave-github/lib/repo-selector.d.ts +0 -49
  229. package/dist/plugins/specweave-github/lib/repo-selector.d.ts.map +0 -1
  230. package/dist/plugins/specweave-github/lib/repo-selector.js +0 -216
  231. package/dist/plugins/specweave-github/lib/repo-selector.js.map +0 -1
  232. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts +0 -51
  233. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts.map +0 -1
  234. package/dist/plugins/specweave-github/lib/subtask-sync.js +0 -147
  235. package/dist/plugins/specweave-github/lib/subtask-sync.js.map +0 -1
  236. package/dist/plugins/specweave-github/lib/task-parser.d.ts +0 -37
  237. package/dist/plugins/specweave-github/lib/task-parser.d.ts.map +0 -1
  238. package/dist/plugins/specweave-github/lib/task-parser.js +0 -211
  239. package/dist/plugins/specweave-github/lib/task-parser.js.map +0 -1
  240. package/dist/plugins/specweave-github/lib/task-sync.d.ts +0 -51
  241. package/dist/plugins/specweave-github/lib/task-sync.d.ts.map +0 -1
  242. package/dist/plugins/specweave-github/lib/task-sync.js +0 -332
  243. package/dist/plugins/specweave-github/lib/task-sync.js.map +0 -1
  244. package/dist/plugins/specweave-github/lib/types.d.ts +0 -80
  245. package/dist/plugins/specweave-github/lib/types.d.ts.map +0 -1
  246. package/dist/plugins/specweave-github/lib/types.js +0 -5
  247. package/dist/plugins/specweave-github/lib/types.js.map +0 -1
  248. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts +0 -50
  249. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts.map +0 -1
  250. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js +0 -84
  251. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js.map +0 -1
  252. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts +0 -33
  253. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts.map +0 -1
  254. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js +0 -206
  255. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js.map +0 -1
  256. package/dist/plugins/specweave-jira/lib/jira-spec-sync.d.ts +0 -105
  257. package/dist/plugins/specweave-jira/lib/jira-spec-sync.d.ts.map +0 -1
  258. package/dist/plugins/specweave-jira/lib/jira-spec-sync.js +0 -456
  259. package/dist/plugins/specweave-jira/lib/jira-spec-sync.js.map +0 -1
  260. package/dist/plugins/specweave-jira/lib/project-selector.d.ts +0 -42
  261. package/dist/plugins/specweave-jira/lib/project-selector.d.ts.map +0 -1
  262. package/dist/plugins/specweave-jira/lib/project-selector.js +0 -216
  263. package/dist/plugins/specweave-jira/lib/project-selector.js.map +0 -1
  264. package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts +0 -67
  265. package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts.map +0 -1
  266. package/dist/plugins/specweave-jira/lib/reorganization-detector.js +0 -252
  267. package/dist/plugins/specweave-jira/lib/reorganization-detector.js.map +0 -1
  268. package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts +0 -29
  269. package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts.map +0 -1
  270. package/dist/plugins/specweave-jira/lib/setup-wizard.js +0 -219
  271. package/dist/plugins/specweave-jira/lib/setup-wizard.js.map +0 -1
  272. package/dist/src/adapters/adapter-base.d.ts +0 -71
  273. package/dist/src/adapters/adapter-base.d.ts.map +0 -1
  274. package/dist/src/adapters/adapter-base.js +0 -139
  275. package/dist/src/adapters/adapter-base.js.map +0 -1
  276. package/dist/src/adapters/adapter-interface.d.ts +0 -149
  277. package/dist/src/adapters/adapter-interface.d.ts.map +0 -1
  278. package/dist/src/adapters/adapter-interface.js +0 -8
  279. package/dist/src/adapters/adapter-interface.js.map +0 -1
  280. package/dist/src/adapters/adapter-loader.d.ts +0 -91
  281. package/dist/src/adapters/adapter-loader.d.ts.map +0 -1
  282. package/dist/src/adapters/adapter-loader.js +0 -238
  283. package/dist/src/adapters/adapter-loader.js.map +0 -1
  284. package/dist/src/adapters/agents-md-generator.d.ts +0 -48
  285. package/dist/src/adapters/agents-md-generator.d.ts.map +0 -1
  286. package/dist/src/adapters/agents-md-generator.js +0 -193
  287. package/dist/src/adapters/agents-md-generator.js.map +0 -1
  288. package/dist/src/adapters/claude/adapter.d.ts +0 -128
  289. package/dist/src/adapters/claude/adapter.d.ts.map +0 -1
  290. package/dist/src/adapters/claude/adapter.js +0 -415
  291. package/dist/src/adapters/claude/adapter.js.map +0 -1
  292. package/dist/src/adapters/claude-md-generator.d.ts +0 -78
  293. package/dist/src/adapters/claude-md-generator.d.ts.map +0 -1
  294. package/dist/src/adapters/claude-md-generator.js +0 -307
  295. package/dist/src/adapters/claude-md-generator.js.map +0 -1
  296. package/dist/src/adapters/codex/adapter.d.ts +0 -50
  297. package/dist/src/adapters/codex/adapter.d.ts.map +0 -1
  298. package/dist/src/adapters/codex/adapter.js +0 -316
  299. package/dist/src/adapters/codex/adapter.js.map +0 -1
  300. package/dist/src/adapters/cursor/adapter.d.ts +0 -98
  301. package/dist/src/adapters/cursor/adapter.d.ts.map +0 -1
  302. package/dist/src/adapters/cursor/adapter.js +0 -406
  303. package/dist/src/adapters/cursor/adapter.js.map +0 -1
  304. package/dist/src/adapters/doc-generator.d.ts +0 -69
  305. package/dist/src/adapters/doc-generator.d.ts.map +0 -1
  306. package/dist/src/adapters/doc-generator.js +0 -247
  307. package/dist/src/adapters/doc-generator.js.map +0 -1
  308. package/dist/src/adapters/gemini/adapter.d.ts +0 -50
  309. package/dist/src/adapters/gemini/adapter.d.ts.map +0 -1
  310. package/dist/src/adapters/gemini/adapter.js +0 -281
  311. package/dist/src/adapters/gemini/adapter.js.map +0 -1
  312. package/dist/src/adapters/generic/adapter.d.ts +0 -86
  313. package/dist/src/adapters/generic/adapter.d.ts.map +0 -1
  314. package/dist/src/adapters/generic/adapter.js +0 -338
  315. package/dist/src/adapters/generic/adapter.js.map +0 -1
  316. package/dist/src/cli/commands/abandon.d.ts +0 -13
  317. package/dist/src/cli/commands/abandon.d.ts.map +0 -1
  318. package/dist/src/cli/commands/abandon.js +0 -15
  319. package/dist/src/cli/commands/abandon.js.map +0 -1
  320. package/dist/src/cli/commands/import-docs.d.ts +0 -21
  321. package/dist/src/cli/commands/import-docs.d.ts.map +0 -1
  322. package/dist/src/cli/commands/import-docs.js +0 -146
  323. package/dist/src/cli/commands/import-docs.js.map +0 -1
  324. package/dist/src/cli/commands/init-multiproject.d.ts +0 -11
  325. package/dist/src/cli/commands/init-multiproject.d.ts.map +0 -1
  326. package/dist/src/cli/commands/init-multiproject.js +0 -202
  327. package/dist/src/cli/commands/init-multiproject.js.map +0 -1
  328. package/dist/src/cli/commands/init.d.ts +0 -9
  329. package/dist/src/cli/commands/init.d.ts.map +0 -1
  330. package/dist/src/cli/commands/init.js +0 -1444
  331. package/dist/src/cli/commands/init.js.map +0 -1
  332. package/dist/src/cli/commands/install.d.ts +0 -9
  333. package/dist/src/cli/commands/install.d.ts.map +0 -1
  334. package/dist/src/cli/commands/install.js +0 -127
  335. package/dist/src/cli/commands/install.js.map +0 -1
  336. package/dist/src/cli/commands/list.d.ts +0 -8
  337. package/dist/src/cli/commands/list.d.ts.map +0 -1
  338. package/dist/src/cli/commands/list.js +0 -119
  339. package/dist/src/cli/commands/list.js.map +0 -1
  340. package/dist/src/cli/commands/migrate-to-multiproject.d.ts +0 -37
  341. package/dist/src/cli/commands/migrate-to-multiproject.d.ts.map +0 -1
  342. package/dist/src/cli/commands/migrate-to-multiproject.js +0 -189
  343. package/dist/src/cli/commands/migrate-to-multiproject.js.map +0 -1
  344. package/dist/src/cli/commands/migrate-to-profiles.d.ts +0 -25
  345. package/dist/src/cli/commands/migrate-to-profiles.d.ts.map +0 -1
  346. package/dist/src/cli/commands/migrate-to-profiles.js +0 -350
  347. package/dist/src/cli/commands/migrate-to-profiles.js.map +0 -1
  348. package/dist/src/cli/commands/pause.d.ts +0 -13
  349. package/dist/src/cli/commands/pause.d.ts.map +0 -1
  350. package/dist/src/cli/commands/pause.js +0 -15
  351. package/dist/src/cli/commands/pause.js.map +0 -1
  352. package/dist/src/cli/commands/qa.d.ts +0 -54
  353. package/dist/src/cli/commands/qa.d.ts.map +0 -1
  354. package/dist/src/cli/commands/qa.js +0 -98
  355. package/dist/src/cli/commands/qa.js.map +0 -1
  356. package/dist/src/cli/commands/resume.d.ts +0 -12
  357. package/dist/src/cli/commands/resume.d.ts.map +0 -1
  358. package/dist/src/cli/commands/resume.js +0 -14
  359. package/dist/src/cli/commands/resume.js.map +0 -1
  360. package/dist/src/cli/commands/status.d.ts +0 -12
  361. package/dist/src/cli/commands/status.d.ts.map +0 -1
  362. package/dist/src/cli/commands/status.js +0 -23
  363. package/dist/src/cli/commands/status.js.map +0 -1
  364. package/dist/src/cli/commands/switch-project.d.ts +0 -13
  365. package/dist/src/cli/commands/switch-project.d.ts.map +0 -1
  366. package/dist/src/cli/commands/switch-project.js +0 -91
  367. package/dist/src/cli/commands/switch-project.js.map +0 -1
  368. package/dist/src/cli/commands/validate-jira.d.ts +0 -35
  369. package/dist/src/cli/commands/validate-jira.d.ts.map +0 -1
  370. package/dist/src/cli/commands/validate-jira.js +0 -112
  371. package/dist/src/cli/commands/validate-jira.js.map +0 -1
  372. package/dist/src/cli/commands/validate-plugins.d.ts +0 -41
  373. package/dist/src/cli/commands/validate-plugins.d.ts.map +0 -1
  374. package/dist/src/cli/commands/validate-plugins.js +0 -171
  375. package/dist/src/cli/commands/validate-plugins.js.map +0 -1
  376. package/dist/src/cli/helpers/issue-tracker/ado.d.ts +0 -57
  377. package/dist/src/cli/helpers/issue-tracker/ado.d.ts.map +0 -1
  378. package/dist/src/cli/helpers/issue-tracker/ado.js +0 -243
  379. package/dist/src/cli/helpers/issue-tracker/ado.js.map +0 -1
  380. package/dist/src/cli/helpers/issue-tracker/github.d.ts +0 -65
  381. package/dist/src/cli/helpers/issue-tracker/github.d.ts.map +0 -1
  382. package/dist/src/cli/helpers/issue-tracker/github.js +0 -426
  383. package/dist/src/cli/helpers/issue-tracker/github.js.map +0 -1
  384. package/dist/src/cli/helpers/issue-tracker/index.d.ts +0 -22
  385. package/dist/src/cli/helpers/issue-tracker/index.d.ts.map +0 -1
  386. package/dist/src/cli/helpers/issue-tracker/index.js +0 -314
  387. package/dist/src/cli/helpers/issue-tracker/index.js.map +0 -1
  388. package/dist/src/cli/helpers/issue-tracker/jira.d.ts +0 -61
  389. package/dist/src/cli/helpers/issue-tracker/jira.d.ts.map +0 -1
  390. package/dist/src/cli/helpers/issue-tracker/jira.js +0 -404
  391. package/dist/src/cli/helpers/issue-tracker/jira.js.map +0 -1
  392. package/dist/src/cli/helpers/issue-tracker/types.d.ts +0 -108
  393. package/dist/src/cli/helpers/issue-tracker/types.d.ts.map +0 -1
  394. package/dist/src/cli/helpers/issue-tracker/types.js +0 -16
  395. package/dist/src/cli/helpers/issue-tracker/types.js.map +0 -1
  396. package/dist/src/cli/helpers/issue-tracker/utils.d.ts +0 -112
  397. package/dist/src/cli/helpers/issue-tracker/utils.d.ts.map +0 -1
  398. package/dist/src/cli/helpers/issue-tracker/utils.js +0 -247
  399. package/dist/src/cli/helpers/issue-tracker/utils.js.map +0 -1
  400. package/dist/src/core/agent-model-manager.d.ts +0 -52
  401. package/dist/src/core/agent-model-manager.d.ts.map +0 -1
  402. package/dist/src/core/agent-model-manager.js +0 -120
  403. package/dist/src/core/agent-model-manager.js.map +0 -1
  404. package/dist/src/core/brownfield/analyzer.d.ts +0 -86
  405. package/dist/src/core/brownfield/analyzer.d.ts.map +0 -1
  406. package/dist/src/core/brownfield/analyzer.js +0 -365
  407. package/dist/src/core/brownfield/analyzer.js.map +0 -1
  408. package/dist/src/core/brownfield/importer.d.ts +0 -76
  409. package/dist/src/core/brownfield/importer.d.ts.map +0 -1
  410. package/dist/src/core/brownfield/importer.js +0 -287
  411. package/dist/src/core/brownfield/importer.js.map +0 -1
  412. package/dist/src/core/config-manager.d.ts +0 -47
  413. package/dist/src/core/config-manager.d.ts.map +0 -1
  414. package/dist/src/core/config-manager.js +0 -136
  415. package/dist/src/core/config-manager.js.map +0 -1
  416. package/dist/src/core/cost-tracker.d.ts +0 -108
  417. package/dist/src/core/cost-tracker.d.ts.map +0 -1
  418. package/dist/src/core/cost-tracker.js +0 -281
  419. package/dist/src/core/cost-tracker.js.map +0 -1
  420. package/dist/src/core/credentials-manager.d.ts +0 -107
  421. package/dist/src/core/credentials-manager.d.ts.map +0 -1
  422. package/dist/src/core/credentials-manager.js +0 -457
  423. package/dist/src/core/credentials-manager.js.map +0 -1
  424. package/dist/src/core/i18n/language-detector.d.ts +0 -29
  425. package/dist/src/core/i18n/language-detector.d.ts.map +0 -1
  426. package/dist/src/core/i18n/language-detector.js +0 -143
  427. package/dist/src/core/i18n/language-detector.js.map +0 -1
  428. package/dist/src/core/i18n/language-manager.d.ts +0 -101
  429. package/dist/src/core/i18n/language-manager.d.ts.map +0 -1
  430. package/dist/src/core/i18n/language-manager.js +0 -232
  431. package/dist/src/core/i18n/language-manager.js.map +0 -1
  432. package/dist/src/core/i18n/language-registry.d.ts +0 -44
  433. package/dist/src/core/i18n/language-registry.d.ts.map +0 -1
  434. package/dist/src/core/i18n/language-registry.js +0 -234
  435. package/dist/src/core/i18n/language-registry.js.map +0 -1
  436. package/dist/src/core/i18n/locale-manager.d.ts +0 -62
  437. package/dist/src/core/i18n/locale-manager.d.ts.map +0 -1
  438. package/dist/src/core/i18n/locale-manager.js +0 -137
  439. package/dist/src/core/i18n/locale-manager.js.map +0 -1
  440. package/dist/src/core/i18n/system-prompt-injector.d.ts +0 -33
  441. package/dist/src/core/i18n/system-prompt-injector.d.ts.map +0 -1
  442. package/dist/src/core/i18n/system-prompt-injector.js +0 -131
  443. package/dist/src/core/i18n/system-prompt-injector.js.map +0 -1
  444. package/dist/src/core/i18n/types.d.ts +0 -151
  445. package/dist/src/core/i18n/types.d.ts.map +0 -1
  446. package/dist/src/core/i18n/types.js +0 -11
  447. package/dist/src/core/i18n/types.js.map +0 -1
  448. package/dist/src/core/increment/limits.d.ts +0 -68
  449. package/dist/src/core/increment/limits.d.ts.map +0 -1
  450. package/dist/src/core/increment/limits.js +0 -224
  451. package/dist/src/core/increment/limits.js.map +0 -1
  452. package/dist/src/core/increment/metadata-manager.d.ts +0 -114
  453. package/dist/src/core/increment/metadata-manager.d.ts.map +0 -1
  454. package/dist/src/core/increment/metadata-manager.js +0 -320
  455. package/dist/src/core/increment/metadata-manager.js.map +0 -1
  456. package/dist/src/core/increment/status-commands.d.ts +0 -43
  457. package/dist/src/core/increment/status-commands.d.ts.map +0 -1
  458. package/dist/src/core/increment/status-commands.js +0 -277
  459. package/dist/src/core/increment/status-commands.js.map +0 -1
  460. package/dist/src/core/increment-status.d.ts +0 -72
  461. package/dist/src/core/increment-status.d.ts.map +0 -1
  462. package/dist/src/core/increment-status.js +0 -227
  463. package/dist/src/core/increment-status.js.map +0 -1
  464. package/dist/src/core/model-selector.d.ts +0 -57
  465. package/dist/src/core/model-selector.d.ts.map +0 -1
  466. package/dist/src/core/model-selector.js +0 -115
  467. package/dist/src/core/model-selector.js.map +0 -1
  468. package/dist/src/core/phase-detector.d.ts +0 -62
  469. package/dist/src/core/phase-detector.d.ts.map +0 -1
  470. package/dist/src/core/phase-detector.js +0 -229
  471. package/dist/src/core/phase-detector.js.map +0 -1
  472. package/dist/src/core/plugin-loader.d.ts +0 -131
  473. package/dist/src/core/plugin-loader.d.ts.map +0 -1
  474. package/dist/src/core/plugin-loader.js +0 -421
  475. package/dist/src/core/plugin-loader.js.map +0 -1
  476. package/dist/src/core/project-manager.d.ts +0 -127
  477. package/dist/src/core/project-manager.d.ts.map +0 -1
  478. package/dist/src/core/project-manager.js +0 -524
  479. package/dist/src/core/project-manager.js.map +0 -1
  480. package/dist/src/core/project-structure-detector.d.ts +0 -92
  481. package/dist/src/core/project-structure-detector.d.ts.map +0 -1
  482. package/dist/src/core/project-structure-detector.js +0 -289
  483. package/dist/src/core/project-structure-detector.js.map +0 -1
  484. package/dist/src/core/qa/qa-runner.d.ts +0 -16
  485. package/dist/src/core/qa/qa-runner.d.ts.map +0 -1
  486. package/dist/src/core/qa/qa-runner.js +0 -404
  487. package/dist/src/core/qa/qa-runner.js.map +0 -1
  488. package/dist/src/core/qa/quality-gate-decider.d.ts +0 -53
  489. package/dist/src/core/qa/quality-gate-decider.d.ts.map +0 -1
  490. package/dist/src/core/qa/quality-gate-decider.js +0 -268
  491. package/dist/src/core/qa/quality-gate-decider.js.map +0 -1
  492. package/dist/src/core/qa/risk-calculator.d.ts +0 -126
  493. package/dist/src/core/qa/risk-calculator.d.ts.map +0 -1
  494. package/dist/src/core/qa/risk-calculator.js +0 -247
  495. package/dist/src/core/qa/risk-calculator.js.map +0 -1
  496. package/dist/src/core/qa/types.d.ts +0 -315
  497. package/dist/src/core/qa/types.d.ts.map +0 -1
  498. package/dist/src/core/qa/types.js +0 -8
  499. package/dist/src/core/qa/types.js.map +0 -1
  500. package/dist/src/core/rfc-generator-v2.d.ts +0 -149
  501. package/dist/src/core/rfc-generator-v2.d.ts.map +0 -1
  502. package/dist/src/core/rfc-generator-v2.js +0 -399
  503. package/dist/src/core/rfc-generator-v2.js.map +0 -1
  504. package/dist/src/core/specs/spec-metadata-manager.d.ts +0 -70
  505. package/dist/src/core/specs/spec-metadata-manager.d.ts.map +0 -1
  506. package/dist/src/core/specs/spec-metadata-manager.js +0 -371
  507. package/dist/src/core/specs/spec-metadata-manager.js.map +0 -1
  508. package/dist/src/core/specs/spec-parser.d.ts +0 -66
  509. package/dist/src/core/specs/spec-parser.d.ts.map +0 -1
  510. package/dist/src/core/specs/spec-parser.js +0 -276
  511. package/dist/src/core/specs/spec-parser.js.map +0 -1
  512. package/dist/src/core/sync/bidirectional-engine.d.ts +0 -110
  513. package/dist/src/core/sync/bidirectional-engine.d.ts.map +0 -1
  514. package/dist/src/core/sync/bidirectional-engine.js +0 -356
  515. package/dist/src/core/sync/bidirectional-engine.js.map +0 -1
  516. package/dist/src/core/sync/folder-mapper.d.ts +0 -71
  517. package/dist/src/core/sync/folder-mapper.d.ts.map +0 -1
  518. package/dist/src/core/sync/folder-mapper.js +0 -168
  519. package/dist/src/core/sync/folder-mapper.js.map +0 -1
  520. package/dist/src/core/sync/profile-manager.d.ts +0 -72
  521. package/dist/src/core/sync/profile-manager.d.ts.map +0 -1
  522. package/dist/src/core/sync/profile-manager.js +0 -338
  523. package/dist/src/core/sync/profile-manager.js.map +0 -1
  524. package/dist/src/core/sync/profile-selector.d.ts +0 -52
  525. package/dist/src/core/sync/profile-selector.d.ts.map +0 -1
  526. package/dist/src/core/sync/profile-selector.js +0 -179
  527. package/dist/src/core/sync/profile-selector.js.map +0 -1
  528. package/dist/src/core/sync/profile-validator.d.ts +0 -52
  529. package/dist/src/core/sync/profile-validator.d.ts.map +0 -1
  530. package/dist/src/core/sync/profile-validator.js +0 -225
  531. package/dist/src/core/sync/profile-validator.js.map +0 -1
  532. package/dist/src/core/sync/project-context.d.ts +0 -81
  533. package/dist/src/core/sync/project-context.d.ts.map +0 -1
  534. package/dist/src/core/sync/project-context.js +0 -354
  535. package/dist/src/core/sync/project-context.js.map +0 -1
  536. package/dist/src/core/sync/rate-limiter.d.ts +0 -116
  537. package/dist/src/core/sync/rate-limiter.d.ts.map +0 -1
  538. package/dist/src/core/sync/rate-limiter.js +0 -308
  539. package/dist/src/core/sync/rate-limiter.js.map +0 -1
  540. package/dist/src/core/sync/time-range-selector.d.ts +0 -48
  541. package/dist/src/core/sync/time-range-selector.d.ts.map +0 -1
  542. package/dist/src/core/sync/time-range-selector.js +0 -224
  543. package/dist/src/core/sync/time-range-selector.js.map +0 -1
  544. package/dist/src/core/types/config.d.ts +0 -90
  545. package/dist/src/core/types/config.d.ts.map +0 -1
  546. package/dist/src/core/types/config.js +0 -44
  547. package/dist/src/core/types/config.js.map +0 -1
  548. package/dist/src/core/types/increment-metadata.d.ts +0 -120
  549. package/dist/src/core/types/increment-metadata.d.ts.map +0 -1
  550. package/dist/src/core/types/increment-metadata.js +0 -138
  551. package/dist/src/core/types/increment-metadata.js.map +0 -1
  552. package/dist/src/core/types/plugin.d.ts +0 -283
  553. package/dist/src/core/types/plugin.d.ts.map +0 -1
  554. package/dist/src/core/types/plugin.js +0 -49
  555. package/dist/src/core/types/plugin.js.map +0 -1
  556. package/dist/src/core/types/spec-metadata.d.ts +0 -229
  557. package/dist/src/core/types/spec-metadata.d.ts.map +0 -1
  558. package/dist/src/core/types/spec-metadata.js +0 -14
  559. package/dist/src/core/types/spec-metadata.js.map +0 -1
  560. package/dist/src/core/types/sync-profile.d.ts +0 -403
  561. package/dist/src/core/types/sync-profile.d.ts.map +0 -1
  562. package/dist/src/core/types/sync-profile.js +0 -55
  563. package/dist/src/core/types/sync-profile.js.map +0 -1
  564. package/dist/src/hooks/lib/git-diff-analyzer.d.ts +0 -89
  565. package/dist/src/hooks/lib/git-diff-analyzer.d.ts.map +0 -1
  566. package/dist/src/hooks/lib/git-diff-analyzer.js +0 -226
  567. package/dist/src/hooks/lib/git-diff-analyzer.js.map +0 -1
  568. package/dist/src/hooks/lib/invoke-translator-skill.d.ts +0 -60
  569. package/dist/src/hooks/lib/invoke-translator-skill.d.ts.map +0 -1
  570. package/dist/src/hooks/lib/invoke-translator-skill.js +0 -201
  571. package/dist/src/hooks/lib/invoke-translator-skill.js.map +0 -1
  572. package/dist/src/hooks/lib/prepare-reflection-context.d.ts +0 -42
  573. package/dist/src/hooks/lib/prepare-reflection-context.d.ts.map +0 -1
  574. package/dist/src/hooks/lib/prepare-reflection-context.js +0 -123
  575. package/dist/src/hooks/lib/prepare-reflection-context.js.map +0 -1
  576. package/dist/src/hooks/lib/reflection-config-loader.d.ts +0 -45
  577. package/dist/src/hooks/lib/reflection-config-loader.d.ts.map +0 -1
  578. package/dist/src/hooks/lib/reflection-config-loader.js +0 -132
  579. package/dist/src/hooks/lib/reflection-config-loader.js.map +0 -1
  580. package/dist/src/hooks/lib/reflection-parser.d.ts +0 -33
  581. package/dist/src/hooks/lib/reflection-parser.d.ts.map +0 -1
  582. package/dist/src/hooks/lib/reflection-parser.js +0 -419
  583. package/dist/src/hooks/lib/reflection-parser.js.map +0 -1
  584. package/dist/src/hooks/lib/reflection-prompt-builder.d.ts +0 -56
  585. package/dist/src/hooks/lib/reflection-prompt-builder.d.ts.map +0 -1
  586. package/dist/src/hooks/lib/reflection-prompt-builder.js +0 -239
  587. package/dist/src/hooks/lib/reflection-prompt-builder.js.map +0 -1
  588. package/dist/src/hooks/lib/reflection-storage.d.ts +0 -64
  589. package/dist/src/hooks/lib/reflection-storage.d.ts.map +0 -1
  590. package/dist/src/hooks/lib/reflection-storage.js +0 -305
  591. package/dist/src/hooks/lib/reflection-storage.js.map +0 -1
  592. package/dist/src/hooks/lib/run-self-reflection.d.ts +0 -43
  593. package/dist/src/hooks/lib/run-self-reflection.d.ts.map +0 -1
  594. package/dist/src/hooks/lib/run-self-reflection.js +0 -203
  595. package/dist/src/hooks/lib/run-self-reflection.js.map +0 -1
  596. package/dist/src/hooks/lib/sync-living-docs.d.ts +0 -27
  597. package/dist/src/hooks/lib/sync-living-docs.d.ts.map +0 -1
  598. package/dist/src/hooks/lib/sync-living-docs.js +0 -116
  599. package/dist/src/hooks/lib/sync-living-docs.js.map +0 -1
  600. package/dist/src/hooks/lib/translate-file.d.ts +0 -59
  601. package/dist/src/hooks/lib/translate-file.d.ts.map +0 -1
  602. package/dist/src/hooks/lib/translate-file.js +0 -350
  603. package/dist/src/hooks/lib/translate-file.js.map +0 -1
  604. package/dist/src/hooks/lib/translate-living-docs.d.ts +0 -13
  605. package/dist/src/hooks/lib/translate-living-docs.d.ts.map +0 -1
  606. package/dist/src/hooks/lib/translate-living-docs.js +0 -175
  607. package/dist/src/hooks/lib/translate-living-docs.js.map +0 -1
  608. package/dist/src/hooks/lib/types/reflection-types.d.ts +0 -164
  609. package/dist/src/hooks/lib/types/reflection-types.d.ts.map +0 -1
  610. package/dist/src/hooks/lib/types/reflection-types.js +0 -73
  611. package/dist/src/hooks/lib/types/reflection-types.js.map +0 -1
  612. package/dist/src/hooks/lib/update-tasks-md.d.ts +0 -29
  613. package/dist/src/hooks/lib/update-tasks-md.d.ts.map +0 -1
  614. package/dist/src/hooks/lib/update-tasks-md.js +0 -203
  615. package/dist/src/hooks/lib/update-tasks-md.js.map +0 -1
  616. package/dist/src/integrations/ado/ado-client.d.ts +0 -127
  617. package/dist/src/integrations/ado/ado-client.d.ts.map +0 -1
  618. package/dist/src/integrations/ado/ado-client.js +0 -416
  619. package/dist/src/integrations/ado/ado-client.js.map +0 -1
  620. package/dist/src/integrations/jira/jira-client.d.ts +0 -139
  621. package/dist/src/integrations/jira/jira-client.d.ts.map +0 -1
  622. package/dist/src/integrations/jira/jira-client.js +0 -386
  623. package/dist/src/integrations/jira/jira-client.js.map +0 -1
  624. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts +0 -75
  625. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts.map +0 -1
  626. package/dist/src/integrations/jira/jira-incremental-mapper.js +0 -474
  627. package/dist/src/integrations/jira/jira-incremental-mapper.js.map +0 -1
  628. package/dist/src/integrations/jira/jira-mapper.d.ts +0 -105
  629. package/dist/src/integrations/jira/jira-mapper.d.ts.map +0 -1
  630. package/dist/src/integrations/jira/jira-mapper.js +0 -494
  631. package/dist/src/integrations/jira/jira-mapper.js.map +0 -1
  632. package/dist/src/metrics/calculators/change-failure-rate.d.ts +0 -22
  633. package/dist/src/metrics/calculators/change-failure-rate.d.ts.map +0 -1
  634. package/dist/src/metrics/calculators/change-failure-rate.js +0 -70
  635. package/dist/src/metrics/calculators/change-failure-rate.js.map +0 -1
  636. package/dist/src/metrics/calculators/deployment-frequency.d.ts +0 -20
  637. package/dist/src/metrics/calculators/deployment-frequency.d.ts.map +0 -1
  638. package/dist/src/metrics/calculators/deployment-frequency.js +0 -61
  639. package/dist/src/metrics/calculators/deployment-frequency.js.map +0 -1
  640. package/dist/src/metrics/calculators/lead-time.d.ts +0 -22
  641. package/dist/src/metrics/calculators/lead-time.d.ts.map +0 -1
  642. package/dist/src/metrics/calculators/lead-time.js +0 -82
  643. package/dist/src/metrics/calculators/lead-time.js.map +0 -1
  644. package/dist/src/metrics/calculators/mttr.d.ts +0 -21
  645. package/dist/src/metrics/calculators/mttr.d.ts.map +0 -1
  646. package/dist/src/metrics/calculators/mttr.js +0 -60
  647. package/dist/src/metrics/calculators/mttr.js.map +0 -1
  648. package/dist/src/metrics/dora-calculator.d.ts +0 -28
  649. package/dist/src/metrics/dora-calculator.d.ts.map +0 -1
  650. package/dist/src/metrics/dora-calculator.js +0 -117
  651. package/dist/src/metrics/dora-calculator.js.map +0 -1
  652. package/dist/src/metrics/github-client.d.ts +0 -51
  653. package/dist/src/metrics/github-client.d.ts.map +0 -1
  654. package/dist/src/metrics/github-client.js +0 -133
  655. package/dist/src/metrics/github-client.js.map +0 -1
  656. package/dist/src/metrics/report-generator.d.ts +0 -17
  657. package/dist/src/metrics/report-generator.d.ts.map +0 -1
  658. package/dist/src/metrics/report-generator.js +0 -403
  659. package/dist/src/metrics/report-generator.js.map +0 -1
  660. package/dist/src/metrics/types.d.ts +0 -112
  661. package/dist/src/metrics/types.d.ts.map +0 -1
  662. package/dist/src/metrics/types.js +0 -10
  663. package/dist/src/metrics/types.js.map +0 -1
  664. package/dist/src/metrics/utils/percentile.d.ts +0 -25
  665. package/dist/src/metrics/utils/percentile.d.ts.map +0 -1
  666. package/dist/src/metrics/utils/percentile.js +0 -46
  667. package/dist/src/metrics/utils/percentile.js.map +0 -1
  668. package/dist/src/metrics/utils/tier-classifier.d.ts +0 -61
  669. package/dist/src/metrics/utils/tier-classifier.d.ts.map +0 -1
  670. package/dist/src/metrics/utils/tier-classifier.js +0 -100
  671. package/dist/src/metrics/utils/tier-classifier.js.map +0 -1
  672. package/dist/src/testing/test-generator.d.ts +0 -117
  673. package/dist/src/testing/test-generator.d.ts.map +0 -1
  674. package/dist/src/testing/test-generator.js +0 -370
  675. package/dist/src/testing/test-generator.js.map +0 -1
  676. package/dist/src/types/cost-tracking.d.ts +0 -43
  677. package/dist/src/types/cost-tracking.d.ts.map +0 -1
  678. package/dist/src/types/cost-tracking.js +0 -8
  679. package/dist/src/types/cost-tracking.js.map +0 -1
  680. package/dist/src/types/model-selection.d.ts +0 -53
  681. package/dist/src/types/model-selection.d.ts.map +0 -1
  682. package/dist/src/types/model-selection.js +0 -12
  683. package/dist/src/types/model-selection.js.map +0 -1
  684. package/dist/src/utils/agents-md-compiler.d.ts +0 -68
  685. package/dist/src/utils/agents-md-compiler.d.ts.map +0 -1
  686. package/dist/src/utils/agents-md-compiler.js +0 -420
  687. package/dist/src/utils/agents-md-compiler.js.map +0 -1
  688. package/dist/src/utils/auth-helpers.d.ts +0 -58
  689. package/dist/src/utils/auth-helpers.d.ts.map +0 -1
  690. package/dist/src/utils/auth-helpers.js +0 -108
  691. package/dist/src/utils/auth-helpers.js.map +0 -1
  692. package/dist/src/utils/auto-install.d.ts +0 -47
  693. package/dist/src/utils/auto-install.d.ts.map +0 -1
  694. package/dist/src/utils/auto-install.js +0 -211
  695. package/dist/src/utils/auto-install.js.map +0 -1
  696. package/dist/src/utils/claude-cli-detector.d.ts +0 -75
  697. package/dist/src/utils/claude-cli-detector.d.ts.map +0 -1
  698. package/dist/src/utils/claude-cli-detector.js +0 -285
  699. package/dist/src/utils/claude-cli-detector.js.map +0 -1
  700. package/dist/src/utils/cost-reporter.d.ts +0 -58
  701. package/dist/src/utils/cost-reporter.d.ts.map +0 -1
  702. package/dist/src/utils/cost-reporter.js +0 -224
  703. package/dist/src/utils/cost-reporter.js.map +0 -1
  704. package/dist/src/utils/docs-preview/config-generator.d.ts +0 -46
  705. package/dist/src/utils/docs-preview/config-generator.d.ts.map +0 -1
  706. package/dist/src/utils/docs-preview/config-generator.js +0 -377
  707. package/dist/src/utils/docs-preview/config-generator.js.map +0 -1
  708. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts +0 -38
  709. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts.map +0 -1
  710. package/dist/src/utils/docs-preview/docusaurus-setup.js +0 -177
  711. package/dist/src/utils/docs-preview/docusaurus-setup.js.map +0 -1
  712. package/dist/src/utils/docs-preview/index.d.ts +0 -7
  713. package/dist/src/utils/docs-preview/index.d.ts.map +0 -1
  714. package/dist/src/utils/docs-preview/index.js +0 -7
  715. package/dist/src/utils/docs-preview/index.js.map +0 -1
  716. package/dist/src/utils/docs-preview/package-installer.d.ts +0 -42
  717. package/dist/src/utils/docs-preview/package-installer.d.ts.map +0 -1
  718. package/dist/src/utils/docs-preview/package-installer.js +0 -182
  719. package/dist/src/utils/docs-preview/package-installer.js.map +0 -1
  720. package/dist/src/utils/docs-preview/server-manager.d.ts +0 -30
  721. package/dist/src/utils/docs-preview/server-manager.d.ts.map +0 -1
  722. package/dist/src/utils/docs-preview/server-manager.js +0 -212
  723. package/dist/src/utils/docs-preview/server-manager.js.map +0 -1
  724. package/dist/src/utils/docs-preview/sidebar-builder.d.ts +0 -32
  725. package/dist/src/utils/docs-preview/sidebar-builder.d.ts.map +0 -1
  726. package/dist/src/utils/docs-preview/sidebar-builder.js +0 -202
  727. package/dist/src/utils/docs-preview/sidebar-builder.js.map +0 -1
  728. package/dist/src/utils/docs-preview/types.d.ts +0 -57
  729. package/dist/src/utils/docs-preview/types.d.ts.map +0 -1
  730. package/dist/src/utils/docs-preview/types.js +0 -2
  731. package/dist/src/utils/docs-preview/types.js.map +0 -1
  732. package/dist/src/utils/env-file.d.ts +0 -88
  733. package/dist/src/utils/env-file.d.ts.map +0 -1
  734. package/dist/src/utils/env-file.js +0 -180
  735. package/dist/src/utils/env-file.js.map +0 -1
  736. package/dist/src/utils/env-multi-project-parser.d.ts +0 -220
  737. package/dist/src/utils/env-multi-project-parser.d.ts.map +0 -1
  738. package/dist/src/utils/env-multi-project-parser.js +0 -403
  739. package/dist/src/utils/env-multi-project-parser.js.map +0 -1
  740. package/dist/src/utils/esm-helpers.d.ts +0 -50
  741. package/dist/src/utils/esm-helpers.d.ts.map +0 -1
  742. package/dist/src/utils/esm-helpers.js +0 -57
  743. package/dist/src/utils/esm-helpers.js.map +0 -1
  744. package/dist/src/utils/execFileNoThrow.d.ts +0 -99
  745. package/dist/src/utils/execFileNoThrow.d.ts.map +0 -1
  746. package/dist/src/utils/execFileNoThrow.js +0 -137
  747. package/dist/src/utils/execFileNoThrow.js.map +0 -1
  748. package/dist/src/utils/external-resource-validator.d.ts +0 -102
  749. package/dist/src/utils/external-resource-validator.d.ts.map +0 -1
  750. package/dist/src/utils/external-resource-validator.js +0 -442
  751. package/dist/src/utils/external-resource-validator.js.map +0 -1
  752. package/dist/src/utils/generate-skills-index.d.ts +0 -24
  753. package/dist/src/utils/generate-skills-index.d.ts.map +0 -1
  754. package/dist/src/utils/generate-skills-index.js +0 -410
  755. package/dist/src/utils/generate-skills-index.js.map +0 -1
  756. package/dist/src/utils/model-selection.d.ts +0 -75
  757. package/dist/src/utils/model-selection.d.ts.map +0 -1
  758. package/dist/src/utils/model-selection.js +0 -204
  759. package/dist/src/utils/model-selection.js.map +0 -1
  760. package/dist/src/utils/plugin-validator.d.ts +0 -161
  761. package/dist/src/utils/plugin-validator.d.ts.map +0 -1
  762. package/dist/src/utils/plugin-validator.js +0 -558
  763. package/dist/src/utils/plugin-validator.js.map +0 -1
  764. package/dist/src/utils/pricing-constants.d.ts +0 -70
  765. package/dist/src/utils/pricing-constants.d.ts.map +0 -1
  766. package/dist/src/utils/pricing-constants.js +0 -71
  767. package/dist/src/utils/pricing-constants.js.map +0 -1
  768. package/dist/src/utils/project-detection.d.ts +0 -141
  769. package/dist/src/utils/project-detection.d.ts.map +0 -1
  770. package/dist/src/utils/project-detection.js +0 -321
  771. package/dist/src/utils/project-detection.js.map +0 -1
  772. package/dist/src/utils/string-utils.d.ts +0 -40
  773. package/dist/src/utils/string-utils.d.ts.map +0 -1
  774. package/dist/src/utils/string-utils.js +0 -58
  775. package/dist/src/utils/string-utils.js.map +0 -1
  776. package/dist/src/utils/translation.d.ts +0 -187
  777. package/dist/src/utils/translation.d.ts.map +0 -1
  778. package/dist/src/utils/translation.js +0 -414
  779. package/dist/src/utils/translation.js.map +0 -1
@@ -1,257 +0,0 @@
1
- /**
2
- * Azure DevOps REST API Client
3
- *
4
- * Provides TypeScript interface to Azure DevOps REST API v7.1
5
- * for work item management and SpecWeave integration.
6
- *
7
- * @see https://learn.microsoft.com/en-us/rest/api/azure/devops/
8
- */
9
- import https from 'https';
10
- // ============================================================================
11
- // Azure DevOps Client
12
- // ============================================================================
13
- export class AdoClient {
14
- constructor(config) {
15
- this.config = config;
16
- this.baseUrl = `https://dev.azure.com/${config.organization}/${config.project}`;
17
- // Basic Auth: base64(":PAT")
18
- this.authHeader = 'Basic ' + Buffer.from(`:${config.personalAccessToken}`).toString('base64');
19
- }
20
- // ==========================================================================
21
- // Work Item Operations
22
- // ==========================================================================
23
- /**
24
- * Create a new work item
25
- *
26
- * @see https://learn.microsoft.com/en-us/rest/api/azure/devops/wit/work-items/create
27
- */
28
- async createWorkItem(request) {
29
- const workItemType = this.config.workItemType || 'Epic';
30
- const url = `${this.baseUrl}/_apis/wit/workitems/$${workItemType}?api-version=7.1`;
31
- // Build JSON Patch document
32
- const operations = [
33
- {
34
- op: 'add',
35
- path: '/fields/System.Title',
36
- value: request.title,
37
- },
38
- ];
39
- if (request.description) {
40
- operations.push({
41
- op: 'add',
42
- path: '/fields/System.Description',
43
- value: `<pre>${request.description}</pre>`,
44
- });
45
- }
46
- if (request.areaPath || this.config.areaPath) {
47
- operations.push({
48
- op: 'add',
49
- path: '/fields/System.AreaPath',
50
- value: request.areaPath || this.config.areaPath,
51
- });
52
- }
53
- if (request.iterationPath || this.config.iterationPath) {
54
- operations.push({
55
- op: 'add',
56
- path: '/fields/System.IterationPath',
57
- value: request.iterationPath || this.config.iterationPath,
58
- });
59
- }
60
- if (request.tags && request.tags.length > 0) {
61
- operations.push({
62
- op: 'add',
63
- path: '/fields/System.Tags',
64
- value: request.tags.join('; '),
65
- });
66
- }
67
- const response = await this.request('POST', url, operations, {
68
- 'Content-Type': 'application/json-patch+json',
69
- });
70
- return response;
71
- }
72
- /**
73
- * Get work item by ID
74
- *
75
- * @see https://learn.microsoft.com/en-us/rest/api/azure/devops/wit/work-items/get-work-item
76
- */
77
- async getWorkItem(id) {
78
- const url = `${this.baseUrl}/_apis/wit/workitems/${id}?api-version=7.1`;
79
- return this.request('GET', url);
80
- }
81
- /**
82
- * Update work item
83
- *
84
- * @see https://learn.microsoft.com/en-us/rest/api/azure/devops/wit/work-items/update
85
- */
86
- async updateWorkItem(id, request) {
87
- const url = `${this.baseUrl}/_apis/wit/workitems/${id}?api-version=7.1`;
88
- const operations = [];
89
- if (request.state) {
90
- operations.push({
91
- op: 'add',
92
- path: '/fields/System.State',
93
- value: request.state,
94
- });
95
- }
96
- if (request.title) {
97
- operations.push({
98
- op: 'add',
99
- path: '/fields/System.Title',
100
- value: request.title,
101
- });
102
- }
103
- if (request.description) {
104
- operations.push({
105
- op: 'add',
106
- path: '/fields/System.Description',
107
- value: `<pre>${request.description}</pre>`,
108
- });
109
- }
110
- if (request.tags) {
111
- operations.push({
112
- op: 'add',
113
- path: '/fields/System.Tags',
114
- value: request.tags.join('; '),
115
- });
116
- }
117
- return this.request('PATCH', url, operations, {
118
- 'Content-Type': 'application/json-patch+json',
119
- });
120
- }
121
- /**
122
- * Delete work item (move to Recycle Bin)
123
- *
124
- * @see https://learn.microsoft.com/en-us/rest/api/azure/devops/wit/work-items/delete
125
- */
126
- async deleteWorkItem(id) {
127
- const url = `${this.baseUrl}/_apis/wit/workitems/${id}?api-version=7.1`;
128
- await this.request('DELETE', url);
129
- }
130
- // ==========================================================================
131
- // Comment Operations
132
- // ==========================================================================
133
- /**
134
- * Add comment to work item
135
- *
136
- * @see https://learn.microsoft.com/en-us/rest/api/azure/devops/wit/comments/add
137
- */
138
- async addComment(workItemId, text) {
139
- const url = `${this.baseUrl}/_apis/wit/workitems/${workItemId}/comments?api-version=7.1`;
140
- const response = await this.request('POST', url, { text });
141
- return response;
142
- }
143
- /**
144
- * Get comments for work item
145
- *
146
- * @see https://learn.microsoft.com/en-us/rest/api/azure/devops/wit/comments/list
147
- */
148
- async getComments(workItemId) {
149
- const url = `${this.baseUrl}/_apis/wit/workitems/${workItemId}/comments?api-version=7.1`;
150
- const response = await this.request('GET', url);
151
- return response.comments || [];
152
- }
153
- // ==========================================================================
154
- // Helper Methods
155
- // ==========================================================================
156
- /**
157
- * Make HTTP request to ADO API
158
- */
159
- async request(method, url, body, additionalHeaders) {
160
- return new Promise((resolve, reject) => {
161
- const urlObj = new URL(url);
162
- const options = {
163
- hostname: urlObj.hostname,
164
- port: 443,
165
- path: urlObj.pathname + urlObj.search,
166
- method,
167
- headers: {
168
- 'Authorization': this.authHeader,
169
- 'Accept': 'application/json',
170
- ...additionalHeaders,
171
- },
172
- };
173
- const req = https.request(options, (res) => {
174
- let data = '';
175
- res.on('data', (chunk) => {
176
- data += chunk;
177
- });
178
- res.on('end', () => {
179
- if (res.statusCode && res.statusCode >= 200 && res.statusCode < 300) {
180
- try {
181
- const parsed = data ? JSON.parse(data) : {};
182
- resolve(parsed);
183
- }
184
- catch (error) {
185
- reject(new Error(`Failed to parse JSON response: ${error}`));
186
- }
187
- }
188
- else {
189
- let errorMessage = `ADO API error: ${res.statusCode} ${res.statusMessage}`;
190
- try {
191
- const errorData = JSON.parse(data);
192
- if (errorData.message) {
193
- errorMessage += ` - ${errorData.message}`;
194
- }
195
- }
196
- catch {
197
- // Ignore JSON parse errors for error responses
198
- }
199
- reject(new Error(errorMessage));
200
- }
201
- });
202
- });
203
- req.on('error', (error) => {
204
- reject(new Error(`HTTP request failed: ${error.message}`));
205
- });
206
- if (body) {
207
- req.write(JSON.stringify(body));
208
- }
209
- req.end();
210
- });
211
- }
212
- /**
213
- * Test connection to ADO
214
- */
215
- async testConnection() {
216
- try {
217
- // Simple test: list work item types
218
- const url = `${this.baseUrl}/_apis/wit/workitemtypes?api-version=7.1`;
219
- await this.request('GET', url);
220
- return true;
221
- }
222
- catch (error) {
223
- return false;
224
- }
225
- }
226
- }
227
- // ============================================================================
228
- // Factory Function
229
- // ============================================================================
230
- /**
231
- * Create ADO client from environment variables and config
232
- */
233
- export function createAdoClient(config = {}) {
234
- const fullConfig = {
235
- organization: config.organization || process.env.AZURE_DEVOPS_ORG || '',
236
- project: config.project || process.env.AZURE_DEVOPS_PROJECT || '',
237
- personalAccessToken: config.personalAccessToken || process.env.AZURE_DEVOPS_PAT || '',
238
- workItemType: config.workItemType,
239
- areaPath: config.areaPath,
240
- iterationPath: config.iterationPath,
241
- };
242
- if (!fullConfig.organization) {
243
- throw new Error('ADO organization not configured');
244
- }
245
- if (!fullConfig.project) {
246
- throw new Error('ADO project not configured');
247
- }
248
- if (!fullConfig.personalAccessToken) {
249
- throw new Error('AZURE_DEVOPS_PAT not set');
250
- }
251
- return new AdoClient(fullConfig);
252
- }
253
- // ============================================================================
254
- // Exports
255
- // ============================================================================
256
- export default AdoClient;
257
- //# sourceMappingURL=ado-client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ado-client.js","sourceRoot":"","sources":["../../../../plugins/specweave-ado/lib/ado-client.ts"],"names":[],"mappings":"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"}
@@ -1,40 +0,0 @@
1
- /**
2
- * Azure DevOps Hierarchical Sync Implementation
3
- *
4
- * Supports three sync strategies:
5
- * 1. Simple: One project, all work items (backward compatible)
6
- * 2. Filtered: Multiple projects + area paths + filters
7
- * 3. Custom: Raw WIQL query
8
- */
9
- import { SyncProfile, SyncContainer } from '../../../src/core/types/sync-profile.js';
10
- import { WorkItem } from './ado-client-v2.js';
11
- /**
12
- * Build hierarchical WIQL query from containers
13
- *
14
- * Example output:
15
- * SELECT [System.Id], [System.Title], [System.State]
16
- * FROM WorkItems
17
- * WHERE (
18
- * ([System.TeamProject] = 'PROJECT-A' AND [System.AreaPath] UNDER 'PROJECT-A\\Team Alpha')
19
- * OR
20
- * ([System.TeamProject] = 'PROJECT-B' AND [System.AreaPath] UNDER 'PROJECT-B\\Platform')
21
- * )
22
- * AND [System.WorkItemType] IN ('User Story', 'Bug')
23
- * AND [System.State] IN ('Active', 'New')
24
- *
25
- * @param organization Organization name
26
- * @param pat Personal Access Token
27
- * @param containers Array of containers (projects) with filters
28
- * @returns WIQL query string
29
- */
30
- export declare function buildHierarchicalWIQL(organization: string, pat: string, containers: SyncContainer[]): Promise<string>;
31
- /**
32
- * Fetch work items hierarchically based on sync strategy
33
- *
34
- * @param profile Sync profile with strategy
35
- * @param pat Personal Access Token
36
- * @param timeRange Time range preset
37
- * @returns Array of work items
38
- */
39
- export declare function fetchWorkItemsHierarchical(profile: SyncProfile, pat: string, timeRange?: string): Promise<WorkItem[]>;
40
- //# sourceMappingURL=ado-hierarchical-sync.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ado-hierarchical-sync.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-ado/lib/ado-hierarchical-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,WAAW,EACX,aAAa,EAMd,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAI9C;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,qBAAqB,CACzC,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,aAAa,EAAE,GAC1B,OAAO,CAAC,MAAM,CAAC,CA+DjB;AAoID;;;;;;;GAOG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,WAAW,EACpB,GAAG,EAAE,MAAM,EACX,SAAS,GAAE,MAAa,GACvB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAqBrB"}
@@ -1,370 +0,0 @@
1
- /**
2
- * Azure DevOps Hierarchical Sync Implementation
3
- *
4
- * Supports three sync strategies:
5
- * 1. Simple: One project, all work items (backward compatible)
6
- * 2. Filtered: Multiple projects + area paths + filters
7
- * 3. Custom: Raw WIQL query
8
- */
9
- import { isSimpleStrategy, isFilteredStrategy, isCustomStrategy, } from '../../../src/core/types/sync-profile.js';
10
- import { getAreaPaths } from './ado-board-resolver.js';
11
- import https from 'https';
12
- /**
13
- * Build hierarchical WIQL query from containers
14
- *
15
- * Example output:
16
- * SELECT [System.Id], [System.Title], [System.State]
17
- * FROM WorkItems
18
- * WHERE (
19
- * ([System.TeamProject] = 'PROJECT-A' AND [System.AreaPath] UNDER 'PROJECT-A\\Team Alpha')
20
- * OR
21
- * ([System.TeamProject] = 'PROJECT-B' AND [System.AreaPath] UNDER 'PROJECT-B\\Platform')
22
- * )
23
- * AND [System.WorkItemType] IN ('User Story', 'Bug')
24
- * AND [System.State] IN ('Active', 'New')
25
- *
26
- * @param organization Organization name
27
- * @param pat Personal Access Token
28
- * @param containers Array of containers (projects) with filters
29
- * @returns WIQL query string
30
- */
31
- export async function buildHierarchicalWIQL(organization, pat, containers) {
32
- const projectClauses = [];
33
- for (const container of containers) {
34
- const parts = [];
35
- // Project clause
36
- parts.push(`[System.TeamProject] = '${container.id}'`);
37
- // Area path filtering (sub-organizations)
38
- if (container.subOrganizations && container.subOrganizations.length > 0) {
39
- try {
40
- const areaPaths = await getAreaPaths(organization, container.id, pat, container.subOrganizations);
41
- if (areaPaths.length > 0) {
42
- const areaPathClauses = areaPaths
43
- .map((path) => `[System.AreaPath] UNDER '${path}'`)
44
- .join(' OR ');
45
- parts.push(`(${areaPathClauses})`);
46
- }
47
- else {
48
- console.warn(`⚠️ No valid area paths found for project ${container.id}, syncing all areas`);
49
- }
50
- }
51
- catch (error) {
52
- console.warn(`⚠️ Failed to resolve area paths for ${container.id}, syncing all areas:`, error.message);
53
- }
54
- }
55
- // Combine parts with AND
56
- projectClauses.push(`(${parts.join(' AND ')})`);
57
- }
58
- // Build WHERE clause with project clauses
59
- let whereClause = projectClauses.join(' OR ');
60
- // Add global filters (apply to all projects)
61
- const filters = containers[0]?.filters;
62
- if (filters) {
63
- const filterClauses = buildFilterClauses(filters);
64
- if (filterClauses.length > 0) {
65
- whereClause = `(${whereClause}) AND ${filterClauses.join(' AND ')}`;
66
- }
67
- }
68
- // Build complete WIQL query
69
- return `
70
- SELECT [System.Id], [System.Title], [System.Description], [System.State],
71
- [System.CreatedDate], [System.ChangedDate], [System.WorkItemType],
72
- [System.AreaPath], [System.IterationPath], [System.Tags]
73
- FROM WorkItems
74
- WHERE ${whereClause}
75
- ORDER BY [System.CreatedDate] DESC
76
- `.trim();
77
- }
78
- /**
79
- * Build filter clauses from container filters
80
- *
81
- * @param filters Container filters
82
- * @returns Array of WIQL filter clauses
83
- */
84
- function buildFilterClauses(filters) {
85
- const clauses = [];
86
- // Work item types (ADO-specific)
87
- if (filters.workItemTypes && filters.workItemTypes.length > 0) {
88
- const types = filters.workItemTypes.map((t) => `'${t}'`).join(', ');
89
- clauses.push(`[System.WorkItemType] IN (${types})`);
90
- }
91
- // Status categories (ADO uses State field)
92
- if (filters.statusCategories && filters.statusCategories.length > 0) {
93
- const states = filters.statusCategories.map((s) => `'${s}'`).join(', ');
94
- clauses.push(`[System.State] IN (${states})`);
95
- }
96
- // Area paths (additional filtering beyond sub-organizations)
97
- if (filters.areaPaths && filters.areaPaths.length > 0) {
98
- const areaPathClauses = filters.areaPaths
99
- .map((path) => `[System.AreaPath] UNDER '${path}'`)
100
- .join(' OR ');
101
- clauses.push(`(${areaPathClauses})`);
102
- }
103
- // Iteration paths (sprints in ADO)
104
- if (filters.iterationPaths && filters.iterationPaths.length > 0) {
105
- const iterationClauses = filters.iterationPaths
106
- .map((path) => `[System.IterationPath] UNDER '${path}'`)
107
- .join(' OR ');
108
- clauses.push(`(${iterationClauses})`);
109
- }
110
- // Tags (labels in ADO)
111
- if (filters.includeLabels && filters.includeLabels.length > 0) {
112
- const tagClauses = filters.includeLabels
113
- .map((tag) => `[System.Tags] CONTAINS '${tag}'`)
114
- .join(' OR ');
115
- clauses.push(`(${tagClauses})`);
116
- }
117
- // Exclude labels/tags
118
- if (filters.excludeLabels && filters.excludeLabels.length > 0) {
119
- for (const tag of filters.excludeLabels) {
120
- clauses.push(`NOT [System.Tags] CONTAINS '${tag}'`);
121
- }
122
- }
123
- // Assignees (assigned to)
124
- if (filters.assignees && filters.assignees.length > 0) {
125
- const assigneeClauses = filters.assignees
126
- .map((assignee) => `[System.AssignedTo] = '${assignee}'`)
127
- .join(' OR ');
128
- clauses.push(`(${assigneeClauses})`);
129
- }
130
- return clauses;
131
- }
132
- /**
133
- * Add time range filter to WIQL query
134
- *
135
- * @param wiql Base WIQL query
136
- * @param timeRange Time range preset (1W, 1M, 3M, 6M, ALL)
137
- * @returns WIQL with time range filter
138
- */
139
- function addTimeRangeFilter(wiql, timeRange) {
140
- if (timeRange === 'ALL') {
141
- return wiql; // No time filter
142
- }
143
- const { since, until } = calculateTimeRange(timeRange);
144
- // Add time range to WHERE clause
145
- const timeFilter = `[System.CreatedDate] >= '${since}' AND [System.CreatedDate] <= '${until}'`;
146
- // Insert before ORDER BY if present, otherwise append
147
- if (wiql.includes('ORDER BY')) {
148
- return wiql.replace('ORDER BY', `AND ${timeFilter} ORDER BY`);
149
- }
150
- else {
151
- return `${wiql} AND ${timeFilter}`;
152
- }
153
- }
154
- /**
155
- * Calculate date range from time range preset
156
- */
157
- function calculateTimeRange(timeRange) {
158
- const now = new Date();
159
- const since = new Date(now);
160
- switch (timeRange) {
161
- case '1W':
162
- since.setDate(now.getDate() - 7);
163
- break;
164
- case '2W':
165
- since.setDate(now.getDate() - 14);
166
- break;
167
- case '1M':
168
- since.setMonth(now.getMonth() - 1);
169
- break;
170
- case '3M':
171
- since.setMonth(now.getMonth() - 3);
172
- break;
173
- case '6M':
174
- since.setMonth(now.getMonth() - 6);
175
- break;
176
- case '1Y':
177
- since.setFullYear(now.getFullYear() - 1);
178
- break;
179
- case 'ALL':
180
- return {
181
- since: '1970-01-01T00:00:00Z',
182
- until: now.toISOString(),
183
- };
184
- }
185
- return {
186
- since: since.toISOString(),
187
- until: now.toISOString(),
188
- };
189
- }
190
- /**
191
- * Fetch work items hierarchically based on sync strategy
192
- *
193
- * @param profile Sync profile with strategy
194
- * @param pat Personal Access Token
195
- * @param timeRange Time range preset
196
- * @returns Array of work items
197
- */
198
- export async function fetchWorkItemsHierarchical(profile, pat, timeRange = '1M') {
199
- const config = profile.config;
200
- // Strategy 1: SIMPLE (backward compatible)
201
- if (isSimpleStrategy(profile)) {
202
- return fetchWorkItemsSimple(config, pat, timeRange);
203
- }
204
- // Strategy 2: CUSTOM (raw WIQL)
205
- if (isCustomStrategy(profile)) {
206
- return fetchWorkItemsCustom(config, pat, timeRange);
207
- }
208
- // Strategy 3: FILTERED (hierarchical)
209
- if (isFilteredStrategy(profile)) {
210
- return fetchWorkItemsFiltered(config, pat, timeRange);
211
- }
212
- // Default to simple if strategy not recognized
213
- console.warn('⚠️ Unknown strategy, defaulting to simple');
214
- return fetchWorkItemsSimple(config, pat, timeRange);
215
- }
216
- /**
217
- * Fetch work items using SIMPLE strategy (one project, all work items)
218
- *
219
- * @param config ADO configuration
220
- * @param pat Personal Access Token
221
- * @param timeRange Time range preset
222
- * @returns Array of work items
223
- */
224
- async function fetchWorkItemsSimple(config, pat, timeRange) {
225
- const organization = config.organization;
226
- const project = config.project;
227
- if (!project) {
228
- throw new Error('Simple strategy requires project in config');
229
- }
230
- let wiql = `
231
- SELECT [System.Id], [System.Title], [System.State], [System.CreatedDate]
232
- FROM WorkItems
233
- WHERE [System.TeamProject] = '${project}'
234
- `.trim();
235
- // Add time range
236
- wiql = addTimeRangeFilter(wiql, timeRange);
237
- console.log('🔍 Fetching work items (SIMPLE strategy):', wiql);
238
- return executeQuery(organization, project, pat, wiql);
239
- }
240
- /**
241
- * Fetch work items using CUSTOM strategy (raw WIQL)
242
- *
243
- * @param config ADO configuration
244
- * @param pat Personal Access Token
245
- * @param timeRange Time range preset
246
- * @returns Array of work items
247
- */
248
- async function fetchWorkItemsCustom(config, pat, timeRange) {
249
- const organization = config.organization;
250
- const project = config.project || 'DefaultProject';
251
- const customQuery = config.customQuery;
252
- if (!customQuery) {
253
- throw new Error('Custom strategy requires customQuery in config');
254
- }
255
- // Add time range to custom query
256
- const wiql = addTimeRangeFilter(customQuery, timeRange);
257
- console.log('🔍 Fetching work items (CUSTOM strategy):', wiql);
258
- return executeQuery(organization, project, pat, wiql);
259
- }
260
- /**
261
- * Fetch work items using FILTERED strategy (multiple projects + area paths + filters)
262
- *
263
- * @param config ADO configuration
264
- * @param pat Personal Access Token
265
- * @param timeRange Time range preset
266
- * @returns Array of work items
267
- */
268
- async function fetchWorkItemsFiltered(config, pat, timeRange) {
269
- const organization = config.organization;
270
- const containers = config.containers;
271
- if (!containers || containers.length === 0) {
272
- throw new Error('Filtered strategy requires containers array in config');
273
- }
274
- // Build hierarchical WIQL
275
- const baseWiql = await buildHierarchicalWIQL(organization, pat, containers);
276
- // Add time range
277
- const wiql = addTimeRangeFilter(baseWiql, timeRange);
278
- console.log('🔍 Fetching work items (FILTERED strategy):', wiql);
279
- // Use first project for API endpoint (WIQL can query across projects)
280
- const project = containers[0].id;
281
- return executeQuery(organization, project, pat, wiql);
282
- }
283
- /**
284
- * Execute WIQL query and return work items
285
- *
286
- * @param organization Organization name
287
- * @param project Project name
288
- * @param pat Personal Access Token
289
- * @param wiql WIQL query string
290
- * @returns Array of work items
291
- */
292
- async function executeQuery(organization, project, pat, wiql) {
293
- const baseUrl = `https://dev.azure.com/${organization}/${project}`;
294
- // Execute query
295
- const queryUrl = `${baseUrl}/_apis/wit/wiql?api-version=7.1`;
296
- const queryResult = await makeRequest(queryUrl, pat, 'POST', { query: wiql });
297
- if (!queryResult.workItems || queryResult.workItems.length === 0) {
298
- return [];
299
- }
300
- // Get full work item details (batch request)
301
- const ids = queryResult.workItems.map((wi) => wi.id);
302
- const batchUrl = `${baseUrl}/_apis/wit/workitemsbatch?api-version=7.1`;
303
- const response = await makeRequest(batchUrl, pat, 'POST', {
304
- ids,
305
- fields: [
306
- 'System.Id',
307
- 'System.Title',
308
- 'System.Description',
309
- 'System.State',
310
- 'System.CreatedDate',
311
- 'System.ChangedDate',
312
- 'System.WorkItemType',
313
- 'System.AreaPath',
314
- 'System.IterationPath',
315
- 'System.Tags',
316
- ],
317
- });
318
- return response.value || [];
319
- }
320
- /**
321
- * Make HTTPS request to ADO API
322
- */
323
- function makeRequest(url, pat, method = 'GET', body) {
324
- return new Promise((resolve, reject) => {
325
- const { hostname, pathname, search } = new URL(url);
326
- const authHeader = 'Basic ' + Buffer.from(`:${pat}`).toString('base64');
327
- const headers = {
328
- Authorization: authHeader,
329
- Accept: 'application/json',
330
- };
331
- if (body) {
332
- headers['Content-Type'] = 'application/json';
333
- }
334
- const options = {
335
- hostname,
336
- path: pathname + search,
337
- method,
338
- headers,
339
- };
340
- const req = https.request(options, (res) => {
341
- let data = '';
342
- res.on('data', (chunk) => {
343
- data += chunk;
344
- });
345
- res.on('end', () => {
346
- try {
347
- const parsed = JSON.parse(data);
348
- if (res.statusCode && res.statusCode >= 200 && res.statusCode < 300) {
349
- resolve(parsed);
350
- }
351
- else {
352
- reject(new Error(`HTTP ${res.statusCode}: ${parsed.message || data}`));
353
- }
354
- }
355
- catch (error) {
356
- reject(new Error(`Failed to parse response: ${data}`));
357
- }
358
- });
359
- });
360
- req.on('error', (error) => {
361
- reject(error);
362
- });
363
- // Send body if present
364
- if (body) {
365
- req.write(JSON.stringify(body));
366
- }
367
- req.end();
368
- });
369
- }
370
- //# sourceMappingURL=ado-hierarchical-sync.js.map