@winspan/claude-forge 1.17.3 → 1.18.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.
Files changed (113) hide show
  1. package/README.md +20 -20
  2. package/dist/autopilot/quality-gate.d.ts +2 -0
  3. package/dist/autopilot/quality-gate.d.ts.map +1 -1
  4. package/dist/autopilot/quality-gate.js +92 -89
  5. package/dist/autopilot/quality-gate.js.map +1 -1
  6. package/dist/backup/index.d.ts +2 -2
  7. package/dist/backup/index.d.ts.map +1 -1
  8. package/dist/backup/index.js +8 -6
  9. package/dist/backup/index.js.map +1 -1
  10. package/dist/cli/commands/claudemd.d.ts.map +1 -1
  11. package/dist/cli/commands/claudemd.js +11 -10
  12. package/dist/cli/commands/claudemd.js.map +1 -1
  13. package/dist/cli/commands/convention.d.ts.map +1 -1
  14. package/dist/cli/commands/convention.js +9 -8
  15. package/dist/cli/commands/convention.js.map +1 -1
  16. package/dist/cli/commands/distill.d.ts.map +1 -1
  17. package/dist/cli/commands/distill.js +2 -1
  18. package/dist/cli/commands/distill.js.map +1 -1
  19. package/dist/cli/commands/init/index.d.ts.map +1 -1
  20. package/dist/cli/commands/init/index.js +5 -3
  21. package/dist/cli/commands/init/index.js.map +1 -1
  22. package/dist/cli/commands/init/project-doctor.d.ts.map +1 -1
  23. package/dist/cli/commands/init/project-doctor.js +2 -1
  24. package/dist/cli/commands/init/project-doctor.js.map +1 -1
  25. package/dist/cli/commands/pattern.d.ts.map +1 -1
  26. package/dist/cli/commands/pattern.js +2 -1
  27. package/dist/cli/commands/pattern.js.map +1 -1
  28. package/dist/cli/commands/query.d.ts.map +1 -1
  29. package/dist/cli/commands/query.js +2 -1
  30. package/dist/cli/commands/query.js.map +1 -1
  31. package/dist/cli/commands/web.d.ts.map +1 -1
  32. package/dist/cli/commands/web.js +10 -4
  33. package/dist/cli/commands/web.js.map +1 -1
  34. package/dist/constants.d.ts +4 -0
  35. package/dist/constants.d.ts.map +1 -1
  36. package/dist/constants.js +4 -0
  37. package/dist/constants.js.map +1 -1
  38. package/dist/daemon/handlers/conversational-config-handler.d.ts.map +1 -1
  39. package/dist/daemon/handlers/conversational-config-handler.js +3 -1
  40. package/dist/daemon/handlers/conversational-config-handler.js.map +1 -1
  41. package/dist/distill/writer.d.ts.map +1 -1
  42. package/dist/distill/writer.js +4 -3
  43. package/dist/distill/writer.js.map +1 -1
  44. package/dist/pipeline/aggregator.d.ts +3 -2
  45. package/dist/pipeline/aggregator.d.ts.map +1 -1
  46. package/dist/pipeline/aggregator.js.map +1 -1
  47. package/dist/pipeline/event-sourced-engine.js +1 -1
  48. package/dist/pipeline/event-sourced-engine.js.map +1 -1
  49. package/dist/pipeline/event-store.js.map +1 -1
  50. package/dist/pipeline/events.d.ts +4 -0
  51. package/dist/pipeline/events.d.ts.map +1 -1
  52. package/dist/pipeline/index.d.ts.map +1 -1
  53. package/dist/pipeline/index.js +11 -12
  54. package/dist/pipeline/index.js.map +1 -1
  55. package/dist/pipeline/optimized-aggregator.js.map +1 -1
  56. package/dist/pipeline/phase-manager.d.ts.map +1 -1
  57. package/dist/pipeline/phase-manager.js +17 -11
  58. package/dist/pipeline/phase-manager.js.map +1 -1
  59. package/dist/pipeline/progress-tracker.js.map +1 -1
  60. package/dist/pipeline/state-machine-types.d.ts +2 -1
  61. package/dist/pipeline/state-machine-types.d.ts.map +1 -1
  62. package/dist/pipeline/state-machine-types.js +0 -5
  63. package/dist/pipeline/state-machine-types.js.map +1 -1
  64. package/dist/pipeline/state-machine.d.ts.map +1 -1
  65. package/dist/pipeline/state-machine.js +7 -4
  66. package/dist/pipeline/state-machine.js.map +1 -1
  67. package/dist/pipeline/state-query.d.ts.map +1 -1
  68. package/dist/pipeline/state-query.js +29 -8
  69. package/dist/pipeline/state-query.js.map +1 -1
  70. package/dist/skill-registry/project-learner.d.ts.map +1 -1
  71. package/dist/skill-registry/project-learner.js +2 -2
  72. package/dist/skill-registry/project-learner.js.map +1 -1
  73. package/dist/storage/index.d.ts +1 -0
  74. package/dist/storage/index.d.ts.map +1 -1
  75. package/dist/storage/repositories/event-repository.d.ts.map +1 -1
  76. package/dist/storage/repositories/event-repository.js +5 -0
  77. package/dist/storage/repositories/event-repository.js.map +1 -1
  78. package/dist/storage/repositories/maintenance-repository.d.ts.map +1 -1
  79. package/dist/storage/repositories/maintenance-repository.js +4 -8
  80. package/dist/storage/repositories/maintenance-repository.js.map +1 -1
  81. package/dist/storage/repositories/task-repository.d.ts.map +1 -1
  82. package/dist/storage/repositories/task-repository.js +8 -3
  83. package/dist/storage/repositories/task-repository.js.map +1 -1
  84. package/dist/storage/sqlite.d.ts.map +1 -1
  85. package/dist/storage/sqlite.js +11 -1
  86. package/dist/storage/sqlite.js.map +1 -1
  87. package/dist/web/middleware/auth.d.ts.map +1 -1
  88. package/dist/web/middleware/auth.js +9 -1
  89. package/dist/web/middleware/auth.js.map +1 -1
  90. package/dist/web/routes/config.d.ts.map +1 -1
  91. package/dist/web/routes/config.js +21 -10
  92. package/dist/web/routes/config.js.map +1 -1
  93. package/dist/web/routes/events.d.ts.map +1 -1
  94. package/dist/web/routes/events.js +2 -1
  95. package/dist/web/routes/events.js.map +1 -1
  96. package/dist/web/routes/knowledge.d.ts.map +1 -1
  97. package/dist/web/routes/knowledge.js +23 -0
  98. package/dist/web/routes/knowledge.js.map +1 -1
  99. package/dist/web/routes/logs.d.ts.map +1 -1
  100. package/dist/web/routes/logs.js +7 -6
  101. package/dist/web/routes/logs.js.map +1 -1
  102. package/dist/web/routes/projects.d.ts.map +1 -1
  103. package/dist/web/routes/projects.js +11 -0
  104. package/dist/web/routes/projects.js.map +1 -1
  105. package/dist/web/routes/stats.d.ts.map +1 -1
  106. package/dist/web/routes/stats.js +6 -0
  107. package/dist/web/routes/stats.js.map +1 -1
  108. package/dist/web-static/assets/index-B4-1Ik3H.css +1 -0
  109. package/dist/web-static/assets/index-BOM5M4nk.js +74 -0
  110. package/dist/web-static/index.html +2 -2
  111. package/package.json +3 -1
  112. package/dist/web-static/assets/index-BFIWA0KC.css +0 -2
  113. package/dist/web-static/assets/index-CotuLWcu.js +0 -65
package/README.md CHANGED
@@ -9,14 +9,14 @@ Claude Forge 是一个为 Claude Code 设计的智能编排引擎,通过透明
9
9
 
10
10
  ## ✨ 核心特性
11
11
 
12
- - 🎯 **智能意图识别** - 自动分析任务复杂度,决定执行策略(支持规则库匹配和 AI 推理) [x] 2026-04-24
13
- - 🔄 **Pipeline 编排** - 复杂任务自动拆分为多阶段流程(分析→设计→编码→测试→审查),支持纯事件溯源架构和状态机约束,确保状态一致性,daemon 启动时自动迁移历史数据 [x] 2026-04-21
14
- - 🛡️ **质量门禁** - 每个阶段自动 AI 审查,支持需求规格、安全性、代码质量、测试覆盖、性能等多维度检查,问题追踪和解决状态管理 [x] 2026-04-21
15
- - 📊 **Web 管理后台** - 实时监控会话、Pipeline、质量问题、知识图谱、项目管理、自定义规范管理、CLAUDE.md 管理(支持模块化查看和蒸馏压缩) [x] 2026-04-21
16
- - 🧠 **知识积累** - 自动提炼决策日志、时间线、项目规范,支持树索引和语义检索 [x] 2026-04-21
17
- - 🎨 **技能编排** - 根据意图自动匹配并注入最佳实践(TDD、重构、调试等),支持关键词映射和命中率统计 [x] 2026-04-21
18
- - 📈 **数据分析** - 成本统计、满意度趋势、ROI 分析,支持延迟追踪和 SLA 告警 [x] 2026-04-21
19
- - 🔌 **多 AI 提供商** - 支持 Claude、OpenAI、Ollama,统一网关层(速率限制、熔断、缓存、预算管理) [x] 2026-04-21
12
+ - 🎯 **智能意图识别** - 自动分析任务复杂度,决定执行策略(支持规则库匹配和 AI 推理) [x] 2026-04-25
13
+ - 🔄 **Pipeline 编排** - 复杂任务自动拆分为多阶段流程(分析→设计→编码→测试→审查),支持纯事件溯源架构和状态机约束,确保状态一致性,daemon 启动时自动迁移历史数据 [x] 2026-04-25
14
+ - 🛡️ **质量门禁** - 每个阶段自动 AI 审查,支持需求规格、安全性、代码质量、测试覆盖、性能等多维度检查,问题追踪和解决状态管理 [x] 2026-04-25
15
+ - 📊 **Web 管理后台** - 实时监控会话、Pipeline、质量问题、知识图谱、项目管理、自定义规范管理、CLAUDE.md 管理(支持模块化查看和蒸馏压缩) [x] 2026-04-25
16
+ - 🧠 **知识积累** - 自动提炼决策日志、时间线、项目规范,支持树索引和语义检索 [x] 2026-04-25
17
+ - 🎨 **技能编排** - 根据意图自动匹配并注入最佳实践(TDD、重构、调试等),支持关键词映射和命中率统计 [x] 2026-04-25
18
+ - 📈 **数据分析** - 成本统计、满意度趋势、ROI 分析,支持延迟追踪和 SLA 告警 [x] 2026-04-25
19
+ - 🔌 **多 AI 提供商** - 支持 Claude、OpenAI、Ollama,统一网关层(速率限制、熔断、缓存、预算管理) [x] 2026-04-25
20
20
 
21
21
  ---
22
22
 
@@ -24,18 +24,18 @@ Claude Forge 是一个为 Claude Code 设计的智能编排引擎,通过透明
24
24
 
25
25
  | 功能 | 说明 |
26
26
  |------|------|
27
- | 意图识别 | 自动分析任务复杂度(simple/moderate/complex),决定执行策略,支持规则库和 AI 推理 [x] 2026-04-18 |
28
- | Pipeline 编排 | 复杂任务自动拆分为多阶段流程,支持纯事件溯源、状态机约束、质量门禁、阶段产物生成、daemon 启动时自动迁移历史数据 [x] 2026-04-21 |
29
- | 质量门禁 | 每个阶段自动 AI 审查(需求规格、安全性、代码质量、测试、性能),不合格则阻止推进 [x] 2026-04-18 |
30
- | 技能编排 | 根据意图自动匹配并注入最佳实践,支持关键词映射和命中率统计 [x] 2026-04-18 |
31
- | 知识蒸馏 | 自动提炼决策日志、时间线、项目规范,支持树索引和语义检索 [x] 2026-04-18 |
32
- | 会话续接 | 中断后自动恢复上次工作状态 [x] 2026-04-18 |
33
- | 用户画像 | 根据行为自适应调整干预深度 [x] 2026-04-18 |
34
- | 多 AI 提供商 | 支持 Claude、OpenAI、Ollama,统一网关层 [x] 2026-04-18 |
35
- | Web 管理后台 | 实时监控、项目管理、Pipeline 控制、质量追踪、自定义规范管理、CLAUDE.md 管理 [x] 2026-04-18 |
36
- | 阶段产物 | 每个阶段自动生成结构化文档 [x] 2026-04-18 |
37
- | 模式学习 | 从历史失败中提炼预防建议,支持 Thompson Sampling 策略选择 [x] 2026-04-18 |
38
- | 项目规范 | 根据技术栈自动蒸馏项目级规范,支持自动初始化和 AI 自进化 [x] 2026-04-18 |
27
+ | 意图识别 | 自动分析任务复杂度(simple/moderate/complex),决定执行策略,支持规则库和 AI 推理 [x] 2026-04-25 |
28
+ | Pipeline 编排 | 复杂任务自动拆分为多阶段流程,支持纯事件溯源、状态机约束、质量门禁、阶段产物生成、daemon 启动时自动迁移历史数据 [x] 2026-04-25 |
29
+ | 质量门禁 | 每个阶段自动 AI 审查(需求规格、安全性、代码质量、测试、性能),不合格则阻止推进 [x] 2026-04-25 |
30
+ | 技能编排 | 根据意图自动匹配并注入最佳实践,支持关键词映射和命中率统计 [x] 2026-04-25 |
31
+ | 知识蒸馏 | 自动提炼决策日志、时间线、项目规范,支持树索引和语义检索 [x] 2026-04-25 |
32
+ | 会话续接 | 中断后自动恢复上次工作状态 [x] 2026-04-25 |
33
+ | 用户画像 | 根据行为自适应调整干预深度 [x] 2026-04-25 |
34
+ | 多 AI 提供商 | 支持 Claude、OpenAI、Ollama,统一网关层 [x] 2026-04-25 |
35
+ | Web 管理后台 | 实时监控、项目管理、Pipeline 控制、质量追踪、自定义规范管理、CLAUDE.md 管理 [x] 2026-04-25 |
36
+ | 阶段产物 | 每个阶段自动生成结构化文档 [x] 2026-04-25 |
37
+ | 模式学习 | 从历史失败中提炼预防建议,支持 Thompson Sampling 策略选择 [x] 2026-04-25 |
38
+ | 项目规范 | 根据技术栈自动蒸馏项目级规范,支持自动初始化和 AI 自进化 [x] 2026-04-25 |
39
39
 
40
40
  ---
41
41
 
@@ -37,6 +37,7 @@ export declare class QualityGateEngine {
37
37
  private storage;
38
38
  private currentProjectPath;
39
39
  private currentSessionId;
40
+ private sessionHistoryRestored;
40
41
  private currentRequirement;
41
42
  private currentPipelineId;
42
43
  private currentTaskType;
@@ -56,6 +57,7 @@ export declare class QualityGateEngine {
56
57
  /**
57
58
  * v5 新增:设置当前会话上下文(用于持久化)
58
59
  * P1-2 补完:同时恢复 reviewHistory,使跨轮次的忽略计数正确累积
60
+ * 优化:检测会话切换,避免同一会话重复恢复历史
59
61
  */
60
62
  setSessionContext(sessionId: string, projectPath: string): void;
61
63
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"quality-gate.d.ts","sourceRoot":"","sources":["../../src/autopilot/quality-gate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quality-gate.d.ts","sourceRoot":"","sources":["../../src/autopilot/quality-gate.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,7 @@ export class QualityGateEngine {
26
26
  storage = null; // v5 新增:持久化支持
27
27
  currentProjectPath = ''; // v5 新增:当前项目路径
28
28
  currentSessionId = ''; // v5 新增:当前会话 ID
29
+ sessionHistoryRestored = false; // 标记当前会话历史是否已恢复,避免重复恢复
29
30
  currentRequirement = '';
30
31
  currentPipelineId = ''; // 当前 Pipeline ID,供 IssueTracker 使用
31
32
  currentTaskType = 'other';
@@ -50,15 +51,21 @@ export class QualityGateEngine {
50
51
  /**
51
52
  * v5 新增:设置当前会话上下文(用于持久化)
52
53
  * P1-2 补完:同时恢复 reviewHistory,使跨轮次的忽略计数正确累积
54
+ * 优化:检测会话切换,避免同一会话重复恢复历史
53
55
  */
54
56
  setSessionContext(sessionId, projectPath) {
57
+ // 检测会话是否切换
58
+ const sessionChanged = this.currentSessionId !== sessionId;
55
59
  this.currentSessionId = sessionId;
56
60
  this.currentProjectPath = projectPath;
57
61
  if (this.storage && projectPath) {
58
- // 从数据库加载未过期的抑制规则
62
+ // 从数据库加载未过期的抑制规则(每次都加载,因为可能在运行时更新)
59
63
  this.loadSuppressions(projectPath);
60
- // 从数据库恢复本次会话的审查历史(用于跨轮次的忽略计数)
61
- this.restoreSessionHistory(sessionId, projectPath);
64
+ // 只在会话切换时恢复历史,避免重复恢复
65
+ if (sessionChanged && !this.sessionHistoryRestored) {
66
+ this.restoreSessionHistory(sessionId, projectPath);
67
+ this.sessionHistoryRestored = true;
68
+ }
62
69
  }
63
70
  }
64
71
  /**
@@ -262,7 +269,15 @@ export class QualityGateEngine {
262
269
  });
263
270
  logger.debug(`[质量门禁] 正在审查 ${filePath}${useIncrementalReview ? '(增量模式)' : ''}…`);
264
271
  const response = await this.api.complete(prompt, 'quality-gate');
265
- const result = this.parseResult(response, filePath);
272
+ let result;
273
+ try {
274
+ result = this.parseResult(response, filePath);
275
+ }
276
+ catch (err) {
277
+ // AI 响应解析失败,跳过本次检查,不计入统计
278
+ logger.warn(`[Forge:质量检查] ${filePath} 解析失败,跳过本次检查`);
279
+ return null;
280
+ }
266
281
  // 缓存结果
267
282
  this.reviewCache.set(cacheKey, result);
268
283
  // v5 新增:检测历史问题是否已修复
@@ -372,13 +387,13 @@ export class QualityGateEngine {
372
387
  if (this.storage && this.currentProjectPath) {
373
388
  this.storage.incrementSuppressionCount(cat, this.currentProjectPath);
374
389
  }
375
- // 连续 3 次忽略同一类别,自动抑制(30 天后恢复)
390
+ // 连续 N 次忽略同一类别,自动抑制(配置天数后恢复)
376
391
  const ignoreCount = this.reviewHistory
377
392
  .filter(h => !h.accepted && h.result.checks.some(c => c.category === cat))
378
393
  .length;
379
- if (ignoreCount >= 3) {
394
+ if (ignoreCount >= QUALITY_GATE.SUPPRESSION_THRESHOLD) {
380
395
  this.skipPatterns.set(cat, true);
381
- logger.info(`[Forge:质量检查] 不再检查 ${cat} 类问题(已忽略 ${ignoreCount} 次,30 天后自动恢复)`);
396
+ logger.info(`[Forge:质量检查] 不再检查 ${cat} 类问题(已忽略 ${ignoreCount} 次,${QUALITY_GATE.SUPPRESSION_EXPIRE_DAYS} 天后自动恢复)`);
382
397
  }
383
398
  }
384
399
  }
@@ -465,6 +480,7 @@ export class QualityGateEngine {
465
480
  this.currentTaskType = 'other';
466
481
  this.reviewHistory = [];
467
482
  this.checkCount = 0;
483
+ this.sessionHistoryRestored = false; // 重置恢复标志,允许新会话恢复历史
468
484
  // skipPatterns 保留(跨 Pipeline 学习)
469
485
  }
470
486
  /**
@@ -685,93 +701,80 @@ export class QualityGateEngine {
685
701
  return `[Forge 强制介入] 问题已持续 ${attempts} 次未解决,请立即停止当前操作,专注修复以下问题:\n${fileRef}${failChecks.map(c => `- ${c.message}${c.suggestion ? `\n 修复建议:${c.suggestion}` : ''}`).join('\n')}`;
686
702
  }
687
703
  parseResult(response, filePath) {
688
- try {
689
- const cleaned = response.replace(/```json\s*/g, '').replace(/```\s*/g, '');
690
- const jsonMatch = cleaned.match(/\{[\s\S]*\}/);
691
- if (!jsonMatch)
692
- throw new Error('No JSON found');
693
- const parsed = JSON.parse(jsonMatch[0]);
694
- const rawChecks = (parsed.checks || []).map((c) => ({
695
- category: c.category || 'quality',
696
- level: c.level || 'pass',
697
- message: c.message || '',
698
- suggestion: c.suggestion,
699
- }));
700
- // 抑制过滤:真正过滤掉已抑制类别的 warn 级别问题
701
- // Convention must 规范来源的 fail 永不抑制(conventionName 字段标记)
702
- const suppressedCategories = new Set(this.skipPatterns.keys());
703
- const mustConventionCategories = new Set(this.conventionStandards.filter(s => s.severity === 'must').map(s => s.category));
704
- const filteredChecks = suppressedCategories.size > 0
705
- ? rawChecks.filter(c => {
706
- if (c.level === 'pass')
707
- return true;
708
- // Convention must 规范对应的类别永不抑制
709
- if (mustConventionCategories.has(c.category))
710
- return true;
711
- // 已抑制类别的 warn 过滤掉;fail 保留(用户明确忽略 3 次后才抑制,说明确实不重要)
712
- if (suppressedCategories.has(c.category) && c.level === 'warn')
713
- return false;
704
+ const cleaned = response.replace(/```json\s*/g, '').replace(/```\s*/g, '');
705
+ const jsonMatch = cleaned.match(/\{[\s\S]*\}/);
706
+ if (!jsonMatch) {
707
+ logger.warn(`[Forge:质量检查] AI 返回内容无法解析,跳过本次检查`);
708
+ logger.debug(`[Forge:质量检查] AI 原始返回:${response.slice(0, 300)}`);
709
+ throw new Error('AI response parse failed');
710
+ }
711
+ const parsed = JSON.parse(jsonMatch[0]);
712
+ const rawChecks = (parsed.checks || []).map((c) => ({
713
+ category: c.category || 'quality',
714
+ level: c.level || 'pass',
715
+ message: c.message || '',
716
+ suggestion: c.suggestion,
717
+ }));
718
+ // 抑制过滤:真正过滤掉已抑制类别的 warn 级别问题
719
+ // Convention must 规范来源的 fail 永不抑制(conventionName 字段标记)
720
+ const suppressedCategories = new Set(this.skipPatterns.keys());
721
+ const mustConventionCategories = new Set(this.conventionStandards.filter(s => s.severity === 'must').map(s => s.category));
722
+ const filteredChecks = suppressedCategories.size > 0
723
+ ? rawChecks.filter(c => {
724
+ if (c.level === 'pass')
714
725
  return true;
715
- })
716
- : rawChecks;
717
- // 重新计算整体 level(过滤后)
718
- const effectiveLevel = filteredChecks.some(c => c.level === 'fail') ? 'fail'
719
- : filteredChecks.some(c => c.level === 'warn') ? 'warn' : 'pass';
720
- const result = {
721
- level: effectiveLevel,
722
- checks: filteredChecks,
723
- summary: parsed.summary || '审查完成',
724
- };
725
- // 生成 directive
726
- result.directive = this.generateDirective(result, filePath) || undefined;
727
- // 如果本次审查通过,将同一文件的历史 fail 标记为已解决
728
- if (result.level === 'pass') {
729
- for (const h of this.reviewHistory) {
730
- if (h.filePath === filePath && h.result.level === 'fail' && !h.resolved) {
731
- h.resolved = true;
732
- logger.debug(`[质量门禁] ${filePath} 审查通过,历史 fail 已标记为已解决`);
733
- }
734
- }
735
- // 同步更新 issueTracker:将该文件的 open 问题标记为 resolved
736
- if (this.currentPipelineId) {
737
- const openIssues = this.issueTracker.getAll(this.currentPipelineId)
738
- .filter(i => i.filePath === filePath && (i.status === 'open' || i.status === 'in_progress'));
739
- for (const issue of openIssues) {
740
- this.issueTracker.resolve(issue.id, 'code');
741
- }
726
+ // Convention must 规范对应的类别永不抑制
727
+ if (mustConventionCategories.has(c.category))
728
+ return true;
729
+ // 已抑制类别的 warn 过滤掉;fail 保留(用户明确忽略 N 次后才抑制,说明确实不重要)
730
+ if (suppressedCategories.has(c.category) && c.level === 'warn')
731
+ return false;
732
+ return true;
733
+ })
734
+ : rawChecks;
735
+ // 重新计算整体 level(过滤后)
736
+ const effectiveLevel = filteredChecks.some(c => c.level === 'fail') ? 'fail'
737
+ : filteredChecks.some(c => c.level === 'warn') ? 'warn' : 'pass';
738
+ const result = {
739
+ level: effectiveLevel,
740
+ checks: filteredChecks,
741
+ summary: parsed.summary || '审查完成',
742
+ };
743
+ // 生成 directive
744
+ result.directive = this.generateDirective(result, filePath) || undefined;
745
+ // 如果本次审查通过,将同一文件的历史 fail 标记为已解决
746
+ if (result.level === 'pass') {
747
+ for (const h of this.reviewHistory) {
748
+ if (h.filePath === filePath && h.result.level === 'fail' && !h.resolved) {
749
+ h.resolved = true;
750
+ logger.debug(`[质量门禁] ${filePath} 审查通过,历史 fail 已标记为已解决`);
742
751
  }
743
752
  }
744
- // 记录历史(环形缓冲,防止内存无限增长)
745
- // accepted: fail 时为 false,供 feedback() 统计误报率
746
- this.reviewHistory.push({ result, accepted: result.level !== 'fail', filePath, resolved: false });
747
- if (this.reviewHistory.length > QualityGateEngine.MAX_HISTORY_LENGTH) {
748
- this.reviewHistory = this.reviewHistory.slice(-QualityGateEngine.MAX_HISTORY_LENGTH);
753
+ // 同步更新 issueTracker:将该文件的 open 问题标记为 resolved
754
+ if (this.currentPipelineId) {
755
+ const openIssues = this.issueTracker.getAll(this.currentPipelineId)
756
+ .filter(i => i.filePath === filePath && (i.status === 'open' || i.status === 'in_progress'));
757
+ for (const issue of openIssues) {
758
+ this.issueTracker.resolve(issue.id, 'code');
759
+ }
749
760
  }
750
- // 结构化日志:本次审查结果
751
- const passCount = result.checks.filter(c => c.level === 'pass').length;
752
- const warnCount = result.checks.filter(c => c.level === 'warn').length;
753
- const failCount = result.checks.filter(c => c.level === 'fail').length;
754
- logger.info(`[Forge:质量检查] ${filePath} | 通过=${passCount} 警告=${warnCount} 不通过=${failCount}`);
755
- // 累计统计降级为 debug(避免与阶段进度混淆)
756
- const totalPass = this.reviewHistory.filter(h => h.result.level === 'pass' || h.result.level === 'warn').length;
757
- const passRate = this.reviewHistory.length > 0 ? Math.round((totalPass / this.reviewHistory.length) * 100) : 0;
758
- logger.debug(`[质量门禁] 会话统计:累计通过率 ${passRate}% (${totalPass}/${this.reviewHistory.length})`);
759
- return result;
760
- }
761
- catch (err) {
762
- logger.warn(`[Forge:质量检查] AI 返回内容无法解析:${err}`);
763
- logger.warn(`[Forge:质量检查] AI 原始返回:${response.slice(0, 300)}`);
764
- return {
765
- level: 'fail',
766
- checks: [{
767
- category: 'quality',
768
- level: 'fail',
769
- message: '质量门禁 AI 响应解析失败,无法验证阶段完成质量',
770
- suggestion: '检查 AI 提供商连接状态或降级到手动审查',
771
- }],
772
- summary: '审查解析失败,阻断流程',
773
- };
774
761
  }
762
+ // 记录历史(环形缓冲,防止内存无限增长)
763
+ // accepted: fail 时为 false,供 feedback() 统计误报率
764
+ this.reviewHistory.push({ result, accepted: result.level !== 'fail', filePath, resolved: false });
765
+ if (this.reviewHistory.length > QualityGateEngine.MAX_HISTORY_LENGTH) {
766
+ this.reviewHistory = this.reviewHistory.slice(-QualityGateEngine.MAX_HISTORY_LENGTH);
767
+ }
768
+ // 结构化日志:本次审查结果
769
+ const passCount = result.checks.filter(c => c.level === 'pass').length;
770
+ const warnCount = result.checks.filter(c => c.level === 'warn').length;
771
+ const failCount = result.checks.filter(c => c.level === 'fail').length;
772
+ logger.info(`[Forge:质量检查] ${filePath} | 通过=${passCount} 警告=${warnCount} 不通过=${failCount}`);
773
+ // 累计统计降级为 debug(避免与阶段进度混淆)
774
+ const totalPass = this.reviewHistory.filter(h => h.result.level === 'pass' || h.result.level === 'warn').length;
775
+ const passRate = this.reviewHistory.length > 0 ? Math.round((totalPass / this.reviewHistory.length) * 100) : 0;
776
+ logger.debug(`[质量门禁] 会话统计:累计通过率 ${passRate}% (${totalPass}/${this.reviewHistory.length})`);
777
+ return result;
775
778
  }
776
779
  isNonCodeFile(filePath) {
777
780
  const nonCode = [
@@ -1 +1 @@
1
- {"version":3,"file":"quality-gate.js","sourceRoot":"","sources":["../../src/autopilot/quality-gate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quality-gate.js","sourceRoot":"","sources":["../../src/autopilot/quality-gate.ts"],"names":[],"mappings":"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"}
@@ -7,10 +7,10 @@ export declare class BackupManager {
7
7
  projectPath?: string;
8
8
  encrypt?: boolean;
9
9
  password?: string;
10
- }): string;
10
+ }): Promise<string>;
11
11
  /**
12
12
  * 恢复备份
13
13
  */
14
- restore(backupFile: string, strategy?: 'merge' | 'overwrite' | 'cancel'): void;
14
+ restore(backupFile: string, strategy?: 'merge' | 'overwrite' | 'cancel'): Promise<void>;
15
15
  }
16
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/backup/index.ts"],"names":[],"mappings":"AAaA,qBAAa,aAAa;IACxB;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE;QACd,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,MAAM;IA2FV;;OAEG;IACH,OAAO,CACL,UAAU,EAAE,MAAM,EAClB,QAAQ,GAAE,OAAO,GAAG,WAAW,GAAG,QAAkB,GACnD,IAAI;CAsGR"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/backup/index.ts"],"names":[],"mappings":"AAgBA,qBAAa,aAAa;IACxB;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,MAAM,CAAC;IA2FnB;;OAEG;IACG,OAAO,CACX,UAAU,EAAE,MAAM,EAClB,QAAQ,GAAE,OAAO,GAAG,WAAW,GAAG,QAAkB,GACnD,OAAO,CAAC,IAAI,CAAC;CAsGjB"}
@@ -2,10 +2,12 @@ import fs from 'fs';
2
2
  import path from 'path';
3
3
  import os from 'os';
4
4
  import { createHash } from 'crypto';
5
- import { execSync } from 'child_process';
5
+ import { execFile } from 'child_process';
6
+ import { promisify } from 'util';
6
7
  import yaml from 'js-yaml';
7
8
  import Database from 'better-sqlite3';
8
9
  import { logger } from '../utils/logger.js';
10
+ const execFileAsync = promisify(execFile);
9
11
  function getForgeHome() {
10
12
  return path.join(os.homedir(), '.claude-forge');
11
13
  }
@@ -13,7 +15,7 @@ export class BackupManager {
13
15
  /**
14
16
  * 创建备份
15
17
  */
16
- backup(options) {
18
+ async backup(options) {
17
19
  const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
18
20
  const projectSuffix = options.projectPath
19
21
  ? '-' + path.basename(options.projectPath)
@@ -69,8 +71,8 @@ export class BackupManager {
69
71
  project_path: options.projectPath || null,
70
72
  };
71
73
  fs.writeFileSync(path.join(tmpDir, 'meta.json'), JSON.stringify(meta, null, 2));
72
- // 5. 打包
73
- execSync(`tar -czf "${outputFile}" -C "${tmpDir}" .`);
74
+ // 5. 打包(使用参数数组避免命令注入)
75
+ await execFileAsync('tar', ['-czf', outputFile, '-C', tmpDir, '.']);
74
76
  // 6. 生成 checksum
75
77
  const fileBuffer = fs.readFileSync(outputFile);
76
78
  const checksum = createHash('sha256').update(fileBuffer).digest('hex');
@@ -86,7 +88,7 @@ export class BackupManager {
86
88
  /**
87
89
  * 恢复备份
88
90
  */
89
- restore(backupFile, strategy = 'merge') {
91
+ async restore(backupFile, strategy = 'merge') {
90
92
  // 1. 校验 checksum
91
93
  const checksumFile = `${backupFile}.sha256`;
92
94
  if (fs.existsSync(checksumFile)) {
@@ -118,7 +120,7 @@ export class BackupManager {
118
120
  const tmpDir = path.join(os.tmpdir(), `claude-forge-restore-${Date.now()}`);
119
121
  fs.mkdirSync(tmpDir, { recursive: true });
120
122
  try {
121
- execSync(`tar -xzf "${backupFile}" -C "${tmpDir}"`);
123
+ await execFileAsync('tar', ['-xzf', backupFile, '-C', tmpDir]);
122
124
  // 确保目标目录存在
123
125
  if (!fs.existsSync(getForgeHome())) {
124
126
  fs.mkdirSync(getForgeHome(), { recursive: true });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/backup/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/backup/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"claudemd.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/claudemd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAyU9D"}
1
+ {"version":3,"file":"claudemd.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/claudemd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAyU9D"}