@winspan/claude-forge 2.7.2 → 3.0.1

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 (89) hide show
  1. package/README.md +2 -2
  2. package/dist/autopilot/intent-engine.js +5 -5
  3. package/dist/autopilot/intent-engine.js.map +1 -1
  4. package/dist/autopilot/issue-tracker.d.ts +1 -1
  5. package/dist/autopilot/issue-tracker.d.ts.map +1 -1
  6. package/dist/autopilot/issue-tracker.js +2 -2
  7. package/dist/autopilot/issue-tracker.js.map +1 -1
  8. package/dist/autopilot/phase-gap-detector.d.ts +2 -1
  9. package/dist/autopilot/phase-gap-detector.d.ts.map +1 -1
  10. package/dist/autopilot/phase-gap-detector.js +1 -1
  11. package/dist/autopilot/phase-gap-detector.js.map +1 -1
  12. package/dist/autopilot/quality-gate.d.ts +1 -1
  13. package/dist/autopilot/quality-gate.d.ts.map +1 -1
  14. package/dist/autopilot/quality-gate.js +4 -4
  15. package/dist/autopilot/quality-gate.js.map +1 -1
  16. package/dist/autopilot/task-completion-detector.d.ts +1 -1
  17. package/dist/autopilot/task-completion-detector.d.ts.map +1 -1
  18. package/dist/core/cache-registry.d.ts +53 -0
  19. package/dist/core/cache-registry.d.ts.map +1 -0
  20. package/dist/core/cache-registry.js +93 -0
  21. package/dist/core/cache-registry.js.map +1 -0
  22. package/dist/core/pending-prompt-sink.d.ts +14 -0
  23. package/dist/core/pending-prompt-sink.d.ts.map +1 -0
  24. package/dist/core/pending-prompt-sink.js +7 -0
  25. package/dist/core/pending-prompt-sink.js.map +1 -0
  26. package/dist/core/types.d.ts +24 -0
  27. package/dist/core/types.d.ts.map +1 -0
  28. package/dist/core/types.js +24 -0
  29. package/dist/core/types.js.map +1 -0
  30. package/dist/daemon/engine-registry/init-pipeline.d.ts.map +1 -1
  31. package/dist/daemon/engine-registry/init-pipeline.js +3 -1
  32. package/dist/daemon/engine-registry/init-pipeline.js.map +1 -1
  33. package/dist/daemon/engine-registry.js +2 -2
  34. package/dist/daemon/engine-registry.js.map +1 -1
  35. package/dist/daemon/handlers/post-tool-use-handler.js +2 -2
  36. package/dist/daemon/handlers/post-tool-use-handler.js.map +1 -1
  37. package/dist/daemon/handlers/stop-handler.js +2 -2
  38. package/dist/daemon/handlers/stop-handler.js.map +1 -1
  39. package/dist/daemon/handlers/user-prompt-handler.js +6 -6
  40. package/dist/daemon/handlers/user-prompt-handler.js.map +1 -1
  41. package/dist/distill/trigger.js +2 -2
  42. package/dist/distill/trigger.js.map +1 -1
  43. package/dist/pipeline/dynamic-node-executor.d.ts +3 -4
  44. package/dist/pipeline/dynamic-node-executor.d.ts.map +1 -1
  45. package/dist/pipeline/dynamic-node-executor.js +16 -17
  46. package/dist/pipeline/dynamic-node-executor.js.map +1 -1
  47. package/dist/pipeline/event-sourced-engine.d.ts.map +1 -1
  48. package/dist/pipeline/event-sourced-engine.js +6 -5
  49. package/dist/pipeline/event-sourced-engine.js.map +1 -1
  50. package/dist/pipeline/index.d.ts +5 -12
  51. package/dist/pipeline/index.d.ts.map +1 -1
  52. package/dist/pipeline/index.js +38 -135
  53. package/dist/pipeline/index.js.map +1 -1
  54. package/dist/pipeline/phase-manager.js +10 -10
  55. package/dist/pipeline/phase-manager.js.map +1 -1
  56. package/dist/pipeline/report-generator.d.ts +3 -3
  57. package/dist/pipeline/report-generator.d.ts.map +1 -1
  58. package/dist/pipeline/report-generator.js +4 -4
  59. package/dist/pipeline/report-generator.js.map +1 -1
  60. package/dist/pipeline/step-gate-keeper.d.ts +1 -1
  61. package/dist/pipeline/step-gate-keeper.d.ts.map +1 -1
  62. package/dist/pipeline/step-gate-keeper.js +2 -3
  63. package/dist/pipeline/step-gate-keeper.js.map +1 -1
  64. package/dist/pipeline/step-orchestrator.d.ts +6 -1
  65. package/dist/pipeline/step-orchestrator.d.ts.map +1 -1
  66. package/dist/pipeline/step-orchestrator.js +13 -5
  67. package/dist/pipeline/step-orchestrator.js.map +1 -1
  68. package/dist/pipeline/types.d.ts +4 -4
  69. package/dist/pipeline/types.d.ts.map +1 -1
  70. package/dist/pipeline/types.js +1 -17
  71. package/dist/pipeline/types.js.map +1 -1
  72. package/dist/storage/repositories/maintenance-repository.d.ts +9 -0
  73. package/dist/storage/repositories/maintenance-repository.d.ts.map +1 -1
  74. package/dist/storage/repositories/maintenance-repository.js +63 -110
  75. package/dist/storage/repositories/maintenance-repository.js.map +1 -1
  76. package/dist/storage/schema/migration-manager.d.ts +15 -0
  77. package/dist/storage/schema/migration-manager.d.ts.map +1 -0
  78. package/dist/storage/schema/migration-manager.js +868 -0
  79. package/dist/storage/schema/migration-manager.js.map +1 -0
  80. package/dist/storage/sqlite.d.ts +0 -5
  81. package/dist/storage/sqlite.d.ts.map +1 -1
  82. package/dist/storage/sqlite.js +6 -837
  83. package/dist/storage/sqlite.js.map +1 -1
  84. package/dist/utils/formatter.d.ts.map +1 -1
  85. package/dist/utils/formatter.js +3 -7
  86. package/dist/utils/formatter.js.map +1 -1
  87. package/dist/web-static/assets/{index-C9F94O8p.js → index-_pTdFFt3.js} +1 -1
  88. package/dist/web-static/index.html +1 -1
  89. package/package.json +1 -1
@@ -1,14 +1,12 @@
1
1
  import { PipelineStore } from './store.js';
2
2
  import { PipelineAnalyzer } from './analyzer.js';
3
- import { PhaseManager } from './phase-manager.js';
4
3
  import { DynamicNodeExecutor } from './dynamic-node-executor.js';
5
- import { PhaseArtifactGenerator } from './artifact-generator.js';
6
4
  import { PipelineReportGenerator } from './report-generator.js';
7
5
  import { PHASE_LABELS } from './types.js';
8
6
  import { PIPELINE, TIME } from '../constants.js';
9
7
  import { logger } from '../utils/logger.js';
10
8
  import { ArtifactManager } from '../utils/artifact-manager.js';
11
- import { memoryManager } from '../utils/memory-manager.js';
9
+ import { cacheRegistry } from '../core/cache-registry.js';
12
10
  import { MutexLock } from '../utils/mutex-lock.js';
13
11
  import { buildForgeResumeEnvelope, stripForgeResumeBlocks } from '../utils/forge-resume-block.js';
14
12
  import { getPlanPhaseLabels, stringifyExecutionPlanMeta, } from './execution-plan.js';
@@ -21,7 +19,6 @@ export class PipelineEngine {
21
19
  store;
22
20
  analyzer;
23
21
  planBuilder;
24
- phaseManager;
25
22
  dynamicNodeExecutor;
26
23
  api;
27
24
  storage;
@@ -30,7 +27,7 @@ export class PipelineEngine {
30
27
  /** 上次注入的指令指纹(pipelineId:phase:completed/total),相同则跳过重复注入 */
31
28
  lastInstructionKey;
32
29
  /** 0/0 状态已通知的 key(projectPath:phase),避免每次 PreToolUse 重复注入空阶段提示(1小时 TTL 自动清理) */
33
- emptyPhaseNotified = memoryManager.register('pipeline:emptyNotified', {
30
+ emptyPhaseNotified = cacheRegistry.register('pipeline:emptyNotified', {
34
31
  max: 100,
35
32
  ttl: TIME.HOUR
36
33
  });
@@ -38,25 +35,24 @@ export class PipelineEngine {
38
35
  pipelineLock = new MutexLock('Pipeline');
39
36
  /** CLAUDE.md 写入器(可选,用于统一加锁写入) */
40
37
  claudeMdWriter;
41
- constructor(storage, api, conventionManager, claudeMdWriter) {
38
+ constructor(storage, api, conventionManager, claudeMdWriter, pendingPromptSink) {
42
39
  this.store = new PipelineStore(storage);
43
40
  this.analyzer = new PipelineAnalyzer(api, conventionManager);
44
41
  this.planBuilder = new ExecutionPlanBuilder(this.analyzer);
45
- this.phaseManager = new PhaseManager(this.store);
46
- this.dynamicNodeExecutor = new DynamicNodeExecutor(api);
42
+ this.dynamicNodeExecutor = new DynamicNodeExecutor(api, pendingPromptSink);
47
43
  this.api = api;
48
44
  this.storage = storage;
49
- this.activePipelines = memoryManager.register('pipeline:active', { max: 50 });
50
- this.lastInstructionKey = memoryManager.register('pipeline:instruction', { max: 50 });
45
+ this.activePipelines = cacheRegistry.register('pipeline:active', { max: 50 });
46
+ this.lastInstructionKey = cacheRegistry.register('pipeline:instruction', { max: 50 });
51
47
  this.claudeMdWriter = claudeMdWriter;
52
48
  }
53
49
  /** 检测到 ESC 中断、等待用户确认意图的项目路径集合(2小时 TTL,用户可能长时间不确认) */
54
- interruptedProjects = memoryManager.register('pipeline:interrupted', {
50
+ interruptedProjects = cacheRegistry.register('pipeline:interrupted', {
55
51
  max: 50,
56
52
  ttl: TIME.TWO_HOURS
57
53
  });
58
54
  /** 硬阻断状态(key=projectPath):用于 PreToolUse 拦截后续工具调用 */
59
- blockedProjects = memoryManager.register('pipeline:blocked', {
55
+ blockedProjects = cacheRegistry.register('pipeline:blocked', {
60
56
  max: 50,
61
57
  ttl: TIME.TWO_HOURS
62
58
  });
@@ -158,7 +154,9 @@ export class PipelineEngine {
158
154
  this.activePipelines.set(projectPath, pipeline);
159
155
  return this.dynamicNodeExecutor.getInstruction(dynPipeline);
160
156
  }
161
- return this.phaseManager.getPhaseInstruction(pipeline);
157
+ // Legacy Pipeline 不再处理(所有新 Pipeline 均为 dp_ 前缀)
158
+ logger.warn(`[Pipeline] Legacy Pipeline ${pipeline.id} 不再支持,请重新创建`);
159
+ return null;
162
160
  }
163
161
  /**
164
162
  * PostToolUse 处理:跟踪进度,检查阶段推进
@@ -214,85 +212,9 @@ export class PipelineEngine {
214
212
  }
215
213
  return dynamicResult;
216
214
  }
217
- // 刷新任务列表
218
- pipeline.tasks = this.store.getTasks(pipeline.id);
219
- const result = await this.phaseManager.checkAndAdvance(pipeline, event, qualityGate);
220
- // 持久化阶段推进状态(重启后可恢复)
221
- this.persistPhaseState(pipeline.id, pipeline.phase);
222
- if (result.qualityBlocked) {
223
- if (result.blocking) {
224
- this.markBlocked(event.project_path, pipeline.id, result.systemMessage || '[Pipeline 已阻断] 质量门禁 must 规范违反,必须修复后重启 Pipeline');
225
- }
226
- return { message: null, qualityBlocked: true, qualityIssues: result.qualityIssues, systemMessage: result.systemMessage, qualityLevel: result.qualityLevel, fixAttempts: result.fixAttempts, blocking: result.blocking };
227
- }
228
- if (result.advanced && result.newPhase) {
229
- const completedPhase = pipeline.phase; // 推进前的阶段
230
- // 阶段产物生成:异步非阻塞,失败只记录质量问题,不阻断推进
231
- const pipelineSnapshot = { ...pipeline };
232
- const artifactQualityIssues = [];
233
- try {
234
- await new PhaseArtifactGenerator(pipeline.projectPath, this.api, this.storage, pipelineSnapshot)
235
- .generateForPhase(completedPhase, pipelineSnapshot, event.session_id);
236
- }
237
- catch (err) {
238
- const issueMsg = `[阶段产物] ${PHASE_LABELS[completedPhase]} 产物生成失败:${err}`;
239
- logger.warn(`[Forge:阶段产物] ${issueMsg}`);
240
- artifactQualityIssues.push(issueMsg);
241
- // 产物失败不阻断推进,继续执行
242
- }
243
- pipeline.phase = result.newPhase;
244
- // 阶段推进后清除指纹缓存和空阶段标记,确保新阶段指令能正常注入
245
- this.lastInstructionKey.delete(event.project_path);
246
- this.emptyPhaseNotified.delete(`${event.project_path}:${completedPhase}`);
247
- // 阶段推进时更新 CLAUDE.md 续接状态,确保跨会话后 Claude 能快速恢复上下文
248
- this.persistPipelineStateToClaude(pipeline, event.project_path);
249
- if (result.newPhase === 'done') {
250
- this.activePipelines.delete(event.project_path);
251
- this.clearBlocked(event.project_path);
252
- // 统计数据
253
- const totalTasks = pipeline.tasks.length;
254
- const completedTasks = pipeline.tasks.filter(t => t.status === 'completed').length;
255
- const failedTasks = pipeline.tasks.filter(t => t.status === 'failed').length;
256
- const completedPhases = pipeline.plannedPhases?.filter(p => {
257
- const phaseTasks = pipeline.tasks.filter(t => t.phase === p);
258
- return phaseTasks.length > 0 && phaseTasks.every(t => t.status === 'completed');
259
- }) || [];
260
- // Pipeline 完成报告
261
- let reportMessage = `[Forge Pipeline] ✅ 项目已完成所有阶段!
262
- 📋 需求:${pipeline.requirement}
263
- 📊 统计:
264
- • 总任务数:${totalTasks}
265
- • 已完成:${completedTasks}
266
- • 失败:${failedTasks}
267
- • 完成阶段:${completedPhases.map(p => PHASE_LABELS[p]).join('、')}`;
268
- if (qualityGate) {
269
- try {
270
- const reportGenerator = new PipelineReportGenerator(qualityGate.getIssueTracker(), this.phaseManager);
271
- const markdown = reportGenerator.generate(pipeline);
272
- reportGenerator.persist(pipeline.projectPath, markdown);
273
- reportMessage = `${reportMessage}\n\n${markdown}`;
274
- }
275
- catch (err) {
276
- logger.warn(`[Pipeline] 完成报告生成失败:${err}`);
277
- }
278
- }
279
- return { message: reportMessage };
280
- }
281
- return {
282
- message: `[Forge Pipeline] 阶段推进:${PHASE_LABELS[result.newPhase]}`,
283
- gapMessage: result.gapMessage,
284
- qualityLevel: result.qualityLevel,
285
- advanceReason: result.advanceReason,
286
- systemMessage: result.systemMessage,
287
- qualityIssues: artifactQualityIssues.length > 0 ? artifactQualityIssues : undefined,
288
- };
289
- }
290
- // 非阶段推进时,也定期更新 CLAUDE.md(每 20 次工具调用一次)
291
- const eventCount = this.phaseManager.exportPhaseState(`${pipeline.id}:${pipeline.phase}`)?.eventCount ?? 0;
292
- if (eventCount > 0 && eventCount % 20 === 0) {
293
- this.persistPipelineStateToClaude(pipeline, event.project_path);
294
- }
295
- return { message: null, qualityLevel: result.qualityLevel };
215
+ // Legacy Pipeline 不再处理(所有新 Pipeline 均为 dp_ 前缀)
216
+ logger.warn(`[Pipeline] Legacy Pipeline ${pipeline.id} 不再支持,请重新创建`);
217
+ return { message: null };
296
218
  }
297
219
  /**
298
220
  * 动态流水线 PostToolUse 处理
@@ -371,7 +293,7 @@ export class PipelineEngine {
371
293
  • 已完成:${completedNodes}`;
372
294
  if (qualityGate) {
373
295
  try {
374
- const reportGenerator = new PipelineReportGenerator(qualityGate.getIssueTracker(), this.phaseManager);
296
+ const reportGenerator = new PipelineReportGenerator(qualityGate.getIssueTracker(), this.dynamicNodeExecutor);
375
297
  const markdown = reportGenerator.generate(pipeline);
376
298
  reportGenerator.persist(pipeline.projectPath, markdown);
377
299
  reportMessage = `${reportMessage}\n\n${markdown}`;
@@ -543,7 +465,7 @@ ${taskSummary}
543
465
  updatedAt: now,
544
466
  };
545
467
  this.activePipelines.set(plan.projectPath, pipeline);
546
- this.phaseManager.resetFixAttempts(pipelineId);
468
+ this.dynamicNodeExecutor.resetFixAttempts(pipelineId);
547
469
  this.writeExecutionPlanArtifact(plan, pipeline);
548
470
  const nodeFlow = getPlanPhaseLabels(plan).join(' → ');
549
471
  logger.info(`[Pipeline:Dynamic] ✅ 动态流水线已创建\n📋 需求:${plan.requirement}\n📊 统计:${nodes.length} 个节点 | 复杂度:${plan.complexity}\n🗺️ 节点规划:${nodeFlow}`);
@@ -699,12 +621,6 @@ ${taskSummary}
699
621
  }
700
622
  return progressLine + gateLine;
701
623
  }
702
- /**
703
- * 获取 PhaseManager 引用(用于注入知识上下文)
704
- */
705
- getPhaseManager() {
706
- return this.phaseManager;
707
- }
708
624
  /**
709
625
  * 获取 DynamicNodeExecutor 引用
710
626
  */
@@ -725,35 +641,25 @@ ${taskSummary}
725
641
  return dynamic ? this.dynamicPipelineToBridge(dynamic) : null;
726
642
  }
727
643
  /**
728
- * ESC 中断后从 DB 恢复时,重建 PhaseManager 的内存状态。
729
- * - phaseToolsSeen:已完成任务的阶段标记为"已见过 write"(允许后续任务正常检测)
730
- * - totalPhaseEventCounts:按已完成任务数估算(保守值,避免立刻触发兜底推进)
644
+ * ESC 中断后从 DB 恢复时,重建执行器的内存状态。
731
645
  */
732
646
  restorePhaseState(pipeline) {
733
647
  const phase = pipeline.phase;
734
648
  if (phase === 'done')
735
649
  return;
736
- const key = `${pipeline.id}:${phase}`;
737
- const completedCount = pipeline.tasks.filter(t => t.phase === phase && t.status === 'completed').length;
738
- // 跨会话恢复时清理质量门禁修复计数,避免残留计数导致"第N次"误报
739
- this.phaseManager.resetFixAttempts(pipeline.id);
740
- // 优先从 daemon_state 恢复完整状态
741
- if (this.loadPhaseState(pipeline.id, phase)) {
742
- logger.debug(`[Pipeline] 从 daemon_state 恢复阶段状态:${phase}`);
650
+ // 动态 Pipeline 使用 DynamicNodeExecutor 的状态恢复
651
+ if (pipeline.id.startsWith('dp_')) {
652
+ this.dynamicNodeExecutor.resetFixAttempts(pipeline.id);
653
+ logger.debug(`[Pipeline] 动态 Pipeline 状态已恢复:${phase}`);
743
654
  return;
744
655
  }
745
- // 回退:已有已完成任务 恢复 toolsSeen 为"已做过 explore + write",避免卡死
746
- if (completedCount > 0) {
747
- this.phaseManager.restoreToolsSeen(key, new Set(['explore', 'write', 'bash']));
748
- }
749
- // 回退:事件计数按已完成任务数 × 5(保守估算,不触发兜底推进)
750
- this.phaseManager.restoreEventCount(key, completedCount * 5);
751
- logger.debug(`[Pipeline] 回退恢复阶段状态:${phase} | 已完成=${completedCount}`);
656
+ // Legacy Pipeline 不再支持状态恢复
657
+ logger.warn(`[Pipeline] Legacy Pipeline ${pipeline.id} 状态恢复已跳过`);
752
658
  }
753
659
  /** 将当前阶段推进状态持久化到 daemon_state */
754
660
  persistPhaseState(pipelineId, phase) {
755
661
  const key = `${pipelineId}:${phase}`;
756
- const state = this.phaseManager.exportPhaseState(key);
662
+ const state = this.dynamicNodeExecutor.exportState(key);
757
663
  this.storage.setDaemonState(`pipeline:phase-state:${key}`, JSON.stringify(state));
758
664
  }
759
665
  /** 从 daemon_state 加载阶段推进状态,成功返回 true */
@@ -764,7 +670,7 @@ ${taskSummary}
764
670
  return false;
765
671
  try {
766
672
  const parsed = JSON.parse(raw);
767
- this.phaseManager.restorePhaseState(key, parsed);
673
+ this.dynamicNodeExecutor.restoreState(key, parsed);
768
674
  return true;
769
675
  }
770
676
  catch (err) {
@@ -807,7 +713,7 @@ ${taskSummary}
807
713
  this.dynamicNodeExecutor.cleanup(interrupted.pipelineId);
808
714
  }
809
715
  else {
810
- this.phaseManager.cleanup(interrupted.pipelineId);
716
+ this.dynamicNodeExecutor.cleanup(interrupted.pipelineId);
811
717
  }
812
718
  this.activePipelines.delete(projectPath);
813
719
  this.lastInstructionKey.delete(projectPath);
@@ -826,7 +732,7 @@ ${taskSummary}
826
732
  this.dynamicNodeExecutor.cleanup(projectPathOrId);
827
733
  }
828
734
  else {
829
- this.phaseManager.cleanup(projectPathOrId);
735
+ this.dynamicNodeExecutor.cleanup(projectPathOrId);
830
736
  }
831
737
  this.store.closeById(projectPathOrId);
832
738
  // 清理内存缓存(遍历找到对应条目)
@@ -847,7 +753,7 @@ ${taskSummary}
847
753
  this.dynamicNodeExecutor.cleanup(pipeline.id);
848
754
  }
849
755
  else {
850
- this.phaseManager.cleanup(pipeline.id);
756
+ this.dynamicNodeExecutor.cleanup(pipeline.id);
851
757
  }
852
758
  this.store.closeById(pipeline.id);
853
759
  }
@@ -870,7 +776,7 @@ ${taskSummary}
870
776
  this.dynamicNodeExecutor.cleanup(pipelineId);
871
777
  }
872
778
  else {
873
- this.phaseManager.cleanup(pipelineId);
779
+ this.dynamicNodeExecutor.cleanup(pipelineId);
874
780
  }
875
781
  }
876
782
  logger.info(`[Pipeline] 已自动关闭 ${closedIds.length} 个过期 Pipeline(超过 ${ttlMs / 60000} 分钟未更新)`);
@@ -1003,7 +909,9 @@ ${taskSummary}
1003
909
  return null;
1004
910
  return this.dynamicNodeExecutor.getInstruction(dynPipeline);
1005
911
  }
1006
- return this.phaseManager.getPhaseInstruction(pipeline);
912
+ // Legacy Pipeline 不再支持
913
+ logger.warn(`[Pipeline] Legacy Pipeline ${pipeline.id} 不再支持`);
914
+ return null;
1007
915
  }
1008
916
  /**
1009
917
  * 获取任务进度摘要(Stage 09 增强上下文使用)
@@ -1026,20 +934,15 @@ ${taskSummary}
1026
934
  /**
1027
935
  * 获取产物门禁提示(供 stage-scheduler 注入到 AI 上下文)
1028
936
  */
1029
- getArtifactGateReminder(projectPath) {
1030
- const pipeline = this.activePipelines.get(projectPath) || this.store.getActivePipeline(projectPath);
1031
- if (!pipeline || pipeline.phase === 'done')
1032
- return null;
1033
- return this.phaseManager.getArtifactGateReminder(pipeline.id, pipeline.phase);
937
+ getArtifactGateReminder(_projectPath) {
938
+ // Legacy 功能,动态 Pipeline 不使用产物门禁提示
939
+ return null;
1034
940
  }
1035
941
  /**
1036
942
  * 清除产物门禁提示
1037
943
  */
1038
- clearArtifactGateReminder(projectPath) {
1039
- const pipeline = this.activePipelines.get(projectPath) || this.store.getActivePipeline(projectPath);
1040
- if (!pipeline || pipeline.phase === 'done')
1041
- return;
1042
- this.phaseManager.clearArtifactGateReminder(pipeline.id, pipeline.phase);
944
+ clearArtifactGateReminder(_projectPath) {
945
+ // Legacy 功能,动态 Pipeline 不使用产物门禁提示
1043
946
  }
1044
947
  /**
1045
948
  * 获取当前阶段名称(用于失败信号上下文)
@@ -1054,7 +957,7 @@ ${taskSummary}
1054
957
  * 获取 Pipeline 阶段快照(用于复盘分析)
1055
958
  */
1056
959
  getSessionSnapshot(pipelineId) {
1057
- return this.phaseManager.getSessionSnapshot(pipelineId);
960
+ return this.dynamicNodeExecutor.getSessionSnapshot(pipelineId);
1058
961
  }
1059
962
  /**
1060
963
  * 发射 Step 级别的事件(STEP_STARTED/COMPLETED/FAILED/VALIDATED/RETRYING/NEED_HUMAN)
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/pipeline/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/pipeline/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { PHASE_LABELS, nextPhase } from './types.js';
2
2
  import { logger } from '../utils/logger.js';
3
- import { memoryManager } from '../utils/memory-manager.js';
3
+ import { cacheRegistry } from '../core/cache-registry.js';
4
4
  import { CheckpointManager } from './checkpoint.js';
5
5
  import { ArtifactEnforcement } from './artifact-enforcement.js';
6
6
  import fsPromises from 'fs/promises';
@@ -10,21 +10,21 @@ export class PhaseManager {
10
10
  store;
11
11
  checkpointManager;
12
12
  artifactEnforcement;
13
- knowledgeContext = memoryManager.register('phase:knowledge', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
14
- totalPhaseEventCounts = memoryManager.register('phase:eventCounts', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
13
+ knowledgeContext = cacheRegistry.register('phase:knowledge', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
14
+ totalPhaseEventCounts = cacheRegistry.register('phase:eventCounts', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
15
15
  /** 追踪每个 pipeline:phase 已见过的工具类别(逗号分隔字符串,节省内存) */
16
- phaseToolsSeen = memoryManager.register('phase:toolsSeen', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
17
- phaseFixAttempts = memoryManager.register('phase:fixAttempts', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
16
+ phaseToolsSeen = cacheRegistry.register('phase:toolsSeen', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
17
+ phaseFixAttempts = cacheRegistry.register('phase:fixAttempts', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
18
18
  /** 追踪每个 pipeline:phase 的 Write/Edit 调用次数 */
19
- phaseWriteEditCounts = memoryManager.register('phase:writeEditCounts', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
19
+ phaseWriteEditCounts = cacheRegistry.register('phase:writeEditCounts', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
20
20
  /** 追踪每个 pipeline:phase 最近 5 次工具调用 */
21
- recentTools = memoryManager.register('phase:recentTools', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
21
+ recentTools = cacheRegistry.register('phase:recentTools', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
22
22
  /** 质量门禁去重缓存:已通过的 pipeline:phase 不再重复检查(24h TTL) */
23
- gatePassedCache = memoryManager.register('phase:gatePassed', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
23
+ gatePassedCache = cacheRegistry.register('phase:gatePassed', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
24
24
  /** 活动阈值触发标记:标记为 true 的 pipeline:phase 跳过质量门禁直接推进 */
25
- activityThresholdTriggered = memoryManager.register('phase:thresholdTriggered', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
25
+ activityThresholdTriggered = cacheRegistry.register('phase:thresholdTriggered', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.DAY });
26
26
  /** 产物门禁阻断缓存:记录被阻断的 pipeline:phase,用于注入提示 */
27
- artifactGateBlocked = memoryManager.register('phase:artifactBlocked', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.HOUR });
27
+ artifactGateBlocked = cacheRegistry.register('phase:artifactBlocked', { max: CACHE.PHASE_MANAGER_MAX, ttl: TIME.HOUR });
28
28
  static MAX_FIX_ATTEMPTS = 2;
29
29
  static EMPTY_PHASE_ADVANCE_THRESHOLD = 3;
30
30
  constructor(store) {