specweave 0.13.5 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (811) hide show
  1. package/CLAUDE.md +189 -0
  2. package/bin/specweave.js +1 -0
  3. package/dist/cli/commands/init.d.ts +1 -0
  4. package/dist/cli/commands/init.d.ts.map +1 -1
  5. package/dist/cli/commands/init.js +51 -38
  6. package/dist/cli/commands/init.js.map +1 -1
  7. package/dist/cli/commands/status-line.d.ts +14 -0
  8. package/dist/cli/commands/status-line.d.ts.map +1 -0
  9. package/dist/cli/commands/status-line.js +75 -0
  10. package/dist/cli/commands/status-line.js.map +1 -0
  11. package/dist/core/status-line/status-line-manager.d.ts +62 -0
  12. package/dist/core/status-line/status-line-manager.d.ts.map +1 -0
  13. package/dist/core/status-line/status-line-manager.js +169 -0
  14. package/dist/core/status-line/status-line-manager.js.map +1 -0
  15. package/dist/core/status-line/types.d.ts +50 -0
  16. package/dist/core/status-line/types.d.ts.map +1 -0
  17. package/dist/core/status-line/types.js +17 -0
  18. package/dist/core/status-line/types.js.map +1 -0
  19. package/dist/utils/project-mapper.d.ts +74 -0
  20. package/dist/utils/project-mapper.d.ts.map +1 -0
  21. package/dist/utils/project-mapper.js +273 -0
  22. package/dist/utils/project-mapper.js.map +1 -0
  23. package/dist/utils/spec-splitter.d.ts +68 -0
  24. package/dist/utils/spec-splitter.d.ts.map +1 -0
  25. package/dist/utils/spec-splitter.js +314 -0
  26. package/dist/utils/spec-splitter.js.map +1 -0
  27. package/package.json +1 -1
  28. package/plugins/specweave/hooks/lib/update-status-line.sh +138 -0
  29. package/plugins/specweave/hooks/post-task-completion.sh +10 -0
  30. package/plugins/specweave/lib/hooks/git-diff-analyzer.js +129 -213
  31. package/plugins/specweave/lib/hooks/invoke-translator-skill.js +146 -192
  32. package/plugins/specweave/lib/hooks/prepare-reflection-context.js +103 -116
  33. package/plugins/specweave/lib/hooks/reflection-config-loader.js +85 -125
  34. package/plugins/specweave/lib/hooks/reflection-parser.js +267 -385
  35. package/plugins/specweave/lib/hooks/reflection-prompt-builder.js +169 -226
  36. package/plugins/specweave/lib/hooks/reflection-storage.js +223 -297
  37. package/plugins/specweave/lib/hooks/run-self-reflection.js +120 -191
  38. package/plugins/specweave/lib/hooks/sync-living-docs.js +87 -129
  39. package/plugins/specweave/lib/hooks/translate-file.js +239 -300
  40. package/plugins/specweave/lib/hooks/translate-living-docs.js +88 -144
  41. package/plugins/specweave/lib/hooks/types/reflection-types.js +57 -72
  42. package/plugins/specweave/lib/hooks/update-tasks-md.js +117 -179
  43. package/plugins/specweave/skills/multi-project-spec-mapper/SKILL.md +399 -0
  44. package/plugins/specweave-ado/lib/ado-board-resolver.js +135 -205
  45. package/plugins/specweave-ado/lib/ado-hierarchical-sync.js +223 -335
  46. package/plugins/specweave-ado/lib/ado-multi-project-sync.js +453 -0
  47. package/plugins/specweave-ado/lib/ado-multi-project-sync.ts +633 -0
  48. package/plugins/specweave-ado/lib/ado-spec-sync.js +380 -414
  49. package/plugins/specweave-ado/lib/project-selector.js +168 -196
  50. package/plugins/specweave-docs/skills/docusaurus/SKILL.md +17 -3
  51. package/plugins/specweave-docs-preview/commands/preview.md +29 -4
  52. package/plugins/specweave-github/hooks/hooks.json +11 -0
  53. package/plugins/specweave-github/hooks/post-increment-done.sh +224 -0
  54. package/plugins/specweave-github/lib/cli-sync-increment-changes.js +9 -20
  55. package/plugins/specweave-github/lib/github-board-resolver.js +69 -115
  56. package/plugins/specweave-github/lib/github-client-v2.js +400 -389
  57. package/plugins/specweave-github/lib/github-client.js +246 -280
  58. package/plugins/specweave-github/lib/github-hierarchical-sync.js +168 -251
  59. package/plugins/specweave-github/lib/github-issue-updater.js +231 -288
  60. package/plugins/specweave-github/lib/github-multi-project-sync.js +340 -0
  61. package/plugins/specweave-github/lib/github-multi-project-sync.ts +461 -0
  62. package/plugins/specweave-github/lib/github-spec-sync.js +379 -420
  63. package/plugins/specweave-github/lib/github-sync-bidirectional.js +175 -202
  64. package/plugins/specweave-github/lib/github-sync-increment-changes.js +212 -251
  65. package/plugins/specweave-github/lib/index.js +11 -10
  66. package/plugins/specweave-github/lib/repo-selector.js +174 -201
  67. package/plugins/specweave-github/lib/subtask-sync.js +132 -125
  68. package/plugins/specweave-github/lib/task-parser.js +191 -207
  69. package/plugins/specweave-github/lib/task-sync.js +344 -296
  70. package/plugins/specweave-github/lib/types.js +0 -5
  71. package/plugins/specweave-jira/lib/jira-board-resolver.js +50 -79
  72. package/plugins/specweave-jira/lib/jira-hierarchical-sync.js +119 -191
  73. package/plugins/specweave-jira/lib/jira-multi-project-sync.js +244 -0
  74. package/plugins/specweave-jira/lib/jira-multi-project-sync.ts +358 -0
  75. package/plugins/specweave-jira/lib/jira-spec-sync.js +366 -405
  76. package/plugins/specweave-jira/lib/project-selector.js +172 -201
  77. package/plugins/specweave-jira/lib/reorganization-detector.js +202 -237
  78. package/plugins/specweave-jira/lib/setup-wizard.js +162 -204
  79. package/src/templates/AGENTS.md.template +42 -0
  80. package/dist/core/agent-model-manager.d.ts +0 -52
  81. package/dist/core/agent-model-manager.d.ts.map +0 -1
  82. package/dist/core/agent-model-manager.js +0 -120
  83. package/dist/core/agent-model-manager.js.map +0 -1
  84. package/dist/core/model-selector.d.ts +0 -57
  85. package/dist/core/model-selector.d.ts.map +0 -1
  86. package/dist/core/model-selector.js +0 -115
  87. package/dist/core/model-selector.js.map +0 -1
  88. package/dist/core/phase-detector.d.ts +0 -62
  89. package/dist/core/phase-detector.d.ts.map +0 -1
  90. package/dist/core/phase-detector.js +0 -229
  91. package/dist/core/phase-detector.js.map +0 -1
  92. package/dist/hooks/lib/git-diff-analyzer.d.ts +0 -89
  93. package/dist/hooks/lib/git-diff-analyzer.d.ts.map +0 -1
  94. package/dist/hooks/lib/git-diff-analyzer.js +0 -226
  95. package/dist/hooks/lib/git-diff-analyzer.js.map +0 -1
  96. package/dist/hooks/lib/invoke-translator-skill.d.ts +0 -60
  97. package/dist/hooks/lib/invoke-translator-skill.d.ts.map +0 -1
  98. package/dist/hooks/lib/invoke-translator-skill.js +0 -201
  99. package/dist/hooks/lib/invoke-translator-skill.js.map +0 -1
  100. package/dist/hooks/lib/prepare-reflection-context.d.ts +0 -42
  101. package/dist/hooks/lib/prepare-reflection-context.d.ts.map +0 -1
  102. package/dist/hooks/lib/prepare-reflection-context.js +0 -123
  103. package/dist/hooks/lib/prepare-reflection-context.js.map +0 -1
  104. package/dist/hooks/lib/reflection-config-loader.d.ts +0 -45
  105. package/dist/hooks/lib/reflection-config-loader.d.ts.map +0 -1
  106. package/dist/hooks/lib/reflection-config-loader.js +0 -132
  107. package/dist/hooks/lib/reflection-config-loader.js.map +0 -1
  108. package/dist/hooks/lib/reflection-parser.d.ts +0 -33
  109. package/dist/hooks/lib/reflection-parser.d.ts.map +0 -1
  110. package/dist/hooks/lib/reflection-parser.js +0 -419
  111. package/dist/hooks/lib/reflection-parser.js.map +0 -1
  112. package/dist/hooks/lib/reflection-prompt-builder.d.ts +0 -56
  113. package/dist/hooks/lib/reflection-prompt-builder.d.ts.map +0 -1
  114. package/dist/hooks/lib/reflection-prompt-builder.js +0 -239
  115. package/dist/hooks/lib/reflection-prompt-builder.js.map +0 -1
  116. package/dist/hooks/lib/reflection-storage.d.ts +0 -64
  117. package/dist/hooks/lib/reflection-storage.d.ts.map +0 -1
  118. package/dist/hooks/lib/reflection-storage.js +0 -305
  119. package/dist/hooks/lib/reflection-storage.js.map +0 -1
  120. package/dist/hooks/lib/run-self-reflection.d.ts +0 -43
  121. package/dist/hooks/lib/run-self-reflection.d.ts.map +0 -1
  122. package/dist/hooks/lib/run-self-reflection.js +0 -203
  123. package/dist/hooks/lib/run-self-reflection.js.map +0 -1
  124. package/dist/hooks/lib/sync-living-docs.d.ts +0 -27
  125. package/dist/hooks/lib/sync-living-docs.d.ts.map +0 -1
  126. package/dist/hooks/lib/sync-living-docs.js +0 -116
  127. package/dist/hooks/lib/sync-living-docs.js.map +0 -1
  128. package/dist/hooks/lib/translate-file.d.ts +0 -59
  129. package/dist/hooks/lib/translate-file.d.ts.map +0 -1
  130. package/dist/hooks/lib/translate-file.js +0 -350
  131. package/dist/hooks/lib/translate-file.js.map +0 -1
  132. package/dist/hooks/lib/translate-living-docs.d.ts +0 -13
  133. package/dist/hooks/lib/translate-living-docs.d.ts.map +0 -1
  134. package/dist/hooks/lib/translate-living-docs.js +0 -175
  135. package/dist/hooks/lib/translate-living-docs.js.map +0 -1
  136. package/dist/hooks/lib/types/reflection-types.d.ts +0 -164
  137. package/dist/hooks/lib/types/reflection-types.d.ts.map +0 -1
  138. package/dist/hooks/lib/types/reflection-types.js +0 -73
  139. package/dist/hooks/lib/types/reflection-types.js.map +0 -1
  140. package/dist/hooks/lib/update-tasks-md.d.ts +0 -29
  141. package/dist/hooks/lib/update-tasks-md.d.ts.map +0 -1
  142. package/dist/hooks/lib/update-tasks-md.js +0 -203
  143. package/dist/hooks/lib/update-tasks-md.js.map +0 -1
  144. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts +0 -89
  145. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts.map +0 -1
  146. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js +0 -226
  147. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js.map +0 -1
  148. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts +0 -60
  149. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts.map +0 -1
  150. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js +0 -201
  151. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js.map +0 -1
  152. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts +0 -42
  153. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts.map +0 -1
  154. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js +0 -123
  155. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js.map +0 -1
  156. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts +0 -45
  157. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts.map +0 -1
  158. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js +0 -132
  159. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js.map +0 -1
  160. package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts +0 -33
  161. package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts.map +0 -1
  162. package/dist/plugins/specweave/lib/hooks/reflection-parser.js +0 -419
  163. package/dist/plugins/specweave/lib/hooks/reflection-parser.js.map +0 -1
  164. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts +0 -56
  165. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts.map +0 -1
  166. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js +0 -239
  167. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js.map +0 -1
  168. package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts +0 -64
  169. package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts.map +0 -1
  170. package/dist/plugins/specweave/lib/hooks/reflection-storage.js +0 -305
  171. package/dist/plugins/specweave/lib/hooks/reflection-storage.js.map +0 -1
  172. package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts +0 -43
  173. package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts.map +0 -1
  174. package/dist/plugins/specweave/lib/hooks/run-self-reflection.js +0 -203
  175. package/dist/plugins/specweave/lib/hooks/run-self-reflection.js.map +0 -1
  176. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts +0 -27
  177. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts.map +0 -1
  178. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js +0 -144
  179. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js.map +0 -1
  180. package/dist/plugins/specweave/lib/hooks/translate-file.d.ts +0 -59
  181. package/dist/plugins/specweave/lib/hooks/translate-file.d.ts.map +0 -1
  182. package/dist/plugins/specweave/lib/hooks/translate-file.js +0 -350
  183. package/dist/plugins/specweave/lib/hooks/translate-file.js.map +0 -1
  184. package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts +0 -13
  185. package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts.map +0 -1
  186. package/dist/plugins/specweave/lib/hooks/translate-living-docs.js +0 -175
  187. package/dist/plugins/specweave/lib/hooks/translate-living-docs.js.map +0 -1
  188. package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts +0 -164
  189. package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts.map +0 -1
  190. package/dist/plugins/specweave/lib/hooks/types/reflection-types.js +0 -73
  191. package/dist/plugins/specweave/lib/hooks/types/reflection-types.js.map +0 -1
  192. package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts +0 -29
  193. package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts.map +0 -1
  194. package/dist/plugins/specweave/lib/hooks/update-tasks-md.js +0 -203
  195. package/dist/plugins/specweave/lib/hooks/update-tasks-md.js.map +0 -1
  196. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts +0 -94
  197. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts.map +0 -1
  198. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js +0 -219
  199. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js.map +0 -1
  200. package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts +0 -124
  201. package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts.map +0 -1
  202. package/dist/plugins/specweave-ado/lib/ado-client-v2.js +0 -382
  203. package/dist/plugins/specweave-ado/lib/ado-client-v2.js.map +0 -1
  204. package/dist/plugins/specweave-ado/lib/ado-client.d.ts +0 -112
  205. package/dist/plugins/specweave-ado/lib/ado-client.d.ts.map +0 -1
  206. package/dist/plugins/specweave-ado/lib/ado-client.js +0 -257
  207. package/dist/plugins/specweave-ado/lib/ado-client.js.map +0 -1
  208. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts +0 -40
  209. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts.map +0 -1
  210. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js +0 -370
  211. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js.map +0 -1
  212. package/dist/plugins/specweave-ado/lib/ado-spec-sync.d.ts +0 -100
  213. package/dist/plugins/specweave-ado/lib/ado-spec-sync.d.ts.map +0 -1
  214. package/dist/plugins/specweave-ado/lib/ado-spec-sync.js +0 -471
  215. package/dist/plugins/specweave-ado/lib/ado-spec-sync.js.map +0 -1
  216. package/dist/plugins/specweave-ado/lib/project-selector.d.ts +0 -42
  217. package/dist/plugins/specweave-ado/lib/project-selector.d.ts.map +0 -1
  218. package/dist/plugins/specweave-ado/lib/project-selector.js +0 -211
  219. package/dist/plugins/specweave-ado/lib/project-selector.js.map +0 -1
  220. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.d.ts +0 -12
  221. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.d.ts.map +0 -1
  222. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.js +0 -28
  223. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.js.map +0 -1
  224. package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts +0 -54
  225. package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts.map +0 -1
  226. package/dist/plugins/specweave-github/lib/github-board-resolver.js +0 -122
  227. package/dist/plugins/specweave-github/lib/github-board-resolver.js.map +0 -1
  228. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts +0 -104
  229. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts.map +0 -1
  230. package/dist/plugins/specweave-github/lib/github-client-v2.js +0 -408
  231. package/dist/plugins/specweave-github/lib/github-client-v2.js.map +0 -1
  232. package/dist/plugins/specweave-github/lib/github-client.d.ts +0 -96
  233. package/dist/plugins/specweave-github/lib/github-client.d.ts.map +0 -1
  234. package/dist/plugins/specweave-github/lib/github-client.js +0 -299
  235. package/dist/plugins/specweave-github/lib/github-client.js.map +0 -1
  236. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts +0 -29
  237. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts.map +0 -1
  238. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js +0 -268
  239. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js.map +0 -1
  240. package/dist/plugins/specweave-github/lib/github-issue-updater.d.ts +0 -61
  241. package/dist/plugins/specweave-github/lib/github-issue-updater.d.ts.map +0 -1
  242. package/dist/plugins/specweave-github/lib/github-issue-updater.js +0 -327
  243. package/dist/plugins/specweave-github/lib/github-issue-updater.js.map +0 -1
  244. package/dist/plugins/specweave-github/lib/github-spec-sync.d.ts +0 -108
  245. package/dist/plugins/specweave-github/lib/github-spec-sync.d.ts.map +0 -1
  246. package/dist/plugins/specweave-github/lib/github-spec-sync.js +0 -505
  247. package/dist/plugins/specweave-github/lib/github-spec-sync.js.map +0 -1
  248. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.d.ts +0 -36
  249. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.d.ts.map +0 -1
  250. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.js +0 -228
  251. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.js.map +0 -1
  252. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.d.ts +0 -18
  253. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.d.ts.map +0 -1
  254. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.js +0 -287
  255. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.js.map +0 -1
  256. package/dist/plugins/specweave-github/lib/index.d.ts +0 -10
  257. package/dist/plugins/specweave-github/lib/index.d.ts.map +0 -1
  258. package/dist/plugins/specweave-github/lib/index.js +0 -10
  259. package/dist/plugins/specweave-github/lib/index.js.map +0 -1
  260. package/dist/plugins/specweave-github/lib/repo-selector.d.ts +0 -49
  261. package/dist/plugins/specweave-github/lib/repo-selector.d.ts.map +0 -1
  262. package/dist/plugins/specweave-github/lib/repo-selector.js +0 -216
  263. package/dist/plugins/specweave-github/lib/repo-selector.js.map +0 -1
  264. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts +0 -51
  265. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts.map +0 -1
  266. package/dist/plugins/specweave-github/lib/subtask-sync.js +0 -147
  267. package/dist/plugins/specweave-github/lib/subtask-sync.js.map +0 -1
  268. package/dist/plugins/specweave-github/lib/task-parser.d.ts +0 -37
  269. package/dist/plugins/specweave-github/lib/task-parser.d.ts.map +0 -1
  270. package/dist/plugins/specweave-github/lib/task-parser.js +0 -211
  271. package/dist/plugins/specweave-github/lib/task-parser.js.map +0 -1
  272. package/dist/plugins/specweave-github/lib/task-sync.d.ts +0 -51
  273. package/dist/plugins/specweave-github/lib/task-sync.d.ts.map +0 -1
  274. package/dist/plugins/specweave-github/lib/task-sync.js +0 -332
  275. package/dist/plugins/specweave-github/lib/task-sync.js.map +0 -1
  276. package/dist/plugins/specweave-github/lib/types.d.ts +0 -80
  277. package/dist/plugins/specweave-github/lib/types.d.ts.map +0 -1
  278. package/dist/plugins/specweave-github/lib/types.js +0 -5
  279. package/dist/plugins/specweave-github/lib/types.js.map +0 -1
  280. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts +0 -50
  281. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts.map +0 -1
  282. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js +0 -84
  283. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js.map +0 -1
  284. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts +0 -33
  285. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts.map +0 -1
  286. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js +0 -206
  287. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js.map +0 -1
  288. package/dist/plugins/specweave-jira/lib/jira-spec-sync.d.ts +0 -105
  289. package/dist/plugins/specweave-jira/lib/jira-spec-sync.d.ts.map +0 -1
  290. package/dist/plugins/specweave-jira/lib/jira-spec-sync.js +0 -456
  291. package/dist/plugins/specweave-jira/lib/jira-spec-sync.js.map +0 -1
  292. package/dist/plugins/specweave-jira/lib/project-selector.d.ts +0 -42
  293. package/dist/plugins/specweave-jira/lib/project-selector.d.ts.map +0 -1
  294. package/dist/plugins/specweave-jira/lib/project-selector.js +0 -216
  295. package/dist/plugins/specweave-jira/lib/project-selector.js.map +0 -1
  296. package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts +0 -67
  297. package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts.map +0 -1
  298. package/dist/plugins/specweave-jira/lib/reorganization-detector.js +0 -252
  299. package/dist/plugins/specweave-jira/lib/reorganization-detector.js.map +0 -1
  300. package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts +0 -29
  301. package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts.map +0 -1
  302. package/dist/plugins/specweave-jira/lib/setup-wizard.js +0 -219
  303. package/dist/plugins/specweave-jira/lib/setup-wizard.js.map +0 -1
  304. package/dist/src/adapters/adapter-base.d.ts +0 -71
  305. package/dist/src/adapters/adapter-base.d.ts.map +0 -1
  306. package/dist/src/adapters/adapter-base.js +0 -139
  307. package/dist/src/adapters/adapter-base.js.map +0 -1
  308. package/dist/src/adapters/adapter-interface.d.ts +0 -149
  309. package/dist/src/adapters/adapter-interface.d.ts.map +0 -1
  310. package/dist/src/adapters/adapter-interface.js +0 -8
  311. package/dist/src/adapters/adapter-interface.js.map +0 -1
  312. package/dist/src/adapters/adapter-loader.d.ts +0 -91
  313. package/dist/src/adapters/adapter-loader.d.ts.map +0 -1
  314. package/dist/src/adapters/adapter-loader.js +0 -238
  315. package/dist/src/adapters/adapter-loader.js.map +0 -1
  316. package/dist/src/adapters/agents-md-generator.d.ts +0 -48
  317. package/dist/src/adapters/agents-md-generator.d.ts.map +0 -1
  318. package/dist/src/adapters/agents-md-generator.js +0 -193
  319. package/dist/src/adapters/agents-md-generator.js.map +0 -1
  320. package/dist/src/adapters/claude/adapter.d.ts +0 -128
  321. package/dist/src/adapters/claude/adapter.d.ts.map +0 -1
  322. package/dist/src/adapters/claude/adapter.js +0 -415
  323. package/dist/src/adapters/claude/adapter.js.map +0 -1
  324. package/dist/src/adapters/claude-md-generator.d.ts +0 -78
  325. package/dist/src/adapters/claude-md-generator.d.ts.map +0 -1
  326. package/dist/src/adapters/claude-md-generator.js +0 -307
  327. package/dist/src/adapters/claude-md-generator.js.map +0 -1
  328. package/dist/src/adapters/codex/adapter.d.ts +0 -50
  329. package/dist/src/adapters/codex/adapter.d.ts.map +0 -1
  330. package/dist/src/adapters/codex/adapter.js +0 -316
  331. package/dist/src/adapters/codex/adapter.js.map +0 -1
  332. package/dist/src/adapters/cursor/adapter.d.ts +0 -98
  333. package/dist/src/adapters/cursor/adapter.d.ts.map +0 -1
  334. package/dist/src/adapters/cursor/adapter.js +0 -406
  335. package/dist/src/adapters/cursor/adapter.js.map +0 -1
  336. package/dist/src/adapters/doc-generator.d.ts +0 -69
  337. package/dist/src/adapters/doc-generator.d.ts.map +0 -1
  338. package/dist/src/adapters/doc-generator.js +0 -247
  339. package/dist/src/adapters/doc-generator.js.map +0 -1
  340. package/dist/src/adapters/gemini/adapter.d.ts +0 -50
  341. package/dist/src/adapters/gemini/adapter.d.ts.map +0 -1
  342. package/dist/src/adapters/gemini/adapter.js +0 -281
  343. package/dist/src/adapters/gemini/adapter.js.map +0 -1
  344. package/dist/src/adapters/generic/adapter.d.ts +0 -86
  345. package/dist/src/adapters/generic/adapter.d.ts.map +0 -1
  346. package/dist/src/adapters/generic/adapter.js +0 -338
  347. package/dist/src/adapters/generic/adapter.js.map +0 -1
  348. package/dist/src/cli/commands/abandon.d.ts +0 -13
  349. package/dist/src/cli/commands/abandon.d.ts.map +0 -1
  350. package/dist/src/cli/commands/abandon.js +0 -15
  351. package/dist/src/cli/commands/abandon.js.map +0 -1
  352. package/dist/src/cli/commands/import-docs.d.ts +0 -21
  353. package/dist/src/cli/commands/import-docs.d.ts.map +0 -1
  354. package/dist/src/cli/commands/import-docs.js +0 -146
  355. package/dist/src/cli/commands/import-docs.js.map +0 -1
  356. package/dist/src/cli/commands/init-multiproject.d.ts +0 -11
  357. package/dist/src/cli/commands/init-multiproject.d.ts.map +0 -1
  358. package/dist/src/cli/commands/init-multiproject.js +0 -202
  359. package/dist/src/cli/commands/init-multiproject.js.map +0 -1
  360. package/dist/src/cli/commands/init.d.ts +0 -9
  361. package/dist/src/cli/commands/init.d.ts.map +0 -1
  362. package/dist/src/cli/commands/init.js +0 -1444
  363. package/dist/src/cli/commands/init.js.map +0 -1
  364. package/dist/src/cli/commands/install.d.ts +0 -9
  365. package/dist/src/cli/commands/install.d.ts.map +0 -1
  366. package/dist/src/cli/commands/install.js +0 -127
  367. package/dist/src/cli/commands/install.js.map +0 -1
  368. package/dist/src/cli/commands/list.d.ts +0 -8
  369. package/dist/src/cli/commands/list.d.ts.map +0 -1
  370. package/dist/src/cli/commands/list.js +0 -119
  371. package/dist/src/cli/commands/list.js.map +0 -1
  372. package/dist/src/cli/commands/migrate-to-multiproject.d.ts +0 -37
  373. package/dist/src/cli/commands/migrate-to-multiproject.d.ts.map +0 -1
  374. package/dist/src/cli/commands/migrate-to-multiproject.js +0 -189
  375. package/dist/src/cli/commands/migrate-to-multiproject.js.map +0 -1
  376. package/dist/src/cli/commands/migrate-to-profiles.d.ts +0 -25
  377. package/dist/src/cli/commands/migrate-to-profiles.d.ts.map +0 -1
  378. package/dist/src/cli/commands/migrate-to-profiles.js +0 -350
  379. package/dist/src/cli/commands/migrate-to-profiles.js.map +0 -1
  380. package/dist/src/cli/commands/pause.d.ts +0 -13
  381. package/dist/src/cli/commands/pause.d.ts.map +0 -1
  382. package/dist/src/cli/commands/pause.js +0 -15
  383. package/dist/src/cli/commands/pause.js.map +0 -1
  384. package/dist/src/cli/commands/qa.d.ts +0 -54
  385. package/dist/src/cli/commands/qa.d.ts.map +0 -1
  386. package/dist/src/cli/commands/qa.js +0 -98
  387. package/dist/src/cli/commands/qa.js.map +0 -1
  388. package/dist/src/cli/commands/resume.d.ts +0 -12
  389. package/dist/src/cli/commands/resume.d.ts.map +0 -1
  390. package/dist/src/cli/commands/resume.js +0 -14
  391. package/dist/src/cli/commands/resume.js.map +0 -1
  392. package/dist/src/cli/commands/status.d.ts +0 -12
  393. package/dist/src/cli/commands/status.d.ts.map +0 -1
  394. package/dist/src/cli/commands/status.js +0 -23
  395. package/dist/src/cli/commands/status.js.map +0 -1
  396. package/dist/src/cli/commands/switch-project.d.ts +0 -13
  397. package/dist/src/cli/commands/switch-project.d.ts.map +0 -1
  398. package/dist/src/cli/commands/switch-project.js +0 -91
  399. package/dist/src/cli/commands/switch-project.js.map +0 -1
  400. package/dist/src/cli/commands/validate-jira.d.ts +0 -35
  401. package/dist/src/cli/commands/validate-jira.d.ts.map +0 -1
  402. package/dist/src/cli/commands/validate-jira.js +0 -112
  403. package/dist/src/cli/commands/validate-jira.js.map +0 -1
  404. package/dist/src/cli/commands/validate-plugins.d.ts +0 -41
  405. package/dist/src/cli/commands/validate-plugins.d.ts.map +0 -1
  406. package/dist/src/cli/commands/validate-plugins.js +0 -171
  407. package/dist/src/cli/commands/validate-plugins.js.map +0 -1
  408. package/dist/src/cli/helpers/issue-tracker/ado.d.ts +0 -57
  409. package/dist/src/cli/helpers/issue-tracker/ado.d.ts.map +0 -1
  410. package/dist/src/cli/helpers/issue-tracker/ado.js +0 -243
  411. package/dist/src/cli/helpers/issue-tracker/ado.js.map +0 -1
  412. package/dist/src/cli/helpers/issue-tracker/github.d.ts +0 -65
  413. package/dist/src/cli/helpers/issue-tracker/github.d.ts.map +0 -1
  414. package/dist/src/cli/helpers/issue-tracker/github.js +0 -426
  415. package/dist/src/cli/helpers/issue-tracker/github.js.map +0 -1
  416. package/dist/src/cli/helpers/issue-tracker/index.d.ts +0 -22
  417. package/dist/src/cli/helpers/issue-tracker/index.d.ts.map +0 -1
  418. package/dist/src/cli/helpers/issue-tracker/index.js +0 -314
  419. package/dist/src/cli/helpers/issue-tracker/index.js.map +0 -1
  420. package/dist/src/cli/helpers/issue-tracker/jira.d.ts +0 -61
  421. package/dist/src/cli/helpers/issue-tracker/jira.d.ts.map +0 -1
  422. package/dist/src/cli/helpers/issue-tracker/jira.js +0 -404
  423. package/dist/src/cli/helpers/issue-tracker/jira.js.map +0 -1
  424. package/dist/src/cli/helpers/issue-tracker/types.d.ts +0 -108
  425. package/dist/src/cli/helpers/issue-tracker/types.d.ts.map +0 -1
  426. package/dist/src/cli/helpers/issue-tracker/types.js +0 -16
  427. package/dist/src/cli/helpers/issue-tracker/types.js.map +0 -1
  428. package/dist/src/cli/helpers/issue-tracker/utils.d.ts +0 -112
  429. package/dist/src/cli/helpers/issue-tracker/utils.d.ts.map +0 -1
  430. package/dist/src/cli/helpers/issue-tracker/utils.js +0 -247
  431. package/dist/src/cli/helpers/issue-tracker/utils.js.map +0 -1
  432. package/dist/src/core/agent-model-manager.d.ts +0 -52
  433. package/dist/src/core/agent-model-manager.d.ts.map +0 -1
  434. package/dist/src/core/agent-model-manager.js +0 -120
  435. package/dist/src/core/agent-model-manager.js.map +0 -1
  436. package/dist/src/core/brownfield/analyzer.d.ts +0 -86
  437. package/dist/src/core/brownfield/analyzer.d.ts.map +0 -1
  438. package/dist/src/core/brownfield/analyzer.js +0 -365
  439. package/dist/src/core/brownfield/analyzer.js.map +0 -1
  440. package/dist/src/core/brownfield/importer.d.ts +0 -76
  441. package/dist/src/core/brownfield/importer.d.ts.map +0 -1
  442. package/dist/src/core/brownfield/importer.js +0 -287
  443. package/dist/src/core/brownfield/importer.js.map +0 -1
  444. package/dist/src/core/config-manager.d.ts +0 -47
  445. package/dist/src/core/config-manager.d.ts.map +0 -1
  446. package/dist/src/core/config-manager.js +0 -136
  447. package/dist/src/core/config-manager.js.map +0 -1
  448. package/dist/src/core/cost-tracker.d.ts +0 -108
  449. package/dist/src/core/cost-tracker.d.ts.map +0 -1
  450. package/dist/src/core/cost-tracker.js +0 -281
  451. package/dist/src/core/cost-tracker.js.map +0 -1
  452. package/dist/src/core/credentials-manager.d.ts +0 -107
  453. package/dist/src/core/credentials-manager.d.ts.map +0 -1
  454. package/dist/src/core/credentials-manager.js +0 -457
  455. package/dist/src/core/credentials-manager.js.map +0 -1
  456. package/dist/src/core/i18n/language-detector.d.ts +0 -29
  457. package/dist/src/core/i18n/language-detector.d.ts.map +0 -1
  458. package/dist/src/core/i18n/language-detector.js +0 -143
  459. package/dist/src/core/i18n/language-detector.js.map +0 -1
  460. package/dist/src/core/i18n/language-manager.d.ts +0 -101
  461. package/dist/src/core/i18n/language-manager.d.ts.map +0 -1
  462. package/dist/src/core/i18n/language-manager.js +0 -232
  463. package/dist/src/core/i18n/language-manager.js.map +0 -1
  464. package/dist/src/core/i18n/language-registry.d.ts +0 -44
  465. package/dist/src/core/i18n/language-registry.d.ts.map +0 -1
  466. package/dist/src/core/i18n/language-registry.js +0 -234
  467. package/dist/src/core/i18n/language-registry.js.map +0 -1
  468. package/dist/src/core/i18n/locale-manager.d.ts +0 -62
  469. package/dist/src/core/i18n/locale-manager.d.ts.map +0 -1
  470. package/dist/src/core/i18n/locale-manager.js +0 -137
  471. package/dist/src/core/i18n/locale-manager.js.map +0 -1
  472. package/dist/src/core/i18n/system-prompt-injector.d.ts +0 -33
  473. package/dist/src/core/i18n/system-prompt-injector.d.ts.map +0 -1
  474. package/dist/src/core/i18n/system-prompt-injector.js +0 -131
  475. package/dist/src/core/i18n/system-prompt-injector.js.map +0 -1
  476. package/dist/src/core/i18n/types.d.ts +0 -151
  477. package/dist/src/core/i18n/types.d.ts.map +0 -1
  478. package/dist/src/core/i18n/types.js +0 -11
  479. package/dist/src/core/i18n/types.js.map +0 -1
  480. package/dist/src/core/increment/limits.d.ts +0 -68
  481. package/dist/src/core/increment/limits.d.ts.map +0 -1
  482. package/dist/src/core/increment/limits.js +0 -224
  483. package/dist/src/core/increment/limits.js.map +0 -1
  484. package/dist/src/core/increment/metadata-manager.d.ts +0 -114
  485. package/dist/src/core/increment/metadata-manager.d.ts.map +0 -1
  486. package/dist/src/core/increment/metadata-manager.js +0 -320
  487. package/dist/src/core/increment/metadata-manager.js.map +0 -1
  488. package/dist/src/core/increment/status-commands.d.ts +0 -43
  489. package/dist/src/core/increment/status-commands.d.ts.map +0 -1
  490. package/dist/src/core/increment/status-commands.js +0 -277
  491. package/dist/src/core/increment/status-commands.js.map +0 -1
  492. package/dist/src/core/increment-status.d.ts +0 -72
  493. package/dist/src/core/increment-status.d.ts.map +0 -1
  494. package/dist/src/core/increment-status.js +0 -227
  495. package/dist/src/core/increment-status.js.map +0 -1
  496. package/dist/src/core/model-selector.d.ts +0 -57
  497. package/dist/src/core/model-selector.d.ts.map +0 -1
  498. package/dist/src/core/model-selector.js +0 -115
  499. package/dist/src/core/model-selector.js.map +0 -1
  500. package/dist/src/core/phase-detector.d.ts +0 -62
  501. package/dist/src/core/phase-detector.d.ts.map +0 -1
  502. package/dist/src/core/phase-detector.js +0 -229
  503. package/dist/src/core/phase-detector.js.map +0 -1
  504. package/dist/src/core/plugin-loader.d.ts +0 -131
  505. package/dist/src/core/plugin-loader.d.ts.map +0 -1
  506. package/dist/src/core/plugin-loader.js +0 -421
  507. package/dist/src/core/plugin-loader.js.map +0 -1
  508. package/dist/src/core/project-manager.d.ts +0 -127
  509. package/dist/src/core/project-manager.d.ts.map +0 -1
  510. package/dist/src/core/project-manager.js +0 -524
  511. package/dist/src/core/project-manager.js.map +0 -1
  512. package/dist/src/core/project-structure-detector.d.ts +0 -92
  513. package/dist/src/core/project-structure-detector.d.ts.map +0 -1
  514. package/dist/src/core/project-structure-detector.js +0 -289
  515. package/dist/src/core/project-structure-detector.js.map +0 -1
  516. package/dist/src/core/qa/qa-runner.d.ts +0 -16
  517. package/dist/src/core/qa/qa-runner.d.ts.map +0 -1
  518. package/dist/src/core/qa/qa-runner.js +0 -404
  519. package/dist/src/core/qa/qa-runner.js.map +0 -1
  520. package/dist/src/core/qa/quality-gate-decider.d.ts +0 -53
  521. package/dist/src/core/qa/quality-gate-decider.d.ts.map +0 -1
  522. package/dist/src/core/qa/quality-gate-decider.js +0 -268
  523. package/dist/src/core/qa/quality-gate-decider.js.map +0 -1
  524. package/dist/src/core/qa/risk-calculator.d.ts +0 -126
  525. package/dist/src/core/qa/risk-calculator.d.ts.map +0 -1
  526. package/dist/src/core/qa/risk-calculator.js +0 -247
  527. package/dist/src/core/qa/risk-calculator.js.map +0 -1
  528. package/dist/src/core/qa/types.d.ts +0 -315
  529. package/dist/src/core/qa/types.d.ts.map +0 -1
  530. package/dist/src/core/qa/types.js +0 -8
  531. package/dist/src/core/qa/types.js.map +0 -1
  532. package/dist/src/core/rfc-generator-v2.d.ts +0 -149
  533. package/dist/src/core/rfc-generator-v2.d.ts.map +0 -1
  534. package/dist/src/core/rfc-generator-v2.js +0 -399
  535. package/dist/src/core/rfc-generator-v2.js.map +0 -1
  536. package/dist/src/core/specs/spec-metadata-manager.d.ts +0 -70
  537. package/dist/src/core/specs/spec-metadata-manager.d.ts.map +0 -1
  538. package/dist/src/core/specs/spec-metadata-manager.js +0 -371
  539. package/dist/src/core/specs/spec-metadata-manager.js.map +0 -1
  540. package/dist/src/core/specs/spec-parser.d.ts +0 -66
  541. package/dist/src/core/specs/spec-parser.d.ts.map +0 -1
  542. package/dist/src/core/specs/spec-parser.js +0 -276
  543. package/dist/src/core/specs/spec-parser.js.map +0 -1
  544. package/dist/src/core/sync/bidirectional-engine.d.ts +0 -110
  545. package/dist/src/core/sync/bidirectional-engine.d.ts.map +0 -1
  546. package/dist/src/core/sync/bidirectional-engine.js +0 -356
  547. package/dist/src/core/sync/bidirectional-engine.js.map +0 -1
  548. package/dist/src/core/sync/folder-mapper.d.ts +0 -71
  549. package/dist/src/core/sync/folder-mapper.d.ts.map +0 -1
  550. package/dist/src/core/sync/folder-mapper.js +0 -168
  551. package/dist/src/core/sync/folder-mapper.js.map +0 -1
  552. package/dist/src/core/sync/profile-manager.d.ts +0 -72
  553. package/dist/src/core/sync/profile-manager.d.ts.map +0 -1
  554. package/dist/src/core/sync/profile-manager.js +0 -338
  555. package/dist/src/core/sync/profile-manager.js.map +0 -1
  556. package/dist/src/core/sync/profile-selector.d.ts +0 -52
  557. package/dist/src/core/sync/profile-selector.d.ts.map +0 -1
  558. package/dist/src/core/sync/profile-selector.js +0 -179
  559. package/dist/src/core/sync/profile-selector.js.map +0 -1
  560. package/dist/src/core/sync/profile-validator.d.ts +0 -52
  561. package/dist/src/core/sync/profile-validator.d.ts.map +0 -1
  562. package/dist/src/core/sync/profile-validator.js +0 -225
  563. package/dist/src/core/sync/profile-validator.js.map +0 -1
  564. package/dist/src/core/sync/project-context.d.ts +0 -81
  565. package/dist/src/core/sync/project-context.d.ts.map +0 -1
  566. package/dist/src/core/sync/project-context.js +0 -354
  567. package/dist/src/core/sync/project-context.js.map +0 -1
  568. package/dist/src/core/sync/rate-limiter.d.ts +0 -116
  569. package/dist/src/core/sync/rate-limiter.d.ts.map +0 -1
  570. package/dist/src/core/sync/rate-limiter.js +0 -308
  571. package/dist/src/core/sync/rate-limiter.js.map +0 -1
  572. package/dist/src/core/sync/time-range-selector.d.ts +0 -48
  573. package/dist/src/core/sync/time-range-selector.d.ts.map +0 -1
  574. package/dist/src/core/sync/time-range-selector.js +0 -224
  575. package/dist/src/core/sync/time-range-selector.js.map +0 -1
  576. package/dist/src/core/types/config.d.ts +0 -90
  577. package/dist/src/core/types/config.d.ts.map +0 -1
  578. package/dist/src/core/types/config.js +0 -44
  579. package/dist/src/core/types/config.js.map +0 -1
  580. package/dist/src/core/types/increment-metadata.d.ts +0 -120
  581. package/dist/src/core/types/increment-metadata.d.ts.map +0 -1
  582. package/dist/src/core/types/increment-metadata.js +0 -138
  583. package/dist/src/core/types/increment-metadata.js.map +0 -1
  584. package/dist/src/core/types/plugin.d.ts +0 -283
  585. package/dist/src/core/types/plugin.d.ts.map +0 -1
  586. package/dist/src/core/types/plugin.js +0 -49
  587. package/dist/src/core/types/plugin.js.map +0 -1
  588. package/dist/src/core/types/spec-metadata.d.ts +0 -229
  589. package/dist/src/core/types/spec-metadata.d.ts.map +0 -1
  590. package/dist/src/core/types/spec-metadata.js +0 -14
  591. package/dist/src/core/types/spec-metadata.js.map +0 -1
  592. package/dist/src/core/types/sync-profile.d.ts +0 -403
  593. package/dist/src/core/types/sync-profile.d.ts.map +0 -1
  594. package/dist/src/core/types/sync-profile.js +0 -55
  595. package/dist/src/core/types/sync-profile.js.map +0 -1
  596. package/dist/src/hooks/lib/git-diff-analyzer.d.ts +0 -89
  597. package/dist/src/hooks/lib/git-diff-analyzer.d.ts.map +0 -1
  598. package/dist/src/hooks/lib/git-diff-analyzer.js +0 -226
  599. package/dist/src/hooks/lib/git-diff-analyzer.js.map +0 -1
  600. package/dist/src/hooks/lib/invoke-translator-skill.d.ts +0 -60
  601. package/dist/src/hooks/lib/invoke-translator-skill.d.ts.map +0 -1
  602. package/dist/src/hooks/lib/invoke-translator-skill.js +0 -201
  603. package/dist/src/hooks/lib/invoke-translator-skill.js.map +0 -1
  604. package/dist/src/hooks/lib/prepare-reflection-context.d.ts +0 -42
  605. package/dist/src/hooks/lib/prepare-reflection-context.d.ts.map +0 -1
  606. package/dist/src/hooks/lib/prepare-reflection-context.js +0 -123
  607. package/dist/src/hooks/lib/prepare-reflection-context.js.map +0 -1
  608. package/dist/src/hooks/lib/reflection-config-loader.d.ts +0 -45
  609. package/dist/src/hooks/lib/reflection-config-loader.d.ts.map +0 -1
  610. package/dist/src/hooks/lib/reflection-config-loader.js +0 -132
  611. package/dist/src/hooks/lib/reflection-config-loader.js.map +0 -1
  612. package/dist/src/hooks/lib/reflection-parser.d.ts +0 -33
  613. package/dist/src/hooks/lib/reflection-parser.d.ts.map +0 -1
  614. package/dist/src/hooks/lib/reflection-parser.js +0 -419
  615. package/dist/src/hooks/lib/reflection-parser.js.map +0 -1
  616. package/dist/src/hooks/lib/reflection-prompt-builder.d.ts +0 -56
  617. package/dist/src/hooks/lib/reflection-prompt-builder.d.ts.map +0 -1
  618. package/dist/src/hooks/lib/reflection-prompt-builder.js +0 -239
  619. package/dist/src/hooks/lib/reflection-prompt-builder.js.map +0 -1
  620. package/dist/src/hooks/lib/reflection-storage.d.ts +0 -64
  621. package/dist/src/hooks/lib/reflection-storage.d.ts.map +0 -1
  622. package/dist/src/hooks/lib/reflection-storage.js +0 -305
  623. package/dist/src/hooks/lib/reflection-storage.js.map +0 -1
  624. package/dist/src/hooks/lib/run-self-reflection.d.ts +0 -43
  625. package/dist/src/hooks/lib/run-self-reflection.d.ts.map +0 -1
  626. package/dist/src/hooks/lib/run-self-reflection.js +0 -203
  627. package/dist/src/hooks/lib/run-self-reflection.js.map +0 -1
  628. package/dist/src/hooks/lib/sync-living-docs.d.ts +0 -27
  629. package/dist/src/hooks/lib/sync-living-docs.d.ts.map +0 -1
  630. package/dist/src/hooks/lib/sync-living-docs.js +0 -116
  631. package/dist/src/hooks/lib/sync-living-docs.js.map +0 -1
  632. package/dist/src/hooks/lib/translate-file.d.ts +0 -59
  633. package/dist/src/hooks/lib/translate-file.d.ts.map +0 -1
  634. package/dist/src/hooks/lib/translate-file.js +0 -350
  635. package/dist/src/hooks/lib/translate-file.js.map +0 -1
  636. package/dist/src/hooks/lib/translate-living-docs.d.ts +0 -13
  637. package/dist/src/hooks/lib/translate-living-docs.d.ts.map +0 -1
  638. package/dist/src/hooks/lib/translate-living-docs.js +0 -175
  639. package/dist/src/hooks/lib/translate-living-docs.js.map +0 -1
  640. package/dist/src/hooks/lib/types/reflection-types.d.ts +0 -164
  641. package/dist/src/hooks/lib/types/reflection-types.d.ts.map +0 -1
  642. package/dist/src/hooks/lib/types/reflection-types.js +0 -73
  643. package/dist/src/hooks/lib/types/reflection-types.js.map +0 -1
  644. package/dist/src/hooks/lib/update-tasks-md.d.ts +0 -29
  645. package/dist/src/hooks/lib/update-tasks-md.d.ts.map +0 -1
  646. package/dist/src/hooks/lib/update-tasks-md.js +0 -203
  647. package/dist/src/hooks/lib/update-tasks-md.js.map +0 -1
  648. package/dist/src/integrations/ado/ado-client.d.ts +0 -127
  649. package/dist/src/integrations/ado/ado-client.d.ts.map +0 -1
  650. package/dist/src/integrations/ado/ado-client.js +0 -416
  651. package/dist/src/integrations/ado/ado-client.js.map +0 -1
  652. package/dist/src/integrations/jira/jira-client.d.ts +0 -139
  653. package/dist/src/integrations/jira/jira-client.d.ts.map +0 -1
  654. package/dist/src/integrations/jira/jira-client.js +0 -386
  655. package/dist/src/integrations/jira/jira-client.js.map +0 -1
  656. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts +0 -75
  657. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts.map +0 -1
  658. package/dist/src/integrations/jira/jira-incremental-mapper.js +0 -474
  659. package/dist/src/integrations/jira/jira-incremental-mapper.js.map +0 -1
  660. package/dist/src/integrations/jira/jira-mapper.d.ts +0 -105
  661. package/dist/src/integrations/jira/jira-mapper.d.ts.map +0 -1
  662. package/dist/src/integrations/jira/jira-mapper.js +0 -494
  663. package/dist/src/integrations/jira/jira-mapper.js.map +0 -1
  664. package/dist/src/metrics/calculators/change-failure-rate.d.ts +0 -22
  665. package/dist/src/metrics/calculators/change-failure-rate.d.ts.map +0 -1
  666. package/dist/src/metrics/calculators/change-failure-rate.js +0 -70
  667. package/dist/src/metrics/calculators/change-failure-rate.js.map +0 -1
  668. package/dist/src/metrics/calculators/deployment-frequency.d.ts +0 -20
  669. package/dist/src/metrics/calculators/deployment-frequency.d.ts.map +0 -1
  670. package/dist/src/metrics/calculators/deployment-frequency.js +0 -61
  671. package/dist/src/metrics/calculators/deployment-frequency.js.map +0 -1
  672. package/dist/src/metrics/calculators/lead-time.d.ts +0 -22
  673. package/dist/src/metrics/calculators/lead-time.d.ts.map +0 -1
  674. package/dist/src/metrics/calculators/lead-time.js +0 -82
  675. package/dist/src/metrics/calculators/lead-time.js.map +0 -1
  676. package/dist/src/metrics/calculators/mttr.d.ts +0 -21
  677. package/dist/src/metrics/calculators/mttr.d.ts.map +0 -1
  678. package/dist/src/metrics/calculators/mttr.js +0 -60
  679. package/dist/src/metrics/calculators/mttr.js.map +0 -1
  680. package/dist/src/metrics/dora-calculator.d.ts +0 -28
  681. package/dist/src/metrics/dora-calculator.d.ts.map +0 -1
  682. package/dist/src/metrics/dora-calculator.js +0 -117
  683. package/dist/src/metrics/dora-calculator.js.map +0 -1
  684. package/dist/src/metrics/github-client.d.ts +0 -51
  685. package/dist/src/metrics/github-client.d.ts.map +0 -1
  686. package/dist/src/metrics/github-client.js +0 -133
  687. package/dist/src/metrics/github-client.js.map +0 -1
  688. package/dist/src/metrics/report-generator.d.ts +0 -17
  689. package/dist/src/metrics/report-generator.d.ts.map +0 -1
  690. package/dist/src/metrics/report-generator.js +0 -403
  691. package/dist/src/metrics/report-generator.js.map +0 -1
  692. package/dist/src/metrics/types.d.ts +0 -112
  693. package/dist/src/metrics/types.d.ts.map +0 -1
  694. package/dist/src/metrics/types.js +0 -10
  695. package/dist/src/metrics/types.js.map +0 -1
  696. package/dist/src/metrics/utils/percentile.d.ts +0 -25
  697. package/dist/src/metrics/utils/percentile.d.ts.map +0 -1
  698. package/dist/src/metrics/utils/percentile.js +0 -46
  699. package/dist/src/metrics/utils/percentile.js.map +0 -1
  700. package/dist/src/metrics/utils/tier-classifier.d.ts +0 -61
  701. package/dist/src/metrics/utils/tier-classifier.d.ts.map +0 -1
  702. package/dist/src/metrics/utils/tier-classifier.js +0 -100
  703. package/dist/src/metrics/utils/tier-classifier.js.map +0 -1
  704. package/dist/src/testing/test-generator.d.ts +0 -117
  705. package/dist/src/testing/test-generator.d.ts.map +0 -1
  706. package/dist/src/testing/test-generator.js +0 -370
  707. package/dist/src/testing/test-generator.js.map +0 -1
  708. package/dist/src/types/cost-tracking.d.ts +0 -43
  709. package/dist/src/types/cost-tracking.d.ts.map +0 -1
  710. package/dist/src/types/cost-tracking.js +0 -8
  711. package/dist/src/types/cost-tracking.js.map +0 -1
  712. package/dist/src/types/model-selection.d.ts +0 -53
  713. package/dist/src/types/model-selection.d.ts.map +0 -1
  714. package/dist/src/types/model-selection.js +0 -12
  715. package/dist/src/types/model-selection.js.map +0 -1
  716. package/dist/src/utils/agents-md-compiler.d.ts +0 -68
  717. package/dist/src/utils/agents-md-compiler.d.ts.map +0 -1
  718. package/dist/src/utils/agents-md-compiler.js +0 -420
  719. package/dist/src/utils/agents-md-compiler.js.map +0 -1
  720. package/dist/src/utils/auth-helpers.d.ts +0 -58
  721. package/dist/src/utils/auth-helpers.d.ts.map +0 -1
  722. package/dist/src/utils/auth-helpers.js +0 -108
  723. package/dist/src/utils/auth-helpers.js.map +0 -1
  724. package/dist/src/utils/auto-install.d.ts +0 -47
  725. package/dist/src/utils/auto-install.d.ts.map +0 -1
  726. package/dist/src/utils/auto-install.js +0 -211
  727. package/dist/src/utils/auto-install.js.map +0 -1
  728. package/dist/src/utils/claude-cli-detector.d.ts +0 -75
  729. package/dist/src/utils/claude-cli-detector.d.ts.map +0 -1
  730. package/dist/src/utils/claude-cli-detector.js +0 -285
  731. package/dist/src/utils/claude-cli-detector.js.map +0 -1
  732. package/dist/src/utils/cost-reporter.d.ts +0 -58
  733. package/dist/src/utils/cost-reporter.d.ts.map +0 -1
  734. package/dist/src/utils/cost-reporter.js +0 -224
  735. package/dist/src/utils/cost-reporter.js.map +0 -1
  736. package/dist/src/utils/docs-preview/config-generator.d.ts +0 -46
  737. package/dist/src/utils/docs-preview/config-generator.d.ts.map +0 -1
  738. package/dist/src/utils/docs-preview/config-generator.js +0 -377
  739. package/dist/src/utils/docs-preview/config-generator.js.map +0 -1
  740. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts +0 -38
  741. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts.map +0 -1
  742. package/dist/src/utils/docs-preview/docusaurus-setup.js +0 -177
  743. package/dist/src/utils/docs-preview/docusaurus-setup.js.map +0 -1
  744. package/dist/src/utils/docs-preview/index.d.ts +0 -7
  745. package/dist/src/utils/docs-preview/index.d.ts.map +0 -1
  746. package/dist/src/utils/docs-preview/index.js +0 -7
  747. package/dist/src/utils/docs-preview/index.js.map +0 -1
  748. package/dist/src/utils/docs-preview/package-installer.d.ts +0 -42
  749. package/dist/src/utils/docs-preview/package-installer.d.ts.map +0 -1
  750. package/dist/src/utils/docs-preview/package-installer.js +0 -182
  751. package/dist/src/utils/docs-preview/package-installer.js.map +0 -1
  752. package/dist/src/utils/docs-preview/server-manager.d.ts +0 -30
  753. package/dist/src/utils/docs-preview/server-manager.d.ts.map +0 -1
  754. package/dist/src/utils/docs-preview/server-manager.js +0 -212
  755. package/dist/src/utils/docs-preview/server-manager.js.map +0 -1
  756. package/dist/src/utils/docs-preview/sidebar-builder.d.ts +0 -32
  757. package/dist/src/utils/docs-preview/sidebar-builder.d.ts.map +0 -1
  758. package/dist/src/utils/docs-preview/sidebar-builder.js +0 -202
  759. package/dist/src/utils/docs-preview/sidebar-builder.js.map +0 -1
  760. package/dist/src/utils/docs-preview/types.d.ts +0 -57
  761. package/dist/src/utils/docs-preview/types.d.ts.map +0 -1
  762. package/dist/src/utils/docs-preview/types.js +0 -2
  763. package/dist/src/utils/docs-preview/types.js.map +0 -1
  764. package/dist/src/utils/env-file.d.ts +0 -88
  765. package/dist/src/utils/env-file.d.ts.map +0 -1
  766. package/dist/src/utils/env-file.js +0 -180
  767. package/dist/src/utils/env-file.js.map +0 -1
  768. package/dist/src/utils/env-multi-project-parser.d.ts +0 -220
  769. package/dist/src/utils/env-multi-project-parser.d.ts.map +0 -1
  770. package/dist/src/utils/env-multi-project-parser.js +0 -403
  771. package/dist/src/utils/env-multi-project-parser.js.map +0 -1
  772. package/dist/src/utils/esm-helpers.d.ts +0 -50
  773. package/dist/src/utils/esm-helpers.d.ts.map +0 -1
  774. package/dist/src/utils/esm-helpers.js +0 -57
  775. package/dist/src/utils/esm-helpers.js.map +0 -1
  776. package/dist/src/utils/execFileNoThrow.d.ts +0 -99
  777. package/dist/src/utils/execFileNoThrow.d.ts.map +0 -1
  778. package/dist/src/utils/execFileNoThrow.js +0 -137
  779. package/dist/src/utils/execFileNoThrow.js.map +0 -1
  780. package/dist/src/utils/external-resource-validator.d.ts +0 -102
  781. package/dist/src/utils/external-resource-validator.d.ts.map +0 -1
  782. package/dist/src/utils/external-resource-validator.js +0 -442
  783. package/dist/src/utils/external-resource-validator.js.map +0 -1
  784. package/dist/src/utils/generate-skills-index.d.ts +0 -24
  785. package/dist/src/utils/generate-skills-index.d.ts.map +0 -1
  786. package/dist/src/utils/generate-skills-index.js +0 -410
  787. package/dist/src/utils/generate-skills-index.js.map +0 -1
  788. package/dist/src/utils/model-selection.d.ts +0 -75
  789. package/dist/src/utils/model-selection.d.ts.map +0 -1
  790. package/dist/src/utils/model-selection.js +0 -204
  791. package/dist/src/utils/model-selection.js.map +0 -1
  792. package/dist/src/utils/plugin-validator.d.ts +0 -161
  793. package/dist/src/utils/plugin-validator.d.ts.map +0 -1
  794. package/dist/src/utils/plugin-validator.js +0 -558
  795. package/dist/src/utils/plugin-validator.js.map +0 -1
  796. package/dist/src/utils/pricing-constants.d.ts +0 -70
  797. package/dist/src/utils/pricing-constants.d.ts.map +0 -1
  798. package/dist/src/utils/pricing-constants.js +0 -71
  799. package/dist/src/utils/pricing-constants.js.map +0 -1
  800. package/dist/src/utils/project-detection.d.ts +0 -141
  801. package/dist/src/utils/project-detection.d.ts.map +0 -1
  802. package/dist/src/utils/project-detection.js +0 -321
  803. package/dist/src/utils/project-detection.js.map +0 -1
  804. package/dist/src/utils/string-utils.d.ts +0 -40
  805. package/dist/src/utils/string-utils.d.ts.map +0 -1
  806. package/dist/src/utils/string-utils.js +0 -58
  807. package/dist/src/utils/string-utils.js.map +0 -1
  808. package/dist/src/utils/translation.d.ts +0 -187
  809. package/dist/src/utils/translation.d.ts.map +0 -1
  810. package/dist/src/utils/translation.js +0 -414
  811. package/dist/src/utils/translation.js.map +0 -1
@@ -1,268 +0,0 @@
1
- /**
2
- * Quality Gate Decider - PASS/CONCERNS/FAIL decision logic
3
- *
4
- * @module qa/quality-gate-decider
5
- * @since v0.8.0
6
- */
7
- /**
8
- * Default quality gate thresholds (BMAD pattern)
9
- */
10
- export const DEFAULT_THRESHOLDS = {
11
- fail: {
12
- riskScore: 9.0, // Risk >= 9.0 → FAIL
13
- testCoverage: 60, // Coverage < 60% → FAIL
14
- specQuality: 50, // Spec score < 50 → FAIL
15
- criticalVulnerabilities: 1, // Critical vulns >= 1 → FAIL
16
- },
17
- concerns: {
18
- riskScore: 6.0, // Risk >= 6.0 → CONCERNS
19
- testCoverage: 80, // Coverage < 80% → CONCERNS
20
- specQuality: 70, // Spec score < 70 → CONCERNS
21
- highVulnerabilities: 1, // High vulns >= 1 → CONCERNS
22
- },
23
- };
24
- export class QualityGateDecider {
25
- constructor(thresholds = DEFAULT_THRESHOLDS) {
26
- this.thresholds = thresholds;
27
- }
28
- /**
29
- * Main decision logic - determine PASS/CONCERNS/FAIL
30
- *
31
- * @param assessment - Quality assessment result from AI judge
32
- * @param testCoverage - Optional test coverage result
33
- * @param securityAudit - Optional security audit result
34
- * @returns Quality gate result with decision and issues
35
- */
36
- decide(assessment, testCoverage, securityAudit) {
37
- const blockers = [];
38
- const concerns = [];
39
- const recommendations = [];
40
- // Check 1: Risk Assessment (BMAD pattern)
41
- if (assessment.risk_assessment) {
42
- this.assessRisks(assessment.risk_assessment, blockers, concerns);
43
- }
44
- // Check 2: Test Coverage
45
- if (testCoverage) {
46
- this.assessTestCoverage(testCoverage, blockers, concerns);
47
- }
48
- // Check 3: Spec Quality
49
- this.assessSpecQuality(assessment, blockers, concerns, recommendations);
50
- // Check 4: Security Vulnerabilities
51
- if (securityAudit) {
52
- this.assessSecurity(securityAudit, blockers, concerns);
53
- }
54
- // Make final decision
55
- const { decision, reasoning } = this.makeDecision(blockers, concerns);
56
- return {
57
- decision,
58
- blockers,
59
- concerns,
60
- recommendations,
61
- reasoning,
62
- };
63
- }
64
- /**
65
- * Assess risks and categorize into blockers/concerns
66
- */
67
- assessRisks(riskAssessment, blockers, concerns) {
68
- const overallRisk = riskAssessment.overall_risk_score;
69
- // Check overall risk score first
70
- if (overallRisk >= this.thresholds.fail.riskScore) {
71
- // Find all critical risks (score >= 9.0)
72
- const criticalRisks = riskAssessment.risks.filter((r) => r.score >= this.thresholds.fail.riskScore);
73
- for (const risk of criticalRisks) {
74
- blockers.push({
75
- type: 'risk',
76
- severity: 'critical',
77
- title: `CRITICAL RISK: ${risk.title}`,
78
- description: `${risk.description} (Score: ${risk.score.toFixed(1)}/10)`,
79
- mitigation: risk.mitigation,
80
- location: risk.location,
81
- });
82
- }
83
- }
84
- else if (overallRisk >= this.thresholds.concerns.riskScore) {
85
- // Find all high risks (score 6.0-8.9)
86
- const highRisks = riskAssessment.risks.filter((r) => r.score >= this.thresholds.concerns.riskScore &&
87
- r.score < this.thresholds.fail.riskScore);
88
- for (const risk of highRisks) {
89
- concerns.push({
90
- type: 'risk',
91
- severity: 'high',
92
- title: `HIGH RISK: ${risk.title}`,
93
- description: `${risk.description} (Score: ${risk.score.toFixed(1)}/10)`,
94
- mitigation: risk.mitigation,
95
- location: risk.location,
96
- });
97
- }
98
- }
99
- }
100
- /**
101
- * Assess test coverage and identify gaps
102
- */
103
- assessTestCoverage(testCoverage, blockers, concerns) {
104
- const coverage = testCoverage.coverage_percentage;
105
- if (coverage < this.thresholds.fail.testCoverage) {
106
- blockers.push({
107
- type: 'test_coverage',
108
- severity: 'critical',
109
- title: 'Insufficient test coverage',
110
- description: `Coverage is ${coverage}% (minimum: ${this.thresholds.fail.testCoverage}%)`,
111
- mitigation: `Add tests to reach ${this.thresholds.fail.testCoverage}% coverage`,
112
- });
113
- }
114
- else if (coverage < this.thresholds.concerns.testCoverage) {
115
- concerns.push({
116
- type: 'test_coverage',
117
- severity: 'high',
118
- title: 'Test coverage below target',
119
- description: `Coverage is ${coverage}% (target: ${this.thresholds.concerns.testCoverage}%)`,
120
- mitigation: `Add tests to reach ${this.thresholds.concerns.testCoverage}% coverage`,
121
- });
122
- }
123
- // Check for AC-ID coverage gaps
124
- for (const gap of testCoverage.gaps) {
125
- concerns.push({
126
- type: 'test_gap',
127
- severity: 'high',
128
- title: `Missing test: ${gap.acceptance_criteria}`,
129
- description: gap.description,
130
- mitigation: gap.recommendation,
131
- });
132
- }
133
- }
134
- /**
135
- * Assess specification quality
136
- */
137
- assessSpecQuality(assessment, blockers, concerns, recommendations) {
138
- const score = assessment.overall_score;
139
- if (score < this.thresholds.fail.specQuality) {
140
- blockers.push({
141
- type: 'spec_quality',
142
- severity: 'critical',
143
- title: 'Specification quality unacceptable',
144
- description: `Score is ${score}/100 (minimum: ${this.thresholds.fail.specQuality})`,
145
- mitigation: 'Revise spec to address critical issues',
146
- });
147
- }
148
- else if (score < this.thresholds.concerns.specQuality) {
149
- concerns.push({
150
- type: 'spec_quality',
151
- severity: 'high',
152
- title: 'Specification quality needs improvement',
153
- description: `Score is ${score}/100 (target: ${this.thresholds.concerns.specQuality})`,
154
- mitigation: 'Address HIGH priority suggestions',
155
- });
156
- }
157
- // Add dimension-specific issues
158
- for (const issue of assessment.issues) {
159
- const gateIssue = {
160
- type: `spec_${issue.dimension}`,
161
- severity: issue.severity === 'critical' ? 'critical' : issue.severity === 'major' ? 'high' : 'medium',
162
- title: `${issue.dimension.toUpperCase()}: ${issue.description}`,
163
- description: issue.impact,
164
- location: issue.location,
165
- };
166
- if (issue.severity === 'critical') {
167
- blockers.push(gateIssue);
168
- }
169
- else if (issue.severity === 'major') {
170
- concerns.push(gateIssue);
171
- }
172
- else {
173
- recommendations.push(gateIssue);
174
- }
175
- }
176
- }
177
- /**
178
- * Assess security vulnerabilities
179
- */
180
- assessSecurity(securityAudit, blockers, concerns) {
181
- const deps = securityAudit.dependency_vulnerabilities;
182
- // Check critical vulnerabilities
183
- if (deps.critical >= this.thresholds.fail.criticalVulnerabilities) {
184
- const criticalVulns = deps.issues.filter((v) => v.severity === 'critical');
185
- for (const vuln of criticalVulns) {
186
- blockers.push({
187
- type: 'security',
188
- severity: 'critical',
189
- title: `Critical vulnerability: ${vuln.vulnerability}`,
190
- description: `Package: ${vuln.package}@${vuln.version}`,
191
- mitigation: vuln.fix,
192
- });
193
- }
194
- }
195
- // Check high vulnerabilities
196
- if (deps.high >= this.thresholds.concerns.highVulnerabilities) {
197
- const highVulns = deps.issues.filter((v) => v.severity === 'high');
198
- for (const vuln of highVulns) {
199
- concerns.push({
200
- type: 'security',
201
- severity: 'high',
202
- title: `High vulnerability: ${vuln.vulnerability}`,
203
- description: `Package: ${vuln.package}@${vuln.version}`,
204
- mitigation: vuln.fix,
205
- });
206
- }
207
- }
208
- // Check OWASP failures
209
- const owaspFailures = securityAudit.owasp_checks.filter((c) => c.status === 'FAIL');
210
- for (const check of owaspFailures) {
211
- concerns.push({
212
- type: 'security',
213
- severity: 'high',
214
- title: `OWASP ${check.category}`,
215
- description: check.details,
216
- mitigation: check.recommendation,
217
- });
218
- }
219
- }
220
- /**
221
- * Make final decision based on blockers and concerns
222
- */
223
- makeDecision(blockers, concerns) {
224
- if (blockers.length > 0) {
225
- return {
226
- decision: 'FAIL',
227
- reasoning: `Found ${blockers.length} blocker(s) that MUST be fixed before proceeding.`,
228
- };
229
- }
230
- if (concerns.length > 0) {
231
- return {
232
- decision: 'CONCERNS',
233
- reasoning: `Found ${concerns.length} concern(s) that SHOULD be addressed before release.`,
234
- };
235
- }
236
- return {
237
- decision: 'PASS',
238
- reasoning: 'All quality checks passed. Ready for production.',
239
- };
240
- }
241
- /**
242
- * Get decision icon/emoji
243
- */
244
- static getDecisionIcon(decision) {
245
- switch (decision) {
246
- case 'PASS':
247
- return '🟢';
248
- case 'CONCERNS':
249
- return '🟡';
250
- case 'FAIL':
251
- return '🔴';
252
- }
253
- }
254
- /**
255
- * Get decision color (for terminal output)
256
- */
257
- static getDecisionColor(decision) {
258
- switch (decision) {
259
- case 'PASS':
260
- return 'green';
261
- case 'CONCERNS':
262
- return 'yellow';
263
- case 'FAIL':
264
- return 'red';
265
- }
266
- }
267
- }
268
- //# sourceMappingURL=quality-gate-decider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"quality-gate-decider.js","sourceRoot":"","sources":["../../../../src/core/qa/quality-gate-decider.ts"],"names":[],"mappings":"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"}
@@ -1,126 +0,0 @@
1
- /**
2
- * Risk Calculator using BMAD pattern (Probability × Impact)
3
- *
4
- * @module qa/risk-calculator
5
- * @since v0.8.0
6
- */
7
- import { Risk, RiskAssessmentResult, RiskCategory, RiskSeverity } from './types';
8
- export declare class RiskCalculator {
9
- /**
10
- * Calculate risk score using BMAD formula: P × I
11
- *
12
- * @param probability - Probability of risk occurring (0.0-1.0)
13
- * @param impact - Impact severity if risk occurs (1-10)
14
- * @returns Risk score (0.0-10.0)
15
- * @throws Error if probability or impact out of range
16
- *
17
- * @example
18
- * ```typescript
19
- * const score = RiskCalculator.calculateRiskScore(0.9, 10);
20
- * // Returns: 9.0 (CRITICAL)
21
- * ```
22
- */
23
- static calculateRiskScore(probability: number, impact: number): number;
24
- /**
25
- * Determine severity level based on risk score
26
- *
27
- * @param score - Risk score (0.0-10.0)
28
- * @returns Severity level
29
- *
30
- * Thresholds:
31
- * - 9.0-10.0: CRITICAL (must fix immediately)
32
- * - 6.0-8.9: HIGH (should fix before release)
33
- * - 3.0-5.9: MEDIUM (monitor, fix if time permits)
34
- * - 0.0-2.9: LOW (acceptable risk)
35
- */
36
- static determineSeverity(score: number): RiskSeverity;
37
- /**
38
- * Calculate overall risk score using weighted average
39
- *
40
- * Higher severity risks are weighted more heavily:
41
- * - CRITICAL: 1.0
42
- * - HIGH: 0.7
43
- * - MEDIUM: 0.4
44
- * - LOW: 0.1
45
- *
46
- * @param risks - Array of risk objects
47
- * @returns Overall weighted risk score (0.0-10.0)
48
- *
49
- * @example
50
- * ```typescript
51
- * const risks = [
52
- * { score: 9.0, severity: 'CRITICAL', ... },
53
- * { score: 6.0, severity: 'HIGH', ... },
54
- * { score: 2.0, severity: 'LOW', ... }
55
- * ];
56
- * const overall = RiskCalculator.calculateOverallRisk(risks);
57
- * // Returns: ~7.5 (weighted towards critical risks)
58
- * ```
59
- */
60
- static calculateOverallRisk(risks: Risk[]): number;
61
- /**
62
- * Group risks by category and calculate category scores
63
- *
64
- * @param risks - Array of risk objects
65
- * @returns Object with risk scores per category
66
- *
67
- * @example
68
- * ```typescript
69
- * const grouped = RiskCalculator.groupRisksByCategory(risks);
70
- * // Returns: { security: 7.5, technical: 4.2, implementation: 3.0, operational: 2.1 }
71
- * ```
72
- */
73
- static groupRisksByCategory(risks: Risk[]): Record<RiskCategory, number>;
74
- /**
75
- * Normalize probability from descriptive text to numeric value
76
- *
77
- * @param description - Text description (low/medium/high or percentage)
78
- * @returns Numeric probability (0.0-1.0)
79
- *
80
- * @example
81
- * ```typescript
82
- * RiskCalculator.normalizeProbability('high'); // 0.8
83
- * RiskCalculator.normalizeProbability('50%'); // 0.5
84
- * RiskCalculator.normalizeProbability('0.9'); // 0.9
85
- * ```
86
- */
87
- static normalizeProbability(description: string): number;
88
- /**
89
- * Normalize impact from descriptive text to numeric value
90
- *
91
- * @param description - Text description (minor/moderate/major/critical)
92
- * @returns Numeric impact (1-10)
93
- *
94
- * @example
95
- * ```typescript
96
- * RiskCalculator.normalizeImpact('critical'); // 10
97
- * RiskCalculator.normalizeImpact('moderate'); // 5
98
- * ```
99
- */
100
- static normalizeImpact(description: string): number;
101
- /**
102
- * Create a risk object from raw data
103
- *
104
- * @param data - Partial risk data
105
- * @returns Complete risk object with calculated fields
106
- */
107
- static createRisk(data: {
108
- id: string;
109
- category: RiskCategory;
110
- title: string;
111
- description: string;
112
- probability: number | string;
113
- impact: number | string;
114
- mitigation: string;
115
- location: string;
116
- acceptance_criteria?: string;
117
- }): Risk;
118
- /**
119
- * Calculate full risk assessment result
120
- *
121
- * @param risks - Array of risk objects
122
- * @returns Complete risk assessment result
123
- */
124
- static calculateAssessment(risks: Risk[]): RiskAssessmentResult;
125
- }
126
- //# sourceMappingURL=risk-calculator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"risk-calculator.d.ts","sourceRoot":"","sources":["../../../../src/core/qa/risk-calculator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEjF,qBAAa,cAAc;IACzB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAUtE;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY;IAOrD;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM;IAsBlD;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC;IAYxE;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAqCxD;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAmCnD;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE;QACtB,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,YAAY,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;QAC7B,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,mBAAmB,CAAC,EAAE,MAAM,CAAC;KAC9B,GAAG,IAAI;IA4BR;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,oBAAoB;CAOhE"}
@@ -1,247 +0,0 @@
1
- /**
2
- * Risk Calculator using BMAD pattern (Probability × Impact)
3
- *
4
- * @module qa/risk-calculator
5
- * @since v0.8.0
6
- */
7
- export class RiskCalculator {
8
- /**
9
- * Calculate risk score using BMAD formula: P × I
10
- *
11
- * @param probability - Probability of risk occurring (0.0-1.0)
12
- * @param impact - Impact severity if risk occurs (1-10)
13
- * @returns Risk score (0.0-10.0)
14
- * @throws Error if probability or impact out of range
15
- *
16
- * @example
17
- * ```typescript
18
- * const score = RiskCalculator.calculateRiskScore(0.9, 10);
19
- * // Returns: 9.0 (CRITICAL)
20
- * ```
21
- */
22
- static calculateRiskScore(probability, impact) {
23
- if (probability < 0 || probability > 1) {
24
- throw new Error(`Probability must be 0.0-1.0, got ${probability}`);
25
- }
26
- if (impact < 1 || impact > 10) {
27
- throw new Error(`Impact must be 1-10, got ${impact}`);
28
- }
29
- return probability * impact;
30
- }
31
- /**
32
- * Determine severity level based on risk score
33
- *
34
- * @param score - Risk score (0.0-10.0)
35
- * @returns Severity level
36
- *
37
- * Thresholds:
38
- * - 9.0-10.0: CRITICAL (must fix immediately)
39
- * - 6.0-8.9: HIGH (should fix before release)
40
- * - 3.0-5.9: MEDIUM (monitor, fix if time permits)
41
- * - 0.0-2.9: LOW (acceptable risk)
42
- */
43
- static determineSeverity(score) {
44
- if (score >= 9.0)
45
- return 'CRITICAL';
46
- if (score >= 6.0)
47
- return 'HIGH';
48
- if (score >= 3.0)
49
- return 'MEDIUM';
50
- return 'LOW';
51
- }
52
- /**
53
- * Calculate overall risk score using weighted average
54
- *
55
- * Higher severity risks are weighted more heavily:
56
- * - CRITICAL: 1.0
57
- * - HIGH: 0.7
58
- * - MEDIUM: 0.4
59
- * - LOW: 0.1
60
- *
61
- * @param risks - Array of risk objects
62
- * @returns Overall weighted risk score (0.0-10.0)
63
- *
64
- * @example
65
- * ```typescript
66
- * const risks = [
67
- * { score: 9.0, severity: 'CRITICAL', ... },
68
- * { score: 6.0, severity: 'HIGH', ... },
69
- * { score: 2.0, severity: 'LOW', ... }
70
- * ];
71
- * const overall = RiskCalculator.calculateOverallRisk(risks);
72
- * // Returns: ~7.5 (weighted towards critical risks)
73
- * ```
74
- */
75
- static calculateOverallRisk(risks) {
76
- if (risks.length === 0)
77
- return 0;
78
- const weights = {
79
- CRITICAL: 1.0,
80
- HIGH: 0.7,
81
- MEDIUM: 0.4,
82
- LOW: 0.1,
83
- };
84
- let weightedSum = 0;
85
- let totalWeight = 0;
86
- for (const risk of risks) {
87
- const weight = weights[risk.severity];
88
- weightedSum += risk.score * weight;
89
- totalWeight += weight;
90
- }
91
- return totalWeight > 0 ? weightedSum / totalWeight : 0;
92
- }
93
- /**
94
- * Group risks by category and calculate category scores
95
- *
96
- * @param risks - Array of risk objects
97
- * @returns Object with risk scores per category
98
- *
99
- * @example
100
- * ```typescript
101
- * const grouped = RiskCalculator.groupRisksByCategory(risks);
102
- * // Returns: { security: 7.5, technical: 4.2, implementation: 3.0, operational: 2.1 }
103
- * ```
104
- */
105
- static groupRisksByCategory(risks) {
106
- const categories = ['security', 'technical', 'implementation', 'operational'];
107
- const result = {};
108
- for (const category of categories) {
109
- const categoryRisks = risks.filter((r) => r.category === category);
110
- result[category] = this.calculateOverallRisk(categoryRisks);
111
- }
112
- return result;
113
- }
114
- /**
115
- * Normalize probability from descriptive text to numeric value
116
- *
117
- * @param description - Text description (low/medium/high or percentage)
118
- * @returns Numeric probability (0.0-1.0)
119
- *
120
- * @example
121
- * ```typescript
122
- * RiskCalculator.normalizeProbability('high'); // 0.8
123
- * RiskCalculator.normalizeProbability('50%'); // 0.5
124
- * RiskCalculator.normalizeProbability('0.9'); // 0.9
125
- * ```
126
- */
127
- static normalizeProbability(description) {
128
- const normalized = description.toLowerCase().trim();
129
- // Handle percentage
130
- if (normalized.includes('%')) {
131
- const percent = parseFloat(normalized.replace('%', ''));
132
- return Math.min(Math.max(percent / 100, 0), 1);
133
- }
134
- // Handle decimal
135
- if (/^[0-9.]+$/.test(normalized)) {
136
- const value = parseFloat(normalized);
137
- return Math.min(Math.max(value, 0), 1);
138
- }
139
- // Handle descriptive text
140
- switch (normalized) {
141
- case 'low':
142
- case 'unlikely':
143
- return 0.2;
144
- case 'medium':
145
- case 'possible':
146
- case 'moderate':
147
- return 0.5;
148
- case 'high':
149
- case 'likely':
150
- case 'probable':
151
- return 0.8;
152
- case 'very high':
153
- case 'certain':
154
- case 'definite':
155
- return 0.95;
156
- default:
157
- return 0.5; // Default to medium if unknown
158
- }
159
- }
160
- /**
161
- * Normalize impact from descriptive text to numeric value
162
- *
163
- * @param description - Text description (minor/moderate/major/critical)
164
- * @returns Numeric impact (1-10)
165
- *
166
- * @example
167
- * ```typescript
168
- * RiskCalculator.normalizeImpact('critical'); // 10
169
- * RiskCalculator.normalizeImpact('moderate'); // 5
170
- * ```
171
- */
172
- static normalizeImpact(description) {
173
- const normalized = description.toLowerCase().trim();
174
- // Handle numeric
175
- if (/^[0-9]+$/.test(normalized)) {
176
- const value = parseInt(normalized, 10);
177
- return Math.min(Math.max(value, 1), 10);
178
- }
179
- // Handle descriptive text
180
- switch (normalized) {
181
- case 'minor':
182
- case 'trivial':
183
- case 'cosmetic':
184
- return 2;
185
- case 'moderate':
186
- case 'medium':
187
- case 'some impact':
188
- return 5;
189
- case 'major':
190
- case 'significant':
191
- case 'high':
192
- return 8;
193
- case 'critical':
194
- case 'severe':
195
- case 'catastrophic':
196
- case 'system failure':
197
- case 'data loss':
198
- case 'security breach':
199
- return 10;
200
- default:
201
- return 5; // Default to moderate if unknown
202
- }
203
- }
204
- /**
205
- * Create a risk object from raw data
206
- *
207
- * @param data - Partial risk data
208
- * @returns Complete risk object with calculated fields
209
- */
210
- static createRisk(data) {
211
- // Normalize probability and impact
212
- const probability = typeof data.probability === 'string'
213
- ? this.normalizeProbability(data.probability)
214
- : data.probability;
215
- const impact = typeof data.impact === 'string' ? this.normalizeImpact(data.impact) : data.impact;
216
- // Calculate score and severity
217
- const score = this.calculateRiskScore(probability, impact);
218
- const severity = this.determineSeverity(score);
219
- return {
220
- id: data.id,
221
- category: data.category,
222
- title: data.title,
223
- description: data.description,
224
- probability,
225
- impact,
226
- score,
227
- severity,
228
- mitigation: data.mitigation,
229
- location: data.location,
230
- acceptance_criteria: data.acceptance_criteria,
231
- };
232
- }
233
- /**
234
- * Calculate full risk assessment result
235
- *
236
- * @param risks - Array of risk objects
237
- * @returns Complete risk assessment result
238
- */
239
- static calculateAssessment(risks) {
240
- return {
241
- risks,
242
- overall_risk_score: this.calculateOverallRisk(risks),
243
- risk_by_category: this.groupRisksByCategory(risks),
244
- };
245
- }
246
- }
247
- //# sourceMappingURL=risk-calculator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"risk-calculator.js","sourceRoot":"","sources":["../../../../src/core/qa/risk-calculator.ts"],"names":[],"mappings":"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"}