specweave 0.12.0 → 0.12.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (674) hide show
  1. package/CLAUDE.md +22 -0
  2. package/dist/cli/commands/init.d.ts.map +1 -1
  3. package/dist/cli/commands/init.js +44 -12
  4. package/dist/cli/commands/init.js.map +1 -1
  5. package/dist/core/specs/spec-metadata-manager.d.ts +70 -0
  6. package/dist/core/specs/spec-metadata-manager.d.ts.map +1 -0
  7. package/dist/core/specs/spec-metadata-manager.js +371 -0
  8. package/dist/core/specs/spec-metadata-manager.js.map +1 -0
  9. package/dist/core/specs/spec-parser.d.ts +66 -0
  10. package/dist/core/specs/spec-parser.d.ts.map +1 -0
  11. package/dist/core/specs/spec-parser.js +276 -0
  12. package/dist/core/specs/spec-parser.js.map +1 -0
  13. package/dist/core/types/config.d.ts.map +1 -1
  14. package/dist/core/types/config.js +7 -0
  15. package/dist/core/types/config.js.map +1 -1
  16. package/dist/core/types/spec-metadata.d.ts +229 -0
  17. package/dist/core/types/spec-metadata.d.ts.map +1 -0
  18. package/dist/core/types/spec-metadata.js +14 -0
  19. package/dist/core/types/spec-metadata.js.map +1 -0
  20. package/dist/hooks/lib/prepare-reflection-context.js +1 -1
  21. package/dist/hooks/lib/prepare-reflection-context.js.map +1 -1
  22. package/dist/utils/external-resource-validator.d.ts.map +1 -1
  23. package/dist/utils/external-resource-validator.js +101 -59
  24. package/dist/utils/external-resource-validator.js.map +1 -1
  25. package/package.json +10 -3
  26. package/plugins/specweave/agents/pm/AGENT.md +183 -0
  27. package/plugins/specweave/hooks/post-increment-change.sh +94 -0
  28. package/plugins/specweave/hooks/post-increment-status-change.sh +143 -0
  29. package/plugins/specweave/hooks/post-spec-update.sh +158 -0
  30. package/plugins/specweave/hooks/post-user-story-complete.sh +179 -0
  31. package/plugins/specweave/lib/hooks/sync-living-docs.ts +57 -16
  32. package/plugins/specweave/skills/increment-planner/SKILL.md +17 -0
  33. package/plugins/specweave-ado/commands/specweave-ado-sync-spec.md +255 -0
  34. package/plugins/specweave-ado/lib/ado-spec-sync.ts +593 -0
  35. package/plugins/specweave-ado/skills/ado-sync/SKILL.md +12 -6
  36. package/plugins/specweave-github/commands/specweave-github-sync-from.md +147 -0
  37. package/plugins/specweave-github/commands/specweave-github-sync-spec.md +208 -0
  38. package/plugins/specweave-github/lib/cli-sync-increment-changes.ts +33 -0
  39. package/plugins/specweave-github/lib/github-issue-updater.ts +449 -0
  40. package/plugins/specweave-github/lib/github-spec-sync.ts +656 -0
  41. package/plugins/specweave-github/lib/github-sync-bidirectional.ts +342 -0
  42. package/plugins/specweave-github/lib/github-sync-increment-changes.ts +380 -0
  43. package/plugins/specweave-github/skills/github-sync/SKILL.md +16 -8
  44. package/plugins/specweave-jira/commands/specweave-jira-sync-spec.md +240 -0
  45. package/plugins/specweave-jira/lib/jira-spec-sync.ts +582 -0
  46. package/plugins/specweave-jira/skills/jira-sync/SKILL.md +20 -5
  47. package/src/templates/AGENTS.md.template +55 -9
  48. package/dist/cli/commands/docs-build.d.ts +0 -7
  49. package/dist/cli/commands/docs-build.d.ts.map +0 -1
  50. package/dist/cli/commands/docs-build.js +0 -31
  51. package/dist/cli/commands/docs-build.js.map +0 -1
  52. package/dist/cli/commands/docs-preview.d.ts +0 -7
  53. package/dist/cli/commands/docs-preview.d.ts.map +0 -1
  54. package/dist/cli/commands/docs-preview.js +0 -50
  55. package/dist/cli/commands/docs-preview.js.map +0 -1
  56. package/dist/cli/commands/docs-setup.d.ts +0 -7
  57. package/dist/cli/commands/docs-setup.d.ts.map +0 -1
  58. package/dist/cli/commands/docs-setup.js +0 -31
  59. package/dist/cli/commands/docs-setup.js.map +0 -1
  60. package/dist/cli/commands/plugin.d.ts +0 -54
  61. package/dist/cli/commands/plugin.d.ts.map +0 -1
  62. package/dist/core/rfc-generator.d.ts +0 -147
  63. package/dist/core/rfc-generator.d.ts.map +0 -1
  64. package/dist/core/rfc-generator.js +0 -434
  65. package/dist/core/rfc-generator.js.map +0 -1
  66. package/dist/core/schemas/plugin-manifest.schema.json +0 -253
  67. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts +0 -89
  68. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts.map +0 -1
  69. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js +0 -226
  70. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js.map +0 -1
  71. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts +0 -60
  72. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts.map +0 -1
  73. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js +0 -201
  74. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js.map +0 -1
  75. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts +0 -42
  76. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts.map +0 -1
  77. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js +0 -123
  78. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js.map +0 -1
  79. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts +0 -45
  80. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts.map +0 -1
  81. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js +0 -132
  82. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js.map +0 -1
  83. package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts +0 -33
  84. package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts.map +0 -1
  85. package/dist/plugins/specweave/lib/hooks/reflection-parser.js +0 -419
  86. package/dist/plugins/specweave/lib/hooks/reflection-parser.js.map +0 -1
  87. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts +0 -56
  88. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts.map +0 -1
  89. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js +0 -239
  90. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js.map +0 -1
  91. package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts +0 -64
  92. package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts.map +0 -1
  93. package/dist/plugins/specweave/lib/hooks/reflection-storage.js +0 -305
  94. package/dist/plugins/specweave/lib/hooks/reflection-storage.js.map +0 -1
  95. package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts +0 -43
  96. package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts.map +0 -1
  97. package/dist/plugins/specweave/lib/hooks/run-self-reflection.js +0 -203
  98. package/dist/plugins/specweave/lib/hooks/run-self-reflection.js.map +0 -1
  99. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts +0 -27
  100. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts.map +0 -1
  101. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js +0 -116
  102. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js.map +0 -1
  103. package/dist/plugins/specweave/lib/hooks/translate-file.d.ts +0 -59
  104. package/dist/plugins/specweave/lib/hooks/translate-file.d.ts.map +0 -1
  105. package/dist/plugins/specweave/lib/hooks/translate-file.js +0 -350
  106. package/dist/plugins/specweave/lib/hooks/translate-file.js.map +0 -1
  107. package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts +0 -13
  108. package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts.map +0 -1
  109. package/dist/plugins/specweave/lib/hooks/translate-living-docs.js +0 -175
  110. package/dist/plugins/specweave/lib/hooks/translate-living-docs.js.map +0 -1
  111. package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts +0 -164
  112. package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts.map +0 -1
  113. package/dist/plugins/specweave/lib/hooks/types/reflection-types.js +0 -73
  114. package/dist/plugins/specweave/lib/hooks/types/reflection-types.js.map +0 -1
  115. package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts +0 -29
  116. package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts.map +0 -1
  117. package/dist/plugins/specweave/lib/hooks/update-tasks-md.js +0 -203
  118. package/dist/plugins/specweave/lib/hooks/update-tasks-md.js.map +0 -1
  119. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts +0 -94
  120. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts.map +0 -1
  121. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js +0 -219
  122. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js.map +0 -1
  123. package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts +0 -124
  124. package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts.map +0 -1
  125. package/dist/plugins/specweave-ado/lib/ado-client-v2.js +0 -382
  126. package/dist/plugins/specweave-ado/lib/ado-client-v2.js.map +0 -1
  127. package/dist/plugins/specweave-ado/lib/ado-client.d.ts +0 -112
  128. package/dist/plugins/specweave-ado/lib/ado-client.d.ts.map +0 -1
  129. package/dist/plugins/specweave-ado/lib/ado-client.js +0 -257
  130. package/dist/plugins/specweave-ado/lib/ado-client.js.map +0 -1
  131. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts +0 -40
  132. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts.map +0 -1
  133. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js +0 -370
  134. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js.map +0 -1
  135. package/dist/plugins/specweave-ado/lib/project-selector.d.ts +0 -42
  136. package/dist/plugins/specweave-ado/lib/project-selector.d.ts.map +0 -1
  137. package/dist/plugins/specweave-ado/lib/project-selector.js +0 -211
  138. package/dist/plugins/specweave-ado/lib/project-selector.js.map +0 -1
  139. package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts +0 -54
  140. package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts.map +0 -1
  141. package/dist/plugins/specweave-github/lib/github-board-resolver.js +0 -122
  142. package/dist/plugins/specweave-github/lib/github-board-resolver.js.map +0 -1
  143. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts +0 -104
  144. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts.map +0 -1
  145. package/dist/plugins/specweave-github/lib/github-client-v2.js +0 -408
  146. package/dist/plugins/specweave-github/lib/github-client-v2.js.map +0 -1
  147. package/dist/plugins/specweave-github/lib/github-client.d.ts +0 -96
  148. package/dist/plugins/specweave-github/lib/github-client.d.ts.map +0 -1
  149. package/dist/plugins/specweave-github/lib/github-client.js +0 -299
  150. package/dist/plugins/specweave-github/lib/github-client.js.map +0 -1
  151. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts +0 -29
  152. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts.map +0 -1
  153. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js +0 -268
  154. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js.map +0 -1
  155. package/dist/plugins/specweave-github/lib/index.d.ts +0 -10
  156. package/dist/plugins/specweave-github/lib/index.d.ts.map +0 -1
  157. package/dist/plugins/specweave-github/lib/index.js +0 -10
  158. package/dist/plugins/specweave-github/lib/index.js.map +0 -1
  159. package/dist/plugins/specweave-github/lib/repo-selector.d.ts +0 -49
  160. package/dist/plugins/specweave-github/lib/repo-selector.d.ts.map +0 -1
  161. package/dist/plugins/specweave-github/lib/repo-selector.js +0 -216
  162. package/dist/plugins/specweave-github/lib/repo-selector.js.map +0 -1
  163. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts +0 -51
  164. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts.map +0 -1
  165. package/dist/plugins/specweave-github/lib/subtask-sync.js +0 -147
  166. package/dist/plugins/specweave-github/lib/subtask-sync.js.map +0 -1
  167. package/dist/plugins/specweave-github/lib/task-parser.d.ts +0 -37
  168. package/dist/plugins/specweave-github/lib/task-parser.d.ts.map +0 -1
  169. package/dist/plugins/specweave-github/lib/task-parser.js +0 -211
  170. package/dist/plugins/specweave-github/lib/task-parser.js.map +0 -1
  171. package/dist/plugins/specweave-github/lib/task-sync.d.ts +0 -51
  172. package/dist/plugins/specweave-github/lib/task-sync.d.ts.map +0 -1
  173. package/dist/plugins/specweave-github/lib/task-sync.js +0 -332
  174. package/dist/plugins/specweave-github/lib/task-sync.js.map +0 -1
  175. package/dist/plugins/specweave-github/lib/types.d.ts +0 -80
  176. package/dist/plugins/specweave-github/lib/types.d.ts.map +0 -1
  177. package/dist/plugins/specweave-github/lib/types.js +0 -5
  178. package/dist/plugins/specweave-github/lib/types.js.map +0 -1
  179. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts +0 -50
  180. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts.map +0 -1
  181. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js +0 -84
  182. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js.map +0 -1
  183. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts +0 -33
  184. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts.map +0 -1
  185. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js +0 -206
  186. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js.map +0 -1
  187. package/dist/plugins/specweave-jira/lib/project-selector.d.ts +0 -42
  188. package/dist/plugins/specweave-jira/lib/project-selector.d.ts.map +0 -1
  189. package/dist/plugins/specweave-jira/lib/project-selector.js +0 -216
  190. package/dist/plugins/specweave-jira/lib/project-selector.js.map +0 -1
  191. package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts +0 -67
  192. package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts.map +0 -1
  193. package/dist/plugins/specweave-jira/lib/reorganization-detector.js +0 -252
  194. package/dist/plugins/specweave-jira/lib/reorganization-detector.js.map +0 -1
  195. package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts +0 -29
  196. package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts.map +0 -1
  197. package/dist/plugins/specweave-jira/lib/setup-wizard.js +0 -219
  198. package/dist/plugins/specweave-jira/lib/setup-wizard.js.map +0 -1
  199. package/dist/src/adapters/adapter-base.d.ts +0 -71
  200. package/dist/src/adapters/adapter-base.d.ts.map +0 -1
  201. package/dist/src/adapters/adapter-base.js +0 -139
  202. package/dist/src/adapters/adapter-base.js.map +0 -1
  203. package/dist/src/adapters/adapter-interface.d.ts +0 -149
  204. package/dist/src/adapters/adapter-interface.d.ts.map +0 -1
  205. package/dist/src/adapters/adapter-interface.js +0 -8
  206. package/dist/src/adapters/adapter-interface.js.map +0 -1
  207. package/dist/src/adapters/adapter-loader.d.ts +0 -91
  208. package/dist/src/adapters/adapter-loader.d.ts.map +0 -1
  209. package/dist/src/adapters/adapter-loader.js +0 -238
  210. package/dist/src/adapters/adapter-loader.js.map +0 -1
  211. package/dist/src/adapters/agents-md-generator.d.ts +0 -48
  212. package/dist/src/adapters/agents-md-generator.d.ts.map +0 -1
  213. package/dist/src/adapters/agents-md-generator.js +0 -193
  214. package/dist/src/adapters/agents-md-generator.js.map +0 -1
  215. package/dist/src/adapters/claude/adapter.d.ts +0 -128
  216. package/dist/src/adapters/claude/adapter.d.ts.map +0 -1
  217. package/dist/src/adapters/claude/adapter.js +0 -415
  218. package/dist/src/adapters/claude/adapter.js.map +0 -1
  219. package/dist/src/adapters/claude-md-generator.d.ts +0 -78
  220. package/dist/src/adapters/claude-md-generator.d.ts.map +0 -1
  221. package/dist/src/adapters/claude-md-generator.js +0 -307
  222. package/dist/src/adapters/claude-md-generator.js.map +0 -1
  223. package/dist/src/adapters/codex/adapter.d.ts +0 -50
  224. package/dist/src/adapters/codex/adapter.d.ts.map +0 -1
  225. package/dist/src/adapters/codex/adapter.js +0 -316
  226. package/dist/src/adapters/codex/adapter.js.map +0 -1
  227. package/dist/src/adapters/cursor/adapter.d.ts +0 -98
  228. package/dist/src/adapters/cursor/adapter.d.ts.map +0 -1
  229. package/dist/src/adapters/cursor/adapter.js +0 -406
  230. package/dist/src/adapters/cursor/adapter.js.map +0 -1
  231. package/dist/src/adapters/doc-generator.d.ts +0 -69
  232. package/dist/src/adapters/doc-generator.d.ts.map +0 -1
  233. package/dist/src/adapters/doc-generator.js +0 -247
  234. package/dist/src/adapters/doc-generator.js.map +0 -1
  235. package/dist/src/adapters/gemini/adapter.d.ts +0 -50
  236. package/dist/src/adapters/gemini/adapter.d.ts.map +0 -1
  237. package/dist/src/adapters/gemini/adapter.js +0 -281
  238. package/dist/src/adapters/gemini/adapter.js.map +0 -1
  239. package/dist/src/adapters/generic/adapter.d.ts +0 -86
  240. package/dist/src/adapters/generic/adapter.d.ts.map +0 -1
  241. package/dist/src/adapters/generic/adapter.js +0 -338
  242. package/dist/src/adapters/generic/adapter.js.map +0 -1
  243. package/dist/src/cli/commands/abandon.d.ts +0 -13
  244. package/dist/src/cli/commands/abandon.d.ts.map +0 -1
  245. package/dist/src/cli/commands/abandon.js +0 -15
  246. package/dist/src/cli/commands/abandon.js.map +0 -1
  247. package/dist/src/cli/commands/import-docs.d.ts +0 -21
  248. package/dist/src/cli/commands/import-docs.d.ts.map +0 -1
  249. package/dist/src/cli/commands/import-docs.js +0 -146
  250. package/dist/src/cli/commands/import-docs.js.map +0 -1
  251. package/dist/src/cli/commands/init-multiproject.d.ts +0 -11
  252. package/dist/src/cli/commands/init-multiproject.d.ts.map +0 -1
  253. package/dist/src/cli/commands/init-multiproject.js +0 -202
  254. package/dist/src/cli/commands/init-multiproject.js.map +0 -1
  255. package/dist/src/cli/commands/init.d.ts +0 -9
  256. package/dist/src/cli/commands/init.d.ts.map +0 -1
  257. package/dist/src/cli/commands/init.js +0 -1205
  258. package/dist/src/cli/commands/init.js.map +0 -1
  259. package/dist/src/cli/commands/install.d.ts +0 -9
  260. package/dist/src/cli/commands/install.d.ts.map +0 -1
  261. package/dist/src/cli/commands/install.js +0 -127
  262. package/dist/src/cli/commands/install.js.map +0 -1
  263. package/dist/src/cli/commands/list.d.ts +0 -8
  264. package/dist/src/cli/commands/list.d.ts.map +0 -1
  265. package/dist/src/cli/commands/list.js +0 -119
  266. package/dist/src/cli/commands/list.js.map +0 -1
  267. package/dist/src/cli/commands/migrate-to-multiproject.d.ts +0 -37
  268. package/dist/src/cli/commands/migrate-to-multiproject.d.ts.map +0 -1
  269. package/dist/src/cli/commands/migrate-to-multiproject.js +0 -189
  270. package/dist/src/cli/commands/migrate-to-multiproject.js.map +0 -1
  271. package/dist/src/cli/commands/migrate-to-profiles.d.ts +0 -25
  272. package/dist/src/cli/commands/migrate-to-profiles.d.ts.map +0 -1
  273. package/dist/src/cli/commands/migrate-to-profiles.js +0 -350
  274. package/dist/src/cli/commands/migrate-to-profiles.js.map +0 -1
  275. package/dist/src/cli/commands/pause.d.ts +0 -13
  276. package/dist/src/cli/commands/pause.d.ts.map +0 -1
  277. package/dist/src/cli/commands/pause.js +0 -15
  278. package/dist/src/cli/commands/pause.js.map +0 -1
  279. package/dist/src/cli/commands/qa.d.ts +0 -54
  280. package/dist/src/cli/commands/qa.d.ts.map +0 -1
  281. package/dist/src/cli/commands/qa.js +0 -98
  282. package/dist/src/cli/commands/qa.js.map +0 -1
  283. package/dist/src/cli/commands/resume.d.ts +0 -12
  284. package/dist/src/cli/commands/resume.d.ts.map +0 -1
  285. package/dist/src/cli/commands/resume.js +0 -14
  286. package/dist/src/cli/commands/resume.js.map +0 -1
  287. package/dist/src/cli/commands/status.d.ts +0 -12
  288. package/dist/src/cli/commands/status.d.ts.map +0 -1
  289. package/dist/src/cli/commands/status.js +0 -23
  290. package/dist/src/cli/commands/status.js.map +0 -1
  291. package/dist/src/cli/commands/switch-project.d.ts +0 -13
  292. package/dist/src/cli/commands/switch-project.d.ts.map +0 -1
  293. package/dist/src/cli/commands/switch-project.js +0 -91
  294. package/dist/src/cli/commands/switch-project.js.map +0 -1
  295. package/dist/src/cli/commands/validate-jira.d.ts +0 -35
  296. package/dist/src/cli/commands/validate-jira.d.ts.map +0 -1
  297. package/dist/src/cli/commands/validate-jira.js +0 -112
  298. package/dist/src/cli/commands/validate-jira.js.map +0 -1
  299. package/dist/src/cli/commands/validate-plugins.d.ts +0 -41
  300. package/dist/src/cli/commands/validate-plugins.d.ts.map +0 -1
  301. package/dist/src/cli/commands/validate-plugins.js +0 -171
  302. package/dist/src/cli/commands/validate-plugins.js.map +0 -1
  303. package/dist/src/cli/helpers/issue-tracker/ado.d.ts +0 -57
  304. package/dist/src/cli/helpers/issue-tracker/ado.d.ts.map +0 -1
  305. package/dist/src/cli/helpers/issue-tracker/ado.js +0 -243
  306. package/dist/src/cli/helpers/issue-tracker/ado.js.map +0 -1
  307. package/dist/src/cli/helpers/issue-tracker/github.d.ts +0 -65
  308. package/dist/src/cli/helpers/issue-tracker/github.d.ts.map +0 -1
  309. package/dist/src/cli/helpers/issue-tracker/github.js +0 -426
  310. package/dist/src/cli/helpers/issue-tracker/github.js.map +0 -1
  311. package/dist/src/cli/helpers/issue-tracker/index.d.ts +0 -22
  312. package/dist/src/cli/helpers/issue-tracker/index.d.ts.map +0 -1
  313. package/dist/src/cli/helpers/issue-tracker/index.js +0 -314
  314. package/dist/src/cli/helpers/issue-tracker/index.js.map +0 -1
  315. package/dist/src/cli/helpers/issue-tracker/jira.d.ts +0 -61
  316. package/dist/src/cli/helpers/issue-tracker/jira.d.ts.map +0 -1
  317. package/dist/src/cli/helpers/issue-tracker/jira.js +0 -404
  318. package/dist/src/cli/helpers/issue-tracker/jira.js.map +0 -1
  319. package/dist/src/cli/helpers/issue-tracker/types.d.ts +0 -107
  320. package/dist/src/cli/helpers/issue-tracker/types.d.ts.map +0 -1
  321. package/dist/src/cli/helpers/issue-tracker/types.js +0 -16
  322. package/dist/src/cli/helpers/issue-tracker/types.js.map +0 -1
  323. package/dist/src/cli/helpers/issue-tracker/utils.d.ts +0 -112
  324. package/dist/src/cli/helpers/issue-tracker/utils.d.ts.map +0 -1
  325. package/dist/src/cli/helpers/issue-tracker/utils.js +0 -247
  326. package/dist/src/cli/helpers/issue-tracker/utils.js.map +0 -1
  327. package/dist/src/core/agent-model-manager.d.ts +0 -52
  328. package/dist/src/core/agent-model-manager.d.ts.map +0 -1
  329. package/dist/src/core/agent-model-manager.js +0 -120
  330. package/dist/src/core/agent-model-manager.js.map +0 -1
  331. package/dist/src/core/brownfield/analyzer.d.ts +0 -86
  332. package/dist/src/core/brownfield/analyzer.d.ts.map +0 -1
  333. package/dist/src/core/brownfield/analyzer.js +0 -365
  334. package/dist/src/core/brownfield/analyzer.js.map +0 -1
  335. package/dist/src/core/brownfield/importer.d.ts +0 -76
  336. package/dist/src/core/brownfield/importer.d.ts.map +0 -1
  337. package/dist/src/core/brownfield/importer.js +0 -287
  338. package/dist/src/core/brownfield/importer.js.map +0 -1
  339. package/dist/src/core/config-manager.d.ts +0 -47
  340. package/dist/src/core/config-manager.d.ts.map +0 -1
  341. package/dist/src/core/config-manager.js +0 -136
  342. package/dist/src/core/config-manager.js.map +0 -1
  343. package/dist/src/core/cost-tracker.d.ts +0 -108
  344. package/dist/src/core/cost-tracker.d.ts.map +0 -1
  345. package/dist/src/core/cost-tracker.js +0 -281
  346. package/dist/src/core/cost-tracker.js.map +0 -1
  347. package/dist/src/core/credentials-manager.d.ts +0 -107
  348. package/dist/src/core/credentials-manager.d.ts.map +0 -1
  349. package/dist/src/core/credentials-manager.js +0 -457
  350. package/dist/src/core/credentials-manager.js.map +0 -1
  351. package/dist/src/core/i18n/language-detector.d.ts +0 -29
  352. package/dist/src/core/i18n/language-detector.d.ts.map +0 -1
  353. package/dist/src/core/i18n/language-detector.js +0 -143
  354. package/dist/src/core/i18n/language-detector.js.map +0 -1
  355. package/dist/src/core/i18n/language-manager.d.ts +0 -101
  356. package/dist/src/core/i18n/language-manager.d.ts.map +0 -1
  357. package/dist/src/core/i18n/language-manager.js +0 -232
  358. package/dist/src/core/i18n/language-manager.js.map +0 -1
  359. package/dist/src/core/i18n/language-registry.d.ts +0 -44
  360. package/dist/src/core/i18n/language-registry.d.ts.map +0 -1
  361. package/dist/src/core/i18n/language-registry.js +0 -234
  362. package/dist/src/core/i18n/language-registry.js.map +0 -1
  363. package/dist/src/core/i18n/locale-manager.d.ts +0 -62
  364. package/dist/src/core/i18n/locale-manager.d.ts.map +0 -1
  365. package/dist/src/core/i18n/locale-manager.js +0 -137
  366. package/dist/src/core/i18n/locale-manager.js.map +0 -1
  367. package/dist/src/core/i18n/system-prompt-injector.d.ts +0 -33
  368. package/dist/src/core/i18n/system-prompt-injector.d.ts.map +0 -1
  369. package/dist/src/core/i18n/system-prompt-injector.js +0 -131
  370. package/dist/src/core/i18n/system-prompt-injector.js.map +0 -1
  371. package/dist/src/core/i18n/types.d.ts +0 -151
  372. package/dist/src/core/i18n/types.d.ts.map +0 -1
  373. package/dist/src/core/i18n/types.js +0 -11
  374. package/dist/src/core/i18n/types.js.map +0 -1
  375. package/dist/src/core/increment/limits.d.ts +0 -68
  376. package/dist/src/core/increment/limits.d.ts.map +0 -1
  377. package/dist/src/core/increment/limits.js +0 -224
  378. package/dist/src/core/increment/limits.js.map +0 -1
  379. package/dist/src/core/increment/metadata-manager.d.ts +0 -114
  380. package/dist/src/core/increment/metadata-manager.d.ts.map +0 -1
  381. package/dist/src/core/increment/metadata-manager.js +0 -320
  382. package/dist/src/core/increment/metadata-manager.js.map +0 -1
  383. package/dist/src/core/increment/status-commands.d.ts +0 -43
  384. package/dist/src/core/increment/status-commands.d.ts.map +0 -1
  385. package/dist/src/core/increment/status-commands.js +0 -277
  386. package/dist/src/core/increment/status-commands.js.map +0 -1
  387. package/dist/src/core/increment-status.d.ts +0 -72
  388. package/dist/src/core/increment-status.d.ts.map +0 -1
  389. package/dist/src/core/increment-status.js +0 -227
  390. package/dist/src/core/increment-status.js.map +0 -1
  391. package/dist/src/core/model-selector.d.ts +0 -57
  392. package/dist/src/core/model-selector.d.ts.map +0 -1
  393. package/dist/src/core/model-selector.js +0 -115
  394. package/dist/src/core/model-selector.js.map +0 -1
  395. package/dist/src/core/phase-detector.d.ts +0 -62
  396. package/dist/src/core/phase-detector.d.ts.map +0 -1
  397. package/dist/src/core/phase-detector.js +0 -229
  398. package/dist/src/core/phase-detector.js.map +0 -1
  399. package/dist/src/core/plugin-loader.d.ts +0 -131
  400. package/dist/src/core/plugin-loader.d.ts.map +0 -1
  401. package/dist/src/core/plugin-loader.js +0 -421
  402. package/dist/src/core/plugin-loader.js.map +0 -1
  403. package/dist/src/core/project-manager.d.ts +0 -127
  404. package/dist/src/core/project-manager.d.ts.map +0 -1
  405. package/dist/src/core/project-manager.js +0 -524
  406. package/dist/src/core/project-manager.js.map +0 -1
  407. package/dist/src/core/project-structure-detector.d.ts +0 -92
  408. package/dist/src/core/project-structure-detector.d.ts.map +0 -1
  409. package/dist/src/core/project-structure-detector.js +0 -289
  410. package/dist/src/core/project-structure-detector.js.map +0 -1
  411. package/dist/src/core/qa/qa-runner.d.ts +0 -16
  412. package/dist/src/core/qa/qa-runner.d.ts.map +0 -1
  413. package/dist/src/core/qa/qa-runner.js +0 -404
  414. package/dist/src/core/qa/qa-runner.js.map +0 -1
  415. package/dist/src/core/qa/quality-gate-decider.d.ts +0 -53
  416. package/dist/src/core/qa/quality-gate-decider.d.ts.map +0 -1
  417. package/dist/src/core/qa/quality-gate-decider.js +0 -268
  418. package/dist/src/core/qa/quality-gate-decider.js.map +0 -1
  419. package/dist/src/core/qa/risk-calculator.d.ts +0 -126
  420. package/dist/src/core/qa/risk-calculator.d.ts.map +0 -1
  421. package/dist/src/core/qa/risk-calculator.js +0 -247
  422. package/dist/src/core/qa/risk-calculator.js.map +0 -1
  423. package/dist/src/core/qa/types.d.ts +0 -315
  424. package/dist/src/core/qa/types.d.ts.map +0 -1
  425. package/dist/src/core/qa/types.js +0 -8
  426. package/dist/src/core/qa/types.js.map +0 -1
  427. package/dist/src/core/rfc-generator-v2.d.ts +0 -149
  428. package/dist/src/core/rfc-generator-v2.d.ts.map +0 -1
  429. package/dist/src/core/rfc-generator-v2.js +0 -399
  430. package/dist/src/core/rfc-generator-v2.js.map +0 -1
  431. package/dist/src/core/sync/bidirectional-engine.d.ts +0 -110
  432. package/dist/src/core/sync/bidirectional-engine.d.ts.map +0 -1
  433. package/dist/src/core/sync/bidirectional-engine.js +0 -356
  434. package/dist/src/core/sync/bidirectional-engine.js.map +0 -1
  435. package/dist/src/core/sync/folder-mapper.d.ts +0 -71
  436. package/dist/src/core/sync/folder-mapper.d.ts.map +0 -1
  437. package/dist/src/core/sync/folder-mapper.js +0 -168
  438. package/dist/src/core/sync/folder-mapper.js.map +0 -1
  439. package/dist/src/core/sync/profile-manager.d.ts +0 -72
  440. package/dist/src/core/sync/profile-manager.d.ts.map +0 -1
  441. package/dist/src/core/sync/profile-manager.js +0 -338
  442. package/dist/src/core/sync/profile-manager.js.map +0 -1
  443. package/dist/src/core/sync/profile-selector.d.ts +0 -52
  444. package/dist/src/core/sync/profile-selector.d.ts.map +0 -1
  445. package/dist/src/core/sync/profile-selector.js +0 -179
  446. package/dist/src/core/sync/profile-selector.js.map +0 -1
  447. package/dist/src/core/sync/profile-validator.d.ts +0 -52
  448. package/dist/src/core/sync/profile-validator.d.ts.map +0 -1
  449. package/dist/src/core/sync/profile-validator.js +0 -225
  450. package/dist/src/core/sync/profile-validator.js.map +0 -1
  451. package/dist/src/core/sync/project-context.d.ts +0 -81
  452. package/dist/src/core/sync/project-context.d.ts.map +0 -1
  453. package/dist/src/core/sync/project-context.js +0 -354
  454. package/dist/src/core/sync/project-context.js.map +0 -1
  455. package/dist/src/core/sync/rate-limiter.d.ts +0 -116
  456. package/dist/src/core/sync/rate-limiter.d.ts.map +0 -1
  457. package/dist/src/core/sync/rate-limiter.js +0 -308
  458. package/dist/src/core/sync/rate-limiter.js.map +0 -1
  459. package/dist/src/core/sync/time-range-selector.d.ts +0 -48
  460. package/dist/src/core/sync/time-range-selector.d.ts.map +0 -1
  461. package/dist/src/core/sync/time-range-selector.js +0 -224
  462. package/dist/src/core/sync/time-range-selector.js.map +0 -1
  463. package/dist/src/core/types/config.d.ts +0 -90
  464. package/dist/src/core/types/config.d.ts.map +0 -1
  465. package/dist/src/core/types/config.js +0 -37
  466. package/dist/src/core/types/config.js.map +0 -1
  467. package/dist/src/core/types/increment-metadata.d.ts +0 -120
  468. package/dist/src/core/types/increment-metadata.d.ts.map +0 -1
  469. package/dist/src/core/types/increment-metadata.js +0 -138
  470. package/dist/src/core/types/increment-metadata.js.map +0 -1
  471. package/dist/src/core/types/plugin.d.ts +0 -283
  472. package/dist/src/core/types/plugin.d.ts.map +0 -1
  473. package/dist/src/core/types/plugin.js +0 -49
  474. package/dist/src/core/types/plugin.js.map +0 -1
  475. package/dist/src/core/types/sync-profile.d.ts +0 -403
  476. package/dist/src/core/types/sync-profile.d.ts.map +0 -1
  477. package/dist/src/core/types/sync-profile.js +0 -55
  478. package/dist/src/core/types/sync-profile.js.map +0 -1
  479. package/dist/src/hooks/lib/types/reflection-types.d.ts +0 -125
  480. package/dist/src/hooks/lib/types/reflection-types.d.ts.map +0 -1
  481. package/dist/src/hooks/lib/types/reflection-types.js +0 -54
  482. package/dist/src/hooks/lib/types/reflection-types.js.map +0 -1
  483. package/dist/src/integrations/ado/ado-client.d.ts +0 -127
  484. package/dist/src/integrations/ado/ado-client.d.ts.map +0 -1
  485. package/dist/src/integrations/ado/ado-client.js +0 -416
  486. package/dist/src/integrations/ado/ado-client.js.map +0 -1
  487. package/dist/src/integrations/jira/jira-client.d.ts +0 -139
  488. package/dist/src/integrations/jira/jira-client.d.ts.map +0 -1
  489. package/dist/src/integrations/jira/jira-client.js +0 -386
  490. package/dist/src/integrations/jira/jira-client.js.map +0 -1
  491. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts +0 -75
  492. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts.map +0 -1
  493. package/dist/src/integrations/jira/jira-incremental-mapper.js +0 -474
  494. package/dist/src/integrations/jira/jira-incremental-mapper.js.map +0 -1
  495. package/dist/src/integrations/jira/jira-mapper.d.ts +0 -105
  496. package/dist/src/integrations/jira/jira-mapper.d.ts.map +0 -1
  497. package/dist/src/integrations/jira/jira-mapper.js +0 -494
  498. package/dist/src/integrations/jira/jira-mapper.js.map +0 -1
  499. package/dist/src/metrics/calculators/change-failure-rate.d.ts +0 -22
  500. package/dist/src/metrics/calculators/change-failure-rate.d.ts.map +0 -1
  501. package/dist/src/metrics/calculators/change-failure-rate.js +0 -70
  502. package/dist/src/metrics/calculators/change-failure-rate.js.map +0 -1
  503. package/dist/src/metrics/calculators/deployment-frequency.d.ts +0 -20
  504. package/dist/src/metrics/calculators/deployment-frequency.d.ts.map +0 -1
  505. package/dist/src/metrics/calculators/deployment-frequency.js +0 -61
  506. package/dist/src/metrics/calculators/deployment-frequency.js.map +0 -1
  507. package/dist/src/metrics/calculators/lead-time.d.ts +0 -22
  508. package/dist/src/metrics/calculators/lead-time.d.ts.map +0 -1
  509. package/dist/src/metrics/calculators/lead-time.js +0 -82
  510. package/dist/src/metrics/calculators/lead-time.js.map +0 -1
  511. package/dist/src/metrics/calculators/mttr.d.ts +0 -21
  512. package/dist/src/metrics/calculators/mttr.d.ts.map +0 -1
  513. package/dist/src/metrics/calculators/mttr.js +0 -60
  514. package/dist/src/metrics/calculators/mttr.js.map +0 -1
  515. package/dist/src/metrics/dora-calculator.d.ts +0 -28
  516. package/dist/src/metrics/dora-calculator.d.ts.map +0 -1
  517. package/dist/src/metrics/dora-calculator.js +0 -117
  518. package/dist/src/metrics/dora-calculator.js.map +0 -1
  519. package/dist/src/metrics/github-client.d.ts +0 -51
  520. package/dist/src/metrics/github-client.d.ts.map +0 -1
  521. package/dist/src/metrics/github-client.js +0 -133
  522. package/dist/src/metrics/github-client.js.map +0 -1
  523. package/dist/src/metrics/report-generator.d.ts +0 -17
  524. package/dist/src/metrics/report-generator.d.ts.map +0 -1
  525. package/dist/src/metrics/report-generator.js +0 -403
  526. package/dist/src/metrics/report-generator.js.map +0 -1
  527. package/dist/src/metrics/types.d.ts +0 -112
  528. package/dist/src/metrics/types.d.ts.map +0 -1
  529. package/dist/src/metrics/types.js +0 -10
  530. package/dist/src/metrics/types.js.map +0 -1
  531. package/dist/src/metrics/utils/percentile.d.ts +0 -25
  532. package/dist/src/metrics/utils/percentile.d.ts.map +0 -1
  533. package/dist/src/metrics/utils/percentile.js +0 -46
  534. package/dist/src/metrics/utils/percentile.js.map +0 -1
  535. package/dist/src/metrics/utils/tier-classifier.d.ts +0 -61
  536. package/dist/src/metrics/utils/tier-classifier.d.ts.map +0 -1
  537. package/dist/src/metrics/utils/tier-classifier.js +0 -100
  538. package/dist/src/metrics/utils/tier-classifier.js.map +0 -1
  539. package/dist/src/testing/test-generator.d.ts +0 -117
  540. package/dist/src/testing/test-generator.d.ts.map +0 -1
  541. package/dist/src/testing/test-generator.js +0 -370
  542. package/dist/src/testing/test-generator.js.map +0 -1
  543. package/dist/src/types/cost-tracking.d.ts +0 -43
  544. package/dist/src/types/cost-tracking.d.ts.map +0 -1
  545. package/dist/src/types/cost-tracking.js +0 -8
  546. package/dist/src/types/cost-tracking.js.map +0 -1
  547. package/dist/src/types/model-selection.d.ts +0 -53
  548. package/dist/src/types/model-selection.d.ts.map +0 -1
  549. package/dist/src/types/model-selection.js +0 -12
  550. package/dist/src/types/model-selection.js.map +0 -1
  551. package/dist/src/utils/agents-md-compiler.d.ts +0 -68
  552. package/dist/src/utils/agents-md-compiler.d.ts.map +0 -1
  553. package/dist/src/utils/agents-md-compiler.js +0 -420
  554. package/dist/src/utils/agents-md-compiler.js.map +0 -1
  555. package/dist/src/utils/auth-helpers.d.ts +0 -58
  556. package/dist/src/utils/auth-helpers.d.ts.map +0 -1
  557. package/dist/src/utils/auth-helpers.js +0 -108
  558. package/dist/src/utils/auth-helpers.js.map +0 -1
  559. package/dist/src/utils/auto-install.d.ts +0 -47
  560. package/dist/src/utils/auto-install.d.ts.map +0 -1
  561. package/dist/src/utils/auto-install.js +0 -211
  562. package/dist/src/utils/auto-install.js.map +0 -1
  563. package/dist/src/utils/claude-cli-detector.d.ts +0 -75
  564. package/dist/src/utils/claude-cli-detector.d.ts.map +0 -1
  565. package/dist/src/utils/claude-cli-detector.js +0 -285
  566. package/dist/src/utils/claude-cli-detector.js.map +0 -1
  567. package/dist/src/utils/cost-reporter.d.ts +0 -58
  568. package/dist/src/utils/cost-reporter.d.ts.map +0 -1
  569. package/dist/src/utils/cost-reporter.js +0 -224
  570. package/dist/src/utils/cost-reporter.js.map +0 -1
  571. package/dist/src/utils/docs-preview/config-generator.d.ts +0 -46
  572. package/dist/src/utils/docs-preview/config-generator.d.ts.map +0 -1
  573. package/dist/src/utils/docs-preview/config-generator.js +0 -377
  574. package/dist/src/utils/docs-preview/config-generator.js.map +0 -1
  575. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts +0 -38
  576. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts.map +0 -1
  577. package/dist/src/utils/docs-preview/docusaurus-setup.js +0 -177
  578. package/dist/src/utils/docs-preview/docusaurus-setup.js.map +0 -1
  579. package/dist/src/utils/docs-preview/index.d.ts +0 -7
  580. package/dist/src/utils/docs-preview/index.d.ts.map +0 -1
  581. package/dist/src/utils/docs-preview/index.js +0 -7
  582. package/dist/src/utils/docs-preview/index.js.map +0 -1
  583. package/dist/src/utils/docs-preview/package-installer.d.ts +0 -42
  584. package/dist/src/utils/docs-preview/package-installer.d.ts.map +0 -1
  585. package/dist/src/utils/docs-preview/package-installer.js +0 -182
  586. package/dist/src/utils/docs-preview/package-installer.js.map +0 -1
  587. package/dist/src/utils/docs-preview/server-manager.d.ts +0 -30
  588. package/dist/src/utils/docs-preview/server-manager.d.ts.map +0 -1
  589. package/dist/src/utils/docs-preview/server-manager.js +0 -212
  590. package/dist/src/utils/docs-preview/server-manager.js.map +0 -1
  591. package/dist/src/utils/docs-preview/sidebar-builder.d.ts +0 -32
  592. package/dist/src/utils/docs-preview/sidebar-builder.d.ts.map +0 -1
  593. package/dist/src/utils/docs-preview/sidebar-builder.js +0 -202
  594. package/dist/src/utils/docs-preview/sidebar-builder.js.map +0 -1
  595. package/dist/src/utils/docs-preview/types.d.ts +0 -57
  596. package/dist/src/utils/docs-preview/types.d.ts.map +0 -1
  597. package/dist/src/utils/docs-preview/types.js +0 -2
  598. package/dist/src/utils/docs-preview/types.js.map +0 -1
  599. package/dist/src/utils/env-file.d.ts +0 -88
  600. package/dist/src/utils/env-file.d.ts.map +0 -1
  601. package/dist/src/utils/env-file.js +0 -180
  602. package/dist/src/utils/env-file.js.map +0 -1
  603. package/dist/src/utils/env-multi-project-parser.d.ts +0 -220
  604. package/dist/src/utils/env-multi-project-parser.d.ts.map +0 -1
  605. package/dist/src/utils/env-multi-project-parser.js +0 -403
  606. package/dist/src/utils/env-multi-project-parser.js.map +0 -1
  607. package/dist/src/utils/esm-helpers.d.ts +0 -50
  608. package/dist/src/utils/esm-helpers.d.ts.map +0 -1
  609. package/dist/src/utils/esm-helpers.js +0 -57
  610. package/dist/src/utils/esm-helpers.js.map +0 -1
  611. package/dist/src/utils/execFileNoThrow.d.ts +0 -99
  612. package/dist/src/utils/execFileNoThrow.d.ts.map +0 -1
  613. package/dist/src/utils/execFileNoThrow.js +0 -137
  614. package/dist/src/utils/execFileNoThrow.js.map +0 -1
  615. package/dist/src/utils/external-resource-validator.d.ts +0 -102
  616. package/dist/src/utils/external-resource-validator.d.ts.map +0 -1
  617. package/dist/src/utils/external-resource-validator.js +0 -400
  618. package/dist/src/utils/external-resource-validator.js.map +0 -1
  619. package/dist/src/utils/generate-skills-index.d.ts +0 -24
  620. package/dist/src/utils/generate-skills-index.d.ts.map +0 -1
  621. package/dist/src/utils/generate-skills-index.js +0 -410
  622. package/dist/src/utils/generate-skills-index.js.map +0 -1
  623. package/dist/src/utils/model-selection.d.ts +0 -75
  624. package/dist/src/utils/model-selection.d.ts.map +0 -1
  625. package/dist/src/utils/model-selection.js +0 -204
  626. package/dist/src/utils/model-selection.js.map +0 -1
  627. package/dist/src/utils/plugin-validator.d.ts +0 -161
  628. package/dist/src/utils/plugin-validator.d.ts.map +0 -1
  629. package/dist/src/utils/plugin-validator.js +0 -558
  630. package/dist/src/utils/plugin-validator.js.map +0 -1
  631. package/dist/src/utils/pricing-constants.d.ts +0 -70
  632. package/dist/src/utils/pricing-constants.d.ts.map +0 -1
  633. package/dist/src/utils/pricing-constants.js +0 -71
  634. package/dist/src/utils/pricing-constants.js.map +0 -1
  635. package/dist/src/utils/project-detection.d.ts +0 -141
  636. package/dist/src/utils/project-detection.d.ts.map +0 -1
  637. package/dist/src/utils/project-detection.js +0 -321
  638. package/dist/src/utils/project-detection.js.map +0 -1
  639. package/dist/src/utils/string-utils.d.ts +0 -40
  640. package/dist/src/utils/string-utils.d.ts.map +0 -1
  641. package/dist/src/utils/string-utils.js +0 -58
  642. package/dist/src/utils/string-utils.js.map +0 -1
  643. package/dist/src/utils/translation.d.ts +0 -187
  644. package/dist/src/utils/translation.d.ts.map +0 -1
  645. package/dist/src/utils/translation.js +0 -414
  646. package/dist/src/utils/translation.js.map +0 -1
  647. package/dist/utils/docs-preview.bak/config-generator.d.ts +0 -46
  648. package/dist/utils/docs-preview.bak/config-generator.d.ts.map +0 -1
  649. package/dist/utils/docs-preview.bak/config-generator.js +0 -377
  650. package/dist/utils/docs-preview.bak/config-generator.js.map +0 -1
  651. package/dist/utils/docs-preview.bak/package-installer.d.ts +0 -42
  652. package/dist/utils/docs-preview.bak/package-installer.d.ts.map +0 -1
  653. package/dist/utils/docs-preview.bak/package-installer.js +0 -182
  654. package/dist/utils/docs-preview.bak/package-installer.js.map +0 -1
  655. package/dist/utils/docs-preview.bak/server-manager.d.ts +0 -30
  656. package/dist/utils/docs-preview.bak/server-manager.d.ts.map +0 -1
  657. package/dist/utils/docs-preview.bak/server-manager.js +0 -207
  658. package/dist/utils/docs-preview.bak/server-manager.js.map +0 -1
  659. package/dist/utils/docs-preview.bak/sidebar-builder.d.ts +0 -31
  660. package/dist/utils/docs-preview.bak/sidebar-builder.d.ts.map +0 -1
  661. package/dist/utils/docs-preview.bak/sidebar-builder.js +0 -202
  662. package/dist/utils/docs-preview.bak/sidebar-builder.js.map +0 -1
  663. package/dist/utils/docs-preview.bak/types.d.ts +0 -60
  664. package/dist/utils/docs-preview.bak/types.d.ts.map +0 -1
  665. package/dist/utils/docs-preview.bak/types.js +0 -5
  666. package/dist/utils/docs-preview.bak/types.js.map +0 -1
  667. package/dist/utils/plugin-detection.d.ts +0 -50
  668. package/dist/utils/plugin-detection.d.ts.map +0 -1
  669. package/dist/utils/secrets-loader.d.ts +0 -88
  670. package/dist/utils/secrets-loader.d.ts.map +0 -1
  671. package/dist/utils/secrets-loader.js +0 -271
  672. package/dist/utils/secrets-loader.js.map +0 -1
  673. package/src/templates/environments/minimal/.env.production +0 -16
  674. package/src/templates/environments/standard/.env.production +0 -30
@@ -1,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":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAmB,EACnB,OAAiB;IAEjB,uBAAuB;IACvB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO;YACL,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,CAAC;SACP,CAAC;IACJ,CAAC;IAED,uCAAuC;IACvC,MAAM,cAAc,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CACvC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAClF,CAAC;IAEF,uCAAuC;IACvC,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QACxC,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACnD,MAAM,mBAAmB,GACvB,KAAK,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC;YAC/B,CAAC,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC;YAClD,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAE,sCAAsC;QAE1D,4DAA4D;QAC5D,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;YAC7C,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACvD,OAAO,UAAU,GAAG,mBAAmB,IAAI,UAAU,IAAI,WAAW,CAAC;QACvE,CAAC,CAAC,CAAC;QAEH,sCAAsC;QACtC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC9B,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACvD,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;YAChE,MAAM,aAAa,GAAG,UAAU,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAE,mBAAmB;YACzE,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,gCAAgC;IAChC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO;YACL,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,CAAC;SACP,CAAC;IACJ,CAAC;IAED,uBAAuB;IACvB,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;IACtF,MAAM,GAAG,GAAG,mBAAmB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAC/C,MAAM,GAAG,GAAG,mBAAmB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAE/C,gBAAgB;IAChB,MAAM,IAAI,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAE/C,0BAA0B;IAC1B,MAAM,IAAI,GAAG,eAAe,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IACrD,MAAM,KAAK,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,GAAG,EAAE,CAAC;IAExE,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,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"}