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,61 +0,0 @@
1
- /**
2
- * Deployment Frequency Calculator
3
- *
4
- * Calculates how often deployments occur (DORA metric #1)
5
- * Data source: GitHub Releases API
6
- */
7
- import { classifyDeploymentFrequency } from '../utils/tier-classifier.js';
8
- /**
9
- * Calculate Deployment Frequency from releases
10
- *
11
- * Methodology:
12
- * 1. Count releases in last 30 days
13
- * 2. Calculate deploys per month
14
- * 3. Classify into DORA tier
15
- *
16
- * @param releases - Array of GitHub releases
17
- * @returns Deployment frequency metric
18
- */
19
- export function calculateDeploymentFrequency(releases) {
20
- // Handle zero releases
21
- if (releases.length === 0) {
22
- return {
23
- value: 0,
24
- unit: 'deploys/month',
25
- tier: 'N/A',
26
- description: 'No releases yet',
27
- };
28
- }
29
- // Count releases
30
- const deployCount = releases.length;
31
- // Calculate deploys per year (for tier classification)
32
- // Assumes 30-day window, so multiply by 12 to get annual rate
33
- const deploysPerYear = (deployCount / 30) * 365;
34
- // Classify tier
35
- const tier = classifyDeploymentFrequency(deploysPerYear);
36
- // Generate description
37
- let description = '';
38
- switch (tier) {
39
- case 'Elite':
40
- description = 'On-demand deployment capability (multiple deploys per day)';
41
- break;
42
- case 'High':
43
- description = 'High deployment frequency (weekly to daily)';
44
- break;
45
- case 'Medium':
46
- description = 'Moderate deployment frequency (monthly to weekly)';
47
- break;
48
- case 'Low':
49
- description = 'Low deployment frequency (less than monthly)';
50
- break;
51
- default:
52
- description = 'No data available';
53
- }
54
- return {
55
- value: deployCount,
56
- unit: 'deploys/month',
57
- tier,
58
- description,
59
- };
60
- }
61
- //# sourceMappingURL=deployment-frequency.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deployment-frequency.js","sourceRoot":"","sources":["../../../../src/metrics/calculators/deployment-frequency.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAE1E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,4BAA4B,CAC1C,QAAmB;IAEnB,uBAAuB;IACvB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO;YACL,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,KAAK;YACX,WAAW,EAAE,iBAAiB;SAC/B,CAAC;IACJ,CAAC;IAED,iBAAiB;IACjB,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC;IAEpC,uDAAuD;IACvD,8DAA8D;IAC9D,MAAM,cAAc,GAAG,CAAC,WAAW,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;IAEhD,gBAAgB;IAChB,MAAM,IAAI,GAAG,2BAA2B,CAAC,cAAc,CAAC,CAAC;IAEzD,uBAAuB;IACvB,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,OAAO;YACV,WAAW,GAAG,4DAA4D,CAAC;YAC3E,MAAM;QACR,KAAK,MAAM;YACT,WAAW,GAAG,6CAA6C,CAAC;YAC5D,MAAM;QACR,KAAK,QAAQ;YACX,WAAW,GAAG,mDAAmD,CAAC;YAClE,MAAM;QACR,KAAK,KAAK;YACR,WAAW,GAAG,8CAA8C,CAAC;YAC7D,MAAM;QACR;YACE,WAAW,GAAG,mBAAmB,CAAC;IACtC,CAAC;IAED,OAAO;QACL,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,eAAe;QACrB,IAAI;QACJ,WAAW;KACZ,CAAC;AACJ,CAAC"}
@@ -1,22 +0,0 @@
1
- /**
2
- * Lead Time for Changes Calculator
3
- *
4
- * Calculates time from commit to deployment (DORA metric #2)
5
- * Data source: Git commits + GitHub Releases API
6
- */
7
- import { Release, Commit, LeadTimeMetric } from '../types.js';
8
- /**
9
- * Calculate Lead Time for Changes
10
- *
11
- * Methodology:
12
- * 1. For each release, find all commits since previous release
13
- * 2. Calculate time delta (commit date → release date) for each commit
14
- * 3. Compute average, P50, P90
15
- * 4. Classify into DORA tier
16
- *
17
- * @param releases - Array of GitHub releases (sorted by date desc)
18
- * @param commits - Array of Git commits
19
- * @returns Lead time metric
20
- */
21
- export declare function calculateLeadTime(releases: Release[], commits: Commit[]): LeadTimeMetric;
22
- //# sourceMappingURL=lead-time.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lead-time.d.ts","sourceRoot":"","sources":["../../../../src/metrics/calculators/lead-time.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAI9D;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,EAAE,MAAM,EAAE,GAChB,cAAc,CAwEhB"}
@@ -1,82 +0,0 @@
1
- /**
2
- * Lead Time for Changes Calculator
3
- *
4
- * Calculates time from commit to deployment (DORA metric #2)
5
- * Data source: Git commits + GitHub Releases API
6
- */
7
- import { classifyLeadTime } from '../utils/tier-classifier.js';
8
- import { calculatePercentile } from '../utils/percentile.js';
9
- /**
10
- * Calculate Lead Time for Changes
11
- *
12
- * Methodology:
13
- * 1. For each release, find all commits since previous release
14
- * 2. Calculate time delta (commit date → release date) for each commit
15
- * 3. Compute average, P50, P90
16
- * 4. Classify into DORA tier
17
- *
18
- * @param releases - Array of GitHub releases (sorted by date desc)
19
- * @param commits - Array of Git commits
20
- * @returns Lead time metric
21
- */
22
- export function calculateLeadTime(releases, commits) {
23
- // Handle zero releases
24
- if (releases.length === 0) {
25
- return {
26
- value: 0,
27
- unit: 'hours',
28
- tier: 'N/A',
29
- p50: 0,
30
- p90: 0,
31
- };
32
- }
33
- // Sort releases by date (newest first)
34
- const sortedReleases = [...releases].sort((a, b) => new Date(b.published_at).getTime() - new Date(a.published_at).getTime());
35
- // Calculate lead times for all commits
36
- const leadTimes = [];
37
- sortedReleases.forEach((release, index) => {
38
- const releaseDate = new Date(release.published_at);
39
- const previousReleaseDate = index < sortedReleases.length - 1
40
- ? new Date(sortedReleases[index + 1].published_at)
41
- : new Date(0); // Beginning of time for first release
42
- // Find commits between previous release and current release
43
- const releaseCommits = commits.filter(commit => {
44
- const commitDate = new Date(commit.commit.author.date);
45
- return commitDate > previousReleaseDate && commitDate <= releaseDate;
46
- });
47
- // Calculate lead time for each commit
48
- releaseCommits.forEach(commit => {
49
- const commitDate = new Date(commit.commit.author.date);
50
- const leadTimeMs = releaseDate.getTime() - commitDate.getTime();
51
- const leadTimeHours = leadTimeMs / (1000 * 60 * 60); // Convert to hours
52
- leadTimes.push(leadTimeHours);
53
- });
54
- });
55
- // Handle no commits (edge case)
56
- if (leadTimes.length === 0) {
57
- return {
58
- value: 0,
59
- unit: 'hours',
60
- tier: 'N/A',
61
- p50: 0,
62
- p90: 0,
63
- };
64
- }
65
- // Calculate statistics
66
- const averageLeadTime = leadTimes.reduce((sum, lt) => sum + lt, 0) / leadTimes.length;
67
- const p50 = calculatePercentile(leadTimes, 50);
68
- const p90 = calculatePercentile(leadTimes, 90);
69
- // Classify tier
70
- const tier = classifyLeadTime(averageLeadTime);
71
- // Choose appropriate unit
72
- const unit = averageLeadTime < 24 ? 'hours' : 'days';
73
- const value = unit === 'hours' ? averageLeadTime : averageLeadTime / 24;
74
- return {
75
- value: Math.round(value * 10) / 10, // Round to 1 decimal
76
- unit,
77
- tier,
78
- p50: Math.round(p50 * 10) / 10,
79
- p90: Math.round(p90 * 10) / 10,
80
- };
81
- }
82
- //# sourceMappingURL=lead-time.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lead-time.js","sourceRoot":"","sources":["../../../../src/metrics/calculators/lead-time.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- /**
2
- * Mean Time to Recovery (MTTR) Calculator
3
- *
4
- * Calculates average time to recover from incidents (DORA metric #4)
5
- * Data source: GitHub Issues with labels "incident" or "production-bug"
6
- */
7
- import { Issue, MTTRMetric } from '../types.js';
8
- /**
9
- * Calculate Mean Time to Recovery (MTTR)
10
- *
11
- * Methodology:
12
- * 1. Find closed issues labeled "incident" or "production-bug"
13
- * 2. Calculate time from created_at to closed_at for each
14
- * 3. Compute average, P50, P90
15
- * 4. Classify into DORA tier
16
- *
17
- * @param issues - Array of GitHub issues
18
- * @returns MTTR metric
19
- */
20
- export declare function calculateMTTR(issues: Issue[]): MTTRMetric;
21
- //# sourceMappingURL=mttr.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mttr.d.ts","sourceRoot":"","sources":["../../../../src/metrics/calculators/mttr.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIhD;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,CAiDzD"}
@@ -1,60 +0,0 @@
1
- /**
2
- * Mean Time to Recovery (MTTR) Calculator
3
- *
4
- * Calculates average time to recover from incidents (DORA metric #4)
5
- * Data source: GitHub Issues with labels "incident" or "production-bug"
6
- */
7
- import { classifyMTTR } from '../utils/tier-classifier.js';
8
- import { calculatePercentile } from '../utils/percentile.js';
9
- /**
10
- * Calculate Mean Time to Recovery (MTTR)
11
- *
12
- * Methodology:
13
- * 1. Find closed issues labeled "incident" or "production-bug"
14
- * 2. Calculate time from created_at to closed_at for each
15
- * 3. Compute average, P50, P90
16
- * 4. Classify into DORA tier
17
- *
18
- * @param issues - Array of GitHub issues
19
- * @returns MTTR metric
20
- */
21
- export function calculateMTTR(issues) {
22
- // Filter closed incidents
23
- const closedIncidents = issues.filter(issue => issue.state === 'closed' &&
24
- issue.closed_at !== null &&
25
- issue.labels.some(label => label.name === 'incident' || label.name === 'production-bug'));
26
- // Handle zero closed incidents
27
- if (closedIncidents.length === 0) {
28
- return {
29
- value: 0,
30
- unit: 'minutes',
31
- tier: 'N/A',
32
- p50: 0,
33
- p90: 0,
34
- };
35
- }
36
- // Calculate recovery times (in minutes)
37
- const recoveryTimes = closedIncidents.map(incident => {
38
- const createdAt = new Date(incident.created_at);
39
- const closedAt = new Date(incident.closed_at);
40
- const recoveryMs = closedAt.getTime() - createdAt.getTime();
41
- return recoveryMs / (1000 * 60); // Convert to minutes
42
- });
43
- // Calculate statistics
44
- const averageMTTR = recoveryTimes.reduce((sum, rt) => sum + rt, 0) / recoveryTimes.length;
45
- const p50 = calculatePercentile(recoveryTimes, 50);
46
- const p90 = calculatePercentile(recoveryTimes, 90);
47
- // Classify tier
48
- const tier = classifyMTTR(averageMTTR);
49
- // Choose appropriate unit
50
- const unit = averageMTTR < 60 ? 'minutes' : 'hours';
51
- const value = unit === 'minutes' ? averageMTTR : averageMTTR / 60;
52
- return {
53
- value: Math.round(value * 10) / 10, // Round to 1 decimal
54
- unit,
55
- tier,
56
- p50: Math.round(p50 * 10) / 10,
57
- p90: Math.round(p90 * 10) / 10,
58
- };
59
- }
60
- //# sourceMappingURL=mttr.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mttr.js","sourceRoot":"","sources":["../../../../src/metrics/calculators/mttr.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAAC,MAAe;IAC3C,0BAA0B;IAC1B,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CACnC,KAAK,CAAC,EAAE,CACN,KAAK,CAAC,KAAK,KAAK,QAAQ;QACxB,KAAK,CAAC,SAAS,KAAK,IAAI;QACxB,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CACxB,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAC7D,CACJ,CAAC;IAEF,+BAA+B;IAC/B,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO;YACL,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,CAAC;SACP,CAAC;IACJ,CAAC;IAED,wCAAwC;IACxC,MAAM,aAAa,GAAa,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;QAC7D,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAU,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;QAC5D,OAAO,UAAU,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAE,qBAAqB;IACzD,CAAC,CAAC,CAAC;IAEH,uBAAuB;IACvB,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC;IAC1F,MAAM,GAAG,GAAG,mBAAmB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,mBAAmB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAEnD,gBAAgB;IAChB,MAAM,IAAI,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAEvC,0BAA0B;IAC1B,MAAM,IAAI,GAAG,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;IACpD,MAAM,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,GAAG,EAAE,CAAC;IAElE,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,EAAG,qBAAqB;QAC1D,IAAI;QACJ,IAAI;QACJ,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE;QAC9B,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE;KAC/B,CAAC;AACJ,CAAC"}
@@ -1,28 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * DORA Metrics Calculator
4
- *
5
- * Main orchestrator that calculates all 4 DORA metrics
6
- * Entry point for CLI and GitHub Actions workflow
7
- */
8
- import { GitHubClient } from './github-client.js';
9
- import { DORAMetrics, Release, Issue } from './types.js';
10
- /**
11
- * Calculate all DORA metrics
12
- *
13
- * @param client - GitHub API client
14
- * @returns Complete DORA metrics with raw data
15
- */
16
- export declare function calculateDORAMetrics(client: GitHubClient): Promise<{
17
- metrics: DORAMetrics;
18
- releases: Release[];
19
- issues: Issue[];
20
- }>;
21
- /**
22
- * Write metrics to JSON file
23
- *
24
- * @param metrics - DORA metrics
25
- * @param filePath - Output file path
26
- */
27
- export declare function writeMetricsJSON(metrics: DORAMetrics, filePath: string): void;
28
- //# sourceMappingURL=dora-calculator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dora-calculator.d.ts","sourceRoot":"","sources":["../../../src/metrics/dora-calculator.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMlD,OAAO,EAAE,WAAW,EAAgB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEvE;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC;IACxE,OAAO,EAAE,WAAW,CAAC;IACrB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB,CAAC,CA+CD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAY7E"}
@@ -1,117 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * DORA Metrics Calculator
4
- *
5
- * Main orchestrator that calculates all 4 DORA metrics
6
- * Entry point for CLI and GitHub Actions workflow
7
- */
8
- import * as fs from 'fs';
9
- import * as path from 'path';
10
- import { GitHubClient } from './github-client.js';
11
- import { calculateDeploymentFrequency } from './calculators/deployment-frequency.js';
12
- import { calculateLeadTime } from './calculators/lead-time.js';
13
- import { calculateChangeFailureRate } from './calculators/change-failure-rate.js';
14
- import { calculateMTTR } from './calculators/mttr.js';
15
- import { generateMarkdownReport, writeReport } from './report-generator.js';
16
- /**
17
- * Calculate all DORA metrics
18
- *
19
- * @param client - GitHub API client
20
- * @returns Complete DORA metrics with raw data
21
- */
22
- export async function calculateDORAMetrics(client) {
23
- // Query data from GitHub (last 30 days)
24
- const since = new Date();
25
- since.setDate(since.getDate() - 30);
26
- console.log('📊 Fetching data from GitHub API...');
27
- const releases = await client.getReleases(since);
28
- console.log(` ✓ Found ${releases.length} releases`);
29
- const commits = releases.length > 0
30
- ? await client.getCommits(releases[0].target_commitish, new Date())
31
- : [];
32
- console.log(` ✓ Found ${commits.length} commits`);
33
- const issues = await client.getIssues(['incident', 'production-bug'], since);
34
- console.log(` ✓ Found ${issues.length} incidents`);
35
- // Calculate metrics
36
- console.log('\n🔢 Calculating DORA metrics...');
37
- const deploymentFrequency = calculateDeploymentFrequency(releases);
38
- console.log(` ✓ Deployment Frequency: ${deploymentFrequency.value} ${deploymentFrequency.unit} (${deploymentFrequency.tier})`);
39
- const leadTime = calculateLeadTime(releases, commits);
40
- console.log(` ✓ Lead Time: ${leadTime.value} ${leadTime.unit} (${leadTime.tier})`);
41
- const changeFailureRate = calculateChangeFailureRate(releases, issues);
42
- console.log(` ✓ Change Failure Rate: ${changeFailureRate.value}% (${changeFailureRate.tier})`);
43
- const mttr = calculateMTTR(issues);
44
- console.log(` ✓ MTTR: ${mttr.value} ${mttr.unit} (${mttr.tier})`);
45
- const metricsResult = {
46
- timestamp: new Date().toISOString(),
47
- metrics: {
48
- deploymentFrequency,
49
- leadTime,
50
- changeFailureRate,
51
- mttr,
52
- },
53
- };
54
- return {
55
- metrics: metricsResult,
56
- releases,
57
- issues,
58
- };
59
- }
60
- /**
61
- * Write metrics to JSON file
62
- *
63
- * @param metrics - DORA metrics
64
- * @param filePath - Output file path
65
- */
66
- export function writeMetricsJSON(metrics, filePath) {
67
- // Ensure directory exists
68
- const dir = path.dirname(filePath);
69
- if (!fs.existsSync(dir)) {
70
- fs.mkdirSync(dir, { recursive: true });
71
- }
72
- // Write JSON with pretty formatting
73
- const json = JSON.stringify(metrics, null, 2);
74
- fs.writeFileSync(filePath, json, 'utf-8');
75
- console.log(`\n✅ Metrics written to ${filePath}`);
76
- }
77
- /**
78
- * CLI Entry Point
79
- *
80
- * Run with: npm run metrics:dora
81
- * Or: ts-node src/metrics/dora-calculator.ts
82
- */
83
- async function main() {
84
- try {
85
- // Parse GitHub config from environment
86
- const token = process.env.GITHUB_TOKEN;
87
- if (!token) {
88
- throw new Error('GITHUB_TOKEN environment variable is required');
89
- }
90
- const repository = process.env.GITHUB_REPOSITORY || 'anton-abyzov/specweave';
91
- const [owner, repo] = repository.split('/');
92
- const config = { token, owner, repo };
93
- // Calculate metrics
94
- const client = new GitHubClient(config);
95
- const result = await calculateDORAMetrics(client);
96
- // Write JSON file
97
- const jsonOutputPath = path.join(process.cwd(), 'metrics', 'dora-latest.json');
98
- writeMetricsJSON(result.metrics, jsonOutputPath);
99
- // Generate and write markdown report
100
- console.log('\n📝 Generating detailed report...');
101
- const report = generateMarkdownReport(result.metrics, result.releases, result.issues);
102
- const reportOutputPath = path.join(process.cwd(), 'metrics', 'dora-report.md');
103
- writeReport(report, reportOutputPath);
104
- console.log('\n🎉 DORA metrics calculation complete!');
105
- console.log(` 📊 JSON: ${jsonOutputPath}`);
106
- console.log(` 📝 Report: ${reportOutputPath}`);
107
- process.exit(0);
108
- }
109
- catch (error) {
110
- console.error('\n❌ Error calculating DORA metrics:');
111
- console.error(error);
112
- process.exit(1);
113
- }
114
- }
115
- // ESM module entry point (always run when executed)
116
- main();
117
- //# sourceMappingURL=dora-calculator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dora-calculator.js","sourceRoot":"","sources":["../../../src/metrics/dora-calculator.ts"],"names":[],"mappings":"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"}
@@ -1,51 +0,0 @@
1
- /**
2
- * GitHub API Client
3
- *
4
- * Wrapper around Octokit for fetching DORA metrics data
5
- * Handles authentication, rate limiting, and error handling
6
- */
7
- import { Release, Commit, Issue, GitHubConfig } from './types.js';
8
- /**
9
- * GitHub API Client for DORA Metrics
10
- */
11
- export declare class GitHubClient {
12
- private octokit;
13
- private owner;
14
- private repo;
15
- constructor(config: GitHubConfig);
16
- /**
17
- * Get releases from last N days
18
- *
19
- * @param since - Date to fetch releases from
20
- * @returns Array of releases
21
- */
22
- getReleases(since: Date): Promise<Release[]>;
23
- /**
24
- * Get commits for a specific SHA range
25
- *
26
- * @param sha - Commit SHA to start from
27
- * @param until - Date to fetch commits until
28
- * @returns Array of commits
29
- */
30
- getCommits(sha: string, until: Date): Promise<Commit[]>;
31
- /**
32
- * Get issues with specific labels
33
- *
34
- * @param labels - Array of label names to filter by
35
- * @param since - Date to fetch issues from
36
- * @returns Array of issues
37
- */
38
- getIssues(labels: string[], since: Date): Promise<Issue[]>;
39
- /**
40
- * Handle GitHub API rate limit errors
41
- *
42
- * Implements exponential backoff:
43
- * 1. Check X-RateLimit-Reset header
44
- * 2. Wait until reset time (max 1 minute)
45
- * 3. Retry request
46
- *
47
- * @param error - GitHub API error
48
- */
49
- private handleRateLimit;
50
- }
51
- //# sourceMappingURL=github-client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-client.d.ts","sourceRoot":"","sources":["../../../src/metrics/github-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AASlE;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,IAAI,CAAS;gBAET,MAAM,EAAE,YAAY;IAQhC;;;;;OAKG;IACG,WAAW,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAsBlD;;;;;;OAMG;IACG,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAoB7D;;;;;;OAMG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAqBhE;;;;;;;;;OASG;YACW,eAAe;CAiB9B"}
@@ -1,133 +0,0 @@
1
- /**
2
- * GitHub API Client
3
- *
4
- * Wrapper around Octokit for fetching DORA metrics data
5
- * Handles authentication, rate limiting, and error handling
6
- */
7
- import { Octokit } from '@octokit/rest';
8
- /**
9
- * Sleep utility for exponential backoff
10
- */
11
- function sleep(ms) {
12
- return new Promise(resolve => setTimeout(resolve, ms));
13
- }
14
- /**
15
- * GitHub API Client for DORA Metrics
16
- */
17
- export class GitHubClient {
18
- constructor(config) {
19
- this.octokit = new Octokit({
20
- auth: config.token,
21
- });
22
- this.owner = config.owner;
23
- this.repo = config.repo;
24
- }
25
- /**
26
- * Get releases from last N days
27
- *
28
- * @param since - Date to fetch releases from
29
- * @returns Array of releases
30
- */
31
- async getReleases(since) {
32
- try {
33
- const response = await this.octokit.rest.repos.listReleases({
34
- owner: this.owner,
35
- repo: this.repo,
36
- per_page: 100,
37
- });
38
- // Filter by date
39
- return response.data.filter(release => {
40
- const publishedAt = new Date(release.published_at);
41
- return publishedAt >= since;
42
- });
43
- }
44
- catch (error) {
45
- if (error.status === 403) {
46
- await this.handleRateLimit(error);
47
- return this.getReleases(since); // Retry
48
- }
49
- throw error;
50
- }
51
- }
52
- /**
53
- * Get commits for a specific SHA range
54
- *
55
- * @param sha - Commit SHA to start from
56
- * @param until - Date to fetch commits until
57
- * @returns Array of commits
58
- */
59
- async getCommits(sha, until) {
60
- try {
61
- const response = await this.octokit.rest.repos.listCommits({
62
- owner: this.owner,
63
- repo: this.repo,
64
- sha,
65
- per_page: 100,
66
- until: until.toISOString(),
67
- });
68
- return response.data;
69
- }
70
- catch (error) {
71
- if (error.status === 403) {
72
- await this.handleRateLimit(error);
73
- return this.getCommits(sha, until); // Retry
74
- }
75
- throw error;
76
- }
77
- }
78
- /**
79
- * Get issues with specific labels
80
- *
81
- * @param labels - Array of label names to filter by
82
- * @param since - Date to fetch issues from
83
- * @returns Array of issues
84
- */
85
- async getIssues(labels, since) {
86
- try {
87
- const response = await this.octokit.rest.issues.listForRepo({
88
- owner: this.owner,
89
- repo: this.repo,
90
- labels: labels.join(','),
91
- state: 'all', // Include open and closed
92
- per_page: 100,
93
- since: since.toISOString(),
94
- });
95
- return response.data;
96
- }
97
- catch (error) {
98
- if (error.status === 403) {
99
- await this.handleRateLimit(error);
100
- return this.getIssues(labels, since); // Retry
101
- }
102
- throw error;
103
- }
104
- }
105
- /**
106
- * Handle GitHub API rate limit errors
107
- *
108
- * Implements exponential backoff:
109
- * 1. Check X-RateLimit-Reset header
110
- * 2. Wait until reset time (max 1 minute)
111
- * 3. Retry request
112
- *
113
- * @param error - GitHub API error
114
- */
115
- async handleRateLimit(error) {
116
- const resetTime = error.response?.headers?.['x-ratelimit-reset'];
117
- if (resetTime) {
118
- const resetDate = new Date(parseInt(resetTime) * 1000);
119
- const now = new Date();
120
- const waitMs = resetDate.getTime() - now.getTime();
121
- if (waitMs > 0) {
122
- const waitSeconds = Math.min(waitMs / 1000, 60); // Max 1 minute
123
- console.log(`⏳ GitHub API rate limited. Waiting ${waitSeconds}s...`);
124
- await sleep(waitMs);
125
- }
126
- }
127
- else {
128
- // Fallback: wait 10 seconds
129
- await sleep(10000);
130
- }
131
- }
132
- }
133
- //# sourceMappingURL=github-client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-client.js","sourceRoot":"","sources":["../../../src/metrics/github-client.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * DORA Metrics Report Generator
4
- *
5
- * Generates detailed markdown reports from DORA metrics
6
- * Provides insights, trends, and actionable recommendations
7
- */
8
- import { DORAMetrics, Release, Issue } from './types.js';
9
- /**
10
- * Generate markdown report
11
- */
12
- export declare function generateMarkdownReport(metrics: DORAMetrics, releases?: Release[], issues?: Issue[]): string;
13
- /**
14
- * Write report to markdown file
15
- */
16
- export declare function writeReport(report: string, filePath: string): void;
17
- //# sourceMappingURL=report-generator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"report-generator.d.ts","sourceRoot":"","sources":["../../../src/metrics/report-generator.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAIH,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAsKzD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,WAAW,EACpB,QAAQ,CAAC,EAAE,OAAO,EAAE,EACpB,MAAM,CAAC,EAAE,KAAK,EAAE,GACf,MAAM,CAyOR;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAQlE"}