specweave 1.0.521 → 1.0.523

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 (161) hide show
  1. package/.claude-plugin/README.md +1 -1
  2. package/CLAUDE.md +1 -1
  3. package/README.md +1 -1
  4. package/bin/specweave.js +7 -7
  5. package/dist/plugins/specweave/lib/integrations/ado/ado-spec-sync.d.ts.map +1 -1
  6. package/dist/plugins/specweave/lib/integrations/ado/ado-spec-sync.js +44 -10
  7. package/dist/plugins/specweave/lib/integrations/ado/ado-spec-sync.js.map +1 -1
  8. package/dist/plugins/specweave/lib/vendor/sync/github-reconciler.js +5 -11
  9. package/dist/plugins/specweave/lib/vendor/sync/github-reconciler.js.map +1 -1
  10. package/dist/src/adapters/adapter-base.d.ts +5 -0
  11. package/dist/src/adapters/adapter-base.d.ts.map +1 -1
  12. package/dist/src/adapters/adapter-base.js +7 -0
  13. package/dist/src/adapters/adapter-base.js.map +1 -1
  14. package/dist/src/adapters/adapter-interface.d.ts +9 -0
  15. package/dist/src/adapters/adapter-interface.d.ts.map +1 -1
  16. package/dist/src/adapters/aider/adapter.d.ts +1 -0
  17. package/dist/src/adapters/aider/adapter.d.ts.map +1 -1
  18. package/dist/src/adapters/aider/adapter.js +3 -0
  19. package/dist/src/adapters/aider/adapter.js.map +1 -1
  20. package/dist/src/adapters/amazonq/adapter.d.ts +1 -0
  21. package/dist/src/adapters/amazonq/adapter.d.ts.map +1 -1
  22. package/dist/src/adapters/amazonq/adapter.js +3 -0
  23. package/dist/src/adapters/amazonq/adapter.js.map +1 -1
  24. package/dist/src/adapters/antigravity/adapter.d.ts +1 -0
  25. package/dist/src/adapters/antigravity/adapter.d.ts.map +1 -1
  26. package/dist/src/adapters/antigravity/adapter.js +3 -0
  27. package/dist/src/adapters/antigravity/adapter.js.map +1 -1
  28. package/dist/src/adapters/cline/adapter.d.ts +1 -0
  29. package/dist/src/adapters/cline/adapter.d.ts.map +1 -1
  30. package/dist/src/adapters/cline/adapter.js +3 -0
  31. package/dist/src/adapters/cline/adapter.js.map +1 -1
  32. package/dist/src/adapters/codex/README.md +1 -1
  33. package/dist/src/adapters/codex/adapter.d.ts +1 -0
  34. package/dist/src/adapters/codex/adapter.d.ts.map +1 -1
  35. package/dist/src/adapters/codex/adapter.js +3 -0
  36. package/dist/src/adapters/codex/adapter.js.map +1 -1
  37. package/dist/src/adapters/continue/adapter.d.ts +1 -0
  38. package/dist/src/adapters/continue/adapter.d.ts.map +1 -1
  39. package/dist/src/adapters/continue/adapter.js +3 -0
  40. package/dist/src/adapters/continue/adapter.js.map +1 -1
  41. package/dist/src/adapters/copilot/adapter.d.ts +1 -0
  42. package/dist/src/adapters/copilot/adapter.d.ts.map +1 -1
  43. package/dist/src/adapters/copilot/adapter.js +3 -0
  44. package/dist/src/adapters/copilot/adapter.js.map +1 -1
  45. package/dist/src/adapters/cursor/adapter.d.ts +1 -0
  46. package/dist/src/adapters/cursor/adapter.d.ts.map +1 -1
  47. package/dist/src/adapters/cursor/adapter.js +3 -0
  48. package/dist/src/adapters/cursor/adapter.js.map +1 -1
  49. package/dist/src/adapters/gemini/README.md +1 -1
  50. package/dist/src/adapters/gemini/adapter.d.ts +1 -0
  51. package/dist/src/adapters/gemini/adapter.d.ts.map +1 -1
  52. package/dist/src/adapters/gemini/adapter.js +3 -0
  53. package/dist/src/adapters/gemini/adapter.js.map +1 -1
  54. package/dist/src/adapters/generic/adapter.d.ts +1 -0
  55. package/dist/src/adapters/generic/adapter.d.ts.map +1 -1
  56. package/dist/src/adapters/generic/adapter.js +3 -0
  57. package/dist/src/adapters/generic/adapter.js.map +1 -1
  58. package/dist/src/adapters/jetbrains/adapter.d.ts +1 -0
  59. package/dist/src/adapters/jetbrains/adapter.d.ts.map +1 -1
  60. package/dist/src/adapters/jetbrains/adapter.js +3 -0
  61. package/dist/src/adapters/jetbrains/adapter.js.map +1 -1
  62. package/dist/src/adapters/kimi/adapter.d.ts +1 -0
  63. package/dist/src/adapters/kimi/adapter.d.ts.map +1 -1
  64. package/dist/src/adapters/kimi/adapter.js +3 -0
  65. package/dist/src/adapters/kimi/adapter.js.map +1 -1
  66. package/dist/src/adapters/opencode/adapter.d.ts +1 -0
  67. package/dist/src/adapters/opencode/adapter.d.ts.map +1 -1
  68. package/dist/src/adapters/opencode/adapter.js +3 -0
  69. package/dist/src/adapters/opencode/adapter.js.map +1 -1
  70. package/dist/src/adapters/tabnine/adapter.d.ts +1 -0
  71. package/dist/src/adapters/tabnine/adapter.d.ts.map +1 -1
  72. package/dist/src/adapters/tabnine/adapter.js +3 -0
  73. package/dist/src/adapters/tabnine/adapter.js.map +1 -1
  74. package/dist/src/adapters/trae/adapter.d.ts +1 -0
  75. package/dist/src/adapters/trae/adapter.d.ts.map +1 -1
  76. package/dist/src/adapters/trae/adapter.js +3 -0
  77. package/dist/src/adapters/trae/adapter.js.map +1 -1
  78. package/dist/src/adapters/windsurf/adapter.d.ts +1 -0
  79. package/dist/src/adapters/windsurf/adapter.d.ts.map +1 -1
  80. package/dist/src/adapters/windsurf/adapter.js +3 -0
  81. package/dist/src/adapters/windsurf/adapter.js.map +1 -1
  82. package/dist/src/adapters/zed/adapter.d.ts +1 -0
  83. package/dist/src/adapters/zed/adapter.d.ts.map +1 -1
  84. package/dist/src/adapters/zed/adapter.js +3 -0
  85. package/dist/src/adapters/zed/adapter.js.map +1 -1
  86. package/dist/src/cli/commands/complete.d.ts +10 -7
  87. package/dist/src/cli/commands/complete.d.ts.map +1 -1
  88. package/dist/src/cli/commands/complete.js +60 -14
  89. package/dist/src/cli/commands/complete.js.map +1 -1
  90. package/dist/src/cli/commands/evaluate-completion.d.ts.map +1 -1
  91. package/dist/src/cli/commands/evaluate-completion.js +8 -38
  92. package/dist/src/cli/commands/evaluate-completion.js.map +1 -1
  93. package/dist/src/cli/commands/refresh-plugins.d.ts +15 -0
  94. package/dist/src/cli/commands/refresh-plugins.d.ts.map +1 -1
  95. package/dist/src/cli/commands/refresh-plugins.js +135 -70
  96. package/dist/src/cli/commands/refresh-plugins.js.map +1 -1
  97. package/dist/src/cli/helpers/init/claude-settings-lsp.js +1 -1
  98. package/dist/src/cli/helpers/init/claude-settings-lsp.js.map +1 -1
  99. package/dist/src/core/increment/completion-validator.d.ts.map +1 -1
  100. package/dist/src/core/increment/completion-validator.js +2 -3
  101. package/dist/src/core/increment/completion-validator.js.map +1 -1
  102. package/dist/src/core/increment/increment-utils.d.ts +7 -7
  103. package/dist/src/core/increment/increment-utils.d.ts.map +1 -1
  104. package/dist/src/core/increment/increment-utils.js +19 -13
  105. package/dist/src/core/increment/increment-utils.js.map +1 -1
  106. package/dist/src/core/increment/status-change-sync-trigger.d.ts.map +1 -1
  107. package/dist/src/core/increment/status-change-sync-trigger.js +5 -2
  108. package/dist/src/core/increment/status-change-sync-trigger.js.map +1 -1
  109. package/dist/src/core/increment/status-commands.d.ts.map +1 -1
  110. package/dist/src/core/increment/status-commands.js +3 -4
  111. package/dist/src/core/increment/status-commands.js.map +1 -1
  112. package/dist/src/core/living-docs/living-docs-sync.d.ts +1 -0
  113. package/dist/src/core/living-docs/living-docs-sync.d.ts.map +1 -1
  114. package/dist/src/core/living-docs/living-docs-sync.js +13 -0
  115. package/dist/src/core/living-docs/living-docs-sync.js.map +1 -1
  116. package/dist/src/core/repo-structure/setup-summary.js +1 -1
  117. package/dist/src/core/repo-structure/setup-summary.js.map +1 -1
  118. package/dist/src/dashboard/server/dashboard-server.js +1 -1
  119. package/dist/src/dashboard/server/dashboard-server.js.map +1 -1
  120. package/dist/src/integrations/ado/ado-client.d.ts.map +1 -1
  121. package/dist/src/integrations/ado/ado-client.js +5 -1
  122. package/dist/src/integrations/ado/ado-client.js.map +1 -1
  123. package/dist/src/locales/de/cli.json +1 -1
  124. package/dist/src/locales/en/cli.json +1 -1
  125. package/dist/src/locales/es/cli.json +1 -1
  126. package/dist/src/locales/fr/cli.json +1 -1
  127. package/dist/src/locales/ja/cli.json +1 -1
  128. package/dist/src/locales/ko/cli.json +1 -1
  129. package/dist/src/locales/pt/cli.json +1 -1
  130. package/dist/src/locales/ru/cli.json +1 -1
  131. package/dist/src/locales/zh/cli.json +1 -1
  132. package/dist/src/sync/external-issue-auto-creator.d.ts.map +1 -1
  133. package/dist/src/sync/external-issue-auto-creator.js +6 -2
  134. package/dist/src/sync/external-issue-auto-creator.js.map +1 -1
  135. package/dist/src/sync/github-reconciler.d.ts.map +1 -1
  136. package/dist/src/sync/github-reconciler.js +5 -11
  137. package/dist/src/sync/github-reconciler.js.map +1 -1
  138. package/dist/src/utils/agents-md-compiler.js +7 -7
  139. package/dist/src/utils/plugin-copier.d.ts +2 -0
  140. package/dist/src/utils/plugin-copier.d.ts.map +1 -1
  141. package/dist/src/utils/plugin-copier.js +12 -7
  142. package/dist/src/utils/plugin-copier.js.map +1 -1
  143. package/dist/src/utils/resolve-increment-id.d.ts +24 -0
  144. package/dist/src/utils/resolve-increment-id.d.ts.map +1 -0
  145. package/dist/src/utils/resolve-increment-id.js +53 -0
  146. package/dist/src/utils/resolve-increment-id.js.map +1 -0
  147. package/package.json +1 -1
  148. package/plugins/specweave/.claude-plugin/plugin.json +3 -2
  149. package/plugins/specweave/commands/import-external.md +4 -4
  150. package/plugins/specweave/lib/integrations/ado/ado-spec-sync.js +35 -6
  151. package/plugins/specweave/lib/integrations/ado/ado-spec-sync.ts +45 -10
  152. package/plugins/specweave/lib/vendor/sync/github-reconciler.js +5 -11
  153. package/plugins/specweave/lib/vendor/sync/github-reconciler.js.map +1 -1
  154. package/plugins/specweave/skills/help/SKILL.md +150 -0
  155. package/plugins/specweave/skills/team-lead/SKILL.md +68 -4
  156. package/scripts/check-node-version.js +1 -1
  157. package/src/templates/AGENTS.md.template +48 -38
  158. package/src/templates/CLAUDE.md.template +2 -0
  159. package/src/templates/README.md.template +25 -23
  160. package/src/templates/lsp-plugin/plugin.json +1 -1
  161. package/src/templates/tasks.md.template +2 -2
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Resolve Increment ID Utility
3
+ *
4
+ * Resolves a potentially short increment ID (e.g., "0589") to the full
5
+ * directory name (e.g., "0589-cli-complete-improvements") by matching
6
+ * against .specweave/increments/ entries.
7
+ *
8
+ * Supports:
9
+ * - Exact match: "0589-cli-complete-improvements" → same
10
+ * - Prefix match: "0589" → "0589-cli-complete-improvements"
11
+ * - Ambiguous match: "0573" → ["0573-fix-a", "0573-fix-b"]
12
+ * - No match: "9999" → null
13
+ *
14
+ * @module utils/resolve-increment-id
15
+ */
16
+ import * as fs from 'fs';
17
+ import * as path from 'path';
18
+ /**
19
+ * Resolve a potentially short increment ID to the full directory name.
20
+ *
21
+ * @param incrementId - Short or full increment ID
22
+ * @param projectRoot - Project root directory containing .specweave/
23
+ * @returns Full increment directory name (string), array of matches (string[]) if ambiguous, or null if not found
24
+ */
25
+ export function resolveIncrementId(incrementId, projectRoot) {
26
+ const incrementsDir = path.join(projectRoot, '.specweave', 'increments');
27
+ if (!fs.existsSync(incrementsDir)) {
28
+ return null;
29
+ }
30
+ // Check for exact match first
31
+ const exactPath = path.join(incrementsDir, incrementId);
32
+ if (fs.existsSync(exactPath)) {
33
+ return incrementId;
34
+ }
35
+ // Try prefix match
36
+ let entries;
37
+ try {
38
+ entries = fs.readdirSync(incrementsDir);
39
+ }
40
+ catch {
41
+ return null;
42
+ }
43
+ const matches = entries.filter((e) => e.startsWith(incrementId));
44
+ if (matches.length === 0) {
45
+ return null;
46
+ }
47
+ if (matches.length === 1) {
48
+ return matches[0];
49
+ }
50
+ // Ambiguous — multiple matches
51
+ return matches.sort();
52
+ }
53
+ //# sourceMappingURL=resolve-increment-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-increment-id.js","sourceRoot":"","sources":["../../../src/utils/resolve-increment-id.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAmB,EACnB,WAAmB;IAEnB,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;IAEzE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8BAA8B;IAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;IACxD,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,mBAAmB;IACnB,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;IAEjE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,+BAA+B;IAC/B,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;AACxB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "specweave",
3
- "version": "1.0.521",
3
+ "version": "1.0.523",
4
4
  "description": "100+ domain-expert AI skills — PM, Architect, Frontend, QA, Security and more. Skills learn your team's patterns permanently. Spec-first planning, autonomous execution, multi-agent teams, synced to GitHub/JIRA. Claude Code, Cursor, Copilot & more.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -4,14 +4,15 @@
4
4
  "version": "1.0.0",
5
5
  "author": {
6
6
  "name": "SpecWeave Team",
7
- "url": "https://verified-skill.com"
7
+ "url": "https://spec-weave.com"
8
8
  },
9
- "homepage": "https://verified-skill.com",
9
+ "homepage": "https://spec-weave.com",
10
10
  "repository": "https://github.com/anton-abyzov/specweave",
11
11
  "license": "MIT",
12
12
  "keywords": [
13
13
  "specweave",
14
14
  "core",
15
+ "help",
15
16
  "increment-planning",
16
17
  "specifications",
17
18
  "tdd",
@@ -451,10 +451,10 @@ No tasks defined.
451
451
  ## See Also
452
452
 
453
453
  - `specweave init` - Initial project setup with external tool import
454
- - [External Import Guide](https://docs.verified-skill.com/guides/external-import)
455
- - [GitHub Integration](https://docs.verified-skill.com/integrations/github)
456
- - [JIRA Integration](https://docs.verified-skill.com/integrations/jira)
457
- - [Azure DevOps Integration](https://docs.verified-skill.com/integrations/ado)
454
+ - [External Import Guide](https://spec-weave.com/docs/guides/external-import)
455
+ - [GitHub Integration](https://spec-weave.com/docs/integrations/github)
456
+ - [JIRA Integration](https://spec-weave.com/docs/integrations/jira)
457
+ - [Azure DevOps Integration](https://spec-weave.com/docs/integrations/ado)
458
458
 
459
459
  ---
460
460
 
@@ -319,9 +319,10 @@ class AdoSpecSync {
319
319
  }
320
320
  console.log(` Syncing ${spec.metadata.userStories.length} user stories...`);
321
321
  for (const us of spec.metadata.userStories) {
322
- const storyTitle = `[${us.id}] ${us.title}`;
322
+ const specId = spec.metadata.id.toUpperCase();
323
+ const storyTitle = `[${specId}][${us.id}] ${us.title}`;
323
324
  const storyDescription = this.generateStoryDescription(us);
324
- const existingStory = await this.findStoryByTitle(us.id);
325
+ const existingStory = await this.findStoryByTitle(specId, us.id);
325
326
  let storyId;
326
327
  if (existingStory) {
327
328
  const resolvedStoryType = await this.resolveWorkItemType("User Story");
@@ -495,14 +496,14 @@ ${acList}
495
496
  /**
496
497
  * Find story by title pattern
497
498
  */
498
- async findStoryByTitle(usId) {
499
+ async findStoryByTitle(featureId, usId) {
499
500
  const resolvedType = await this.resolveWorkItemType("User Story");
500
501
  const wiql = `
501
502
  SELECT [System.Id], [System.Title], [System.Description], [System.State]
502
503
  FROM WorkItems
503
504
  WHERE [System.TeamProject] = '${this.config.project}'
504
505
  AND [System.WorkItemType] = '${resolvedType}'
505
- AND [System.Title] CONTAINS '[${usId}]'
506
+ AND [System.Title] CONTAINS '[${featureId}][${usId}]'
506
507
  `;
507
508
  const response = await this.client.post("/wit/wiql?api-version=7.0", {
508
509
  query: wiql
@@ -610,7 +611,36 @@ ${acList}
610
611
  });
611
612
  }
612
613
  if (updates.parentId) {
613
- try {
614
+ const detailResp = await this.client.get(`/wit/workitems/${storyId}?$expand=relations&api-version=7.0`);
615
+ const relations = detailResp.data.relations || [];
616
+ let existingParentId = null;
617
+ let existingParentIndex = -1;
618
+ for (let i = 0; i < relations.length; i++) {
619
+ if (relations[i].rel === "System.LinkTypes.Hierarchy-Reverse") {
620
+ const urlParts = relations[i].url.split("/");
621
+ existingParentId = parseInt(urlParts[urlParts.length - 1], 10);
622
+ existingParentIndex = i;
623
+ break;
624
+ }
625
+ }
626
+ if (existingParentId === updates.parentId) {
627
+ // Parent already correct — no-op
628
+ } else if (existingParentId !== null && existingParentId !== updates.parentId) {
629
+ await this.client.patch(`/wit/workitems/${storyId}?api-version=7.0`, [
630
+ { op: "remove", path: `/relations/${existingParentIndex}` },
631
+ {
632
+ op: "add",
633
+ path: "/relations/-",
634
+ value: {
635
+ rel: "System.LinkTypes.Hierarchy-Reverse",
636
+ url: `https://dev.azure.com/${this.config.organization}/${this.config.project}/_apis/wit/workitems/${updates.parentId}`,
637
+ attributes: { name: "Parent" }
638
+ }
639
+ }
640
+ ], {
641
+ headers: { "Content-Type": "application/json-patch+json" }
642
+ });
643
+ } else {
614
644
  await this.client.patch(`/wit/workitems/${storyId}?api-version=7.0`, [
615
645
  {
616
646
  op: "add",
@@ -624,7 +654,6 @@ ${acList}
624
654
  ], {
625
655
  headers: { "Content-Type": "application/json-patch+json" }
626
656
  });
627
- } catch {
628
657
  }
629
658
  }
630
659
  }
@@ -451,11 +451,12 @@ export class AdoSpecSync {
451
451
 
452
452
  for (const us of spec.metadata.userStories) {
453
453
  // Create or update ADO User Story for each user story
454
- const storyTitle = `[${us.id}] ${us.title}`;
454
+ const specId = spec.metadata.id.toUpperCase();
455
+ const storyTitle = `[${specId}][${us.id}] ${us.title}`;
455
456
  const storyDescription = this.generateStoryDescription(us);
456
457
 
457
- // Check if story already exists (by searching for US-ID in title)
458
- const existingStory = await this.findStoryByTitle(us.id);
458
+ // Check if story already exists (scoped to current feature by spec ID)
459
+ const existingStory = await this.findStoryByTitle(specId, us.id);
459
460
 
460
461
  let storyId: number;
461
462
  if (existingStory) {
@@ -671,16 +672,17 @@ ${acList}
671
672
  /**
672
673
  * Find story by title pattern
673
674
  */
674
- private async findStoryByTitle(usId: string): Promise<AdoUserStory | null> {
675
+ private async findStoryByTitle(featureId: string, usId: string): Promise<AdoUserStory | null> {
675
676
  // Use the resolved type ('Issue' for Basic process, 'User Story' for Agile) so the
676
677
  // WIQL query matches exactly what createStory() created — prevents duplicate creation.
678
+ // Scope to feature ID to avoid matching stories from other increments (US-IDs are reused).
677
679
  const resolvedType = await this.resolveWorkItemType('User Story');
678
680
  const wiql = `
679
681
  SELECT [System.Id], [System.Title], [System.Description], [System.State]
680
682
  FROM WorkItems
681
683
  WHERE [System.TeamProject] = '${this.config.project}'
682
684
  AND [System.WorkItemType] = '${resolvedType}'
683
- AND [System.Title] CONTAINS '[${usId}]'
685
+ AND [System.Title] CONTAINS '[${featureId}][${usId}]'
684
686
  `;
685
687
 
686
688
  const response = await this.client.post('/wit/wiql?api-version=7.0', {
@@ -813,10 +815,45 @@ ${acList}
813
815
  });
814
816
  }
815
817
 
816
- // Re-apply parent link separately ADO rejects adding a duplicate relation,
817
- // so we catch that error and continue (parent is already set, which is correct).
818
+ // Re-parent: fetch current relations, compare, and swap if different.
819
+ // Previous implementation silently caught 409 errors, which masked cases where
820
+ // the story was linked to the WRONG parent from a different increment.
818
821
  if (updates.parentId) {
819
- try {
822
+ const detailResp = await this.client.get(`/wit/workitems/${storyId}?$expand=relations&api-version=7.0`);
823
+ const relations: Array<{ rel: string; url: string }> = detailResp.data.relations || [];
824
+
825
+ // Find existing parent (Hierarchy-Reverse = child-to-parent link)
826
+ let existingParentId: number | null = null;
827
+ let existingParentIndex: number = -1;
828
+ for (let i = 0; i < relations.length; i++) {
829
+ if (relations[i].rel === 'System.LinkTypes.Hierarchy-Reverse') {
830
+ const urlParts = relations[i].url.split('/');
831
+ existingParentId = parseInt(urlParts[urlParts.length - 1], 10);
832
+ existingParentIndex = i;
833
+ break;
834
+ }
835
+ }
836
+
837
+ if (existingParentId === updates.parentId) {
838
+ // Parent already correct — no-op
839
+ } else if (existingParentId !== null && existingParentId !== updates.parentId) {
840
+ // Wrong parent — remove old and add new in a single PATCH (atomic)
841
+ await this.client.patch(`/wit/workitems/${storyId}?api-version=7.0`, [
842
+ { op: 'remove', path: `/relations/${existingParentIndex}` },
843
+ {
844
+ op: 'add',
845
+ path: '/relations/-',
846
+ value: {
847
+ rel: 'System.LinkTypes.Hierarchy-Reverse',
848
+ url: `https://dev.azure.com/${this.config.organization}/${this.config.project}/_apis/wit/workitems/${updates.parentId}`,
849
+ attributes: { name: 'Parent' }
850
+ }
851
+ }
852
+ ], {
853
+ headers: { 'Content-Type': 'application/json-patch+json' }
854
+ });
855
+ } else {
856
+ // No existing parent — add new link
820
857
  await this.client.patch(`/wit/workitems/${storyId}?api-version=7.0`, [
821
858
  {
822
859
  op: 'add',
@@ -830,8 +867,6 @@ ${acList}
830
867
  ], {
831
868
  headers: { 'Content-Type': 'application/json-patch+json' }
832
869
  });
833
- } catch {
834
- // Duplicate relation — parent already set, ignore
835
870
  }
836
871
  }
837
872
  }
@@ -600,18 +600,12 @@ This issue was closed because increment \`${incrementId}\` was abandoned.
600
600
  return result; // No metadata = nothing to close
601
601
  }
602
602
  let metadata = JSON.parse(await fs.readFile(metadataPath, 'utf-8'));
603
- // Auto-recovery: if no sync data at all, run full sync before closure
603
+ // If no GitHub sync data exists, there are no issues to close.
604
+ // The lifecycle hook (LifecycleHookDispatcher.onIncrementDone) handles
605
+ // the full sync and populates metadata before this point.
606
+ // We no longer trigger a redundant sync here to avoid exhausting API rate limits.
604
607
  if (!hasAnyGitHubSyncData(metadata)) {
605
- try {
606
- const { LivingDocsSync } = await import('../core/living-docs/living-docs-sync.js');
607
- const sync = new LivingDocsSync(projectRoot);
608
- await sync.syncIncrement(incrementId);
609
- // Re-read metadata after sync
610
- metadata = JSON.parse(await fs.readFile(metadataPath, 'utf-8'));
611
- }
612
- catch {
613
- // Non-critical: sync may fail if no living docs exist yet
614
- }
608
+ return result;
615
609
  }
616
610
  // Collect issues grouped by owner/repo for cross-repo closure
617
611
  // Map key: "owner/repo" → issue numbers
@@ -1 +1 @@
1
- {"version":3,"file":"github-reconciler.js","sourceRoot":"","sources":["../../../src/sync/github-reconciler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github-reconciler.js","sourceRoot":"","sources":["../../../src/sync/github-reconciler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,150 @@
1
+ ---
2
+ description: >
3
+ SpecWeave help and discovery. Shows available skills organized by workflow stage,
4
+ usage statistics, and contextual next actions. Use when saying "help", "what can I do",
5
+ "show commands", "what skills are available", "how do I use specweave",
6
+ "getting started", "what's available", "list skills", or "specweave help".
7
+ Do NOT activate for Claude Code's built-in /help command.
8
+ ---
9
+
10
+ # /sw:help — SpecWeave Discovery
11
+
12
+ You are showing the user what SpecWeave can do. Gather context first, then display organized help.
13
+
14
+ ## Step 1: Gather Context
15
+
16
+ Run these commands silently to understand the user's environment:
17
+
18
+ ```bash
19
+ # Check if SpecWeave is initialized
20
+ INITIALIZED=$([ -d ".specweave" ] && echo "yes" || echo "no")
21
+
22
+ # Get active increments (if initialized)
23
+ STATUS_JSON=$(specweave status --json 2>/dev/null || echo '{"increments":[]}')
24
+
25
+ # Get usage stats (if initialized)
26
+ ANALYTICS_JSON=$(specweave analytics --since 30d --json 2>/dev/null || echo '{}')
27
+ ```
28
+
29
+ If any command fails, skip that section gracefully — never show errors to the user.
30
+
31
+ ## Step 2: Display Help
32
+
33
+ ### If NOT initialized (no `.specweave/` directory)
34
+
35
+ Show getting started:
36
+
37
+ ```
38
+ SPECWEAVE — Spec-Driven Development Tool
39
+
40
+ Get started in 3 steps:
41
+
42
+ 1. npm install -g specweave
43
+ 2. cd your-project && specweave init .
44
+ 3. Describe what you want to build — SpecWeave handles the rest
45
+
46
+ Docs: https://spec-weave.com/docs/getting-started
47
+ ```
48
+
49
+ ### If initialized
50
+
51
+ Display the full help with these sections IN ORDER:
52
+
53
+ #### A. Stats Banner (if analytics data exists)
54
+
55
+ Parse the analytics JSON and show a one-line summary:
56
+
57
+ ```
58
+ SPECWEAVE — [N] increments completed | [M] tasks done | [K] skills used (last 30 days)
59
+ ```
60
+
61
+ If no analytics data, just show:
62
+
63
+ ```
64
+ SPECWEAVE — Spec-Driven Development Tool
65
+ ```
66
+
67
+ #### B. Active Increment Context (if any active increments)
68
+
69
+ Parse the status JSON. If active increments exist, show:
70
+
71
+ ```
72
+ Active now:
73
+ [ID] [title] — [progress]% ([completed]/[total] tasks)
74
+ Next: /sw:do [ID] (continue) | /sw:progress (status) | /sw:done [ID] (close)
75
+ ```
76
+
77
+ #### C. Skills by Workflow Stage
78
+
79
+ Always show this section. Use a table format:
80
+
81
+ ```
82
+ PLAN — Define what to build
83
+ /sw:increment Plan a new feature, bug fix, or change
84
+ /sw:pm Product Manager — write specs and requirements
85
+ /sw:architect System Architect — design architecture and ADRs
86
+ /sw:brainstorm Multi-perspective ideation with cognitive lenses
87
+ /sw:plan Generate plan.md and tasks.md for an increment
88
+
89
+ IMPLEMENT — Build it
90
+ /sw:do Execute tasks step by step
91
+ /sw:auto Autonomous execution (unattended)
92
+ /sw:team-lead Parallel multi-agent orchestration
93
+ /sw:tdd-cycle Test-driven development (red-green-refactor)
94
+ /sw:tdd-red Write failing tests first
95
+ /sw:tdd-green Make failing tests pass
96
+ /sw:tdd-refactor Refactor with test safety net
97
+
98
+ VERIFY — Check quality
99
+ /sw:validate 130+ rule-based checks + AI quality assessment
100
+ /sw:grill Critical code review before closure
101
+ /sw:judge-llm Independent AI validation (ultrathink)
102
+ /sw:code-reviewer 6 parallel specialized reviewers
103
+ /sw:e2e Playwright E2E tests traced to acceptance criteria
104
+ /sw:debug Systematic 4-phase debugging with escalation
105
+
106
+ CLOSE — Ship it
107
+ /sw:done Close increment with PM 3-gate validation
108
+ /sw:next Close current and suggest next work
109
+ /sw:pr Create pull request from increment branch
110
+
111
+ SYNC — Connect external tools
112
+ /sw:progress-sync Sync progress to GitHub/JIRA/ADO
113
+ /sw:sync-setup Configure GitHub, JIRA, or ADO integration
114
+ /sw:import Import issues from external tools
115
+
116
+ EXPLORE — Understand your project
117
+ /sw:docs Browse and search living docs
118
+ /sw:progress Show increment progress and task completion
119
+ /sw:analytics Usage statistics dashboard
120
+ /sw:doctor Installation health diagnostics
121
+ /sw:diagrams Generate Mermaid architecture diagrams
122
+
123
+ CREATE — Generate media
124
+ /sw:image AI image generation (Gemini, Pollinations)
125
+ /sw:video AI video generation (Veo 3.1, Pollinations)
126
+ /sw:diagrams Mermaid diagrams following C4 Model
127
+ /sw:remotion Programmatic video with React/Remotion
128
+
129
+ EXTEND — Customize SpecWeave
130
+ /sw:skill-gen Generate project-specific skills from patterns
131
+ /sw:get Clone and register repos into workspace
132
+ ```
133
+
134
+ #### D. Quick Reference
135
+
136
+ ```
137
+ Workflow: /sw:increment → /sw:do → /sw:done
138
+ Autonomous: /sw:increment → /sw:auto (runs unattended)
139
+ Team mode: /sw:increment → /sw:team-lead (parallel agents)
140
+
141
+ Docs: https://spec-weave.com
142
+ ```
143
+
144
+ ## Rules
145
+
146
+ 1. **Never say "framework"** — SpecWeave is a "spec-driven development tool"
147
+ 2. **Keep output scannable** — users skim, they don't read walls of text
148
+ 3. **Contextual first** — if there's an active increment, lead with that
149
+ 4. **Graceful degradation** — missing data = skip that section, never error
150
+ 5. **No verbose explanations** — one-liners per skill, that's it