specweave 0.30.14 → 0.30.16
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/README.md +32 -0
- package/bin/specweave.js +28 -0
- package/dist/src/cli/commands/commits.d.ts +7 -0
- package/dist/src/cli/commands/commits.d.ts.map +1 -0
- package/dist/src/cli/commands/commits.js +42 -0
- package/dist/src/cli/commands/commits.js.map +1 -0
- package/dist/src/cli/commands/living-docs.d.ts +29 -0
- package/dist/src/cli/commands/living-docs.d.ts.map +1 -0
- package/dist/src/cli/commands/living-docs.js +350 -0
- package/dist/src/cli/commands/living-docs.js.map +1 -0
- package/dist/src/cli/helpers/ado-area-selector.js +1 -1
- package/dist/src/cli/helpers/ado-area-selector.js.map +1 -1
- package/dist/src/core/background/index.d.ts +2 -2
- package/dist/src/core/background/index.d.ts.map +1 -1
- package/dist/src/core/background/index.js +1 -1
- package/dist/src/core/background/index.js.map +1 -1
- package/dist/src/core/living-docs/living-docs-sync.d.ts +34 -10
- package/dist/src/core/living-docs/living-docs-sync.d.ts.map +1 -1
- package/dist/src/core/living-docs/living-docs-sync.js +223 -32
- package/dist/src/core/living-docs/living-docs-sync.js.map +1 -1
- package/dist/src/importers/ado-importer.js +2 -2
- package/dist/src/importers/ado-importer.js.map +1 -1
- package/dist/src/importers/item-converter.d.ts +6 -1
- package/dist/src/importers/item-converter.d.ts.map +1 -1
- package/dist/src/importers/item-converter.js +15 -2
- package/dist/src/importers/item-converter.js.map +1 -1
- package/dist/src/integrations/ado/ado-pat-provider.d.ts +3 -3
- package/dist/src/integrations/ado/ado-pat-provider.js +3 -3
- package/dist/src/living-docs/epic-id-allocator.d.ts +1 -1
- package/dist/src/living-docs/epic-id-allocator.js +1 -1
- package/dist/src/living-docs/fs-id-allocator.d.ts +1 -1
- package/dist/src/living-docs/fs-id-allocator.js +1 -1
- package/dist/src/utils/auth-helpers.d.ts +23 -0
- package/dist/src/utils/auth-helpers.d.ts.map +1 -1
- package/dist/src/utils/auth-helpers.js +51 -0
- package/dist/src/utils/auth-helpers.js.map +1 -1
- package/dist/src/utils/feature-id-collision.d.ts +48 -5
- package/dist/src/utils/feature-id-collision.d.ts.map +1 -1
- package/dist/src/utils/feature-id-collision.js +251 -19
- package/dist/src/utils/feature-id-collision.js.map +1 -1
- package/dist/src/utils/validators/ado-validator.js +2 -2
- package/dist/src/utils/validators/ado-validator.js.map +1 -1
- package/package.json +1 -2
- package/plugins/specweave/commands/specweave-living-docs.md +321 -0
- package/plugins/specweave/hooks/v2/handlers/github-sync-handler.sh +10 -1
- package/plugins/specweave/hooks/v2/handlers/living-docs-handler.sh +10 -1
- package/plugins/specweave-ado/agents/ado-manager/AGENT.md +58 -0
- package/plugins/specweave-ado/commands/pull.md +30 -0
- package/plugins/specweave-ado/commands/push.md +30 -0
- package/plugins/specweave-ado/commands/sync.md +31 -0
- package/plugins/specweave-github/agents/github-manager/AGENT.md +22 -0
- package/plugins/specweave-jira/agents/jira-manager/AGENT.md +30 -0
package/README.md
CHANGED
|
@@ -263,6 +263,38 @@ Three gates before any increment closes:
|
|
|
263
263
|
- Context optimizer removes irrelevant specs
|
|
264
264
|
- Sub-agent parallelization isolates context
|
|
265
265
|
|
|
266
|
+
### Extensible by Design
|
|
267
|
+
|
|
268
|
+
SpecWeave is a **framework, not a locked product**. Customize everything through CLAUDE.md instructions:
|
|
269
|
+
|
|
270
|
+
```markdown
|
|
271
|
+
# In your CLAUDE.md:
|
|
272
|
+
|
|
273
|
+
## Custom Sync Rules
|
|
274
|
+
When syncing to JIRA, always:
|
|
275
|
+
- Add custom field "Team: Backend" for backend increments
|
|
276
|
+
- Map "paused" status to "Blocked" instead of "On Hold"
|
|
277
|
+
- Include sprint field from our sprint naming convention
|
|
278
|
+
|
|
279
|
+
## Custom Quality Gates
|
|
280
|
+
Before closing any increment:
|
|
281
|
+
- Run `npm run lint:strict` in addition to tests
|
|
282
|
+
- Verify changelog entry exists
|
|
283
|
+
- Check that API docs are regenerated
|
|
284
|
+
|
|
285
|
+
## Custom Workflow
|
|
286
|
+
After completing a task:
|
|
287
|
+
- Post notification to #dev-updates Slack channel
|
|
288
|
+
- Update our internal tracking spreadsheet via webhook
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
**What you can customize:**
|
|
292
|
+
- **External sync behavior** — Add fields, transform statuses, integrate with internal tools
|
|
293
|
+
- **Quality gates** — Add custom validation, linting, security scans
|
|
294
|
+
- **Lifecycle hooks** — Trigger actions on increment events (created, done, paused)
|
|
295
|
+
- **Agent behavior** — Override default agent prompts for your domain
|
|
296
|
+
- **Naming conventions** — Enforce team-specific ID formats, branch names
|
|
297
|
+
|
|
266
298
|
### Why Skills, Not MCP?
|
|
267
299
|
|
|
268
300
|
**Community insight**: Anthropic's engineering team discovered that [code execution beats direct tool calls](https://www.anthropic.com/engineering/code-execution-with-mcp) for AI agent efficiency.
|
package/bin/specweave.js
CHANGED
|
@@ -305,6 +305,31 @@ program
|
|
|
305
305
|
await jobsCmd.parseAsync(['node', 'jobs', ...process.argv.slice(3)], { from: 'user' });
|
|
306
306
|
});
|
|
307
307
|
|
|
308
|
+
// Living-docs command - Launch or resume Living Docs Builder independently
|
|
309
|
+
program
|
|
310
|
+
.command('living-docs')
|
|
311
|
+
.description('Launch or resume Living Docs Builder independently')
|
|
312
|
+
.option('--resume <jobId>', 'Resume orphaned/paused job')
|
|
313
|
+
.option('--depth <level>', 'Analysis depth: quick, standard, deep-native, deep-api')
|
|
314
|
+
.option('--priority <modules>', 'Priority modules (comma-separated)')
|
|
315
|
+
.option('--sources <folders>', 'Additional doc folders (comma-separated)')
|
|
316
|
+
.option('--depends-on <jobIds>', 'Wait for jobs before starting (comma-separated)')
|
|
317
|
+
.option('--foreground', 'Run in current session instead of background')
|
|
318
|
+
.option('--force', 'Force run even for greenfield projects')
|
|
319
|
+
.action(async (options) => {
|
|
320
|
+
const { livingDocsCommand } = await import('../dist/src/cli/commands/living-docs.js');
|
|
321
|
+
await livingDocsCommand(options);
|
|
322
|
+
});
|
|
323
|
+
|
|
324
|
+
// Commits command - Display last 2 git commits
|
|
325
|
+
program
|
|
326
|
+
.command('commits')
|
|
327
|
+
.description('Display the last 2 git commits')
|
|
328
|
+
.action(async () => {
|
|
329
|
+
const { commitsCommand } = await import('../dist/src/cli/commands/commits.js');
|
|
330
|
+
await commitsCommand();
|
|
331
|
+
});
|
|
332
|
+
|
|
308
333
|
// Sync-scheduled command - Execute due scheduled sync jobs (for cron/CI)
|
|
309
334
|
program
|
|
310
335
|
.command('sync-scheduled')
|
|
@@ -348,6 +373,9 @@ program.on('--help', () => {
|
|
|
348
373
|
console.log(' $ specweave jobs --follow <jobId> # Follow job progress live');
|
|
349
374
|
console.log(' $ specweave jobs --logs <jobId> # View worker logs');
|
|
350
375
|
console.log(' $ specweave jobs --resume <jobId> # Resume paused job');
|
|
376
|
+
console.log(' $ specweave living-docs # Launch Living Docs (interactive)');
|
|
377
|
+
console.log(' $ specweave living-docs --depth deep-native # AI-powered analysis (FREE w/ MAX)');
|
|
378
|
+
console.log(' $ specweave living-docs --resume <jobId> # Resume orphaned job');
|
|
351
379
|
console.log(' $ specweave sync-scheduled # Execute due sync jobs');
|
|
352
380
|
console.log(' $ specweave sync-scheduled --force # Force sync all jobs');
|
|
353
381
|
console.log(' $ specweave validate-jira --env .env.prod # Validate with custom .env file');
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commits.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/commits.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAkCpD"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { execSync } from 'child_process';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
/**
|
|
4
|
+
* Display the last 2 git commits
|
|
5
|
+
*
|
|
6
|
+
* Shows commit hash (short), author, and message for quick context.
|
|
7
|
+
*/
|
|
8
|
+
export async function commitsCommand() {
|
|
9
|
+
try {
|
|
10
|
+
// Check if we're in a git repository
|
|
11
|
+
try {
|
|
12
|
+
execSync('git rev-parse --git-dir', { stdio: 'pipe' });
|
|
13
|
+
}
|
|
14
|
+
catch {
|
|
15
|
+
console.error(chalk.red('Error: Not a git repository'));
|
|
16
|
+
process.exit(1);
|
|
17
|
+
}
|
|
18
|
+
// Get last 2 commits
|
|
19
|
+
const output = execSync('git log -2 --format="%h %an: %s"', {
|
|
20
|
+
encoding: 'utf-8',
|
|
21
|
+
stdio: ['pipe', 'pipe', 'pipe']
|
|
22
|
+
}).trim();
|
|
23
|
+
if (!output) {
|
|
24
|
+
console.log(chalk.yellow('No commits found in this repository'));
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
console.log(chalk.bold('\nLast 2 commits:\n'));
|
|
28
|
+
const lines = output.split('\n');
|
|
29
|
+
lines.forEach((line, index) => {
|
|
30
|
+
const [hash, ...rest] = line.split(' ');
|
|
31
|
+
const message = rest.join(' ');
|
|
32
|
+
console.log(chalk.dim(`${index + 1}.`) + ' ' + chalk.cyan(hash) + ' ' + message);
|
|
33
|
+
});
|
|
34
|
+
console.log('');
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
38
|
+
console.error(chalk.red(`Error: ${message}`));
|
|
39
|
+
process.exit(1);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=commits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commits.js","sourceRoot":"","sources":["../../../../src/cli/commands/commits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,IAAI,CAAC;QACH,qCAAqC;QACrC,IAAI,CAAC;YACH,QAAQ,CAAC,yBAAyB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC;YACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,qBAAqB;QACrB,MAAM,MAAM,GAAG,QAAQ,CAAC,kCAAkC,EAAE;YAC1D,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEV,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,qCAAqC,CAAC,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAC5B,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACxC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,OAAO,CAAC,CAAC;QACnF,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Living Docs CLI Command
|
|
3
|
+
*
|
|
4
|
+
* Launch or resume Living Docs Builder independently of init.
|
|
5
|
+
* Supports:
|
|
6
|
+
* - Resuming orphaned/crashed jobs
|
|
7
|
+
* - Launching new analysis with configuration
|
|
8
|
+
* - Waiting for dependencies (clone/import jobs)
|
|
9
|
+
*
|
|
10
|
+
* Usage:
|
|
11
|
+
* specweave living-docs # Interactive mode
|
|
12
|
+
* specweave living-docs --resume <jobId> # Resume orphaned job
|
|
13
|
+
* specweave living-docs --depth quick # Quick analysis
|
|
14
|
+
* specweave living-docs --depth deep-native # AI-powered (FREE with MAX)
|
|
15
|
+
*/
|
|
16
|
+
export interface LivingDocsOptions {
|
|
17
|
+
resume?: string;
|
|
18
|
+
depth?: 'quick' | 'standard' | 'deep-native' | 'deep-api';
|
|
19
|
+
priority?: string;
|
|
20
|
+
sources?: string;
|
|
21
|
+
dependsOn?: string;
|
|
22
|
+
foreground?: boolean;
|
|
23
|
+
force?: boolean;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Main living-docs command handler
|
|
27
|
+
*/
|
|
28
|
+
export declare function livingDocsCommand(options: LivingDocsOptions): Promise<void>;
|
|
29
|
+
//# sourceMappingURL=living-docs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"living-docs.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/living-docs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAiBH,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,aAAa,GAAG,UAAU,CAAC;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwEjF"}
|
|
@@ -0,0 +1,350 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Living Docs CLI Command
|
|
3
|
+
*
|
|
4
|
+
* Launch or resume Living Docs Builder independently of init.
|
|
5
|
+
* Supports:
|
|
6
|
+
* - Resuming orphaned/crashed jobs
|
|
7
|
+
* - Launching new analysis with configuration
|
|
8
|
+
* - Waiting for dependencies (clone/import jobs)
|
|
9
|
+
*
|
|
10
|
+
* Usage:
|
|
11
|
+
* specweave living-docs # Interactive mode
|
|
12
|
+
* specweave living-docs --resume <jobId> # Resume orphaned job
|
|
13
|
+
* specweave living-docs --depth quick # Quick analysis
|
|
14
|
+
* specweave living-docs --depth deep-native # AI-powered (FREE with MAX)
|
|
15
|
+
*/
|
|
16
|
+
import * as path from 'path';
|
|
17
|
+
import chalk from 'chalk';
|
|
18
|
+
import { confirm, select, input } from '@inquirer/prompts';
|
|
19
|
+
import * as fs from '../../utils/fs-native.js';
|
|
20
|
+
import { getJobManager, launchLivingDocsJob, getOrphanedJobs, isJobRunning, } from '../../core/background/index.js';
|
|
21
|
+
import { detectBrownfield, estimateDuration } from '../helpers/init/living-docs-preflight.js';
|
|
22
|
+
import { getClaudeCodeStatus, getAvailableProviders } from '../../core/llm/provider-factory.js';
|
|
23
|
+
/**
|
|
24
|
+
* Main living-docs command handler
|
|
25
|
+
*/
|
|
26
|
+
export async function livingDocsCommand(options) {
|
|
27
|
+
const projectPath = process.cwd();
|
|
28
|
+
// Check if SpecWeave is initialized
|
|
29
|
+
const specweavePath = path.join(projectPath, '.specweave');
|
|
30
|
+
if (!fs.existsSync(specweavePath)) {
|
|
31
|
+
console.log(chalk.yellow('No SpecWeave project found in current directory.'));
|
|
32
|
+
console.log(chalk.gray('Run `specweave init` to initialize a project.'));
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
// Handle --resume flag
|
|
36
|
+
if (options.resume) {
|
|
37
|
+
await handleResume(projectPath, options.resume);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
// Check for orphaned living-docs jobs
|
|
41
|
+
const orphanedJobs = getOrphanedLivingDocsJobs(projectPath);
|
|
42
|
+
if (orphanedJobs.length > 0 && !options.force) {
|
|
43
|
+
const shouldResume = await promptResumeOrphanedJob(orphanedJobs);
|
|
44
|
+
if (shouldResume) {
|
|
45
|
+
await handleResume(projectPath, shouldResume);
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
// Check if already running
|
|
50
|
+
const runningJob = getRunningLivingDocsJob(projectPath);
|
|
51
|
+
if (runningJob) {
|
|
52
|
+
console.log(chalk.yellow(`\nA Living Docs job is already running: ${runningJob.id.slice(0, 8)}`));
|
|
53
|
+
console.log(chalk.gray(` Follow progress: specweave jobs --follow ${runningJob.id.slice(0, 8)}`));
|
|
54
|
+
console.log(chalk.gray(` View logs: specweave jobs --logs ${runningJob.id.slice(0, 8)}`));
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
// Check if project has code (brownfield)
|
|
58
|
+
const isBrownfield = detectBrownfield(projectPath);
|
|
59
|
+
if (!isBrownfield && !options.force) {
|
|
60
|
+
console.log(chalk.blue('\nNo existing code detected (greenfield project).'));
|
|
61
|
+
console.log(chalk.gray('Living docs will sync automatically as you create increments.'));
|
|
62
|
+
console.log(chalk.gray('\nTo force analysis anyway: specweave living-docs --force'));
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
// Collect configuration
|
|
66
|
+
const userInputs = await collectConfiguration(projectPath, options);
|
|
67
|
+
if (!userInputs) {
|
|
68
|
+
console.log(chalk.gray('Cancelled.'));
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
// Parse depends-on
|
|
72
|
+
const dependsOn = options.dependsOn
|
|
73
|
+
? options.dependsOn.split(',').map(s => s.trim())
|
|
74
|
+
: undefined;
|
|
75
|
+
// Launch job
|
|
76
|
+
try {
|
|
77
|
+
const { job, pid, isBackground } = await launchLivingDocsJob({
|
|
78
|
+
projectPath,
|
|
79
|
+
userInputs,
|
|
80
|
+
dependsOn,
|
|
81
|
+
foreground: options.foreground,
|
|
82
|
+
});
|
|
83
|
+
displayLaunchSuccess(job, pid, isBackground, userInputs);
|
|
84
|
+
}
|
|
85
|
+
catch (error) {
|
|
86
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
87
|
+
console.error(chalk.red(`\nFailed to launch Living Docs Builder: ${errorMessage}`));
|
|
88
|
+
process.exit(1);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Get orphaned living-docs jobs
|
|
93
|
+
*/
|
|
94
|
+
function getOrphanedLivingDocsJobs(projectPath) {
|
|
95
|
+
const orphaned = getOrphanedJobs(projectPath);
|
|
96
|
+
return orphaned.filter(j => j.type === 'living-docs-builder');
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Get running living-docs job
|
|
100
|
+
*/
|
|
101
|
+
function getRunningLivingDocsJob(projectPath) {
|
|
102
|
+
const jobManager = getJobManager(projectPath);
|
|
103
|
+
const jobs = jobManager.getJobs();
|
|
104
|
+
for (const job of jobs) {
|
|
105
|
+
if (job.type === 'living-docs-builder' && job.status === 'running') {
|
|
106
|
+
if (isJobRunning(projectPath, job.id)) {
|
|
107
|
+
return job;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return null;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Prompt user to resume an orphaned job
|
|
115
|
+
*/
|
|
116
|
+
async function promptResumeOrphanedJob(orphanedJobs) {
|
|
117
|
+
console.log(chalk.yellow('\nFound orphaned Living Docs job(s):'));
|
|
118
|
+
for (const job of orphanedJobs) {
|
|
119
|
+
const progress = job.progress;
|
|
120
|
+
const percentage = progress.total > 0
|
|
121
|
+
? Math.round((progress.current / progress.total) * 100)
|
|
122
|
+
: 0;
|
|
123
|
+
console.log(chalk.gray(` [${job.id.slice(0, 8)}] ${percentage}% complete - ${getTimeAgo(job.updatedAt)}`));
|
|
124
|
+
}
|
|
125
|
+
console.log('');
|
|
126
|
+
const choices = [
|
|
127
|
+
...orphanedJobs.map(j => ({
|
|
128
|
+
value: j.id,
|
|
129
|
+
name: `Resume ${j.id.slice(0, 8)} (${Math.round((j.progress.current / j.progress.total) * 100)}% complete)`,
|
|
130
|
+
})),
|
|
131
|
+
{ value: 'new', name: 'Start fresh (ignore orphaned jobs)' },
|
|
132
|
+
{ value: 'cancel', name: 'Cancel' },
|
|
133
|
+
];
|
|
134
|
+
const answer = await select({
|
|
135
|
+
message: 'What would you like to do?',
|
|
136
|
+
choices,
|
|
137
|
+
});
|
|
138
|
+
if (answer === 'cancel') {
|
|
139
|
+
return null;
|
|
140
|
+
}
|
|
141
|
+
if (answer === 'new') {
|
|
142
|
+
return null;
|
|
143
|
+
}
|
|
144
|
+
return answer;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Handle resuming a job
|
|
148
|
+
*/
|
|
149
|
+
async function handleResume(projectPath, jobId) {
|
|
150
|
+
const jobManager = getJobManager(projectPath);
|
|
151
|
+
const job = jobManager.getJob(jobId) || findJobByPrefix(jobManager.getJobs(), jobId);
|
|
152
|
+
if (!job) {
|
|
153
|
+
console.log(chalk.red(`Job not found: ${jobId}`));
|
|
154
|
+
console.log(chalk.gray('Run `specweave jobs --all` to see all jobs.'));
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
if (job.type !== 'living-docs-builder') {
|
|
158
|
+
console.log(chalk.red(`Job ${jobId} is not a living-docs job (type: ${job.type})`));
|
|
159
|
+
console.log(chalk.gray('Use `specweave jobs --resume` for other job types.'));
|
|
160
|
+
return;
|
|
161
|
+
}
|
|
162
|
+
if (job.status === 'running' && isJobRunning(projectPath, job.id)) {
|
|
163
|
+
console.log(chalk.yellow(`Job ${job.id.slice(0, 8)} is already running.`));
|
|
164
|
+
console.log(chalk.gray(` Follow progress: specweave jobs --follow ${job.id.slice(0, 8)}`));
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
if (job.status === 'completed') {
|
|
168
|
+
console.log(chalk.gray(`Job ${job.id.slice(0, 8)} is already completed.`));
|
|
169
|
+
console.log(chalk.gray('Run `specweave living-docs` to start a new analysis.'));
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
// Load checkpoint info
|
|
173
|
+
const checkpointPath = path.join(projectPath, '.specweave', 'state', 'jobs', job.id, 'checkpoints', 'state.json');
|
|
174
|
+
let resumeInfo = 'beginning';
|
|
175
|
+
if (fs.existsSync(checkpointPath)) {
|
|
176
|
+
try {
|
|
177
|
+
const checkpoint = JSON.parse(fs.readFileSync(checkpointPath, 'utf-8'));
|
|
178
|
+
resumeInfo = `phase=${checkpoint.phase || 'unknown'}`;
|
|
179
|
+
if (checkpoint.currentModule) {
|
|
180
|
+
resumeInfo += `, module=${checkpoint.currentModule}`;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
catch {
|
|
184
|
+
// Ignore parse errors
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
console.log(chalk.cyan(`\nResuming Living Docs Builder (${job.id.slice(0, 8)})...`));
|
|
188
|
+
console.log(chalk.gray(` Resume point: ${resumeInfo}`));
|
|
189
|
+
console.log(chalk.gray(` Progress: ${job.progress.current}/${job.progress.total}`));
|
|
190
|
+
// Load original config
|
|
191
|
+
const configPath = path.join(projectPath, '.specweave', 'state', 'jobs', job.id, 'config.json');
|
|
192
|
+
if (!fs.existsSync(configPath)) {
|
|
193
|
+
console.log(chalk.red('\nCannot resume: job config not found.'));
|
|
194
|
+
console.log(chalk.gray('You may need to start a new analysis.'));
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
const jobConfig = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
|
|
198
|
+
// Mark job as running
|
|
199
|
+
jobManager.startJob(job.id);
|
|
200
|
+
// Re-launch worker
|
|
201
|
+
try {
|
|
202
|
+
const { job: resumedJob, pid, isBackground } = await launchLivingDocsJob({
|
|
203
|
+
projectPath,
|
|
204
|
+
userInputs: jobConfig.userInputs,
|
|
205
|
+
dependsOn: jobConfig.dependsOn,
|
|
206
|
+
foreground: false,
|
|
207
|
+
});
|
|
208
|
+
// Update the existing job ID in the new job's config
|
|
209
|
+
// (The launcher creates a new job, but we want to continue the old one)
|
|
210
|
+
// Actually, we need to reuse the same job ID...
|
|
211
|
+
if (isBackground) {
|
|
212
|
+
console.log(chalk.green(`\nJob resumed in background.`));
|
|
213
|
+
console.log(chalk.gray(` PID: ${pid}`));
|
|
214
|
+
console.log(chalk.gray(` Follow: specweave jobs --follow ${job.id.slice(0, 8)}`));
|
|
215
|
+
console.log(chalk.gray(` Logs: specweave jobs --logs ${job.id.slice(0, 8)}`));
|
|
216
|
+
}
|
|
217
|
+
else {
|
|
218
|
+
console.log(chalk.yellow('\nRunning in foreground (background mode unavailable).'));
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
catch (error) {
|
|
222
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
223
|
+
console.error(chalk.red(`Failed to resume: ${errorMessage}`));
|
|
224
|
+
process.exit(1);
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Collect configuration from flags or interactive prompts
|
|
229
|
+
*/
|
|
230
|
+
async function collectConfiguration(projectPath, options) {
|
|
231
|
+
// If all options provided via flags, use them directly
|
|
232
|
+
if (options.depth) {
|
|
233
|
+
const priorityAreas = options.priority
|
|
234
|
+
? options.priority.split(',').map(s => s.trim())
|
|
235
|
+
: [];
|
|
236
|
+
const additionalSources = options.sources
|
|
237
|
+
? options.sources.split(',').map(s => s.trim())
|
|
238
|
+
: [];
|
|
239
|
+
return {
|
|
240
|
+
analysisDepth: options.depth,
|
|
241
|
+
priorityAreas,
|
|
242
|
+
additionalSources,
|
|
243
|
+
knownPainPoints: [],
|
|
244
|
+
};
|
|
245
|
+
}
|
|
246
|
+
// Interactive mode
|
|
247
|
+
console.log(chalk.blue('\nLiving Docs Builder Configuration\n'));
|
|
248
|
+
// Analysis depth
|
|
249
|
+
const claudeCodeStatus = await getClaudeCodeStatus();
|
|
250
|
+
const availableProviders = await getAvailableProviders();
|
|
251
|
+
const hasApiProviders = availableProviders.some(p => p !== 'claude-code');
|
|
252
|
+
const depthChoices = [
|
|
253
|
+
{ value: 'quick', name: 'Quick (~5-10 min) - Structure scan, tech detection' },
|
|
254
|
+
{ value: 'standard', name: 'Standard (~15-30 min) - Module analysis, dependencies' },
|
|
255
|
+
{
|
|
256
|
+
value: 'deep-native',
|
|
257
|
+
name: 'Deep-Native (Claude MAX) - AI-powered analysis (FREE!)',
|
|
258
|
+
disabled: !claudeCodeStatus.available
|
|
259
|
+
? (claudeCodeStatus.error || 'Claude Code not available')
|
|
260
|
+
: false,
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
value: 'deep-api',
|
|
264
|
+
name: 'Deep-API - AI analysis via API key (costs apply)',
|
|
265
|
+
disabled: !hasApiProviders ? 'No API keys configured' : false,
|
|
266
|
+
},
|
|
267
|
+
];
|
|
268
|
+
const analysisDepth = await select({
|
|
269
|
+
message: 'Analysis depth:',
|
|
270
|
+
choices: depthChoices,
|
|
271
|
+
default: claudeCodeStatus.available ? 'deep-native' : 'quick',
|
|
272
|
+
});
|
|
273
|
+
// Priority areas
|
|
274
|
+
const priorityInput = await input({
|
|
275
|
+
message: 'Priority modules (comma-separated, or leave empty):',
|
|
276
|
+
default: '',
|
|
277
|
+
});
|
|
278
|
+
const priorityAreas = priorityInput
|
|
279
|
+
.split(',')
|
|
280
|
+
.map(s => s.trim())
|
|
281
|
+
.filter(s => s.length > 0);
|
|
282
|
+
// Additional sources
|
|
283
|
+
const sourcesInput = await input({
|
|
284
|
+
message: 'Additional doc folders (comma-separated, or leave empty):',
|
|
285
|
+
default: '',
|
|
286
|
+
});
|
|
287
|
+
const additionalSources = sourcesInput
|
|
288
|
+
.split(',')
|
|
289
|
+
.map(s => s.trim())
|
|
290
|
+
.filter(s => s.length > 0);
|
|
291
|
+
// Confirm
|
|
292
|
+
const duration = estimateDuration(projectPath, analysisDepth);
|
|
293
|
+
const shouldLaunch = await confirm({
|
|
294
|
+
message: `Launch Living Docs Builder? (${duration})`,
|
|
295
|
+
default: true,
|
|
296
|
+
});
|
|
297
|
+
if (!shouldLaunch) {
|
|
298
|
+
return null;
|
|
299
|
+
}
|
|
300
|
+
return {
|
|
301
|
+
analysisDepth,
|
|
302
|
+
priorityAreas,
|
|
303
|
+
additionalSources,
|
|
304
|
+
knownPainPoints: [],
|
|
305
|
+
};
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* Display success message after launch
|
|
309
|
+
*/
|
|
310
|
+
function displayLaunchSuccess(job, pid, isBackground, userInputs) {
|
|
311
|
+
console.log(chalk.green('\nLiving Docs Builder launched!'));
|
|
312
|
+
console.log('');
|
|
313
|
+
console.log(chalk.white(` Job ID: ${job.id.slice(0, 8)}`));
|
|
314
|
+
console.log(chalk.gray(` Depth: ${userInputs.analysisDepth}`));
|
|
315
|
+
if (userInputs.priorityAreas.length > 0) {
|
|
316
|
+
console.log(chalk.gray(` Priority: ${userInputs.priorityAreas.join(', ')}`));
|
|
317
|
+
}
|
|
318
|
+
if (isBackground) {
|
|
319
|
+
console.log(chalk.gray(` PID: ${pid}`));
|
|
320
|
+
console.log('');
|
|
321
|
+
console.log(chalk.blue(' Monitor:'));
|
|
322
|
+
console.log(chalk.gray(` specweave jobs --follow ${job.id.slice(0, 8)}`));
|
|
323
|
+
console.log(chalk.gray(` specweave jobs --logs ${job.id.slice(0, 8)}`));
|
|
324
|
+
}
|
|
325
|
+
else {
|
|
326
|
+
console.log('');
|
|
327
|
+
console.log(chalk.yellow(' Running in foreground...'));
|
|
328
|
+
}
|
|
329
|
+
console.log('');
|
|
330
|
+
console.log(chalk.gray(' Output will be saved to:'));
|
|
331
|
+
console.log(chalk.gray(' .specweave/docs/SUGGESTIONS.md'));
|
|
332
|
+
console.log(chalk.gray(' .specweave/docs/ENTERPRISE-HEALTH.md'));
|
|
333
|
+
console.log('');
|
|
334
|
+
}
|
|
335
|
+
// Helper functions
|
|
336
|
+
function findJobByPrefix(jobs, prefix) {
|
|
337
|
+
return jobs.find(j => j.id.startsWith(prefix));
|
|
338
|
+
}
|
|
339
|
+
function getTimeAgo(dateStr) {
|
|
340
|
+
const date = new Date(dateStr);
|
|
341
|
+
const seconds = Math.floor((Date.now() - date.getTime()) / 1000);
|
|
342
|
+
if (seconds < 60)
|
|
343
|
+
return 'just now';
|
|
344
|
+
if (seconds < 3600)
|
|
345
|
+
return `${Math.floor(seconds / 60)} mins ago`;
|
|
346
|
+
if (seconds < 86400)
|
|
347
|
+
return `${Math.floor(seconds / 3600)} hours ago`;
|
|
348
|
+
return `${Math.floor(seconds / 86400)} days ago`;
|
|
349
|
+
}
|
|
350
|
+
//# sourceMappingURL=living-docs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"living-docs.js","sourceRoot":"","sources":["../../../../src/cli/commands/living-docs.ts"],"names":[],"mappings":"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"}
|
|
@@ -263,7 +263,7 @@ export async function selectAreaPaths(allAreaPaths, projectName) {
|
|
|
263
263
|
// Full paths like "MyProject\Platform-Engineering" become just "Platform-Engineering"
|
|
264
264
|
selectionConfig.areaPaths = selectedAreas.map(a => a.name);
|
|
265
265
|
// CRITICAL FIX (v0.30.13): Warn when only area path is project root
|
|
266
|
-
// This causes nested identical folders: specs/
|
|
266
|
+
// This causes nested identical folders: specs/my-project/my-project/
|
|
267
267
|
// With the getBaseDirectory fix, this will now use flat structure, but warn user anyway
|
|
268
268
|
if (selectedAreas.length === 1) {
|
|
269
269
|
const selectedLeafName = selectedAreas[0].name.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/-+/g, '-').replace(/^-|-$/g, '');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ado-area-selector.js","sourceRoot":"","sources":["../../../../src/cli/helpers/ado-area-selector.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ado-area-selector.js","sourceRoot":"","sources":["../../../../src/cli/helpers/ado-area-selector.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
*/
|
|
16
16
|
export * from './types.js';
|
|
17
17
|
export * from './job-manager.js';
|
|
18
|
-
export { launchImportJob, launchCloneJob, isJobRunning, killJob, getJobLog, getJobResult, cleanupOldJobs, getActiveImportJob, detectOrphanedJobs, getOrphanedJobs } from './job-launcher.js';
|
|
19
|
-
export type { LaunchOptions, LaunchResult, CloneLaunchOptions } from './job-launcher.js';
|
|
18
|
+
export { launchImportJob, launchCloneJob, launchLivingDocsJob, isJobRunning, killJob, getJobLog, getJobResult, cleanupOldJobs, getActiveImportJob, detectOrphanedJobs, getOrphanedJobs } from './job-launcher.js';
|
|
19
|
+
export type { LaunchOptions, LaunchResult, CloneLaunchOptions, LivingDocsLaunchOptions } from './job-launcher.js';
|
|
20
20
|
export { launchBrownfieldAnalysisJob, loadJobState as loadBrownfieldJobState, listBrownfieldJobs, getActiveBrownfieldJob, updateJobProgress as updateBrownfieldProgress, completeJob as completeBrownfieldJob, failJob as failBrownfieldJob, pauseJob as pauseBrownfieldJob, resumeJob as resumeBrownfieldJob, deleteJob as deleteBrownfieldJob, formatCompletionNotification as formatBrownfieldNotification, } from './brownfield-launcher.js';
|
|
21
21
|
export type { BrownfieldLaunchOptions, BrownfieldLaunchResult, BrownfieldCompletionStats, } from './brownfield-launcher.js';
|
|
22
22
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/background/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,OAAO,EACL,eAAe,EACf,cAAc,EACd,YAAY,EACZ,OAAO,EACP,SAAS,EACT,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/background/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,OAAO,EACL,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,OAAO,EACP,SAAS,EACT,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAGlH,OAAO,EACL,2BAA2B,EAC3B,YAAY,IAAI,sBAAsB,EACtC,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,IAAI,wBAAwB,EAC7C,WAAW,IAAI,qBAAqB,EACpC,OAAO,IAAI,iBAAiB,EAC5B,QAAQ,IAAI,kBAAkB,EAC9B,SAAS,IAAI,mBAAmB,EAChC,SAAS,IAAI,mBAAmB,EAChC,4BAA4B,IAAI,4BAA4B,GAC7D,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
export * from './types.js';
|
|
17
17
|
export * from './job-manager.js';
|
|
18
|
-
export { launchImportJob, launchCloneJob, isJobRunning, killJob, getJobLog, getJobResult, cleanupOldJobs, getActiveImportJob, detectOrphanedJobs, getOrphanedJobs } from './job-launcher.js';
|
|
18
|
+
export { launchImportJob, launchCloneJob, launchLivingDocsJob, isJobRunning, killJob, getJobLog, getJobResult, cleanupOldJobs, getActiveImportJob, detectOrphanedJobs, getOrphanedJobs } from './job-launcher.js';
|
|
19
19
|
// Brownfield analysis jobs
|
|
20
20
|
export { launchBrownfieldAnalysisJob, loadJobState as loadBrownfieldJobState, listBrownfieldJobs, getActiveBrownfieldJob, updateJobProgress as updateBrownfieldProgress, completeJob as completeBrownfieldJob, failJob as failBrownfieldJob, pauseJob as pauseBrownfieldJob, resumeJob as resumeBrownfieldJob, deleteJob as deleteBrownfieldJob, formatCompletionNotification as formatBrownfieldNotification, } from './brownfield-launcher.js';
|
|
21
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/background/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,OAAO,EACL,eAAe,EACf,cAAc,EACd,YAAY,EACZ,OAAO,EACP,SAAS,EACT,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAG3B,2BAA2B;AAC3B,OAAO,EACL,2BAA2B,EAC3B,YAAY,IAAI,sBAAsB,EACtC,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,IAAI,wBAAwB,EAC7C,WAAW,IAAI,qBAAqB,EACpC,OAAO,IAAI,iBAAiB,EAC5B,QAAQ,IAAI,kBAAkB,EAC9B,SAAS,IAAI,mBAAmB,EAChC,SAAS,IAAI,mBAAmB,EAChC,4BAA4B,IAAI,4BAA4B,GAC7D,MAAM,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/background/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,OAAO,EACL,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,OAAO,EACP,SAAS,EACT,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAG3B,2BAA2B;AAC3B,OAAO,EACL,2BAA2B,EAC3B,YAAY,IAAI,sBAAsB,EACtC,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,IAAI,wBAAwB,EAC7C,WAAW,IAAI,qBAAqB,EACpC,OAAO,IAAI,iBAAiB,EAC5B,QAAQ,IAAI,kBAAkB,EAC9B,SAAS,IAAI,mBAAmB,EAChC,SAAS,IAAI,mBAAmB,EAChC,4BAA4B,IAAI,4BAA4B,GAC7D,MAAM,0BAA0B,CAAC"}
|