specweave 1.0.509 ā 1.0.511
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/bin/specweave.js +1 -2
- package/dist/src/adapters/continue/adapter.js +1 -1
- package/dist/src/adapters/continue/adapter.js.map +1 -1
- package/dist/src/cli/commands/init.js +12 -12
- package/dist/src/cli/commands/init.js.map +1 -1
- package/dist/src/core/skill-gen/rule-collector.d.ts.map +1 -1
- package/dist/src/core/skill-gen/rule-collector.js +1 -0
- package/dist/src/core/skill-gen/rule-collector.js.map +1 -1
- package/package.json +1 -1
- package/plugins/specweave/lib/integrations/jira/jira-spec-sync.js +90 -100
- package/plugins/specweave/lib/integrations/jira/jira-status-sync.js +2 -54
- package/src/templates/AGENTS.md.template +11 -11
- package/src/templates/CLAUDE.md.template +1 -1
package/bin/specweave.js
CHANGED
|
@@ -1387,9 +1387,8 @@ program.on('--help', () => {
|
|
|
1387
1387
|
console.log('');
|
|
1388
1388
|
console.log('Plugin Management (use Claude CLI commands):');
|
|
1389
1389
|
console.log(' $ claude plugin install sw@specweave # Install core SpecWeave');
|
|
1390
|
-
console.log(' $ claude plugin install frontend@vskill # Install frontend plugin');
|
|
1391
1390
|
console.log(' $ claude plugin list # Show installed plugins');
|
|
1392
|
-
console.log(' $
|
|
1391
|
+
console.log(' $ vskill install anton-abyzov/vskill --plugin mobile # Install domain plugin');
|
|
1393
1392
|
console.log('');
|
|
1394
1393
|
console.log('Supported AI Tools:');
|
|
1395
1394
|
console.log(' - Claude Code (full automation) - Native skills, agents, hooks');
|
|
@@ -34,7 +34,7 @@ export class ContinueAdapter extends AdapterBase {
|
|
|
34
34
|
*/
|
|
35
35
|
async install(options) {
|
|
36
36
|
console.log('\nš¦ Installing Continue.dev Adapter\n');
|
|
37
|
-
const skillsDir = path.join(options.projectPath, '.continue', '
|
|
37
|
+
const skillsDir = path.join(options.projectPath, '.continue', 'skills');
|
|
38
38
|
await fs.ensureDir(skillsDir);
|
|
39
39
|
console.log('\n⨠Continue.dev adapter installed!');
|
|
40
40
|
console.log(' Run `specweave refresh-plugins` to install skills.');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/adapters/continue/adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIjD,MAAM,OAAO,eAAgB,SAAQ,WAAW;IAAhD;;QACE,SAAI,GAAG,UAAU,CAAC;QAClB,gBAAW,GAAG,yEAAyE,CAAC;QACxF,oBAAe,GAAG,MAAe,CAAC;IA+FpC,CAAC;IA7FC;;;;;OAKG;IACH,KAAK,CAAC,MAAM;QACV,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,OAAuB;QACnC,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/adapters/continue/adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIjD,MAAM,OAAO,eAAgB,SAAQ,WAAW;IAAhD;;QACE,SAAI,GAAG,UAAU,CAAC;QAClB,gBAAW,GAAG,yEAAyE,CAAC;QACxF,oBAAe,GAAG,MAAe,CAAC;IA+FpC,CAAC;IA7FC;;;;;OAKG;IACH,KAAK,CAAC,MAAM;QACV,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,OAAuB;QACnC,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QACxE,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,aAAa,CAAC,MAAc;QAChC,MAAM,SAAS,GAAG,kBAAkB,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,mDAAmD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACvF,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,QAAQ,MAAM,CAAC,MAAM,CAAC,MAAM,wBAAwB,SAAS,GAAG,CAAC,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,QAAQ,CAAC,IAAI,8BAA8B,CAAC,CAAC;IAChF,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,YAAY,CAAC,UAAkB;QACnC,OAAO,CAAC,GAAG,CAAC,8CAA8C,UAAU,EAAE,CAAC,CAAC;QACxE,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,cAAc,UAAU,YAAY,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB;QACvB,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,OAAuB;QACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO;;;;;;;;KAQN,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -574,20 +574,20 @@ async function copyMarketplaceSkills(targetDir, toolName) {
|
|
|
574
574
|
// MUST match each adapter's compilePlugin() target directory
|
|
575
575
|
const skillsDirMap = {
|
|
576
576
|
antigravity: '.agent/skills',
|
|
577
|
-
codex: '.codex/
|
|
577
|
+
codex: '.codex/skills',
|
|
578
578
|
opencode: '.opencode/skills',
|
|
579
|
-
copilot: '.github/
|
|
580
|
-
cursor: '.cursor/
|
|
581
|
-
windsurf: '.windsurf/
|
|
582
|
-
cline: '.cline/
|
|
579
|
+
copilot: '.github/copilot/skills',
|
|
580
|
+
cursor: '.cursor/skills',
|
|
581
|
+
windsurf: '.windsurf/skills',
|
|
582
|
+
cline: '.cline/skills',
|
|
583
583
|
gemini: '.gemini',
|
|
584
|
-
amazonq: '.amazonq/
|
|
585
|
-
jetbrains: '.
|
|
586
|
-
continue: '.continue/
|
|
587
|
-
aider: '.aider',
|
|
588
|
-
trae: '.trae/
|
|
589
|
-
zed: '.
|
|
590
|
-
tabnine: '.tabnine/
|
|
584
|
+
amazonq: '.amazonq/skills',
|
|
585
|
+
jetbrains: '.junie/skills',
|
|
586
|
+
continue: '.continue/skills',
|
|
587
|
+
aider: '.aider/skills',
|
|
588
|
+
trae: '.trae/skills',
|
|
589
|
+
zed: '.zed/skills',
|
|
590
|
+
tabnine: '.tabnine/skills',
|
|
591
591
|
kimi: '.kimi/skills',
|
|
592
592
|
generic: '.agents/skills',
|
|
593
593
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rule-collector.d.ts","sourceRoot":"","sources":["../../../../src/core/skill-gen/rule-collector.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,eAAO,MAAM,gBAAgB,QAAS,CAAC;AACvC,eAAO,MAAM,mBAAmB,OAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"rule-collector.d.ts","sourceRoot":"","sources":["../../../../src/core/skill-gen/rule-collector.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,eAAO,MAAM,gBAAgB,QAAS,CAAC;AACvC,eAAO,MAAM,mBAAmB,OAAQ,CAAC;AAczC,qBAAa,aAAa;IACxB,OAAO,CAAC,WAAW,CAAS;gBAEhB,WAAW,EAAE,MAAM;IAI/B;;;OAGG;IACG,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC;IA0C7C;;;OAGG;YACW,YAAY;YAkBZ,YAAY;IAS1B,OAAO,CAAC,gBAAgB;CAMzB"}
|
|
@@ -20,6 +20,7 @@ const RULE_FILE_PATHS = [
|
|
|
20
20
|
const RULE_DIRS = [
|
|
21
21
|
{ dir: '.claude/skills', extensions: ['.md'] },
|
|
22
22
|
{ dir: '.cursor/rules', extensions: ['.mdc'] },
|
|
23
|
+
{ dir: '.cursor/skills', extensions: ['.mdc'] },
|
|
23
24
|
];
|
|
24
25
|
export class RuleCollector {
|
|
25
26
|
constructor(projectRoot) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rule-collector.js","sourceRoot":"","sources":["../../../../src/core/skill-gen/rule-collector.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAM,CAAC;AACvC,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAK,CAAC;AAEzC,MAAM,eAAe,GAAG;IACtB,WAAW;IACX,cAAc;IACd,iCAAiC;CAClC,CAAC;AAEF,MAAM,SAAS,GAAyD;IACtE,EAAE,GAAG,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE;IAC9C,EAAE,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"rule-collector.js","sourceRoot":"","sources":["../../../../src/core/skill-gen/rule-collector.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "specweave",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.511",
|
|
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",
|
|
@@ -9,6 +9,8 @@ import { toDescription } from "./content-format-adapter.js";
|
|
|
9
9
|
import { getEpicLinkFieldForProject } from "./jira-field-discovery.js";
|
|
10
10
|
import { searchAllIssues } from "./jira-paginated-search.js";
|
|
11
11
|
import axios from "axios";
|
|
12
|
+
import { CircuitBreakerRegistry } from "../../../../../src/core/sync/circuit-breaker-registry.js";
|
|
13
|
+
import { SyncRetryQueue } from "../../../../../src/core/sync/sync-retry-queue.js";
|
|
12
14
|
import { SyncError } from "../../../../../src/core/errors/sync-error.js";
|
|
13
15
|
import { LockManager } from "../../../../../src/utils/lock-manager.js";
|
|
14
16
|
function buildStoryDescription(us) {
|
|
@@ -53,9 +55,6 @@ class JiraSpecSync {
|
|
|
53
55
|
}
|
|
54
56
|
});
|
|
55
57
|
}
|
|
56
|
-
/**
|
|
57
|
-
* Execute fn under file lock (if lockManager configured).
|
|
58
|
-
*/
|
|
59
58
|
async withLock(fn) {
|
|
60
59
|
if (!this.lockManager) return fn();
|
|
61
60
|
const acquired = await this.lockManager.acquire();
|
|
@@ -68,9 +67,6 @@ class JiraSpecSync {
|
|
|
68
67
|
await this.lockManager.release();
|
|
69
68
|
}
|
|
70
69
|
}
|
|
71
|
-
/**
|
|
72
|
-
* Check circuit breaker before making API calls.
|
|
73
|
-
*/
|
|
74
70
|
checkCircuitBreaker() {
|
|
75
71
|
if (!this.circuitBreakerRegistry) return;
|
|
76
72
|
const breaker = this.circuitBreakerRegistry.get("jira");
|
|
@@ -78,16 +74,10 @@ class JiraSpecSync {
|
|
|
78
74
|
throw new SyncError("jira", 0, "", "Circuit breaker open for jira");
|
|
79
75
|
}
|
|
80
76
|
}
|
|
81
|
-
/**
|
|
82
|
-
* Record success on circuit breaker.
|
|
83
|
-
*/
|
|
84
77
|
recordApiSuccess() {
|
|
85
78
|
if (!this.circuitBreakerRegistry) return;
|
|
86
79
|
this.circuitBreakerRegistry.get("jira").recordSuccess();
|
|
87
80
|
}
|
|
88
|
-
/**
|
|
89
|
-
* Record failure on circuit breaker and optionally enqueue retry.
|
|
90
|
-
*/
|
|
91
81
|
async recordApiFailure(error, operation) {
|
|
92
82
|
const httpStatus = error?.response?.status ?? 0;
|
|
93
83
|
if (this.circuitBreakerRegistry) {
|
|
@@ -121,56 +111,56 @@ class JiraSpecSync {
|
|
|
121
111
|
console.log(`
|
|
122
112
|
\u{1F504} Syncing spec ${specId} to Jira Epic...`);
|
|
123
113
|
return this.withLock(async () => {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
return {
|
|
129
|
-
success: false,
|
|
130
|
-
specId,
|
|
131
|
-
provider: "jira",
|
|
132
|
-
error: `Spec ${specId} not found`
|
|
133
|
-
};
|
|
134
|
-
}
|
|
135
|
-
const existingLink = spec.metadata.externalLinks?.jira;
|
|
136
|
-
let epic;
|
|
137
|
-
if (existingLink?.epicKey) {
|
|
138
|
-
console.log(` Found existing Jira Epic ${existingLink.epicKey}`);
|
|
139
|
-
epic = await this.updateJiraEpic(existingLink.epicKey, spec);
|
|
140
|
-
} else {
|
|
141
|
-
console.log(" Creating new Jira Epic...");
|
|
142
|
-
epic = await this.createJiraEpic(spec);
|
|
143
|
-
await this.specManager.linkToExternal(specId, "jira", {
|
|
144
|
-
id: epic.key,
|
|
145
|
-
url: epic.url,
|
|
146
|
-
projectKey: this.config.projectKey,
|
|
147
|
-
domain: this.config.domain
|
|
148
|
-
});
|
|
149
|
-
}
|
|
150
|
-
const changes = await this.syncUserStories(epic.key, spec);
|
|
151
|
-
this.recordApiSuccess();
|
|
152
|
-
console.log("\u2705 Sync complete!");
|
|
153
|
-
return {
|
|
154
|
-
success: true,
|
|
155
|
-
specId,
|
|
156
|
-
provider: "jira",
|
|
157
|
-
externalId: epic.key,
|
|
158
|
-
url: epic.url,
|
|
159
|
-
changes
|
|
160
|
-
};
|
|
161
|
-
} catch (error) {
|
|
162
|
-
await this.recordApiFailure(error, "syncSpecToJira");
|
|
163
|
-
const axiosData = error?.response?.data;
|
|
164
|
-
const detail = axiosData ? JSON.stringify(axiosData) : "";
|
|
165
|
-
console.error("\u274C Error syncing to Jira:", error?.message || error, detail ? `
|
|
166
|
-
Response: ${detail}` : "");
|
|
114
|
+
this.checkCircuitBreaker();
|
|
115
|
+
try {
|
|
116
|
+
const spec = await this.specManager.loadSpec(specId);
|
|
117
|
+
if (!spec) {
|
|
167
118
|
return {
|
|
168
119
|
success: false,
|
|
169
120
|
specId,
|
|
170
121
|
provider: "jira",
|
|
171
|
-
error:
|
|
122
|
+
error: `Spec ${specId} not found`
|
|
172
123
|
};
|
|
173
124
|
}
|
|
125
|
+
const existingLink = spec.metadata.externalLinks?.jira;
|
|
126
|
+
let epic;
|
|
127
|
+
if (existingLink?.epicKey) {
|
|
128
|
+
console.log(` Found existing Jira Epic ${existingLink.epicKey}`);
|
|
129
|
+
epic = await this.updateJiraEpic(existingLink.epicKey, spec);
|
|
130
|
+
} else {
|
|
131
|
+
console.log(" Creating new Jira Epic...");
|
|
132
|
+
epic = await this.createJiraEpic(spec);
|
|
133
|
+
await this.specManager.linkToExternal(specId, "jira", {
|
|
134
|
+
id: epic.key,
|
|
135
|
+
url: epic.url,
|
|
136
|
+
projectKey: this.config.projectKey,
|
|
137
|
+
domain: this.config.domain
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
const changes = await this.syncUserStories(epic.key, spec);
|
|
141
|
+
this.recordApiSuccess();
|
|
142
|
+
console.log("\u2705 Sync complete!");
|
|
143
|
+
return {
|
|
144
|
+
success: true,
|
|
145
|
+
specId,
|
|
146
|
+
provider: "jira",
|
|
147
|
+
externalId: epic.key,
|
|
148
|
+
url: epic.url,
|
|
149
|
+
changes
|
|
150
|
+
};
|
|
151
|
+
} catch (error) {
|
|
152
|
+
await this.recordApiFailure(error, "syncSpecToJira");
|
|
153
|
+
const axiosData = error?.response?.data;
|
|
154
|
+
const detail = axiosData ? JSON.stringify(axiosData) : "";
|
|
155
|
+
console.error("\u274C Error syncing to Jira:", error?.message || error, detail ? `
|
|
156
|
+
Response: ${detail}` : "");
|
|
157
|
+
return {
|
|
158
|
+
success: false,
|
|
159
|
+
specId,
|
|
160
|
+
provider: "jira",
|
|
161
|
+
error: error instanceof Error ? error.message : "Unknown error"
|
|
162
|
+
};
|
|
163
|
+
}
|
|
174
164
|
});
|
|
175
165
|
}
|
|
176
166
|
/**
|
|
@@ -180,60 +170,60 @@ class JiraSpecSync {
|
|
|
180
170
|
console.log(`
|
|
181
171
|
\u{1F504} Syncing FROM Jira to spec ${specId}...`);
|
|
182
172
|
return this.withLock(async () => {
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
return {
|
|
188
|
-
success: false,
|
|
189
|
-
specId,
|
|
190
|
-
provider: "jira",
|
|
191
|
-
error: `Spec ${specId} not found`
|
|
192
|
-
};
|
|
193
|
-
}
|
|
194
|
-
const jiraLink = spec.metadata.externalLinks?.jira;
|
|
195
|
-
if (!jiraLink?.epicKey) {
|
|
196
|
-
return {
|
|
197
|
-
success: false,
|
|
198
|
-
specId,
|
|
199
|
-
provider: "jira",
|
|
200
|
-
error: "Spec not linked to Jira Epic"
|
|
201
|
-
};
|
|
202
|
-
}
|
|
203
|
-
const epic = await this.fetchJiraEpic(jiraLink.epicKey);
|
|
204
|
-
const conflicts = await this.detectConflicts(spec, epic);
|
|
205
|
-
if (conflicts.length === 0) {
|
|
206
|
-
console.log("\u2705 No conflicts - spec and Jira in sync");
|
|
207
|
-
return {
|
|
208
|
-
success: true,
|
|
209
|
-
specId,
|
|
210
|
-
provider: "jira",
|
|
211
|
-
externalId: epic.key,
|
|
212
|
-
url: epic.url
|
|
213
|
-
};
|
|
214
|
-
}
|
|
215
|
-
console.log(`\u26A0\uFE0F Detected ${conflicts.length} conflict(s)`);
|
|
216
|
-
await this.writeConflictReport(specId, conflicts);
|
|
217
|
-
await this.resolveConflicts(spec, conflicts);
|
|
218
|
-
console.log("\u2705 Sync FROM Jira complete!");
|
|
173
|
+
this.checkCircuitBreaker();
|
|
174
|
+
try {
|
|
175
|
+
const spec = await this.specManager.loadSpec(specId);
|
|
176
|
+
if (!spec) {
|
|
219
177
|
return {
|
|
220
|
-
success:
|
|
178
|
+
success: false,
|
|
221
179
|
specId,
|
|
222
180
|
provider: "jira",
|
|
223
|
-
|
|
224
|
-
url: epic.url,
|
|
225
|
-
conflicts
|
|
181
|
+
error: `Spec ${specId} not found`
|
|
226
182
|
};
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
|
|
183
|
+
}
|
|
184
|
+
const jiraLink = spec.metadata.externalLinks?.jira;
|
|
185
|
+
if (!jiraLink?.epicKey) {
|
|
230
186
|
return {
|
|
231
187
|
success: false,
|
|
232
188
|
specId,
|
|
233
189
|
provider: "jira",
|
|
234
|
-
error:
|
|
190
|
+
error: "Spec not linked to Jira Epic"
|
|
235
191
|
};
|
|
236
192
|
}
|
|
193
|
+
const epic = await this.fetchJiraEpic(jiraLink.epicKey);
|
|
194
|
+
const conflicts = await this.detectConflicts(spec, epic);
|
|
195
|
+
if (conflicts.length === 0) {
|
|
196
|
+
console.log("\u2705 No conflicts - spec and Jira in sync");
|
|
197
|
+
return {
|
|
198
|
+
success: true,
|
|
199
|
+
specId,
|
|
200
|
+
provider: "jira",
|
|
201
|
+
externalId: epic.key,
|
|
202
|
+
url: epic.url
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
console.log(`\u26A0\uFE0F Detected ${conflicts.length} conflict(s)`);
|
|
206
|
+
await this.writeConflictReport(specId, conflicts);
|
|
207
|
+
await this.resolveConflicts(spec, conflicts);
|
|
208
|
+
console.log("\u2705 Sync FROM Jira complete!");
|
|
209
|
+
return {
|
|
210
|
+
success: true,
|
|
211
|
+
specId,
|
|
212
|
+
provider: "jira",
|
|
213
|
+
externalId: epic.key,
|
|
214
|
+
url: epic.url,
|
|
215
|
+
conflicts
|
|
216
|
+
};
|
|
217
|
+
} catch (error) {
|
|
218
|
+
await this.recordApiFailure(error, "syncFromJira");
|
|
219
|
+
console.error("\u274C Error syncing FROM Jira:", error);
|
|
220
|
+
return {
|
|
221
|
+
success: false,
|
|
222
|
+
specId,
|
|
223
|
+
provider: "jira",
|
|
224
|
+
error: error instanceof Error ? error.message : "Unknown error"
|
|
225
|
+
};
|
|
226
|
+
}
|
|
237
227
|
});
|
|
238
228
|
}
|
|
239
229
|
/**
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import axios from "axios";
|
|
2
2
|
import { detectDeploymentType, getApiBaseUrl } from "./jira-deployment-detector.js";
|
|
3
3
|
import { toCommentBody } from "./content-format-adapter.js";
|
|
4
|
+
import { CircuitBreakerRegistry } from "../../../../../src/core/sync/circuit-breaker-registry.js";
|
|
5
|
+
import { SyncRetryQueue } from "../../../../../src/core/sync/sync-retry-queue.js";
|
|
4
6
|
import { SyncError } from "../../../../../src/core/errors/sync-error.js";
|
|
5
7
|
import { LockManager } from "../../../../../src/utils/lock-manager.js";
|
|
6
8
|
class JiraStatusSync {
|
|
@@ -28,9 +30,6 @@ class JiraStatusSync {
|
|
|
28
30
|
}
|
|
29
31
|
});
|
|
30
32
|
}
|
|
31
|
-
/**
|
|
32
|
-
* Execute fn under file lock (if lockManager configured).
|
|
33
|
-
*/
|
|
34
33
|
async withLock(fn) {
|
|
35
34
|
if (!this.lockManager) return fn();
|
|
36
35
|
const acquired = await this.lockManager.acquire();
|
|
@@ -43,10 +42,6 @@ class JiraStatusSync {
|
|
|
43
42
|
await this.lockManager.release();
|
|
44
43
|
}
|
|
45
44
|
}
|
|
46
|
-
/**
|
|
47
|
-
* Check circuit breaker before making API calls.
|
|
48
|
-
* Throws if breaker is open.
|
|
49
|
-
*/
|
|
50
45
|
checkCircuitBreaker() {
|
|
51
46
|
if (!this.circuitBreakerRegistry) return;
|
|
52
47
|
const breaker = this.circuitBreakerRegistry.get("jira");
|
|
@@ -54,16 +49,10 @@ class JiraStatusSync {
|
|
|
54
49
|
throw new SyncError("jira", 0, "", "Circuit breaker open for jira");
|
|
55
50
|
}
|
|
56
51
|
}
|
|
57
|
-
/**
|
|
58
|
-
* Record success on circuit breaker.
|
|
59
|
-
*/
|
|
60
52
|
recordSuccess() {
|
|
61
53
|
if (!this.circuitBreakerRegistry) return;
|
|
62
54
|
this.circuitBreakerRegistry.get("jira").recordSuccess();
|
|
63
55
|
}
|
|
64
|
-
/**
|
|
65
|
-
* Handle API error: record failure on circuit breaker, enqueue retry, throw SyncError.
|
|
66
|
-
*/
|
|
67
56
|
async handleApiError(error, operation) {
|
|
68
57
|
const httpStatus = error?.response?.status ?? 0;
|
|
69
58
|
const responseBody = JSON.stringify(error?.response?.data ?? "");
|
|
@@ -83,9 +72,6 @@ class JiraStatusSync {
|
|
|
83
72
|
}
|
|
84
73
|
throw new SyncError("jira", httpStatus, responseBody, detail);
|
|
85
74
|
}
|
|
86
|
-
/**
|
|
87
|
-
* Initialize: detect deployment type and update client baseURL
|
|
88
|
-
*/
|
|
89
75
|
async init() {
|
|
90
76
|
const deployment = await detectDeploymentType(this.domain, {
|
|
91
77
|
email: this.client.defaults.auth?.username || "",
|
|
@@ -93,12 +79,6 @@ class JiraStatusSync {
|
|
|
93
79
|
});
|
|
94
80
|
this.client.defaults.baseURL = deployment.baseUrl;
|
|
95
81
|
}
|
|
96
|
-
/**
|
|
97
|
-
* Get current status from JIRA issue
|
|
98
|
-
*
|
|
99
|
-
* @param issueKey - JIRA issue key (e.g., PROJ-123)
|
|
100
|
-
* @returns Current issue status
|
|
101
|
-
*/
|
|
102
82
|
async getStatus(issueKey) {
|
|
103
83
|
return this.withLock(async () => {
|
|
104
84
|
this.checkCircuitBreaker();
|
|
@@ -113,19 +93,6 @@ class JiraStatusSync {
|
|
|
113
93
|
}
|
|
114
94
|
});
|
|
115
95
|
}
|
|
116
|
-
/**
|
|
117
|
-
* Update JIRA issue status via transitions
|
|
118
|
-
*
|
|
119
|
-
* JIRA requires using transitions to change status.
|
|
120
|
-
* Cannot directly set status field.
|
|
121
|
-
*
|
|
122
|
-
* Handles missing transitions gracefully by logging a warning
|
|
123
|
-
* instead of throwing an error.
|
|
124
|
-
*
|
|
125
|
-
* @param issueKey - JIRA issue key (e.g., PROJ-123)
|
|
126
|
-
* @param status - Desired status
|
|
127
|
-
* @returns true if transition succeeded, false if not available
|
|
128
|
-
*/
|
|
129
96
|
async updateStatus(issueKey, status) {
|
|
130
97
|
return this.withLock(async () => {
|
|
131
98
|
this.checkCircuitBreaker();
|
|
@@ -153,13 +120,6 @@ class JiraStatusSync {
|
|
|
153
120
|
}
|
|
154
121
|
});
|
|
155
122
|
}
|
|
156
|
-
/**
|
|
157
|
-
* Post comment about status change to JIRA issue
|
|
158
|
-
*
|
|
159
|
-
* @param issueKey - JIRA issue key (e.g., PROJ-123)
|
|
160
|
-
* @param oldStatus - Previous SpecWeave status
|
|
161
|
-
* @param newStatus - New SpecWeave status
|
|
162
|
-
*/
|
|
163
123
|
async postStatusComment(issueKey, oldStatus, newStatus) {
|
|
164
124
|
return this.withLock(async () => {
|
|
165
125
|
this.checkCircuitBreaker();
|
|
@@ -182,18 +142,6 @@ _Synced from SpecWeave_`;
|
|
|
182
142
|
}
|
|
183
143
|
});
|
|
184
144
|
}
|
|
185
|
-
/**
|
|
186
|
-
* Post AC progress comment with proper ADF formatting and dedup.
|
|
187
|
-
*
|
|
188
|
-
* Builds native ADF with:
|
|
189
|
-
* - Bold header showing completion percentage
|
|
190
|
-
* - Bullet list with checkmark/cross emojis per AC
|
|
191
|
-
* - Fingerprint marker to prevent duplicate comments
|
|
192
|
-
*
|
|
193
|
-
* @param issueKey - JIRA issue key (e.g., PROJ-123)
|
|
194
|
-
* @param acStates - Array of AC states with id, description, completed
|
|
195
|
-
* @returns true if comment was posted, false if skipped (duplicate)
|
|
196
|
-
*/
|
|
197
145
|
async postProgressComment(issueKey, acStates) {
|
|
198
146
|
return this.withLock(async () => {
|
|
199
147
|
this.checkCircuitBreaker();
|
|
@@ -310,18 +310,18 @@ umbrella-project/
|
|
|
310
310
|
|
|
311
311
|
| Tool | Skills Location | Auto-loaded? |
|
|
312
312
|
|------|----------------|-------------|
|
|
313
|
-
| Cursor | `.cursor/
|
|
314
|
-
| GitHub Copilot | `.github/
|
|
313
|
+
| Cursor | `.cursor/skills/` | Yes |
|
|
314
|
+
| GitHub Copilot | `.github/copilot/skills/` | Yes (as workspace instructions) |
|
|
315
315
|
| Gemini CLI | `.gemini/` | Reference in prompt |
|
|
316
|
-
| OpenAI Codex | `.codex/
|
|
317
|
-
| Windsurf | `.windsurf/
|
|
318
|
-
| Continue.dev | `.continue/
|
|
319
|
-
| Cline | `.cline/
|
|
320
|
-
| Zed | `.
|
|
321
|
-
| Amazon Q Developer | `.amazonq/
|
|
322
|
-
| JetBrains AI | `.
|
|
323
|
-
| Aider | `.aider/` | Reference in prompt |
|
|
324
|
-
| Tabnine | `.tabnine/
|
|
316
|
+
| OpenAI Codex | `.codex/skills/` | Reference in prompt |
|
|
317
|
+
| Windsurf | `.windsurf/skills/` | Yes |
|
|
318
|
+
| Continue.dev | `.continue/skills/` | Yes |
|
|
319
|
+
| Cline | `.cline/skills/` | Yes |
|
|
320
|
+
| Zed | `.zed/skills/` | Yes |
|
|
321
|
+
| Amazon Q Developer | `.amazonq/skills/` | Yes |
|
|
322
|
+
| JetBrains AI | `.junie/skills/` | Yes |
|
|
323
|
+
| Aider | `.aider/skills/` | Reference in prompt |
|
|
324
|
+
| Tabnine | `.tabnine/skills/` | Yes |
|
|
325
325
|
| Generic (any tool) | `AGENTS.md` (inlined) | Manual |
|
|
326
326
|
|
|
327
327
|
Install/refresh skills: `specweave refresh-plugins`
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
|
|
30
30
|
**Skill chaining** ā skills are NOT "one and done":
|
|
31
31
|
1. **Planning**: `sw:pm` (specs) ā `sw:architect` (design)
|
|
32
|
-
2. **Implementation**: Use `sw:architect` for all domains. Optional domain plugins available via `vskill install` (
|
|
32
|
+
2. **Implementation**: Use `sw:architect` for all domains. Optional domain plugins available via `vskill install` (mobile, marketing, etc.)
|
|
33
33
|
3. **Closure**: `sw:grill` runs automatically via `/sw:done`
|
|
34
34
|
|
|
35
35
|
**Complexity gate** ā before chaining domain skills:
|