specweave 0.12.0 → 0.12.2

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 (674) hide show
  1. package/CLAUDE.md +22 -0
  2. package/dist/cli/commands/init.d.ts.map +1 -1
  3. package/dist/cli/commands/init.js +44 -12
  4. package/dist/cli/commands/init.js.map +1 -1
  5. package/dist/core/specs/spec-metadata-manager.d.ts +70 -0
  6. package/dist/core/specs/spec-metadata-manager.d.ts.map +1 -0
  7. package/dist/core/specs/spec-metadata-manager.js +371 -0
  8. package/dist/core/specs/spec-metadata-manager.js.map +1 -0
  9. package/dist/core/specs/spec-parser.d.ts +66 -0
  10. package/dist/core/specs/spec-parser.d.ts.map +1 -0
  11. package/dist/core/specs/spec-parser.js +276 -0
  12. package/dist/core/specs/spec-parser.js.map +1 -0
  13. package/dist/core/types/config.d.ts.map +1 -1
  14. package/dist/core/types/config.js +7 -0
  15. package/dist/core/types/config.js.map +1 -1
  16. package/dist/core/types/spec-metadata.d.ts +229 -0
  17. package/dist/core/types/spec-metadata.d.ts.map +1 -0
  18. package/dist/core/types/spec-metadata.js +14 -0
  19. package/dist/core/types/spec-metadata.js.map +1 -0
  20. package/dist/hooks/lib/prepare-reflection-context.js +1 -1
  21. package/dist/hooks/lib/prepare-reflection-context.js.map +1 -1
  22. package/dist/utils/external-resource-validator.d.ts.map +1 -1
  23. package/dist/utils/external-resource-validator.js +101 -59
  24. package/dist/utils/external-resource-validator.js.map +1 -1
  25. package/package.json +10 -3
  26. package/plugins/specweave/agents/pm/AGENT.md +183 -0
  27. package/plugins/specweave/hooks/post-increment-change.sh +94 -0
  28. package/plugins/specweave/hooks/post-increment-status-change.sh +143 -0
  29. package/plugins/specweave/hooks/post-spec-update.sh +158 -0
  30. package/plugins/specweave/hooks/post-user-story-complete.sh +179 -0
  31. package/plugins/specweave/lib/hooks/sync-living-docs.ts +57 -16
  32. package/plugins/specweave/skills/increment-planner/SKILL.md +17 -0
  33. package/plugins/specweave-ado/commands/specweave-ado-sync-spec.md +255 -0
  34. package/plugins/specweave-ado/lib/ado-spec-sync.ts +593 -0
  35. package/plugins/specweave-ado/skills/ado-sync/SKILL.md +12 -6
  36. package/plugins/specweave-github/commands/specweave-github-sync-from.md +147 -0
  37. package/plugins/specweave-github/commands/specweave-github-sync-spec.md +208 -0
  38. package/plugins/specweave-github/lib/cli-sync-increment-changes.ts +33 -0
  39. package/plugins/specweave-github/lib/github-issue-updater.ts +449 -0
  40. package/plugins/specweave-github/lib/github-spec-sync.ts +656 -0
  41. package/plugins/specweave-github/lib/github-sync-bidirectional.ts +342 -0
  42. package/plugins/specweave-github/lib/github-sync-increment-changes.ts +380 -0
  43. package/plugins/specweave-github/skills/github-sync/SKILL.md +16 -8
  44. package/plugins/specweave-jira/commands/specweave-jira-sync-spec.md +240 -0
  45. package/plugins/specweave-jira/lib/jira-spec-sync.ts +582 -0
  46. package/plugins/specweave-jira/skills/jira-sync/SKILL.md +20 -5
  47. package/src/templates/AGENTS.md.template +55 -9
  48. package/dist/cli/commands/docs-build.d.ts +0 -7
  49. package/dist/cli/commands/docs-build.d.ts.map +0 -1
  50. package/dist/cli/commands/docs-build.js +0 -31
  51. package/dist/cli/commands/docs-build.js.map +0 -1
  52. package/dist/cli/commands/docs-preview.d.ts +0 -7
  53. package/dist/cli/commands/docs-preview.d.ts.map +0 -1
  54. package/dist/cli/commands/docs-preview.js +0 -50
  55. package/dist/cli/commands/docs-preview.js.map +0 -1
  56. package/dist/cli/commands/docs-setup.d.ts +0 -7
  57. package/dist/cli/commands/docs-setup.d.ts.map +0 -1
  58. package/dist/cli/commands/docs-setup.js +0 -31
  59. package/dist/cli/commands/docs-setup.js.map +0 -1
  60. package/dist/cli/commands/plugin.d.ts +0 -54
  61. package/dist/cli/commands/plugin.d.ts.map +0 -1
  62. package/dist/core/rfc-generator.d.ts +0 -147
  63. package/dist/core/rfc-generator.d.ts.map +0 -1
  64. package/dist/core/rfc-generator.js +0 -434
  65. package/dist/core/rfc-generator.js.map +0 -1
  66. package/dist/core/schemas/plugin-manifest.schema.json +0 -253
  67. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts +0 -89
  68. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts.map +0 -1
  69. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js +0 -226
  70. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js.map +0 -1
  71. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts +0 -60
  72. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts.map +0 -1
  73. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js +0 -201
  74. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js.map +0 -1
  75. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts +0 -42
  76. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts.map +0 -1
  77. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js +0 -123
  78. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js.map +0 -1
  79. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts +0 -45
  80. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts.map +0 -1
  81. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js +0 -132
  82. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js.map +0 -1
  83. package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts +0 -33
  84. package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts.map +0 -1
  85. package/dist/plugins/specweave/lib/hooks/reflection-parser.js +0 -419
  86. package/dist/plugins/specweave/lib/hooks/reflection-parser.js.map +0 -1
  87. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts +0 -56
  88. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts.map +0 -1
  89. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js +0 -239
  90. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js.map +0 -1
  91. package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts +0 -64
  92. package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts.map +0 -1
  93. package/dist/plugins/specweave/lib/hooks/reflection-storage.js +0 -305
  94. package/dist/plugins/specweave/lib/hooks/reflection-storage.js.map +0 -1
  95. package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts +0 -43
  96. package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts.map +0 -1
  97. package/dist/plugins/specweave/lib/hooks/run-self-reflection.js +0 -203
  98. package/dist/plugins/specweave/lib/hooks/run-self-reflection.js.map +0 -1
  99. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts +0 -27
  100. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts.map +0 -1
  101. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js +0 -116
  102. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js.map +0 -1
  103. package/dist/plugins/specweave/lib/hooks/translate-file.d.ts +0 -59
  104. package/dist/plugins/specweave/lib/hooks/translate-file.d.ts.map +0 -1
  105. package/dist/plugins/specweave/lib/hooks/translate-file.js +0 -350
  106. package/dist/plugins/specweave/lib/hooks/translate-file.js.map +0 -1
  107. package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts +0 -13
  108. package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts.map +0 -1
  109. package/dist/plugins/specweave/lib/hooks/translate-living-docs.js +0 -175
  110. package/dist/plugins/specweave/lib/hooks/translate-living-docs.js.map +0 -1
  111. package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts +0 -164
  112. package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts.map +0 -1
  113. package/dist/plugins/specweave/lib/hooks/types/reflection-types.js +0 -73
  114. package/dist/plugins/specweave/lib/hooks/types/reflection-types.js.map +0 -1
  115. package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts +0 -29
  116. package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts.map +0 -1
  117. package/dist/plugins/specweave/lib/hooks/update-tasks-md.js +0 -203
  118. package/dist/plugins/specweave/lib/hooks/update-tasks-md.js.map +0 -1
  119. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts +0 -94
  120. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts.map +0 -1
  121. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js +0 -219
  122. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js.map +0 -1
  123. package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts +0 -124
  124. package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts.map +0 -1
  125. package/dist/plugins/specweave-ado/lib/ado-client-v2.js +0 -382
  126. package/dist/plugins/specweave-ado/lib/ado-client-v2.js.map +0 -1
  127. package/dist/plugins/specweave-ado/lib/ado-client.d.ts +0 -112
  128. package/dist/plugins/specweave-ado/lib/ado-client.d.ts.map +0 -1
  129. package/dist/plugins/specweave-ado/lib/ado-client.js +0 -257
  130. package/dist/plugins/specweave-ado/lib/ado-client.js.map +0 -1
  131. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts +0 -40
  132. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts.map +0 -1
  133. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js +0 -370
  134. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js.map +0 -1
  135. package/dist/plugins/specweave-ado/lib/project-selector.d.ts +0 -42
  136. package/dist/plugins/specweave-ado/lib/project-selector.d.ts.map +0 -1
  137. package/dist/plugins/specweave-ado/lib/project-selector.js +0 -211
  138. package/dist/plugins/specweave-ado/lib/project-selector.js.map +0 -1
  139. package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts +0 -54
  140. package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts.map +0 -1
  141. package/dist/plugins/specweave-github/lib/github-board-resolver.js +0 -122
  142. package/dist/plugins/specweave-github/lib/github-board-resolver.js.map +0 -1
  143. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts +0 -104
  144. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts.map +0 -1
  145. package/dist/plugins/specweave-github/lib/github-client-v2.js +0 -408
  146. package/dist/plugins/specweave-github/lib/github-client-v2.js.map +0 -1
  147. package/dist/plugins/specweave-github/lib/github-client.d.ts +0 -96
  148. package/dist/plugins/specweave-github/lib/github-client.d.ts.map +0 -1
  149. package/dist/plugins/specweave-github/lib/github-client.js +0 -299
  150. package/dist/plugins/specweave-github/lib/github-client.js.map +0 -1
  151. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts +0 -29
  152. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts.map +0 -1
  153. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js +0 -268
  154. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js.map +0 -1
  155. package/dist/plugins/specweave-github/lib/index.d.ts +0 -10
  156. package/dist/plugins/specweave-github/lib/index.d.ts.map +0 -1
  157. package/dist/plugins/specweave-github/lib/index.js +0 -10
  158. package/dist/plugins/specweave-github/lib/index.js.map +0 -1
  159. package/dist/plugins/specweave-github/lib/repo-selector.d.ts +0 -49
  160. package/dist/plugins/specweave-github/lib/repo-selector.d.ts.map +0 -1
  161. package/dist/plugins/specweave-github/lib/repo-selector.js +0 -216
  162. package/dist/plugins/specweave-github/lib/repo-selector.js.map +0 -1
  163. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts +0 -51
  164. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts.map +0 -1
  165. package/dist/plugins/specweave-github/lib/subtask-sync.js +0 -147
  166. package/dist/plugins/specweave-github/lib/subtask-sync.js.map +0 -1
  167. package/dist/plugins/specweave-github/lib/task-parser.d.ts +0 -37
  168. package/dist/plugins/specweave-github/lib/task-parser.d.ts.map +0 -1
  169. package/dist/plugins/specweave-github/lib/task-parser.js +0 -211
  170. package/dist/plugins/specweave-github/lib/task-parser.js.map +0 -1
  171. package/dist/plugins/specweave-github/lib/task-sync.d.ts +0 -51
  172. package/dist/plugins/specweave-github/lib/task-sync.d.ts.map +0 -1
  173. package/dist/plugins/specweave-github/lib/task-sync.js +0 -332
  174. package/dist/plugins/specweave-github/lib/task-sync.js.map +0 -1
  175. package/dist/plugins/specweave-github/lib/types.d.ts +0 -80
  176. package/dist/plugins/specweave-github/lib/types.d.ts.map +0 -1
  177. package/dist/plugins/specweave-github/lib/types.js +0 -5
  178. package/dist/plugins/specweave-github/lib/types.js.map +0 -1
  179. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts +0 -50
  180. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts.map +0 -1
  181. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js +0 -84
  182. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js.map +0 -1
  183. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts +0 -33
  184. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts.map +0 -1
  185. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js +0 -206
  186. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js.map +0 -1
  187. package/dist/plugins/specweave-jira/lib/project-selector.d.ts +0 -42
  188. package/dist/plugins/specweave-jira/lib/project-selector.d.ts.map +0 -1
  189. package/dist/plugins/specweave-jira/lib/project-selector.js +0 -216
  190. package/dist/plugins/specweave-jira/lib/project-selector.js.map +0 -1
  191. package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts +0 -67
  192. package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts.map +0 -1
  193. package/dist/plugins/specweave-jira/lib/reorganization-detector.js +0 -252
  194. package/dist/plugins/specweave-jira/lib/reorganization-detector.js.map +0 -1
  195. package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts +0 -29
  196. package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts.map +0 -1
  197. package/dist/plugins/specweave-jira/lib/setup-wizard.js +0 -219
  198. package/dist/plugins/specweave-jira/lib/setup-wizard.js.map +0 -1
  199. package/dist/src/adapters/adapter-base.d.ts +0 -71
  200. package/dist/src/adapters/adapter-base.d.ts.map +0 -1
  201. package/dist/src/adapters/adapter-base.js +0 -139
  202. package/dist/src/adapters/adapter-base.js.map +0 -1
  203. package/dist/src/adapters/adapter-interface.d.ts +0 -149
  204. package/dist/src/adapters/adapter-interface.d.ts.map +0 -1
  205. package/dist/src/adapters/adapter-interface.js +0 -8
  206. package/dist/src/adapters/adapter-interface.js.map +0 -1
  207. package/dist/src/adapters/adapter-loader.d.ts +0 -91
  208. package/dist/src/adapters/adapter-loader.d.ts.map +0 -1
  209. package/dist/src/adapters/adapter-loader.js +0 -238
  210. package/dist/src/adapters/adapter-loader.js.map +0 -1
  211. package/dist/src/adapters/agents-md-generator.d.ts +0 -48
  212. package/dist/src/adapters/agents-md-generator.d.ts.map +0 -1
  213. package/dist/src/adapters/agents-md-generator.js +0 -193
  214. package/dist/src/adapters/agents-md-generator.js.map +0 -1
  215. package/dist/src/adapters/claude/adapter.d.ts +0 -128
  216. package/dist/src/adapters/claude/adapter.d.ts.map +0 -1
  217. package/dist/src/adapters/claude/adapter.js +0 -415
  218. package/dist/src/adapters/claude/adapter.js.map +0 -1
  219. package/dist/src/adapters/claude-md-generator.d.ts +0 -78
  220. package/dist/src/adapters/claude-md-generator.d.ts.map +0 -1
  221. package/dist/src/adapters/claude-md-generator.js +0 -307
  222. package/dist/src/adapters/claude-md-generator.js.map +0 -1
  223. package/dist/src/adapters/codex/adapter.d.ts +0 -50
  224. package/dist/src/adapters/codex/adapter.d.ts.map +0 -1
  225. package/dist/src/adapters/codex/adapter.js +0 -316
  226. package/dist/src/adapters/codex/adapter.js.map +0 -1
  227. package/dist/src/adapters/cursor/adapter.d.ts +0 -98
  228. package/dist/src/adapters/cursor/adapter.d.ts.map +0 -1
  229. package/dist/src/adapters/cursor/adapter.js +0 -406
  230. package/dist/src/adapters/cursor/adapter.js.map +0 -1
  231. package/dist/src/adapters/doc-generator.d.ts +0 -69
  232. package/dist/src/adapters/doc-generator.d.ts.map +0 -1
  233. package/dist/src/adapters/doc-generator.js +0 -247
  234. package/dist/src/adapters/doc-generator.js.map +0 -1
  235. package/dist/src/adapters/gemini/adapter.d.ts +0 -50
  236. package/dist/src/adapters/gemini/adapter.d.ts.map +0 -1
  237. package/dist/src/adapters/gemini/adapter.js +0 -281
  238. package/dist/src/adapters/gemini/adapter.js.map +0 -1
  239. package/dist/src/adapters/generic/adapter.d.ts +0 -86
  240. package/dist/src/adapters/generic/adapter.d.ts.map +0 -1
  241. package/dist/src/adapters/generic/adapter.js +0 -338
  242. package/dist/src/adapters/generic/adapter.js.map +0 -1
  243. package/dist/src/cli/commands/abandon.d.ts +0 -13
  244. package/dist/src/cli/commands/abandon.d.ts.map +0 -1
  245. package/dist/src/cli/commands/abandon.js +0 -15
  246. package/dist/src/cli/commands/abandon.js.map +0 -1
  247. package/dist/src/cli/commands/import-docs.d.ts +0 -21
  248. package/dist/src/cli/commands/import-docs.d.ts.map +0 -1
  249. package/dist/src/cli/commands/import-docs.js +0 -146
  250. package/dist/src/cli/commands/import-docs.js.map +0 -1
  251. package/dist/src/cli/commands/init-multiproject.d.ts +0 -11
  252. package/dist/src/cli/commands/init-multiproject.d.ts.map +0 -1
  253. package/dist/src/cli/commands/init-multiproject.js +0 -202
  254. package/dist/src/cli/commands/init-multiproject.js.map +0 -1
  255. package/dist/src/cli/commands/init.d.ts +0 -9
  256. package/dist/src/cli/commands/init.d.ts.map +0 -1
  257. package/dist/src/cli/commands/init.js +0 -1205
  258. package/dist/src/cli/commands/init.js.map +0 -1
  259. package/dist/src/cli/commands/install.d.ts +0 -9
  260. package/dist/src/cli/commands/install.d.ts.map +0 -1
  261. package/dist/src/cli/commands/install.js +0 -127
  262. package/dist/src/cli/commands/install.js.map +0 -1
  263. package/dist/src/cli/commands/list.d.ts +0 -8
  264. package/dist/src/cli/commands/list.d.ts.map +0 -1
  265. package/dist/src/cli/commands/list.js +0 -119
  266. package/dist/src/cli/commands/list.js.map +0 -1
  267. package/dist/src/cli/commands/migrate-to-multiproject.d.ts +0 -37
  268. package/dist/src/cli/commands/migrate-to-multiproject.d.ts.map +0 -1
  269. package/dist/src/cli/commands/migrate-to-multiproject.js +0 -189
  270. package/dist/src/cli/commands/migrate-to-multiproject.js.map +0 -1
  271. package/dist/src/cli/commands/migrate-to-profiles.d.ts +0 -25
  272. package/dist/src/cli/commands/migrate-to-profiles.d.ts.map +0 -1
  273. package/dist/src/cli/commands/migrate-to-profiles.js +0 -350
  274. package/dist/src/cli/commands/migrate-to-profiles.js.map +0 -1
  275. package/dist/src/cli/commands/pause.d.ts +0 -13
  276. package/dist/src/cli/commands/pause.d.ts.map +0 -1
  277. package/dist/src/cli/commands/pause.js +0 -15
  278. package/dist/src/cli/commands/pause.js.map +0 -1
  279. package/dist/src/cli/commands/qa.d.ts +0 -54
  280. package/dist/src/cli/commands/qa.d.ts.map +0 -1
  281. package/dist/src/cli/commands/qa.js +0 -98
  282. package/dist/src/cli/commands/qa.js.map +0 -1
  283. package/dist/src/cli/commands/resume.d.ts +0 -12
  284. package/dist/src/cli/commands/resume.d.ts.map +0 -1
  285. package/dist/src/cli/commands/resume.js +0 -14
  286. package/dist/src/cli/commands/resume.js.map +0 -1
  287. package/dist/src/cli/commands/status.d.ts +0 -12
  288. package/dist/src/cli/commands/status.d.ts.map +0 -1
  289. package/dist/src/cli/commands/status.js +0 -23
  290. package/dist/src/cli/commands/status.js.map +0 -1
  291. package/dist/src/cli/commands/switch-project.d.ts +0 -13
  292. package/dist/src/cli/commands/switch-project.d.ts.map +0 -1
  293. package/dist/src/cli/commands/switch-project.js +0 -91
  294. package/dist/src/cli/commands/switch-project.js.map +0 -1
  295. package/dist/src/cli/commands/validate-jira.d.ts +0 -35
  296. package/dist/src/cli/commands/validate-jira.d.ts.map +0 -1
  297. package/dist/src/cli/commands/validate-jira.js +0 -112
  298. package/dist/src/cli/commands/validate-jira.js.map +0 -1
  299. package/dist/src/cli/commands/validate-plugins.d.ts +0 -41
  300. package/dist/src/cli/commands/validate-plugins.d.ts.map +0 -1
  301. package/dist/src/cli/commands/validate-plugins.js +0 -171
  302. package/dist/src/cli/commands/validate-plugins.js.map +0 -1
  303. package/dist/src/cli/helpers/issue-tracker/ado.d.ts +0 -57
  304. package/dist/src/cli/helpers/issue-tracker/ado.d.ts.map +0 -1
  305. package/dist/src/cli/helpers/issue-tracker/ado.js +0 -243
  306. package/dist/src/cli/helpers/issue-tracker/ado.js.map +0 -1
  307. package/dist/src/cli/helpers/issue-tracker/github.d.ts +0 -65
  308. package/dist/src/cli/helpers/issue-tracker/github.d.ts.map +0 -1
  309. package/dist/src/cli/helpers/issue-tracker/github.js +0 -426
  310. package/dist/src/cli/helpers/issue-tracker/github.js.map +0 -1
  311. package/dist/src/cli/helpers/issue-tracker/index.d.ts +0 -22
  312. package/dist/src/cli/helpers/issue-tracker/index.d.ts.map +0 -1
  313. package/dist/src/cli/helpers/issue-tracker/index.js +0 -314
  314. package/dist/src/cli/helpers/issue-tracker/index.js.map +0 -1
  315. package/dist/src/cli/helpers/issue-tracker/jira.d.ts +0 -61
  316. package/dist/src/cli/helpers/issue-tracker/jira.d.ts.map +0 -1
  317. package/dist/src/cli/helpers/issue-tracker/jira.js +0 -404
  318. package/dist/src/cli/helpers/issue-tracker/jira.js.map +0 -1
  319. package/dist/src/cli/helpers/issue-tracker/types.d.ts +0 -107
  320. package/dist/src/cli/helpers/issue-tracker/types.d.ts.map +0 -1
  321. package/dist/src/cli/helpers/issue-tracker/types.js +0 -16
  322. package/dist/src/cli/helpers/issue-tracker/types.js.map +0 -1
  323. package/dist/src/cli/helpers/issue-tracker/utils.d.ts +0 -112
  324. package/dist/src/cli/helpers/issue-tracker/utils.d.ts.map +0 -1
  325. package/dist/src/cli/helpers/issue-tracker/utils.js +0 -247
  326. package/dist/src/cli/helpers/issue-tracker/utils.js.map +0 -1
  327. package/dist/src/core/agent-model-manager.d.ts +0 -52
  328. package/dist/src/core/agent-model-manager.d.ts.map +0 -1
  329. package/dist/src/core/agent-model-manager.js +0 -120
  330. package/dist/src/core/agent-model-manager.js.map +0 -1
  331. package/dist/src/core/brownfield/analyzer.d.ts +0 -86
  332. package/dist/src/core/brownfield/analyzer.d.ts.map +0 -1
  333. package/dist/src/core/brownfield/analyzer.js +0 -365
  334. package/dist/src/core/brownfield/analyzer.js.map +0 -1
  335. package/dist/src/core/brownfield/importer.d.ts +0 -76
  336. package/dist/src/core/brownfield/importer.d.ts.map +0 -1
  337. package/dist/src/core/brownfield/importer.js +0 -287
  338. package/dist/src/core/brownfield/importer.js.map +0 -1
  339. package/dist/src/core/config-manager.d.ts +0 -47
  340. package/dist/src/core/config-manager.d.ts.map +0 -1
  341. package/dist/src/core/config-manager.js +0 -136
  342. package/dist/src/core/config-manager.js.map +0 -1
  343. package/dist/src/core/cost-tracker.d.ts +0 -108
  344. package/dist/src/core/cost-tracker.d.ts.map +0 -1
  345. package/dist/src/core/cost-tracker.js +0 -281
  346. package/dist/src/core/cost-tracker.js.map +0 -1
  347. package/dist/src/core/credentials-manager.d.ts +0 -107
  348. package/dist/src/core/credentials-manager.d.ts.map +0 -1
  349. package/dist/src/core/credentials-manager.js +0 -457
  350. package/dist/src/core/credentials-manager.js.map +0 -1
  351. package/dist/src/core/i18n/language-detector.d.ts +0 -29
  352. package/dist/src/core/i18n/language-detector.d.ts.map +0 -1
  353. package/dist/src/core/i18n/language-detector.js +0 -143
  354. package/dist/src/core/i18n/language-detector.js.map +0 -1
  355. package/dist/src/core/i18n/language-manager.d.ts +0 -101
  356. package/dist/src/core/i18n/language-manager.d.ts.map +0 -1
  357. package/dist/src/core/i18n/language-manager.js +0 -232
  358. package/dist/src/core/i18n/language-manager.js.map +0 -1
  359. package/dist/src/core/i18n/language-registry.d.ts +0 -44
  360. package/dist/src/core/i18n/language-registry.d.ts.map +0 -1
  361. package/dist/src/core/i18n/language-registry.js +0 -234
  362. package/dist/src/core/i18n/language-registry.js.map +0 -1
  363. package/dist/src/core/i18n/locale-manager.d.ts +0 -62
  364. package/dist/src/core/i18n/locale-manager.d.ts.map +0 -1
  365. package/dist/src/core/i18n/locale-manager.js +0 -137
  366. package/dist/src/core/i18n/locale-manager.js.map +0 -1
  367. package/dist/src/core/i18n/system-prompt-injector.d.ts +0 -33
  368. package/dist/src/core/i18n/system-prompt-injector.d.ts.map +0 -1
  369. package/dist/src/core/i18n/system-prompt-injector.js +0 -131
  370. package/dist/src/core/i18n/system-prompt-injector.js.map +0 -1
  371. package/dist/src/core/i18n/types.d.ts +0 -151
  372. package/dist/src/core/i18n/types.d.ts.map +0 -1
  373. package/dist/src/core/i18n/types.js +0 -11
  374. package/dist/src/core/i18n/types.js.map +0 -1
  375. package/dist/src/core/increment/limits.d.ts +0 -68
  376. package/dist/src/core/increment/limits.d.ts.map +0 -1
  377. package/dist/src/core/increment/limits.js +0 -224
  378. package/dist/src/core/increment/limits.js.map +0 -1
  379. package/dist/src/core/increment/metadata-manager.d.ts +0 -114
  380. package/dist/src/core/increment/metadata-manager.d.ts.map +0 -1
  381. package/dist/src/core/increment/metadata-manager.js +0 -320
  382. package/dist/src/core/increment/metadata-manager.js.map +0 -1
  383. package/dist/src/core/increment/status-commands.d.ts +0 -43
  384. package/dist/src/core/increment/status-commands.d.ts.map +0 -1
  385. package/dist/src/core/increment/status-commands.js +0 -277
  386. package/dist/src/core/increment/status-commands.js.map +0 -1
  387. package/dist/src/core/increment-status.d.ts +0 -72
  388. package/dist/src/core/increment-status.d.ts.map +0 -1
  389. package/dist/src/core/increment-status.js +0 -227
  390. package/dist/src/core/increment-status.js.map +0 -1
  391. package/dist/src/core/model-selector.d.ts +0 -57
  392. package/dist/src/core/model-selector.d.ts.map +0 -1
  393. package/dist/src/core/model-selector.js +0 -115
  394. package/dist/src/core/model-selector.js.map +0 -1
  395. package/dist/src/core/phase-detector.d.ts +0 -62
  396. package/dist/src/core/phase-detector.d.ts.map +0 -1
  397. package/dist/src/core/phase-detector.js +0 -229
  398. package/dist/src/core/phase-detector.js.map +0 -1
  399. package/dist/src/core/plugin-loader.d.ts +0 -131
  400. package/dist/src/core/plugin-loader.d.ts.map +0 -1
  401. package/dist/src/core/plugin-loader.js +0 -421
  402. package/dist/src/core/plugin-loader.js.map +0 -1
  403. package/dist/src/core/project-manager.d.ts +0 -127
  404. package/dist/src/core/project-manager.d.ts.map +0 -1
  405. package/dist/src/core/project-manager.js +0 -524
  406. package/dist/src/core/project-manager.js.map +0 -1
  407. package/dist/src/core/project-structure-detector.d.ts +0 -92
  408. package/dist/src/core/project-structure-detector.d.ts.map +0 -1
  409. package/dist/src/core/project-structure-detector.js +0 -289
  410. package/dist/src/core/project-structure-detector.js.map +0 -1
  411. package/dist/src/core/qa/qa-runner.d.ts +0 -16
  412. package/dist/src/core/qa/qa-runner.d.ts.map +0 -1
  413. package/dist/src/core/qa/qa-runner.js +0 -404
  414. package/dist/src/core/qa/qa-runner.js.map +0 -1
  415. package/dist/src/core/qa/quality-gate-decider.d.ts +0 -53
  416. package/dist/src/core/qa/quality-gate-decider.d.ts.map +0 -1
  417. package/dist/src/core/qa/quality-gate-decider.js +0 -268
  418. package/dist/src/core/qa/quality-gate-decider.js.map +0 -1
  419. package/dist/src/core/qa/risk-calculator.d.ts +0 -126
  420. package/dist/src/core/qa/risk-calculator.d.ts.map +0 -1
  421. package/dist/src/core/qa/risk-calculator.js +0 -247
  422. package/dist/src/core/qa/risk-calculator.js.map +0 -1
  423. package/dist/src/core/qa/types.d.ts +0 -315
  424. package/dist/src/core/qa/types.d.ts.map +0 -1
  425. package/dist/src/core/qa/types.js +0 -8
  426. package/dist/src/core/qa/types.js.map +0 -1
  427. package/dist/src/core/rfc-generator-v2.d.ts +0 -149
  428. package/dist/src/core/rfc-generator-v2.d.ts.map +0 -1
  429. package/dist/src/core/rfc-generator-v2.js +0 -399
  430. package/dist/src/core/rfc-generator-v2.js.map +0 -1
  431. package/dist/src/core/sync/bidirectional-engine.d.ts +0 -110
  432. package/dist/src/core/sync/bidirectional-engine.d.ts.map +0 -1
  433. package/dist/src/core/sync/bidirectional-engine.js +0 -356
  434. package/dist/src/core/sync/bidirectional-engine.js.map +0 -1
  435. package/dist/src/core/sync/folder-mapper.d.ts +0 -71
  436. package/dist/src/core/sync/folder-mapper.d.ts.map +0 -1
  437. package/dist/src/core/sync/folder-mapper.js +0 -168
  438. package/dist/src/core/sync/folder-mapper.js.map +0 -1
  439. package/dist/src/core/sync/profile-manager.d.ts +0 -72
  440. package/dist/src/core/sync/profile-manager.d.ts.map +0 -1
  441. package/dist/src/core/sync/profile-manager.js +0 -338
  442. package/dist/src/core/sync/profile-manager.js.map +0 -1
  443. package/dist/src/core/sync/profile-selector.d.ts +0 -52
  444. package/dist/src/core/sync/profile-selector.d.ts.map +0 -1
  445. package/dist/src/core/sync/profile-selector.js +0 -179
  446. package/dist/src/core/sync/profile-selector.js.map +0 -1
  447. package/dist/src/core/sync/profile-validator.d.ts +0 -52
  448. package/dist/src/core/sync/profile-validator.d.ts.map +0 -1
  449. package/dist/src/core/sync/profile-validator.js +0 -225
  450. package/dist/src/core/sync/profile-validator.js.map +0 -1
  451. package/dist/src/core/sync/project-context.d.ts +0 -81
  452. package/dist/src/core/sync/project-context.d.ts.map +0 -1
  453. package/dist/src/core/sync/project-context.js +0 -354
  454. package/dist/src/core/sync/project-context.js.map +0 -1
  455. package/dist/src/core/sync/rate-limiter.d.ts +0 -116
  456. package/dist/src/core/sync/rate-limiter.d.ts.map +0 -1
  457. package/dist/src/core/sync/rate-limiter.js +0 -308
  458. package/dist/src/core/sync/rate-limiter.js.map +0 -1
  459. package/dist/src/core/sync/time-range-selector.d.ts +0 -48
  460. package/dist/src/core/sync/time-range-selector.d.ts.map +0 -1
  461. package/dist/src/core/sync/time-range-selector.js +0 -224
  462. package/dist/src/core/sync/time-range-selector.js.map +0 -1
  463. package/dist/src/core/types/config.d.ts +0 -90
  464. package/dist/src/core/types/config.d.ts.map +0 -1
  465. package/dist/src/core/types/config.js +0 -37
  466. package/dist/src/core/types/config.js.map +0 -1
  467. package/dist/src/core/types/increment-metadata.d.ts +0 -120
  468. package/dist/src/core/types/increment-metadata.d.ts.map +0 -1
  469. package/dist/src/core/types/increment-metadata.js +0 -138
  470. package/dist/src/core/types/increment-metadata.js.map +0 -1
  471. package/dist/src/core/types/plugin.d.ts +0 -283
  472. package/dist/src/core/types/plugin.d.ts.map +0 -1
  473. package/dist/src/core/types/plugin.js +0 -49
  474. package/dist/src/core/types/plugin.js.map +0 -1
  475. package/dist/src/core/types/sync-profile.d.ts +0 -403
  476. package/dist/src/core/types/sync-profile.d.ts.map +0 -1
  477. package/dist/src/core/types/sync-profile.js +0 -55
  478. package/dist/src/core/types/sync-profile.js.map +0 -1
  479. package/dist/src/hooks/lib/types/reflection-types.d.ts +0 -125
  480. package/dist/src/hooks/lib/types/reflection-types.d.ts.map +0 -1
  481. package/dist/src/hooks/lib/types/reflection-types.js +0 -54
  482. package/dist/src/hooks/lib/types/reflection-types.js.map +0 -1
  483. package/dist/src/integrations/ado/ado-client.d.ts +0 -127
  484. package/dist/src/integrations/ado/ado-client.d.ts.map +0 -1
  485. package/dist/src/integrations/ado/ado-client.js +0 -416
  486. package/dist/src/integrations/ado/ado-client.js.map +0 -1
  487. package/dist/src/integrations/jira/jira-client.d.ts +0 -139
  488. package/dist/src/integrations/jira/jira-client.d.ts.map +0 -1
  489. package/dist/src/integrations/jira/jira-client.js +0 -386
  490. package/dist/src/integrations/jira/jira-client.js.map +0 -1
  491. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts +0 -75
  492. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts.map +0 -1
  493. package/dist/src/integrations/jira/jira-incremental-mapper.js +0 -474
  494. package/dist/src/integrations/jira/jira-incremental-mapper.js.map +0 -1
  495. package/dist/src/integrations/jira/jira-mapper.d.ts +0 -105
  496. package/dist/src/integrations/jira/jira-mapper.d.ts.map +0 -1
  497. package/dist/src/integrations/jira/jira-mapper.js +0 -494
  498. package/dist/src/integrations/jira/jira-mapper.js.map +0 -1
  499. package/dist/src/metrics/calculators/change-failure-rate.d.ts +0 -22
  500. package/dist/src/metrics/calculators/change-failure-rate.d.ts.map +0 -1
  501. package/dist/src/metrics/calculators/change-failure-rate.js +0 -70
  502. package/dist/src/metrics/calculators/change-failure-rate.js.map +0 -1
  503. package/dist/src/metrics/calculators/deployment-frequency.d.ts +0 -20
  504. package/dist/src/metrics/calculators/deployment-frequency.d.ts.map +0 -1
  505. package/dist/src/metrics/calculators/deployment-frequency.js +0 -61
  506. package/dist/src/metrics/calculators/deployment-frequency.js.map +0 -1
  507. package/dist/src/metrics/calculators/lead-time.d.ts +0 -22
  508. package/dist/src/metrics/calculators/lead-time.d.ts.map +0 -1
  509. package/dist/src/metrics/calculators/lead-time.js +0 -82
  510. package/dist/src/metrics/calculators/lead-time.js.map +0 -1
  511. package/dist/src/metrics/calculators/mttr.d.ts +0 -21
  512. package/dist/src/metrics/calculators/mttr.d.ts.map +0 -1
  513. package/dist/src/metrics/calculators/mttr.js +0 -60
  514. package/dist/src/metrics/calculators/mttr.js.map +0 -1
  515. package/dist/src/metrics/dora-calculator.d.ts +0 -28
  516. package/dist/src/metrics/dora-calculator.d.ts.map +0 -1
  517. package/dist/src/metrics/dora-calculator.js +0 -117
  518. package/dist/src/metrics/dora-calculator.js.map +0 -1
  519. package/dist/src/metrics/github-client.d.ts +0 -51
  520. package/dist/src/metrics/github-client.d.ts.map +0 -1
  521. package/dist/src/metrics/github-client.js +0 -133
  522. package/dist/src/metrics/github-client.js.map +0 -1
  523. package/dist/src/metrics/report-generator.d.ts +0 -17
  524. package/dist/src/metrics/report-generator.d.ts.map +0 -1
  525. package/dist/src/metrics/report-generator.js +0 -403
  526. package/dist/src/metrics/report-generator.js.map +0 -1
  527. package/dist/src/metrics/types.d.ts +0 -112
  528. package/dist/src/metrics/types.d.ts.map +0 -1
  529. package/dist/src/metrics/types.js +0 -10
  530. package/dist/src/metrics/types.js.map +0 -1
  531. package/dist/src/metrics/utils/percentile.d.ts +0 -25
  532. package/dist/src/metrics/utils/percentile.d.ts.map +0 -1
  533. package/dist/src/metrics/utils/percentile.js +0 -46
  534. package/dist/src/metrics/utils/percentile.js.map +0 -1
  535. package/dist/src/metrics/utils/tier-classifier.d.ts +0 -61
  536. package/dist/src/metrics/utils/tier-classifier.d.ts.map +0 -1
  537. package/dist/src/metrics/utils/tier-classifier.js +0 -100
  538. package/dist/src/metrics/utils/tier-classifier.js.map +0 -1
  539. package/dist/src/testing/test-generator.d.ts +0 -117
  540. package/dist/src/testing/test-generator.d.ts.map +0 -1
  541. package/dist/src/testing/test-generator.js +0 -370
  542. package/dist/src/testing/test-generator.js.map +0 -1
  543. package/dist/src/types/cost-tracking.d.ts +0 -43
  544. package/dist/src/types/cost-tracking.d.ts.map +0 -1
  545. package/dist/src/types/cost-tracking.js +0 -8
  546. package/dist/src/types/cost-tracking.js.map +0 -1
  547. package/dist/src/types/model-selection.d.ts +0 -53
  548. package/dist/src/types/model-selection.d.ts.map +0 -1
  549. package/dist/src/types/model-selection.js +0 -12
  550. package/dist/src/types/model-selection.js.map +0 -1
  551. package/dist/src/utils/agents-md-compiler.d.ts +0 -68
  552. package/dist/src/utils/agents-md-compiler.d.ts.map +0 -1
  553. package/dist/src/utils/agents-md-compiler.js +0 -420
  554. package/dist/src/utils/agents-md-compiler.js.map +0 -1
  555. package/dist/src/utils/auth-helpers.d.ts +0 -58
  556. package/dist/src/utils/auth-helpers.d.ts.map +0 -1
  557. package/dist/src/utils/auth-helpers.js +0 -108
  558. package/dist/src/utils/auth-helpers.js.map +0 -1
  559. package/dist/src/utils/auto-install.d.ts +0 -47
  560. package/dist/src/utils/auto-install.d.ts.map +0 -1
  561. package/dist/src/utils/auto-install.js +0 -211
  562. package/dist/src/utils/auto-install.js.map +0 -1
  563. package/dist/src/utils/claude-cli-detector.d.ts +0 -75
  564. package/dist/src/utils/claude-cli-detector.d.ts.map +0 -1
  565. package/dist/src/utils/claude-cli-detector.js +0 -285
  566. package/dist/src/utils/claude-cli-detector.js.map +0 -1
  567. package/dist/src/utils/cost-reporter.d.ts +0 -58
  568. package/dist/src/utils/cost-reporter.d.ts.map +0 -1
  569. package/dist/src/utils/cost-reporter.js +0 -224
  570. package/dist/src/utils/cost-reporter.js.map +0 -1
  571. package/dist/src/utils/docs-preview/config-generator.d.ts +0 -46
  572. package/dist/src/utils/docs-preview/config-generator.d.ts.map +0 -1
  573. package/dist/src/utils/docs-preview/config-generator.js +0 -377
  574. package/dist/src/utils/docs-preview/config-generator.js.map +0 -1
  575. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts +0 -38
  576. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts.map +0 -1
  577. package/dist/src/utils/docs-preview/docusaurus-setup.js +0 -177
  578. package/dist/src/utils/docs-preview/docusaurus-setup.js.map +0 -1
  579. package/dist/src/utils/docs-preview/index.d.ts +0 -7
  580. package/dist/src/utils/docs-preview/index.d.ts.map +0 -1
  581. package/dist/src/utils/docs-preview/index.js +0 -7
  582. package/dist/src/utils/docs-preview/index.js.map +0 -1
  583. package/dist/src/utils/docs-preview/package-installer.d.ts +0 -42
  584. package/dist/src/utils/docs-preview/package-installer.d.ts.map +0 -1
  585. package/dist/src/utils/docs-preview/package-installer.js +0 -182
  586. package/dist/src/utils/docs-preview/package-installer.js.map +0 -1
  587. package/dist/src/utils/docs-preview/server-manager.d.ts +0 -30
  588. package/dist/src/utils/docs-preview/server-manager.d.ts.map +0 -1
  589. package/dist/src/utils/docs-preview/server-manager.js +0 -212
  590. package/dist/src/utils/docs-preview/server-manager.js.map +0 -1
  591. package/dist/src/utils/docs-preview/sidebar-builder.d.ts +0 -32
  592. package/dist/src/utils/docs-preview/sidebar-builder.d.ts.map +0 -1
  593. package/dist/src/utils/docs-preview/sidebar-builder.js +0 -202
  594. package/dist/src/utils/docs-preview/sidebar-builder.js.map +0 -1
  595. package/dist/src/utils/docs-preview/types.d.ts +0 -57
  596. package/dist/src/utils/docs-preview/types.d.ts.map +0 -1
  597. package/dist/src/utils/docs-preview/types.js +0 -2
  598. package/dist/src/utils/docs-preview/types.js.map +0 -1
  599. package/dist/src/utils/env-file.d.ts +0 -88
  600. package/dist/src/utils/env-file.d.ts.map +0 -1
  601. package/dist/src/utils/env-file.js +0 -180
  602. package/dist/src/utils/env-file.js.map +0 -1
  603. package/dist/src/utils/env-multi-project-parser.d.ts +0 -220
  604. package/dist/src/utils/env-multi-project-parser.d.ts.map +0 -1
  605. package/dist/src/utils/env-multi-project-parser.js +0 -403
  606. package/dist/src/utils/env-multi-project-parser.js.map +0 -1
  607. package/dist/src/utils/esm-helpers.d.ts +0 -50
  608. package/dist/src/utils/esm-helpers.d.ts.map +0 -1
  609. package/dist/src/utils/esm-helpers.js +0 -57
  610. package/dist/src/utils/esm-helpers.js.map +0 -1
  611. package/dist/src/utils/execFileNoThrow.d.ts +0 -99
  612. package/dist/src/utils/execFileNoThrow.d.ts.map +0 -1
  613. package/dist/src/utils/execFileNoThrow.js +0 -137
  614. package/dist/src/utils/execFileNoThrow.js.map +0 -1
  615. package/dist/src/utils/external-resource-validator.d.ts +0 -102
  616. package/dist/src/utils/external-resource-validator.d.ts.map +0 -1
  617. package/dist/src/utils/external-resource-validator.js +0 -400
  618. package/dist/src/utils/external-resource-validator.js.map +0 -1
  619. package/dist/src/utils/generate-skills-index.d.ts +0 -24
  620. package/dist/src/utils/generate-skills-index.d.ts.map +0 -1
  621. package/dist/src/utils/generate-skills-index.js +0 -410
  622. package/dist/src/utils/generate-skills-index.js.map +0 -1
  623. package/dist/src/utils/model-selection.d.ts +0 -75
  624. package/dist/src/utils/model-selection.d.ts.map +0 -1
  625. package/dist/src/utils/model-selection.js +0 -204
  626. package/dist/src/utils/model-selection.js.map +0 -1
  627. package/dist/src/utils/plugin-validator.d.ts +0 -161
  628. package/dist/src/utils/plugin-validator.d.ts.map +0 -1
  629. package/dist/src/utils/plugin-validator.js +0 -558
  630. package/dist/src/utils/plugin-validator.js.map +0 -1
  631. package/dist/src/utils/pricing-constants.d.ts +0 -70
  632. package/dist/src/utils/pricing-constants.d.ts.map +0 -1
  633. package/dist/src/utils/pricing-constants.js +0 -71
  634. package/dist/src/utils/pricing-constants.js.map +0 -1
  635. package/dist/src/utils/project-detection.d.ts +0 -141
  636. package/dist/src/utils/project-detection.d.ts.map +0 -1
  637. package/dist/src/utils/project-detection.js +0 -321
  638. package/dist/src/utils/project-detection.js.map +0 -1
  639. package/dist/src/utils/string-utils.d.ts +0 -40
  640. package/dist/src/utils/string-utils.d.ts.map +0 -1
  641. package/dist/src/utils/string-utils.js +0 -58
  642. package/dist/src/utils/string-utils.js.map +0 -1
  643. package/dist/src/utils/translation.d.ts +0 -187
  644. package/dist/src/utils/translation.d.ts.map +0 -1
  645. package/dist/src/utils/translation.js +0 -414
  646. package/dist/src/utils/translation.js.map +0 -1
  647. package/dist/utils/docs-preview.bak/config-generator.d.ts +0 -46
  648. package/dist/utils/docs-preview.bak/config-generator.d.ts.map +0 -1
  649. package/dist/utils/docs-preview.bak/config-generator.js +0 -377
  650. package/dist/utils/docs-preview.bak/config-generator.js.map +0 -1
  651. package/dist/utils/docs-preview.bak/package-installer.d.ts +0 -42
  652. package/dist/utils/docs-preview.bak/package-installer.d.ts.map +0 -1
  653. package/dist/utils/docs-preview.bak/package-installer.js +0 -182
  654. package/dist/utils/docs-preview.bak/package-installer.js.map +0 -1
  655. package/dist/utils/docs-preview.bak/server-manager.d.ts +0 -30
  656. package/dist/utils/docs-preview.bak/server-manager.d.ts.map +0 -1
  657. package/dist/utils/docs-preview.bak/server-manager.js +0 -207
  658. package/dist/utils/docs-preview.bak/server-manager.js.map +0 -1
  659. package/dist/utils/docs-preview.bak/sidebar-builder.d.ts +0 -31
  660. package/dist/utils/docs-preview.bak/sidebar-builder.d.ts.map +0 -1
  661. package/dist/utils/docs-preview.bak/sidebar-builder.js +0 -202
  662. package/dist/utils/docs-preview.bak/sidebar-builder.js.map +0 -1
  663. package/dist/utils/docs-preview.bak/types.d.ts +0 -60
  664. package/dist/utils/docs-preview.bak/types.d.ts.map +0 -1
  665. package/dist/utils/docs-preview.bak/types.js +0 -5
  666. package/dist/utils/docs-preview.bak/types.js.map +0 -1
  667. package/dist/utils/plugin-detection.d.ts +0 -50
  668. package/dist/utils/plugin-detection.d.ts.map +0 -1
  669. package/dist/utils/secrets-loader.d.ts +0 -88
  670. package/dist/utils/secrets-loader.d.ts.map +0 -1
  671. package/dist/utils/secrets-loader.js +0 -271
  672. package/dist/utils/secrets-loader.js.map +0 -1
  673. package/src/templates/environments/minimal/.env.production +0 -16
  674. package/src/templates/environments/standard/.env.production +0 -30
@@ -1,299 +0,0 @@
1
- /**
2
- * GitHub CLI wrapper for SpecWeave
3
- * Uses `gh` command for GitHub API operations
4
- */
5
- import { execSync } from 'child_process';
6
- export class GitHubClient {
7
- constructor(repo) {
8
- // Auto-detect repo from git remote if not provided
9
- this.repo = repo || this.detectRepo();
10
- }
11
- /**
12
- * Auto-detect GitHub repository from git remote
13
- */
14
- detectRepo() {
15
- try {
16
- const remote = execSync('git remote get-url origin', { encoding: 'utf-8' }).trim();
17
- const match = remote.match(/github\.com[:/](.+\/.+?)(?:\.git)?$/);
18
- if (!match) {
19
- throw new Error('Could not detect GitHub repository from git remote');
20
- }
21
- return match[1];
22
- }
23
- catch (error) {
24
- throw new Error('Not a git repository or no GitHub remote configured');
25
- }
26
- }
27
- /**
28
- * Check if GitHub CLI is installed and authenticated
29
- */
30
- static checkGitHubCLI() {
31
- try {
32
- execSync('gh --version', { encoding: 'utf-8', stdio: 'pipe' });
33
- }
34
- catch {
35
- return { installed: false, authenticated: false, error: 'GitHub CLI (gh) not installed' };
36
- }
37
- try {
38
- execSync('gh auth status', { encoding: 'utf-8', stdio: 'pipe' });
39
- return { installed: true, authenticated: true };
40
- }
41
- catch {
42
- return { installed: true, authenticated: false, error: 'GitHub CLI not authenticated. Run: gh auth login' };
43
- }
44
- }
45
- /**
46
- * Create or get existing milestone
47
- *
48
- * @param title Milestone title
49
- * @param description Milestone description
50
- * @param daysFromNow Days until milestone due (default: 2 days - SpecWeave AI velocity)
51
- */
52
- async createOrGetMilestone(title, description, daysFromNow = 2) {
53
- // Check if milestone already exists
54
- const existing = await this.getMilestoneByTitle(title);
55
- if (existing) {
56
- return existing;
57
- }
58
- // Calculate due date (SpecWeave default: 1-2 days with AI assistance)
59
- const dueDate = new Date();
60
- dueDate.setDate(dueDate.getDate() + daysFromNow);
61
- const dueDateISO = dueDate.toISOString();
62
- // Create new milestone with due date
63
- const cmd = `gh api repos/${this.repo}/milestones -f title="${title}" ${description ? `-f description="${description}"` : ''} -f due_on="${dueDateISO}" --jq '{number: .number, title: .title, description: .description, state: .state, due_on: .due_on}'`;
64
- try {
65
- const output = execSync(cmd, { encoding: 'utf-8' });
66
- return JSON.parse(output);
67
- }
68
- catch (error) {
69
- throw new Error(`Failed to create milestone: ${error.message}`);
70
- }
71
- }
72
- /**
73
- * Get milestone by title
74
- */
75
- async getMilestoneByTitle(title) {
76
- try {
77
- const cmd = `gh api repos/${this.repo}/milestones --jq '.[] | select(.title=="${title}") | {number: .number, title: .title, description: .description, state: .state}'`;
78
- const output = execSync(cmd, { encoding: 'utf-8' }).trim();
79
- return output ? JSON.parse(output) : null;
80
- }
81
- catch {
82
- return null;
83
- }
84
- }
85
- /**
86
- * Create epic issue (increment-level)
87
- */
88
- async createEpicIssue(title, body, milestone, labels = []) {
89
- const labelArgs = labels.map(l => `-l "${l}"`).join(' ');
90
- const milestoneArg = milestone ? `-m "${milestone}"` : '';
91
- // Create issue (returns URL)
92
- const createCmd = `gh issue create --repo ${this.repo} --title "${this.escapeQuotes(title)}" --body "${this.escapeQuotes(body)}" ${labelArgs} ${milestoneArg}`;
93
- try {
94
- const issueUrl = execSync(createCmd, { encoding: 'utf-8' }).trim();
95
- // Extract issue number from URL (e.g., https://github.com/owner/repo/issues/123)
96
- const issueNumber = parseInt(issueUrl.split('/').pop() || '0', 10);
97
- if (!issueNumber) {
98
- throw new Error('Failed to extract issue number from URL: ' + issueUrl);
99
- }
100
- // Fetch issue details
101
- const viewCmd = `gh issue view ${issueNumber} --repo ${this.repo} --json number,title,body,state,url,labels,milestone`;
102
- const output = execSync(viewCmd, { encoding: 'utf-8' });
103
- const issue = JSON.parse(output);
104
- return {
105
- ...issue,
106
- html_url: issue.url,
107
- labels: issue.labels?.map((l) => l.name) || []
108
- };
109
- }
110
- catch (error) {
111
- throw new Error(`Failed to create epic issue: ${error.message}`);
112
- }
113
- }
114
- /**
115
- * Create task issue (linked to epic)
116
- */
117
- async createTaskIssue(title, body, epicNumber, milestone, labels = []) {
118
- // Add epic reference to body
119
- const enhancedBody = `**Part of**: #${epicNumber}\n\n${body}`;
120
- const labelArgs = labels.map(l => `-l "${l}"`).join(' ');
121
- const milestoneArg = milestone ? `-m "${milestone}"` : '';
122
- // Create issue (returns URL)
123
- const createCmd = `gh issue create --repo ${this.repo} --title "${this.escapeQuotes(title)}" --body "${this.escapeQuotes(enhancedBody)}" ${labelArgs} ${milestoneArg}`;
124
- try {
125
- const issueUrl = execSync(createCmd, { encoding: 'utf-8' }).trim();
126
- // Extract issue number from URL
127
- const issueNumber = parseInt(issueUrl.split('/').pop() || '0', 10);
128
- if (!issueNumber) {
129
- throw new Error('Failed to extract issue number from URL: ' + issueUrl);
130
- }
131
- // Fetch issue details
132
- const viewCmd = `gh issue view ${issueNumber} --repo ${this.repo} --json number,title,body,state,url,labels,milestone`;
133
- const output = execSync(viewCmd, { encoding: 'utf-8' });
134
- const issue = JSON.parse(output);
135
- return {
136
- ...issue,
137
- html_url: issue.url,
138
- labels: issue.labels?.map((l) => l.name) || []
139
- };
140
- }
141
- catch (error) {
142
- throw new Error(`Failed to create task issue: ${error.message}`);
143
- }
144
- }
145
- /**
146
- * Update issue body
147
- */
148
- async updateIssueBody(issueNumber, newBody) {
149
- const cmd = `gh issue edit ${issueNumber} --repo ${this.repo} --body "${this.escapeQuotes(newBody)}"`;
150
- try {
151
- execSync(cmd, { encoding: 'utf-8', stdio: 'pipe' });
152
- }
153
- catch (error) {
154
- throw new Error(`Failed to update issue #${issueNumber}: ${error.message}`);
155
- }
156
- }
157
- /**
158
- * Get issue details
159
- */
160
- async getIssue(issueNumber) {
161
- const cmd = `gh issue view ${issueNumber} --repo ${this.repo} --json number,title,body,state,html_url,labels,milestone`;
162
- try {
163
- const output = execSync(cmd, { encoding: 'utf-8' });
164
- const issue = JSON.parse(output);
165
- return {
166
- ...issue,
167
- labels: issue.labels?.map((l) => l.name) || []
168
- };
169
- }
170
- catch (error) {
171
- throw new Error(`Failed to get issue #${issueNumber}: ${error.message}`);
172
- }
173
- }
174
- /**
175
- * Close issue
176
- */
177
- async closeIssue(issueNumber, comment) {
178
- if (comment) {
179
- await this.addComment(issueNumber, comment);
180
- }
181
- const cmd = `gh issue close ${issueNumber} --repo ${this.repo}`;
182
- try {
183
- execSync(cmd, { encoding: 'utf-8', stdio: 'pipe' });
184
- }
185
- catch (error) {
186
- throw new Error(`Failed to close issue #${issueNumber}: ${error.message}`);
187
- }
188
- }
189
- /**
190
- * Add comment to issue
191
- */
192
- async addComment(issueNumber, comment) {
193
- const cmd = `gh issue comment ${issueNumber} --repo ${this.repo} --body "${this.escapeQuotes(comment)}"`;
194
- try {
195
- execSync(cmd, { encoding: 'utf-8', stdio: 'pipe' });
196
- }
197
- catch (error) {
198
- throw new Error(`Failed to add comment to issue #${issueNumber}: ${error.message}`);
199
- }
200
- }
201
- /**
202
- * Add labels to issue
203
- */
204
- async addLabels(issueNumber, labels) {
205
- if (labels.length === 0)
206
- return;
207
- const labelArgs = labels.map(l => `"${l}"`).join(',');
208
- const cmd = `gh issue edit ${issueNumber} --repo ${this.repo} --add-label ${labelArgs}`;
209
- try {
210
- execSync(cmd, { encoding: 'utf-8', stdio: 'pipe' });
211
- }
212
- catch (error) {
213
- throw new Error(`Failed to add labels to issue #${issueNumber}: ${error.message}`);
214
- }
215
- }
216
- /**
217
- * Check rate limit status
218
- */
219
- async checkRateLimit() {
220
- const cmd = `gh api rate_limit --jq '.rate | {remaining: .remaining, limit: .limit, reset: .reset}'`;
221
- try {
222
- const output = execSync(cmd, { encoding: 'utf-8' });
223
- const data = JSON.parse(output);
224
- return {
225
- ...data,
226
- reset: new Date(data.reset * 1000)
227
- };
228
- }
229
- catch (error) {
230
- throw new Error(`Failed to check rate limit: ${error.message}`);
231
- }
232
- }
233
- /**
234
- * Escape quotes in strings for shell commands
235
- */
236
- escapeQuotes(str) {
237
- return str
238
- .replace(/\\/g, '\\\\') // Escape backslashes first
239
- .replace(/"/g, '\\"') // Escape double quotes
240
- .replace(/`/g, '\\`') // Escape backticks
241
- .replace(/\$/g, '\\$'); // Escape dollar signs
242
- }
243
- /**
244
- * Batch create issues with rate limit handling
245
- */
246
- async batchCreateIssues(issues, milestone, epicNumber, options = {}) {
247
- const { batchSize = 10, delayMs = 6000 } = options; // 10 issues per minute by default
248
- const createdIssues = [];
249
- for (let i = 0; i < issues.length; i += batchSize) {
250
- const batch = issues.slice(i, i + batchSize);
251
- console.log(`Creating issues ${i + 1}-${Math.min(i + batchSize, issues.length)} of ${issues.length}...`);
252
- for (const issue of batch) {
253
- try {
254
- const created = epicNumber
255
- ? await this.createTaskIssue(issue.title, issue.body, epicNumber, milestone, issue.labels)
256
- : await this.createEpicIssue(issue.title, issue.body, milestone, issue.labels);
257
- createdIssues.push(created);
258
- }
259
- catch (error) {
260
- console.error(`Failed to create issue "${issue.title}":`, error.message);
261
- }
262
- }
263
- // Delay between batches (except after last batch)
264
- if (i + batchSize < issues.length) {
265
- console.log(`Waiting ${delayMs / 1000}s to avoid rate limits...`);
266
- await this.sleep(delayMs);
267
- }
268
- }
269
- return createdIssues;
270
- }
271
- sleep(ms) {
272
- return new Promise(resolve => setTimeout(resolve, ms));
273
- }
274
- /**
275
- * Get all repositories accessible to the user
276
- * @param owner Optional: filter by specific owner/org (e.g., 'octocat', 'my-org')
277
- * @param limit Maximum number of repos to fetch (default: 100, max: 1000)
278
- */
279
- static async getRepositories(owner, limit = 100) {
280
- try {
281
- const ownerFilter = owner ? `${owner}/` : '';
282
- const cmd = `gh repo list ${ownerFilter} --limit ${limit} --json owner,name,nameWithOwner`;
283
- const output = execSync(cmd, { encoding: 'utf-8' }).trim();
284
- if (!output) {
285
- return [];
286
- }
287
- const repos = JSON.parse(output);
288
- return repos.map((repo) => ({
289
- owner: repo.owner?.login || '',
290
- name: repo.name,
291
- fullName: repo.nameWithOwner
292
- }));
293
- }
294
- catch (error) {
295
- throw new Error(`Failed to fetch repositories: ${error.message}`);
296
- }
297
- }
298
- }
299
- //# sourceMappingURL=github-client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-client.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/github-client.ts"],"names":[],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- /**
2
- * GitHub Hierarchical Sync Implementation
3
- *
4
- * Supports three sync strategies:
5
- * 1. Simple: One repository, all issues (backward compatible)
6
- * 2. Filtered: Multiple repositories + project boards + filters
7
- * 3. Custom: Raw GitHub search query
8
- */
9
- import { SyncProfile, SyncContainer } from '../../../src/core/types/sync-profile.js';
10
- import { GitHubIssue } from './types.js';
11
- /**
12
- * Build hierarchical GitHub search query from containers
13
- *
14
- * Example output:
15
- * repo:owner/repo-a repo:owner/repo-b is:issue label:feature milestone:"v2.0" created:2024-01-01..2024-12-31
16
- *
17
- * @param containers Array of containers (repos) with filters
18
- * @returns GitHub search query string
19
- */
20
- export declare function buildHierarchicalSearchQuery(containers: SyncContainer[]): Promise<string>;
21
- /**
22
- * Fetch issues hierarchically based on sync strategy
23
- *
24
- * @param profile Sync profile with strategy
25
- * @param timeRange Time range preset
26
- * @returns Array of GitHub issues
27
- */
28
- export declare function fetchIssuesHierarchical(profile: SyncProfile, timeRange?: string): Promise<GitHubIssue[]>;
29
- //# sourceMappingURL=github-hierarchical-sync.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-hierarchical-sync.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/github-hierarchical-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,WAAW,EACX,aAAa,EAMd,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAIzC;;;;;;;;GAQG;AACH,wBAAsB,4BAA4B,CAChD,UAAU,EAAE,aAAa,EAAE,GAC1B,OAAO,CAAC,MAAM,CAAC,CA+BjB;AAiHD;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,WAAW,EACpB,SAAS,GAAE,MAAa,GACvB,OAAO,CAAC,WAAW,EAAE,CAAC,CAqBxB"}
@@ -1,268 +0,0 @@
1
- /**
2
- * GitHub Hierarchical Sync Implementation
3
- *
4
- * Supports three sync strategies:
5
- * 1. Simple: One repository, all issues (backward compatible)
6
- * 2. Filtered: Multiple repositories + project boards + filters
7
- * 3. Custom: Raw GitHub search query
8
- */
9
- import { isSimpleStrategy, isFilteredStrategy, isCustomStrategy, } from '../../../src/core/types/sync-profile.js';
10
- import { execFileNoThrow } from '../../../src/utils/execFileNoThrow.js';
11
- /**
12
- * Build hierarchical GitHub search query from containers
13
- *
14
- * Example output:
15
- * repo:owner/repo-a repo:owner/repo-b is:issue label:feature milestone:"v2.0" created:2024-01-01..2024-12-31
16
- *
17
- * @param containers Array of containers (repos) with filters
18
- * @returns GitHub search query string
19
- */
20
- export async function buildHierarchicalSearchQuery(containers) {
21
- const parts = [];
22
- // Add repo clauses
23
- for (const container of containers) {
24
- parts.push(`repo:${container.id}`);
25
- // Note: GitHub search doesn't support filtering by project board directly
26
- // Project boards would need to be handled via GraphQL API or issue filtering
27
- if (container.subOrganizations && container.subOrganizations.length > 0) {
28
- console.warn(`⚠️ GitHub search doesn't support project board filtering directly.`);
29
- console.warn(` Boards will be ignored: ${container.subOrganizations.join(', ')}`);
30
- }
31
- }
32
- // Add is:issue filter
33
- parts.push('is:issue');
34
- // Add filters from first container (apply to all repos)
35
- // Note: GitHub search applies filters globally, not per-repo
36
- const filters = containers[0]?.filters;
37
- if (filters) {
38
- const filterClauses = buildFilterClauses(filters);
39
- parts.push(...filterClauses);
40
- }
41
- return parts.join(' ');
42
- }
43
- /**
44
- * Build filter clauses from container filters
45
- *
46
- * @param filters Container filters
47
- * @returns Array of GitHub search filter clauses
48
- */
49
- function buildFilterClauses(filters) {
50
- const clauses = [];
51
- // Include labels
52
- if (filters.includeLabels && filters.includeLabels.length > 0) {
53
- for (const label of filters.includeLabels) {
54
- clauses.push(`label:"${label}"`);
55
- }
56
- }
57
- // Exclude labels (GitHub uses -label:)
58
- if (filters.excludeLabels && filters.excludeLabels.length > 0) {
59
- for (const label of filters.excludeLabels) {
60
- clauses.push(`-label:"${label}"`);
61
- }
62
- }
63
- // Assignees
64
- if (filters.assignees && filters.assignees.length > 0) {
65
- // GitHub supports multiple assignees with OR logic
66
- const assigneeQuery = filters.assignees
67
- .map((a) => `assignee:"${a}"`)
68
- .join(' ');
69
- clauses.push(assigneeQuery);
70
- }
71
- // Status (GitHub uses is:open, is:closed)
72
- if (filters.statusCategories && filters.statusCategories.length > 0) {
73
- const statuses = filters.statusCategories.map((s) => s.toLowerCase());
74
- if (statuses.includes('open') || statuses.includes('to do') || statuses.includes('in progress')) {
75
- clauses.push('is:open');
76
- }
77
- else if (statuses.includes('closed') || statuses.includes('done')) {
78
- clauses.push('is:closed');
79
- }
80
- }
81
- // Milestones (GitHub-specific)
82
- if (filters.milestones && filters.milestones.length > 0) {
83
- for (const milestone of filters.milestones) {
84
- clauses.push(`milestone:"${milestone}"`);
85
- }
86
- }
87
- return clauses;
88
- }
89
- /**
90
- * Add time range filter to GitHub search query
91
- *
92
- * @param query Base search query
93
- * @param timeRange Time range preset (1W, 1M, 3M, 6M, ALL)
94
- * @returns Search query with time range filter
95
- */
96
- function addTimeRangeFilter(query, timeRange) {
97
- if (timeRange === 'ALL') {
98
- return query; // No time filter
99
- }
100
- const { since, until } = calculateTimeRange(timeRange);
101
- return `${query} created:${since}..${until}`;
102
- }
103
- /**
104
- * Calculate date range from time range preset
105
- */
106
- function calculateTimeRange(timeRange) {
107
- const now = new Date();
108
- const since = new Date(now);
109
- switch (timeRange) {
110
- case '1W':
111
- since.setDate(now.getDate() - 7);
112
- break;
113
- case '2W':
114
- since.setDate(now.getDate() - 14);
115
- break;
116
- case '1M':
117
- since.setMonth(now.getMonth() - 1);
118
- break;
119
- case '3M':
120
- since.setMonth(now.getMonth() - 3);
121
- break;
122
- case '6M':
123
- since.setMonth(now.getMonth() - 6);
124
- break;
125
- case '1Y':
126
- since.setFullYear(now.getFullYear() - 1);
127
- break;
128
- case 'ALL':
129
- return {
130
- since: '1970-01-01',
131
- until: now.toISOString().split('T')[0],
132
- };
133
- }
134
- return {
135
- since: since.toISOString().split('T')[0],
136
- until: now.toISOString().split('T')[0],
137
- };
138
- }
139
- /**
140
- * Fetch issues hierarchically based on sync strategy
141
- *
142
- * @param profile Sync profile with strategy
143
- * @param timeRange Time range preset
144
- * @returns Array of GitHub issues
145
- */
146
- export async function fetchIssuesHierarchical(profile, timeRange = '1M') {
147
- const config = profile.config;
148
- // Strategy 1: SIMPLE (backward compatible)
149
- if (isSimpleStrategy(profile)) {
150
- return fetchIssuesSimple(config, timeRange);
151
- }
152
- // Strategy 2: CUSTOM (raw search query)
153
- if (isCustomStrategy(profile)) {
154
- return fetchIssuesCustom(config, timeRange);
155
- }
156
- // Strategy 3: FILTERED (hierarchical)
157
- if (isFilteredStrategy(profile)) {
158
- return fetchIssuesFiltered(config, timeRange);
159
- }
160
- // Default to simple if strategy not recognized
161
- console.warn('⚠️ Unknown strategy, defaulting to simple');
162
- return fetchIssuesSimple(config, timeRange);
163
- }
164
- /**
165
- * Fetch issues using SIMPLE strategy (one repo, all issues)
166
- *
167
- * @param config GitHub configuration
168
- * @param timeRange Time range preset
169
- * @returns Array of GitHub issues
170
- */
171
- async function fetchIssuesSimple(config, timeRange) {
172
- const owner = config.owner;
173
- const repo = config.repo;
174
- if (!owner || !repo) {
175
- throw new Error('Simple strategy requires owner and repo in config');
176
- }
177
- let query = `repo:${owner}/${repo} is:issue`;
178
- // Add time range
179
- query = addTimeRangeFilter(query, timeRange);
180
- console.log('🔍 Fetching issues (SIMPLE strategy):', query);
181
- return executeSearch(query);
182
- }
183
- /**
184
- * Fetch issues using CUSTOM strategy (raw search query)
185
- *
186
- * @param config GitHub configuration
187
- * @param timeRange Time range preset
188
- * @returns Array of GitHub issues
189
- */
190
- async function fetchIssuesCustom(config, timeRange) {
191
- const customQuery = config.customQuery;
192
- if (!customQuery) {
193
- throw new Error('Custom strategy requires customQuery in config');
194
- }
195
- // Add time range to custom query
196
- const query = addTimeRangeFilter(customQuery, timeRange);
197
- console.log('🔍 Fetching issues (CUSTOM strategy):', query);
198
- return executeSearch(query);
199
- }
200
- /**
201
- * Fetch issues using FILTERED strategy (multiple repos + filters)
202
- *
203
- * @param config GitHub configuration
204
- * @param timeRange Time range preset
205
- * @returns Array of GitHub issues
206
- */
207
- async function fetchIssuesFiltered(config, timeRange) {
208
- const containers = config.containers;
209
- if (!containers || containers.length === 0) {
210
- throw new Error('Filtered strategy requires containers array in config');
211
- }
212
- // Build hierarchical search query
213
- const baseQuery = await buildHierarchicalSearchQuery(containers);
214
- // Add time range
215
- const query = addTimeRangeFilter(baseQuery, timeRange);
216
- console.log('🔍 Fetching issues (FILTERED strategy):', query);
217
- return executeSearch(query);
218
- }
219
- /**
220
- * Execute GitHub search and return issues
221
- *
222
- * @param query GitHub search query
223
- * @returns Array of GitHub issues
224
- */
225
- async function executeSearch(query) {
226
- const result = await execFileNoThrow('gh', [
227
- 'search',
228
- 'issues',
229
- query,
230
- '--json',
231
- 'number,title,body,state,url,labels,milestone,repository',
232
- '--limit',
233
- '1000', // Max results
234
- ]);
235
- if (result.status !== 0) {
236
- throw new Error(`Failed to search issues: ${result.stderr || result.stdout}`);
237
- }
238
- if (!result.stdout.trim()) {
239
- return [];
240
- }
241
- const issues = JSON.parse(result.stdout);
242
- // Transform to GitHubIssue format
243
- return issues.map((issue) => ({
244
- number: issue.number,
245
- title: issue.title,
246
- body: issue.body || '',
247
- state: issue.state,
248
- html_url: issue.url,
249
- url: issue.url,
250
- labels: issue.labels?.map((l) => l.name) || [],
251
- milestone: issue.milestone
252
- ? {
253
- number: issue.milestone.number,
254
- title: issue.milestone.title,
255
- description: issue.milestone.description,
256
- state: issue.milestone.state,
257
- }
258
- : undefined,
259
- repository: issue.repository
260
- ? {
261
- owner: issue.repository.owner.login,
262
- name: issue.repository.name,
263
- full_name: issue.repository.full_name,
264
- }
265
- : undefined,
266
- }));
267
- }
268
- //# sourceMappingURL=github-hierarchical-sync.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-hierarchical-sync.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/github-hierarchical-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAIL,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,GAEjB,MAAM,yCAAyC,CAAC;AAGjD,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,UAA2B;IAE3B,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,mBAAmB;IACnB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,QAAQ,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;QAEnC,0EAA0E;QAC1E,6EAA6E;QAC7E,IAAI,SAAS,CAAC,gBAAgB,IAAI,SAAS,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxE,OAAO,CAAC,IAAI,CACV,qEAAqE,CACtE,CAAC;YACF,OAAO,CAAC,IAAI,CACV,8BAA8B,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACtE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAEvB,wDAAwD;IACxD,6DAA6D;IAC7D,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;IACvC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB,CAAC,OAAY;IACtC,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,iBAAiB;IACjB,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9D,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1C,OAAO,CAAC,IAAI,CAAC,UAAU,KAAK,GAAG,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,uCAAuC;IACvC,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9D,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1C,OAAO,CAAC,IAAI,CAAC,WAAW,KAAK,GAAG,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,YAAY;IACZ,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtD,mDAAmD;QACnD,MAAM,aAAa,GAAG,OAAO,CAAC,SAAS;aACpC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC;aACrC,IAAI,CAAC,GAAG,CAAC,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC9B,CAAC;IAED,0CAA0C;IAC1C,IAAI,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpE,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9E,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YAChG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;aAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACpE,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC,cAAc,SAAS,GAAG,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,kBAAkB,CAAC,KAAa,EAAE,SAAiB;IAC1D,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC,CAAC,iBAAiB;IACjC,CAAC;IAED,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,kBAAkB,CAAC,SAA4B,CAAC,CAAC;IAE1E,OAAO,GAAG,KAAK,YAAY,KAAK,KAAK,KAAK,EAAE,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,SAA0B;IAIpD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5B,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,IAAI;YACP,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;YACjC,MAAM;QACR,KAAK,IAAI;YACP,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;YAClC,MAAM;QACR,KAAK,IAAI;YACP,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,IAAI;YACP,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,IAAI;YACP,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,IAAI;YACP,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;YACzC,MAAM;QACR,KAAK,KAAK;YACR,OAAO;gBACL,KAAK,EAAE,YAAY;gBACnB,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aACvC,CAAC;IACN,CAAC;IAED,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACxC,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KACvC,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAoB,EACpB,YAAoB,IAAI;IAExB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAsB,CAAC;IAE9C,2CAA2C;IAC3C,IAAI,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,OAAO,iBAAiB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED,wCAAwC;IACxC,IAAI,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,OAAO,iBAAiB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED,sCAAsC;IACtC,IAAI,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;QAChC,OAAO,mBAAmB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAChD,CAAC;IAED,+CAA+C;IAC/C,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;IAC3D,OAAO,iBAAiB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,iBAAiB,CAC9B,MAAoB,EACpB,SAAiB;IAEjB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IAEzB,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,KAAK,GAAG,QAAQ,KAAK,IAAI,IAAI,WAAW,CAAC;IAE7C,iBAAiB;IACjB,KAAK,GAAG,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAE7C,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;IAE5D,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,iBAAiB,CAC9B,MAAoB,EACpB,SAAiB;IAEjB,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IAEvC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,iCAAiC;IACjC,MAAM,KAAK,GAAG,kBAAkB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAEzD,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;IAE5D,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,mBAAmB,CAChC,MAAoB,EACpB,SAAiB;IAEjB,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IAErC,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAED,kCAAkC;IAClC,MAAM,SAAS,GAAG,MAAM,4BAA4B,CAAC,UAAU,CAAC,CAAC;IAEjE,iBAAiB;IACjB,MAAM,KAAK,GAAG,kBAAkB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAEvD,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;IAE9D,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,aAAa,CAAC,KAAa;IACxC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE;QACzC,QAAQ;QACR,QAAQ;QACR,KAAK;QACL,QAAQ;QACR,yDAAyD;QACzD,SAAS;QACT,MAAM,EAAE,cAAc;KACvB,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,4BAA4B,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEzC,kCAAkC;IAClC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC;QACjC,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;QACtB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,QAAQ,EAAE,KAAK,CAAC,GAAG;QACnB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;QACnD,SAAS,EAAE,KAAK,CAAC,SAAS;YACxB,CAAC,CAAC;gBACE,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM;gBAC9B,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK;gBAC5B,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW;gBACxC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK;aAC7B;YACH,CAAC,CAAC,SAAS;QACb,UAAU,EAAE,KAAK,CAAC,UAAU;YAC1B,CAAC,CAAC;gBACE,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK;gBACnC,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI;gBAC3B,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,SAAS;aACtC;YACH,CAAC,CAAC,SAAS;KACd,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -1,10 +0,0 @@
1
- /**
2
- * SpecWeave GitHub Plugin - Library Entry Point
3
- * Task-level GitHub synchronization
4
- */
5
- export { GitHubClient } from './github-client';
6
- export { TaskParser } from './task-parser';
7
- export { TaskSync } from './task-sync';
8
- export { SubtaskSync } from './subtask-sync';
9
- export * from './types';
10
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,cAAc,SAAS,CAAC"}
@@ -1,10 +0,0 @@
1
- /**
2
- * SpecWeave GitHub Plugin - Library Entry Point
3
- * Task-level GitHub synchronization
4
- */
5
- export { GitHubClient } from './github-client';
6
- export { TaskParser } from './task-parser';
7
- export { TaskSync } from './task-sync';
8
- export { SubtaskSync } from './subtask-sync';
9
- export * from './types';
10
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,cAAc,SAAS,CAAC"}