specweave 1.0.593 → 2.0.3

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 (1420) hide show
  1. package/.claude-plugin/marketplace.json +3 -3
  2. package/README.md +65 -88
  3. package/bin/specweave.js +206 -263
  4. package/dist/dashboard/assets/{index-DQb8E2_E.js → index-BiJhGDZV.js} +3 -3
  5. package/dist/dashboard/assets/index-heYRtWFf.css +1 -0
  6. package/dist/dashboard/index.html +2 -2
  7. package/dist/plugins/specweave/lib/integrations/github/github-access-error.js +3 -3
  8. package/dist/plugins/specweave/lib/integrations/github/github-access-error.js.map +1 -1
  9. package/dist/plugins/specweave/lib/integrations/github/github-client-v2.d.ts +5 -4
  10. package/dist/plugins/specweave/lib/integrations/github/github-client-v2.d.ts.map +1 -1
  11. package/dist/plugins/specweave/lib/integrations/github/github-client-v2.js +14 -13
  12. package/dist/plugins/specweave/lib/integrations/github/github-client-v2.js.map +1 -1
  13. package/dist/plugins/specweave/lib/integrations/github/github-feature-sync-cli.js +1 -1
  14. package/dist/plugins/specweave/lib/integrations/github/github-feature-sync-cli.js.map +1 -1
  15. package/dist/plugins/specweave/lib/integrations/github/github-feature-sync.js +2 -2
  16. package/dist/plugins/specweave/lib/integrations/github/github-feature-sync.js.map +1 -1
  17. package/dist/plugins/specweave/lib/vendor/core/increment/auto-transition-manager.js +11 -9
  18. package/dist/plugins/specweave/lib/vendor/core/increment/auto-transition-manager.js.map +1 -1
  19. package/dist/plugins/specweave/lib/vendor/core/increment/metadata-manager.d.ts +9 -5
  20. package/dist/plugins/specweave/lib/vendor/core/increment/metadata-manager.js +70 -13
  21. package/dist/plugins/specweave/lib/vendor/core/increment/metadata-manager.js.map +1 -1
  22. package/dist/plugins/specweave/lib/vendor/core/increment/status-auto-transition.d.ts +7 -3
  23. package/dist/plugins/specweave/lib/vendor/core/increment/status-auto-transition.js +16 -12
  24. package/dist/plugins/specweave/lib/vendor/core/increment/status-auto-transition.js.map +1 -1
  25. package/dist/plugins/specweave/lib/vendor/core/tasks/task-id.d.ts +24 -0
  26. package/dist/plugins/specweave/lib/vendor/core/tasks/task-id.js +24 -0
  27. package/dist/plugins/specweave/lib/vendor/core/tasks/task-id.js.map +1 -0
  28. package/dist/plugins/specweave/lib/vendor/core/types/increment-metadata.d.ts +86 -35
  29. package/dist/plugins/specweave/lib/vendor/core/types/increment-metadata.js +115 -47
  30. package/dist/plugins/specweave/lib/vendor/core/types/increment-metadata.js.map +1 -1
  31. package/dist/plugins/specweave/lib/vendor/generators/spec/task-parser.d.ts +18 -2
  32. package/dist/plugins/specweave/lib/vendor/generators/spec/task-parser.js +74 -6
  33. package/dist/plugins/specweave/lib/vendor/generators/spec/task-parser.js.map +1 -1
  34. package/dist/plugins/specweave/lib/vendor/sync/config.js +2 -2
  35. package/dist/plugins/specweave/lib/vendor/sync/config.js.map +1 -1
  36. package/dist/plugins/specweave/lib/vendor/sync/github-reconciler.js +2 -2
  37. package/dist/plugins/specweave/lib/vendor/sync/github-reconciler.js.map +1 -1
  38. package/dist/plugins/specweave/lib/vendor/utils/auth-helpers.d.ts +37 -16
  39. package/dist/plugins/specweave/lib/vendor/utils/auth-helpers.js +88 -74
  40. package/dist/plugins/specweave/lib/vendor/utils/auth-helpers.js.map +1 -1
  41. package/dist/src/adapters/adapter-base.d.ts +0 -4
  42. package/dist/src/adapters/adapter-base.d.ts.map +1 -1
  43. package/dist/src/adapters/adapter-base.js +2 -18
  44. package/dist/src/adapters/adapter-base.js.map +1 -1
  45. package/dist/src/adapters/antigravity/adapter.d.ts.map +1 -1
  46. package/dist/src/adapters/antigravity/adapter.js +13 -7
  47. package/dist/src/adapters/antigravity/adapter.js.map +1 -1
  48. package/dist/src/adapters/claude/adapter.d.ts.map +1 -1
  49. package/dist/src/adapters/claude/adapter.js +7 -10
  50. package/dist/src/adapters/claude/adapter.js.map +1 -1
  51. package/dist/src/adapters/codex/adapter.d.ts.map +1 -1
  52. package/dist/src/adapters/codex/adapter.js +13 -7
  53. package/dist/src/adapters/codex/adapter.js.map +1 -1
  54. package/dist/src/adapters/gemini/adapter.d.ts.map +1 -1
  55. package/dist/src/adapters/gemini/adapter.js +13 -7
  56. package/dist/src/adapters/gemini/adapter.js.map +1 -1
  57. package/dist/src/adapters/generic/adapter.d.ts.map +1 -1
  58. package/dist/src/adapters/generic/adapter.js +7 -3
  59. package/dist/src/adapters/generic/adapter.js.map +1 -1
  60. package/dist/src/cli/commands/auto.d.ts.map +1 -1
  61. package/dist/src/cli/commands/auto.js +15 -62
  62. package/dist/src/cli/commands/auto.js.map +1 -1
  63. package/dist/src/cli/commands/check-discipline.d.ts +4 -6
  64. package/dist/src/cli/commands/check-discipline.d.ts.map +1 -1
  65. package/dist/src/cli/commands/check-discipline.js +21 -27
  66. package/dist/src/cli/commands/check-discipline.js.map +1 -1
  67. package/dist/src/cli/commands/complete.d.ts +5 -1
  68. package/dist/src/cli/commands/complete.d.ts.map +1 -1
  69. package/dist/src/cli/commands/complete.js +22 -1
  70. package/dist/src/cli/commands/complete.js.map +1 -1
  71. package/dist/src/cli/commands/create-increment.d.ts +25 -4
  72. package/dist/src/cli/commands/create-increment.d.ts.map +1 -1
  73. package/dist/src/cli/commands/create-increment.js +45 -27
  74. package/dist/src/cli/commands/create-increment.js.map +1 -1
  75. package/dist/src/cli/commands/detect-intent.d.ts.map +1 -1
  76. package/dist/src/cli/commands/detect-intent.js +5 -12
  77. package/dist/src/cli/commands/detect-intent.js.map +1 -1
  78. package/dist/src/cli/commands/detect-project.js +3 -3
  79. package/dist/src/cli/commands/detect-project.js.map +1 -1
  80. package/dist/src/cli/commands/docs.d.ts.map +1 -1
  81. package/dist/src/cli/commands/docs.js +0 -80
  82. package/dist/src/cli/commands/docs.js.map +1 -1
  83. package/dist/src/cli/commands/doctor.d.ts +11 -0
  84. package/dist/src/cli/commands/doctor.d.ts.map +1 -1
  85. package/dist/src/cli/commands/doctor.js +28 -0
  86. package/dist/src/cli/commands/doctor.js.map +1 -1
  87. package/dist/src/cli/commands/export-skills.d.ts +45 -0
  88. package/dist/src/cli/commands/export-skills.d.ts.map +1 -1
  89. package/dist/src/cli/commands/export-skills.js +26 -6
  90. package/dist/src/cli/commands/export-skills.js.map +1 -1
  91. package/dist/src/cli/commands/gc.d.ts +13 -0
  92. package/dist/src/cli/commands/gc.d.ts.map +1 -0
  93. package/dist/src/cli/commands/gc.js +47 -0
  94. package/dist/src/cli/commands/gc.js.map +1 -0
  95. package/dist/src/cli/commands/hook.d.ts +6 -8
  96. package/dist/src/cli/commands/hook.d.ts.map +1 -1
  97. package/dist/src/cli/commands/hook.js +38 -38
  98. package/dist/src/cli/commands/hook.js.map +1 -1
  99. package/dist/src/cli/commands/hooks-cmd.d.ts +11 -15
  100. package/dist/src/cli/commands/hooks-cmd.d.ts.map +1 -1
  101. package/dist/src/cli/commands/hooks-cmd.js +37 -128
  102. package/dist/src/cli/commands/hooks-cmd.js.map +1 -1
  103. package/dist/src/cli/commands/init.d.ts.map +1 -1
  104. package/dist/src/cli/commands/init.js +12 -33
  105. package/dist/src/cli/commands/init.js.map +1 -1
  106. package/dist/src/cli/commands/interview.js +5 -5
  107. package/dist/src/cli/commands/interview.js.map +1 -1
  108. package/dist/src/cli/commands/plan/increment-detector.js +1 -1
  109. package/dist/src/cli/commands/plan/increment-detector.js.map +1 -1
  110. package/dist/src/cli/commands/plan/plan-orchestrator.js +2 -2
  111. package/dist/src/cli/commands/plan/plan-orchestrator.js.map +1 -1
  112. package/dist/src/cli/commands/refresh-plugins.d.ts.map +1 -1
  113. package/dist/src/cli/commands/refresh-plugins.js +0 -16
  114. package/dist/src/cli/commands/refresh-plugins.js.map +1 -1
  115. package/dist/src/cli/commands/resume.d.ts +1 -6
  116. package/dist/src/cli/commands/resume.d.ts.map +1 -1
  117. package/dist/src/cli/commands/resume.js +2 -6
  118. package/dist/src/cli/commands/resume.js.map +1 -1
  119. package/dist/src/cli/commands/session.d.ts +1 -1
  120. package/dist/src/cli/commands/session.d.ts.map +1 -1
  121. package/dist/src/cli/commands/session.js +2 -26
  122. package/dist/src/cli/commands/session.js.map +1 -1
  123. package/dist/src/cli/commands/start.d.ts +10 -0
  124. package/dist/src/cli/commands/start.d.ts.map +1 -0
  125. package/dist/src/cli/commands/start.js +13 -0
  126. package/dist/src/cli/commands/start.js.map +1 -0
  127. package/dist/src/cli/commands/sync-gaps.d.ts +2 -13
  128. package/dist/src/cli/commands/sync-gaps.d.ts.map +1 -1
  129. package/dist/src/cli/commands/sync-gaps.js +2 -51
  130. package/dist/src/cli/commands/sync-gaps.js.map +1 -1
  131. package/dist/src/cli/commands/sync-health.d.ts +5 -1
  132. package/dist/src/cli/commands/sync-health.d.ts.map +1 -1
  133. package/dist/src/cli/commands/sync-health.js +7 -5
  134. package/dist/src/cli/commands/sync-health.js.map +1 -1
  135. package/dist/src/cli/commands/sync-living-docs.js +1 -1
  136. package/dist/src/cli/commands/sync-living-docs.js.map +1 -1
  137. package/dist/src/cli/commands/sync-progress.js +5 -5
  138. package/dist/src/cli/commands/sync-progress.js.map +1 -1
  139. package/dist/src/cli/commands/sync-setup.d.ts +2 -1
  140. package/dist/src/cli/commands/sync-setup.d.ts.map +1 -1
  141. package/dist/src/cli/commands/sync-setup.js +7 -6
  142. package/dist/src/cli/commands/sync-setup.js.map +1 -1
  143. package/dist/src/cli/commands/sync-status.js +1 -1
  144. package/dist/src/cli/commands/sync-status.js.map +1 -1
  145. package/dist/src/cli/commands/sync.d.ts +125 -0
  146. package/dist/src/cli/commands/sync.d.ts.map +1 -0
  147. package/dist/src/cli/commands/sync.js +323 -0
  148. package/dist/src/cli/commands/sync.js.map +1 -0
  149. package/dist/src/cli/commands/task.d.ts +41 -0
  150. package/dist/src/cli/commands/task.d.ts.map +1 -0
  151. package/dist/src/cli/commands/task.js +325 -0
  152. package/dist/src/cli/commands/task.js.map +1 -0
  153. package/dist/src/cli/commands/update-instructions.d.ts +4 -2
  154. package/dist/src/cli/commands/update-instructions.d.ts.map +1 -1
  155. package/dist/src/cli/commands/update-instructions.js +87 -160
  156. package/dist/src/cli/commands/update-instructions.js.map +1 -1
  157. package/dist/src/cli/commands/update.d.ts +5 -12
  158. package/dist/src/cli/commands/update.d.ts.map +1 -1
  159. package/dist/src/cli/commands/update.js +140 -174
  160. package/dist/src/cli/commands/update.js.map +1 -1
  161. package/dist/src/cli/commands/verify.d.ts +15 -0
  162. package/dist/src/cli/commands/verify.d.ts.map +1 -0
  163. package/dist/src/cli/commands/verify.js +57 -0
  164. package/dist/src/cli/commands/verify.js.map +1 -0
  165. package/dist/src/cli/helpers/get/bulk-get.d.ts +3 -3
  166. package/dist/src/cli/helpers/get/bulk-get.d.ts.map +1 -1
  167. package/dist/src/cli/helpers/get/bulk-get.js +8 -11
  168. package/dist/src/cli/helpers/get/bulk-get.js.map +1 -1
  169. package/dist/src/cli/helpers/init/bitbucket-repo-cloning.js +1 -1
  170. package/dist/src/cli/helpers/init/bitbucket-repo-cloning.js.map +1 -1
  171. package/dist/src/cli/helpers/init/directory-structure.d.ts +9 -2
  172. package/dist/src/cli/helpers/init/directory-structure.d.ts.map +1 -1
  173. package/dist/src/cli/helpers/init/directory-structure.js +74 -156
  174. package/dist/src/cli/helpers/init/directory-structure.js.map +1 -1
  175. package/dist/src/cli/helpers/init/external-import.js +1 -1
  176. package/dist/src/cli/helpers/init/external-import.js.map +1 -1
  177. package/dist/src/cli/helpers/init/git-hooks-installer.d.ts +58 -0
  178. package/dist/src/cli/helpers/init/git-hooks-installer.d.ts.map +1 -1
  179. package/dist/src/cli/helpers/init/git-hooks-installer.js +112 -8
  180. package/dist/src/cli/helpers/init/git-hooks-installer.js.map +1 -1
  181. package/dist/src/cli/helpers/init/gitignore-generator.d.ts +13 -0
  182. package/dist/src/cli/helpers/init/gitignore-generator.d.ts.map +1 -1
  183. package/dist/src/cli/helpers/init/gitignore-generator.js +40 -0
  184. package/dist/src/cli/helpers/init/gitignore-generator.js.map +1 -1
  185. package/dist/src/cli/helpers/init/index.d.ts +1 -1
  186. package/dist/src/cli/helpers/init/index.d.ts.map +1 -1
  187. package/dist/src/cli/helpers/init/index.js +1 -1
  188. package/dist/src/cli/helpers/init/index.js.map +1 -1
  189. package/dist/src/cli/helpers/init/instruction-file-merger.d.ts +86 -7
  190. package/dist/src/cli/helpers/init/instruction-file-merger.d.ts.map +1 -1
  191. package/dist/src/cli/helpers/init/instruction-file-merger.js +641 -202
  192. package/dist/src/cli/helpers/init/instruction-file-merger.js.map +1 -1
  193. package/dist/src/cli/helpers/init/instruction-file-writer.d.ts +53 -0
  194. package/dist/src/cli/helpers/init/instruction-file-writer.d.ts.map +1 -0
  195. package/dist/src/cli/helpers/init/instruction-file-writer.js +85 -0
  196. package/dist/src/cli/helpers/init/instruction-file-writer.js.map +1 -0
  197. package/dist/src/cli/helpers/init/plugin-installer.d.ts.map +1 -1
  198. package/dist/src/cli/helpers/init/plugin-installer.js +9 -4
  199. package/dist/src/cli/helpers/init/plugin-installer.js.map +1 -1
  200. package/dist/src/cli/helpers/init/provider-detection.d.ts +3 -2
  201. package/dist/src/cli/helpers/init/provider-detection.d.ts.map +1 -1
  202. package/dist/src/cli/helpers/init/provider-detection.js +5 -17
  203. package/dist/src/cli/helpers/init/provider-detection.js.map +1 -1
  204. package/dist/src/cli/helpers/init/skill-creator-installer.d.ts +21 -4
  205. package/dist/src/cli/helpers/init/skill-creator-installer.d.ts.map +1 -1
  206. package/dist/src/cli/helpers/init/skill-creator-installer.js +30 -8
  207. package/dist/src/cli/helpers/init/skill-creator-installer.js.map +1 -1
  208. package/dist/src/cli/helpers/init/smart-defaults.d.ts +2 -3
  209. package/dist/src/cli/helpers/init/smart-defaults.d.ts.map +1 -1
  210. package/dist/src/cli/helpers/init/smart-defaults.js +14 -57
  211. package/dist/src/cli/helpers/init/smart-defaults.js.map +1 -1
  212. package/dist/src/cli/helpers/init/stack-detector.d.ts +20 -0
  213. package/dist/src/cli/helpers/init/stack-detector.d.ts.map +1 -0
  214. package/dist/src/cli/helpers/init/stack-detector.js +169 -0
  215. package/dist/src/cli/helpers/init/stack-detector.js.map +1 -0
  216. package/dist/src/cli/helpers/init/summary-banner.d.ts +1 -3
  217. package/dist/src/cli/helpers/init/summary-banner.d.ts.map +1 -1
  218. package/dist/src/cli/helpers/init/summary-banner.js +9 -9
  219. package/dist/src/cli/helpers/init/summary-banner.js.map +1 -1
  220. package/dist/src/cli/helpers/init/testing-config.js +3 -3
  221. package/dist/src/cli/helpers/init/testing-config.js.map +1 -1
  222. package/dist/src/cli/helpers/init/types.d.ts +3 -3
  223. package/dist/src/cli/helpers/init/types.d.ts.map +1 -1
  224. package/dist/src/cli/helpers/init/workspace-setup.d.ts +13 -0
  225. package/dist/src/cli/helpers/init/workspace-setup.d.ts.map +1 -1
  226. package/dist/src/cli/helpers/init/workspace-setup.js +30 -0
  227. package/dist/src/cli/helpers/init/workspace-setup.js.map +1 -1
  228. package/dist/src/cli/helpers/issue-tracker/ado.js +2 -2
  229. package/dist/src/cli/helpers/issue-tracker/ado.js.map +1 -1
  230. package/dist/src/cli/helpers/issue-tracker/github.d.ts.map +1 -1
  231. package/dist/src/cli/helpers/issue-tracker/github.js +3 -4
  232. package/dist/src/cli/helpers/issue-tracker/github.js.map +1 -1
  233. package/dist/src/cli/helpers/issue-tracker/index.d.ts.map +1 -1
  234. package/dist/src/cli/helpers/issue-tracker/index.js +4 -9
  235. package/dist/src/cli/helpers/issue-tracker/index.js.map +1 -1
  236. package/dist/src/cli/helpers/issue-tracker/sync-config-writer.d.ts.map +1 -1
  237. package/dist/src/cli/helpers/issue-tracker/sync-config-writer.js +7 -12
  238. package/dist/src/cli/helpers/issue-tracker/sync-config-writer.js.map +1 -1
  239. package/dist/src/config/types.d.ts +2 -2
  240. package/dist/src/core/config/config-manager.d.ts +8 -0
  241. package/dist/src/core/config/config-manager.d.ts.map +1 -1
  242. package/dist/src/core/config/config-manager.js +74 -1
  243. package/dist/src/core/config/config-manager.js.map +1 -1
  244. package/dist/src/core/config/index.d.ts +3 -0
  245. package/dist/src/core/config/index.d.ts.map +1 -1
  246. package/dist/src/core/config/index.js +3 -0
  247. package/dist/src/core/config/index.js.map +1 -1
  248. package/dist/src/core/config/limits-migrator.d.ts +11 -0
  249. package/dist/src/core/config/limits-migrator.d.ts.map +1 -0
  250. package/dist/src/core/config/limits-migrator.js +38 -0
  251. package/dist/src/core/config/limits-migrator.js.map +1 -0
  252. package/dist/src/core/config/migrate-config-file.d.ts +51 -0
  253. package/dist/src/core/config/migrate-config-file.d.ts.map +1 -0
  254. package/dist/src/core/config/migrate-config-file.js +95 -0
  255. package/dist/src/core/config/migrate-config-file.js.map +1 -0
  256. package/dist/src/core/config/migrate-to-2.d.ts +60 -0
  257. package/dist/src/core/config/migrate-to-2.d.ts.map +1 -0
  258. package/dist/src/core/config/migrate-to-2.js +185 -0
  259. package/dist/src/core/config/migrate-to-2.js.map +1 -0
  260. package/dist/src/core/config/schema-version.d.ts +12 -0
  261. package/dist/src/core/config/schema-version.d.ts.map +1 -0
  262. package/dist/src/core/config/schema-version.js +12 -0
  263. package/dist/src/core/config/schema-version.js.map +1 -0
  264. package/dist/src/core/config/types.d.ts +81 -422
  265. package/dist/src/core/config/types.d.ts.map +1 -1
  266. package/dist/src/core/config/types.js +31 -163
  267. package/dist/src/core/config/types.js.map +1 -1
  268. package/dist/src/core/discrepancy/increment-generator.js +1 -1
  269. package/dist/src/core/discrepancy/increment-generator.js.map +1 -1
  270. package/dist/src/core/doctor/checkers/configuration-checker.d.ts +6 -2
  271. package/dist/src/core/doctor/checkers/configuration-checker.d.ts.map +1 -1
  272. package/dist/src/core/doctor/checkers/configuration-checker.js +58 -79
  273. package/dist/src/core/doctor/checkers/configuration-checker.js.map +1 -1
  274. package/dist/src/core/doctor/checkers/environment-checker.d.ts.map +1 -1
  275. package/dist/src/core/doctor/checkers/environment-checker.js +18 -8
  276. package/dist/src/core/doctor/checkers/environment-checker.js.map +1 -1
  277. package/dist/src/core/doctor/checkers/git-checker.d.ts +7 -0
  278. package/dist/src/core/doctor/checkers/git-checker.d.ts.map +1 -1
  279. package/dist/src/core/doctor/checkers/git-checker.js +73 -0
  280. package/dist/src/core/doctor/checkers/git-checker.js.map +1 -1
  281. package/dist/src/core/doctor/checkers/hooks-checker.d.ts +13 -5
  282. package/dist/src/core/doctor/checkers/hooks-checker.d.ts.map +1 -1
  283. package/dist/src/core/doctor/checkers/hooks-checker.js +105 -129
  284. package/dist/src/core/doctor/checkers/hooks-checker.js.map +1 -1
  285. package/dist/src/core/doctor/checkers/hygiene-checker.d.ts +21 -0
  286. package/dist/src/core/doctor/checkers/hygiene-checker.d.ts.map +1 -0
  287. package/dist/src/core/doctor/checkers/hygiene-checker.js +110 -0
  288. package/dist/src/core/doctor/checkers/hygiene-checker.js.map +1 -0
  289. package/dist/src/core/doctor/checkers/increments-checker.js +1 -1
  290. package/dist/src/core/doctor/checkers/increments-checker.js.map +1 -1
  291. package/dist/src/core/doctor/checkers/installation-health-checker.d.ts +66 -5
  292. package/dist/src/core/doctor/checkers/installation-health-checker.d.ts.map +1 -1
  293. package/dist/src/core/doctor/checkers/installation-health-checker.js +237 -78
  294. package/dist/src/core/doctor/checkers/installation-health-checker.js.map +1 -1
  295. package/dist/src/core/doctor/checkers/instruction-files-checker.d.ts +33 -0
  296. package/dist/src/core/doctor/checkers/instruction-files-checker.d.ts.map +1 -0
  297. package/dist/src/core/doctor/checkers/instruction-files-checker.js +186 -0
  298. package/dist/src/core/doctor/checkers/instruction-files-checker.js.map +1 -0
  299. package/dist/src/core/doctor/checkers/project-structure-checker.d.ts.map +1 -1
  300. package/dist/src/core/doctor/checkers/project-structure-checker.js +6 -5
  301. package/dist/src/core/doctor/checkers/project-structure-checker.js.map +1 -1
  302. package/dist/src/core/doctor/doctor.js +5 -5
  303. package/dist/src/core/doctor/doctor.js.map +1 -1
  304. package/dist/src/core/doctor/types.d.ts +2 -0
  305. package/dist/src/core/doctor/types.d.ts.map +1 -1
  306. package/dist/src/core/doctor/types.js.map +1 -1
  307. package/dist/src/core/hooks/LifecycleHookDispatcher.d.ts +3 -11
  308. package/dist/src/core/hooks/LifecycleHookDispatcher.d.ts.map +1 -1
  309. package/dist/src/core/hooks/LifecycleHookDispatcher.js +27 -82
  310. package/dist/src/core/hooks/LifecycleHookDispatcher.js.map +1 -1
  311. package/dist/src/core/hooks/handlers/hook-router.d.ts +10 -7
  312. package/dist/src/core/hooks/handlers/hook-router.d.ts.map +1 -1
  313. package/dist/src/core/hooks/handlers/hook-router.js +47 -93
  314. package/dist/src/core/hooks/handlers/hook-router.js.map +1 -1
  315. package/dist/src/core/hooks/handlers/index.d.ts +4 -4
  316. package/dist/src/core/hooks/handlers/index.d.ts.map +1 -1
  317. package/dist/src/core/hooks/handlers/index.js +3 -3
  318. package/dist/src/core/hooks/handlers/index.js.map +1 -1
  319. package/dist/src/core/hooks/handlers/pre-compact.d.ts +14 -24
  320. package/dist/src/core/hooks/handlers/pre-compact.d.ts.map +1 -1
  321. package/dist/src/core/hooks/handlers/pre-compact.js +58 -89
  322. package/dist/src/core/hooks/handlers/pre-compact.js.map +1 -1
  323. package/dist/src/core/hooks/handlers/pre-tool-use.d.ts +9 -4
  324. package/dist/src/core/hooks/handlers/pre-tool-use.d.ts.map +1 -1
  325. package/dist/src/core/hooks/handlers/pre-tool-use.js +40 -346
  326. package/dist/src/core/hooks/handlers/pre-tool-use.js.map +1 -1
  327. package/dist/src/core/hooks/handlers/session-start.d.ts +11 -3
  328. package/dist/src/core/hooks/handlers/session-start.d.ts.map +1 -1
  329. package/dist/src/core/hooks/handlers/session-start.js +131 -78
  330. package/dist/src/core/hooks/handlers/session-start.js.map +1 -1
  331. package/dist/src/core/hooks/handlers/stop.d.ts +24 -0
  332. package/dist/src/core/hooks/handlers/stop.d.ts.map +1 -0
  333. package/dist/src/core/hooks/handlers/stop.js +184 -0
  334. package/dist/src/core/hooks/handlers/stop.js.map +1 -0
  335. package/dist/src/core/hooks/handlers/types.d.ts +61 -41
  336. package/dist/src/core/hooks/handlers/types.d.ts.map +1 -1
  337. package/dist/src/core/hooks/handlers/types.js +100 -16
  338. package/dist/src/core/hooks/handlers/types.js.map +1 -1
  339. package/dist/src/core/hooks/handlers/utils.d.ts +27 -9
  340. package/dist/src/core/hooks/handlers/utils.d.ts.map +1 -1
  341. package/dist/src/core/hooks/handlers/utils.js +86 -26
  342. package/dist/src/core/hooks/handlers/utils.js.map +1 -1
  343. package/dist/src/core/increment/auto-transition-manager.d.ts.map +1 -1
  344. package/dist/src/core/increment/auto-transition-manager.js +11 -9
  345. package/dist/src/core/increment/auto-transition-manager.js.map +1 -1
  346. package/dist/src/core/increment/completion-validator.d.ts +8 -20
  347. package/dist/src/core/increment/completion-validator.d.ts.map +1 -1
  348. package/dist/src/core/increment/completion-validator.js +43 -239
  349. package/dist/src/core/increment/completion-validator.js.map +1 -1
  350. package/dist/src/core/increment/discipline-checker.d.ts +17 -38
  351. package/dist/src/core/increment/discipline-checker.d.ts.map +1 -1
  352. package/dist/src/core/increment/discipline-checker.js +49 -143
  353. package/dist/src/core/increment/discipline-checker.js.map +1 -1
  354. package/dist/src/core/increment/increment-artifacts.d.ts +38 -0
  355. package/dist/src/core/increment/increment-artifacts.d.ts.map +1 -0
  356. package/dist/src/core/increment/increment-artifacts.js +57 -0
  357. package/dist/src/core/increment/increment-artifacts.js.map +1 -0
  358. package/dist/src/core/increment/increment-reopener.d.ts +0 -27
  359. package/dist/src/core/increment/increment-reopener.d.ts.map +1 -1
  360. package/dist/src/core/increment/increment-reopener.js +3 -55
  361. package/dist/src/core/increment/increment-reopener.js.map +1 -1
  362. package/dist/src/core/increment/metadata-manager.d.ts +9 -5
  363. package/dist/src/core/increment/metadata-manager.d.ts.map +1 -1
  364. package/dist/src/core/increment/metadata-manager.js +70 -13
  365. package/dist/src/core/increment/metadata-manager.js.map +1 -1
  366. package/dist/src/core/increment/spec-frontmatter-updater.d.ts.map +1 -1
  367. package/dist/src/core/increment/spec-frontmatter-updater.js +11 -3
  368. package/dist/src/core/increment/spec-frontmatter-updater.js.map +1 -1
  369. package/dist/src/core/increment/status-auto-transition.d.ts +7 -3
  370. package/dist/src/core/increment/status-auto-transition.d.ts.map +1 -1
  371. package/dist/src/core/increment/status-auto-transition.js +16 -12
  372. package/dist/src/core/increment/status-auto-transition.js.map +1 -1
  373. package/dist/src/core/increment/status-change-sync-trigger.d.ts +0 -5
  374. package/dist/src/core/increment/status-change-sync-trigger.d.ts.map +1 -1
  375. package/dist/src/core/increment/status-change-sync-trigger.js +42 -39
  376. package/dist/src/core/increment/status-change-sync-trigger.js.map +1 -1
  377. package/dist/src/core/increment/status-commands.d.ts +21 -1
  378. package/dist/src/core/increment/status-commands.d.ts.map +1 -1
  379. package/dist/src/core/increment/status-commands.js +167 -88
  380. package/dist/src/core/increment/status-commands.js.map +1 -1
  381. package/dist/src/core/increment/template-creator.d.ts +24 -0
  382. package/dist/src/core/increment/template-creator.d.ts.map +1 -1
  383. package/dist/src/core/increment/template-creator.js +127 -175
  384. package/dist/src/core/increment/template-creator.js.map +1 -1
  385. package/dist/src/core/increment/types.d.ts +7 -21
  386. package/dist/src/core/increment/types.d.ts.map +1 -1
  387. package/dist/src/core/increment/types.js +1 -2
  388. package/dist/src/core/increment/types.js.map +1 -1
  389. package/dist/src/core/lazy-loading/llm-plugin-detector.d.ts +7 -4
  390. package/dist/src/core/lazy-loading/llm-plugin-detector.d.ts.map +1 -1
  391. package/dist/src/core/lazy-loading/llm-plugin-detector.js +14 -17
  392. package/dist/src/core/lazy-loading/llm-plugin-detector.js.map +1 -1
  393. package/dist/src/core/living-docs/intelligent-analyzer/index.d.ts +0 -6
  394. package/dist/src/core/living-docs/intelligent-analyzer/index.d.ts.map +1 -1
  395. package/dist/src/core/living-docs/intelligent-analyzer/index.js +1 -153
  396. package/dist/src/core/living-docs/intelligent-analyzer/index.js.map +1 -1
  397. package/dist/src/core/living-docs/living-docs-enabled.d.ts +21 -0
  398. package/dist/src/core/living-docs/living-docs-enabled.d.ts.map +1 -0
  399. package/dist/src/core/living-docs/living-docs-enabled.js +31 -0
  400. package/dist/src/core/living-docs/living-docs-enabled.js.map +1 -0
  401. package/dist/src/core/living-docs/living-docs-sync.d.ts +9 -11
  402. package/dist/src/core/living-docs/living-docs-sync.d.ts.map +1 -1
  403. package/dist/src/core/living-docs/living-docs-sync.js +30 -49
  404. package/dist/src/core/living-docs/living-docs-sync.js.map +1 -1
  405. package/dist/src/core/living-docs/types.d.ts +7 -0
  406. package/dist/src/core/living-docs/types.d.ts.map +1 -1
  407. package/dist/src/core/qa/qa-runner.d.ts.map +1 -1
  408. package/dist/src/core/qa/qa-runner.js +7 -26
  409. package/dist/src/core/qa/qa-runner.js.map +1 -1
  410. package/dist/src/core/repo-structure/setup-summary.js +1 -1
  411. package/dist/src/core/repo-structure/setup-summary.js.map +1 -1
  412. package/dist/src/core/rubric/rubric-evaluator.d.ts +2 -0
  413. package/dist/src/core/rubric/rubric-evaluator.d.ts.map +1 -1
  414. package/dist/src/core/rubric/rubric-evaluator.js +33 -0
  415. package/dist/src/core/rubric/rubric-evaluator.js.map +1 -1
  416. package/dist/src/core/rubric/rubric-generator.d.ts.map +1 -1
  417. package/dist/src/core/rubric/rubric-generator.js +8 -15
  418. package/dist/src/core/rubric/rubric-generator.js.map +1 -1
  419. package/dist/src/core/rubric/rubric-parser.js +1 -1
  420. package/dist/src/core/rubric/rubric-parser.js.map +1 -1
  421. package/dist/src/core/rubric/types.d.ts +8 -2
  422. package/dist/src/core/rubric/types.d.ts.map +1 -1
  423. package/dist/src/core/rubric/types.js.map +1 -1
  424. package/dist/src/core/session/handoff-doc-format.d.ts +37 -108
  425. package/dist/src/core/session/handoff-doc-format.d.ts.map +1 -1
  426. package/dist/src/core/session/handoff-doc-format.js +84 -179
  427. package/dist/src/core/session/handoff-doc-format.js.map +1 -1
  428. package/dist/src/core/session/handoff-git-state.d.ts +3 -14
  429. package/dist/src/core/session/handoff-git-state.d.ts.map +1 -1
  430. package/dist/src/core/session/handoff-git-state.js +68 -124
  431. package/dist/src/core/session/handoff-git-state.js.map +1 -1
  432. package/dist/src/core/session/install-handoff-context.d.ts.map +1 -1
  433. package/dist/src/core/session/install-handoff-context.js +15 -24
  434. package/dist/src/core/session/install-handoff-context.js.map +1 -1
  435. package/dist/src/core/session/work-handoff.d.ts +21 -55
  436. package/dist/src/core/session/work-handoff.d.ts.map +1 -1
  437. package/dist/src/core/session/work-handoff.js +146 -261
  438. package/dist/src/core/session/work-handoff.js.map +1 -1
  439. package/dist/src/core/skill-gen/types.d.ts +23 -1
  440. package/dist/src/core/skill-gen/types.d.ts.map +1 -1
  441. package/dist/src/core/skill-gen/types.js +1 -1
  442. package/dist/src/core/skills/skill-judge.d.ts +0 -7
  443. package/dist/src/core/skills/skill-judge.d.ts.map +1 -1
  444. package/dist/src/core/skills/skill-judge.js +10 -3
  445. package/dist/src/core/skills/skill-judge.js.map +1 -1
  446. package/dist/src/core/state/state-gc.d.ts +65 -0
  447. package/dist/src/core/state/state-gc.d.ts.map +1 -0
  448. package/dist/src/core/state/state-gc.js +234 -0
  449. package/dist/src/core/state/state-gc.js.map +1 -0
  450. package/dist/src/core/status-line/status-line-updater.d.ts.map +1 -1
  451. package/dist/src/core/status-line/status-line-updater.js +1 -0
  452. package/dist/src/core/status-line/status-line-updater.js.map +1 -1
  453. package/dist/src/core/status-line-validator.js +2 -2
  454. package/dist/src/core/status-line-validator.js.map +1 -1
  455. package/dist/src/core/tasks/closure-gate.d.ts +27 -0
  456. package/dist/src/core/tasks/closure-gate.d.ts.map +1 -0
  457. package/dist/src/core/tasks/closure-gate.js +72 -0
  458. package/dist/src/core/tasks/closure-gate.js.map +1 -0
  459. package/dist/src/core/tasks/increment-updated.d.ts +27 -0
  460. package/dist/src/core/tasks/increment-updated.d.ts.map +1 -0
  461. package/dist/src/core/tasks/increment-updated.js +47 -0
  462. package/dist/src/core/tasks/increment-updated.js.map +1 -0
  463. package/dist/src/core/tasks/ledger.d.ts +115 -0
  464. package/dist/src/core/tasks/ledger.d.ts.map +1 -0
  465. package/dist/src/core/tasks/ledger.js +250 -0
  466. package/dist/src/core/tasks/ledger.js.map +1 -0
  467. package/dist/src/core/tasks/resolve-increment.d.ts +47 -0
  468. package/dist/src/core/tasks/resolve-increment.d.ts.map +1 -0
  469. package/dist/src/core/tasks/resolve-increment.js +153 -0
  470. package/dist/src/core/tasks/resolve-increment.js.map +1 -0
  471. package/dist/src/core/tasks/run-shell.d.ts +27 -0
  472. package/dist/src/core/tasks/run-shell.d.ts.map +1 -0
  473. package/dist/src/core/tasks/run-shell.js +67 -0
  474. package/dist/src/core/tasks/run-shell.js.map +1 -0
  475. package/dist/src/core/tasks/supersede.d.ts +24 -0
  476. package/dist/src/core/tasks/supersede.d.ts.map +1 -0
  477. package/dist/src/core/tasks/supersede.js +86 -0
  478. package/dist/src/core/tasks/supersede.js.map +1 -0
  479. package/dist/src/core/tasks/task-board.d.ts +75 -0
  480. package/dist/src/core/tasks/task-board.d.ts.map +1 -0
  481. package/dist/src/core/tasks/task-board.js +259 -0
  482. package/dist/src/core/tasks/task-board.js.map +1 -0
  483. package/dist/src/core/tasks/task-id.d.ts +24 -0
  484. package/dist/src/core/tasks/task-id.d.ts.map +1 -0
  485. package/dist/src/core/tasks/task-id.js +24 -0
  486. package/dist/src/core/tasks/task-id.js.map +1 -0
  487. package/dist/src/core/tasks/verify-runner.d.ts +87 -0
  488. package/dist/src/core/tasks/verify-runner.d.ts.map +1 -0
  489. package/dist/src/core/tasks/verify-runner.js +166 -0
  490. package/dist/src/core/tasks/verify-runner.js.map +1 -0
  491. package/dist/src/core/team-lead/template-loader.js +1 -1
  492. package/dist/src/core/team-lead/template-loader.js.map +1 -1
  493. package/dist/src/core/types/increment-metadata.d.ts +86 -35
  494. package/dist/src/core/types/increment-metadata.d.ts.map +1 -1
  495. package/dist/src/core/types/increment-metadata.js +115 -47
  496. package/dist/src/core/types/increment-metadata.js.map +1 -1
  497. package/dist/src/core/validation/increment-structure-validator.d.ts +2 -1
  498. package/dist/src/core/validation/increment-structure-validator.d.ts.map +1 -1
  499. package/dist/src/core/validation/increment-structure-validator.js +3 -13
  500. package/dist/src/core/validation/increment-structure-validator.js.map +1 -1
  501. package/dist/src/dashboard/server/dashboard-server.d.ts.map +1 -1
  502. package/dist/src/dashboard/server/dashboard-server.js +12 -19
  503. package/dist/src/dashboard/server/dashboard-server.js.map +1 -1
  504. package/dist/src/dashboard/server/data/dashboard-data-aggregator.js +1 -1
  505. package/dist/src/dashboard/server/data/dashboard-data-aggregator.js.map +1 -1
  506. package/dist/src/generators/spec/task-parser.d.ts +18 -2
  507. package/dist/src/generators/spec/task-parser.d.ts.map +1 -1
  508. package/dist/src/generators/spec/task-parser.js +74 -6
  509. package/dist/src/generators/spec/task-parser.js.map +1 -1
  510. package/dist/src/importers/github-importer.d.ts.map +1 -1
  511. package/dist/src/importers/github-importer.js +6 -4
  512. package/dist/src/importers/github-importer.js.map +1 -1
  513. package/dist/src/importers/import-to-increment.js +2 -2
  514. package/dist/src/importers/import-to-increment.js.map +1 -1
  515. package/dist/src/init/research/types.d.ts +1 -1
  516. package/dist/src/progress/us-progress-tracker.d.ts +4 -0
  517. package/dist/src/progress/us-progress-tracker.d.ts.map +1 -1
  518. package/dist/src/progress/us-progress-tracker.js +10 -3
  519. package/dist/src/progress/us-progress-tracker.js.map +1 -1
  520. package/dist/src/sync/config.js +2 -2
  521. package/dist/src/sync/config.js.map +1 -1
  522. package/dist/src/sync/external-sync-configured.d.ts +23 -0
  523. package/dist/src/sync/external-sync-configured.d.ts.map +1 -0
  524. package/dist/src/sync/external-sync-configured.js +51 -0
  525. package/dist/src/sync/external-sync-configured.js.map +1 -0
  526. package/dist/src/sync/github-reconciler.js +2 -2
  527. package/dist/src/sync/github-reconciler.js.map +1 -1
  528. package/dist/src/sync/sync-coordinator.js +4 -4
  529. package/dist/src/sync/sync-coordinator.js.map +1 -1
  530. package/dist/src/sync/sync-target-resolver.js +1 -1
  531. package/dist/src/sync/sync-target-resolver.js.map +1 -1
  532. package/dist/src/utils/auth-helpers.d.ts +37 -16
  533. package/dist/src/utils/auth-helpers.d.ts.map +1 -1
  534. package/dist/src/utils/auth-helpers.js +88 -74
  535. package/dist/src/utils/auth-helpers.js.map +1 -1
  536. package/dist/src/utils/cost-reporter.js +1 -1
  537. package/dist/src/utils/cost-reporter.js.map +1 -1
  538. package/dist/src/utils/notification-constants.js +1 -1
  539. package/dist/src/utils/notification-constants.js.map +1 -1
  540. package/dist/src/utils/port-reachable.d.ts +3 -0
  541. package/dist/src/utils/port-reachable.d.ts.map +1 -0
  542. package/dist/src/utils/port-reachable.js +22 -0
  543. package/dist/src/utils/port-reachable.js.map +1 -0
  544. package/package.json +14 -8
  545. package/plugins/PLUGINS-INDEX.md +25 -44
  546. package/plugins/specweave/.claude-plugin/plugin.json +10 -15
  547. package/plugins/specweave/.lint/skill-lint.test.ts +93 -0
  548. package/plugins/specweave/PLUGIN.md +40 -105
  549. package/plugins/specweave/agents/sw-closer.md +16 -25
  550. package/plugins/specweave/defaults/rubric-defaults.md +11 -11
  551. package/plugins/specweave/hooks/hooks.json +13 -65
  552. package/plugins/specweave/hooks/run-worker.mjs +229 -0
  553. package/plugins/specweave/hooks/run.mjs +72 -0
  554. package/plugins/specweave/lib/external-sync/README.md +2 -3
  555. package/plugins/specweave/lib/integrations/github/github-access-error.js +2 -2
  556. package/plugins/specweave/lib/integrations/github/github-access-error.ts +3 -3
  557. package/plugins/specweave/lib/integrations/github/github-client-v2.js +19 -40
  558. package/plugins/specweave/lib/integrations/github/github-client-v2.ts +19 -40
  559. package/plugins/specweave/lib/integrations/github/github-feature-sync-cli.js +1 -1
  560. package/plugins/specweave/lib/integrations/github/github-feature-sync-cli.ts +1 -1
  561. package/plugins/specweave/lib/integrations/github/github-feature-sync.js +2 -2
  562. package/plugins/specweave/lib/integrations/github/github-feature-sync.ts +2 -2
  563. package/plugins/specweave/lib/vendor/core/increment/auto-transition-manager.js +11 -9
  564. package/plugins/specweave/lib/vendor/core/increment/auto-transition-manager.js.map +1 -1
  565. package/plugins/specweave/lib/vendor/core/increment/metadata-manager.d.ts +9 -5
  566. package/plugins/specweave/lib/vendor/core/increment/metadata-manager.js +70 -13
  567. package/plugins/specweave/lib/vendor/core/increment/metadata-manager.js.map +1 -1
  568. package/plugins/specweave/lib/vendor/core/increment/status-auto-transition.d.ts +7 -3
  569. package/plugins/specweave/lib/vendor/core/increment/status-auto-transition.js +16 -12
  570. package/plugins/specweave/lib/vendor/core/increment/status-auto-transition.js.map +1 -1
  571. package/plugins/specweave/lib/vendor/core/tasks/task-id.d.ts +24 -0
  572. package/plugins/specweave/lib/vendor/core/tasks/task-id.js +24 -0
  573. package/plugins/specweave/lib/vendor/core/tasks/task-id.js.map +1 -0
  574. package/plugins/specweave/lib/vendor/core/types/increment-metadata.d.ts +86 -35
  575. package/plugins/specweave/lib/vendor/core/types/increment-metadata.js +115 -47
  576. package/plugins/specweave/lib/vendor/core/types/increment-metadata.js.map +1 -1
  577. package/plugins/specweave/lib/vendor/generators/spec/task-parser.d.ts +18 -2
  578. package/plugins/specweave/lib/vendor/generators/spec/task-parser.js +74 -6
  579. package/plugins/specweave/lib/vendor/generators/spec/task-parser.js.map +1 -1
  580. package/plugins/specweave/lib/vendor/sync/config.js +2 -2
  581. package/plugins/specweave/lib/vendor/sync/config.js.map +1 -1
  582. package/plugins/specweave/lib/vendor/sync/github-reconciler.js +2 -2
  583. package/plugins/specweave/lib/vendor/sync/github-reconciler.js.map +1 -1
  584. package/plugins/specweave/lib/vendor/utils/auth-helpers.d.ts +37 -16
  585. package/plugins/specweave/lib/vendor/utils/auth-helpers.js +88 -74
  586. package/plugins/specweave/lib/vendor/utils/auth-helpers.js.map +1 -1
  587. package/plugins/specweave/marketplace.json +99 -91
  588. package/plugins/specweave/reference/ado/ado-specweave-mapping.md +5 -6
  589. package/plugins/specweave/reference/github/github-specweave-mapping.md +3 -4
  590. package/plugins/specweave/reference/jira/jira-specweave-mapping.md +5 -5
  591. package/plugins/specweave/scripts/README.md +23 -168
  592. package/plugins/specweave/scripts/jobs.js +3 -2
  593. package/plugins/specweave/scripts/progress.js +9 -8
  594. package/plugins/specweave/scripts/status.js +7 -6
  595. package/plugins/specweave/skills/auto/SKILL.md +47 -263
  596. package/plugins/specweave/skills/brainstorm/SKILL.md +53 -559
  597. package/plugins/specweave/skills/do/SKILL.md +31 -249
  598. package/plugins/specweave/skills/done/SKILL.md +23 -264
  599. package/plugins/specweave/skills/handoff/SKILL.md +22 -40
  600. package/plugins/specweave/skills/increment/SKILL.md +81 -489
  601. package/plugins/specweave/skills/qa/SKILL.md +45 -0
  602. package/plugins/specweave/skills/review/SKILL.md +102 -0
  603. package/plugins/specweave/skills/sync/SKILL.md +63 -0
  604. package/plugins/specweave/skills/team/SKILL.md +89 -0
  605. package/plugins/specweave/skills/{team-lead → team}/agents/_protocol.md +1 -1
  606. package/plugins/specweave/skills/{team-lead → team}/agents/architect.md +4 -2
  607. package/plugins/specweave/skills/{team-lead → team}/agents/backend.md +3 -3
  608. package/plugins/specweave/skills/{team-lead → team}/agents/database.md +2 -2
  609. package/plugins/specweave/skills/{team-lead → team}/agents/frontend.md +2 -2
  610. package/plugins/specweave/skills/{team-lead → team}/agents/pm.md +3 -2
  611. package/plugins/specweave/skills/{team-lead → team}/agents/security.md +2 -2
  612. package/plugins/specweave/skills/{team-lead → team}/agents/testing.md +4 -4
  613. package/src/templates/.gitattributes.template +3 -0
  614. package/src/templates/.gitignore.template +63 -27
  615. package/src/templates/AGENTS.md.template +52 -423
  616. package/src/templates/CLAUDE.md.template +50 -290
  617. package/src/templates/README.md.template +16 -146
  618. package/src/templates/git-hooks/pre-commit.template +22 -26
  619. package/dist/dashboard/assets/index-DAfC5dt1.css +0 -1
  620. package/dist/src/adapters/agents-md-generator.d.ts +0 -48
  621. package/dist/src/adapters/agents-md-generator.d.ts.map +0 -1
  622. package/dist/src/adapters/agents-md-generator.js +0 -129
  623. package/dist/src/adapters/agents-md-generator.js.map +0 -1
  624. package/dist/src/adapters/claude-md-generator.d.ts +0 -78
  625. package/dist/src/adapters/claude-md-generator.d.ts.map +0 -1
  626. package/dist/src/adapters/claude-md-generator.js +0 -248
  627. package/dist/src/adapters/claude-md-generator.js.map +0 -1
  628. package/dist/src/adapters/template-utils.d.ts +0 -16
  629. package/dist/src/adapters/template-utils.d.ts.map +0 -1
  630. package/dist/src/adapters/template-utils.js +0 -61
  631. package/dist/src/adapters/template-utils.js.map +0 -1
  632. package/dist/src/cli/commands/logs.d.ts +0 -13
  633. package/dist/src/cli/commands/logs.d.ts.map +0 -1
  634. package/dist/src/cli/commands/logs.js +0 -110
  635. package/dist/src/cli/commands/logs.js.map +0 -1
  636. package/dist/src/cli/commands/reflect-stop.d.ts +0 -30
  637. package/dist/src/cli/commands/reflect-stop.d.ts.map +0 -1
  638. package/dist/src/cli/commands/reflect-stop.js +0 -63
  639. package/dist/src/cli/commands/reflect-stop.js.map +0 -1
  640. package/dist/src/cli/commands/revert-wip-limit.d.ts +0 -8
  641. package/dist/src/cli/commands/revert-wip-limit.d.ts.map +0 -1
  642. package/dist/src/cli/commands/revert-wip-limit.js +0 -65
  643. package/dist/src/cli/commands/revert-wip-limit.js.map +0 -1
  644. package/dist/src/cli/commands/set-sync-target.d.ts +0 -41
  645. package/dist/src/cli/commands/set-sync-target.d.ts.map +0 -1
  646. package/dist/src/cli/commands/set-sync-target.js +0 -126
  647. package/dist/src/cli/commands/set-sync-target.js.map +0 -1
  648. package/dist/src/cli/commands/sync-flush.d.ts +0 -31
  649. package/dist/src/cli/commands/sync-flush.d.ts.map +0 -1
  650. package/dist/src/cli/commands/sync-flush.js +0 -114
  651. package/dist/src/cli/commands/sync-flush.js.map +0 -1
  652. package/dist/src/cli/commands/sync-scheduled.d.ts +0 -38
  653. package/dist/src/cli/commands/sync-scheduled.d.ts.map +0 -1
  654. package/dist/src/cli/commands/sync-scheduled.js +0 -171
  655. package/dist/src/cli/commands/sync-scheduled.js.map +0 -1
  656. package/dist/src/cli/commands/sync-task.d.ts +0 -16
  657. package/dist/src/cli/commands/sync-task.d.ts.map +0 -1
  658. package/dist/src/cli/commands/sync-task.js +0 -42
  659. package/dist/src/cli/commands/sync-task.js.map +0 -1
  660. package/dist/src/cli/commands/validate-jira.d.ts +0 -35
  661. package/dist/src/cli/commands/validate-jira.d.ts.map +0 -1
  662. package/dist/src/cli/commands/validate-jira.js +0 -116
  663. package/dist/src/cli/commands/validate-jira.js.map +0 -1
  664. package/dist/src/cli/helpers/init/claude-settings-permissions.d.ts +0 -20
  665. package/dist/src/cli/helpers/init/claude-settings-permissions.d.ts.map +0 -1
  666. package/dist/src/cli/helpers/init/claude-settings-permissions.js +0 -71
  667. package/dist/src/cli/helpers/init/claude-settings-permissions.js.map +0 -1
  668. package/dist/src/cli/helpers/init/dci-scripts-installer.d.ts +0 -21
  669. package/dist/src/cli/helpers/init/dci-scripts-installer.d.ts.map +0 -1
  670. package/dist/src/cli/helpers/init/dci-scripts-installer.js +0 -58
  671. package/dist/src/cli/helpers/init/dci-scripts-installer.js.map +0 -1
  672. package/dist/src/cli/helpers/init/deep-interview-config.d.ts +0 -35
  673. package/dist/src/cli/helpers/init/deep-interview-config.d.ts.map +0 -1
  674. package/dist/src/cli/helpers/init/deep-interview-config.js +0 -261
  675. package/dist/src/cli/helpers/init/deep-interview-config.js.map +0 -1
  676. package/dist/src/cli/helpers/init/quality-gates-config.d.ts +0 -57
  677. package/dist/src/cli/helpers/init/quality-gates-config.d.ts.map +0 -1
  678. package/dist/src/cli/helpers/init/quality-gates-config.js +0 -306
  679. package/dist/src/cli/helpers/init/quality-gates-config.js.map +0 -1
  680. package/dist/src/cli/helpers/init/translation-config.d.ts +0 -96
  681. package/dist/src/cli/helpers/init/translation-config.d.ts.map +0 -1
  682. package/dist/src/cli/helpers/init/translation-config.js +0 -472
  683. package/dist/src/cli/helpers/init/translation-config.js.map +0 -1
  684. package/dist/src/core/dashboard/dashboard-data.d.ts +0 -156
  685. package/dist/src/core/dashboard/dashboard-data.d.ts.map +0 -1
  686. package/dist/src/core/dashboard/dashboard-data.js +0 -186
  687. package/dist/src/core/dashboard/dashboard-data.js.map +0 -1
  688. package/dist/src/core/dashboard/index.d.ts +0 -9
  689. package/dist/src/core/dashboard/index.d.ts.map +0 -1
  690. package/dist/src/core/dashboard/index.js +0 -9
  691. package/dist/src/core/dashboard/index.js.map +0 -1
  692. package/dist/src/core/doctor/checkers/plugin-currency-checker.d.ts +0 -26
  693. package/dist/src/core/doctor/checkers/plugin-currency-checker.d.ts.map +0 -1
  694. package/dist/src/core/doctor/checkers/plugin-currency-checker.js +0 -128
  695. package/dist/src/core/doctor/checkers/plugin-currency-checker.js.map +0 -1
  696. package/dist/src/core/doctor/checkers/skill-currency-checker.d.ts +0 -25
  697. package/dist/src/core/doctor/checkers/skill-currency-checker.d.ts.map +0 -1
  698. package/dist/src/core/doctor/checkers/skill-currency-checker.js +0 -98
  699. package/dist/src/core/doctor/checkers/skill-currency-checker.js.map +0 -1
  700. package/dist/src/core/hooks/HealthReporter.d.ts +0 -57
  701. package/dist/src/core/hooks/HealthReporter.d.ts.map +0 -1
  702. package/dist/src/core/hooks/HealthReporter.js +0 -260
  703. package/dist/src/core/hooks/HealthReporter.js.map +0 -1
  704. package/dist/src/core/hooks/HookAutoFixer.d.ts +0 -44
  705. package/dist/src/core/hooks/HookAutoFixer.d.ts.map +0 -1
  706. package/dist/src/core/hooks/HookAutoFixer.js +0 -168
  707. package/dist/src/core/hooks/HookAutoFixer.js.map +0 -1
  708. package/dist/src/core/hooks/HookExecutor.d.ts +0 -57
  709. package/dist/src/core/hooks/HookExecutor.d.ts.map +0 -1
  710. package/dist/src/core/hooks/HookExecutor.js +0 -268
  711. package/dist/src/core/hooks/HookExecutor.js.map +0 -1
  712. package/dist/src/core/hooks/HookHealthChecker.d.ts +0 -52
  713. package/dist/src/core/hooks/HookHealthChecker.d.ts.map +0 -1
  714. package/dist/src/core/hooks/HookHealthChecker.js +0 -202
  715. package/dist/src/core/hooks/HookHealthChecker.js.map +0 -1
  716. package/dist/src/core/hooks/HookScanner.d.ts +0 -105
  717. package/dist/src/core/hooks/HookScanner.d.ts.map +0 -1
  718. package/dist/src/core/hooks/HookScanner.js +0 -307
  719. package/dist/src/core/hooks/HookScanner.js.map +0 -1
  720. package/dist/src/core/hooks/feature-id-resolver.d.ts +0 -16
  721. package/dist/src/core/hooks/feature-id-resolver.d.ts.map +0 -1
  722. package/dist/src/core/hooks/feature-id-resolver.js +0 -60
  723. package/dist/src/core/hooks/feature-id-resolver.js.map +0 -1
  724. package/dist/src/core/hooks/github-project-sync.d.ts +0 -16
  725. package/dist/src/core/hooks/github-project-sync.d.ts.map +0 -1
  726. package/dist/src/core/hooks/github-project-sync.js +0 -37
  727. package/dist/src/core/hooks/github-project-sync.js.map +0 -1
  728. package/dist/src/core/hooks/handlers/banner-check.d.ts +0 -42
  729. package/dist/src/core/hooks/handlers/banner-check.d.ts.map +0 -1
  730. package/dist/src/core/hooks/handlers/banner-check.js +0 -180
  731. package/dist/src/core/hooks/handlers/banner-check.js.map +0 -1
  732. package/dist/src/core/hooks/handlers/banner-state.d.ts +0 -44
  733. package/dist/src/core/hooks/handlers/banner-state.d.ts.map +0 -1
  734. package/dist/src/core/hooks/handlers/banner-state.js +0 -100
  735. package/dist/src/core/hooks/handlers/banner-state.js.map +0 -1
  736. package/dist/src/core/hooks/handlers/post-tool-use-analytics.d.ts +0 -11
  737. package/dist/src/core/hooks/handlers/post-tool-use-analytics.d.ts.map +0 -1
  738. package/dist/src/core/hooks/handlers/post-tool-use-analytics.js +0 -75
  739. package/dist/src/core/hooks/handlers/post-tool-use-analytics.js.map +0 -1
  740. package/dist/src/core/hooks/handlers/post-tool-use.d.ts +0 -11
  741. package/dist/src/core/hooks/handlers/post-tool-use.d.ts.map +0 -1
  742. package/dist/src/core/hooks/handlers/post-tool-use.js +0 -76
  743. package/dist/src/core/hooks/handlers/post-tool-use.js.map +0 -1
  744. package/dist/src/core/hooks/handlers/stop-auto.d.ts +0 -22
  745. package/dist/src/core/hooks/handlers/stop-auto.d.ts.map +0 -1
  746. package/dist/src/core/hooks/handlers/stop-auto.js +0 -227
  747. package/dist/src/core/hooks/handlers/stop-auto.js.map +0 -1
  748. package/dist/src/core/hooks/handlers/stop-reflect.d.ts +0 -14
  749. package/dist/src/core/hooks/handlers/stop-reflect.d.ts.map +0 -1
  750. package/dist/src/core/hooks/handlers/stop-reflect.js +0 -43
  751. package/dist/src/core/hooks/handlers/stop-reflect.js.map +0 -1
  752. package/dist/src/core/hooks/handlers/stop-sync.d.ts +0 -15
  753. package/dist/src/core/hooks/handlers/stop-sync.d.ts.map +0 -1
  754. package/dist/src/core/hooks/handlers/stop-sync.js +0 -68
  755. package/dist/src/core/hooks/handlers/stop-sync.js.map +0 -1
  756. package/dist/src/core/hooks/handlers/user-prompt-submit.d.ts +0 -14
  757. package/dist/src/core/hooks/handlers/user-prompt-submit.d.ts.map +0 -1
  758. package/dist/src/core/hooks/handlers/user-prompt-submit.js +0 -196
  759. package/dist/src/core/hooks/handlers/user-prompt-submit.js.map +0 -1
  760. package/dist/src/core/hooks/hook-health-tracker.d.ts +0 -54
  761. package/dist/src/core/hooks/hook-health-tracker.d.ts.map +0 -1
  762. package/dist/src/core/hooks/hook-health-tracker.js +0 -140
  763. package/dist/src/core/hooks/hook-health-tracker.js.map +0 -1
  764. package/dist/src/core/hooks/hook-logger.d.ts +0 -83
  765. package/dist/src/core/hooks/hook-logger.d.ts.map +0 -1
  766. package/dist/src/core/hooks/hook-logger.js +0 -120
  767. package/dist/src/core/hooks/hook-logger.js.map +0 -1
  768. package/dist/src/core/hooks/log-rotator.d.ts +0 -51
  769. package/dist/src/core/hooks/log-rotator.d.ts.map +0 -1
  770. package/dist/src/core/hooks/log-rotator.js +0 -85
  771. package/dist/src/core/hooks/log-rotator.js.map +0 -1
  772. package/dist/src/core/hooks/pretooluse-guard.d.ts +0 -37
  773. package/dist/src/core/hooks/pretooluse-guard.d.ts.map +0 -1
  774. package/dist/src/core/hooks/pretooluse-guard.js +0 -64
  775. package/dist/src/core/hooks/pretooluse-guard.js.map +0 -1
  776. package/dist/src/core/hooks/project-scope-guard.d.ts +0 -77
  777. package/dist/src/core/hooks/project-scope-guard.d.ts.map +0 -1
  778. package/dist/src/core/hooks/project-scope-guard.js +0 -206
  779. package/dist/src/core/hooks/project-scope-guard.js.map +0 -1
  780. package/dist/src/core/hooks/types.d.ts +0 -322
  781. package/dist/src/core/hooks/types.d.ts.map +0 -1
  782. package/dist/src/core/hooks/types.js +0 -10
  783. package/dist/src/core/hooks/types.js.map +0 -1
  784. package/dist/src/core/increment/limits.d.ts +0 -68
  785. package/dist/src/core/increment/limits.d.ts.map +0 -1
  786. package/dist/src/core/increment/limits.js +0 -227
  787. package/dist/src/core/increment/limits.js.map +0 -1
  788. package/dist/src/core/living-docs/delivery/delivery-generator.d.ts +0 -58
  789. package/dist/src/core/living-docs/delivery/delivery-generator.d.ts.map +0 -1
  790. package/dist/src/core/living-docs/delivery/delivery-generator.js +0 -501
  791. package/dist/src/core/living-docs/delivery/delivery-generator.js.map +0 -1
  792. package/dist/src/core/living-docs/delivery/index.d.ts +0 -8
  793. package/dist/src/core/living-docs/delivery/index.d.ts.map +0 -1
  794. package/dist/src/core/living-docs/delivery/index.js +0 -7
  795. package/dist/src/core/living-docs/delivery/index.js.map +0 -1
  796. package/dist/src/core/living-docs/diagrams/index.d.ts +0 -8
  797. package/dist/src/core/living-docs/diagrams/index.d.ts.map +0 -1
  798. package/dist/src/core/living-docs/diagrams/index.js +0 -7
  799. package/dist/src/core/living-docs/diagrams/index.js.map +0 -1
  800. package/dist/src/core/living-docs/diagrams/mermaid-generator.d.ts +0 -113
  801. package/dist/src/core/living-docs/diagrams/mermaid-generator.d.ts.map +0 -1
  802. package/dist/src/core/living-docs/diagrams/mermaid-generator.js +0 -533
  803. package/dist/src/core/living-docs/diagrams/mermaid-generator.js.map +0 -1
  804. package/dist/src/core/living-docs/governance/ecosystem-detector.d.ts +0 -38
  805. package/dist/src/core/living-docs/governance/ecosystem-detector.d.ts.map +0 -1
  806. package/dist/src/core/living-docs/governance/ecosystem-detector.js +0 -325
  807. package/dist/src/core/living-docs/governance/ecosystem-detector.js.map +0 -1
  808. package/dist/src/core/living-docs/governance/frontend-standards-parser.d.ts +0 -74
  809. package/dist/src/core/living-docs/governance/frontend-standards-parser.d.ts.map +0 -1
  810. package/dist/src/core/living-docs/governance/frontend-standards-parser.js +0 -366
  811. package/dist/src/core/living-docs/governance/frontend-standards-parser.js.map +0 -1
  812. package/dist/src/core/living-docs/governance/go-standards-parser.d.ts +0 -64
  813. package/dist/src/core/living-docs/governance/go-standards-parser.d.ts.map +0 -1
  814. package/dist/src/core/living-docs/governance/go-standards-parser.js +0 -229
  815. package/dist/src/core/living-docs/governance/go-standards-parser.js.map +0 -1
  816. package/dist/src/core/living-docs/governance/index.d.ts +0 -50
  817. package/dist/src/core/living-docs/governance/index.d.ts.map +0 -1
  818. package/dist/src/core/living-docs/governance/index.js +0 -56
  819. package/dist/src/core/living-docs/governance/index.js.map +0 -1
  820. package/dist/src/core/living-docs/governance/java-standards-parser.d.ts +0 -89
  821. package/dist/src/core/living-docs/governance/java-standards-parser.d.ts.map +0 -1
  822. package/dist/src/core/living-docs/governance/java-standards-parser.js +0 -375
  823. package/dist/src/core/living-docs/governance/java-standards-parser.js.map +0 -1
  824. package/dist/src/core/living-docs/governance/python-standards-parser.d.ts +0 -83
  825. package/dist/src/core/living-docs/governance/python-standards-parser.d.ts.map +0 -1
  826. package/dist/src/core/living-docs/governance/python-standards-parser.js +0 -347
  827. package/dist/src/core/living-docs/governance/python-standards-parser.js.map +0 -1
  828. package/dist/src/core/living-docs/governance/standards-generator.d.ts +0 -38
  829. package/dist/src/core/living-docs/governance/standards-generator.d.ts.map +0 -1
  830. package/dist/src/core/living-docs/governance/standards-generator.js +0 -476
  831. package/dist/src/core/living-docs/governance/standards-generator.js.map +0 -1
  832. package/dist/src/core/living-docs/operations/index.d.ts +0 -8
  833. package/dist/src/core/living-docs/operations/index.d.ts.map +0 -1
  834. package/dist/src/core/living-docs/operations/index.js +0 -7
  835. package/dist/src/core/living-docs/operations/index.js.map +0 -1
  836. package/dist/src/core/living-docs/operations/ops-generator.d.ts +0 -53
  837. package/dist/src/core/living-docs/operations/ops-generator.d.ts.map +0 -1
  838. package/dist/src/core/living-docs/operations/ops-generator.js +0 -462
  839. package/dist/src/core/living-docs/operations/ops-generator.js.map +0 -1
  840. package/dist/src/core/reflect-nudge/aggregator.d.ts +0 -33
  841. package/dist/src/core/reflect-nudge/aggregator.d.ts.map +0 -1
  842. package/dist/src/core/reflect-nudge/aggregator.js +0 -80
  843. package/dist/src/core/reflect-nudge/aggregator.js.map +0 -1
  844. package/dist/src/core/reflect-nudge/eligibility.d.ts +0 -27
  845. package/dist/src/core/reflect-nudge/eligibility.d.ts.map +0 -1
  846. package/dist/src/core/reflect-nudge/eligibility.js +0 -114
  847. package/dist/src/core/reflect-nudge/eligibility.js.map +0 -1
  848. package/dist/src/core/reflect-nudge/index.d.ts +0 -14
  849. package/dist/src/core/reflect-nudge/index.d.ts.map +0 -1
  850. package/dist/src/core/reflect-nudge/index.js +0 -14
  851. package/dist/src/core/reflect-nudge/index.js.map +0 -1
  852. package/dist/src/core/reflect-nudge/interactive-prompt.d.ts +0 -28
  853. package/dist/src/core/reflect-nudge/interactive-prompt.d.ts.map +0 -1
  854. package/dist/src/core/reflect-nudge/interactive-prompt.js +0 -52
  855. package/dist/src/core/reflect-nudge/interactive-prompt.js.map +0 -1
  856. package/dist/src/core/reflect-nudge/prompt-renderer.d.ts +0 -23
  857. package/dist/src/core/reflect-nudge/prompt-renderer.d.ts.map +0 -1
  858. package/dist/src/core/reflect-nudge/prompt-renderer.js +0 -26
  859. package/dist/src/core/reflect-nudge/prompt-renderer.js.map +0 -1
  860. package/dist/src/core/reflect-nudge/session-end-nudge.d.ts +0 -31
  861. package/dist/src/core/reflect-nudge/session-end-nudge.d.ts.map +0 -1
  862. package/dist/src/core/reflect-nudge/session-end-nudge.js +0 -44
  863. package/dist/src/core/reflect-nudge/session-end-nudge.js.map +0 -1
  864. package/dist/src/core/reflection/index.d.ts +0 -23
  865. package/dist/src/core/reflection/index.d.ts.map +0 -1
  866. package/dist/src/core/reflection/index.js +0 -25
  867. package/dist/src/core/reflection/index.js.map +0 -1
  868. package/dist/src/core/reflection/reflect-handler.d.ts +0 -128
  869. package/dist/src/core/reflection/reflect-handler.d.ts.map +0 -1
  870. package/dist/src/core/reflection/reflect-handler.js +0 -742
  871. package/dist/src/core/reflection/reflect-handler.js.map +0 -1
  872. package/dist/src/core/reflection/skill-memories.d.ts +0 -113
  873. package/dist/src/core/reflection/skill-memories.d.ts.map +0 -1
  874. package/dist/src/core/reflection/skill-memories.js +0 -306
  875. package/dist/src/core/reflection/skill-memories.js.map +0 -1
  876. package/dist/src/core/scheduler/index.d.ts +0 -12
  877. package/dist/src/core/scheduler/index.d.ts.map +0 -1
  878. package/dist/src/core/scheduler/index.js +0 -12
  879. package/dist/src/core/scheduler/index.js.map +0 -1
  880. package/dist/src/core/scheduler/job-scheduler.d.ts +0 -179
  881. package/dist/src/core/scheduler/job-scheduler.d.ts.map +0 -1
  882. package/dist/src/core/scheduler/job-scheduler.js +0 -282
  883. package/dist/src/core/scheduler/job-scheduler.js.map +0 -1
  884. package/dist/src/core/scheduler/schedule-persistence.d.ts +0 -84
  885. package/dist/src/core/scheduler/schedule-persistence.d.ts.map +0 -1
  886. package/dist/src/core/scheduler/schedule-persistence.js +0 -188
  887. package/dist/src/core/scheduler/schedule-persistence.js.map +0 -1
  888. package/dist/src/core/scheduler/scheduled-job.d.ts +0 -188
  889. package/dist/src/core/scheduler/scheduled-job.d.ts.map +0 -1
  890. package/dist/src/core/scheduler/scheduled-job.js +0 -182
  891. package/dist/src/core/scheduler/scheduled-job.js.map +0 -1
  892. package/dist/src/core/scheduler/session-sync-executor.d.ts +0 -141
  893. package/dist/src/core/scheduler/session-sync-executor.d.ts.map +0 -1
  894. package/dist/src/core/scheduler/session-sync-executor.js +0 -358
  895. package/dist/src/core/scheduler/session-sync-executor.js.map +0 -1
  896. package/dist/src/core/session/reflect-checker.d.ts +0 -19
  897. package/dist/src/core/session/reflect-checker.d.ts.map +0 -1
  898. package/dist/src/core/session/reflect-checker.js +0 -30
  899. package/dist/src/core/session/reflect-checker.js.map +0 -1
  900. package/dist/src/core/sync/event-queue-ops.d.ts +0 -39
  901. package/dist/src/core/sync/event-queue-ops.d.ts.map +0 -1
  902. package/dist/src/core/sync/event-queue-ops.js +0 -109
  903. package/dist/src/core/sync/event-queue-ops.js.map +0 -1
  904. package/dist/src/core/sync/event-queue.d.ts +0 -43
  905. package/dist/src/core/sync/event-queue.d.ts.map +0 -1
  906. package/dist/src/core/sync/event-queue.js +0 -62
  907. package/dist/src/core/sync/event-queue.js.map +0 -1
  908. package/dist/src/core/sync/persistent-circuit-breaker.d.ts +0 -22
  909. package/dist/src/core/sync/persistent-circuit-breaker.d.ts.map +0 -1
  910. package/dist/src/core/sync/persistent-circuit-breaker.js +0 -65
  911. package/dist/src/core/sync/persistent-circuit-breaker.js.map +0 -1
  912. package/dist/src/core/sync/sync-resilience.d.ts +0 -49
  913. package/dist/src/core/sync/sync-resilience.d.ts.map +0 -1
  914. package/dist/src/core/sync/sync-resilience.js +0 -133
  915. package/dist/src/core/sync/sync-resilience.js.map +0 -1
  916. package/dist/src/core/us-sync-throttle.d.ts +0 -113
  917. package/dist/src/core/us-sync-throttle.d.ts.map +0 -1
  918. package/dist/src/core/us-sync-throttle.js +0 -195
  919. package/dist/src/core/us-sync-throttle.js.map +0 -1
  920. package/dist/src/hooks/auto-create-external-issue.d.ts +0 -19
  921. package/dist/src/hooks/auto-create-external-issue.d.ts.map +0 -1
  922. package/dist/src/hooks/auto-create-external-issue.js +0 -85
  923. package/dist/src/hooks/auto-create-external-issue.js.map +0 -1
  924. package/dist/src/hooks/generate-settings.d.ts +0 -8
  925. package/dist/src/hooks/generate-settings.d.ts.map +0 -1
  926. package/dist/src/hooks/generate-settings.js +0 -69
  927. package/dist/src/hooks/generate-settings.js.map +0 -1
  928. package/dist/src/hooks/hooks-status.d.ts +0 -12
  929. package/dist/src/hooks/hooks-status.d.ts.map +0 -1
  930. package/dist/src/hooks/hooks-status.js +0 -101
  931. package/dist/src/hooks/hooks-status.js.map +0 -1
  932. package/dist/src/hooks/index.d.ts +0 -11
  933. package/dist/src/hooks/index.d.ts.map +0 -1
  934. package/dist/src/hooks/index.js +0 -11
  935. package/dist/src/hooks/index.js.map +0 -1
  936. package/dist/src/hooks/platform.d.ts +0 -120
  937. package/dist/src/hooks/platform.d.ts.map +0 -1
  938. package/dist/src/hooks/platform.js +0 -278
  939. package/dist/src/hooks/platform.js.map +0 -1
  940. package/dist/src/hooks/processor.d.ts +0 -27
  941. package/dist/src/hooks/processor.d.ts.map +0 -1
  942. package/dist/src/hooks/processor.js +0 -334
  943. package/dist/src/hooks/processor.js.map +0 -1
  944. package/dist/src/hooks/scheduler-startup.d.ts +0 -19
  945. package/dist/src/hooks/scheduler-startup.d.ts.map +0 -1
  946. package/dist/src/hooks/scheduler-startup.js +0 -92
  947. package/dist/src/hooks/scheduler-startup.js.map +0 -1
  948. package/dist/src/hooks/session-start.d.ts +0 -16
  949. package/dist/src/hooks/session-start.d.ts.map +0 -1
  950. package/dist/src/hooks/session-start.js +0 -142
  951. package/dist/src/hooks/session-start.js.map +0 -1
  952. package/dist/src/integrations/ado/ado-dependency-loader.d.ts +0 -99
  953. package/dist/src/integrations/ado/ado-dependency-loader.d.ts.map +0 -1
  954. package/dist/src/integrations/ado/ado-dependency-loader.js +0 -237
  955. package/dist/src/integrations/ado/ado-dependency-loader.js.map +0 -1
  956. package/dist/src/integrations/ado/area-path-mapper.d.ts +0 -137
  957. package/dist/src/integrations/ado/area-path-mapper.d.ts.map +0 -1
  958. package/dist/src/integrations/ado/area-path-mapper.js +0 -263
  959. package/dist/src/integrations/ado/area-path-mapper.js.map +0 -1
  960. package/dist/src/integrations/jira/filter-processor.d.ts +0 -126
  961. package/dist/src/integrations/jira/filter-processor.d.ts.map +0 -1
  962. package/dist/src/integrations/jira/filter-processor.js +0 -222
  963. package/dist/src/integrations/jira/filter-processor.js.map +0 -1
  964. package/dist/src/integrations/jira/jira-dependency-loader.d.ts +0 -101
  965. package/dist/src/integrations/jira/jira-dependency-loader.d.ts.map +0 -1
  966. package/dist/src/integrations/jira/jira-dependency-loader.js +0 -200
  967. package/dist/src/integrations/jira/jira-dependency-loader.js.map +0 -1
  968. package/dist/src/integrations/jira/jira-hierarchy-mapper.d.ts +0 -107
  969. package/dist/src/integrations/jira/jira-hierarchy-mapper.d.ts.map +0 -1
  970. package/dist/src/integrations/jira/jira-hierarchy-mapper.js +0 -129
  971. package/dist/src/integrations/jira/jira-hierarchy-mapper.js.map +0 -1
  972. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts +0 -97
  973. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts.map +0 -1
  974. package/dist/src/integrations/jira/jira-incremental-mapper.js +0 -496
  975. package/dist/src/integrations/jira/jira-incremental-mapper.js.map +0 -1
  976. package/dist/src/integrations/jira/jira-mapper.d.ts +0 -127
  977. package/dist/src/integrations/jira/jira-mapper.d.ts.map +0 -1
  978. package/dist/src/integrations/jira/jira-mapper.js +0 -508
  979. package/dist/src/integrations/jira/jira-mapper.js.map +0 -1
  980. package/dist/src/integrations/jira/jira-token-provider.d.ts +0 -93
  981. package/dist/src/integrations/jira/jira-token-provider.d.ts.map +0 -1
  982. package/dist/src/integrations/jira/jira-token-provider.js +0 -160
  983. package/dist/src/integrations/jira/jira-token-provider.js.map +0 -1
  984. package/dist/src/skills/reflect-status.d.ts +0 -23
  985. package/dist/src/skills/reflect-status.d.ts.map +0 -1
  986. package/dist/src/skills/reflect-status.js +0 -55
  987. package/dist/src/skills/reflect-status.js.map +0 -1
  988. package/dist/src/sync/ado-reconciler.d.ts +0 -97
  989. package/dist/src/sync/ado-reconciler.d.ts.map +0 -1
  990. package/dist/src/sync/ado-reconciler.js +0 -370
  991. package/dist/src/sync/ado-reconciler.js.map +0 -1
  992. package/dist/src/sync/ado-sync-wrapper.d.ts +0 -137
  993. package/dist/src/sync/ado-sync-wrapper.d.ts.map +0 -1
  994. package/dist/src/sync/ado-sync-wrapper.js +0 -148
  995. package/dist/src/sync/ado-sync-wrapper.js.map +0 -1
  996. package/dist/src/sync/base-reconciler.d.ts +0 -120
  997. package/dist/src/sync/base-reconciler.d.ts.map +0 -1
  998. package/dist/src/sync/base-reconciler.js +0 -166
  999. package/dist/src/sync/base-reconciler.js.map +0 -1
  1000. package/dist/src/sync/engine.d.ts +0 -139
  1001. package/dist/src/sync/engine.d.ts.map +0 -1
  1002. package/dist/src/sync/engine.js +0 -129
  1003. package/dist/src/sync/engine.js.map +0 -1
  1004. package/dist/src/sync/external-item-sync-service.d.ts +0 -159
  1005. package/dist/src/sync/external-item-sync-service.d.ts.map +0 -1
  1006. package/dist/src/sync/external-item-sync-service.js +0 -446
  1007. package/dist/src/sync/external-item-sync-service.js.map +0 -1
  1008. package/dist/src/sync/github-sync-wrapper.d.ts +0 -195
  1009. package/dist/src/sync/github-sync-wrapper.d.ts.map +0 -1
  1010. package/dist/src/sync/github-sync-wrapper.js +0 -220
  1011. package/dist/src/sync/github-sync-wrapper.js.map +0 -1
  1012. package/dist/src/sync/hierarchy.d.ts +0 -52
  1013. package/dist/src/sync/hierarchy.d.ts.map +0 -1
  1014. package/dist/src/sync/hierarchy.js +0 -101
  1015. package/dist/src/sync/hierarchy.js.map +0 -1
  1016. package/dist/src/sync/jira-reconciler.d.ts +0 -109
  1017. package/dist/src/sync/jira-reconciler.d.ts.map +0 -1
  1018. package/dist/src/sync/jira-reconciler.js +0 -429
  1019. package/dist/src/sync/jira-reconciler.js.map +0 -1
  1020. package/dist/src/sync/jira-sync-wrapper.d.ts +0 -155
  1021. package/dist/src/sync/jira-sync-wrapper.d.ts.map +0 -1
  1022. package/dist/src/sync/jira-sync-wrapper.js +0 -175
  1023. package/dist/src/sync/jira-sync-wrapper.js.map +0 -1
  1024. package/dist/src/sync/migration.d.ts +0 -46
  1025. package/dist/src/sync/migration.d.ts.map +0 -1
  1026. package/dist/src/sync/migration.js +0 -97
  1027. package/dist/src/sync/migration.js.map +0 -1
  1028. package/dist/src/sync/projects-v2.d.ts +0 -61
  1029. package/dist/src/sync/projects-v2.d.ts.map +0 -1
  1030. package/dist/src/sync/projects-v2.js +0 -145
  1031. package/dist/src/sync/projects-v2.js.map +0 -1
  1032. package/dist/src/sync/providers/ado.d.ts +0 -54
  1033. package/dist/src/sync/providers/ado.d.ts.map +0 -1
  1034. package/dist/src/sync/providers/ado.js +0 -388
  1035. package/dist/src/sync/providers/ado.js.map +0 -1
  1036. package/dist/src/sync/providers/github.d.ts +0 -41
  1037. package/dist/src/sync/providers/github.d.ts.map +0 -1
  1038. package/dist/src/sync/providers/github.js +0 -237
  1039. package/dist/src/sync/providers/github.js.map +0 -1
  1040. package/dist/src/sync/providers/jira.d.ts +0 -44
  1041. package/dist/src/sync/providers/jira.d.ts.map +0 -1
  1042. package/dist/src/sync/providers/jira.js +0 -310
  1043. package/dist/src/sync/providers/jira.js.map +0 -1
  1044. package/dist/src/utils/auto-install.d.ts +0 -47
  1045. package/dist/src/utils/auto-install.d.ts.map +0 -1
  1046. package/dist/src/utils/auto-install.js +0 -220
  1047. package/dist/src/utils/auto-install.js.map +0 -1
  1048. package/dist/src/utils/image-generator.d.ts +0 -315
  1049. package/dist/src/utils/image-generator.d.ts.map +0 -1
  1050. package/dist/src/utils/image-generator.js +0 -588
  1051. package/dist/src/utils/image-generator.js.map +0 -1
  1052. package/plugins/COMMANDS-VS-SKILLS-ANALYSIS.md +0 -182
  1053. package/plugins/FINAL-AUDIT-RECOMMENDATIONS.md +0 -265
  1054. package/plugins/SKILLS-VS-AGENTS.md +0 -267
  1055. package/plugins/VALIDATION-REPORT.md +0 -134
  1056. package/plugins/specweave/agents/sw-architect.md +0 -22
  1057. package/plugins/specweave/agents/sw-planner.md +0 -81
  1058. package/plugins/specweave/agents/sw-pm.md +0 -23
  1059. package/plugins/specweave/commands/abandon.md +0 -320
  1060. package/plugins/specweave/commands/ado-cleanup-duplicates.md +0 -211
  1061. package/plugins/specweave/commands/ado-clone.md +0 -385
  1062. package/plugins/specweave/commands/ado-close.md +0 -238
  1063. package/plugins/specweave/commands/ado-create.md +0 -178
  1064. package/plugins/specweave/commands/ado-import-areas.md +0 -357
  1065. package/plugins/specweave/commands/ado-import-projects.md +0 -330
  1066. package/plugins/specweave/commands/ado-pull.md +0 -488
  1067. package/plugins/specweave/commands/ado-push.md +0 -388
  1068. package/plugins/specweave/commands/ado-reconcile.md +0 -119
  1069. package/plugins/specweave/commands/ado-status.md +0 -62
  1070. package/plugins/specweave/commands/ado-sync.md +0 -330
  1071. package/plugins/specweave/commands/analytics.md +0 -154
  1072. package/plugins/specweave/commands/archive.md +0 -488
  1073. package/plugins/specweave/commands/auto-status.md +0 -123
  1074. package/plugins/specweave/commands/cancel-auto.md +0 -94
  1075. package/plugins/specweave/commands/diagrams-generate.md +0 -172
  1076. package/plugins/specweave/commands/discrepancies.md +0 -142
  1077. package/plugins/specweave/commands/discrepancy-to-increment.md +0 -188
  1078. package/plugins/specweave/commands/docs-build.md +0 -159
  1079. package/plugins/specweave/commands/docs-generate.md +0 -445
  1080. package/plugins/specweave/commands/docs-health.md +0 -267
  1081. package/plugins/specweave/commands/docs-init.md +0 -338
  1082. package/plugins/specweave/commands/docs-organize.md +0 -183
  1083. package/plugins/specweave/commands/docs-validate.md +0 -249
  1084. package/plugins/specweave/commands/docs-view.md +0 -390
  1085. package/plugins/specweave/commands/docs.md +0 -215
  1086. package/plugins/specweave/commands/doctor.md +0 -68
  1087. package/plugins/specweave/commands/fix-duplicates.md +0 -517
  1088. package/plugins/specweave/commands/framework.md +0 -530
  1089. package/plugins/specweave/commands/github-cleanup-duplicates.md +0 -229
  1090. package/plugins/specweave/commands/github-clone.md +0 -634
  1091. package/plugins/specweave/commands/github-close.md +0 -440
  1092. package/plugins/specweave/commands/github-create.md +0 -330
  1093. package/plugins/specweave/commands/github-pull.md +0 -139
  1094. package/plugins/specweave/commands/github-push.md +0 -151
  1095. package/plugins/specweave/commands/github-reconcile.md +0 -111
  1096. package/plugins/specweave/commands/github-status.md +0 -532
  1097. package/plugins/specweave/commands/github-sync.md +0 -701
  1098. package/plugins/specweave/commands/github-update-user-story.md +0 -155
  1099. package/plugins/specweave/commands/handoff.md +0 -54
  1100. package/plugins/specweave/commands/import-external.md +0 -461
  1101. package/plugins/specweave/commands/jira-cleanup-duplicates.md +0 -218
  1102. package/plugins/specweave/commands/jira-close.md +0 -294
  1103. package/plugins/specweave/commands/jira-create.md +0 -195
  1104. package/plugins/specweave/commands/jira-import-boards.md +0 -330
  1105. package/plugins/specweave/commands/jira-import-projects-full.md +0 -297
  1106. package/plugins/specweave/commands/jira-import-projects.md +0 -96
  1107. package/plugins/specweave/commands/jira-pull.md +0 -161
  1108. package/plugins/specweave/commands/jira-push.md +0 -167
  1109. package/plugins/specweave/commands/jira-reconcile.md +0 -122
  1110. package/plugins/specweave/commands/jira-status.md +0 -212
  1111. package/plugins/specweave/commands/jira-sync.md +0 -254
  1112. package/plugins/specweave/commands/jobs.md +0 -52
  1113. package/plugins/specweave/commands/living-docs.md +0 -567
  1114. package/plugins/specweave/commands/lsp.md +0 -205
  1115. package/plugins/specweave/commands/next.md +0 -81
  1116. package/plugins/specweave/commands/progress.md +0 -39
  1117. package/plugins/specweave/commands/qa.md +0 -295
  1118. package/plugins/specweave/commands/reconcile.md +0 -440
  1119. package/plugins/specweave/commands/reflect.md +0 -264
  1120. package/plugins/specweave/commands/release-align.md +0 -504
  1121. package/plugins/specweave/commands/release-init.md +0 -429
  1122. package/plugins/specweave/commands/release-npm.md +0 -1084
  1123. package/plugins/specweave/commands/release-platform.md +0 -438
  1124. package/plugins/specweave/commands/release-rc.md +0 -494
  1125. package/plugins/specweave/commands/restore.md +0 -309
  1126. package/plugins/specweave/commands/save.md +0 -220
  1127. package/plugins/specweave/commands/state.md +0 -209
  1128. package/plugins/specweave/commands/sync-setup.md +0 -161
  1129. package/plugins/specweave/commands/sync-status.md +0 -356
  1130. package/plugins/specweave/commands/team-status.md +0 -70
  1131. package/plugins/specweave/commands/update-instructions.md +0 -81
  1132. package/plugins/specweave/lib/external-sync/hooks-common.sh +0 -266
  1133. package/plugins/specweave/lib/hooks/auto-transition.js +0 -50
  1134. package/plugins/specweave/lib/hooks/auto-transition.ts +0 -84
  1135. package/plugins/specweave/lib/hooks/close-github-issues-abandoned.js +0 -37
  1136. package/plugins/specweave/lib/hooks/close-github-issues-abandoned.ts +0 -59
  1137. package/plugins/specweave/lib/hooks/git-diff-analyzer.d.js +0 -0
  1138. package/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts +0 -89
  1139. package/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts.map +0 -1
  1140. package/plugins/specweave/lib/hooks/git-diff-analyzer.js +0 -142
  1141. package/plugins/specweave/lib/hooks/git-diff-analyzer.js.map +0 -1
  1142. package/plugins/specweave/lib/hooks/git-diff-analyzer.ts +0 -269
  1143. package/plugins/specweave/lib/hooks/invoke-translator-skill.d.js +0 -0
  1144. package/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts +0 -60
  1145. package/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts.map +0 -1
  1146. package/plugins/specweave/lib/hooks/invoke-translator-skill.js +0 -156
  1147. package/plugins/specweave/lib/hooks/invoke-translator-skill.js.map +0 -1
  1148. package/plugins/specweave/lib/hooks/invoke-translator-skill.ts +0 -265
  1149. package/plugins/specweave/lib/hooks/launch-codebase-rescan.js +0 -90
  1150. package/plugins/specweave/lib/hooks/launch-codebase-rescan.ts +0 -135
  1151. package/plugins/specweave/lib/hooks/prepare-reflection-context.d.js +0 -0
  1152. package/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts +0 -42
  1153. package/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts.map +0 -1
  1154. package/plugins/specweave/lib/hooks/prepare-reflection-context.js +0 -110
  1155. package/plugins/specweave/lib/hooks/prepare-reflection-context.js.map +0 -1
  1156. package/plugins/specweave/lib/hooks/prepare-reflection-context.ts +0 -178
  1157. package/plugins/specweave/lib/hooks/project-bridge.js +0 -82
  1158. package/plugins/specweave/lib/hooks/reflection-config-loader.d.js +0 -0
  1159. package/plugins/specweave/lib/hooks/reflection-config-loader.d.ts +0 -45
  1160. package/plugins/specweave/lib/hooks/reflection-config-loader.d.ts.map +0 -1
  1161. package/plugins/specweave/lib/hooks/reflection-config-loader.js +0 -92
  1162. package/plugins/specweave/lib/hooks/reflection-config-loader.js.map +0 -1
  1163. package/plugins/specweave/lib/hooks/reflection-config-loader.ts +0 -156
  1164. package/plugins/specweave/lib/hooks/reflection-parser.d.js +0 -0
  1165. package/plugins/specweave/lib/hooks/reflection-parser.d.ts +0 -33
  1166. package/plugins/specweave/lib/hooks/reflection-parser.d.ts.map +0 -1
  1167. package/plugins/specweave/lib/hooks/reflection-parser.js +0 -301
  1168. package/plugins/specweave/lib/hooks/reflection-parser.js.map +0 -1
  1169. package/plugins/specweave/lib/hooks/reflection-parser.ts +0 -484
  1170. package/plugins/specweave/lib/hooks/reflection-prompt-builder.d.js +0 -0
  1171. package/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts +0 -56
  1172. package/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts.map +0 -1
  1173. package/plugins/specweave/lib/hooks/reflection-prompt-builder.js +0 -182
  1174. package/plugins/specweave/lib/hooks/reflection-prompt-builder.js.map +0 -1
  1175. package/plugins/specweave/lib/hooks/reflection-prompt-builder.ts +0 -306
  1176. package/plugins/specweave/lib/hooks/reflection-storage.d.js +0 -0
  1177. package/plugins/specweave/lib/hooks/reflection-storage.d.ts +0 -64
  1178. package/plugins/specweave/lib/hooks/reflection-storage.d.ts.map +0 -1
  1179. package/plugins/specweave/lib/hooks/reflection-storage.js +0 -231
  1180. package/plugins/specweave/lib/hooks/reflection-storage.js.map +0 -1
  1181. package/plugins/specweave/lib/hooks/reflection-storage.ts +0 -369
  1182. package/plugins/specweave/lib/hooks/reopen-github-issues.js +0 -37
  1183. package/plugins/specweave/lib/hooks/reopen-github-issues.ts +0 -59
  1184. package/plugins/specweave/lib/hooks/run-self-reflection.d.js +0 -0
  1185. package/plugins/specweave/lib/hooks/run-self-reflection.d.ts +0 -43
  1186. package/plugins/specweave/lib/hooks/run-self-reflection.d.ts.map +0 -1
  1187. package/plugins/specweave/lib/hooks/run-self-reflection.js +0 -132
  1188. package/plugins/specweave/lib/hooks/run-self-reflection.js.map +0 -1
  1189. package/plugins/specweave/lib/hooks/run-self-reflection.ts +0 -258
  1190. package/plugins/specweave/lib/hooks/session-start-reconcile-worker.js +0 -36
  1191. package/plugins/specweave/lib/hooks/session-start-reconcile-worker.ts +0 -58
  1192. package/plugins/specweave/lib/hooks/sync-cache.js +0 -295
  1193. package/plugins/specweave/lib/hooks/sync-increment-closure.js +0 -66
  1194. package/plugins/specweave/lib/hooks/sync-increment-closure.ts +0 -111
  1195. package/plugins/specweave/lib/hooks/sync-living-docs.d.js +0 -1
  1196. package/plugins/specweave/lib/hooks/sync-living-docs.d.ts +0 -27
  1197. package/plugins/specweave/lib/hooks/sync-living-docs.d.ts.map +0 -1
  1198. package/plugins/specweave/lib/hooks/sync-living-docs.js +0 -494
  1199. package/plugins/specweave/lib/hooks/sync-living-docs.js.map +0 -1
  1200. package/plugins/specweave/lib/hooks/sync-living-docs.ts.DISABLED +0 -482
  1201. package/plugins/specweave/lib/hooks/sync-us-tasks.js +0 -476
  1202. package/plugins/specweave/lib/hooks/translate-file.d.js +0 -0
  1203. package/plugins/specweave/lib/hooks/translate-file.d.ts +0 -59
  1204. package/plugins/specweave/lib/hooks/translate-file.d.ts.map +0 -1
  1205. package/plugins/specweave/lib/hooks/translate-file.js +0 -290
  1206. package/plugins/specweave/lib/hooks/translate-file.js.map +0 -1
  1207. package/plugins/specweave/lib/hooks/translate-file.ts +0 -429
  1208. package/plugins/specweave/lib/hooks/translate-living-docs.d.js +0 -0
  1209. package/plugins/specweave/lib/hooks/translate-living-docs.d.ts +0 -13
  1210. package/plugins/specweave/lib/hooks/translate-living-docs.d.ts.map +0 -1
  1211. package/plugins/specweave/lib/hooks/translate-living-docs.js +0 -120
  1212. package/plugins/specweave/lib/hooks/translate-living-docs.js.map +0 -1
  1213. package/plugins/specweave/lib/hooks/translate-living-docs.ts +0 -225
  1214. package/plugins/specweave/lib/hooks/types/reflection-types.d.js +0 -0
  1215. package/plugins/specweave/lib/hooks/types/reflection-types.d.ts +0 -164
  1216. package/plugins/specweave/lib/hooks/types/reflection-types.d.ts.map +0 -1
  1217. package/plugins/specweave/lib/hooks/types/reflection-types.js +0 -58
  1218. package/plugins/specweave/lib/hooks/types/reflection-types.js.map +0 -1
  1219. package/plugins/specweave/lib/hooks/types/reflection-types.ts +0 -193
  1220. package/plugins/specweave/lib/hooks/update-ac-status.js +0 -188
  1221. package/plugins/specweave/lib/hooks/update-ac-status.ts +0 -340
  1222. package/plugins/specweave/lib/hooks/update-tasks-md.d.js +0 -1
  1223. package/plugins/specweave/lib/hooks/update-tasks-md.d.ts +0 -29
  1224. package/plugins/specweave/lib/hooks/update-tasks-md.d.ts.map +0 -1
  1225. package/plugins/specweave/lib/hooks/update-tasks-md.js +0 -296
  1226. package/plugins/specweave/lib/hooks/update-tasks-md.js.map +0 -1
  1227. package/plugins/specweave/lib/hooks/update-tasks-md.ts +0 -489
  1228. package/plugins/specweave/lib/hooks/us-completion-orchestrator.js +0 -169
  1229. package/plugins/specweave/lib/hooks/us-completion-orchestrator.ts +0 -318
  1230. package/plugins/specweave/lib/integrations/ado/ado-board-resolver.d.js +0 -0
  1231. package/plugins/specweave/lib/integrations/ado/ado-board-resolver.d.ts +0 -94
  1232. package/plugins/specweave/lib/integrations/ado/ado-board-resolver.d.ts.map +0 -1
  1233. package/plugins/specweave/lib/integrations/ado/ado-board-resolver.js.map +0 -1
  1234. package/plugins/specweave/lib/integrations/ado/ado-client-v2.d.js +0 -0
  1235. package/plugins/specweave/lib/integrations/ado/ado-client-v2.d.ts +0 -134
  1236. package/plugins/specweave/lib/integrations/ado/ado-client-v2.d.ts.map +0 -1
  1237. package/plugins/specweave/lib/integrations/ado/ado-client-v2.js.map +0 -1
  1238. package/plugins/specweave/lib/integrations/ado/ado-client.d.js +0 -4
  1239. package/plugins/specweave/lib/integrations/ado/ado-client.d.ts +0 -112
  1240. package/plugins/specweave/lib/integrations/ado/ado-client.d.ts.map +0 -1
  1241. package/plugins/specweave/lib/integrations/ado/ado-client.js.map +0 -1
  1242. package/plugins/specweave/lib/integrations/ado/ado-hierarchical-sync.d.js +0 -0
  1243. package/plugins/specweave/lib/integrations/ado/ado-hierarchical-sync.d.ts +0 -40
  1244. package/plugins/specweave/lib/integrations/ado/ado-hierarchical-sync.d.ts.map +0 -1
  1245. package/plugins/specweave/lib/integrations/ado/ado-hierarchical-sync.js.map +0 -1
  1246. package/plugins/specweave/lib/integrations/ado/ado-spec-commit-sync.d.js +0 -0
  1247. package/plugins/specweave/lib/integrations/ado/ado-spec-commit-sync.d.ts +0 -38
  1248. package/plugins/specweave/lib/integrations/ado/ado-spec-commit-sync.d.ts.map +0 -1
  1249. package/plugins/specweave/lib/integrations/ado/ado-spec-commit-sync.js.map +0 -1
  1250. package/plugins/specweave/lib/integrations/ado/ado-spec-sync.d.js +0 -0
  1251. package/plugins/specweave/lib/integrations/ado/ado-spec-sync.d.ts +0 -100
  1252. package/plugins/specweave/lib/integrations/ado/ado-spec-sync.d.ts.map +0 -1
  1253. package/plugins/specweave/lib/integrations/ado/ado-spec-sync.js.map +0 -1
  1254. package/plugins/specweave/lib/integrations/ado/project-selector.d.js +0 -0
  1255. package/plugins/specweave/lib/integrations/ado/project-selector.d.ts +0 -42
  1256. package/plugins/specweave/lib/integrations/ado/project-selector.d.ts.map +0 -1
  1257. package/plugins/specweave/lib/integrations/ado/project-selector.js.map +0 -1
  1258. package/plugins/specweave/lib/integrations/github/github-board-resolver.d.js +0 -0
  1259. package/plugins/specweave/lib/integrations/github/github-board-resolver.d.ts +0 -54
  1260. package/plugins/specweave/lib/integrations/github/github-board-resolver.d.ts.map +0 -1
  1261. package/plugins/specweave/lib/integrations/github/github-board-resolver.js.map +0 -1
  1262. package/plugins/specweave/lib/integrations/github/github-client.d.js +0 -0
  1263. package/plugins/specweave/lib/integrations/github/github-client.d.ts +0 -96
  1264. package/plugins/specweave/lib/integrations/github/github-client.d.ts.map +0 -1
  1265. package/plugins/specweave/lib/integrations/github/github-client.js.map +0 -1
  1266. package/plugins/specweave/lib/integrations/github/github-hierarchical-sync.d.js +0 -0
  1267. package/plugins/specweave/lib/integrations/github/github-hierarchical-sync.d.ts +0 -29
  1268. package/plugins/specweave/lib/integrations/github/github-hierarchical-sync.d.ts.map +0 -1
  1269. package/plugins/specweave/lib/integrations/github/github-hierarchical-sync.js.map +0 -1
  1270. package/plugins/specweave/lib/integrations/github/github-issue-updater.d.js +0 -0
  1271. package/plugins/specweave/lib/integrations/github/github-issue-updater.d.ts +0 -61
  1272. package/plugins/specweave/lib/integrations/github/github-issue-updater.d.ts.map +0 -1
  1273. package/plugins/specweave/lib/integrations/github/github-issue-updater.js.map +0 -1
  1274. package/plugins/specweave/lib/integrations/github/github-spec-commit-sync.d.js +0 -0
  1275. package/plugins/specweave/lib/integrations/github/github-spec-commit-sync.d.ts +0 -37
  1276. package/plugins/specweave/lib/integrations/github/github-spec-commit-sync.d.ts.map +0 -1
  1277. package/plugins/specweave/lib/integrations/github/github-spec-commit-sync.js.map +0 -1
  1278. package/plugins/specweave/lib/integrations/github/github-spec-sync.d.js +0 -0
  1279. package/plugins/specweave/lib/integrations/github/github-spec-sync.d.ts +0 -108
  1280. package/plugins/specweave/lib/integrations/github/github-spec-sync.d.ts.map +0 -1
  1281. package/plugins/specweave/lib/integrations/github/github-spec-sync.js.map +0 -1
  1282. package/plugins/specweave/lib/integrations/github/index.d.js +0 -11
  1283. package/plugins/specweave/lib/integrations/github/index.d.ts +0 -10
  1284. package/plugins/specweave/lib/integrations/github/index.d.ts.map +0 -1
  1285. package/plugins/specweave/lib/integrations/github/index.js.map +0 -1
  1286. package/plugins/specweave/lib/integrations/github/repo-selector.d.js +0 -0
  1287. package/plugins/specweave/lib/integrations/github/repo-selector.d.ts +0 -49
  1288. package/plugins/specweave/lib/integrations/github/repo-selector.d.ts.map +0 -1
  1289. package/plugins/specweave/lib/integrations/github/repo-selector.js.map +0 -1
  1290. package/plugins/specweave/lib/integrations/github/types.d.js +0 -0
  1291. package/plugins/specweave/lib/integrations/github/types.d.ts +0 -80
  1292. package/plugins/specweave/lib/integrations/github/types.d.ts.map +0 -1
  1293. package/plugins/specweave/lib/integrations/github/types.js.map +0 -1
  1294. package/plugins/specweave/lib/integrations/jira/jira-board-resolver.d.js +0 -0
  1295. package/plugins/specweave/lib/integrations/jira/jira-board-resolver.d.ts +0 -50
  1296. package/plugins/specweave/lib/integrations/jira/jira-board-resolver.d.ts.map +0 -1
  1297. package/plugins/specweave/lib/integrations/jira/jira-board-resolver.js.map +0 -1
  1298. package/plugins/specweave/lib/integrations/jira/jira-hierarchical-sync.d.js +0 -0
  1299. package/plugins/specweave/lib/integrations/jira/jira-hierarchical-sync.d.ts +0 -33
  1300. package/plugins/specweave/lib/integrations/jira/jira-hierarchical-sync.d.ts.map +0 -1
  1301. package/plugins/specweave/lib/integrations/jira/jira-hierarchical-sync.js.map +0 -1
  1302. package/plugins/specweave/lib/integrations/jira/jira-spec-commit-sync.d.js +0 -0
  1303. package/plugins/specweave/lib/integrations/jira/jira-spec-commit-sync.d.ts +0 -43
  1304. package/plugins/specweave/lib/integrations/jira/jira-spec-commit-sync.d.ts.map +0 -1
  1305. package/plugins/specweave/lib/integrations/jira/jira-spec-commit-sync.js.map +0 -1
  1306. package/plugins/specweave/lib/integrations/jira/jira-spec-sync.d.js +0 -0
  1307. package/plugins/specweave/lib/integrations/jira/jira-spec-sync.d.ts +0 -105
  1308. package/plugins/specweave/lib/integrations/jira/jira-spec-sync.d.ts.map +0 -1
  1309. package/plugins/specweave/lib/integrations/jira/jira-spec-sync.js.map +0 -1
  1310. package/plugins/specweave/lib/integrations/jira/project-selector.d.js +0 -0
  1311. package/plugins/specweave/lib/integrations/jira/project-selector.d.ts +0 -42
  1312. package/plugins/specweave/lib/integrations/jira/project-selector.d.ts.map +0 -1
  1313. package/plugins/specweave/lib/integrations/jira/project-selector.js.map +0 -1
  1314. package/plugins/specweave/lib/integrations/jira/reorganization-detector.d.js +0 -0
  1315. package/plugins/specweave/lib/integrations/jira/reorganization-detector.d.ts +0 -67
  1316. package/plugins/specweave/lib/integrations/jira/reorganization-detector.d.ts.map +0 -1
  1317. package/plugins/specweave/lib/integrations/jira/reorganization-detector.js.map +0 -1
  1318. package/plugins/specweave/lib/integrations/jira/setup-wizard.d.js +0 -4
  1319. package/plugins/specweave/lib/integrations/jira/setup-wizard.d.ts +0 -29
  1320. package/plugins/specweave/lib/integrations/jira/setup-wizard.d.ts.map +0 -1
  1321. package/plugins/specweave/lib/integrations/jira/setup-wizard.js.map +0 -1
  1322. package/plugins/specweave/scripts/analyze-standards.sh +0 -315
  1323. package/plugins/specweave/scripts/auto-status.sh +0 -283
  1324. package/plugins/specweave/scripts/cancel-auto.sh +0 -144
  1325. package/plugins/specweave/scripts/cleanup-legacy-state.sh +0 -80
  1326. package/plugins/specweave/scripts/cleanup-state.sh +0 -168
  1327. package/plugins/specweave/scripts/force-kill.sh +0 -133
  1328. package/plugins/specweave/scripts/heartbeat.sh +0 -134
  1329. package/plugins/specweave/scripts/hook-health.sh +0 -441
  1330. package/plugins/specweave/scripts/jira/import-projects.js +0 -181
  1331. package/plugins/specweave/scripts/jira/import-projects.ts +0 -286
  1332. package/plugins/specweave/scripts/lsp-check.sh +0 -331
  1333. package/plugins/specweave/scripts/lsp-warmup.sh +0 -144
  1334. package/plugins/specweave/scripts/read-analytics.sh +0 -286
  1335. package/plugins/specweave/scripts/read-costs.sh +0 -132
  1336. package/plugins/specweave/scripts/read-grill-context.sh +0 -149
  1337. package/plugins/specweave/scripts/read-jobs.sh +0 -371
  1338. package/plugins/specweave/scripts/read-progress.sh +0 -413
  1339. package/plugins/specweave/scripts/read-status.sh +0 -146
  1340. package/plugins/specweave/scripts/read-workflow.sh +0 -173
  1341. package/plugins/specweave/scripts/reflect-check.sh +0 -250
  1342. package/plugins/specweave/scripts/setup-auto.sh +0 -603
  1343. package/plugins/specweave/scripts/tests/test-setup-auto-selection.sh +0 -74
  1344. package/plugins/specweave/scripts/tests/test-setup-auto-usergoal.sh +0 -83
  1345. package/plugins/specweave/scripts/track-analytics.sh +0 -118
  1346. package/plugins/specweave/scripts/update-dashboard-cache.sh +0 -338
  1347. package/plugins/specweave/skills/ado-mapper/SKILL.md +0 -464
  1348. package/plugins/specweave/skills/ado-multi-project/SKILL.md +0 -550
  1349. package/plugins/specweave/skills/ado-resource-validator/SKILL.md +0 -901
  1350. package/plugins/specweave/skills/ado-sync/README.md +0 -414
  1351. package/plugins/specweave/skills/ado-sync/SKILL.md +0 -449
  1352. package/plugins/specweave/skills/analytics/SKILL.md +0 -46
  1353. package/plugins/specweave/skills/architect/SKILL.md +0 -113
  1354. package/plugins/specweave/skills/close-all/SKILL.md +0 -51
  1355. package/plugins/specweave/skills/code-reviewer/SKILL.md +0 -632
  1356. package/plugins/specweave/skills/code-reviewer/agents/reviewer-comments.md +0 -83
  1357. package/plugins/specweave/skills/code-reviewer/agents/reviewer-silent-failures.md +0 -84
  1358. package/plugins/specweave/skills/code-reviewer/agents/reviewer-spec-compliance.md +0 -102
  1359. package/plugins/specweave/skills/code-reviewer/agents/reviewer-tests.md +0 -101
  1360. package/plugins/specweave/skills/code-reviewer/agents/reviewer-types.md +0 -88
  1361. package/plugins/specweave/skills/debug/SKILL.md +0 -220
  1362. package/plugins/specweave/skills/diagrams/SKILL.md +0 -748
  1363. package/plugins/specweave/skills/e2e/SKILL.md +0 -425
  1364. package/plugins/specweave/skills/e2e/evals/evals.json +0 -122
  1365. package/plugins/specweave/skills/get/SKILL.md +0 -116
  1366. package/plugins/specweave/skills/github-issue-standard/SKILL.md +0 -13
  1367. package/plugins/specweave/skills/github-multi-project/SKILL.md +0 -258
  1368. package/plugins/specweave/skills/github-sync/SKILL.md +0 -40
  1369. package/plugins/specweave/skills/github-sync/evals/HOW-TO-RUN-EVALS.md +0 -50
  1370. package/plugins/specweave/skills/github-sync/evals/evals.json +0 -136
  1371. package/plugins/specweave/skills/grill/SKILL.md +0 -483
  1372. package/plugins/specweave/skills/help/SKILL.md +0 -179
  1373. package/plugins/specweave/skills/image/SKILL.md +0 -427
  1374. package/plugins/specweave/skills/import/SKILL.md +0 -191
  1375. package/plugins/specweave/skills/jira-mapper/SKILL.md +0 -638
  1376. package/plugins/specweave/skills/jira-resource-validator/SKILL.md +0 -743
  1377. package/plugins/specweave/skills/jira-sync/README.md +0 -291
  1378. package/plugins/specweave/skills/jira-sync/SKILL.md +0 -252
  1379. package/plugins/specweave/skills/judge-llm/SKILL.md +0 -235
  1380. package/plugins/specweave/skills/multi-project/SKILL.md +0 -371
  1381. package/plugins/specweave/skills/npm/SKILL.md +0 -1083
  1382. package/plugins/specweave/skills/plan/SKILL.md +0 -308
  1383. package/plugins/specweave/skills/pm/SKILL.md +0 -149
  1384. package/plugins/specweave/skills/pm/phases/00-deep-interview.md +0 -352
  1385. package/plugins/specweave/skills/pm/phases/01-research.md +0 -80
  1386. package/plugins/specweave/skills/pm/phases/02-spec-creation.md +0 -142
  1387. package/plugins/specweave/skills/pm/phases/03-validation.md +0 -89
  1388. package/plugins/specweave/skills/pm/templates/spec-template.md +0 -159
  1389. package/plugins/specweave/skills/pr/SKILL.md +0 -257
  1390. package/plugins/specweave/skills/pr-review/SKILL.md +0 -167
  1391. package/plugins/specweave/skills/progress-sync/SKILL.md +0 -452
  1392. package/plugins/specweave/skills/release-expert/SKILL.md +0 -502
  1393. package/plugins/specweave/skills/remotion/SKILL.md +0 -227
  1394. package/plugins/specweave/skills/skill-gen/SKILL.md +0 -186
  1395. package/plugins/specweave/skills/skill-gen/evals/evals.json +0 -79
  1396. package/plugins/specweave/skills/skill-refine/SKILL.md +0 -97
  1397. package/plugins/specweave/skills/sync-docs/SKILL.md +0 -72
  1398. package/plugins/specweave/skills/tdd-cycle/SKILL.md +0 -267
  1399. package/plugins/specweave/skills/tdd-green/SKILL.md +0 -84
  1400. package/plugins/specweave/skills/tdd-red/SKILL.md +0 -90
  1401. package/plugins/specweave/skills/tdd-refactor/SKILL.md +0 -59
  1402. package/plugins/specweave/skills/team-build/SKILL.md +0 -29
  1403. package/plugins/specweave/skills/team-lead/SKILL.md +0 -1239
  1404. package/plugins/specweave/skills/team-lead/reference/dynamic-workflows.md +0 -144
  1405. package/plugins/specweave/skills/team-merge/SKILL.md +0 -230
  1406. package/plugins/specweave/skills/umbrella/SKILL.md +0 -406
  1407. package/plugins/specweave/skills/validate/SKILL.md +0 -135
  1408. package/plugins/specweave/skills/video/SKILL.md +0 -350
  1409. package/src/templates/COMPLETION-REPORT.template.md +0 -128
  1410. package/src/templates/MEMORY-template.md +0 -9
  1411. package/src/templates/config-permissions-guide.md +0 -413
  1412. package/src/templates/config.json.template +0 -18
  1413. package/src/templates/docs/rfc-template.md +0 -229
  1414. package/src/templates/increment-metadata-template.yaml +0 -138
  1415. package/src/templates/tasks.md.template +0 -269
  1416. /package/plugins/specweave/skills/{team-lead → team}/agents/brainstorm-advocate.md +0 -0
  1417. /package/plugins/specweave/skills/{team-lead → team}/agents/brainstorm-critic.md +0 -0
  1418. /package/plugins/specweave/skills/{team-lead → team}/agents/brainstorm-pragmatist.md +0 -0
  1419. /package/plugins/specweave/skills/{team-lead → team}/agents/researcher.md +0 -0
  1420. /package/plugins/specweave/skills/{team-lead → team}/agents/reviewer-security.md +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"increments-checker.js","sourceRoot":"","sources":["../../../../../src/core/doctor/checkers/increments-checker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"increments-checker.js","sourceRoot":"","sources":["../../../../../src/core/doctor/checkers/increments-checker.ts"],"names":[],"mappings":"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"}
@@ -9,11 +9,19 @@ import type { HealthChecker, CategoryResult, DoctorOptions } from '../types.js';
9
9
  interface InstallationHealthOptions {
10
10
  commandsDir?: string;
11
11
  cacheDir?: string;
12
+ /** Global skills dir (~/.claude/skills). Injectable for tests. */
13
+ skillsDir?: string;
14
+ /** Root of the specweave package (holds .claude-plugin/marketplace.json). Injectable for tests. */
15
+ packageRoot?: string;
12
16
  }
17
+ /** How long a `npm view specweave version` answer stays good for. */
18
+ export declare const NPM_VERSION_CACHE_MS: number;
13
19
  export declare class InstallationHealthChecker implements HealthChecker {
14
20
  category: string;
15
21
  private commandsDir;
16
22
  private cacheDir;
23
+ private skillsDir;
24
+ private packageRootOverride?;
17
25
  constructor(opts?: InstallationHealthOptions);
18
26
  check(projectRoot: string, options: DoctorOptions): Promise<CategoryResult>;
19
27
  /**
@@ -31,8 +39,42 @@ export declare class InstallationHealthChecker implements HealthChecker {
31
39
  */
32
40
  private checkStaleCacheDirs;
33
41
  /**
34
- * Verify installed plugin hashes match vskill.lock entries.
35
- * Checks the native plugin cache (~/.claude/plugins/cache/specweave/<name>/).
42
+ * Locations a locked skill may legitimately live in, in resolution order.
43
+ *
44
+ * `specweave init` installs the sw plugin's skills PROJECT-LOCAL into
45
+ * `<project>/.claude/skills/` (that is what its own output says), and vskill
46
+ * installs third-party skills there too. Only looking in the Claude plugin
47
+ * cache made every fresh `init` end in
48
+ * "N skill(s) missing from plugin cache" and a doctor exit code of 1.
49
+ */
50
+ private skillSearchPaths;
51
+ /** Root of the running specweave package, or null. */
52
+ private packageRoot;
53
+ /**
54
+ * Source directory of a bundled marketplace plugin in the running package
55
+ * (e.g. `sw` -> `<pkg>/plugins/specweave`). This is the directory the sha in
56
+ * the global lockfile was computed from, so it is the ONLY dir a bundled
57
+ * entry's hash can meaningfully be compared against.
58
+ */
59
+ private bundledPluginSourceDir;
60
+ /**
61
+ * A bundled plugin installed PROJECT-LOCAL is exploded into
62
+ * `<project>/.claude/skills/<skill>/` — one dir per skill, no dir named after
63
+ * the plugin. Detect that layout so `init`'s own default install mode is not
64
+ * reported as "missing from plugin cache".
65
+ */
66
+ private bundledSkillsCopiedIntoProject;
67
+ /**
68
+ * Verify installed skills recorded in the lockfiles are actually present, and
69
+ * — where the digest is one SpecWeave itself wrote — that it still matches.
70
+ *
71
+ * Provenance matters:
72
+ * - global `~/.specweave/plugins-lock.json` = SpecWeave-managed plugins
73
+ * (12-char computePluginHash digest). A missing one is a real failure.
74
+ * - project `vskill.lock` = third-party skills installed by vskill, with a
75
+ * full 64-char sha256 of the source file. That digest is NOT comparable
76
+ * with computePluginHash, so it is presence-checked only; a missing one
77
+ * is a warning pointing at vskill, never a `specweave doctor` failure.
36
78
  */
37
79
  private checkLockfileIntegrity;
38
80
  /**
@@ -41,20 +83,21 @@ export declare class InstallationHealthChecker implements HealthChecker {
41
83
  * Claude Code's plugin system copies hooks to its own cache directory when
42
84
  * `claude plugin install` runs. If the source (npm package) is updated but
43
85
  * the cache isn't refreshed, hooks run stale code. This check compares the
44
- * UserPromptSubmit hook in the cache against the source and fixes mismatches.
86
+ * 2.0 plugin hook assets (hooks.json + the run.mjs launcher) in the cache
87
+ * against the source and fixes mismatches.
45
88
  *
46
89
  * @since 1.0.306
47
90
  */
48
91
  private checkPluginCacheHookFreshness;
49
92
  /**
50
- * Locate the authoritative source of user-prompt-submit.sh.
93
+ * Locate the authoritative `plugins/specweave/hooks/` directory.
51
94
  *
52
95
  * Resolution order:
53
96
  * 1. Walk up from __dirname to find package.json with name "specweave"
54
97
  * 2. Global npm install via `npm root -g`
55
98
  * 3. ~/.claude/plugins/marketplaces/specweave/
56
99
  */
57
- private findSourceHookPath;
100
+ private findSourceHooksDir;
58
101
  /**
59
102
  * Detect (and optionally remove) stale lockfiles:
60
103
  * - Legacy `skills-lock.json` files (dead format)
@@ -75,6 +118,24 @@ export declare class InstallationHealthChecker implements HealthChecker {
75
118
  * Always bypasses user auth config to prevent E401 from stale tokens.
76
119
  */
77
120
  private npmPublicExec;
121
+ /**
122
+ * Latest published version, cached for 24 h under
123
+ * `.specweave/state/npm-version-check.json`. `npm view` is a network round
124
+ * trip; doctor runs often enough that hitting the registry every time is
125
+ * the single slowest check in the report.
126
+ */
127
+ private latestPublishedVersion;
128
+ /**
129
+ * Version of the CLI that is ACTUALLY EXECUTING, read from its own
130
+ * package.json.
131
+ *
132
+ * Shelling out to `specweave --version` answered for whatever `specweave`
133
+ * happens to be first on PATH — a different (usually older) install, or the
134
+ * marketplace plugin cache — so `doctor` told users running the newest CLI
135
+ * that they were outdated. It compared two numbers from two different
136
+ * installs under a "your CLI is out of date" label.
137
+ */
138
+ runningCliVersion(): string | null;
78
139
  private checkUpdateHealth;
79
140
  /** List immediate subdirectories of a path. */
80
141
  private listDirs;
@@ -1 +1 @@
1
- {"version":3,"file":"installation-health-checker.d.ts","sourceRoot":"","sources":["../../../../../src/core/doctor/checkers/installation-health-checker.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAcH,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EAEd,aAAa,EACd,MAAM,aAAa,CAAC;AAKrB,UAAU,yBAAyB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,yBAA0B,YAAW,aAAa;IAC7D,QAAQ,SAAyB;IACjC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAS;gBAEb,IAAI,CAAC,EAAE,yBAAyB;IAMtC,KAAK,CACT,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,cAAc,CAAC;IAmB1B;;;;;;OAMG;IACH,OAAO,CAAC,uBAAuB;IAgD/B;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAoE3B;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAsK9B;;;;;;;;;OASG;IACH,OAAO,CAAC,6BAA6B;IAoFrC;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAsC1B;;;;;;OAMG;YACW,mBAAmB;IA8EjC;;;;;;OAMG;IACH;;;OAGG;IACH,OAAO,CAAC,aAAa;IAyBrB,OAAO,CAAC,iBAAiB;IA+FzB,+CAA+C;IAC/C,OAAO,CAAC,QAAQ;CAajB"}
1
+ {"version":3,"file":"installation-health-checker.d.ts","sourceRoot":"","sources":["../../../../../src/core/doctor/checkers/installation-health-checker.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAgBH,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EAEd,aAAa,EACd,MAAM,aAAa,CAAC;AAWrB,UAAU,yBAAyB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mGAAmG;IACnG,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAUD,qEAAqE;AACrE,eAAO,MAAM,oBAAoB,QAAsB,CAAC;AAExD,qBAAa,yBAA0B,YAAW,aAAa;IAC7D,QAAQ,SAAyB;IACjC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,mBAAmB,CAAC,CAAS;gBAEzB,IAAI,CAAC,EAAE,yBAAyB;IAQtC,KAAK,CACT,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,cAAc,CAAC;IAmB1B;;;;;;OAMG;IACH,OAAO,CAAC,uBAAuB;IAgD/B;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAoE3B;;;;;;;;OAQG;IACH,OAAO,CAAC,gBAAgB;IASxB,sDAAsD;IACtD,OAAO,CAAC,WAAW;IAenB;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAgB9B;;;;;OAKG;IACH,OAAO,CAAC,8BAA8B;IAUtC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,sBAAsB;IA8L9B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,6BAA6B;IA4ErC;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAuC1B;;;;;;OAMG;YACW,mBAAmB;IA8EjC;;;;;;OAMG;IACH;;;OAGG;IACH,OAAO,CAAC,aAAa;IAyBrB;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAsB9B;;;;;;;;;OASG;IACH,iBAAiB,IAAI,MAAM,GAAG,IAAI;IAiBlC,OAAO,CAAC,iBAAiB;IAuFzB,+CAA+C;IAC/C,OAAO,CAAC,QAAQ;CAajB"}
@@ -5,19 +5,36 @@
5
5
  * @since 1.0.279
6
6
  * @updated 1.0.356 - Migrated from commands-based to native plugin cache checks
7
7
  */
8
- import { existsSync, readdirSync, statSync, readFileSync, writeFileSync, rmSync, copyFileSync, } from 'node:fs';
9
- import { join } from 'node:path';
8
+ import { existsSync, mkdirSync, readdirSync, statSync, readFileSync, writeFileSync, rmSync, copyFileSync, } from 'node:fs';
9
+ import { join, dirname } from 'node:path';
10
10
  import { homedir } from 'node:os';
11
+ import { fileURLToPath } from 'node:url';
11
12
  import { execSync } from 'node:child_process';
12
13
  import { calculateOverallStatus } from '../types.js';
13
14
  import { computePluginHash, readGlobalLockfile } from '../../../utils/plugin-copier.js';
14
15
  import { npmRegistryFlag } from '../../../utils/npm-constants.js';
16
+ /**
17
+ * The 2.0 plugin hook assets copied into Claude Code's plugin cache.
18
+ * The old shell hooks (user-prompt-submit.sh et al) were removed in 2.0.
19
+ */
20
+ const PLUGIN_HOOK_ASSETS = ['hooks.json', 'run.mjs'];
21
+ /**
22
+ * SpecWeave's own plugin digest (computePluginHash) is a 12-char sha256 prefix.
23
+ * vskill records a FULL 64-char sha256 of the skill source instead — the two
24
+ * are not comparable, and comparing them produced a permanent, unfixable
25
+ * "hash mismatch" in `doctor` after every `specweave update`.
26
+ */
27
+ const FOREIGN_DIGEST_RE = /^[0-9a-f]{64}$/;
28
+ /** How long a `npm view specweave version` answer stays good for. */
29
+ export const NPM_VERSION_CACHE_MS = 24 * 60 * 60 * 1000;
15
30
  export class InstallationHealthChecker {
16
31
  constructor(opts) {
17
32
  this.category = 'Installation Health';
18
33
  const home = homedir();
19
34
  this.commandsDir = opts?.commandsDir ?? join(home, '.claude', 'commands');
20
35
  this.cacheDir = opts?.cacheDir ?? join(home, '.claude', 'plugins', 'cache');
36
+ this.skillsDir = opts?.skillsDir ?? join(home, '.claude', 'skills');
37
+ this.packageRootOverride = opts?.packageRoot;
21
38
  }
22
39
  async check(projectRoot, options) {
23
40
  const checks = [];
@@ -27,7 +44,7 @@ export class InstallationHealthChecker {
27
44
  checks.push(this.checkPluginCacheHookFreshness(options.fix ?? false));
28
45
  checks.push(...await this.checkStaleLockfiles(projectRoot, options.fix ?? false));
29
46
  if (!options.quick) {
30
- checks.push(this.checkUpdateHealth(options.fix ?? false));
47
+ checks.push(this.checkUpdateHealth(options.fix ?? false, projectRoot));
31
48
  }
32
49
  return {
33
50
  category: this.category,
@@ -154,11 +171,94 @@ export class InstallationHealthChecker {
154
171
  };
155
172
  }
156
173
  /**
157
- * Verify installed plugin hashes match vskill.lock entries.
158
- * Checks the native plugin cache (~/.claude/plugins/cache/specweave/<name>/).
174
+ * Locations a locked skill may legitimately live in, in resolution order.
175
+ *
176
+ * `specweave init` installs the sw plugin's skills PROJECT-LOCAL into
177
+ * `<project>/.claude/skills/` (that is what its own output says), and vskill
178
+ * installs third-party skills there too. Only looking in the Claude plugin
179
+ * cache made every fresh `init` end in
180
+ * "N skill(s) missing from plugin cache" and a doctor exit code of 1.
181
+ */
182
+ skillSearchPaths(projectRoot, name) {
183
+ return [
184
+ join(this.cacheDir, 'specweave', name),
185
+ join(this.commandsDir, name),
186
+ join(projectRoot, '.claude', 'skills', name),
187
+ join(this.skillsDir, name),
188
+ ];
189
+ }
190
+ /** Root of the running specweave package, or null. */
191
+ packageRoot() {
192
+ if (this.packageRootOverride)
193
+ return this.packageRootOverride;
194
+ let dir = dirname(fileURLToPath(import.meta.url));
195
+ for (let i = 0; i < 8; i++) {
196
+ try {
197
+ const pkg = JSON.parse(readFileSync(join(dir, 'package.json'), 'utf-8'));
198
+ if (pkg.name === 'specweave')
199
+ return dir;
200
+ }
201
+ catch { /* keep walking */ }
202
+ const parent = dirname(dir);
203
+ if (parent === dir)
204
+ break;
205
+ dir = parent;
206
+ }
207
+ return null;
208
+ }
209
+ /**
210
+ * Source directory of a bundled marketplace plugin in the running package
211
+ * (e.g. `sw` -> `<pkg>/plugins/specweave`). This is the directory the sha in
212
+ * the global lockfile was computed from, so it is the ONLY dir a bundled
213
+ * entry's hash can meaningfully be compared against.
214
+ */
215
+ bundledPluginSourceDir(name) {
216
+ const root = this.packageRoot();
217
+ if (!root)
218
+ return null;
219
+ try {
220
+ const marketplace = JSON.parse(readFileSync(join(root, '.claude-plugin', 'marketplace.json'), 'utf-8'));
221
+ const entry = (marketplace.plugins ?? []).find(p => p?.name === name);
222
+ if (!entry?.source)
223
+ return null;
224
+ const dir = join(root, entry.source);
225
+ return existsSync(dir) ? dir : null;
226
+ }
227
+ catch {
228
+ return null;
229
+ }
230
+ }
231
+ /**
232
+ * A bundled plugin installed PROJECT-LOCAL is exploded into
233
+ * `<project>/.claude/skills/<skill>/` — one dir per skill, no dir named after
234
+ * the plugin. Detect that layout so `init`'s own default install mode is not
235
+ * reported as "missing from plugin cache".
236
+ */
237
+ bundledSkillsCopiedIntoProject(projectRoot, name) {
238
+ const sourceDir = this.bundledPluginSourceDir(name);
239
+ if (!sourceDir)
240
+ return false;
241
+ const skillsDir = join(sourceDir, 'skills');
242
+ if (!existsSync(skillsDir))
243
+ return false;
244
+ const projectSkills = join(projectRoot, '.claude', 'skills');
245
+ if (!existsSync(projectSkills))
246
+ return false;
247
+ return this.listDirs(skillsDir).some(skill => existsSync(join(projectSkills, skill, 'SKILL.md')));
248
+ }
249
+ /**
250
+ * Verify installed skills recorded in the lockfiles are actually present, and
251
+ * — where the digest is one SpecWeave itself wrote — that it still matches.
252
+ *
253
+ * Provenance matters:
254
+ * - global `~/.specweave/plugins-lock.json` = SpecWeave-managed plugins
255
+ * (12-char computePluginHash digest). A missing one is a real failure.
256
+ * - project `vskill.lock` = third-party skills installed by vskill, with a
257
+ * full 64-char sha256 of the source file. That digest is NOT comparable
258
+ * with computePluginHash, so it is presence-checked only; a missing one
259
+ * is a warning pointing at vskill, never a `specweave doctor` failure.
159
260
  */
160
261
  checkLockfileIntegrity(projectRoot, fix) {
161
- // Merge skills from both project vskill.lock and global plugins-lock.json
162
262
  const mergedSkills = {};
163
263
  // Read global lock first (bundled plugins)
164
264
  try {
@@ -193,27 +293,38 @@ export class InstallationHealthChecker {
193
293
  message: 'no lockfile entries found',
194
294
  };
195
295
  }
196
- // Use merged skills for integrity check — alias for downstream code
197
296
  const lockfile = { skills: mergedSkills };
297
+ /**
298
+ * Provenance comes from the ENTRY, not from which file it sits in: a
299
+ * bundled `sw` entry can legitimately live in either lockfile, while a
300
+ * `github:`/`npm:` entry is always vskill's.
301
+ */
302
+ const isVskillManaged = (entry) => !(entry.source ?? '').startsWith('local:') && entry.tier !== 'BUNDLED';
303
+ const foreign = new Set(Object.entries(lockfile.skills).filter(([, e]) => isVskillManaged(e)).map(([n]) => n));
198
304
  const mismatches = [];
305
+ /** Missing SpecWeave-managed plugins — a genuine broken install. */
199
306
  const missing = [];
307
+ /** Missing vskill-managed skills — vskill's problem, not a doctor failure. */
308
+ const missingForeign = [];
200
309
  for (const [name, entry] of Object.entries(lockfile.skills)) {
201
- // Check native plugin cache first, fall back to legacy commands dir
202
- const cachePluginDir = join(this.cacheDir, 'specweave', name);
203
- const legacyPluginDir = join(this.commandsDir, name);
204
- let pluginDir = null;
205
- if (existsSync(cachePluginDir)) {
206
- pluginDir = cachePluginDir;
207
- }
208
- else if (existsSync(legacyPluginDir)) {
209
- pluginDir = legacyPluginDir;
210
- }
211
- if (!pluginDir) {
212
- missing.push(name);
310
+ const isForeign = foreign.has(name);
311
+ const installedDir = this.skillSearchPaths(projectRoot, name).find(p => existsSync(p)) ?? null;
312
+ const present = installedDir !== null
313
+ || (!isForeign && this.bundledSkillsCopiedIntoProject(projectRoot, name));
314
+ if (!present) {
315
+ (isForeign ? missingForeign : missing).push(name);
213
316
  continue;
214
317
  }
318
+ // Only compare digests SpecWeave itself produced.
319
+ if (isForeign || FOREIGN_DIGEST_RE.test(entry.sha ?? ''))
320
+ continue;
321
+ // A bundled entry's sha is the hash of the plugin SOURCE in the package,
322
+ // not of whatever the installer exploded into the cache/project.
323
+ const hashDir = this.bundledPluginSourceDir(name) ?? installedDir;
324
+ if (!hashDir)
325
+ continue;
215
326
  try {
216
- const currentHash = computePluginHash(pluginDir);
327
+ const currentHash = computePluginHash(hashDir);
217
328
  if (currentHash !== entry.sha) {
218
329
  mismatches.push(`${name}: expected ${entry.sha}, got ${currentHash}`);
219
330
  }
@@ -225,6 +336,7 @@ export class InstallationHealthChecker {
225
336
  if (missing.length > 0) {
226
337
  const allDetails = [
227
338
  ...missing.map(m => `Missing: ${m}`),
339
+ ...missingForeign.map(m => `Missing (vskill-managed): ${m}`),
228
340
  ...mismatches.map(m => `Mismatch: ${m}`),
229
341
  ];
230
342
  const mismatchNote = mismatches.length > 0
@@ -265,10 +377,10 @@ export class InstallationHealthChecker {
265
377
  try {
266
378
  const updatedSkills = {};
267
379
  for (const [name, entry] of Object.entries(lockfile.skills)) {
268
- const cachePluginDir = join(this.cacheDir, 'specweave', name);
269
- const legacyDir = join(this.commandsDir, name);
270
- const dir = existsSync(cachePluginDir) ? cachePluginDir : existsSync(legacyDir) ? legacyDir : null;
271
- if (dir) {
380
+ const dir = this.bundledPluginSourceDir(name)
381
+ ?? this.skillSearchPaths(projectRoot, name).find(p => existsSync(p))
382
+ ?? null;
383
+ if (dir && !foreign.has(name) && !FOREIGN_DIGEST_RE.test(entry.sha ?? '')) {
272
384
  try {
273
385
  updatedSkills[name] = { ...entry, sha: computePluginHash(dir) };
274
386
  }
@@ -306,10 +418,19 @@ export class InstallationHealthChecker {
306
418
  fixSuggestion: 'Run: specweave doctor --fix',
307
419
  };
308
420
  }
421
+ if (missingForeign.length > 0) {
422
+ return {
423
+ name: 'Lockfile integrity',
424
+ status: 'warn',
425
+ message: `${missingForeign.length} vskill-managed skill(s) not installed`,
426
+ details: missingForeign.map(m => `Missing: ${m}`),
427
+ fixSuggestion: `Run: npx vskill install ${missingForeign[0]}`,
428
+ };
429
+ }
309
430
  return {
310
431
  name: 'Lockfile integrity',
311
432
  status: 'pass',
312
- message: 'all skill hashes match lockfile',
433
+ message: 'all locked skills present',
313
434
  };
314
435
  }
315
436
  /**
@@ -318,7 +439,8 @@ export class InstallationHealthChecker {
318
439
  * Claude Code's plugin system copies hooks to its own cache directory when
319
440
  * `claude plugin install` runs. If the source (npm package) is updated but
320
441
  * the cache isn't refreshed, hooks run stale code. This check compares the
321
- * UserPromptSubmit hook in the cache against the source and fixes mismatches.
442
+ * 2.0 plugin hook assets (hooks.json + the run.mjs launcher) in the cache
443
+ * against the source and fixes mismatches.
322
444
  *
323
445
  * @since 1.0.306
324
446
  */
@@ -331,40 +453,31 @@ export class InstallationHealthChecker {
331
453
  message: 'no specweave plugin cache found (clean)',
332
454
  };
333
455
  }
334
- // Find the specweave npm package root (walk up from this file)
335
- const sourceHookPath = this.findSourceHookPath();
336
- if (!sourceHookPath) {
456
+ // Find the specweave npm package's hooks/ dir (walk up from this file)
457
+ const sourceHooksDir = this.findSourceHooksDir();
458
+ if (!sourceHooksDir) {
337
459
  return {
338
460
  name: 'Plugin cache hook freshness',
339
461
  status: 'skip',
340
- message: 'could not locate source hook (npm package not found)',
462
+ message: 'could not locate source hooks (npm package not found)',
341
463
  };
342
464
  }
465
+ /** [cachedPath, sourcePath] pairs whose contents differ. */
343
466
  const staleHooks = [];
344
- let sourceContent;
345
- try {
346
- sourceContent = readFileSync(sourceHookPath, 'utf-8');
347
- }
348
- catch {
349
- return {
350
- name: 'Plugin cache hook freshness',
351
- status: 'skip',
352
- message: 'could not read source hook file',
353
- };
354
- }
355
- // Check each version dir in the cache (usually just one: 1.0.0)
356
467
  for (const versionDir of this.listDirs(pluginCacheBase)) {
357
- const cachedHook = join(pluginCacheBase, versionDir, 'hooks', 'user-prompt-submit.sh');
358
- if (!existsSync(cachedHook))
359
- continue;
360
- try {
361
- const cachedContent = readFileSync(cachedHook, 'utf-8');
362
- if (cachedContent !== sourceContent) {
363
- staleHooks.push(cachedHook);
468
+ for (const asset of PLUGIN_HOOK_ASSETS) {
469
+ const sourcePath = join(sourceHooksDir, asset);
470
+ const cachedHook = join(pluginCacheBase, versionDir, 'hooks', asset);
471
+ if (!existsSync(sourcePath) || !existsSync(cachedHook))
472
+ continue;
473
+ try {
474
+ if (readFileSync(cachedHook, 'utf-8') !== readFileSync(sourcePath, 'utf-8')) {
475
+ staleHooks.push([cachedHook, sourcePath]);
476
+ }
477
+ }
478
+ catch {
479
+ // Can't read = skip
364
480
  }
365
- }
366
- catch {
367
- // Can't read = skip
368
481
  }
369
482
  }
370
483
  if (staleHooks.length === 0) {
@@ -376,9 +489,9 @@ export class InstallationHealthChecker {
376
489
  }
377
490
  if (fix) {
378
491
  let fixed = 0;
379
- for (const hookPath of staleHooks) {
492
+ for (const [cachedHook, sourcePath] of staleHooks) {
380
493
  try {
381
- copyFileSync(sourceHookPath, hookPath);
494
+ copyFileSync(sourcePath, cachedHook);
382
495
  fixed++;
383
496
  }
384
497
  catch {
@@ -389,7 +502,7 @@ export class InstallationHealthChecker {
389
502
  name: 'Plugin cache hook freshness',
390
503
  status: fixed === staleHooks.length ? 'pass' : 'warn',
391
504
  message: `${fixed}/${staleHooks.length} stale hook(s) updated from source`,
392
- details: staleHooks.map(h => `Updated: ${h}`),
505
+ details: staleHooks.map(([cachedHook]) => `Updated: ${cachedHook}`),
393
506
  fixSuggestion: 'Restart Claude Code to pick up updated hooks',
394
507
  };
395
508
  }
@@ -397,20 +510,22 @@ export class InstallationHealthChecker {
397
510
  name: 'Plugin cache hook freshness',
398
511
  status: 'warn',
399
512
  message: `${staleHooks.length} stale hook(s) in plugin cache`,
400
- details: staleHooks.map(h => `Stale: ${h}`),
513
+ details: staleHooks.map(([cachedHook]) => `Stale: ${cachedHook}`),
401
514
  fixSuggestion: 'Run: specweave doctor --fix (or specweave update)',
402
515
  };
403
516
  }
404
517
  /**
405
- * Locate the authoritative source of user-prompt-submit.sh.
518
+ * Locate the authoritative `plugins/specweave/hooks/` directory.
406
519
  *
407
520
  * Resolution order:
408
521
  * 1. Walk up from __dirname to find package.json with name "specweave"
409
522
  * 2. Global npm install via `npm root -g`
410
523
  * 3. ~/.claude/plugins/marketplaces/specweave/
411
524
  */
412
- findSourceHookPath() {
413
- const hookRelPath = join('plugins', 'specweave', 'hooks', 'user-prompt-submit.sh');
525
+ findSourceHooksDir() {
526
+ const hooksRelPath = join('plugins', 'specweave', 'hooks');
527
+ /** A hooks dir is only authoritative if it carries the manifest. */
528
+ const isHooksDir = (dir) => existsSync(join(dir, 'hooks.json'));
414
529
  // 1. Walk up from __dirname
415
530
  try {
416
531
  let dir = __dirname;
@@ -420,9 +535,9 @@ export class InstallationHealthChecker {
420
535
  try {
421
536
  const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
422
537
  if (pkg.name === 'specweave') {
423
- const hookPath = join(dir, hookRelPath);
424
- if (existsSync(hookPath))
425
- return hookPath;
538
+ const hooksDir = join(dir, hooksRelPath);
539
+ if (isHooksDir(hooksDir))
540
+ return hooksDir;
426
541
  }
427
542
  }
428
543
  catch { /* continue */ }
@@ -437,15 +552,14 @@ export class InstallationHealthChecker {
437
552
  // 2. Global npm install
438
553
  try {
439
554
  const npmRoot = execSync('npm root -g', { encoding: 'utf-8', timeout: 5000 }).trim();
440
- const globalPath = join(npmRoot, 'specweave', hookRelPath);
441
- if (existsSync(globalPath))
555
+ const globalPath = join(npmRoot, 'specweave', hooksRelPath);
556
+ if (isHooksDir(globalPath))
442
557
  return globalPath;
443
558
  }
444
559
  catch { /* fallback */ }
445
560
  // 3. Marketplace path
446
- const home = homedir();
447
- const marketplacePath = join(home, '.claude', 'plugins', 'marketplaces', 'specweave', hookRelPath);
448
- if (existsSync(marketplacePath))
561
+ const marketplacePath = join(homedir(), '.claude', 'plugins', 'marketplaces', 'specweave', hooksRelPath);
562
+ if (isHooksDir(marketplacePath))
449
563
  return marketplacePath;
450
564
  return null;
451
565
  }
@@ -556,19 +670,64 @@ export class InstallationHealthChecker {
556
670
  env,
557
671
  }).trim();
558
672
  }
559
- checkUpdateHealth(fix) {
560
- // Get installed version
561
- let installedVersion;
673
+ /**
674
+ * Latest published version, cached for 24 h under
675
+ * `.specweave/state/npm-version-check.json`. `npm view` is a network round
676
+ * trip; doctor runs often enough that hitting the registry every time is
677
+ * the single slowest check in the report.
678
+ */
679
+ latestPublishedVersion(projectRoot) {
680
+ const cachePath = join(projectRoot, '.specweave', 'state', 'npm-version-check.json');
681
+ try {
682
+ const cached = JSON.parse(readFileSync(cachePath, 'utf-8'));
683
+ if (cached.version && typeof cached.checkedAt === 'number'
684
+ && Date.now() - cached.checkedAt < NPM_VERSION_CACHE_MS) {
685
+ return cached.version;
686
+ }
687
+ }
688
+ catch {
689
+ // no cache / unreadable — fall through to the network
690
+ }
691
+ const version = this.npmPublicExec('npm view specweave version', 15000);
562
692
  try {
563
- const output = execSync('specweave --version', {
564
- encoding: 'utf-8',
565
- stdio: ['pipe', 'pipe', 'pipe'],
566
- timeout: 10000,
567
- }).trim();
568
- const match = output.match(/(\d+\.\d+\.\d+)/);
569
- installedVersion = match ? match[1] : output;
693
+ mkdirSync(join(projectRoot, '.specweave', 'state'), { recursive: true });
694
+ writeFileSync(cachePath, JSON.stringify({ version, checkedAt: Date.now() }, null, 2), 'utf-8');
570
695
  }
571
696
  catch {
697
+ // caching is best-effort
698
+ }
699
+ return version;
700
+ }
701
+ /**
702
+ * Version of the CLI that is ACTUALLY EXECUTING, read from its own
703
+ * package.json.
704
+ *
705
+ * Shelling out to `specweave --version` answered for whatever `specweave`
706
+ * happens to be first on PATH — a different (usually older) install, or the
707
+ * marketplace plugin cache — so `doctor` told users running the newest CLI
708
+ * that they were outdated. It compared two numbers from two different
709
+ * installs under a "your CLI is out of date" label.
710
+ */
711
+ runningCliVersion() {
712
+ let dir = dirname(fileURLToPath(import.meta.url));
713
+ for (let i = 0; i < 8; i++) {
714
+ try {
715
+ const pkg = JSON.parse(readFileSync(join(dir, 'package.json'), 'utf-8'));
716
+ if (pkg.name === 'specweave' && typeof pkg.version === 'string')
717
+ return pkg.version;
718
+ }
719
+ catch { /* keep walking */ }
720
+ const parent = dirname(dir);
721
+ if (parent === dir)
722
+ break;
723
+ dir = parent;
724
+ }
725
+ return null;
726
+ }
727
+ checkUpdateHealth(fix, projectRoot) {
728
+ // The version of the binary the user is running RIGHT NOW.
729
+ const installedVersion = this.runningCliVersion();
730
+ if (!installedVersion) {
572
731
  return {
573
732
  name: 'Update health',
574
733
  status: 'skip',
@@ -578,7 +737,7 @@ export class InstallationHealthChecker {
578
737
  // Get latest version from npm — always use clean env to avoid E401 from stale tokens
579
738
  let latestVersion;
580
739
  try {
581
- latestVersion = this.npmPublicExec('npm view specweave version', 15000);
740
+ latestVersion = this.latestPublishedVersion(projectRoot);
582
741
  }
583
742
  catch {
584
743
  return {