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.
- package/.claude-plugin/README.md +1 -1
- package/CLAUDE.md +1 -1
- package/README.md +1 -1
- package/bin/specweave.js +7 -7
- package/dist/plugins/specweave/lib/integrations/ado/ado-spec-sync.d.ts.map +1 -1
- package/dist/plugins/specweave/lib/integrations/ado/ado-spec-sync.js +44 -10
- package/dist/plugins/specweave/lib/integrations/ado/ado-spec-sync.js.map +1 -1
- package/dist/plugins/specweave/lib/vendor/sync/github-reconciler.js +5 -11
- package/dist/plugins/specweave/lib/vendor/sync/github-reconciler.js.map +1 -1
- package/dist/src/adapters/adapter-base.d.ts +5 -0
- package/dist/src/adapters/adapter-base.d.ts.map +1 -1
- package/dist/src/adapters/adapter-base.js +7 -0
- package/dist/src/adapters/adapter-base.js.map +1 -1
- package/dist/src/adapters/adapter-interface.d.ts +9 -0
- package/dist/src/adapters/adapter-interface.d.ts.map +1 -1
- package/dist/src/adapters/aider/adapter.d.ts +1 -0
- package/dist/src/adapters/aider/adapter.d.ts.map +1 -1
- package/dist/src/adapters/aider/adapter.js +3 -0
- package/dist/src/adapters/aider/adapter.js.map +1 -1
- package/dist/src/adapters/amazonq/adapter.d.ts +1 -0
- package/dist/src/adapters/amazonq/adapter.d.ts.map +1 -1
- package/dist/src/adapters/amazonq/adapter.js +3 -0
- package/dist/src/adapters/amazonq/adapter.js.map +1 -1
- package/dist/src/adapters/antigravity/adapter.d.ts +1 -0
- package/dist/src/adapters/antigravity/adapter.d.ts.map +1 -1
- package/dist/src/adapters/antigravity/adapter.js +3 -0
- package/dist/src/adapters/antigravity/adapter.js.map +1 -1
- package/dist/src/adapters/cline/adapter.d.ts +1 -0
- package/dist/src/adapters/cline/adapter.d.ts.map +1 -1
- package/dist/src/adapters/cline/adapter.js +3 -0
- package/dist/src/adapters/cline/adapter.js.map +1 -1
- package/dist/src/adapters/codex/README.md +1 -1
- package/dist/src/adapters/codex/adapter.d.ts +1 -0
- package/dist/src/adapters/codex/adapter.d.ts.map +1 -1
- package/dist/src/adapters/codex/adapter.js +3 -0
- package/dist/src/adapters/codex/adapter.js.map +1 -1
- package/dist/src/adapters/continue/adapter.d.ts +1 -0
- package/dist/src/adapters/continue/adapter.d.ts.map +1 -1
- package/dist/src/adapters/continue/adapter.js +3 -0
- package/dist/src/adapters/continue/adapter.js.map +1 -1
- package/dist/src/adapters/copilot/adapter.d.ts +1 -0
- package/dist/src/adapters/copilot/adapter.d.ts.map +1 -1
- package/dist/src/adapters/copilot/adapter.js +3 -0
- package/dist/src/adapters/copilot/adapter.js.map +1 -1
- package/dist/src/adapters/cursor/adapter.d.ts +1 -0
- package/dist/src/adapters/cursor/adapter.d.ts.map +1 -1
- package/dist/src/adapters/cursor/adapter.js +3 -0
- package/dist/src/adapters/cursor/adapter.js.map +1 -1
- package/dist/src/adapters/gemini/README.md +1 -1
- package/dist/src/adapters/gemini/adapter.d.ts +1 -0
- package/dist/src/adapters/gemini/adapter.d.ts.map +1 -1
- package/dist/src/adapters/gemini/adapter.js +3 -0
- package/dist/src/adapters/gemini/adapter.js.map +1 -1
- package/dist/src/adapters/generic/adapter.d.ts +1 -0
- package/dist/src/adapters/generic/adapter.d.ts.map +1 -1
- package/dist/src/adapters/generic/adapter.js +3 -0
- package/dist/src/adapters/generic/adapter.js.map +1 -1
- package/dist/src/adapters/jetbrains/adapter.d.ts +1 -0
- package/dist/src/adapters/jetbrains/adapter.d.ts.map +1 -1
- package/dist/src/adapters/jetbrains/adapter.js +3 -0
- package/dist/src/adapters/jetbrains/adapter.js.map +1 -1
- package/dist/src/adapters/kimi/adapter.d.ts +1 -0
- package/dist/src/adapters/kimi/adapter.d.ts.map +1 -1
- package/dist/src/adapters/kimi/adapter.js +3 -0
- package/dist/src/adapters/kimi/adapter.js.map +1 -1
- package/dist/src/adapters/opencode/adapter.d.ts +1 -0
- package/dist/src/adapters/opencode/adapter.d.ts.map +1 -1
- package/dist/src/adapters/opencode/adapter.js +3 -0
- package/dist/src/adapters/opencode/adapter.js.map +1 -1
- package/dist/src/adapters/tabnine/adapter.d.ts +1 -0
- package/dist/src/adapters/tabnine/adapter.d.ts.map +1 -1
- package/dist/src/adapters/tabnine/adapter.js +3 -0
- package/dist/src/adapters/tabnine/adapter.js.map +1 -1
- package/dist/src/adapters/trae/adapter.d.ts +1 -0
- package/dist/src/adapters/trae/adapter.d.ts.map +1 -1
- package/dist/src/adapters/trae/adapter.js +3 -0
- package/dist/src/adapters/trae/adapter.js.map +1 -1
- package/dist/src/adapters/windsurf/adapter.d.ts +1 -0
- package/dist/src/adapters/windsurf/adapter.d.ts.map +1 -1
- package/dist/src/adapters/windsurf/adapter.js +3 -0
- package/dist/src/adapters/windsurf/adapter.js.map +1 -1
- package/dist/src/adapters/zed/adapter.d.ts +1 -0
- package/dist/src/adapters/zed/adapter.d.ts.map +1 -1
- package/dist/src/adapters/zed/adapter.js +3 -0
- package/dist/src/adapters/zed/adapter.js.map +1 -1
- package/dist/src/cli/commands/complete.d.ts +10 -7
- package/dist/src/cli/commands/complete.d.ts.map +1 -1
- package/dist/src/cli/commands/complete.js +60 -14
- package/dist/src/cli/commands/complete.js.map +1 -1
- package/dist/src/cli/commands/evaluate-completion.d.ts.map +1 -1
- package/dist/src/cli/commands/evaluate-completion.js +8 -38
- package/dist/src/cli/commands/evaluate-completion.js.map +1 -1
- package/dist/src/cli/commands/refresh-plugins.d.ts +15 -0
- package/dist/src/cli/commands/refresh-plugins.d.ts.map +1 -1
- package/dist/src/cli/commands/refresh-plugins.js +135 -70
- package/dist/src/cli/commands/refresh-plugins.js.map +1 -1
- package/dist/src/cli/helpers/init/claude-settings-lsp.js +1 -1
- package/dist/src/cli/helpers/init/claude-settings-lsp.js.map +1 -1
- package/dist/src/core/increment/completion-validator.d.ts.map +1 -1
- package/dist/src/core/increment/completion-validator.js +2 -3
- package/dist/src/core/increment/completion-validator.js.map +1 -1
- package/dist/src/core/increment/increment-utils.d.ts +7 -7
- package/dist/src/core/increment/increment-utils.d.ts.map +1 -1
- package/dist/src/core/increment/increment-utils.js +19 -13
- package/dist/src/core/increment/increment-utils.js.map +1 -1
- package/dist/src/core/increment/status-change-sync-trigger.d.ts.map +1 -1
- package/dist/src/core/increment/status-change-sync-trigger.js +5 -2
- package/dist/src/core/increment/status-change-sync-trigger.js.map +1 -1
- package/dist/src/core/increment/status-commands.d.ts.map +1 -1
- package/dist/src/core/increment/status-commands.js +3 -4
- package/dist/src/core/increment/status-commands.js.map +1 -1
- package/dist/src/core/living-docs/living-docs-sync.d.ts +1 -0
- package/dist/src/core/living-docs/living-docs-sync.d.ts.map +1 -1
- package/dist/src/core/living-docs/living-docs-sync.js +13 -0
- package/dist/src/core/living-docs/living-docs-sync.js.map +1 -1
- package/dist/src/core/repo-structure/setup-summary.js +1 -1
- package/dist/src/core/repo-structure/setup-summary.js.map +1 -1
- package/dist/src/dashboard/server/dashboard-server.js +1 -1
- package/dist/src/dashboard/server/dashboard-server.js.map +1 -1
- package/dist/src/integrations/ado/ado-client.d.ts.map +1 -1
- package/dist/src/integrations/ado/ado-client.js +5 -1
- package/dist/src/integrations/ado/ado-client.js.map +1 -1
- package/dist/src/locales/de/cli.json +1 -1
- package/dist/src/locales/en/cli.json +1 -1
- package/dist/src/locales/es/cli.json +1 -1
- package/dist/src/locales/fr/cli.json +1 -1
- package/dist/src/locales/ja/cli.json +1 -1
- package/dist/src/locales/ko/cli.json +1 -1
- package/dist/src/locales/pt/cli.json +1 -1
- package/dist/src/locales/ru/cli.json +1 -1
- package/dist/src/locales/zh/cli.json +1 -1
- package/dist/src/sync/external-issue-auto-creator.d.ts.map +1 -1
- package/dist/src/sync/external-issue-auto-creator.js +6 -2
- package/dist/src/sync/external-issue-auto-creator.js.map +1 -1
- package/dist/src/sync/github-reconciler.d.ts.map +1 -1
- package/dist/src/sync/github-reconciler.js +5 -11
- package/dist/src/sync/github-reconciler.js.map +1 -1
- package/dist/src/utils/agents-md-compiler.js +7 -7
- package/dist/src/utils/plugin-copier.d.ts +2 -0
- package/dist/src/utils/plugin-copier.d.ts.map +1 -1
- package/dist/src/utils/plugin-copier.js +12 -7
- package/dist/src/utils/plugin-copier.js.map +1 -1
- package/dist/src/utils/resolve-increment-id.d.ts +24 -0
- package/dist/src/utils/resolve-increment-id.d.ts.map +1 -0
- package/dist/src/utils/resolve-increment-id.js +53 -0
- package/dist/src/utils/resolve-increment-id.js.map +1 -0
- package/package.json +1 -1
- package/plugins/specweave/.claude-plugin/plugin.json +3 -2
- package/plugins/specweave/commands/import-external.md +4 -4
- package/plugins/specweave/lib/integrations/ado/ado-spec-sync.js +35 -6
- package/plugins/specweave/lib/integrations/ado/ado-spec-sync.ts +45 -10
- package/plugins/specweave/lib/vendor/sync/github-reconciler.js +5 -11
- package/plugins/specweave/lib/vendor/sync/github-reconciler.js.map +1 -1
- package/plugins/specweave/skills/help/SKILL.md +150 -0
- package/plugins/specweave/skills/team-lead/SKILL.md +68 -4
- package/scripts/check-node-version.js +1 -1
- package/src/templates/AGENTS.md.template +48 -38
- package/src/templates/CLAUDE.md.template +2 -0
- package/src/templates/README.md.template +25 -23
- package/src/templates/lsp-plugin/plugin.json +1 -1
- 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.
|
|
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://
|
|
7
|
+
"url": "https://spec-weave.com"
|
|
8
8
|
},
|
|
9
|
-
"homepage": "https://
|
|
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://
|
|
455
|
-
- [GitHub Integration](https://
|
|
456
|
-
- [JIRA Integration](https://
|
|
457
|
-
- [Azure DevOps Integration](https://
|
|
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
|
|
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
|
-
|
|
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
|
|
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 (
|
|
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-
|
|
817
|
-
//
|
|
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
|
-
|
|
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
|
-
//
|
|
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
|
-
|
|
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
|