specweave 0.23.18 → 0.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/.claude-plugin/marketplace.json +93 -49
  2. package/CLAUDE.md +137 -4
  3. package/dist/src/cli/helpers/ado-area-path-mapper.d.ts +89 -0
  4. package/dist/src/cli/helpers/ado-area-path-mapper.d.ts.map +1 -0
  5. package/dist/src/cli/helpers/ado-area-path-mapper.js +213 -0
  6. package/dist/src/cli/helpers/ado-area-path-mapper.js.map +1 -0
  7. package/dist/src/cli/helpers/issue-tracker/ado-auto-discover.d.ts +29 -0
  8. package/dist/src/cli/helpers/issue-tracker/ado-auto-discover.d.ts.map +1 -0
  9. package/dist/src/cli/helpers/issue-tracker/ado-auto-discover.js +109 -0
  10. package/dist/src/cli/helpers/issue-tracker/ado-auto-discover.js.map +1 -0
  11. package/dist/src/cli/helpers/issue-tracker/ado.d.ts +1 -0
  12. package/dist/src/cli/helpers/issue-tracker/ado.d.ts.map +1 -1
  13. package/dist/src/cli/helpers/issue-tracker/ado.js +2 -0
  14. package/dist/src/cli/helpers/issue-tracker/ado.js.map +1 -1
  15. package/dist/src/cli/helpers/smart-filter.d.ts +83 -0
  16. package/dist/src/cli/helpers/smart-filter.d.ts.map +1 -0
  17. package/dist/src/cli/helpers/smart-filter.js +265 -0
  18. package/dist/src/cli/helpers/smart-filter.js.map +1 -0
  19. package/dist/src/core/qa/quality-gate-decider.d.ts +1 -1
  20. package/dist/src/core/qa/quality-gate-decider.js +2 -2
  21. package/dist/src/core/qa/quality-gate-decider.js.map +1 -1
  22. package/dist/src/core/qa/risk-calculator.d.ts +2 -2
  23. package/dist/src/core/qa/risk-calculator.js +2 -2
  24. package/dist/src/core/validators/ac-presence-validator.d.ts +56 -0
  25. package/dist/src/core/validators/ac-presence-validator.d.ts.map +1 -0
  26. package/dist/src/core/validators/ac-presence-validator.js +149 -0
  27. package/dist/src/core/validators/ac-presence-validator.js.map +1 -0
  28. package/dist/src/integrations/ado/area-path-mapper.d.ts +137 -0
  29. package/dist/src/integrations/ado/area-path-mapper.d.ts.map +1 -0
  30. package/dist/src/integrations/ado/area-path-mapper.js +267 -0
  31. package/dist/src/integrations/ado/area-path-mapper.js.map +1 -0
  32. package/dist/src/integrations/jira/filter-processor.d.ts +126 -0
  33. package/dist/src/integrations/jira/filter-processor.d.ts.map +1 -0
  34. package/dist/src/integrations/jira/filter-processor.js +207 -0
  35. package/dist/src/integrations/jira/filter-processor.js.map +1 -0
  36. package/dist/src/integrations/jira/jira-client.d.ts +13 -0
  37. package/dist/src/integrations/jira/jira-client.d.ts.map +1 -1
  38. package/dist/src/integrations/jira/jira-client.js +33 -0
  39. package/dist/src/integrations/jira/jira-client.js.map +1 -1
  40. package/dist/src/utils/ac-embedder.d.ts +63 -0
  41. package/dist/src/utils/ac-embedder.d.ts.map +1 -0
  42. package/dist/src/utils/ac-embedder.js +217 -0
  43. package/dist/src/utils/ac-embedder.js.map +1 -0
  44. package/dist/src/utils/env-manager.d.ts +86 -0
  45. package/dist/src/utils/env-manager.d.ts.map +1 -0
  46. package/dist/src/utils/env-manager.js +188 -0
  47. package/dist/src/utils/env-manager.js.map +1 -0
  48. package/package.json +1 -1
  49. package/plugins/specweave/.claude-plugin/plugin.json +1 -1
  50. package/plugins/specweave/agents/AGENTS-INDEX.md +1 -1
  51. package/plugins/specweave/agents/increment-quality-judge-v2/AGENT.md +9 -9
  52. package/plugins/specweave/commands/specweave-do.md +37 -0
  53. package/plugins/specweave/commands/specweave-done.md +159 -0
  54. package/plugins/specweave/commands/specweave-embed-acs.md +446 -0
  55. package/plugins/specweave/commands/specweave-next.md +148 -3
  56. package/plugins/specweave/commands/specweave-qa.md +2 -2
  57. package/plugins/specweave/hooks/pre-increment-start.sh +168 -0
  58. package/plugins/specweave/skills/SKILLS-INDEX.md +1 -1
  59. package/plugins/specweave-ado/.claude-plugin/plugin.json +1 -1
  60. package/plugins/specweave-ado/commands/specweave-ado-import-projects.md +331 -0
  61. package/plugins/specweave-alternatives/.claude-plugin/plugin.json +10 -0
  62. package/plugins/specweave-alternatives/commands/alternatives-analyze.md +336 -0
  63. package/plugins/specweave-alternatives/skills/architecture-alternatives/SKILL.md +651 -0
  64. package/plugins/specweave-alternatives/skills/bmad-method/SKILL.md +420 -0
  65. package/plugins/specweave-alternatives/skills/spec-kit-expert/SKILL.md +487 -0
  66. package/plugins/specweave-backend/commands/api-scaffold.md +80 -0
  67. package/plugins/specweave-backend/commands/crud-generate.md +109 -0
  68. package/plugins/specweave-backend/commands/migration-generate.md +139 -0
  69. package/plugins/specweave-confluent/commands/connector-deploy.md +154 -0
  70. package/plugins/specweave-confluent/commands/ksqldb-query.md +179 -0
  71. package/plugins/specweave-confluent/commands/schema-register.md +123 -0
  72. package/plugins/specweave-core/.claude-plugin/plugin.json +21 -0
  73. package/plugins/specweave-core/commands/architecture-review.md +288 -0
  74. package/plugins/specweave-core/commands/code-review.md +213 -0
  75. package/plugins/specweave-core/commands/refactor-plan.md +249 -0
  76. package/plugins/specweave-core/skills/code-quality/SKILL.md +157 -0
  77. package/plugins/specweave-core/skills/design-patterns/SKILL.md +244 -0
  78. package/plugins/specweave-core/skills/software-architecture/SKILL.md +83 -0
  79. package/plugins/specweave-cost-optimizer/.claude-plugin/plugin.json +22 -0
  80. package/plugins/specweave-cost-optimizer/commands/cost-analyze.md +360 -0
  81. package/plugins/specweave-cost-optimizer/commands/cost-optimize.md +480 -0
  82. package/plugins/specweave-cost-optimizer/skills/aws-cost-expert/SKILL.md +416 -0
  83. package/plugins/specweave-cost-optimizer/skills/cloud-pricing/SKILL.md +325 -0
  84. package/plugins/specweave-cost-optimizer/skills/cost-optimization/SKILL.md +337 -0
  85. package/plugins/specweave-diagrams/.claude-plugin/plugin.json +1 -1
  86. package/plugins/specweave-diagrams/commands/diagrams-generate.md +168 -0
  87. package/plugins/specweave-docs/.claude-plugin/plugin.json +10 -0
  88. package/plugins/specweave-docs/commands/docs-generate.md +441 -0
  89. package/plugins/specweave-docs/commands/docs-init.md +334 -0
  90. package/plugins/specweave-docs/skills/docusaurus/SKILL.md +581 -0
  91. package/plugins/specweave-docs/skills/spec-driven-brainstorming/SKILL.md +689 -0
  92. package/plugins/specweave-docs/skills/technical-writing/SKILL.md +1039 -0
  93. package/plugins/specweave-docs-preview/.claude-plugin/plugin.json +1 -1
  94. package/plugins/specweave-figma/.claude-plugin/plugin.json +23 -0
  95. package/plugins/specweave-figma/commands/figma-import.md +690 -0
  96. package/plugins/specweave-figma/commands/figma-to-react.md +834 -0
  97. package/plugins/specweave-figma/commands/figma-tokens.md +815 -0
  98. package/plugins/specweave-frontend/.claude-plugin/plugin.json +21 -0
  99. package/plugins/specweave-frontend/agents/frontend-architect/AGENT.md +387 -0
  100. package/plugins/specweave-frontend/agents/frontend-architect/README.md +385 -0
  101. package/plugins/specweave-frontend/agents/frontend-architect/examples.md +590 -0
  102. package/plugins/specweave-frontend/agents/frontend-architect/templates/component-template.tsx +152 -0
  103. package/plugins/specweave-frontend/agents/frontend-architect/templates/hook-template.ts +311 -0
  104. package/plugins/specweave-frontend/agents/frontend-architect/templates/page-template.tsx +228 -0
  105. package/plugins/specweave-frontend/commands/component-generate.md +510 -0
  106. package/plugins/specweave-frontend/commands/design-system-init.md +494 -0
  107. package/plugins/specweave-frontend/commands/frontend-scaffold.md +207 -0
  108. package/plugins/specweave-frontend/commands/nextjs-setup.md +396 -0
  109. package/plugins/specweave-frontend/skills/design-system-architect/SKILL.md +278 -0
  110. package/plugins/specweave-frontend/skills/frontend/SKILL.md +420 -0
  111. package/plugins/specweave-frontend/skills/nextjs/SKILL.md +546 -0
  112. package/plugins/specweave-github/.claude-plugin/plugin.json +1 -1
  113. package/plugins/specweave-github/hooks/.specweave/logs/hooks-debug.log +194 -0
  114. package/plugins/specweave-infrastructure/.claude-plugin/plugin.json +1 -1
  115. package/plugins/specweave-jira/.claude-plugin/plugin.json +1 -1
  116. package/plugins/specweave-jira/commands/import-projects.js +183 -0
  117. package/plugins/specweave-jira/commands/import-projects.md +97 -0
  118. package/plugins/specweave-jira/commands/import-projects.ts +288 -0
  119. package/plugins/specweave-jira/commands/specweave-jira-import-projects.md +298 -0
  120. package/plugins/specweave-kafka/.claude-plugin/plugin.json +1 -1
  121. package/plugins/specweave-kafka-streams/.claude-plugin/plugin.json +1 -1
  122. package/plugins/specweave-kubernetes/commands/cluster-setup.md +262 -0
  123. package/plugins/specweave-kubernetes/commands/deployment-generate.md +242 -0
  124. package/plugins/specweave-kubernetes/commands/helm-scaffold.md +333 -0
  125. package/plugins/specweave-ml/.claude-plugin/plugin.json +1 -1
  126. package/plugins/specweave-mobile/commands/app-scaffold.md +233 -0
  127. package/plugins/specweave-mobile/commands/build-config.md +256 -0
  128. package/plugins/specweave-mobile/commands/screen-generate.md +289 -0
  129. package/plugins/specweave-n8n/.claude-plugin/plugin.json +1 -1
  130. package/plugins/specweave-plugin-dev/.claude-plugin/plugin.json +13 -12
  131. package/plugins/specweave-plugin-dev/commands/plugin-create.md +333 -0
  132. package/plugins/specweave-plugin-dev/commands/plugin-publish.md +339 -0
  133. package/plugins/specweave-plugin-dev/commands/plugin-test.md +293 -0
  134. package/plugins/specweave-plugin-dev/skills/claude-sdk/SKILL.md +162 -0
  135. package/plugins/specweave-plugin-dev/skills/marketplace-publishing/SKILL.md +263 -0
  136. package/plugins/specweave-plugin-dev/skills/plugin-development/SKILL.md +316 -0
  137. package/plugins/specweave-release/.claude-plugin/plugin.json +1 -1
  138. package/plugins/specweave-release/commands/specweave-release-npm.md +110 -0
  139. package/plugins/specweave-release/hooks/.specweave/logs/dora-tracking.log +168 -0
  140. package/plugins/specweave-testing/.claude-plugin/plugin.json +21 -0
  141. package/plugins/specweave-testing/agents/qa-engineer/AGENT.md +797 -0
  142. package/plugins/specweave-testing/agents/qa-engineer/README.md +443 -0
  143. package/plugins/specweave-testing/agents/qa-engineer/templates/playwright-e2e-test.ts +470 -0
  144. package/plugins/specweave-testing/agents/qa-engineer/templates/test-data-factory.ts +507 -0
  145. package/plugins/specweave-testing/agents/qa-engineer/templates/vitest-unit-test.ts +400 -0
  146. package/plugins/specweave-testing/agents/qa-engineer/test-strategies.md +726 -0
  147. package/plugins/specweave-testing/commands/e2e-setup.md +1081 -0
  148. package/plugins/specweave-testing/commands/test-coverage.md +979 -0
  149. package/plugins/specweave-testing/commands/test-generate.md +1156 -0
  150. package/plugins/specweave-testing/commands/test-init.md +409 -0
  151. package/plugins/specweave-testing/skills/e2e-playwright/SKILL.md +769 -0
  152. package/plugins/specweave-testing/skills/tdd-expert/SKILL.md +934 -0
  153. package/plugins/specweave-testing/skills/unit-testing-expert/SKILL.md +1011 -0
  154. package/plugins/specweave-tooling/.claude-plugin/plugin.json +22 -0
  155. package/plugins/specweave-tooling/commands/specweave-tooling-skill-create.md +691 -0
  156. package/plugins/specweave-tooling/commands/specweave-tooling-skill-package.md +751 -0
  157. package/plugins/specweave-tooling/commands/specweave-tooling-skill-validate.md +858 -0
  158. package/plugins/specweave-ui/.claude-plugin/plugin.json +10 -0
  159. package/plugins/specweave-ui/commands/ui-automate.md +199 -0
  160. package/plugins/specweave-ui/commands/ui-inspect.md +70 -0
  161. package/plugins/specweave-ui/skills/browser-automation/SKILL.md +314 -0
  162. package/plugins/specweave-ui/skills/ui-testing/SKILL.md +716 -0
  163. package/plugins/specweave-ui/skills/visual-regression/SKILL.md +728 -0
  164. package/plugins/specweave/commands/check-hooks.md +0 -257
  165. package/plugins/specweave/commands/specweave-archive-increments.md +0 -82
  166. package/plugins/specweave-plugin-dev/skills/plugin-expert/SKILL.md +0 -1231
  167. /package/plugins/specweave/{agents/code-reviewer.md → skills/code-reviewer/SKILL.md} +0 -0
@@ -14,3 +14,197 @@
14
14
  [Sat Nov 22 02:20:33 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
15
15
  [Sat Nov 22 02:20:36 EST 2025] [GitHub] 🔗 GitHub sync hook fired
16
16
  [Sat Nov 22 02:20:36 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
17
+ [Sat Nov 22 13:23:12 EST 2025] [GitHub] 🔗 GitHub sync hook fired
18
+ [Sat Nov 22 13:23:12 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
19
+ [Sat Nov 22 13:23:14 EST 2025] [GitHub] 🔗 GitHub sync hook fired
20
+ [Sat Nov 22 13:23:14 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
21
+ [Sat Nov 22 13:23:15 EST 2025] [GitHub] 🔗 GitHub sync hook fired
22
+ [Sat Nov 22 13:23:15 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
23
+ [Sat Nov 22 13:23:17 EST 2025] [GitHub] 🔗 GitHub sync hook fired
24
+ [Sat Nov 22 13:23:17 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
25
+ [Sat Nov 22 13:23:19 EST 2025] [GitHub] 🔗 GitHub sync hook fired
26
+ [Sat Nov 22 13:23:19 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
27
+ [Sat Nov 22 13:23:19 EST 2025] [GitHub] 🔗 GitHub sync hook fired
28
+ [Sat Nov 22 13:23:19 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
29
+ [Sat Nov 22 13:23:19 EST 2025] [GitHub] 🔗 GitHub sync hook fired
30
+ [Sat Nov 22 13:23:19 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
31
+ [Sat Nov 22 13:23:19 EST 2025] [GitHub] 🔗 GitHub sync hook fired
32
+ [Sat Nov 22 13:23:19 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
33
+ [Sat Nov 22 13:27:47 EST 2025] [GitHub] 🔗 GitHub sync hook fired
34
+ [Sat Nov 22 13:27:47 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
35
+ [Sat Nov 22 13:27:49 EST 2025] [GitHub] 🔗 GitHub sync hook fired
36
+ [Sat Nov 22 13:27:49 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
37
+ [Sat Nov 22 13:27:49 EST 2025] [GitHub] 🔗 GitHub sync hook fired
38
+ [Sat Nov 22 13:27:49 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
39
+ [Sat Nov 22 13:27:52 EST 2025] [GitHub] 🔗 GitHub sync hook fired
40
+ [Sat Nov 22 13:27:52 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
41
+ [Sat Nov 22 13:27:54 EST 2025] [GitHub] 🔗 GitHub sync hook fired
42
+ [Sat Nov 22 13:27:54 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
43
+ [Sat Nov 22 13:27:54 EST 2025] [GitHub] 🔗 GitHub sync hook fired
44
+ [Sat Nov 22 13:27:54 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
45
+ [Sat Nov 22 13:27:54 EST 2025] [GitHub] 🔗 GitHub sync hook fired
46
+ [Sat Nov 22 13:27:54 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
47
+ [Sat Nov 22 13:27:54 EST 2025] [GitHub] 🔗 GitHub sync hook fired
48
+ [Sat Nov 22 13:27:54 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
49
+ [Sat Nov 22 14:10:04 EST 2025] [GitHub] 🔗 GitHub sync hook fired
50
+ [Sat Nov 22 14:10:04 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
51
+ [Sat Nov 22 14:10:09 EST 2025] [GitHub] 🔗 GitHub sync hook fired
52
+ [Sat Nov 22 14:10:09 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
53
+ [Sat Nov 22 14:10:14 EST 2025] [GitHub] 🔗 GitHub sync hook fired
54
+ [Sat Nov 22 14:10:14 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
55
+ [Sat Nov 22 14:10:19 EST 2025] [GitHub] 🔗 GitHub sync hook fired
56
+ [Sat Nov 22 14:10:19 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
57
+ [Sat Nov 22 14:27:50 EST 2025] [GitHub] 🔗 GitHub sync hook fired
58
+ [Sat Nov 22 14:27:50 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
59
+ [Sat Nov 22 14:27:55 EST 2025] [GitHub] 🔗 GitHub sync hook fired
60
+ [Sat Nov 22 14:27:55 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
61
+ [Sat Nov 22 14:28:00 EST 2025] [GitHub] 🔗 GitHub sync hook fired
62
+ [Sat Nov 22 14:28:00 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
63
+ [Sat Nov 22 14:28:05 EST 2025] [GitHub] 🔗 GitHub sync hook fired
64
+ [Sat Nov 22 14:28:05 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
65
+ [Sat Nov 22 14:39:21 EST 2025] [GitHub] 🔗 GitHub sync hook fired
66
+ [Sat Nov 22 14:39:21 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
67
+ [Sat Nov 22 14:39:26 EST 2025] [GitHub] 🔗 GitHub sync hook fired
68
+ [Sat Nov 22 14:39:26 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
69
+ [Sat Nov 22 14:39:31 EST 2025] [GitHub] 🔗 GitHub sync hook fired
70
+ [Sat Nov 22 14:39:31 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
71
+ [Sat Nov 22 14:39:36 EST 2025] [GitHub] 🔗 GitHub sync hook fired
72
+ [Sat Nov 22 14:39:36 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
73
+ [Sat Nov 22 15:58:47 EST 2025] [GitHub] 🔗 GitHub sync hook fired
74
+ [Sat Nov 22 15:58:47 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
75
+ [Sat Nov 22 15:58:53 EST 2025] [GitHub] 🔗 GitHub sync hook fired
76
+ [Sat Nov 22 15:58:53 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
77
+ [Sat Nov 22 15:58:58 EST 2025] [GitHub] 🔗 GitHub sync hook fired
78
+ [Sat Nov 22 15:58:58 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
79
+ [Sat Nov 22 15:59:03 EST 2025] [GitHub] 🔗 GitHub sync hook fired
80
+ [Sat Nov 22 15:59:03 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
81
+ [Sat Nov 22 15:59:21 EST 2025] [GitHub] 🔗 GitHub sync hook fired
82
+ [Sat Nov 22 15:59:21 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
83
+ [Sat Nov 22 15:59:26 EST 2025] [GitHub] 🔗 GitHub sync hook fired
84
+ [Sat Nov 22 15:59:26 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
85
+ [Sat Nov 22 15:59:32 EST 2025] [GitHub] 🔗 GitHub sync hook fired
86
+ [Sat Nov 22 15:59:32 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
87
+ [Sat Nov 22 15:59:37 EST 2025] [GitHub] 🔗 GitHub sync hook fired
88
+ [Sat Nov 22 15:59:37 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
89
+ [Sat Nov 22 16:00:32 EST 2025] [GitHub] 🔗 GitHub sync hook fired
90
+ [Sat Nov 22 16:00:32 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
91
+ [Sat Nov 22 16:00:37 EST 2025] [GitHub] 🔗 GitHub sync hook fired
92
+ [Sat Nov 22 16:00:37 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
93
+ [Sat Nov 22 16:00:42 EST 2025] [GitHub] 🔗 GitHub sync hook fired
94
+ [Sat Nov 22 16:00:42 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
95
+ [Sat Nov 22 16:00:47 EST 2025] [GitHub] 🔗 GitHub sync hook fired
96
+ [Sat Nov 22 16:00:47 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
97
+ [Sat Nov 22 16:01:04 EST 2025] [GitHub] 🔗 GitHub sync hook fired
98
+ [Sat Nov 22 16:01:04 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
99
+ [Sat Nov 22 16:01:09 EST 2025] [GitHub] 🔗 GitHub sync hook fired
100
+ [Sat Nov 22 16:01:09 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
101
+ [Sat Nov 22 16:01:14 EST 2025] [GitHub] 🔗 GitHub sync hook fired
102
+ [Sat Nov 22 16:01:14 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
103
+ [Sat Nov 22 16:01:19 EST 2025] [GitHub] 🔗 GitHub sync hook fired
104
+ [Sat Nov 22 16:01:19 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
105
+ [Sat Nov 22 16:02:06 EST 2025] [GitHub] 🔗 GitHub sync hook fired
106
+ [Sat Nov 22 16:02:06 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
107
+ [Sat Nov 22 16:02:11 EST 2025] [GitHub] 🔗 GitHub sync hook fired
108
+ [Sat Nov 22 16:02:11 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
109
+ [Sat Nov 22 16:02:16 EST 2025] [GitHub] 🔗 GitHub sync hook fired
110
+ [Sat Nov 22 16:02:16 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
111
+ [Sat Nov 22 16:02:21 EST 2025] [GitHub] 🔗 GitHub sync hook fired
112
+ [Sat Nov 22 16:02:21 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
113
+ [Sat Nov 22 16:25:52 EST 2025] [GitHub] 🔗 GitHub sync hook fired
114
+ [Sat Nov 22 16:25:52 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
115
+ [Sat Nov 22 16:26:09 EST 2025] [GitHub] 🔗 GitHub sync hook fired
116
+ [Sat Nov 22 16:26:09 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
117
+ [Sat Nov 22 16:26:34 EST 2025] [GitHub] 🔗 GitHub sync hook fired
118
+ [Sat Nov 22 16:26:34 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
119
+ [Sat Nov 22 16:31:31 EST 2025] [GitHub] 🔗 GitHub sync hook fired
120
+ [Sat Nov 22 16:31:31 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
121
+ [Sat Nov 22 16:32:18 EST 2025] [GitHub] 🔗 GitHub sync hook fired
122
+ [Sat Nov 22 16:32:18 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
123
+ [Sat Nov 22 16:34:23 EST 2025] [GitHub] 🔗 GitHub sync hook fired
124
+ [Sat Nov 22 16:34:23 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
125
+ [Sat Nov 22 16:37:25 EST 2025] [GitHub] 🔗 GitHub sync hook fired
126
+ [Sat Nov 22 16:37:25 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
127
+ [Sat Nov 22 16:37:25 EST 2025] [GitHub] 🔗 GitHub sync hook fired
128
+ [Sat Nov 22 16:37:25 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
129
+ [Sat Nov 22 16:40:42 EST 2025] [GitHub] 🔗 GitHub sync hook fired
130
+ [Sat Nov 22 16:40:42 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
131
+ [Sat Nov 22 16:42:45 EST 2025] [GitHub] 🔗 GitHub sync hook fired
132
+ [Sat Nov 22 16:42:45 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
133
+ [Sat Nov 22 16:44:13 EST 2025] [GitHub] 🔗 GitHub sync hook fired
134
+ [Sat Nov 22 16:44:13 EST 2025] [GitHub] 🔗 GitHub sync hook fired
135
+ [Sat Nov 22 16:44:13 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
136
+ [Sat Nov 22 16:44:13 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
137
+ [Sat Nov 22 16:45:33 EST 2025] [GitHub] 🔗 GitHub sync hook fired
138
+ [Sat Nov 22 16:45:33 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
139
+ [Sat Nov 22 16:46:24 EST 2025] [GitHub] 🔗 GitHub sync hook fired
140
+ [Sat Nov 22 16:46:24 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
141
+ [Sat Nov 22 16:50:19 EST 2025] [GitHub] 🔗 GitHub sync hook fired
142
+ [Sat Nov 22 16:50:19 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
143
+ [Sat Nov 22 16:50:35 EST 2025] [GitHub] 🔗 GitHub sync hook fired
144
+ [Sat Nov 22 16:50:35 EST 2025] [GitHub] 🔗 GitHub sync hook fired
145
+ [Sat Nov 22 16:50:35 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
146
+ [Sat Nov 22 16:50:35 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
147
+ [Sat Nov 22 16:56:06 EST 2025] [GitHub] 🔗 GitHub sync hook fired
148
+ [Sat Nov 22 16:56:06 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
149
+ [Sat Nov 22 16:56:43 EST 2025] [GitHub] 🔗 GitHub sync hook fired
150
+ [Sat Nov 22 16:56:43 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
151
+ [Sat Nov 22 16:56:43 EST 2025] [GitHub] 🔗 GitHub sync hook fired
152
+ [Sat Nov 22 16:56:43 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
153
+ [Sat Nov 22 16:58:17 EST 2025] [GitHub] 🔗 GitHub sync hook fired
154
+ [Sat Nov 22 16:58:17 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
155
+ [Sat Nov 22 17:01:31 EST 2025] [GitHub] 🔗 GitHub sync hook fired
156
+ [Sat Nov 22 17:01:31 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
157
+ [Sat Nov 22 17:04:01 EST 2025] [GitHub] 🔗 GitHub sync hook fired
158
+ [Sat Nov 22 17:04:01 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
159
+ [Sat Nov 22 17:11:03 EST 2025] [GitHub] 🔗 GitHub sync hook fired
160
+ [Sat Nov 22 17:11:03 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
161
+ [Sat Nov 22 17:11:47 EST 2025] [GitHub] 🔗 GitHub sync hook fired
162
+ [Sat Nov 22 17:11:47 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
163
+ [Sat Nov 22 17:12:15 EST 2025] [GitHub] 🔗 GitHub sync hook fired
164
+ [Sat Nov 22 17:12:15 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
165
+ [Sat Nov 22 17:12:35 EST 2025] [GitHub] 🔗 GitHub sync hook fired
166
+ [Sat Nov 22 17:12:35 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
167
+ [Sat Nov 22 17:12:37 EST 2025] [GitHub] 🔗 GitHub sync hook fired
168
+ [Sat Nov 22 17:12:37 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
169
+ [Sat Nov 22 17:12:38 EST 2025] [GitHub] 🔗 GitHub sync hook fired
170
+ [Sat Nov 22 17:12:38 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
171
+ [Sat Nov 22 17:12:40 EST 2025] [GitHub] 🔗 GitHub sync hook fired
172
+ [Sat Nov 22 17:12:40 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
173
+ [Sat Nov 22 17:12:42 EST 2025] [GitHub] 🔗 GitHub sync hook fired
174
+ [Sat Nov 22 17:12:42 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
175
+ [Sat Nov 22 17:12:42 EST 2025] [GitHub] 🔗 GitHub sync hook fired
176
+ [Sat Nov 22 17:12:42 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
177
+ [Sat Nov 22 17:12:42 EST 2025] [GitHub] 🔗 GitHub sync hook fired
178
+ [Sat Nov 22 17:12:42 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
179
+ [Sat Nov 22 17:12:42 EST 2025] [GitHub] 🔗 GitHub sync hook fired
180
+ [Sat Nov 22 17:12:42 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
181
+ [Sat Nov 22 17:14:22 EST 2025] [GitHub] 🔗 GitHub sync hook fired
182
+ [Sat Nov 22 17:14:22 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
183
+ [Sat Nov 22 17:15:06 EST 2025] [GitHub] 🔗 GitHub sync hook fired
184
+ [Sat Nov 22 17:15:06 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
185
+ [Sat Nov 22 17:16:25 EST 2025] [GitHub] 🔗 GitHub sync hook fired
186
+ [Sat Nov 22 17:16:25 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
187
+ [Sat Nov 22 17:16:42 EST 2025] [GitHub] 🔗 GitHub sync hook fired
188
+ [Sat Nov 22 17:16:42 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
189
+ [Sat Nov 22 17:16:42 EST 2025] [GitHub] 🔗 GitHub sync hook fired
190
+ [Sat Nov 22 17:16:42 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
191
+ [Sat Nov 22 17:19:09 EST 2025] [GitHub] 🔗 GitHub sync hook fired
192
+ [Sat Nov 22 17:19:09 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
193
+ [Sat Nov 22 17:20:04 EST 2025] [GitHub] 🔗 GitHub sync hook fired
194
+ [Sat Nov 22 17:20:04 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
195
+ [Sat Nov 22 17:20:22 EST 2025] [GitHub] 🔗 GitHub sync hook fired
196
+ [Sat Nov 22 17:20:22 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
197
+ [Sat Nov 22 17:21:17 EST 2025] [GitHub] 🔗 GitHub sync hook fired
198
+ [Sat Nov 22 17:21:17 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
199
+ [Sat Nov 22 17:21:40 EST 2025] [GitHub] 🔗 GitHub sync hook fired
200
+ [Sat Nov 22 17:21:40 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
201
+ [Sat Nov 22 17:22:42 EST 2025] [GitHub] 🔗 GitHub sync hook fired
202
+ [Sat Nov 22 17:22:42 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
203
+ [Sat Nov 22 17:24:15 EST 2025] [GitHub] 🔗 GitHub sync hook fired
204
+ [Sat Nov 22 17:24:15 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
205
+ [Sat Nov 22 17:24:15 EST 2025] [GitHub] 🔗 GitHub sync hook fired
206
+ [Sat Nov 22 17:24:15 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
207
+ [Sat Nov 22 17:25:43 EST 2025] [GitHub] 🔗 GitHub sync hook fired
208
+ [Sat Nov 22 17:25:43 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
209
+ [Sat Nov 22 17:26:45 EST 2025] [GitHub] 🔗 GitHub sync hook fired
210
+ [Sat Nov 22 17:26:45 EST 2025] [GitHub] ⚠️ sync-spec-content CLI not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-github/hooks/dist/src/cli/commands/sync-spec-content.js, skipping sync
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "specweave-infrastructure",
3
3
  "description": "Cloud infrastructure provisioning and monitoring. Includes Hetzner Cloud provisioning, Prometheus/Grafana setup, distributed tracing (Jaeger/Tempo), and SLO implementation. Focus on cost-effective, production-ready infrastructure.",
4
- "version": "0.22.14",
4
+ "version": "0.24.0",
5
5
  "author": {
6
6
  "name": "SpecWeave Team",
7
7
  "url": "https://spec-weave.com"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "specweave-jira",
3
3
  "description": "JIRA integration for SpecWeave increments. Bidirectional sync between SpecWeave increments and JIRA epics/stories. Automatically creates JIRA issues from increments, tracks progress, and updates status.",
4
- "version": "0.22.14",
4
+ "version": "0.24.0",
5
5
  "author": {
6
6
  "name": "SpecWeave Team",
7
7
  "url": "https://spec-weave.com"
@@ -0,0 +1,183 @@
1
+ import chalk from "chalk";
2
+ import inquirer from "inquirer";
3
+ import { existsSync } from "fs";
4
+ import path from "path";
5
+ import { JiraClient } from "../../../src/integrations/jira/jira-client.js";
6
+ import { FilterProcessor } from "../../../src/integrations/jira/filter-processor.js";
7
+ import { mergeEnvList, getEnvValue } from "../../../src/utils/env-manager.js";
8
+ import { consoleLogger } from "../../../src/utils/logger.js";
9
+ import { credentialsManager } from "../../../src/core/credentials-manager.js";
10
+ async function importProjects(options = {}) {
11
+ const logger = options.logger ?? consoleLogger;
12
+ const projectRoot = process.cwd();
13
+ console.log(chalk.cyan("\n\u{1F4E5} JIRA Project Import\n"));
14
+ const credentials = credentialsManager.getJiraCredentials();
15
+ if (!credentials) {
16
+ console.log(chalk.red("\u274C No JIRA credentials found"));
17
+ console.log(chalk.gray(" Run: specweave init"));
18
+ return;
19
+ }
20
+ const client = new JiraClient(credentials);
21
+ const filterProcessor = new FilterProcessor(client, { logger });
22
+ if (options.resume) {
23
+ const resumed = await resumeImport(projectRoot, client, filterProcessor, options);
24
+ if (resumed) {
25
+ return;
26
+ }
27
+ console.log(chalk.yellow("\u26A0\uFE0F No import state found. Starting fresh import.\n"));
28
+ }
29
+ const existing = await loadExistingProjects(projectRoot, logger);
30
+ console.log(chalk.gray(`Current projects: ${existing.length > 0 ? existing.join(", ") : "none"}
31
+ `));
32
+ console.log(chalk.cyan("\u{1F4E1} Fetching available JIRA projects...\n"));
33
+ let allProjects = [];
34
+ try {
35
+ const response = await client.searchProjects({ maxResults: 1e3 });
36
+ allProjects = response.values || [];
37
+ console.log(chalk.green(`\u2713 Found ${allProjects.length} total projects
38
+ `));
39
+ } catch (error) {
40
+ console.log(chalk.red(`\u274C Failed to fetch projects: ${error.message}`));
41
+ return;
42
+ }
43
+ let filteredProjects = allProjects;
44
+ if (options.preset) {
45
+ console.log(chalk.cyan(`\u{1F50D} Applying preset: ${options.preset}
46
+ `));
47
+ try {
48
+ filteredProjects = await filterProcessor.applyPreset(allProjects, options.preset);
49
+ } catch (error) {
50
+ console.log(chalk.red(`\u274C ${error.message}`));
51
+ return;
52
+ }
53
+ } else if (options.filter || options.type || options.lead || options.jql) {
54
+ const filterOptions = {};
55
+ if (options.filter === "active") {
56
+ filterOptions.active = true;
57
+ } else if (options.filter === "archived") {
58
+ filterOptions.active = false;
59
+ }
60
+ if (options.type) {
61
+ filterOptions.types = options.type;
62
+ }
63
+ if (options.lead) {
64
+ filterOptions.lead = options.lead;
65
+ }
66
+ if (options.jql) {
67
+ filterOptions.jql = options.jql;
68
+ }
69
+ console.log(chalk.cyan("\u{1F50D} Applying filters...\n"));
70
+ filteredProjects = await filterProcessor.applyFilters(allProjects, filterOptions);
71
+ }
72
+ const newProjects = filteredProjects.filter((p) => {
73
+ return !existing.some((e) => e.toLowerCase() === p.key.toLowerCase());
74
+ });
75
+ if (newProjects.length === 0) {
76
+ console.log(chalk.yellow("\u26A0\uFE0F No new projects found to import"));
77
+ console.log(chalk.gray(" All available projects are already imported\n"));
78
+ return;
79
+ }
80
+ console.log(chalk.cyan("\u{1F4CB} Import Preview:\n"));
81
+ console.log(chalk.white(` Total available: ${allProjects.length}`));
82
+ console.log(chalk.white(` After filtering: ${filteredProjects.length}`));
83
+ console.log(chalk.white(` Already imported: ${existing.length}`));
84
+ console.log(chalk.white(` New projects: ${chalk.green.bold(newProjects.length)}
85
+ `));
86
+ if (newProjects.length <= 10) {
87
+ console.log(chalk.gray("Projects to import:"));
88
+ newProjects.forEach((p) => {
89
+ const typeLabel = p.projectTypeKey || "unknown";
90
+ const leadLabel = p.lead?.displayName || "no lead";
91
+ console.log(chalk.gray(` \u2728 ${p.key} - ${p.name} (${typeLabel}, ${leadLabel})`));
92
+ });
93
+ console.log("");
94
+ }
95
+ if (options.dryRun) {
96
+ console.log(chalk.yellow("\u{1F50D} Dry-run mode: No changes will be made\n"));
97
+ console.log(chalk.green(`\u2713 Preview complete: ${newProjects.length} project(s) would be imported
98
+ `));
99
+ return;
100
+ }
101
+ const { confirmed } = await inquirer.prompt([{
102
+ type: "confirm",
103
+ name: "confirmed",
104
+ message: `Import ${newProjects.length} new project(s)?`,
105
+ default: true
106
+ }]);
107
+ if (!confirmed) {
108
+ console.log(chalk.yellow("\n\u23ED\uFE0F Import canceled\n"));
109
+ return;
110
+ }
111
+ const projectKeys = newProjects.map((p) => p.key);
112
+ console.log(chalk.cyan("\n\u{1F4E5} Importing projects...\n"));
113
+ try {
114
+ await mergeEnvList({
115
+ key: "JIRA_PROJECTS",
116
+ newValues: projectKeys,
117
+ projectRoot,
118
+ logger,
119
+ createBackup: true
120
+ });
121
+ console.log(chalk.green(`
122
+ \u2705 Successfully imported ${projectKeys.length} project(s)
123
+ `));
124
+ console.log(chalk.gray("Updated: .env (JIRA_PROJECTS)"));
125
+ console.log(chalk.gray("Backup: .env.backup\n"));
126
+ } catch (error) {
127
+ console.log(chalk.red(`
128
+ \u274C Import failed: ${error.message}
129
+ `));
130
+ }
131
+ }
132
+ async function loadExistingProjects(projectRoot, logger) {
133
+ const value = await getEnvValue(projectRoot, "JIRA_PROJECTS");
134
+ if (!value) {
135
+ return [];
136
+ }
137
+ return value.split(",").map((v) => v.trim()).filter((v) => v.length > 0);
138
+ }
139
+ async function resumeImport(projectRoot, client, filterProcessor, options) {
140
+ const stateFile = path.join(projectRoot, ".specweave", "cache", "import-state.json");
141
+ if (!existsSync(stateFile)) {
142
+ return false;
143
+ }
144
+ console.log(chalk.cyan("\u{1F504} Resuming interrupted import...\n"));
145
+ return false;
146
+ }
147
+ async function main() {
148
+ const args = process.argv.slice(2);
149
+ const options = {};
150
+ for (let i = 0; i < args.length; i++) {
151
+ const arg = args[i];
152
+ if (arg === "--filter") {
153
+ options.filter = args[++i];
154
+ } else if (arg === "--type") {
155
+ options.type = args[++i].split(",");
156
+ } else if (arg === "--lead") {
157
+ options.lead = args[++i];
158
+ } else if (arg === "--jql") {
159
+ options.jql = args[++i];
160
+ } else if (arg === "--preset") {
161
+ options.preset = args[++i];
162
+ } else if (arg === "--dry-run") {
163
+ options.dryRun = true;
164
+ } else if (arg === "--resume") {
165
+ options.resume = true;
166
+ } else if (arg === "--no-progress") {
167
+ options.noProgress = true;
168
+ }
169
+ }
170
+ await importProjects(options);
171
+ }
172
+ if (import.meta.url === `file://${process.argv[1]}`) {
173
+ main().catch((error) => {
174
+ console.error(chalk.red(`
175
+ \u274C Error: ${error.message}
176
+ `));
177
+ process.exit(1);
178
+ });
179
+ }
180
+ export {
181
+ main as default,
182
+ importProjects
183
+ };
@@ -0,0 +1,97 @@
1
+ ---
2
+ name: specweave-jira:import-projects
3
+ description: Import additional JIRA projects post-init with smart filtering, resume, and dry-run support
4
+ ---
5
+
6
+ # JIRA Project Import Command
7
+
8
+ Import additional JIRA projects after initial setup with advanced filtering and merge capabilities.
9
+
10
+ ## Usage
11
+
12
+ ```bash
13
+ # Import all active projects
14
+ /specweave-jira:import-projects --filter active
15
+
16
+ # Import with preset filter
17
+ /specweave-jira:import-projects --preset production
18
+
19
+ # Import with custom JQL
20
+ /specweave-jira:import-projects --jql "project NOT IN (TEST, SANDBOX)"
21
+
22
+ # Dry-run preview (no changes)
23
+ /specweave-jira:import-projects --dry-run
24
+
25
+ # Resume interrupted import
26
+ /specweave-jira:import-projects --resume
27
+ ```
28
+
29
+ ## Options
30
+
31
+ - `--filter <type>` - Filter by status (active, archived, all)
32
+ - `--type <types>` - Filter by project type (software, business, service_desk)
33
+ - `--lead <email>` - Filter by project lead
34
+ - `--jql <query>` - Custom JQL filter
35
+ - `--preset <name>` - Use saved filter preset
36
+ - `--dry-run` - Preview without making changes
37
+ - `--resume` - Resume interrupted import
38
+ - `--no-progress` - Disable progress tracking
39
+
40
+ ## Examples
41
+
42
+ ### Import Active Projects Only
43
+
44
+ ```bash
45
+ /specweave-jira:import-projects --filter active
46
+ ```
47
+
48
+ Filters out archived projects, shows preview, prompts for confirmation, merges with existing.
49
+
50
+ ### Import with Production Preset
51
+
52
+ ```bash
53
+ /specweave-jira:import-projects --preset production
54
+ ```
55
+
56
+ Uses the "production" preset filter (active + software + excludes TEST/SANDBOX).
57
+
58
+ ### Custom JQL Filter
59
+
60
+ ```bash
61
+ /specweave-jira:import-projects --jql "lead = currentUser() AND status != Archived"
62
+ ```
63
+
64
+ Imports projects where you are the lead and not archived.
65
+
66
+ ### Dry-Run Preview
67
+
68
+ ```bash
69
+ /specweave-jira:import-projects --filter active --dry-run
70
+ ```
71
+
72
+ Shows which projects would be imported without making any changes.
73
+
74
+ ## Features
75
+
76
+ - **Smart Filtering**: Filter by status, type, lead, or custom JQL
77
+ - **Merge with Existing**: Automatically merges with existing projects (no duplicates)
78
+ - **Progress Tracking**: Real-time progress with ETA and cancelation support
79
+ - **Resume Support**: Resume interrupted imports with `--resume`
80
+ - **Dry-Run Mode**: Preview changes before applying
81
+ - **Filter Presets**: Use saved filter combinations
82
+
83
+ ## Implementation
84
+
85
+ This command:
86
+
87
+ 1. Reads existing projects from `.env` (JIRA_PROJECTS)
88
+ 2. Fetches available projects from JIRA API
89
+ 3. Applies selected filters using FilterProcessor
90
+ 4. Shows preview with project count and reduction percentage
91
+ 5. Prompts for confirmation
92
+ 6. Batch imports with AsyncProjectLoader (50-project limit)
93
+ 7. Shows progress with ETA
94
+ 8. Merges with existing projects (no duplicates)
95
+ 9. Updates `.env` file atomically
96
+
97
+ Handles Ctrl+C gracefully with import state saving for resume.