specweave 0.13.4 → 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 (783) 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/.claude-plugin/plugin.json +1 -2
  8. package/plugins/specweave/lib/hooks/git-diff-analyzer.js +129 -213
  9. package/plugins/specweave/lib/hooks/invoke-translator-skill.js +146 -192
  10. package/plugins/specweave/lib/hooks/prepare-reflection-context.js +103 -116
  11. package/plugins/specweave/lib/hooks/reflection-config-loader.js +85 -125
  12. package/plugins/specweave/lib/hooks/reflection-parser.js +267 -385
  13. package/plugins/specweave/lib/hooks/reflection-prompt-builder.js +169 -226
  14. package/plugins/specweave/lib/hooks/reflection-storage.js +223 -297
  15. package/plugins/specweave/lib/hooks/run-self-reflection.js +120 -191
  16. package/plugins/specweave/lib/hooks/sync-living-docs.js +87 -129
  17. package/plugins/specweave/lib/hooks/translate-file.js +239 -300
  18. package/plugins/specweave/lib/hooks/translate-living-docs.js +88 -144
  19. package/plugins/specweave/lib/hooks/types/reflection-types.js +57 -72
  20. package/plugins/specweave/lib/hooks/update-tasks-md.js +117 -179
  21. package/plugins/specweave-ado/.claude-plugin/plugin.json +1 -2
  22. package/plugins/specweave-ado/lib/ado-board-resolver.js +135 -205
  23. package/plugins/specweave-ado/lib/ado-hierarchical-sync.js +223 -335
  24. package/plugins/specweave-ado/lib/ado-spec-sync.js +380 -414
  25. package/plugins/specweave-ado/lib/project-selector.js +168 -196
  26. package/plugins/specweave-github/.claude-plugin/plugin.json +1 -2
  27. package/plugins/specweave-github/hooks/hooks.json +11 -0
  28. package/plugins/specweave-github/hooks/post-increment-done.sh +224 -0
  29. package/plugins/specweave-github/lib/cli-sync-increment-changes.js +9 -20
  30. package/plugins/specweave-github/lib/github-board-resolver.js +69 -115
  31. package/plugins/specweave-github/lib/github-client-v2.js +400 -389
  32. package/plugins/specweave-github/lib/github-client.js +246 -280
  33. package/plugins/specweave-github/lib/github-hierarchical-sync.js +168 -251
  34. package/plugins/specweave-github/lib/github-issue-updater.js +231 -288
  35. package/plugins/specweave-github/lib/github-spec-sync.js +379 -420
  36. package/plugins/specweave-github/lib/github-sync-bidirectional.js +175 -202
  37. package/plugins/specweave-github/lib/github-sync-increment-changes.js +212 -251
  38. package/plugins/specweave-github/lib/index.js +11 -10
  39. package/plugins/specweave-github/lib/repo-selector.js +174 -201
  40. package/plugins/specweave-github/lib/subtask-sync.js +132 -125
  41. package/plugins/specweave-github/lib/task-parser.js +191 -207
  42. package/plugins/specweave-github/lib/task-sync.js +344 -296
  43. package/plugins/specweave-github/lib/types.js +0 -5
  44. package/plugins/specweave-jira/.claude-plugin/plugin.json +1 -2
  45. package/plugins/specweave-jira/lib/jira-board-resolver.js +50 -79
  46. package/plugins/specweave-jira/lib/jira-hierarchical-sync.js +119 -191
  47. package/plugins/specweave-jira/lib/jira-spec-sync.js +366 -405
  48. package/plugins/specweave-jira/lib/project-selector.js +172 -201
  49. package/plugins/specweave-jira/lib/reorganization-detector.js +202 -237
  50. package/plugins/specweave-jira/lib/setup-wizard.js +162 -204
  51. package/src/templates/AGENTS.md.template +42 -0
  52. package/dist/core/agent-model-manager.d.ts +0 -52
  53. package/dist/core/agent-model-manager.d.ts.map +0 -1
  54. package/dist/core/agent-model-manager.js +0 -120
  55. package/dist/core/agent-model-manager.js.map +0 -1
  56. package/dist/core/model-selector.d.ts +0 -57
  57. package/dist/core/model-selector.d.ts.map +0 -1
  58. package/dist/core/model-selector.js +0 -115
  59. package/dist/core/model-selector.js.map +0 -1
  60. package/dist/core/phase-detector.d.ts +0 -62
  61. package/dist/core/phase-detector.d.ts.map +0 -1
  62. package/dist/core/phase-detector.js +0 -229
  63. package/dist/core/phase-detector.js.map +0 -1
  64. package/dist/hooks/lib/git-diff-analyzer.d.ts +0 -89
  65. package/dist/hooks/lib/git-diff-analyzer.d.ts.map +0 -1
  66. package/dist/hooks/lib/git-diff-analyzer.js +0 -226
  67. package/dist/hooks/lib/git-diff-analyzer.js.map +0 -1
  68. package/dist/hooks/lib/invoke-translator-skill.d.ts +0 -60
  69. package/dist/hooks/lib/invoke-translator-skill.d.ts.map +0 -1
  70. package/dist/hooks/lib/invoke-translator-skill.js +0 -201
  71. package/dist/hooks/lib/invoke-translator-skill.js.map +0 -1
  72. package/dist/hooks/lib/prepare-reflection-context.d.ts +0 -42
  73. package/dist/hooks/lib/prepare-reflection-context.d.ts.map +0 -1
  74. package/dist/hooks/lib/prepare-reflection-context.js +0 -123
  75. package/dist/hooks/lib/prepare-reflection-context.js.map +0 -1
  76. package/dist/hooks/lib/reflection-config-loader.d.ts +0 -45
  77. package/dist/hooks/lib/reflection-config-loader.d.ts.map +0 -1
  78. package/dist/hooks/lib/reflection-config-loader.js +0 -132
  79. package/dist/hooks/lib/reflection-config-loader.js.map +0 -1
  80. package/dist/hooks/lib/reflection-parser.d.ts +0 -33
  81. package/dist/hooks/lib/reflection-parser.d.ts.map +0 -1
  82. package/dist/hooks/lib/reflection-parser.js +0 -419
  83. package/dist/hooks/lib/reflection-parser.js.map +0 -1
  84. package/dist/hooks/lib/reflection-prompt-builder.d.ts +0 -56
  85. package/dist/hooks/lib/reflection-prompt-builder.d.ts.map +0 -1
  86. package/dist/hooks/lib/reflection-prompt-builder.js +0 -239
  87. package/dist/hooks/lib/reflection-prompt-builder.js.map +0 -1
  88. package/dist/hooks/lib/reflection-storage.d.ts +0 -64
  89. package/dist/hooks/lib/reflection-storage.d.ts.map +0 -1
  90. package/dist/hooks/lib/reflection-storage.js +0 -305
  91. package/dist/hooks/lib/reflection-storage.js.map +0 -1
  92. package/dist/hooks/lib/run-self-reflection.d.ts +0 -43
  93. package/dist/hooks/lib/run-self-reflection.d.ts.map +0 -1
  94. package/dist/hooks/lib/run-self-reflection.js +0 -203
  95. package/dist/hooks/lib/run-self-reflection.js.map +0 -1
  96. package/dist/hooks/lib/sync-living-docs.d.ts +0 -27
  97. package/dist/hooks/lib/sync-living-docs.d.ts.map +0 -1
  98. package/dist/hooks/lib/sync-living-docs.js +0 -116
  99. package/dist/hooks/lib/sync-living-docs.js.map +0 -1
  100. package/dist/hooks/lib/translate-file.d.ts +0 -59
  101. package/dist/hooks/lib/translate-file.d.ts.map +0 -1
  102. package/dist/hooks/lib/translate-file.js +0 -350
  103. package/dist/hooks/lib/translate-file.js.map +0 -1
  104. package/dist/hooks/lib/translate-living-docs.d.ts +0 -13
  105. package/dist/hooks/lib/translate-living-docs.d.ts.map +0 -1
  106. package/dist/hooks/lib/translate-living-docs.js +0 -175
  107. package/dist/hooks/lib/translate-living-docs.js.map +0 -1
  108. package/dist/hooks/lib/types/reflection-types.d.ts +0 -164
  109. package/dist/hooks/lib/types/reflection-types.d.ts.map +0 -1
  110. package/dist/hooks/lib/types/reflection-types.js +0 -73
  111. package/dist/hooks/lib/types/reflection-types.js.map +0 -1
  112. package/dist/hooks/lib/update-tasks-md.d.ts +0 -29
  113. package/dist/hooks/lib/update-tasks-md.d.ts.map +0 -1
  114. package/dist/hooks/lib/update-tasks-md.js +0 -203
  115. package/dist/hooks/lib/update-tasks-md.js.map +0 -1
  116. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts +0 -89
  117. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts.map +0 -1
  118. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js +0 -226
  119. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js.map +0 -1
  120. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts +0 -60
  121. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts.map +0 -1
  122. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js +0 -201
  123. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js.map +0 -1
  124. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts +0 -42
  125. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts.map +0 -1
  126. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js +0 -123
  127. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js.map +0 -1
  128. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts +0 -45
  129. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts.map +0 -1
  130. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js +0 -132
  131. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js.map +0 -1
  132. package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts +0 -33
  133. package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts.map +0 -1
  134. package/dist/plugins/specweave/lib/hooks/reflection-parser.js +0 -419
  135. package/dist/plugins/specweave/lib/hooks/reflection-parser.js.map +0 -1
  136. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts +0 -56
  137. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts.map +0 -1
  138. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js +0 -239
  139. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js.map +0 -1
  140. package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts +0 -64
  141. package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts.map +0 -1
  142. package/dist/plugins/specweave/lib/hooks/reflection-storage.js +0 -305
  143. package/dist/plugins/specweave/lib/hooks/reflection-storage.js.map +0 -1
  144. package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts +0 -43
  145. package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts.map +0 -1
  146. package/dist/plugins/specweave/lib/hooks/run-self-reflection.js +0 -203
  147. package/dist/plugins/specweave/lib/hooks/run-self-reflection.js.map +0 -1
  148. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts +0 -27
  149. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts.map +0 -1
  150. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js +0 -144
  151. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js.map +0 -1
  152. package/dist/plugins/specweave/lib/hooks/translate-file.d.ts +0 -59
  153. package/dist/plugins/specweave/lib/hooks/translate-file.d.ts.map +0 -1
  154. package/dist/plugins/specweave/lib/hooks/translate-file.js +0 -350
  155. package/dist/plugins/specweave/lib/hooks/translate-file.js.map +0 -1
  156. package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts +0 -13
  157. package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts.map +0 -1
  158. package/dist/plugins/specweave/lib/hooks/translate-living-docs.js +0 -175
  159. package/dist/plugins/specweave/lib/hooks/translate-living-docs.js.map +0 -1
  160. package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts +0 -164
  161. package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts.map +0 -1
  162. package/dist/plugins/specweave/lib/hooks/types/reflection-types.js +0 -73
  163. package/dist/plugins/specweave/lib/hooks/types/reflection-types.js.map +0 -1
  164. package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts +0 -29
  165. package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts.map +0 -1
  166. package/dist/plugins/specweave/lib/hooks/update-tasks-md.js +0 -203
  167. package/dist/plugins/specweave/lib/hooks/update-tasks-md.js.map +0 -1
  168. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts +0 -94
  169. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts.map +0 -1
  170. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js +0 -219
  171. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js.map +0 -1
  172. package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts +0 -124
  173. package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts.map +0 -1
  174. package/dist/plugins/specweave-ado/lib/ado-client-v2.js +0 -382
  175. package/dist/plugins/specweave-ado/lib/ado-client-v2.js.map +0 -1
  176. package/dist/plugins/specweave-ado/lib/ado-client.d.ts +0 -112
  177. package/dist/plugins/specweave-ado/lib/ado-client.d.ts.map +0 -1
  178. package/dist/plugins/specweave-ado/lib/ado-client.js +0 -257
  179. package/dist/plugins/specweave-ado/lib/ado-client.js.map +0 -1
  180. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts +0 -40
  181. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts.map +0 -1
  182. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js +0 -370
  183. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js.map +0 -1
  184. package/dist/plugins/specweave-ado/lib/ado-spec-sync.d.ts +0 -100
  185. package/dist/plugins/specweave-ado/lib/ado-spec-sync.d.ts.map +0 -1
  186. package/dist/plugins/specweave-ado/lib/ado-spec-sync.js +0 -471
  187. package/dist/plugins/specweave-ado/lib/ado-spec-sync.js.map +0 -1
  188. package/dist/plugins/specweave-ado/lib/project-selector.d.ts +0 -42
  189. package/dist/plugins/specweave-ado/lib/project-selector.d.ts.map +0 -1
  190. package/dist/plugins/specweave-ado/lib/project-selector.js +0 -211
  191. package/dist/plugins/specweave-ado/lib/project-selector.js.map +0 -1
  192. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.d.ts +0 -12
  193. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.d.ts.map +0 -1
  194. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.js +0 -28
  195. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.js.map +0 -1
  196. package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts +0 -54
  197. package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts.map +0 -1
  198. package/dist/plugins/specweave-github/lib/github-board-resolver.js +0 -122
  199. package/dist/plugins/specweave-github/lib/github-board-resolver.js.map +0 -1
  200. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts +0 -104
  201. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts.map +0 -1
  202. package/dist/plugins/specweave-github/lib/github-client-v2.js +0 -408
  203. package/dist/plugins/specweave-github/lib/github-client-v2.js.map +0 -1
  204. package/dist/plugins/specweave-github/lib/github-client.d.ts +0 -96
  205. package/dist/plugins/specweave-github/lib/github-client.d.ts.map +0 -1
  206. package/dist/plugins/specweave-github/lib/github-client.js +0 -299
  207. package/dist/plugins/specweave-github/lib/github-client.js.map +0 -1
  208. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts +0 -29
  209. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts.map +0 -1
  210. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js +0 -268
  211. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js.map +0 -1
  212. package/dist/plugins/specweave-github/lib/github-issue-updater.d.ts +0 -61
  213. package/dist/plugins/specweave-github/lib/github-issue-updater.d.ts.map +0 -1
  214. package/dist/plugins/specweave-github/lib/github-issue-updater.js +0 -327
  215. package/dist/plugins/specweave-github/lib/github-issue-updater.js.map +0 -1
  216. package/dist/plugins/specweave-github/lib/github-spec-sync.d.ts +0 -108
  217. package/dist/plugins/specweave-github/lib/github-spec-sync.d.ts.map +0 -1
  218. package/dist/plugins/specweave-github/lib/github-spec-sync.js +0 -505
  219. package/dist/plugins/specweave-github/lib/github-spec-sync.js.map +0 -1
  220. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.d.ts +0 -36
  221. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.d.ts.map +0 -1
  222. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.js +0 -228
  223. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.js.map +0 -1
  224. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.d.ts +0 -18
  225. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.d.ts.map +0 -1
  226. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.js +0 -287
  227. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.js.map +0 -1
  228. package/dist/plugins/specweave-github/lib/index.d.ts +0 -10
  229. package/dist/plugins/specweave-github/lib/index.d.ts.map +0 -1
  230. package/dist/plugins/specweave-github/lib/index.js +0 -10
  231. package/dist/plugins/specweave-github/lib/index.js.map +0 -1
  232. package/dist/plugins/specweave-github/lib/repo-selector.d.ts +0 -49
  233. package/dist/plugins/specweave-github/lib/repo-selector.d.ts.map +0 -1
  234. package/dist/plugins/specweave-github/lib/repo-selector.js +0 -216
  235. package/dist/plugins/specweave-github/lib/repo-selector.js.map +0 -1
  236. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts +0 -51
  237. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts.map +0 -1
  238. package/dist/plugins/specweave-github/lib/subtask-sync.js +0 -147
  239. package/dist/plugins/specweave-github/lib/subtask-sync.js.map +0 -1
  240. package/dist/plugins/specweave-github/lib/task-parser.d.ts +0 -37
  241. package/dist/plugins/specweave-github/lib/task-parser.d.ts.map +0 -1
  242. package/dist/plugins/specweave-github/lib/task-parser.js +0 -211
  243. package/dist/plugins/specweave-github/lib/task-parser.js.map +0 -1
  244. package/dist/plugins/specweave-github/lib/task-sync.d.ts +0 -51
  245. package/dist/plugins/specweave-github/lib/task-sync.d.ts.map +0 -1
  246. package/dist/plugins/specweave-github/lib/task-sync.js +0 -332
  247. package/dist/plugins/specweave-github/lib/task-sync.js.map +0 -1
  248. package/dist/plugins/specweave-github/lib/types.d.ts +0 -80
  249. package/dist/plugins/specweave-github/lib/types.d.ts.map +0 -1
  250. package/dist/plugins/specweave-github/lib/types.js +0 -5
  251. package/dist/plugins/specweave-github/lib/types.js.map +0 -1
  252. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts +0 -50
  253. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts.map +0 -1
  254. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js +0 -84
  255. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js.map +0 -1
  256. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts +0 -33
  257. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts.map +0 -1
  258. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js +0 -206
  259. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js.map +0 -1
  260. package/dist/plugins/specweave-jira/lib/jira-spec-sync.d.ts +0 -105
  261. package/dist/plugins/specweave-jira/lib/jira-spec-sync.d.ts.map +0 -1
  262. package/dist/plugins/specweave-jira/lib/jira-spec-sync.js +0 -456
  263. package/dist/plugins/specweave-jira/lib/jira-spec-sync.js.map +0 -1
  264. package/dist/plugins/specweave-jira/lib/project-selector.d.ts +0 -42
  265. package/dist/plugins/specweave-jira/lib/project-selector.d.ts.map +0 -1
  266. package/dist/plugins/specweave-jira/lib/project-selector.js +0 -216
  267. package/dist/plugins/specweave-jira/lib/project-selector.js.map +0 -1
  268. package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts +0 -67
  269. package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts.map +0 -1
  270. package/dist/plugins/specweave-jira/lib/reorganization-detector.js +0 -252
  271. package/dist/plugins/specweave-jira/lib/reorganization-detector.js.map +0 -1
  272. package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts +0 -29
  273. package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts.map +0 -1
  274. package/dist/plugins/specweave-jira/lib/setup-wizard.js +0 -219
  275. package/dist/plugins/specweave-jira/lib/setup-wizard.js.map +0 -1
  276. package/dist/src/adapters/adapter-base.d.ts +0 -71
  277. package/dist/src/adapters/adapter-base.d.ts.map +0 -1
  278. package/dist/src/adapters/adapter-base.js +0 -139
  279. package/dist/src/adapters/adapter-base.js.map +0 -1
  280. package/dist/src/adapters/adapter-interface.d.ts +0 -149
  281. package/dist/src/adapters/adapter-interface.d.ts.map +0 -1
  282. package/dist/src/adapters/adapter-interface.js +0 -8
  283. package/dist/src/adapters/adapter-interface.js.map +0 -1
  284. package/dist/src/adapters/adapter-loader.d.ts +0 -91
  285. package/dist/src/adapters/adapter-loader.d.ts.map +0 -1
  286. package/dist/src/adapters/adapter-loader.js +0 -238
  287. package/dist/src/adapters/adapter-loader.js.map +0 -1
  288. package/dist/src/adapters/agents-md-generator.d.ts +0 -48
  289. package/dist/src/adapters/agents-md-generator.d.ts.map +0 -1
  290. package/dist/src/adapters/agents-md-generator.js +0 -193
  291. package/dist/src/adapters/agents-md-generator.js.map +0 -1
  292. package/dist/src/adapters/claude/adapter.d.ts +0 -128
  293. package/dist/src/adapters/claude/adapter.d.ts.map +0 -1
  294. package/dist/src/adapters/claude/adapter.js +0 -415
  295. package/dist/src/adapters/claude/adapter.js.map +0 -1
  296. package/dist/src/adapters/claude-md-generator.d.ts +0 -78
  297. package/dist/src/adapters/claude-md-generator.d.ts.map +0 -1
  298. package/dist/src/adapters/claude-md-generator.js +0 -307
  299. package/dist/src/adapters/claude-md-generator.js.map +0 -1
  300. package/dist/src/adapters/codex/adapter.d.ts +0 -50
  301. package/dist/src/adapters/codex/adapter.d.ts.map +0 -1
  302. package/dist/src/adapters/codex/adapter.js +0 -316
  303. package/dist/src/adapters/codex/adapter.js.map +0 -1
  304. package/dist/src/adapters/cursor/adapter.d.ts +0 -98
  305. package/dist/src/adapters/cursor/adapter.d.ts.map +0 -1
  306. package/dist/src/adapters/cursor/adapter.js +0 -406
  307. package/dist/src/adapters/cursor/adapter.js.map +0 -1
  308. package/dist/src/adapters/doc-generator.d.ts +0 -69
  309. package/dist/src/adapters/doc-generator.d.ts.map +0 -1
  310. package/dist/src/adapters/doc-generator.js +0 -247
  311. package/dist/src/adapters/doc-generator.js.map +0 -1
  312. package/dist/src/adapters/gemini/adapter.d.ts +0 -50
  313. package/dist/src/adapters/gemini/adapter.d.ts.map +0 -1
  314. package/dist/src/adapters/gemini/adapter.js +0 -281
  315. package/dist/src/adapters/gemini/adapter.js.map +0 -1
  316. package/dist/src/adapters/generic/adapter.d.ts +0 -86
  317. package/dist/src/adapters/generic/adapter.d.ts.map +0 -1
  318. package/dist/src/adapters/generic/adapter.js +0 -338
  319. package/dist/src/adapters/generic/adapter.js.map +0 -1
  320. package/dist/src/cli/commands/abandon.d.ts +0 -13
  321. package/dist/src/cli/commands/abandon.d.ts.map +0 -1
  322. package/dist/src/cli/commands/abandon.js +0 -15
  323. package/dist/src/cli/commands/abandon.js.map +0 -1
  324. package/dist/src/cli/commands/import-docs.d.ts +0 -21
  325. package/dist/src/cli/commands/import-docs.d.ts.map +0 -1
  326. package/dist/src/cli/commands/import-docs.js +0 -146
  327. package/dist/src/cli/commands/import-docs.js.map +0 -1
  328. package/dist/src/cli/commands/init-multiproject.d.ts +0 -11
  329. package/dist/src/cli/commands/init-multiproject.d.ts.map +0 -1
  330. package/dist/src/cli/commands/init-multiproject.js +0 -202
  331. package/dist/src/cli/commands/init-multiproject.js.map +0 -1
  332. package/dist/src/cli/commands/init.d.ts +0 -9
  333. package/dist/src/cli/commands/init.d.ts.map +0 -1
  334. package/dist/src/cli/commands/init.js +0 -1444
  335. package/dist/src/cli/commands/init.js.map +0 -1
  336. package/dist/src/cli/commands/install.d.ts +0 -9
  337. package/dist/src/cli/commands/install.d.ts.map +0 -1
  338. package/dist/src/cli/commands/install.js +0 -127
  339. package/dist/src/cli/commands/install.js.map +0 -1
  340. package/dist/src/cli/commands/list.d.ts +0 -8
  341. package/dist/src/cli/commands/list.d.ts.map +0 -1
  342. package/dist/src/cli/commands/list.js +0 -119
  343. package/dist/src/cli/commands/list.js.map +0 -1
  344. package/dist/src/cli/commands/migrate-to-multiproject.d.ts +0 -37
  345. package/dist/src/cli/commands/migrate-to-multiproject.d.ts.map +0 -1
  346. package/dist/src/cli/commands/migrate-to-multiproject.js +0 -189
  347. package/dist/src/cli/commands/migrate-to-multiproject.js.map +0 -1
  348. package/dist/src/cli/commands/migrate-to-profiles.d.ts +0 -25
  349. package/dist/src/cli/commands/migrate-to-profiles.d.ts.map +0 -1
  350. package/dist/src/cli/commands/migrate-to-profiles.js +0 -350
  351. package/dist/src/cli/commands/migrate-to-profiles.js.map +0 -1
  352. package/dist/src/cli/commands/pause.d.ts +0 -13
  353. package/dist/src/cli/commands/pause.d.ts.map +0 -1
  354. package/dist/src/cli/commands/pause.js +0 -15
  355. package/dist/src/cli/commands/pause.js.map +0 -1
  356. package/dist/src/cli/commands/qa.d.ts +0 -54
  357. package/dist/src/cli/commands/qa.d.ts.map +0 -1
  358. package/dist/src/cli/commands/qa.js +0 -98
  359. package/dist/src/cli/commands/qa.js.map +0 -1
  360. package/dist/src/cli/commands/resume.d.ts +0 -12
  361. package/dist/src/cli/commands/resume.d.ts.map +0 -1
  362. package/dist/src/cli/commands/resume.js +0 -14
  363. package/dist/src/cli/commands/resume.js.map +0 -1
  364. package/dist/src/cli/commands/status.d.ts +0 -12
  365. package/dist/src/cli/commands/status.d.ts.map +0 -1
  366. package/dist/src/cli/commands/status.js +0 -23
  367. package/dist/src/cli/commands/status.js.map +0 -1
  368. package/dist/src/cli/commands/switch-project.d.ts +0 -13
  369. package/dist/src/cli/commands/switch-project.d.ts.map +0 -1
  370. package/dist/src/cli/commands/switch-project.js +0 -91
  371. package/dist/src/cli/commands/switch-project.js.map +0 -1
  372. package/dist/src/cli/commands/validate-jira.d.ts +0 -35
  373. package/dist/src/cli/commands/validate-jira.d.ts.map +0 -1
  374. package/dist/src/cli/commands/validate-jira.js +0 -112
  375. package/dist/src/cli/commands/validate-jira.js.map +0 -1
  376. package/dist/src/cli/commands/validate-plugins.d.ts +0 -41
  377. package/dist/src/cli/commands/validate-plugins.d.ts.map +0 -1
  378. package/dist/src/cli/commands/validate-plugins.js +0 -171
  379. package/dist/src/cli/commands/validate-plugins.js.map +0 -1
  380. package/dist/src/cli/helpers/issue-tracker/ado.d.ts +0 -57
  381. package/dist/src/cli/helpers/issue-tracker/ado.d.ts.map +0 -1
  382. package/dist/src/cli/helpers/issue-tracker/ado.js +0 -243
  383. package/dist/src/cli/helpers/issue-tracker/ado.js.map +0 -1
  384. package/dist/src/cli/helpers/issue-tracker/github.d.ts +0 -65
  385. package/dist/src/cli/helpers/issue-tracker/github.d.ts.map +0 -1
  386. package/dist/src/cli/helpers/issue-tracker/github.js +0 -426
  387. package/dist/src/cli/helpers/issue-tracker/github.js.map +0 -1
  388. package/dist/src/cli/helpers/issue-tracker/index.d.ts +0 -22
  389. package/dist/src/cli/helpers/issue-tracker/index.d.ts.map +0 -1
  390. package/dist/src/cli/helpers/issue-tracker/index.js +0 -314
  391. package/dist/src/cli/helpers/issue-tracker/index.js.map +0 -1
  392. package/dist/src/cli/helpers/issue-tracker/jira.d.ts +0 -61
  393. package/dist/src/cli/helpers/issue-tracker/jira.d.ts.map +0 -1
  394. package/dist/src/cli/helpers/issue-tracker/jira.js +0 -404
  395. package/dist/src/cli/helpers/issue-tracker/jira.js.map +0 -1
  396. package/dist/src/cli/helpers/issue-tracker/types.d.ts +0 -108
  397. package/dist/src/cli/helpers/issue-tracker/types.d.ts.map +0 -1
  398. package/dist/src/cli/helpers/issue-tracker/types.js +0 -16
  399. package/dist/src/cli/helpers/issue-tracker/types.js.map +0 -1
  400. package/dist/src/cli/helpers/issue-tracker/utils.d.ts +0 -112
  401. package/dist/src/cli/helpers/issue-tracker/utils.d.ts.map +0 -1
  402. package/dist/src/cli/helpers/issue-tracker/utils.js +0 -247
  403. package/dist/src/cli/helpers/issue-tracker/utils.js.map +0 -1
  404. package/dist/src/core/agent-model-manager.d.ts +0 -52
  405. package/dist/src/core/agent-model-manager.d.ts.map +0 -1
  406. package/dist/src/core/agent-model-manager.js +0 -120
  407. package/dist/src/core/agent-model-manager.js.map +0 -1
  408. package/dist/src/core/brownfield/analyzer.d.ts +0 -86
  409. package/dist/src/core/brownfield/analyzer.d.ts.map +0 -1
  410. package/dist/src/core/brownfield/analyzer.js +0 -365
  411. package/dist/src/core/brownfield/analyzer.js.map +0 -1
  412. package/dist/src/core/brownfield/importer.d.ts +0 -76
  413. package/dist/src/core/brownfield/importer.d.ts.map +0 -1
  414. package/dist/src/core/brownfield/importer.js +0 -287
  415. package/dist/src/core/brownfield/importer.js.map +0 -1
  416. package/dist/src/core/config-manager.d.ts +0 -47
  417. package/dist/src/core/config-manager.d.ts.map +0 -1
  418. package/dist/src/core/config-manager.js +0 -136
  419. package/dist/src/core/config-manager.js.map +0 -1
  420. package/dist/src/core/cost-tracker.d.ts +0 -108
  421. package/dist/src/core/cost-tracker.d.ts.map +0 -1
  422. package/dist/src/core/cost-tracker.js +0 -281
  423. package/dist/src/core/cost-tracker.js.map +0 -1
  424. package/dist/src/core/credentials-manager.d.ts +0 -107
  425. package/dist/src/core/credentials-manager.d.ts.map +0 -1
  426. package/dist/src/core/credentials-manager.js +0 -457
  427. package/dist/src/core/credentials-manager.js.map +0 -1
  428. package/dist/src/core/i18n/language-detector.d.ts +0 -29
  429. package/dist/src/core/i18n/language-detector.d.ts.map +0 -1
  430. package/dist/src/core/i18n/language-detector.js +0 -143
  431. package/dist/src/core/i18n/language-detector.js.map +0 -1
  432. package/dist/src/core/i18n/language-manager.d.ts +0 -101
  433. package/dist/src/core/i18n/language-manager.d.ts.map +0 -1
  434. package/dist/src/core/i18n/language-manager.js +0 -232
  435. package/dist/src/core/i18n/language-manager.js.map +0 -1
  436. package/dist/src/core/i18n/language-registry.d.ts +0 -44
  437. package/dist/src/core/i18n/language-registry.d.ts.map +0 -1
  438. package/dist/src/core/i18n/language-registry.js +0 -234
  439. package/dist/src/core/i18n/language-registry.js.map +0 -1
  440. package/dist/src/core/i18n/locale-manager.d.ts +0 -62
  441. package/dist/src/core/i18n/locale-manager.d.ts.map +0 -1
  442. package/dist/src/core/i18n/locale-manager.js +0 -137
  443. package/dist/src/core/i18n/locale-manager.js.map +0 -1
  444. package/dist/src/core/i18n/system-prompt-injector.d.ts +0 -33
  445. package/dist/src/core/i18n/system-prompt-injector.d.ts.map +0 -1
  446. package/dist/src/core/i18n/system-prompt-injector.js +0 -131
  447. package/dist/src/core/i18n/system-prompt-injector.js.map +0 -1
  448. package/dist/src/core/i18n/types.d.ts +0 -151
  449. package/dist/src/core/i18n/types.d.ts.map +0 -1
  450. package/dist/src/core/i18n/types.js +0 -11
  451. package/dist/src/core/i18n/types.js.map +0 -1
  452. package/dist/src/core/increment/limits.d.ts +0 -68
  453. package/dist/src/core/increment/limits.d.ts.map +0 -1
  454. package/dist/src/core/increment/limits.js +0 -224
  455. package/dist/src/core/increment/limits.js.map +0 -1
  456. package/dist/src/core/increment/metadata-manager.d.ts +0 -114
  457. package/dist/src/core/increment/metadata-manager.d.ts.map +0 -1
  458. package/dist/src/core/increment/metadata-manager.js +0 -320
  459. package/dist/src/core/increment/metadata-manager.js.map +0 -1
  460. package/dist/src/core/increment/status-commands.d.ts +0 -43
  461. package/dist/src/core/increment/status-commands.d.ts.map +0 -1
  462. package/dist/src/core/increment/status-commands.js +0 -277
  463. package/dist/src/core/increment/status-commands.js.map +0 -1
  464. package/dist/src/core/increment-status.d.ts +0 -72
  465. package/dist/src/core/increment-status.d.ts.map +0 -1
  466. package/dist/src/core/increment-status.js +0 -227
  467. package/dist/src/core/increment-status.js.map +0 -1
  468. package/dist/src/core/model-selector.d.ts +0 -57
  469. package/dist/src/core/model-selector.d.ts.map +0 -1
  470. package/dist/src/core/model-selector.js +0 -115
  471. package/dist/src/core/model-selector.js.map +0 -1
  472. package/dist/src/core/phase-detector.d.ts +0 -62
  473. package/dist/src/core/phase-detector.d.ts.map +0 -1
  474. package/dist/src/core/phase-detector.js +0 -229
  475. package/dist/src/core/phase-detector.js.map +0 -1
  476. package/dist/src/core/plugin-loader.d.ts +0 -131
  477. package/dist/src/core/plugin-loader.d.ts.map +0 -1
  478. package/dist/src/core/plugin-loader.js +0 -421
  479. package/dist/src/core/plugin-loader.js.map +0 -1
  480. package/dist/src/core/project-manager.d.ts +0 -127
  481. package/dist/src/core/project-manager.d.ts.map +0 -1
  482. package/dist/src/core/project-manager.js +0 -524
  483. package/dist/src/core/project-manager.js.map +0 -1
  484. package/dist/src/core/project-structure-detector.d.ts +0 -92
  485. package/dist/src/core/project-structure-detector.d.ts.map +0 -1
  486. package/dist/src/core/project-structure-detector.js +0 -289
  487. package/dist/src/core/project-structure-detector.js.map +0 -1
  488. package/dist/src/core/qa/qa-runner.d.ts +0 -16
  489. package/dist/src/core/qa/qa-runner.d.ts.map +0 -1
  490. package/dist/src/core/qa/qa-runner.js +0 -404
  491. package/dist/src/core/qa/qa-runner.js.map +0 -1
  492. package/dist/src/core/qa/quality-gate-decider.d.ts +0 -53
  493. package/dist/src/core/qa/quality-gate-decider.d.ts.map +0 -1
  494. package/dist/src/core/qa/quality-gate-decider.js +0 -268
  495. package/dist/src/core/qa/quality-gate-decider.js.map +0 -1
  496. package/dist/src/core/qa/risk-calculator.d.ts +0 -126
  497. package/dist/src/core/qa/risk-calculator.d.ts.map +0 -1
  498. package/dist/src/core/qa/risk-calculator.js +0 -247
  499. package/dist/src/core/qa/risk-calculator.js.map +0 -1
  500. package/dist/src/core/qa/types.d.ts +0 -315
  501. package/dist/src/core/qa/types.d.ts.map +0 -1
  502. package/dist/src/core/qa/types.js +0 -8
  503. package/dist/src/core/qa/types.js.map +0 -1
  504. package/dist/src/core/rfc-generator-v2.d.ts +0 -149
  505. package/dist/src/core/rfc-generator-v2.d.ts.map +0 -1
  506. package/dist/src/core/rfc-generator-v2.js +0 -399
  507. package/dist/src/core/rfc-generator-v2.js.map +0 -1
  508. package/dist/src/core/specs/spec-metadata-manager.d.ts +0 -70
  509. package/dist/src/core/specs/spec-metadata-manager.d.ts.map +0 -1
  510. package/dist/src/core/specs/spec-metadata-manager.js +0 -371
  511. package/dist/src/core/specs/spec-metadata-manager.js.map +0 -1
  512. package/dist/src/core/specs/spec-parser.d.ts +0 -66
  513. package/dist/src/core/specs/spec-parser.d.ts.map +0 -1
  514. package/dist/src/core/specs/spec-parser.js +0 -276
  515. package/dist/src/core/specs/spec-parser.js.map +0 -1
  516. package/dist/src/core/sync/bidirectional-engine.d.ts +0 -110
  517. package/dist/src/core/sync/bidirectional-engine.d.ts.map +0 -1
  518. package/dist/src/core/sync/bidirectional-engine.js +0 -356
  519. package/dist/src/core/sync/bidirectional-engine.js.map +0 -1
  520. package/dist/src/core/sync/folder-mapper.d.ts +0 -71
  521. package/dist/src/core/sync/folder-mapper.d.ts.map +0 -1
  522. package/dist/src/core/sync/folder-mapper.js +0 -168
  523. package/dist/src/core/sync/folder-mapper.js.map +0 -1
  524. package/dist/src/core/sync/profile-manager.d.ts +0 -72
  525. package/dist/src/core/sync/profile-manager.d.ts.map +0 -1
  526. package/dist/src/core/sync/profile-manager.js +0 -338
  527. package/dist/src/core/sync/profile-manager.js.map +0 -1
  528. package/dist/src/core/sync/profile-selector.d.ts +0 -52
  529. package/dist/src/core/sync/profile-selector.d.ts.map +0 -1
  530. package/dist/src/core/sync/profile-selector.js +0 -179
  531. package/dist/src/core/sync/profile-selector.js.map +0 -1
  532. package/dist/src/core/sync/profile-validator.d.ts +0 -52
  533. package/dist/src/core/sync/profile-validator.d.ts.map +0 -1
  534. package/dist/src/core/sync/profile-validator.js +0 -225
  535. package/dist/src/core/sync/profile-validator.js.map +0 -1
  536. package/dist/src/core/sync/project-context.d.ts +0 -81
  537. package/dist/src/core/sync/project-context.d.ts.map +0 -1
  538. package/dist/src/core/sync/project-context.js +0 -354
  539. package/dist/src/core/sync/project-context.js.map +0 -1
  540. package/dist/src/core/sync/rate-limiter.d.ts +0 -116
  541. package/dist/src/core/sync/rate-limiter.d.ts.map +0 -1
  542. package/dist/src/core/sync/rate-limiter.js +0 -308
  543. package/dist/src/core/sync/rate-limiter.js.map +0 -1
  544. package/dist/src/core/sync/time-range-selector.d.ts +0 -48
  545. package/dist/src/core/sync/time-range-selector.d.ts.map +0 -1
  546. package/dist/src/core/sync/time-range-selector.js +0 -224
  547. package/dist/src/core/sync/time-range-selector.js.map +0 -1
  548. package/dist/src/core/types/config.d.ts +0 -90
  549. package/dist/src/core/types/config.d.ts.map +0 -1
  550. package/dist/src/core/types/config.js +0 -44
  551. package/dist/src/core/types/config.js.map +0 -1
  552. package/dist/src/core/types/increment-metadata.d.ts +0 -120
  553. package/dist/src/core/types/increment-metadata.d.ts.map +0 -1
  554. package/dist/src/core/types/increment-metadata.js +0 -138
  555. package/dist/src/core/types/increment-metadata.js.map +0 -1
  556. package/dist/src/core/types/plugin.d.ts +0 -283
  557. package/dist/src/core/types/plugin.d.ts.map +0 -1
  558. package/dist/src/core/types/plugin.js +0 -49
  559. package/dist/src/core/types/plugin.js.map +0 -1
  560. package/dist/src/core/types/spec-metadata.d.ts +0 -229
  561. package/dist/src/core/types/spec-metadata.d.ts.map +0 -1
  562. package/dist/src/core/types/spec-metadata.js +0 -14
  563. package/dist/src/core/types/spec-metadata.js.map +0 -1
  564. package/dist/src/core/types/sync-profile.d.ts +0 -403
  565. package/dist/src/core/types/sync-profile.d.ts.map +0 -1
  566. package/dist/src/core/types/sync-profile.js +0 -55
  567. package/dist/src/core/types/sync-profile.js.map +0 -1
  568. package/dist/src/hooks/lib/git-diff-analyzer.d.ts +0 -89
  569. package/dist/src/hooks/lib/git-diff-analyzer.d.ts.map +0 -1
  570. package/dist/src/hooks/lib/git-diff-analyzer.js +0 -226
  571. package/dist/src/hooks/lib/git-diff-analyzer.js.map +0 -1
  572. package/dist/src/hooks/lib/invoke-translator-skill.d.ts +0 -60
  573. package/dist/src/hooks/lib/invoke-translator-skill.d.ts.map +0 -1
  574. package/dist/src/hooks/lib/invoke-translator-skill.js +0 -201
  575. package/dist/src/hooks/lib/invoke-translator-skill.js.map +0 -1
  576. package/dist/src/hooks/lib/prepare-reflection-context.d.ts +0 -42
  577. package/dist/src/hooks/lib/prepare-reflection-context.d.ts.map +0 -1
  578. package/dist/src/hooks/lib/prepare-reflection-context.js +0 -123
  579. package/dist/src/hooks/lib/prepare-reflection-context.js.map +0 -1
  580. package/dist/src/hooks/lib/reflection-config-loader.d.ts +0 -45
  581. package/dist/src/hooks/lib/reflection-config-loader.d.ts.map +0 -1
  582. package/dist/src/hooks/lib/reflection-config-loader.js +0 -132
  583. package/dist/src/hooks/lib/reflection-config-loader.js.map +0 -1
  584. package/dist/src/hooks/lib/reflection-parser.d.ts +0 -33
  585. package/dist/src/hooks/lib/reflection-parser.d.ts.map +0 -1
  586. package/dist/src/hooks/lib/reflection-parser.js +0 -419
  587. package/dist/src/hooks/lib/reflection-parser.js.map +0 -1
  588. package/dist/src/hooks/lib/reflection-prompt-builder.d.ts +0 -56
  589. package/dist/src/hooks/lib/reflection-prompt-builder.d.ts.map +0 -1
  590. package/dist/src/hooks/lib/reflection-prompt-builder.js +0 -239
  591. package/dist/src/hooks/lib/reflection-prompt-builder.js.map +0 -1
  592. package/dist/src/hooks/lib/reflection-storage.d.ts +0 -64
  593. package/dist/src/hooks/lib/reflection-storage.d.ts.map +0 -1
  594. package/dist/src/hooks/lib/reflection-storage.js +0 -305
  595. package/dist/src/hooks/lib/reflection-storage.js.map +0 -1
  596. package/dist/src/hooks/lib/run-self-reflection.d.ts +0 -43
  597. package/dist/src/hooks/lib/run-self-reflection.d.ts.map +0 -1
  598. package/dist/src/hooks/lib/run-self-reflection.js +0 -203
  599. package/dist/src/hooks/lib/run-self-reflection.js.map +0 -1
  600. package/dist/src/hooks/lib/sync-living-docs.d.ts +0 -27
  601. package/dist/src/hooks/lib/sync-living-docs.d.ts.map +0 -1
  602. package/dist/src/hooks/lib/sync-living-docs.js +0 -116
  603. package/dist/src/hooks/lib/sync-living-docs.js.map +0 -1
  604. package/dist/src/hooks/lib/translate-file.d.ts +0 -59
  605. package/dist/src/hooks/lib/translate-file.d.ts.map +0 -1
  606. package/dist/src/hooks/lib/translate-file.js +0 -350
  607. package/dist/src/hooks/lib/translate-file.js.map +0 -1
  608. package/dist/src/hooks/lib/translate-living-docs.d.ts +0 -13
  609. package/dist/src/hooks/lib/translate-living-docs.d.ts.map +0 -1
  610. package/dist/src/hooks/lib/translate-living-docs.js +0 -175
  611. package/dist/src/hooks/lib/translate-living-docs.js.map +0 -1
  612. package/dist/src/hooks/lib/types/reflection-types.d.ts +0 -164
  613. package/dist/src/hooks/lib/types/reflection-types.d.ts.map +0 -1
  614. package/dist/src/hooks/lib/types/reflection-types.js +0 -73
  615. package/dist/src/hooks/lib/types/reflection-types.js.map +0 -1
  616. package/dist/src/hooks/lib/update-tasks-md.d.ts +0 -29
  617. package/dist/src/hooks/lib/update-tasks-md.d.ts.map +0 -1
  618. package/dist/src/hooks/lib/update-tasks-md.js +0 -203
  619. package/dist/src/hooks/lib/update-tasks-md.js.map +0 -1
  620. package/dist/src/integrations/ado/ado-client.d.ts +0 -127
  621. package/dist/src/integrations/ado/ado-client.d.ts.map +0 -1
  622. package/dist/src/integrations/ado/ado-client.js +0 -416
  623. package/dist/src/integrations/ado/ado-client.js.map +0 -1
  624. package/dist/src/integrations/jira/jira-client.d.ts +0 -139
  625. package/dist/src/integrations/jira/jira-client.d.ts.map +0 -1
  626. package/dist/src/integrations/jira/jira-client.js +0 -386
  627. package/dist/src/integrations/jira/jira-client.js.map +0 -1
  628. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts +0 -75
  629. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts.map +0 -1
  630. package/dist/src/integrations/jira/jira-incremental-mapper.js +0 -474
  631. package/dist/src/integrations/jira/jira-incremental-mapper.js.map +0 -1
  632. package/dist/src/integrations/jira/jira-mapper.d.ts +0 -105
  633. package/dist/src/integrations/jira/jira-mapper.d.ts.map +0 -1
  634. package/dist/src/integrations/jira/jira-mapper.js +0 -494
  635. package/dist/src/integrations/jira/jira-mapper.js.map +0 -1
  636. package/dist/src/metrics/calculators/change-failure-rate.d.ts +0 -22
  637. package/dist/src/metrics/calculators/change-failure-rate.d.ts.map +0 -1
  638. package/dist/src/metrics/calculators/change-failure-rate.js +0 -70
  639. package/dist/src/metrics/calculators/change-failure-rate.js.map +0 -1
  640. package/dist/src/metrics/calculators/deployment-frequency.d.ts +0 -20
  641. package/dist/src/metrics/calculators/deployment-frequency.d.ts.map +0 -1
  642. package/dist/src/metrics/calculators/deployment-frequency.js +0 -61
  643. package/dist/src/metrics/calculators/deployment-frequency.js.map +0 -1
  644. package/dist/src/metrics/calculators/lead-time.d.ts +0 -22
  645. package/dist/src/metrics/calculators/lead-time.d.ts.map +0 -1
  646. package/dist/src/metrics/calculators/lead-time.js +0 -82
  647. package/dist/src/metrics/calculators/lead-time.js.map +0 -1
  648. package/dist/src/metrics/calculators/mttr.d.ts +0 -21
  649. package/dist/src/metrics/calculators/mttr.d.ts.map +0 -1
  650. package/dist/src/metrics/calculators/mttr.js +0 -60
  651. package/dist/src/metrics/calculators/mttr.js.map +0 -1
  652. package/dist/src/metrics/dora-calculator.d.ts +0 -28
  653. package/dist/src/metrics/dora-calculator.d.ts.map +0 -1
  654. package/dist/src/metrics/dora-calculator.js +0 -117
  655. package/dist/src/metrics/dora-calculator.js.map +0 -1
  656. package/dist/src/metrics/github-client.d.ts +0 -51
  657. package/dist/src/metrics/github-client.d.ts.map +0 -1
  658. package/dist/src/metrics/github-client.js +0 -133
  659. package/dist/src/metrics/github-client.js.map +0 -1
  660. package/dist/src/metrics/report-generator.d.ts +0 -17
  661. package/dist/src/metrics/report-generator.d.ts.map +0 -1
  662. package/dist/src/metrics/report-generator.js +0 -403
  663. package/dist/src/metrics/report-generator.js.map +0 -1
  664. package/dist/src/metrics/types.d.ts +0 -112
  665. package/dist/src/metrics/types.d.ts.map +0 -1
  666. package/dist/src/metrics/types.js +0 -10
  667. package/dist/src/metrics/types.js.map +0 -1
  668. package/dist/src/metrics/utils/percentile.d.ts +0 -25
  669. package/dist/src/metrics/utils/percentile.d.ts.map +0 -1
  670. package/dist/src/metrics/utils/percentile.js +0 -46
  671. package/dist/src/metrics/utils/percentile.js.map +0 -1
  672. package/dist/src/metrics/utils/tier-classifier.d.ts +0 -61
  673. package/dist/src/metrics/utils/tier-classifier.d.ts.map +0 -1
  674. package/dist/src/metrics/utils/tier-classifier.js +0 -100
  675. package/dist/src/metrics/utils/tier-classifier.js.map +0 -1
  676. package/dist/src/testing/test-generator.d.ts +0 -117
  677. package/dist/src/testing/test-generator.d.ts.map +0 -1
  678. package/dist/src/testing/test-generator.js +0 -370
  679. package/dist/src/testing/test-generator.js.map +0 -1
  680. package/dist/src/types/cost-tracking.d.ts +0 -43
  681. package/dist/src/types/cost-tracking.d.ts.map +0 -1
  682. package/dist/src/types/cost-tracking.js +0 -8
  683. package/dist/src/types/cost-tracking.js.map +0 -1
  684. package/dist/src/types/model-selection.d.ts +0 -53
  685. package/dist/src/types/model-selection.d.ts.map +0 -1
  686. package/dist/src/types/model-selection.js +0 -12
  687. package/dist/src/types/model-selection.js.map +0 -1
  688. package/dist/src/utils/agents-md-compiler.d.ts +0 -68
  689. package/dist/src/utils/agents-md-compiler.d.ts.map +0 -1
  690. package/dist/src/utils/agents-md-compiler.js +0 -420
  691. package/dist/src/utils/agents-md-compiler.js.map +0 -1
  692. package/dist/src/utils/auth-helpers.d.ts +0 -58
  693. package/dist/src/utils/auth-helpers.d.ts.map +0 -1
  694. package/dist/src/utils/auth-helpers.js +0 -108
  695. package/dist/src/utils/auth-helpers.js.map +0 -1
  696. package/dist/src/utils/auto-install.d.ts +0 -47
  697. package/dist/src/utils/auto-install.d.ts.map +0 -1
  698. package/dist/src/utils/auto-install.js +0 -211
  699. package/dist/src/utils/auto-install.js.map +0 -1
  700. package/dist/src/utils/claude-cli-detector.d.ts +0 -75
  701. package/dist/src/utils/claude-cli-detector.d.ts.map +0 -1
  702. package/dist/src/utils/claude-cli-detector.js +0 -285
  703. package/dist/src/utils/claude-cli-detector.js.map +0 -1
  704. package/dist/src/utils/cost-reporter.d.ts +0 -58
  705. package/dist/src/utils/cost-reporter.d.ts.map +0 -1
  706. package/dist/src/utils/cost-reporter.js +0 -224
  707. package/dist/src/utils/cost-reporter.js.map +0 -1
  708. package/dist/src/utils/docs-preview/config-generator.d.ts +0 -46
  709. package/dist/src/utils/docs-preview/config-generator.d.ts.map +0 -1
  710. package/dist/src/utils/docs-preview/config-generator.js +0 -377
  711. package/dist/src/utils/docs-preview/config-generator.js.map +0 -1
  712. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts +0 -38
  713. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts.map +0 -1
  714. package/dist/src/utils/docs-preview/docusaurus-setup.js +0 -177
  715. package/dist/src/utils/docs-preview/docusaurus-setup.js.map +0 -1
  716. package/dist/src/utils/docs-preview/index.d.ts +0 -7
  717. package/dist/src/utils/docs-preview/index.d.ts.map +0 -1
  718. package/dist/src/utils/docs-preview/index.js +0 -7
  719. package/dist/src/utils/docs-preview/index.js.map +0 -1
  720. package/dist/src/utils/docs-preview/package-installer.d.ts +0 -42
  721. package/dist/src/utils/docs-preview/package-installer.d.ts.map +0 -1
  722. package/dist/src/utils/docs-preview/package-installer.js +0 -182
  723. package/dist/src/utils/docs-preview/package-installer.js.map +0 -1
  724. package/dist/src/utils/docs-preview/server-manager.d.ts +0 -30
  725. package/dist/src/utils/docs-preview/server-manager.d.ts.map +0 -1
  726. package/dist/src/utils/docs-preview/server-manager.js +0 -212
  727. package/dist/src/utils/docs-preview/server-manager.js.map +0 -1
  728. package/dist/src/utils/docs-preview/sidebar-builder.d.ts +0 -32
  729. package/dist/src/utils/docs-preview/sidebar-builder.d.ts.map +0 -1
  730. package/dist/src/utils/docs-preview/sidebar-builder.js +0 -202
  731. package/dist/src/utils/docs-preview/sidebar-builder.js.map +0 -1
  732. package/dist/src/utils/docs-preview/types.d.ts +0 -57
  733. package/dist/src/utils/docs-preview/types.d.ts.map +0 -1
  734. package/dist/src/utils/docs-preview/types.js +0 -2
  735. package/dist/src/utils/docs-preview/types.js.map +0 -1
  736. package/dist/src/utils/env-file.d.ts +0 -88
  737. package/dist/src/utils/env-file.d.ts.map +0 -1
  738. package/dist/src/utils/env-file.js +0 -180
  739. package/dist/src/utils/env-file.js.map +0 -1
  740. package/dist/src/utils/env-multi-project-parser.d.ts +0 -220
  741. package/dist/src/utils/env-multi-project-parser.d.ts.map +0 -1
  742. package/dist/src/utils/env-multi-project-parser.js +0 -403
  743. package/dist/src/utils/env-multi-project-parser.js.map +0 -1
  744. package/dist/src/utils/esm-helpers.d.ts +0 -50
  745. package/dist/src/utils/esm-helpers.d.ts.map +0 -1
  746. package/dist/src/utils/esm-helpers.js +0 -57
  747. package/dist/src/utils/esm-helpers.js.map +0 -1
  748. package/dist/src/utils/execFileNoThrow.d.ts +0 -99
  749. package/dist/src/utils/execFileNoThrow.d.ts.map +0 -1
  750. package/dist/src/utils/execFileNoThrow.js +0 -137
  751. package/dist/src/utils/execFileNoThrow.js.map +0 -1
  752. package/dist/src/utils/external-resource-validator.d.ts +0 -102
  753. package/dist/src/utils/external-resource-validator.d.ts.map +0 -1
  754. package/dist/src/utils/external-resource-validator.js +0 -442
  755. package/dist/src/utils/external-resource-validator.js.map +0 -1
  756. package/dist/src/utils/generate-skills-index.d.ts +0 -24
  757. package/dist/src/utils/generate-skills-index.d.ts.map +0 -1
  758. package/dist/src/utils/generate-skills-index.js +0 -410
  759. package/dist/src/utils/generate-skills-index.js.map +0 -1
  760. package/dist/src/utils/model-selection.d.ts +0 -75
  761. package/dist/src/utils/model-selection.d.ts.map +0 -1
  762. package/dist/src/utils/model-selection.js +0 -204
  763. package/dist/src/utils/model-selection.js.map +0 -1
  764. package/dist/src/utils/plugin-validator.d.ts +0 -161
  765. package/dist/src/utils/plugin-validator.d.ts.map +0 -1
  766. package/dist/src/utils/plugin-validator.js +0 -558
  767. package/dist/src/utils/plugin-validator.js.map +0 -1
  768. package/dist/src/utils/pricing-constants.d.ts +0 -70
  769. package/dist/src/utils/pricing-constants.d.ts.map +0 -1
  770. package/dist/src/utils/pricing-constants.js +0 -71
  771. package/dist/src/utils/pricing-constants.js.map +0 -1
  772. package/dist/src/utils/project-detection.d.ts +0 -141
  773. package/dist/src/utils/project-detection.d.ts.map +0 -1
  774. package/dist/src/utils/project-detection.js +0 -321
  775. package/dist/src/utils/project-detection.js.map +0 -1
  776. package/dist/src/utils/string-utils.d.ts +0 -40
  777. package/dist/src/utils/string-utils.d.ts.map +0 -1
  778. package/dist/src/utils/string-utils.js +0 -58
  779. package/dist/src/utils/string-utils.js.map +0 -1
  780. package/dist/src/utils/translation.d.ts +0 -187
  781. package/dist/src/utils/translation.d.ts.map +0 -1
  782. package/dist/src/utils/translation.js +0 -414
  783. package/dist/src/utils/translation.js.map +0 -1
@@ -1,211 +1,183 @@
1
- /**
2
- * ADO Project Selector with Pagination
3
- *
4
- * Features:
5
- * - Fetches all ADO projects via API
6
- * - Interactive multi-select with search
7
- * - Manual project name entry (comma-separated)
8
- * - Handles large project lists (50+ projects)
9
- * - Validates project names
10
- */
11
- import inquirer from 'inquirer';
12
- // ============================================================================
13
- // ADO Project Fetching
14
- // ============================================================================
15
- /**
16
- * Fetch all ADO projects from API
17
- */
18
- export async function fetchAllAdoProjects(client) {
19
- console.log('🔍 Fetching Azure DevOps projects...');
20
- try {
21
- const projects = await client.getProjects();
22
- console.log(`✅ Found ${projects.length} Azure DevOps projects\n`);
23
- return projects;
24
- }
25
- catch (error) {
26
- console.error('❌ Failed to fetch ADO projects:', error.message);
27
- throw error;
28
- }
1
+ import inquirer from "inquirer";
2
+ async function fetchAllAdoProjects(client) {
3
+ console.log("\u{1F50D} Fetching Azure DevOps projects...");
4
+ try {
5
+ const projects = await client.getProjects();
6
+ console.log(`\u2705 Found ${projects.length} Azure DevOps projects
7
+ `);
8
+ return projects;
9
+ } catch (error) {
10
+ console.error("\u274C Failed to fetch ADO projects:", error.message);
11
+ throw error;
12
+ }
29
13
  }
30
- // ============================================================================
31
- // Interactive Project Selection
32
- // ============================================================================
33
- /**
34
- * Interactive project selector with search and pagination
35
- */
36
- export async function selectAdoProjects(client, options = {}) {
37
- const { allowManualEntry = true, allowSelectAll = true, preSelected = [], minSelection = 1, maxSelection, pageSize = 15, } = options;
38
- // Fetch all projects
39
- const allProjects = await fetchAllAdoProjects(client);
40
- if (allProjects.length === 0) {
41
- console.log('⚠️ No Azure DevOps projects found');
42
- return {
43
- selectedNames: [],
44
- method: 'interactive',
45
- };
46
- }
47
- // Show project overview
48
- console.log('📋 Available Azure DevOps Projects:\n');
49
- console.log(` Total: ${allProjects.length} projects\n`);
50
- // Decide selection method
51
- const { selectionMethod } = await inquirer.prompt([
14
+ async function selectAdoProjects(client, options = {}) {
15
+ const {
16
+ allowManualEntry = true,
17
+ allowSelectAll = true,
18
+ preSelected = [],
19
+ minSelection = 1,
20
+ maxSelection,
21
+ pageSize = 15
22
+ } = options;
23
+ const allProjects = await fetchAllAdoProjects(client);
24
+ if (allProjects.length === 0) {
25
+ console.log("\u26A0\uFE0F No Azure DevOps projects found");
26
+ return {
27
+ selectedNames: [],
28
+ method: "interactive"
29
+ };
30
+ }
31
+ console.log("\u{1F4CB} Available Azure DevOps Projects:\n");
32
+ console.log(` Total: ${allProjects.length} projects
33
+ `);
34
+ const { selectionMethod } = await inquirer.prompt([
35
+ {
36
+ type: "list",
37
+ name: "selectionMethod",
38
+ message: "How would you like to select projects?",
39
+ choices: [
52
40
  {
53
- type: 'list',
54
- name: 'selectionMethod',
55
- message: 'How would you like to select projects?',
56
- choices: [
57
- {
58
- name: `📋 Interactive (browse and select from ${allProjects.length} projects)`,
59
- value: 'interactive',
60
- },
61
- {
62
- name: '✏️ Manual entry (type project names)',
63
- value: 'manual',
64
- },
65
- ...(allowSelectAll
66
- ? [
67
- {
68
- name: `✨ Select all (${allProjects.length} projects)`,
69
- value: 'all',
70
- },
71
- ]
72
- : []),
73
- ],
41
+ name: `\u{1F4CB} Interactive (browse and select from ${allProjects.length} projects)`,
42
+ value: "interactive"
74
43
  },
75
- ]);
76
- if (selectionMethod === 'all') {
77
- return {
78
- selectedNames: allProjects.map((p) => p.name),
79
- method: 'all',
80
- };
81
- }
82
- if (selectionMethod === 'manual') {
83
- return await manualProjectEntry(allProjects, minSelection, maxSelection);
84
- }
85
- // Interactive selection
86
- return await interactiveProjectSelection(allProjects, preSelected, minSelection, maxSelection, pageSize);
87
- }
88
- /**
89
- * Interactive project selection with checkbox
90
- */
91
- async function interactiveProjectSelection(allProjects, preSelected, minSelection, maxSelection, pageSize) {
92
- console.log('💡 Use <space> to select, <a> to toggle all, <i> to invert\n');
93
- const choices = allProjects.map((p) => ({
94
- name: formatProjectChoice(p),
95
- value: p.name,
96
- checked: preSelected.includes(p.name),
97
- }));
98
- // Add manual entry option at the end
99
- choices.push(new inquirer.Separator(), {
100
- name: '✏️ Enter project names manually instead',
101
- value: '__MANUAL__',
102
- checked: false,
103
- });
104
- const { selectedNames } = await inquirer.prompt([
105
44
  {
106
- type: 'checkbox',
107
- name: 'selectedNames',
108
- message: `Select Azure DevOps projects (${minSelection}${maxSelection ? `-${maxSelection}` : '+'} required):`,
109
- choices,
110
- pageSize,
111
- loop: false,
112
- validate: (selected) => {
113
- const actualSelected = selected.filter((k) => k !== '__MANUAL__');
114
- if (actualSelected.length < minSelection) {
115
- return `Please select at least ${minSelection} project(s)`;
116
- }
117
- if (maxSelection && actualSelected.length > maxSelection) {
118
- return `Please select at most ${maxSelection} project(s)`;
119
- }
120
- return true;
121
- },
45
+ name: "\u270F\uFE0F Manual entry (type project names)",
46
+ value: "manual"
122
47
  },
123
- ]);
124
- // Check if user chose manual entry
125
- if (selectedNames.includes('__MANUAL__')) {
126
- return await manualProjectEntry(allProjects, minSelection, maxSelection);
48
+ ...allowSelectAll ? [
49
+ {
50
+ name: `\u2728 Select all (${allProjects.length} projects)`,
51
+ value: "all"
52
+ }
53
+ ] : []
54
+ ]
127
55
  }
128
- console.log(`\n✅ Selected ${selectedNames.length} projects: ${selectedNames.join(', ')}\n`);
56
+ ]);
57
+ if (selectionMethod === "all") {
129
58
  return {
130
- selectedNames,
131
- method: 'interactive',
59
+ selectedNames: allProjects.map((p) => p.name),
60
+ method: "all"
132
61
  };
62
+ }
63
+ if (selectionMethod === "manual") {
64
+ return await manualProjectEntry(allProjects, minSelection, maxSelection);
65
+ }
66
+ return await interactiveProjectSelection(
67
+ allProjects,
68
+ preSelected,
69
+ minSelection,
70
+ maxSelection,
71
+ pageSize
72
+ );
133
73
  }
134
- /**
135
- * Manual project name entry (comma-separated)
136
- */
137
- async function manualProjectEntry(allProjects, minSelection, maxSelection) {
138
- console.log('\n📝 Enter project names manually\n');
139
- console.log('💡 Format: Comma-separated project names (e.g., AI Meme Generator,Project 2,Project 3)\n');
140
- if (allProjects.length > 0) {
141
- console.log('Available project names:');
142
- console.log(allProjects
143
- .map((p) => p.name)
144
- .join(', ')
145
- .substring(0, 100) + (allProjects.length > 20 ? '...' : ''));
146
- console.log('');
74
+ async function interactiveProjectSelection(allProjects, preSelected, minSelection, maxSelection, pageSize) {
75
+ console.log("\u{1F4A1} Use <space> to select, <a> to toggle all, <i> to invert\n");
76
+ const choices = allProjects.map((p) => ({
77
+ name: formatProjectChoice(p),
78
+ value: p.name,
79
+ checked: preSelected.includes(p.name)
80
+ }));
81
+ choices.push(
82
+ new inquirer.Separator(),
83
+ {
84
+ name: "\u270F\uFE0F Enter project names manually instead",
85
+ value: "__MANUAL__",
86
+ checked: false
147
87
  }
148
- const { manualNames } = await inquirer.prompt([
149
- {
150
- type: 'input',
151
- name: 'manualNames',
152
- message: 'Project names:',
153
- validate: (input) => {
154
- if (!input.trim()) {
155
- return 'Please enter at least one project name';
156
- }
157
- const names = input
158
- .split(',')
159
- .map((n) => n.trim())
160
- .filter((n) => n.length > 0);
161
- if (names.length < minSelection) {
162
- return `Please enter at least ${minSelection} project name(s)`;
163
- }
164
- if (maxSelection && names.length > maxSelection) {
165
- return `Please enter at most ${maxSelection} project name(s)`;
166
- }
167
- return true;
168
- },
169
- },
170
- ]);
171
- const selectedNames = manualNames
172
- .split(',')
173
- .map((n) => n.trim())
174
- .filter((n) => n.length > 0);
175
- // Warn about unknown projects
176
- const knownNames = allProjects.map((p) => p.name);
177
- const unknownNames = selectedNames.filter((n) => !knownNames.includes(n));
178
- if (unknownNames.length > 0) {
179
- console.log(`\n⚠️ Unknown project names (will be used anyway): ${unknownNames.join(', ')}`);
180
- console.log(' Make sure these projects exist in your Azure DevOps organization.\n');
88
+ );
89
+ const { selectedNames } = await inquirer.prompt([
90
+ {
91
+ type: "checkbox",
92
+ name: "selectedNames",
93
+ message: `Select Azure DevOps projects (${minSelection}${maxSelection ? `-${maxSelection}` : "+"} required):`,
94
+ choices,
95
+ pageSize,
96
+ loop: false,
97
+ validate: (selected) => {
98
+ const actualSelected = selected.filter((k) => k !== "__MANUAL__");
99
+ if (actualSelected.length < minSelection) {
100
+ return `Please select at least ${minSelection} project(s)`;
101
+ }
102
+ if (maxSelection && actualSelected.length > maxSelection) {
103
+ return `Please select at most ${maxSelection} project(s)`;
104
+ }
105
+ return true;
106
+ }
181
107
  }
182
- console.log(`✅ Selected ${selectedNames.length} projects: ${selectedNames.join(', ')}\n`);
183
- return {
184
- selectedNames,
185
- method: 'manual',
186
- };
108
+ ]);
109
+ if (selectedNames.includes("__MANUAL__")) {
110
+ return await manualProjectEntry(allProjects, minSelection, maxSelection);
111
+ }
112
+ console.log(`
113
+ \u2705 Selected ${selectedNames.length} projects: ${selectedNames.join(", ")}
114
+ `);
115
+ return {
116
+ selectedNames,
117
+ method: "interactive"
118
+ };
119
+ }
120
+ async function manualProjectEntry(allProjects, minSelection, maxSelection) {
121
+ console.log("\n\u{1F4DD} Enter project names manually\n");
122
+ console.log("\u{1F4A1} Format: Comma-separated project names (e.g., AI Meme Generator,Project 2,Project 3)\n");
123
+ if (allProjects.length > 0) {
124
+ console.log("Available project names:");
125
+ console.log(
126
+ allProjects.map((p) => p.name).join(", ").substring(0, 100) + (allProjects.length > 20 ? "..." : "")
127
+ );
128
+ console.log("");
129
+ }
130
+ const { manualNames } = await inquirer.prompt([
131
+ {
132
+ type: "input",
133
+ name: "manualNames",
134
+ message: "Project names:",
135
+ validate: (input) => {
136
+ if (!input.trim()) {
137
+ return "Please enter at least one project name";
138
+ }
139
+ const names = input.split(",").map((n) => n.trim()).filter((n) => n.length > 0);
140
+ if (names.length < minSelection) {
141
+ return `Please enter at least ${minSelection} project name(s)`;
142
+ }
143
+ if (maxSelection && names.length > maxSelection) {
144
+ return `Please enter at most ${maxSelection} project name(s)`;
145
+ }
146
+ return true;
147
+ }
148
+ }
149
+ ]);
150
+ const selectedNames = manualNames.split(",").map((n) => n.trim()).filter((n) => n.length > 0);
151
+ const knownNames = allProjects.map((p) => p.name);
152
+ const unknownNames = selectedNames.filter((n) => !knownNames.includes(n));
153
+ if (unknownNames.length > 0) {
154
+ console.log(`
155
+ \u26A0\uFE0F Unknown project names (will be used anyway): ${unknownNames.join(", ")}`);
156
+ console.log(" Make sure these projects exist in your Azure DevOps organization.\n");
157
+ }
158
+ console.log(`\u2705 Selected ${selectedNames.length} projects: ${selectedNames.join(", ")}
159
+ `);
160
+ return {
161
+ selectedNames,
162
+ method: "manual"
163
+ };
187
164
  }
188
- // ============================================================================
189
- // Helpers
190
- // ============================================================================
191
- /**
192
- * Format project choice for display
193
- */
194
165
  function formatProjectChoice(project) {
195
- const visibility = project.visibility || 'private';
196
- const state = project.state || 'wellFormed';
197
- return `${project.name.padEnd(30)} - ${project.description || 'No description'} (${visibility}, ${state})`;
166
+ const visibility = project.visibility || "private";
167
+ const state = project.state || "wellFormed";
168
+ return `${project.name.padEnd(30)} - ${project.description || "No description"} (${visibility}, ${state})`;
198
169
  }
199
- /**
200
- * Quick project selector - select single project
201
- */
202
- export async function selectSingleAdoProject(client, message = 'Select Azure DevOps project:') {
203
- const result = await selectAdoProjects(client, {
204
- allowManualEntry: true,
205
- allowSelectAll: false,
206
- minSelection: 1,
207
- maxSelection: 1,
208
- });
209
- return result.selectedNames[0];
170
+ async function selectSingleAdoProject(client, message = "Select Azure DevOps project:") {
171
+ const result = await selectAdoProjects(client, {
172
+ allowManualEntry: true,
173
+ allowSelectAll: false,
174
+ minSelection: 1,
175
+ maxSelection: 1
176
+ });
177
+ return result.selectedNames[0];
210
178
  }
211
- //# sourceMappingURL=project-selector.js.map
179
+ export {
180
+ fetchAllAdoProjects,
181
+ selectAdoProjects,
182
+ selectSingleAdoProject
183
+ };
@@ -15,6 +15,5 @@
15
15
  "integration",
16
16
  "sync",
17
17
  "specweave"
18
- ],
19
- "hooks": "./hooks/hooks.json"
18
+ ]
20
19
  }
@@ -10,6 +10,17 @@
10
10
  }
11
11
  ]
12
12
  }
13
+ ],
14
+ "PostSlashCommand": [
15
+ {
16
+ "matcher": "specweave:specweave-done",
17
+ "hooks": [
18
+ {
19
+ "type": "command",
20
+ "command": "${CLAUDE_PLUGIN_ROOT}/hooks/post-increment-done.sh"
21
+ }
22
+ ]
23
+ }
13
24
  ]
14
25
  }
15
26
  }
@@ -0,0 +1,224 @@
1
+ #!/bin/bash
2
+ # Post-Increment-Done Hook - GitHub Plugin
3
+ #
4
+ # Purpose: Automatically syncs living docs spec to GitHub Project when increment closes
5
+ #
6
+ # Triggered by: /specweave:done command completion
7
+ # Event: PostSlashCommand (commandName: "specweave:done")
8
+ #
9
+ # Flow:
10
+ # 1. Increment closes → PM validates
11
+ # 2. Hook fires automatically
12
+ # 3. Syncs living docs spec to GitHub Project
13
+ # 4. Closes GitHub Issue (if exists)
14
+ #
15
+ # Configuration (.specweave/config.json):
16
+ # "hooks": {
17
+ # "post_increment_done": {
18
+ # "sync_to_github_project": true,
19
+ # "close_github_issue": true,
20
+ # "update_living_docs_first": true
21
+ # }
22
+ # }
23
+
24
+ set -e
25
+
26
+ # ============================================================================
27
+ # Configuration & Logging
28
+ # ============================================================================
29
+
30
+ INCREMENT_ID="$1"
31
+ HOOK_NAME="post-increment-done"
32
+ LOG_DIR=".specweave/logs"
33
+ LOG_FILE="${LOG_DIR}/hooks-debug.log"
34
+ CONFIG_FILE=".specweave/config.json"
35
+
36
+ # Ensure log directory exists
37
+ mkdir -p "${LOG_DIR}"
38
+
39
+ # Logging function
40
+ log() {
41
+ local level="$1"
42
+ shift
43
+ local message="$*"
44
+ local timestamp
45
+ timestamp=$(date '+%Y-%m-%d %H:%M:%S')
46
+ echo "[${timestamp}] [${HOOK_NAME}] [${level}] ${message}" | tee -a "${LOG_FILE}"
47
+ }
48
+
49
+ log "INFO" "=========================================="
50
+ log "INFO" "Post-Increment-Done Hook Started"
51
+ log "INFO" "Increment: ${INCREMENT_ID}"
52
+ log "INFO" "=========================================="
53
+
54
+ # ============================================================================
55
+ # Validation & Configuration
56
+ # ============================================================================
57
+
58
+ # Check if increment ID provided
59
+ if [ -z "$INCREMENT_ID" ]; then
60
+ log "ERROR" "No increment ID provided to hook"
61
+ exit 0
62
+ fi
63
+
64
+ # Normalize increment ID to 4-digit format
65
+ # First strip leading zeros to avoid octal interpretation (0019 → 19)
66
+ INCREMENT_ID_NUM=$(echo "$INCREMENT_ID" | sed 's/^0*//')
67
+ # Then normalize to 4-digit format (19 → 0019)
68
+ INCREMENT_ID=$(printf "%04d" "$INCREMENT_ID_NUM" 2>/dev/null || echo "$INCREMENT_ID")
69
+
70
+ # Find increment directory (format: 0019-name or 0019)
71
+ INCREMENT_DIR=$(find .specweave/increments/ -maxdepth 1 -type d -name "${INCREMENT_ID}*" | head -1)
72
+
73
+ if [ -z "$INCREMENT_DIR" ] || [ ! -d "$INCREMENT_DIR" ]; then
74
+ log "WARN" "Increment directory not found for ID: ${INCREMENT_ID}"
75
+ exit 0
76
+ fi
77
+
78
+ log "INFO" "Found increment directory: ${INCREMENT_DIR}"
79
+
80
+ # Read configuration
81
+ if [ ! -f "$CONFIG_FILE" ]; then
82
+ log "WARN" "Config file not found: ${CONFIG_FILE}"
83
+ exit 0
84
+ fi
85
+
86
+ # Check if GitHub Project sync is enabled
87
+ SYNC_ENABLED=$(node -pe "
88
+ try {
89
+ const config = require('./${CONFIG_FILE}');
90
+ config.hooks?.post_increment_done?.sync_to_github_project || false;
91
+ } catch (e) {
92
+ false;
93
+ }
94
+ " 2>/dev/null || echo "false")
95
+
96
+ log "INFO" "GitHub Project sync enabled: ${SYNC_ENABLED}"
97
+
98
+ if [ "$SYNC_ENABLED" != "true" ]; then
99
+ log "INFO" "GitHub Project sync disabled, skipping"
100
+ exit 0
101
+ fi
102
+
103
+ # Check if GitHub CLI is available
104
+ if ! command -v gh &> /dev/null; then
105
+ log "WARN" "GitHub CLI (gh) not found, skipping sync"
106
+ exit 0
107
+ fi
108
+
109
+ # Check if gh is authenticated
110
+ if ! gh auth status &> /dev/null; then
111
+ log "WARN" "GitHub CLI not authenticated, skipping sync"
112
+ exit 0
113
+ fi
114
+
115
+ # ============================================================================
116
+ # Find Living Docs Spec
117
+ # ============================================================================
118
+
119
+ log "INFO" "Finding living docs spec for increment ${INCREMENT_ID}..."
120
+
121
+ # Pattern 1: spec-NNNN-name.md (e.g., spec-0018-strict-increment-discipline.md)
122
+ SPEC_FILE=$(find .specweave/docs/internal/specs/ -name "spec-${INCREMENT_ID}*.md" 2>/dev/null | head -1)
123
+
124
+ # Pattern 2: spec-NNN-name.md (e.g., spec-018-strict-increment-discipline.md)
125
+ if [ -z "$SPEC_FILE" ]; then
126
+ INCREMENT_ID_3DIGIT=$(printf "%03d" "$INCREMENT_ID" 2>/dev/null || echo "$INCREMENT_ID")
127
+ SPEC_FILE=$(find .specweave/docs/internal/specs/ -name "spec-${INCREMENT_ID_3DIGIT}*.md" 2>/dev/null | head -1)
128
+ fi
129
+
130
+ # Pattern 3: Check increment spec.md for living docs reference
131
+ if [ -z "$SPEC_FILE" ] && [ -f "${INCREMENT_DIR}/spec.md" ]; then
132
+ log "INFO" "Checking increment spec.md for living docs reference..."
133
+ SPEC_REFERENCE=$(grep -E "Living Docs:.*spec-[0-9]+" "${INCREMENT_DIR}/spec.md" | grep -oE "spec-[0-9]+-[a-z-]+" | head -1)
134
+ if [ -n "$SPEC_REFERENCE" ]; then
135
+ SPEC_FILE=$(find .specweave/docs/internal/specs/ -name "${SPEC_REFERENCE}.md" 2>/dev/null | head -1)
136
+ fi
137
+ fi
138
+
139
+ if [ -z "$SPEC_FILE" ]; then
140
+ log "WARN" "No living docs spec found for increment ${INCREMENT_ID}"
141
+ log "INFO" "This is OK for bug/hotfix increments that don't create new specs"
142
+ exit 0
143
+ fi
144
+
145
+ log "INFO" "Found living docs spec: ${SPEC_FILE}"
146
+
147
+ # ============================================================================
148
+ # Sync to GitHub Project
149
+ # ============================================================================
150
+
151
+ log "INFO" "🔄 Syncing living docs spec to GitHub Project..."
152
+
153
+ # Extract spec ID from filename (e.g., spec-018-name.md → 018)
154
+ SPEC_ID=$(basename "$SPEC_FILE" | grep -oE "spec-[0-9]+" | grep -oE "[0-9]+")
155
+
156
+ log "INFO" "Spec ID: ${SPEC_ID}"
157
+
158
+ # Call the sync-spec command
159
+ # NOTE: This assumes /specweave-github:sync-spec command exists
160
+ # If not implemented yet, this will gracefully fail
161
+ if npx specweave sync-spec "$SPEC_FILE" >> "${LOG_FILE}" 2>&1; then
162
+ log "INFO" "✅ GitHub Project synced successfully"
163
+ else
164
+ log "WARN" "Failed to sync to GitHub Project (command may not exist yet)"
165
+ log "INFO" "Manual sync: /specweave-github:sync-spec ${SPEC_FILE}"
166
+ fi
167
+
168
+ # ============================================================================
169
+ # Close GitHub Issue (Optional)
170
+ # ============================================================================
171
+
172
+ CLOSE_ISSUE=$(node -pe "
173
+ try {
174
+ const config = require('./${CONFIG_FILE}');
175
+ config.hooks?.post_increment_done?.close_github_issue || false;
176
+ } catch (e) {
177
+ false;
178
+ }
179
+ " 2>/dev/null || echo "false")
180
+
181
+ log "INFO" "Close GitHub issue enabled: ${CLOSE_ISSUE}"
182
+
183
+ if [ "$CLOSE_ISSUE" = "true" ]; then
184
+ # Check if increment has GitHub issue metadata
185
+ METADATA_FILE="${INCREMENT_DIR}/.metadata.json"
186
+
187
+ if [ -f "$METADATA_FILE" ]; then
188
+ ISSUE_NUMBER=$(node -pe "
189
+ try {
190
+ const metadata = require('./${METADATA_FILE}');
191
+ metadata.github?.issue || '';
192
+ } catch (e) {
193
+ '';
194
+ }
195
+ " 2>/dev/null || echo "")
196
+
197
+ if [ -n "$ISSUE_NUMBER" ]; then
198
+ log "INFO" "Closing GitHub issue #${ISSUE_NUMBER}..."
199
+
200
+ # Close issue via gh CLI
201
+ if gh issue close "$ISSUE_NUMBER" --comment "✅ Increment ${INCREMENT_ID} completed and closed" >> "${LOG_FILE}" 2>&1; then
202
+ log "INFO" "✅ GitHub issue #${ISSUE_NUMBER} closed"
203
+ else
204
+ log "WARN" "Failed to close GitHub issue #${ISSUE_NUMBER}"
205
+ fi
206
+ else
207
+ log "INFO" "No GitHub issue found in metadata"
208
+ fi
209
+ else
210
+ log "INFO" "No metadata file found: ${METADATA_FILE}"
211
+ fi
212
+ fi
213
+
214
+ # ============================================================================
215
+ # Completion
216
+ # ============================================================================
217
+
218
+ log "INFO" "=========================================="
219
+ log "INFO" "Post-Increment-Done Hook Completed"
220
+ log "INFO" "Increment: ${INCREMENT_ID}"
221
+ log "INFO" "Spec: ${SPEC_FILE}"
222
+ log "INFO" "=========================================="
223
+
224
+ exit 0
@@ -1,28 +1,17 @@
1
1
  #!/usr/bin/env node
2
- /**
3
- * CLI wrapper for syncing increment changes to GitHub
4
- *
5
- * Usage:
6
- * node dist/plugins/specweave-github/lib/cli-sync-increment-changes.js <incrementId> <changedFile>
7
- *
8
- * Example:
9
- * node dist/plugins/specweave-github/lib/cli-sync-increment-changes.js 0015-hierarchical-sync spec.md
10
- */
11
- import { syncIncrementChanges } from './github-sync-increment-changes.js';
2
+ import { syncIncrementChanges } from "./github-sync-increment-changes.js";
12
3
  const incrementId = process.argv[2];
13
4
  const changedFile = process.argv[3];
14
5
  if (!incrementId || !changedFile) {
15
- console.error('❌ Usage: cli-sync-increment-changes <incrementId> <changedFile>');
16
- console.error(' Example: cli-sync-increment-changes 0015-hierarchical-sync spec.md');
17
- process.exit(1);
6
+ console.error("\u274C Usage: cli-sync-increment-changes <incrementId> <changedFile>");
7
+ console.error(" Example: cli-sync-increment-changes 0015-hierarchical-sync spec.md");
8
+ process.exit(1);
18
9
  }
19
- if (!['spec.md', 'plan.md', 'tasks.md'].includes(changedFile)) {
20
- console.error(`❌ Invalid file: ${changedFile}`);
21
- console.error(' Must be one of: spec.md, plan.md, tasks.md');
22
- process.exit(1);
10
+ if (!["spec.md", "plan.md", "tasks.md"].includes(changedFile)) {
11
+ console.error(`\u274C Invalid file: ${changedFile}`);
12
+ console.error(" Must be one of: spec.md, plan.md, tasks.md");
13
+ process.exit(1);
23
14
  }
24
15
  syncIncrementChanges(incrementId, changedFile).catch((error) => {
25
- console.error('❌ Fatal error:', error);
26
- // Don't exit with error code - best-effort sync
16
+ console.error("\u274C Fatal error:", error);
27
17
  });
28
- //# sourceMappingURL=cli-sync-increment-changes.js.map