specweave 0.23.4 → 0.23.5
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.md +99 -0
- package/dist/plugins/specweave-github/lib/user-story-issue-builder.d.ts.map +1 -1
- package/dist/plugins/specweave-github/lib/user-story-issue-builder.js +24 -0
- package/dist/plugins/specweave-github/lib/user-story-issue-builder.js.map +1 -1
- package/package.json +1 -1
- package/plugins/specweave/lib/hooks/update-tasks-md.js +3 -3
- package/plugins/specweave/lib/hooks/update-tasks-md.ts +3 -3
- package/plugins/specweave-github/lib/user-story-issue-builder.js +24 -0
- package/plugins/specweave-github/lib/user-story-issue-builder.ts +33 -0
- package/src/templates/CLAUDE.md.template +13 -0
package/CLAUDE.md
CHANGED
|
@@ -10,6 +10,37 @@ For **contributors to SpecWeave itself** (not users).
|
|
|
10
10
|
|
|
11
11
|
## 🚨 CRITICAL SAFETY RULES
|
|
12
12
|
|
|
13
|
+
### 0. Thinking-Before-Acting Discipline (META RULE!)
|
|
14
|
+
|
|
15
|
+
**ALWAYS act on your reasoning BEFORE attempting operations that will fail.**
|
|
16
|
+
|
|
17
|
+
**Anti-pattern**: Running commands you know will fail, then fixing the issue.
|
|
18
|
+
|
|
19
|
+
```typescript
|
|
20
|
+
// ❌ WRONG: Attempt → Predictable failure → Fix
|
|
21
|
+
node -e "require('./dist/file.js')" // Fails (you saw this coming!)
|
|
22
|
+
npm run rebuild // Then fix
|
|
23
|
+
|
|
24
|
+
// ✅ CORRECT: Recognize dependency → Fix → Attempt
|
|
25
|
+
npm run rebuild // Fix first
|
|
26
|
+
node -e "require('./dist/file.js')" // Then succeed
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
**Why**: Wastes time, creates confusion, makes execution harder to follow.
|
|
30
|
+
|
|
31
|
+
**How to avoid**:
|
|
32
|
+
1. **Read your own thinking process** - What dependencies did you identify?
|
|
33
|
+
2. **Order operations logically** - Prerequisites BEFORE dependent operations
|
|
34
|
+
3. **Catch predictable failures** - If you know it will fail, don't run it yet
|
|
35
|
+
|
|
36
|
+
**Example patterns to watch for**:
|
|
37
|
+
- Running code before compilation (`tsc`, `npm run build`)
|
|
38
|
+
- Database queries before migrations/setup
|
|
39
|
+
- API calls before authentication
|
|
40
|
+
- File operations before directory creation
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
13
44
|
### 1. Local Development Setup
|
|
14
45
|
|
|
15
46
|
**SpecWeave uses Claude Code's GitHub marketplace** for plugin management. This is the **cross-platform, simple approach** that works on macOS, Linux, and Windows.
|
|
@@ -462,6 +493,74 @@ export async function myCommand(options: CommandOptions = {}) {
|
|
|
462
493
|
- Pre-commit hook: `scripts/pre-commit-console-check.sh`
|
|
463
494
|
- See: `.specweave/increments/0046-console-elimination/` for migration pattern
|
|
464
495
|
|
|
496
|
+
### 8a. NEVER Use `fs-extra` (Native fs Migration)
|
|
497
|
+
|
|
498
|
+
**Rule**: ALL code MUST use native Node.js `fs` module, NEVER `fs-extra`.
|
|
499
|
+
|
|
500
|
+
**Why**: `fs-extra` causes hook failures when not installed. Native fs is faster, smaller, and always available.
|
|
501
|
+
|
|
502
|
+
**Migration completed**: 2025-11-20 - All hooks converted to native fs
|
|
503
|
+
|
|
504
|
+
**Correct usage**:
|
|
505
|
+
```typescript
|
|
506
|
+
// ✅ CORRECT - Native fs (sync operations)
|
|
507
|
+
import { existsSync, readFileSync, statSync } from 'fs';
|
|
508
|
+
|
|
509
|
+
if (existsSync(configPath)) {
|
|
510
|
+
const content = readFileSync(configPath, 'utf-8');
|
|
511
|
+
const stats = statSync(configPath);
|
|
512
|
+
}
|
|
513
|
+
```
|
|
514
|
+
|
|
515
|
+
```typescript
|
|
516
|
+
// ✅ CORRECT - Native fs (async operations)
|
|
517
|
+
import { promises as fs } from 'fs';
|
|
518
|
+
|
|
519
|
+
const content = await fs.readFile(configPath, 'utf-8');
|
|
520
|
+
await fs.mkdir(dir, { recursive: true });
|
|
521
|
+
await fs.writeFile(filePath, content, 'utf-8');
|
|
522
|
+
```
|
|
523
|
+
|
|
524
|
+
```typescript
|
|
525
|
+
// ✅ CORRECT - Custom utilities (from utils/fs-native.js)
|
|
526
|
+
import { mkdirpSync, writeJsonSync, readJsonSync } from '../utils/fs-native.js';
|
|
527
|
+
|
|
528
|
+
mkdirpSync(dir); // Create directory recursively
|
|
529
|
+
writeJsonSync(path, data); // Write JSON file
|
|
530
|
+
const config = readJsonSync(configPath); // Read JSON file
|
|
531
|
+
```
|
|
532
|
+
|
|
533
|
+
**Migration guide (fs-extra → native fs)**:
|
|
534
|
+
```typescript
|
|
535
|
+
// ❌ WRONG (fs-extra)
|
|
536
|
+
import fs from 'fs-extra';
|
|
537
|
+
|
|
538
|
+
fs.existsSync(path); → existsSync(path)
|
|
539
|
+
fs.readFileSync(path, 'utf-8'); → readFileSync(path, 'utf-8')
|
|
540
|
+
fs.statSync(path); → statSync(path)
|
|
541
|
+
await fs.readFile(path, 'utf-8'); → await fs.readFile(path, 'utf-8')
|
|
542
|
+
await fs.ensureDir(dir); → await fs.mkdir(dir, { recursive: true })
|
|
543
|
+
OR mkdirpSync(dir) for sync
|
|
544
|
+
await fs.writeFile(path, content); → await fs.writeFile(path, content, 'utf-8')
|
|
545
|
+
fs.removeSync(path); → removeSync(path) from fs-native.js
|
|
546
|
+
await fs.copy(src, dest); → await fs.cp(src, dest, { recursive: true })
|
|
547
|
+
```
|
|
548
|
+
|
|
549
|
+
**Prevention**:
|
|
550
|
+
1. **Pre-commit hook**: `scripts/pre-commit-fs-extra-check.sh` blocks fs-extra imports
|
|
551
|
+
2. **Installation**: Hook installed automatically via `bash scripts/install-git-hooks.sh`
|
|
552
|
+
3. **Legacy marker**: Add `// legacy fs-extra` comment to bypass check (temporary only)
|
|
553
|
+
|
|
554
|
+
**Testing**:
|
|
555
|
+
```bash
|
|
556
|
+
# Verify no fs-extra in hooks
|
|
557
|
+
grep -r "from 'fs-extra'" plugins/*/lib/hooks/*.js
|
|
558
|
+
|
|
559
|
+
# Should return nothing (empty output)
|
|
560
|
+
```
|
|
561
|
+
|
|
562
|
+
**Incident Reference**: 2025-11-20 - Hook failures due to fs-extra dependency. All hooks converted to native fs. Pre-commit hook added to prevent regression.
|
|
563
|
+
|
|
465
564
|
### 9. Coding Standards
|
|
466
565
|
|
|
467
566
|
**Full standards**: `.specweave/docs/internal/governance/coding-standards.md`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-story-issue-builder.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/user-story-issue-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA+BH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAC,CAAS;gBAGtB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;
|
|
1
|
+
{"version":3,"file":"user-story-issue-builder.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/user-story-issue-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA+BH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAC,CAAS;gBAGtB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IA4B7D;;;;;;;;OAQG;IACG,cAAc,IAAI,OAAO,CAAC;QAC9B,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAiDF;;OAEG;YACW,wBAAwB;IAWtC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAmBjC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAqDjC;;;;;;;OAOG;YACW,YAAY;IAsC1B;;;;OAIG;YACW,kBAAkB;IAyFhC;;OAEG;IACH,OAAO,CAAC,SAAS;IA6KjB;;OAEG;IACH,OAAO,CAAC,WAAW;IAqBnB;;OAEG;IACH,OAAO,CAAC,UAAU;CAGnB"}
|
|
@@ -19,6 +19,18 @@ import * as yaml from 'yaml';
|
|
|
19
19
|
import { IssueStateManager } from './IssueStateManager.js';
|
|
20
20
|
export class UserStoryIssueBuilder {
|
|
21
21
|
constructor(userStoryPath, projectRoot, featureId, repoInfo) {
|
|
22
|
+
// ✅ VALIDATION: Ensure featureId is provided and has correct format
|
|
23
|
+
if (!featureId || featureId.trim() === '') {
|
|
24
|
+
throw new Error(`UserStoryIssueBuilder: featureId is required but was empty.\n` +
|
|
25
|
+
`This prevents incorrect issue titles like [undefined][US-XXX] or [SP-US-XXX].\n` +
|
|
26
|
+
`Provide the correct Feature ID (e.g., "FS-047") when constructing this builder.`);
|
|
27
|
+
}
|
|
28
|
+
// ✅ VALIDATION: Ensure featureId matches expected pattern (FS-XXX)
|
|
29
|
+
if (!/^FS-\d{3}$/.test(featureId)) {
|
|
30
|
+
throw new Error(`UserStoryIssueBuilder: Invalid featureId format "${featureId}".\n` +
|
|
31
|
+
`Expected format: FS-XXX (e.g., "FS-047", "FS-123").\n` +
|
|
32
|
+
`This prevents incorrect issue titles like [SP-US-XXX] or [${featureId}][US-XXX].`);
|
|
33
|
+
}
|
|
22
34
|
this.userStoryPath = userStoryPath;
|
|
23
35
|
this.projectRoot = projectRoot;
|
|
24
36
|
this.featureId = featureId;
|
|
@@ -45,7 +57,19 @@ export class UserStoryIssueBuilder {
|
|
|
45
57
|
const acceptanceCriteria = this.extractAcceptanceCriteria(bodyContent);
|
|
46
58
|
const tasks = await this.extractTasks(bodyContent, frontmatter.id);
|
|
47
59
|
// 3. Build issue title
|
|
60
|
+
// ✅ VALIDATION: Double-check title format before returning
|
|
61
|
+
// Expected format: [FS-XXX][US-YYY] Title
|
|
62
|
+
// This prevents issues like [SP-US-XXX] or [undefined][US-XXX]
|
|
48
63
|
const title = `[${this.featureId}][${frontmatter.id}] ${frontmatter.title}`;
|
|
64
|
+
// ✅ SAFETY CHECK: Ensure title matches expected pattern
|
|
65
|
+
const titlePattern = /^\[FS-\d{3}\]\[US-\d{3}\] .+$/;
|
|
66
|
+
if (!titlePattern.test(title)) {
|
|
67
|
+
throw new Error(`Generated issue title has incorrect format: "${title}"\n` +
|
|
68
|
+
`Expected: [FS-XXX][US-YYY] Title\n` +
|
|
69
|
+
`This indicates a bug in UserStoryIssueBuilder or invalid frontmatter.\n` +
|
|
70
|
+
`Feature ID: ${this.featureId}\n` +
|
|
71
|
+
`User Story ID: ${frontmatter.id}`);
|
|
72
|
+
}
|
|
49
73
|
// 4. Build issue body
|
|
50
74
|
const body = this.buildBody({
|
|
51
75
|
frontmatter,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-story-issue-builder.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/user-story-issue-builder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"user-story-issue-builder.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/user-story-issue-builder.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "specweave",
|
|
3
|
-
"version": "0.23.
|
|
3
|
+
"version": "0.23.5",
|
|
4
4
|
"description": "Spec-driven development framework for Claude Code. AI-native workflow with living documentation, intelligent agents, and multilingual support (9 languages). Enterprise-grade traceability with permanent specs and temporary increments.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import fs from "fs
|
|
2
|
+
import { existsSync, promises as fs } from "fs";
|
|
3
3
|
import path from "path";
|
|
4
4
|
async function updateTasksMd(incrementId) {
|
|
5
5
|
try {
|
|
6
6
|
console.log(`
|
|
7
7
|
\u{1F504} Updating tasks.md for increment: ${incrementId}`);
|
|
8
8
|
const incrementDir = path.join(process.cwd(), ".specweave", "increments", incrementId);
|
|
9
|
-
if (!
|
|
9
|
+
if (!existsSync(incrementDir)) {
|
|
10
10
|
console.error(`\u274C Increment directory not found: ${incrementDir}`);
|
|
11
11
|
process.exit(1);
|
|
12
12
|
}
|
|
13
13
|
const tasksPath = path.join(incrementDir, "tasks.md");
|
|
14
|
-
if (!
|
|
14
|
+
if (!existsSync(tasksPath)) {
|
|
15
15
|
console.error(`\u274C tasks.md not found: ${tasksPath}`);
|
|
16
16
|
process.exit(1);
|
|
17
17
|
}
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
* @version 1.0.0
|
|
24
24
|
*/
|
|
25
25
|
|
|
26
|
-
import fs from 'fs
|
|
26
|
+
import { existsSync, promises as fs } from 'fs';
|
|
27
27
|
import path from 'path';
|
|
28
28
|
|
|
29
29
|
interface TaskMatch {
|
|
@@ -48,13 +48,13 @@ async function updateTasksMd(incrementId: string): Promise<void> {
|
|
|
48
48
|
|
|
49
49
|
// 1. Validate increment exists
|
|
50
50
|
const incrementDir = path.join(process.cwd(), '.specweave', 'increments', incrementId);
|
|
51
|
-
if (!
|
|
51
|
+
if (!existsSync(incrementDir)) {
|
|
52
52
|
console.error(`❌ Increment directory not found: ${incrementDir}`);
|
|
53
53
|
process.exit(1);
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
const tasksPath = path.join(incrementDir, 'tasks.md');
|
|
57
|
-
if (!
|
|
57
|
+
if (!existsSync(tasksPath)) {
|
|
58
58
|
console.error(`❌ tasks.md not found: ${tasksPath}`);
|
|
59
59
|
process.exit(1);
|
|
60
60
|
}
|
|
@@ -5,6 +5,20 @@ import * as yaml from "yaml";
|
|
|
5
5
|
import { IssueStateManager } from "./IssueStateManager.js";
|
|
6
6
|
class UserStoryIssueBuilder {
|
|
7
7
|
constructor(userStoryPath, projectRoot, featureId, repoInfo) {
|
|
8
|
+
if (!featureId || featureId.trim() === "") {
|
|
9
|
+
throw new Error(
|
|
10
|
+
`UserStoryIssueBuilder: featureId is required but was empty.
|
|
11
|
+
This prevents incorrect issue titles like [undefined][US-XXX] or [SP-US-XXX].
|
|
12
|
+
Provide the correct Feature ID (e.g., "FS-047") when constructing this builder.`
|
|
13
|
+
);
|
|
14
|
+
}
|
|
15
|
+
if (!/^FS-\d{3}$/.test(featureId)) {
|
|
16
|
+
throw new Error(
|
|
17
|
+
`UserStoryIssueBuilder: Invalid featureId format "${featureId}".
|
|
18
|
+
Expected format: FS-XXX (e.g., "FS-047", "FS-123").
|
|
19
|
+
This prevents incorrect issue titles like [SP-US-XXX] or [${featureId}][US-XXX].`
|
|
20
|
+
);
|
|
21
|
+
}
|
|
8
22
|
this.userStoryPath = userStoryPath;
|
|
9
23
|
this.projectRoot = projectRoot;
|
|
10
24
|
this.featureId = featureId;
|
|
@@ -29,6 +43,16 @@ class UserStoryIssueBuilder {
|
|
|
29
43
|
const acceptanceCriteria = this.extractAcceptanceCriteria(bodyContent);
|
|
30
44
|
const tasks = await this.extractTasks(bodyContent, frontmatter.id);
|
|
31
45
|
const title = `[${this.featureId}][${frontmatter.id}] ${frontmatter.title}`;
|
|
46
|
+
const titlePattern = /^\[FS-\d{3}\]\[US-\d{3}\] .+$/;
|
|
47
|
+
if (!titlePattern.test(title)) {
|
|
48
|
+
throw new Error(
|
|
49
|
+
`Generated issue title has incorrect format: "${title}"
|
|
50
|
+
Expected: [FS-XXX][US-YYY] Title
|
|
51
|
+
This indicates a bug in UserStoryIssueBuilder or invalid frontmatter.
|
|
52
|
+
Feature ID: ${this.featureId}
|
|
53
|
+
User Story ID: ${frontmatter.id}`
|
|
54
|
+
);
|
|
55
|
+
}
|
|
32
56
|
const body = this.buildBody({
|
|
33
57
|
frontmatter,
|
|
34
58
|
userStoryStatement,
|
|
@@ -56,6 +56,24 @@ export class UserStoryIssueBuilder {
|
|
|
56
56
|
featureId: string,
|
|
57
57
|
repoInfo?: { owner: string; repo: string; branch?: string }
|
|
58
58
|
) {
|
|
59
|
+
// ✅ VALIDATION: Ensure featureId is provided and has correct format
|
|
60
|
+
if (!featureId || featureId.trim() === '') {
|
|
61
|
+
throw new Error(
|
|
62
|
+
`UserStoryIssueBuilder: featureId is required but was empty.\n` +
|
|
63
|
+
`This prevents incorrect issue titles like [undefined][US-XXX] or [SP-US-XXX].\n` +
|
|
64
|
+
`Provide the correct Feature ID (e.g., "FS-047") when constructing this builder.`
|
|
65
|
+
);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// ✅ VALIDATION: Ensure featureId matches expected pattern (FS-XXX)
|
|
69
|
+
if (!/^FS-\d{3}$/.test(featureId)) {
|
|
70
|
+
throw new Error(
|
|
71
|
+
`UserStoryIssueBuilder: Invalid featureId format "${featureId}".\n` +
|
|
72
|
+
`Expected format: FS-XXX (e.g., "FS-047", "FS-123").\n` +
|
|
73
|
+
`This prevents incorrect issue titles like [SP-US-XXX] or [${featureId}][US-XXX].`
|
|
74
|
+
);
|
|
75
|
+
}
|
|
76
|
+
|
|
59
77
|
this.userStoryPath = userStoryPath;
|
|
60
78
|
this.projectRoot = projectRoot;
|
|
61
79
|
this.featureId = featureId;
|
|
@@ -91,8 +109,23 @@ export class UserStoryIssueBuilder {
|
|
|
91
109
|
const tasks = await this.extractTasks(bodyContent, frontmatter.id);
|
|
92
110
|
|
|
93
111
|
// 3. Build issue title
|
|
112
|
+
// ✅ VALIDATION: Double-check title format before returning
|
|
113
|
+
// Expected format: [FS-XXX][US-YYY] Title
|
|
114
|
+
// This prevents issues like [SP-US-XXX] or [undefined][US-XXX]
|
|
94
115
|
const title = `[${this.featureId}][${frontmatter.id}] ${frontmatter.title}`;
|
|
95
116
|
|
|
117
|
+
// ✅ SAFETY CHECK: Ensure title matches expected pattern
|
|
118
|
+
const titlePattern = /^\[FS-\d{3}\]\[US-\d{3}\] .+$/;
|
|
119
|
+
if (!titlePattern.test(title)) {
|
|
120
|
+
throw new Error(
|
|
121
|
+
`Generated issue title has incorrect format: "${title}"\n` +
|
|
122
|
+
`Expected: [FS-XXX][US-YYY] Title\n` +
|
|
123
|
+
`This indicates a bug in UserStoryIssueBuilder or invalid frontmatter.\n` +
|
|
124
|
+
`Feature ID: ${this.featureId}\n` +
|
|
125
|
+
`User Story ID: ${frontmatter.id}`
|
|
126
|
+
);
|
|
127
|
+
}
|
|
128
|
+
|
|
96
129
|
// 4. Build issue body
|
|
97
130
|
const body = this.buildBody({
|
|
98
131
|
frontmatter,
|
|
@@ -4,6 +4,19 @@ This project uses **SpecWeave** - a specification-first AI development framework
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
+
## 🚨 Meta-Rule: Thinking-Before-Acting (For Claude)
|
|
8
|
+
|
|
9
|
+
**If you identify a dependency in your reasoning, satisfy it BEFORE attempting the dependent operation.**
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
❌ Anti-pattern: node script.js → Error: file not compiled → npm run build
|
|
13
|
+
✅ Correct: npm run build → node script.js → Success
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
**Why**: Avoids predictable failures when you already know what needs to happen first.
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
7
20
|
## 🎯 Getting Started
|
|
8
21
|
|
|
9
22
|
**Initial Increment Created**: `0001-project-setup` (`.specweave/increments/0001-project-setup/`)
|