@specpow/framework 0.4.8 → 0.5.0

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/CHANGELOG.md CHANGED
@@ -5,6 +5,61 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.5.0] - 2026-08-20
9
+
10
+ ### 🔄 归档引擎名称匹配路由(Breaking Fix)
11
+
12
+ - **findSpecMutations 从路径匹配改为名称匹配**
13
+ - File: `src/core/archive/engine.ts`
14
+ - 问题: propose 生成的 delta 文件路径 (`specs/<capability>/spec.md`) 永远无法匹配主规范路径
15
+ - 修复: 新增 `buildSpecNameIndex()` 扫描主规范提取需求名称索引
16
+ - 修复: 新增 `routeDeltaOperations()` 按需求名称路由操作到目标文件
17
+ - 修复: 新增 `buildSubDeltaContent()` 为每个目标文件构建子 delta
18
+ - 修复: RENAMED 处理后自动将新名称加入索引,支持后续 MODIFIED/REMOVED 按新名称查找
19
+
20
+ - **精确退休判断**
21
+ - File: `src/core/archive/engine.ts`
22
+ - 问题: 旧逻辑 "delta 文件只含 REMOVED → 整个文件 retire" 会错误退休未被移除的需求
23
+ - 修复: 增加 `fileReqCount` 索引,只有当 REMOVED 覆盖目标文件全部需求时才 retire
24
+ - 部分退休: 仅标记被移除的需求为 `[RETIRED]`,其他需求保留
25
+
26
+ ## [0.4.9] - 2026-08-20
27
+
28
+ ### 🐛 归档引擎 Delta 检测正则修复
29
+
30
+ - **BUG-5 findSpecMutations 检测正则强制冒号**
31
+ - File: `src/core/archive/engine.ts`
32
+ - Fix: `/##\s+REMOVED:/i` → `/##\s+REMOVED[:\s]/i`(冒号可选),与 delta-parser 一致
33
+ - Fix: 新增 `hasRenamed` 检测,支持纯 RENAMED 操作触发合并
34
+
35
+ ## [0.4.8] - 2026-08-20
36
+
37
+ ### 🐛 Delta Spec 系统修复 — 4 个 Bug + 1 个架构修复
38
+
39
+ - **GAP-6 propose 阶段 AI 无法看到已有主规范**
40
+ - Files: `src/commands/propose.ts`, `src/core/templates/index.ts`
41
+ - Fix: propose 扫描 `.specpow/openspec/specs/` 注入到 specs 工件上下文
42
+
43
+ - **BUG-1 Scenario 截断 Requirement 块**
44
+ - Files: `src/core/archive/delta-parser.ts`, `src/core/archive/delta-merger.ts`
45
+ - Fix: 添加 `(?!Scenario:\s*)` 负向前瞻,防止 `### Scenario:` 终止 `## Requirement:` 块提取
46
+
47
+ - **BUG-2 --force 无法覆盖已存在的 ADDED 块**
48
+ - File: `src/core/archive/delta-merger.ts`
49
+ - Fix: 修正 ADDED 阶段逻辑:identical→跳过 / force→替换 / 否则→冲突
50
+
51
+ - **BUG-2b 幂等性比较失效(body vs fullBlock)**
52
+ - File: `src/core/archive/delta-merger.ts`
53
+ - Fix: 新增 `extractBlockBody()` 辅助函数,MODIFIED 和 ADDED 阶段用 body 比较
54
+
55
+ - **BUG-3 [RETIRED] 重复叠加 + 无法查找已退休块**
56
+ - Files: `src/core/archive/delta-parser.ts`, `src/core/archive/delta-merger.ts`
57
+ - Fix: 所有 header 匹配正则支持 `[RETIRED]` 前缀(兼容新旧格式),REMOVED 阶段添加幂等检查
58
+
59
+ - **ISSUE-4 formatBlock 固定 ## 级别**
60
+ - File: `src/core/archive/delta-merger.ts`
61
+ - Fix: formatBlock 接受 headerLevel 参数,MODIFIED 从现有块检测级别,ADDED 默认 ##
62
+
8
63
  ## [0.3.1] - 2026-08-18
9
64
 
10
65
  ### 🐛 Comprehensive Bug Fix Release — 21 Issues Resolved
@@ -94,10 +94,37 @@ export declare class ArchiveEngine {
94
94
  /**
95
95
  * 发现 spec 变更
96
96
  *
97
- * 扫描 change/specs/ 目录,与主 specs/ 目录比较,
98
- * 使用 ADDED/MODIFIED/REMOVED 标记决定处理方式
97
+ * 扫描 change/specs/ 目录中的 Delta 文件,按需求名称路由到对应的主规范文件。
98
+ *
99
+ * 路由策略:
100
+ * 1. 构建主规范名称索引:{ requirementName → specFileName }
101
+ * 2. 解析 Delta 提取所有需求名称
102
+ * 3. 按名称匹配路由到目标主规范文件
103
+ * 4. ADDED 的新需求追加到主要目标文件
104
+ * 5. 无法路由的操作按原始路径写入
99
105
  */
100
106
  private findSpecMutations;
107
+ /**
108
+ * 构建主规范名称索引
109
+ *
110
+ * 扫描 specs/ 目录下所有 .md 文件,提取 Requirement 名称,
111
+ * 返回 { requirementName → specFileName } 映射和每文件需求计数。
112
+ */
113
+ private buildSpecNameIndex;
114
+ /**
115
+ * 路由 Delta 操作到目标主规范文件
116
+ *
117
+ * 根据需求名称匹配,将每个操作分配到对应的目标文件。
118
+ * 返回 Map<targetSpecFileName, DeltaOperation[]>
119
+ */
120
+ private routeDeltaOperations;
121
+ /**
122
+ * 从完整 Delta 内容中提取指定操作的子集,构建子 Delta
123
+ *
124
+ * 解析完整 delta,只保留目标操作对应的需求块,重建 delta 文本。
125
+ * 这样 mergeDeltaSpec 只会处理与该目标相关的操作。
126
+ */
127
+ private buildSubDeltaContent;
101
128
  /**
102
129
  * 合并 delta 到已有内容
103
130
  *
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/core/archive/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAWH,MAAM,WAAW,cAAc;IAC7B,cAAc;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,iBAAiB;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW;IACX,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEtD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AA+FD,qBAAa,aAAa;IACxB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAgB;gBAEpB,WAAW,EAAE,MAAM;IAI/B;;;;;;;;;;;;;OAaG;IACG,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IAwKvF;;;;OAIG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAsBjG;;;;OAIG;IACG,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiClD;;OAEG;IACH,YAAY,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,EAAE;IA4BpE;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IA2DzB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,UAAU;IAoBlB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0B/B;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAYvB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;CAqCxB"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/core/archive/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAYH,MAAM,WAAW,cAAc;IAC7B,cAAc;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,iBAAiB;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW;IACX,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEtD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AA+FD,qBAAa,aAAa;IACxB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAgB;gBAEpB,WAAW,EAAE,MAAM;IAI/B;;;;;;;;;;;;;OAaG;IACG,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IAwKvF;;;;OAIG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAsBjG;;;;OAIG;IACG,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiClD;;OAEG;IACH,YAAY,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,EAAE;IA4BpE;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,iBAAiB;IAgFzB;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAgC1B;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IA6D5B;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IA2D5B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,UAAU;IAoBlB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0B/B;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAYvB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;CAqCxB"}
@@ -16,6 +16,7 @@ import { existsSync, readFileSync, writeFileSync, mkdirSync, readdirSync, rename
16
16
  import { join, relative, dirname } from 'path';
17
17
  import { randomBytes } from 'crypto';
18
18
  import { mergeDeltaSpec } from './delta-merger.js';
19
+ import { parseDelta } from './delta-parser.js';
19
20
  // ============================================================
20
21
  // 常量
21
22
  // ============================================================
@@ -360,8 +361,14 @@ export class ArchiveEngine {
360
361
  /**
361
362
  * 发现 spec 变更
362
363
  *
363
- * 扫描 change/specs/ 目录,与主 specs/ 目录比较,
364
- * 使用 ADDED/MODIFIED/REMOVED 标记决定处理方式
364
+ * 扫描 change/specs/ 目录中的 Delta 文件,按需求名称路由到对应的主规范文件。
365
+ *
366
+ * 路由策略:
367
+ * 1. 构建主规范名称索引:{ requirementName → specFileName }
368
+ * 2. 解析 Delta 提取所有需求名称
369
+ * 3. 按名称匹配路由到目标主规范文件
370
+ * 4. ADDED 的新需求追加到主要目标文件
371
+ * 5. 无法路由的操作按原始路径写入
365
372
  */
366
373
  findSpecMutations(changeDir, mainSpecsDir) {
367
374
  const changeSpecsDir = join(changeDir, 'specs');
@@ -369,36 +376,60 @@ export class ArchiveEngine {
369
376
  if (!existsSync(changeSpecsDir)) {
370
377
  return mutations;
371
378
  }
379
+ // 构建主规范名称索引
380
+ const { nameToFile: specNameIndex, fileReqCount } = this.buildSpecNameIndex(mainSpecsDir);
372
381
  // 读取变更中的 spec 文件
373
382
  const deltaFiles = readAllMarkdown(changeSpecsDir);
374
383
  for (const relPath of deltaFiles) {
375
384
  const sourcePath = join(changeSpecsDir, relPath);
376
- const targetPath = join(mainSpecsDir, relPath);
377
385
  const content = readFileSync(sourcePath, 'utf-8');
378
- // 解析 delta 标记
379
- const hasRemoved = /##\s+REMOVED:/i.test(content);
380
- const hasAdded = /##\s+ADDED:/i.test(content);
381
- const hasModified = /##\s+MODIFIED:/i.test(content);
382
- if (hasRemoved && !hasAdded && !hasModified) {
383
- // 纯退休标记
384
- mutations.push({
385
- source: sourcePath,
386
- target: targetPath,
387
- outcome: 'retire',
388
- content: '',
389
- });
390
- }
391
- else if (existsSync(targetPath) && (hasAdded || hasModified)) {
392
- // 修改现有 spec
393
- mutations.push({
394
- source: sourcePath,
395
- target: targetPath,
396
- outcome: 'write',
397
- content: this.mergeDelta(content, readFileSync(targetPath, 'utf-8')),
398
- });
386
+ // 解析 delta 获取所有操作和需求名称
387
+ const delta = parseDelta(content);
388
+ // 按需求名称路由到目标主规范文件
389
+ const routing = this.routeDeltaOperations(delta, specNameIndex);
390
+ // 为每个目标文件生成 mutation
391
+ for (const [targetRelPath, ops] of routing.entries()) {
392
+ const targetPath = join(mainSpecsDir, targetRelPath);
393
+ // 判断是否完全退休:所有操作都是 REMOVED,且覆盖目标文件的全部需求
394
+ const removedOps = ops.filter(op => op.type === 'removed');
395
+ const totalReqCount = fileReqCount.get(targetRelPath) ?? 0;
396
+ const fullRetire = removedOps.length > 0
397
+ && removedOps.length === ops.length
398
+ && removedOps.length >= totalReqCount
399
+ && existsSync(targetPath);
400
+ if (fullRetire) {
401
+ // 完全退休:直接重命名为 .retired
402
+ mutations.push({
403
+ source: sourcePath,
404
+ target: targetPath,
405
+ outcome: 'retire',
406
+ content: '',
407
+ });
408
+ }
409
+ else if (existsSync(targetPath)) {
410
+ // 合并到已有主规范
411
+ const subDelta = this.buildSubDeltaContent(content, ops);
412
+ mutations.push({
413
+ source: sourcePath,
414
+ target: targetPath,
415
+ outcome: 'write',
416
+ content: this.mergeDelta(subDelta, readFileSync(targetPath, 'utf-8')),
417
+ });
418
+ }
419
+ else {
420
+ // 新主规范文件
421
+ const subDelta = this.buildSubDeltaContent(content, ops);
422
+ mutations.push({
423
+ source: sourcePath,
424
+ target: targetPath,
425
+ outcome: 'write',
426
+ content: subDelta,
427
+ });
428
+ }
399
429
  }
400
- else if (!existsSync(targetPath) && (hasAdded || hasModified || hasRemoved)) {
401
- // spec(必须有 delta 标记才写入)
430
+ // 如果路由为空但有 delta 内容,按原路径写入(兜底)
431
+ if (routing.size === 0) {
432
+ const targetPath = join(mainSpecsDir, relPath);
402
433
  mutations.push({
403
434
  source: sourcePath,
404
435
  target: targetPath,
@@ -406,18 +437,151 @@ export class ArchiveEngine {
406
437
  content,
407
438
  });
408
439
  }
409
- else {
410
- // 无变更标记 → 跳过
411
- mutations.push({
412
- source: sourcePath,
413
- target: targetPath,
414
- outcome: 'skip',
415
- content,
416
- });
417
- }
418
440
  }
419
441
  return mutations;
420
442
  }
443
+ /**
444
+ * 构建主规范名称索引
445
+ *
446
+ * 扫描 specs/ 目录下所有 .md 文件,提取 Requirement 名称,
447
+ * 返回 { requirementName → specFileName } 映射和每文件需求计数。
448
+ */
449
+ buildSpecNameIndex(mainSpecsDir) {
450
+ const nameToFile = new Map();
451
+ const fileReqCount = new Map();
452
+ if (!existsSync(mainSpecsDir))
453
+ return { nameToFile, fileReqCount };
454
+ const specFiles = readAllMarkdown(mainSpecsDir);
455
+ for (const relPath of specFiles) {
456
+ const fullPath = join(mainSpecsDir, relPath);
457
+ const content = readFileSync(fullPath, 'utf-8');
458
+ let count = 0;
459
+ const lines = content.split('\n');
460
+ for (const line of lines) {
461
+ const match = line.match(/^(#{2,3})\s+(?:\[RETIRED\]\s+)?(?!Scenario:\s*)(?:Requirement:\s+)?(?:\[RETIRED\]\s+)?(.+)/i);
462
+ if (match) {
463
+ const name = match[2].trim();
464
+ count++;
465
+ if (name && !nameToFile.has(name)) {
466
+ nameToFile.set(name, relPath);
467
+ }
468
+ }
469
+ }
470
+ fileReqCount.set(relPath, count);
471
+ }
472
+ return { nameToFile, fileReqCount };
473
+ }
474
+ /**
475
+ * 路由 Delta 操作到目标主规范文件
476
+ *
477
+ * 根据需求名称匹配,将每个操作分配到对应的目标文件。
478
+ * 返回 Map<targetSpecFileName, DeltaOperation[]>
479
+ */
480
+ routeDeltaOperations(delta, specNameIndex) {
481
+ const routing = new Map();
482
+ const addToTarget = (target, op) => {
483
+ if (!routing.has(target))
484
+ routing.set(target, []);
485
+ routing.get(target).push(op);
486
+ };
487
+ // RENAMED: 用旧名称查找目标文件,并将新名称加入索引
488
+ for (const rename of delta.renamed) {
489
+ const target = specNameIndex.get(rename.oldName);
490
+ if (target) {
491
+ addToTarget(target, { type: 'renamed', name: rename.newName, oldName: rename.oldName });
492
+ // 将新名称加入索引,以便后续 MODIFIED/REMOVED 能按新名称找到同一文件
493
+ specNameIndex.set(rename.newName, target);
494
+ }
495
+ }
496
+ // MODIFIED: 用需求名称查找目标文件
497
+ for (const block of delta.modified) {
498
+ const target = specNameIndex.get(block.name);
499
+ if (target) {
500
+ addToTarget(target, { type: 'modified', name: block.name });
501
+ }
502
+ }
503
+ // REMOVED: 用需求名称查找目标文件
504
+ for (const block of delta.removed) {
505
+ const target = specNameIndex.get(block.name);
506
+ if (target) {
507
+ addToTarget(target, { type: 'removed', name: block.name });
508
+ }
509
+ }
510
+ // ADDED: 新需求 — 追加到主要目标文件(操作最多的文件)
511
+ if (delta.added.length > 0) {
512
+ let primaryTarget = '';
513
+ let maxOps = 0;
514
+ for (const [target, ops] of routing) {
515
+ if (ops.length > maxOps) {
516
+ maxOps = ops.length;
517
+ primaryTarget = target;
518
+ }
519
+ }
520
+ // 如果没有已路由的目标,用索引中第一个文件
521
+ if (!primaryTarget && specNameIndex.size > 0) {
522
+ primaryTarget = specNameIndex.values().next().value;
523
+ }
524
+ if (primaryTarget) {
525
+ for (const block of delta.added) {
526
+ addToTarget(primaryTarget, { type: 'added', name: block.name });
527
+ }
528
+ }
529
+ }
530
+ return routing;
531
+ }
532
+ /**
533
+ * 从完整 Delta 内容中提取指定操作的子集,构建子 Delta
534
+ *
535
+ * 解析完整 delta,只保留目标操作对应的需求块,重建 delta 文本。
536
+ * 这样 mergeDeltaSpec 只会处理与该目标相关的操作。
537
+ */
538
+ buildSubDeltaContent(fullDeltaContent, operations) {
539
+ const delta = parseDelta(fullDeltaContent);
540
+ const sections = [];
541
+ const opSet = new Set(operations.map(op => `${op.type}:${op.name}`));
542
+ const renameSet = new Set(operations.filter(op => op.type === 'renamed').map(op => `${op.oldName}:${op.name}`));
543
+ // RENAMED section
544
+ const renamedLines = [];
545
+ for (const rename of delta.renamed) {
546
+ if (renameSet.has(`${rename.oldName}:${rename.newName}`)) {
547
+ renamedLines.push(`### ${rename.oldName} → ${rename.newName}`);
548
+ }
549
+ }
550
+ if (renamedLines.length > 0) {
551
+ sections.push('## RENAMED\n\n' + renamedLines.join('\n\n'));
552
+ }
553
+ // REMOVED section
554
+ const removedLines = [];
555
+ for (const block of delta.removed) {
556
+ if (opSet.has(`removed:${block.name}`)) {
557
+ removedLines.push(`### Requirement: ${block.name}\n\n${block.content}`);
558
+ }
559
+ }
560
+ if (removedLines.length > 0) {
561
+ sections.push('## REMOVED\n\n' + removedLines.join('\n\n'));
562
+ }
563
+ // MODIFIED section
564
+ const modifiedLines = [];
565
+ for (const block of delta.modified) {
566
+ if (opSet.has(`modified:${block.name}`)) {
567
+ modifiedLines.push(`### Requirement: ${block.name}\n\n${block.content}`);
568
+ }
569
+ }
570
+ if (modifiedLines.length > 0) {
571
+ sections.push('## MODIFIED\n\n' + modifiedLines.join('\n\n'));
572
+ }
573
+ // ADDED section
574
+ const addedLines = [];
575
+ for (const block of delta.added) {
576
+ if (opSet.has(`added:${block.name}`)) {
577
+ addedLines.push(`### Requirement: ${block.name}\n\n${block.content}`);
578
+ }
579
+ }
580
+ if (addedLines.length > 0) {
581
+ sections.push('## ADDED\n\n' + addedLines.join('\n\n'));
582
+ }
583
+ return sections.join('\n\n');
584
+ }
421
585
  /**
422
586
  * 合并 delta 到已有内容
423
587
  *
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/core/archive/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/core/archive/engine.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@specpow/framework",
3
- "version": "0.4.8",
3
+ "version": "0.5.0",
4
4
  "description": "Spec-Powered AI Development Framework - 融合 OpenSpec 规范驱动 + Superpowers 执行引擎的企业级 AI 辅助编程框架",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",