specweave 1.0.472 → 1.0.474

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 (48) hide show
  1. package/CLAUDE.md +1 -1
  2. package/bin/specweave.js +21 -0
  3. package/dist/src/cli/commands/branch-name.d.ts +17 -0
  4. package/dist/src/cli/commands/branch-name.d.ts.map +1 -0
  5. package/dist/src/cli/commands/branch-name.js +47 -0
  6. package/dist/src/cli/commands/branch-name.js.map +1 -0
  7. package/dist/src/cli/commands/init.d.ts.map +1 -1
  8. package/dist/src/cli/commands/init.js +0 -1
  9. package/dist/src/cli/commands/init.js.map +1 -1
  10. package/dist/src/cli/commands/refresh-plugins.d.ts +6 -13
  11. package/dist/src/cli/commands/refresh-plugins.d.ts.map +1 -1
  12. package/dist/src/cli/commands/refresh-plugins.js +14 -38
  13. package/dist/src/cli/commands/refresh-plugins.js.map +1 -1
  14. package/dist/src/cli/commands/sync-health.d.ts +34 -0
  15. package/dist/src/cli/commands/sync-health.d.ts.map +1 -0
  16. package/dist/src/cli/commands/sync-health.js +175 -0
  17. package/dist/src/cli/commands/sync-health.js.map +1 -0
  18. package/dist/src/cli/commands/sync-setup.d.ts.map +1 -1
  19. package/dist/src/cli/commands/sync-setup.js +15 -1
  20. package/dist/src/cli/commands/sync-setup.js.map +1 -1
  21. package/dist/src/cli/helpers/init/plugin-installer.d.ts +10 -10
  22. package/dist/src/cli/helpers/init/plugin-installer.d.ts.map +1 -1
  23. package/dist/src/cli/helpers/init/plugin-installer.js +52 -197
  24. package/dist/src/cli/helpers/init/plugin-installer.js.map +1 -1
  25. package/dist/src/config/types.d.ts +2 -2
  26. package/dist/src/core/cicd/branch-utils.d.ts +29 -0
  27. package/dist/src/core/cicd/branch-utils.d.ts.map +1 -0
  28. package/dist/src/core/cicd/branch-utils.js +35 -0
  29. package/dist/src/core/cicd/branch-utils.js.map +1 -0
  30. package/dist/src/core/cicd/config-loader.d.ts.map +1 -1
  31. package/dist/src/core/cicd/config-loader.js.map +1 -1
  32. package/dist/src/core/config/types.d.ts +2 -0
  33. package/dist/src/core/config/types.d.ts.map +1 -1
  34. package/dist/src/core/config/types.js +1 -0
  35. package/dist/src/core/config/types.js.map +1 -1
  36. package/dist/src/core/lazy-loading/llm-plugin-detector.d.ts +18 -47
  37. package/dist/src/core/lazy-loading/llm-plugin-detector.d.ts.map +1 -1
  38. package/dist/src/core/lazy-loading/llm-plugin-detector.js +41 -409
  39. package/dist/src/core/lazy-loading/llm-plugin-detector.js.map +1 -1
  40. package/dist/src/init/research/types.d.ts +1 -1
  41. package/dist/src/utils/plugin-copier.d.ts +14 -0
  42. package/dist/src/utils/plugin-copier.d.ts.map +1 -1
  43. package/dist/src/utils/plugin-copier.js +140 -1
  44. package/dist/src/utils/plugin-copier.js.map +1 -1
  45. package/package.json +1 -1
  46. package/plugins/specweave/hooks/user-prompt-submit.sh +14 -291
  47. package/plugins/specweave/skills/team-lead/SKILL.md +43 -39
  48. package/plugins/specweave/skills/team-merge/SKILL.md +51 -33
@@ -1 +1 @@
1
- {"version":3,"file":"sync-setup.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/sync-setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AASH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;AAE1D,MAAM,WAAW,gBAAgB;IAC/B,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,kDAAkD;IAClD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAcD;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiDpF"}
1
+ {"version":3,"file":"sync-setup.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/sync-setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAUH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;AAE1D,MAAM,WAAW,gBAAgB;IAC/B,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,kDAAkD;IAClD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAcD;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+DpF"}
@@ -11,6 +11,7 @@ import chalk from 'chalk';
11
11
  import * as fs from 'fs';
12
12
  import * as path from 'path';
13
13
  import { setupIssueTracker } from '../helpers/issue-tracker/index.js';
14
+ import { runHealthChecksForConfig, formatHealthCheckResults } from './sync-health.js';
14
15
  /**
15
16
  * Map --provider flag to a RepositoryHosting hint so setupIssueTracker
16
17
  * can pre-select the right default in the tracker selection prompt.
@@ -75,7 +76,20 @@ export async function syncSetupCommand(options = {}) {
75
76
  if (success) {
76
77
  console.log('');
77
78
  console.log(chalk.green.bold('✅ Sync setup complete!'));
78
- console.log(chalk.gray(' Run specweave sync-status to verify the connection.'));
79
+ console.log('');
80
+ // Run health checks for the configured provider(s)
81
+ try {
82
+ const updatedConfig = JSON.parse(fs.readFileSync(configPath, 'utf8'));
83
+ const results = await runHealthChecksForConfig(updatedConfig, projectPath);
84
+ if (results.length > 0) {
85
+ console.log(formatHealthCheckResults(results));
86
+ }
87
+ }
88
+ catch {
89
+ // Health check failure should not block setup success
90
+ console.log(chalk.gray(' ⚠ Could not run health checks. Run specweave sync-health manually.'));
91
+ }
92
+ console.log(chalk.gray(' Run specweave sync-health to re-check integration health.'));
79
93
  console.log(chalk.gray(' Run specweave sync-progress to push increment progress to external tools.'));
80
94
  console.log('');
81
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sync-setup.js","sourceRoot":"","sources":["../../../../src/cli/commands/sync-setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-setup.js","sourceRoot":"","sources":["../../../../src/cli/commands/sync-setup.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
1
  /**
2
2
  * Plugin installation for Claude Code
3
- * Uses inline copier for first-party plugin installation (no vskill dependency).
3
+ *
4
+ * Copies skill files directly into project .claude/skills/ (no CLI dependency).
5
+ * All plugins are installed at init time — no on-demand marketplace lookups.
6
+ *
7
+ * @since 1.0.535 (replaced lazy/CLI-based installation)
4
8
  */
5
9
  /**
6
10
  * Options for plugin installation
@@ -8,8 +12,6 @@
8
12
  export interface PluginInstallOptions {
9
13
  dirname: string;
10
14
  forceRefresh?: boolean;
11
- /** Lazy mode (default true) - install only core plugin, load others on-demand */
12
- lazyMode?: boolean;
13
15
  }
14
16
  /**
15
17
  * Result of plugin installation
@@ -19,17 +21,15 @@ export interface PluginInstallResult {
19
21
  successCount: number;
20
22
  failCount: number;
21
23
  failedPlugins: string[];
22
- /** True if only marketplace was registered (plugins need manual install) */
24
+ /** @deprecated No longer used always false */
23
25
  marketplaceOnly?: boolean;
24
26
  }
25
27
  /**
26
- * Install SpecWeave plugins via inline copier
27
- *
28
- * By default (lazyMode=true), only the core plugin (sw) is installed.
29
- * Other plugins are loaded on-demand based on keywords detected by
30
- * the detect-intent command in the user-prompt-submit hook.
28
+ * Install all SpecWeave plugin skills by copying SKILL.md files
29
+ * directly into the project's .claude/skills/ directory.
31
30
  *
32
- * With lazyMode=false, all plugins are installed.
31
+ * No Claude CLI dependency. No marketplace lookups. No on-demand loading.
32
+ * All skills are available immediately after init.
33
33
  *
34
34
  * @param options - Installation options
35
35
  * @returns Installation result
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-installer.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/plugin-installer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,4EAA4E;IAC5E,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAsKnG"}
1
+ {"version":3,"file":"plugin-installer.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/plugin-installer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAaH;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,gDAAgD;IAChD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CA4GnG"}
@@ -1,86 +1,33 @@
1
1
  /**
2
2
  * Plugin installation for Claude Code
3
- * Uses inline copier for first-party plugin installation (no vskill dependency).
3
+ *
4
+ * Copies skill files directly into project .claude/skills/ (no CLI dependency).
5
+ * All plugins are installed at init time — no on-demand marketplace lookups.
6
+ *
7
+ * @since 1.0.535 (replaced lazy/CLI-based installation)
4
8
  */
5
9
  import * as fs from '../../../utils/fs-native.js';
10
+ import * as path from 'path';
6
11
  import chalk from 'chalk';
7
12
  import ora from 'ora';
8
- import { detectClaudeCli, getClaudeCliDiagnostic, getClaudeCliSuggestions } from '../../../utils/claude-cli-detector.js';
9
13
  import { findSourceDir } from './path-utils.js';
10
- import { cleanupStalePlugins } from '../../../utils/cleanup-stale-plugins.js';
11
- import { enablePluginsInSettings } from './claude-plugin-enabler.js';
12
- import { copyPlugin, findSpecweaveRoot } from '../../../utils/plugin-copier.js';
14
+ import { copyPluginSkillsToProject, findSpecweaveRoot } from '../../../utils/plugin-copier.js';
13
15
  import { getDirname } from '../../../utils/esm-helpers.js';
16
+ import { getProjectRoot } from '../../../utils/find-project-root.js';
14
17
  const __dirname = getDirname(import.meta.url);
15
18
  /**
16
- * Install SpecWeave plugins via inline copier
17
- *
18
- * By default (lazyMode=true), only the core plugin (sw) is installed.
19
- * Other plugins are loaded on-demand based on keywords detected by
20
- * the detect-intent command in the user-prompt-submit hook.
19
+ * Install all SpecWeave plugin skills by copying SKILL.md files
20
+ * directly into the project's .claude/skills/ directory.
21
21
  *
22
- * With lazyMode=false, all plugins are installed.
22
+ * No Claude CLI dependency. No marketplace lookups. No on-demand loading.
23
+ * All skills are available immediately after init.
23
24
  *
24
25
  * @param options - Installation options
25
26
  * @returns Installation result
26
27
  */
27
28
  export async function installAllPlugins(options) {
28
- const { dirname, forceRefresh, lazyMode = true } = options;
29
+ const { dirname, forceRefresh } = options;
29
30
  const spinner = ora();
30
- // Pre-flight check: Is Claude CLI available?
31
- const claudeStatus = detectClaudeCli();
32
- if (!claudeStatus.available) {
33
- const diagnostic = getClaudeCliDiagnostic(claudeStatus);
34
- const suggestions = getClaudeCliSuggestions(claudeStatus);
35
- spinner.warn(diagnostic);
36
- console.log('');
37
- console.log(chalk.yellow.bold('⚠️ Claude Code CLI Issue Detected'));
38
- console.log('');
39
- if (claudeStatus.commandExists) {
40
- console.log(chalk.white('Found command in PATH, but verification failed:'));
41
- console.log('');
42
- if (claudeStatus.commandPath) {
43
- console.log(chalk.gray(` Path: ${claudeStatus.commandPath}`));
44
- }
45
- if (claudeStatus.exitCode !== undefined) {
46
- console.log(chalk.gray(` Exit code: ${claudeStatus.exitCode}`));
47
- }
48
- console.log(chalk.gray(` Issue: ${claudeStatus.error}`));
49
- console.log('');
50
- if (claudeStatus.error === 'version_check_failed') {
51
- console.log(chalk.yellow('⚠️ This likely means:'));
52
- console.log(chalk.gray(' • You have a DIFFERENT tool named "claude" in PATH'));
53
- console.log(chalk.gray(' • It\'s not the Claude Code CLI from Anthropic'));
54
- console.log(chalk.gray(' • The command exists but doesn\'t respond to --version'));
55
- }
56
- }
57
- else {
58
- console.log(chalk.white('Claude CLI not found in PATH'));
59
- }
60
- console.log('');
61
- console.log(chalk.cyan('💡 How to fix:'));
62
- console.log('');
63
- suggestions.forEach(suggestion => {
64
- console.log(chalk.gray(` ${suggestion}`));
65
- });
66
- console.log('');
67
- if (claudeStatus.error === 'command_not_found') {
68
- console.log(chalk.cyan('Alternative Options:'));
69
- console.log('');
70
- console.log(chalk.white('1️⃣ Use Claude Code IDE (no CLI needed):'));
71
- console.log(chalk.gray(' → Open this project in Claude Code'));
72
- console.log(chalk.gray(' → The marketplace is already registered!'));
73
- console.log(chalk.gray(' → Go to /plugin → Marketplaces tab → specweave'));
74
- console.log('');
75
- console.log(chalk.white('2️⃣ Use Different AI Tool:'));
76
- console.log(chalk.gray(' → Run: specweave init --adapter cursor'));
77
- console.log(chalk.gray(' → Works without Claude CLI'));
78
- console.log(chalk.gray(' → Less automation but no CLI dependency'));
79
- console.log('');
80
- }
81
- return { success: false, successCount: 0, failCount: 0, failedPlugins: [] };
82
- }
83
- // Claude CLI available - proceed with inline copier installation
84
31
  try {
85
32
  // Load marketplace.json to get ALL available plugins
86
33
  spinner.start('Loading available plugins...');
@@ -95,46 +42,48 @@ export async function installAllPlugins(options) {
95
42
  }
96
43
  console.log(chalk.blue(` Found ${allPlugins.length} plugins available`));
97
44
  spinner.succeed(`Found ${allPlugins.length} plugins`);
98
- // Clean up stale plugin references
99
- spinner.start('Checking for stale plugin references...');
100
- const cleanupResult = await cleanupStalePlugins(marketplaceJsonPath, false);
101
- if (cleanupResult.removedCount > 0) {
102
- console.log(chalk.yellow(` Removed ${cleanupResult.removedCount} stale plugin reference(s)`));
103
- cleanupResult.removedPlugins.forEach(p => {
104
- console.log(chalk.gray(` - ${p}`));
105
- });
106
- spinner.succeed('Cleaned up stale plugins');
107
- }
108
- else {
109
- spinner.succeed('No stale plugins found');
110
- }
111
- // LAZY LOADING MODE (default)
112
- if (lazyMode) {
113
- return await installLazyMode(allPlugins, spinner);
114
- }
115
- // FULL MODE (--full flag)
116
- const result = await installPluginsFullMode(allPlugins, spinner, forceRefresh);
117
- // Enable installed plugins in Claude settings
118
- if (result.installedPlugins.length > 0) {
119
- spinner.start('Enabling plugins in Claude Code...');
120
- const enabled = enablePluginsInSettings(result.installedPlugins, 'specweave');
121
- if (enabled) {
122
- spinner.succeed('Plugins enabled in Claude Code');
123
- console.log(chalk.green(' All installed plugins are now active'));
45
+ // Find specweave root for the plugin copier
46
+ const specweaveRoot = findSpecweaveRoot(__dirname);
47
+ if (!specweaveRoot) {
48
+ console.log(chalk.yellow(' Could not find specweave root directory'));
49
+ return { success: false, successCount: 0, failCount: allPlugins.length, failedPlugins: allPlugins.map((p) => p.name) };
50
+ }
51
+ // Determine project root for .claude/skills/ target
52
+ const projectRoot = getProjectRoot();
53
+ // Ensure .claude/skills/ directory exists
54
+ const skillsTargetDir = path.join(projectRoot, '.claude', 'skills');
55
+ fs.mkdirSync(skillsTargetDir, { recursive: true });
56
+ // Install all plugins by copying skills directly
57
+ let successCount = 0;
58
+ let failCount = 0;
59
+ const failedPlugins = [];
60
+ for (const plugin of allPlugins) {
61
+ const pluginName = plugin.name;
62
+ spinner.start(`Installing ${pluginName}...`);
63
+ const result = copyPluginSkillsToProject(pluginName, specweaveRoot, projectRoot, { force: forceRefresh });
64
+ if (result.success) {
65
+ successCount++;
66
+ if (result.skipped) {
67
+ spinner.succeed(`${pluginName} (up to date)`);
68
+ }
69
+ else {
70
+ spinner.succeed(`${pluginName} installed`);
71
+ }
124
72
  }
125
73
  else {
126
- spinner.warn('Could not auto-enable plugins');
127
- console.log(chalk.yellow(' Manual: Enable plugins in /plugin menu'));
74
+ failCount++;
75
+ failedPlugins.push(pluginName);
76
+ spinner.warn(`${pluginName} failed: ${result.error || 'unknown'}`);
128
77
  }
129
78
  }
130
79
  // Report results
131
80
  console.log('');
132
81
  console.log(chalk.green.bold('Plugin Installation Complete'));
133
- console.log(chalk.white(` Installed: ${result.successCount}/${allPlugins.length} plugins`));
134
- if (result.failCount > 0) {
135
- console.log(chalk.yellow(` Failed: ${result.failCount} plugins`));
136
- console.log(chalk.gray(` Failed plugins: ${result.failedPlugins.join(', ')}`));
137
- console.log(chalk.gray(' You can install these manually later'));
82
+ console.log(chalk.white(` Installed: ${successCount}/${allPlugins.length} plugins`));
83
+ console.log(chalk.gray(` Location: .claude/skills/ (project-local)`));
84
+ if (failCount > 0) {
85
+ console.log(chalk.yellow(` Failed: ${failCount} plugins`));
86
+ console.log(chalk.gray(` Failed plugins: ${failedPlugins.join(', ')}`));
138
87
  }
139
88
  console.log('');
140
89
  console.log(chalk.cyan('Available capabilities:'));
@@ -145,10 +94,10 @@ export async function installAllPlugins(options) {
145
94
  console.log(chalk.gray(' /sw:docs preview - Documentation preview'));
146
95
  console.log(chalk.gray(' ...and more!'));
147
96
  return {
148
- success: result.successCount > 0,
149
- successCount: result.successCount,
150
- failCount: result.failCount,
151
- failedPlugins: result.failedPlugins,
97
+ success: successCount > 0,
98
+ successCount,
99
+ failCount,
100
+ failedPlugins,
152
101
  marketplaceOnly: false
153
102
  };
154
103
  }
@@ -170,98 +119,4 @@ export async function installAllPlugins(options) {
170
119
  return { success: false, successCount: 0, failCount: 0, failedPlugins: [] };
171
120
  }
172
121
  }
173
- /**
174
- * Install in lazy mode - core plugin only, load others on-demand
175
- */
176
- async function installLazyMode(_allPlugins, spinner) {
177
- const essentialPlugins = [
178
- { name: 'sw', marketplace: 'specweave', description: 'Core SpecWeave framework' },
179
- ];
180
- let installedCount = 0;
181
- const failedPlugins = [];
182
- const successfullyInstalled = [];
183
- spinner.start('Installing essential plugins...');
184
- spinner.stop();
185
- const specweaveRoot = findSpecweaveRoot(__dirname);
186
- if (!specweaveRoot) {
187
- console.log(chalk.yellow(' Could not find specweave root directory'));
188
- return { success: false, successCount: 0, failCount: 1, failedPlugins: ['sw'] };
189
- }
190
- for (const plugin of essentialPlugins) {
191
- console.log(chalk.blue(` Installing ${plugin.name}...`));
192
- const result = copyPlugin(plugin.name, specweaveRoot, { force: true });
193
- if (result.success && !result.skipped) {
194
- console.log(chalk.green(` ${plugin.name} installed`));
195
- installedCount++;
196
- successfullyInstalled.push(plugin.name);
197
- }
198
- else if (result.success && result.skipped) {
199
- console.log(chalk.gray(` ${plugin.name} (already installed)`));
200
- installedCount++;
201
- successfullyInstalled.push(plugin.name);
202
- }
203
- else {
204
- console.log(chalk.yellow(` ${plugin.name} failed: ${result.error || 'unknown'}`));
205
- failedPlugins.push(plugin.name);
206
- }
207
- }
208
- spinner.succeed(`Installed ${installedCount}/${essentialPlugins.length} essential plugins`);
209
- // Enable installed plugins in Claude settings
210
- if (successfullyInstalled.length > 0) {
211
- spinner.start('Enabling plugins in Claude Code...');
212
- const enabled = enablePluginsInSettings(successfullyInstalled, 'specweave');
213
- if (enabled) {
214
- spinner.succeed('Plugins enabled in Claude Code');
215
- console.log(chalk.green(' All installed plugins are now active'));
216
- }
217
- else {
218
- spinner.warn('Could not auto-enable plugins');
219
- console.log(chalk.yellow(' Manual: Enable plugins in /plugin menu'));
220
- }
221
- }
222
- // Show summary - only installed plugins (on-demand plugins are auto-detected by LLM, no need to list)
223
- console.log('');
224
- console.log(chalk.cyan('Installed plugins:'));
225
- for (const plugin of essentialPlugins) {
226
- console.log(chalk.gray(` ${plugin.name}@${plugin.marketplace} - ${plugin.description}`));
227
- }
228
- console.log(chalk.gray(' Additional plugins load automatically when needed'));
229
- console.log('');
230
- return {
231
- success: installedCount > 0,
232
- successCount: installedCount,
233
- failCount: essentialPlugins.length - installedCount,
234
- failedPlugins,
235
- marketplaceOnly: false,
236
- };
237
- }
238
- /**
239
- * Install all plugins (full mode) via inline copier
240
- */
241
- async function installPluginsFullMode(plugins, spinner, forceRefresh) {
242
- let successCount = 0;
243
- let failCount = 0;
244
- const failedPlugins = [];
245
- const installedPlugins = [];
246
- const specweaveRoot = findSpecweaveRoot(__dirname);
247
- if (!specweaveRoot) {
248
- return { successCount: 0, failCount: plugins.length, failedPlugins: plugins.map(p => p.name), installedPlugins: [] };
249
- }
250
- for (const plugin of plugins) {
251
- const pluginName = plugin.name;
252
- spinner.start(`Installing ${pluginName}...`);
253
- const result = copyPlugin(pluginName, specweaveRoot, { force: forceRefresh });
254
- if (result.success) {
255
- successCount++;
256
- installedPlugins.push(pluginName);
257
- spinner.succeed(`${pluginName} installed`);
258
- }
259
- else {
260
- failCount++;
261
- failedPlugins.push(pluginName);
262
- spinner.warn(`${pluginName} failed: ${result.error || 'unknown'}`);
263
- }
264
- }
265
- return { successCount, failCount, failedPlugins, installedPlugins };
266
- }
267
122
  //# sourceMappingURL=plugin-installer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-installer.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/plugin-installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-installer.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/plugin-installer.ts"],"names":[],"mappings":"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"}
@@ -18,13 +18,13 @@ export declare const ResearchConfigSchema: z.ZodObject<{
18
18
  education: "education";
19
19
  iot: "iot";
20
20
  gaming: "gaming";
21
- blockchain: "blockchain";
22
21
  marketplace: "marketplace";
23
22
  "productivity-saas": "productivity-saas";
24
23
  "e-commerce": "e-commerce";
25
24
  "social-network": "social-network";
26
25
  "enterprise-b2b": "enterprise-b2b";
27
26
  "consumer-b2c": "consumer-b2c";
27
+ blockchain: "blockchain";
28
28
  "ai-ml": "ai-ml";
29
29
  }>;
30
30
  competitors: z.ZodArray<z.ZodObject<{
@@ -189,13 +189,13 @@ export declare const SpecWeaveConfigSchema: z.ZodObject<{
189
189
  education: "education";
190
190
  iot: "iot";
191
191
  gaming: "gaming";
192
- blockchain: "blockchain";
193
192
  marketplace: "marketplace";
194
193
  "productivity-saas": "productivity-saas";
195
194
  "e-commerce": "e-commerce";
196
195
  "social-network": "social-network";
197
196
  "enterprise-b2b": "enterprise-b2b";
198
197
  "consumer-b2c": "consumer-b2c";
198
+ blockchain: "blockchain";
199
199
  "ai-ml": "ai-ml";
200
200
  }>;
201
201
  competitors: z.ZodArray<z.ZodObject<{
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Branch Name Builder
3
+ *
4
+ * Composes git branch names for increment branches with optional
5
+ * external ticket key prefix (JIRA/ADO).
6
+ *
7
+ * @module core/cicd/branch-utils
8
+ */
9
+ export interface BranchNameOptions {
10
+ /** Branch name prefix. Default: 'sw/' */
11
+ branchPrefix?: string;
12
+ /** Include external ticket key as prefix. Default: false */
13
+ includeExternalKey?: boolean;
14
+ }
15
+ /**
16
+ * Build branch name for an increment, optionally prefixed with external ticket key.
17
+ *
18
+ * When includeExternalKey is true and metadata contains a JIRA/ADO reference:
19
+ * - JIRA: "PROJ-123/sw/0521-smart-linking"
20
+ * - ADO: "AB#123/sw/0521-smart-linking"
21
+ *
22
+ * Otherwise falls back to standard format: "sw/0521-smart-linking"
23
+ *
24
+ * @param incrementId - Increment ID (e.g., "0521-smart-linking")
25
+ * @param metadata - Increment metadata.json contents (or null)
26
+ * @param options - Branch naming options from GitConfig
27
+ */
28
+ export declare function buildBranchName(incrementId: string, metadata: any | null, options?: BranchNameOptions): string;
29
+ //# sourceMappingURL=branch-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branch-utils.d.ts","sourceRoot":"","sources":["../../../../src/core/cicd/branch-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,WAAW,iBAAiB;IAChC,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,GAAG,GAAG,IAAI,EACpB,OAAO,GAAE,iBAAsB,GAC9B,MAAM,CAcR"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Branch Name Builder
3
+ *
4
+ * Composes git branch names for increment branches with optional
5
+ * external ticket key prefix (JIRA/ADO).
6
+ *
7
+ * @module core/cicd/branch-utils
8
+ */
9
+ import { resolveExternalBranchPrefix } from '../../sync/pr-linker.js';
10
+ /**
11
+ * Build branch name for an increment, optionally prefixed with external ticket key.
12
+ *
13
+ * When includeExternalKey is true and metadata contains a JIRA/ADO reference:
14
+ * - JIRA: "PROJ-123/sw/0521-smart-linking"
15
+ * - ADO: "AB#123/sw/0521-smart-linking"
16
+ *
17
+ * Otherwise falls back to standard format: "sw/0521-smart-linking"
18
+ *
19
+ * @param incrementId - Increment ID (e.g., "0521-smart-linking")
20
+ * @param metadata - Increment metadata.json contents (or null)
21
+ * @param options - Branch naming options from GitConfig
22
+ */
23
+ export function buildBranchName(incrementId, metadata, options = {}) {
24
+ const prefix = options.branchPrefix ?? 'sw/';
25
+ const baseName = `${prefix}${incrementId}`;
26
+ if (!options.includeExternalKey || !metadata) {
27
+ return baseName;
28
+ }
29
+ const externalKey = resolveExternalBranchPrefix(metadata);
30
+ if (!externalKey) {
31
+ return baseName;
32
+ }
33
+ return `${externalKey}/${baseName}`;
34
+ }
35
+ //# sourceMappingURL=branch-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branch-utils.js","sourceRoot":"","sources":["../../../../src/core/cicd/branch-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAStE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAC7B,WAAmB,EACnB,QAAoB,EACpB,UAA6B,EAAE;IAE/B,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,IAAI,KAAK,CAAC;IAC7C,MAAM,QAAQ,GAAG,GAAG,MAAM,GAAG,WAAW,EAAE,CAAC;IAE3C,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC7C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,WAAW,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IAC1D,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,GAAG,WAAW,IAAI,QAAQ,EAAE,CAAC;AACtC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../../../src/core/cicd/config-loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAqP5D;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAC9B,OAAO,GAAE,MAAsB,GAC9B,OAAO,CAAC,oBAAoB,CAAC,CAgB/B;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,GAAE,MAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BxF"}
1
+ {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../../../src/core/cicd/config-loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAsP5D;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAC9B,OAAO,GAAE,MAAsB,GAC9B,OAAO,CAAC,oBAAoB,CAAC,CAgB/B;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,GAAE,MAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BxF"}
@@ -1 +1 @@
1
- {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../../src/core/cicd/config-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../../src/core/cicd/config-loader.ts"],"names":[],"mappings":"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"}
@@ -654,6 +654,8 @@ export interface GitConfig {
654
654
  targetBranch?: string;
655
655
  /** Auto-delete branch after PR merge. Default: true */
656
656
  deleteOnMerge?: boolean;
657
+ /** Include external ticket key (JIRA/ADO) as branch prefix. Default: false */
658
+ includeExternalKey?: boolean;
657
659
  }
658
660
  /**
659
661
  * Environment definition for release promotion (v1.0.437+, enterprise)