@winspan/claude-forge 0.4.1 → 0.4.3

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 (117) hide show
  1. package/README.md +1 -1
  2. package/dist/ai-provider/base-provider.d.ts.map +1 -1
  3. package/dist/ai-provider/base-provider.js +3 -1
  4. package/dist/ai-provider/base-provider.js.map +1 -1
  5. package/dist/ai-provider/factory.d.ts +2 -0
  6. package/dist/ai-provider/factory.d.ts.map +1 -1
  7. package/dist/ai-provider/factory.js +1 -1
  8. package/dist/ai-provider/factory.js.map +1 -1
  9. package/dist/ai-provider/types.d.ts +6 -0
  10. package/dist/ai-provider/types.d.ts.map +1 -1
  11. package/dist/ai-provider/types.js.map +1 -1
  12. package/dist/autopilot/quality-gate.d.ts +17 -1
  13. package/dist/autopilot/quality-gate.d.ts.map +1 -1
  14. package/dist/autopilot/quality-gate.js +89 -5
  15. package/dist/autopilot/quality-gate.js.map +1 -1
  16. package/dist/cli/commands/query.d.ts.map +1 -1
  17. package/dist/cli/commands/query.js +59 -8
  18. package/dist/cli/commands/query.js.map +1 -1
  19. package/dist/daemon/engine-registry/init-autopilot.d.ts +2 -1
  20. package/dist/daemon/engine-registry/init-autopilot.d.ts.map +1 -1
  21. package/dist/daemon/engine-registry/init-autopilot.js +3 -2
  22. package/dist/daemon/engine-registry/init-autopilot.js.map +1 -1
  23. package/dist/daemon/engine-registry.js +1 -1
  24. package/dist/daemon/engine-registry.js.map +1 -1
  25. package/dist/daemon/handlers/post-tool-use-handler.d.ts.map +1 -1
  26. package/dist/daemon/handlers/post-tool-use-handler.js +12 -12
  27. package/dist/daemon/handlers/post-tool-use-handler.js.map +1 -1
  28. package/dist/daemon/handlers/pre-tool-use-handler.d.ts.map +1 -1
  29. package/dist/daemon/handlers/pre-tool-use-handler.js +4 -1
  30. package/dist/daemon/handlers/pre-tool-use-handler.js.map +1 -1
  31. package/dist/daemon/handlers/safe-handler.d.ts +15 -0
  32. package/dist/daemon/handlers/safe-handler.d.ts.map +1 -0
  33. package/dist/daemon/handlers/safe-handler.js +24 -0
  34. package/dist/daemon/handlers/safe-handler.js.map +1 -0
  35. package/dist/daemon/handlers/session-cleanup.d.ts.map +1 -1
  36. package/dist/daemon/handlers/session-cleanup.js +4 -5
  37. package/dist/daemon/handlers/session-cleanup.js.map +1 -1
  38. package/dist/daemon/handlers/stop-handler.d.ts.map +1 -1
  39. package/dist/daemon/handlers/stop-handler.js +3 -5
  40. package/dist/daemon/handlers/stop-handler.js.map +1 -1
  41. package/dist/daemon/handlers/user-prompt-handler.d.ts.map +1 -1
  42. package/dist/daemon/handlers/user-prompt-handler.js +15 -0
  43. package/dist/daemon/handlers/user-prompt-handler.js.map +1 -1
  44. package/dist/daemon/index.d.ts.map +1 -1
  45. package/dist/daemon/index.js +1 -0
  46. package/dist/daemon/index.js.map +1 -1
  47. package/dist/daemon/lifecycle.d.ts +7 -0
  48. package/dist/daemon/lifecycle.d.ts.map +1 -1
  49. package/dist/daemon/lifecycle.js +15 -0
  50. package/dist/daemon/lifecycle.js.map +1 -1
  51. package/dist/pattern-engine/execution-tracker.d.ts +1 -1
  52. package/dist/pattern-engine/execution-tracker.d.ts.map +1 -1
  53. package/dist/pattern-engine/execution-tracker.js +5 -1
  54. package/dist/pattern-engine/execution-tracker.js.map +1 -1
  55. package/dist/pattern-engine/index.d.ts +2 -0
  56. package/dist/pattern-engine/index.d.ts.map +1 -1
  57. package/dist/pattern-engine/index.js +32 -1
  58. package/dist/pattern-engine/index.js.map +1 -1
  59. package/dist/pattern-engine/pattern-evolver.d.ts.map +1 -1
  60. package/dist/pattern-engine/pattern-evolver.js +31 -12
  61. package/dist/pattern-engine/pattern-evolver.js.map +1 -1
  62. package/dist/pattern-engine/pattern-router.d.ts +5 -0
  63. package/dist/pattern-engine/pattern-router.d.ts.map +1 -1
  64. package/dist/pattern-engine/pattern-router.js +21 -19
  65. package/dist/pattern-engine/pattern-router.js.map +1 -1
  66. package/dist/pattern-engine/types.d.ts +2 -0
  67. package/dist/pattern-engine/types.d.ts.map +1 -1
  68. package/dist/pipeline/analyzer.d.ts +18 -3
  69. package/dist/pipeline/analyzer.d.ts.map +1 -1
  70. package/dist/pipeline/analyzer.js +172 -59
  71. package/dist/pipeline/analyzer.js.map +1 -1
  72. package/dist/pipeline/artifact-generator.d.ts +6 -9
  73. package/dist/pipeline/artifact-generator.d.ts.map +1 -1
  74. package/dist/pipeline/artifact-generator.js +68 -29
  75. package/dist/pipeline/artifact-generator.js.map +1 -1
  76. package/dist/pipeline/index.d.ts.map +1 -1
  77. package/dist/pipeline/index.js +7 -11
  78. package/dist/pipeline/index.js.map +1 -1
  79. package/dist/pipeline/phase-manager.d.ts +1 -1
  80. package/dist/pipeline/phase-manager.d.ts.map +1 -1
  81. package/dist/pipeline/phase-manager.js +23 -13
  82. package/dist/pipeline/phase-manager.js.map +1 -1
  83. package/dist/pipeline/store.d.ts +1 -1
  84. package/dist/pipeline/store.d.ts.map +1 -1
  85. package/dist/pipeline/store.js +15 -5
  86. package/dist/pipeline/store.js.map +1 -1
  87. package/dist/pipeline/types.d.ts +7 -2
  88. package/dist/pipeline/types.d.ts.map +1 -1
  89. package/dist/pipeline/types.js +6 -4
  90. package/dist/pipeline/types.js.map +1 -1
  91. package/dist/retrospective/index.d.ts +7 -0
  92. package/dist/retrospective/index.d.ts.map +1 -1
  93. package/dist/retrospective/index.js +51 -1
  94. package/dist/retrospective/index.js.map +1 -1
  95. package/dist/retrospective/report-writer.d.ts +6 -7
  96. package/dist/retrospective/report-writer.d.ts.map +1 -1
  97. package/dist/retrospective/report-writer.js +47 -103
  98. package/dist/retrospective/report-writer.js.map +1 -1
  99. package/dist/storage/index.d.ts +45 -0
  100. package/dist/storage/index.d.ts.map +1 -1
  101. package/dist/storage/sqlite.d.ts +94 -0
  102. package/dist/storage/sqlite.d.ts.map +1 -1
  103. package/dist/storage/sqlite.js +390 -1
  104. package/dist/storage/sqlite.js.map +1 -1
  105. package/dist/strategy/bandit.d.ts +51 -0
  106. package/dist/strategy/bandit.d.ts.map +1 -0
  107. package/dist/strategy/bandit.js +115 -0
  108. package/dist/strategy/bandit.js.map +1 -0
  109. package/dist/utils/artifact-manager.d.ts +57 -0
  110. package/dist/utils/artifact-manager.d.ts.map +1 -0
  111. package/dist/utils/artifact-manager.js +164 -0
  112. package/dist/utils/artifact-manager.js.map +1 -0
  113. package/dist/utils/claude-api.d.ts +7 -1
  114. package/dist/utils/claude-api.d.ts.map +1 -1
  115. package/dist/utils/claude-api.js +33 -4
  116. package/dist/utils/claude-api.js.map +1 -1
  117. package/package.json +1 -1
package/README.md CHANGED
@@ -10,7 +10,7 @@ SDLC 智能编排引擎 — 透明旁听 Claude Code 对话,让 Claude 越用
10
10
  - **Pattern 工作流**:AI 语义匹配用户意图,按预定义多阶段 Pattern 注入结构化执行指令
11
11
  - **技能编排**:根据意图自动匹配并注入高质量技能(TDD、调试、重构、代码审查等)
12
12
  - **多 AI 提供商**:支持 Claude、OpenAI、Ollama 等多种 AI 提供商,可灵活切换
13
- - **Pipeline 编排**:复杂任务自动拆解为 analyze design → code → test → review 五阶段,每阶段完成时自动生成结构化产物文档
13
+ - **Pipeline 编排**:复杂任务 AI 智能评估复杂度(simple/moderate/complex)和任务类型(bugfix/feature/refactor/performance),动态规划阶段列表(3-6 阶段),每阶段完成时自动生成结构化产物文档
14
14
  - **阶段产物生成**:Pipeline 每个阶段完成时,AI 自动生成对应文档(需求分析/PRD、架构设计/详细设计、代码改动说明、测试报告、审查报告),存放在 `{project}/.claude-forge/docs/YYYY-MM-DD_HH-MM/`
15
15
  - **质量门禁**:Pipeline 每阶段完成时强制触发 AI 审查,阶段质量不过则阻止推进;Stop 时有未解决 fail 项则阻断会话结束;支持 Convention must 规范注入
16
16
  - **任务复盘分析**:每次会话结束后自动分析执行质量,检测失败信号(用户不满意/迭代请求),生成 `retrospective.md` 报告,并将数据写入 SQLite 供后续模式学习
@@ -1 +1 @@
1
- {"version":3,"file":"base-provider.d.ts","sourceRoot":"","sources":["../../src/ai-provider/base-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAG9E;;GAEG;AACH,cAAM,cAAc;IAMhB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,OAAO;IANjB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,KAAK,CAA6C;gBAGhD,SAAS,GAAE,MAAU,EACrB,OAAO,GAAE,MAAe;IAG5B,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAqBlD,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,KAAK;IAKb,QAAQ,IAAI,QAAQ,GAAG,MAAM,GAAG,WAAW;CAG5C;AAED;;;;GAIG;AACH,8BAAsB,YAAa,YAAW,UAAU;IACtD,SAAS,CAAC,KAAK,EAAE,YAAY,CAO3B;IAEF,SAAS,CAAC,cAAc,iBAAiC;IAEzD;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjF;;;;;OAKG;IACG,QAAQ,CACZ,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,MAAkB,EACzB,gBAAgB,CAAC,EAAE,MAAM,GAAG,iBAAiB,EAC7C,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC;IA4ElB,QAAQ,IAAI,QAAQ,CAAC,YAAY,CAAC;IASlC,WAAW,IAAI,MAAM;CAatB"}
1
+ {"version":3,"file":"base-provider.d.ts","sourceRoot":"","sources":["../../src/ai-provider/base-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAK9E;;GAEG;AACH,cAAM,cAAc;IAMhB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,OAAO;IANjB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,KAAK,CAA6C;gBAGhD,SAAS,GAAE,MAAU,EACrB,OAAO,GAAE,MAAe;IAG5B,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAqBlD,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,KAAK;IAKb,QAAQ,IAAI,QAAQ,GAAG,MAAM,GAAG,WAAW;CAG5C;AAED;;;;GAIG;AACH,8BAAsB,YAAa,YAAW,UAAU;IACtD,SAAS,CAAC,KAAK,EAAE,YAAY,CAS3B;IAEF,SAAS,CAAC,cAAc,iBAAiC;IAEzD;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjF;;;;;OAKG;IACG,QAAQ,CACZ,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,MAAkB,EACzB,gBAAgB,CAAC,EAAE,MAAM,GAAG,iBAAiB,EAC7C,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC;IA4ElB,QAAQ,IAAI,QAAQ,CAAC,YAAY,CAAC;IASlC,WAAW,IAAI,MAAM;CAatB"}
@@ -60,6 +60,8 @@ export class BaseProvider {
60
60
  totalLatencyMs: 0,
61
61
  totalRetries: 0,
62
62
  circuitBreakerTrips: 0,
63
+ totalTokensIn: 0,
64
+ totalTokensOut: 0,
63
65
  byLabel: {},
64
66
  };
65
67
  circuitBreaker = new CircuitBreaker(5, 60_000);
@@ -89,7 +91,7 @@ export class BaseProvider {
89
91
  }
90
92
  this.stats.totalCalls++;
91
93
  if (!this.stats.byLabel[label]) {
92
- this.stats.byLabel[label] = { calls: 0, errors: 0, latencyMs: 0, retries: 0 };
94
+ this.stats.byLabel[label] = { calls: 0, errors: 0, latencyMs: 0, retries: 0, tokensIn: 0, tokensOut: 0 };
93
95
  }
94
96
  this.stats.byLabel[label].calls++;
95
97
  const startTime = Date.now();
@@ -1 +1 @@
1
- {"version":3,"file":"base-provider.js","sourceRoot":"","sources":["../../src/ai-provider/base-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-provider.js","sourceRoot":"","sources":["../../src/ai-provider/base-provider.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
1
  import type { AIProvider } from './types.js';
2
+ import type { SQLiteStorage } from '../storage/sqlite.js';
2
3
  export type ProviderType = 'claude' | 'openai' | 'ollama';
3
4
  export interface ProviderConfig {
4
5
  type: ProviderType;
5
6
  apiKey?: string;
6
7
  model?: string;
7
8
  baseUrl?: string;
9
+ storage?: SQLiteStorage;
8
10
  }
9
11
  /**
10
12
  * AI Provider 工厂函数
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/ai-provider/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAK7C,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE1D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,UAAU,CAajE"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/ai-provider/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAI7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE1D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,UAAU,CAajE"}
@@ -8,7 +8,7 @@ import { OllamaProvider } from './ollama-provider.js';
8
8
  export function createProvider(config) {
9
9
  switch (config.type) {
10
10
  case 'claude':
11
- return new ClaudeAPI(config.apiKey, config.model, config.baseUrl);
11
+ return new ClaudeAPI(config.apiKey, config.model, config.baseUrl, config.storage);
12
12
  case 'openai':
13
13
  return new OpenAIProvider(config.apiKey, config.model, config.baseUrl);
14
14
  case 'ollama':
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/ai-provider/factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAWtD;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,MAAsB;IACnD,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,QAAQ;YACX,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACpE,KAAK,QAAQ;YACX,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACzE,KAAK,QAAQ;YACX,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1D,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,WAAW,GAAU,MAAM,CAAC,IAAI,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,gBAAgB,WAAW,EAAE,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/ai-provider/factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAatD;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,MAAsB;IACnD,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,QAAQ;YACX,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACpF,KAAK,QAAQ;YACX,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACzE,KAAK,QAAQ;YACX,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1D,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,WAAW,GAAU,MAAM,CAAC,IAAI,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,gBAAgB,WAAW,EAAE,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -14,12 +14,18 @@ export interface ApiCallStats {
14
14
  totalLatencyMs: number;
15
15
  totalRetries: number;
16
16
  circuitBreakerTrips: number;
17
+ /** 累计输入 token 数 */
18
+ totalTokensIn: number;
19
+ /** 累计输出 token 数 */
20
+ totalTokensOut: number;
17
21
  /** 按调用方分组的统计,key 为 label 参数(默认 'unknown') */
18
22
  byLabel: Record<string, {
19
23
  calls: number;
20
24
  errors: number;
21
25
  latencyMs: number;
22
26
  retries: number;
27
+ tokensIn: number;
28
+ tokensOut: number;
23
29
  }>;
24
30
  }
25
31
  export interface AIProvider {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ai-provider/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChG;AAED,MAAM,WAAW,UAAU;IACzB;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvF;;OAEG;IACH,QAAQ,IAAI,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEnC;;OAEG;IACH,WAAW,IAAI,MAAM,CAAC;CACvB;AAED,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,SAAS,EAAE,MAAM;CAI9B;AAED,qBAAa,gBAAiB,SAAQ,KAAK;;CAK1C"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ai-provider/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrI;AAED,MAAM,WAAW,UAAU;IACzB;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvF;;OAEG;IACH,QAAQ,IAAI,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEnC;;OAEG;IACH,WAAW,IAAI,MAAM,CAAC;CACvB;AAED,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,SAAS,EAAE,MAAM;CAI9B;AAED,qBAAa,gBAAiB,SAAQ,KAAK;;CAK1C"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/ai-provider/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAuCH,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACxC,YAAY,SAAiB;QAC3B,KAAK,CAAC,YAAY,SAAS,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACzC;QACE,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/ai-provider/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA2CH,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACxC,YAAY,SAAiB;QAC3B,KAAK,CAAC,YAAY,SAAS,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACzC;QACE,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF"}
@@ -2,6 +2,7 @@ import type { AIProvider } from '../ai-provider/types.js';
2
2
  import type { ForgeEvent } from '../types/index.js';
3
3
  import type { PipelinePhase } from '../pipeline/types.js';
4
4
  import type { QualityStandard } from '../convention/types.js';
5
+ import type { SQLiteStorage } from '../storage/sqlite.js';
5
6
  export type QualityLevel = 'pass' | 'warn' | 'fail';
6
7
  export interface QualityResult {
7
8
  level: QualityLevel;
@@ -31,13 +32,24 @@ export interface QualityCheck {
31
32
  */
32
33
  export declare class QualityGateEngine {
33
34
  private api;
35
+ private storage;
36
+ private currentProjectPath;
37
+ private currentSessionId;
34
38
  private currentRequirement;
35
39
  private reviewHistory;
36
40
  private checkCount;
37
41
  private skipPatterns;
38
42
  private conventionStandards;
39
43
  private static readonly MAX_HISTORY_LENGTH;
40
- constructor(api: AIProvider);
44
+ constructor(api: AIProvider, storage?: SQLiteStorage);
45
+ /**
46
+ * v5 新增:设置当前会话上下文(用于持久化)
47
+ */
48
+ setSessionContext(sessionId: string, projectPath: string): void;
49
+ /**
50
+ * v5 新增:从数据库加载未过期的抑制规则
51
+ */
52
+ private loadSuppressions;
41
53
  /**
42
54
  * 设置当前需求(从 Pipeline 获取)
43
55
  */
@@ -52,6 +64,10 @@ export declare class QualityGateEngine {
52
64
  * 只对 Write/Edit 操作触发,且有节流控制
53
65
  */
54
66
  review(event: ForgeEvent): Promise<QualityResult | null>;
67
+ /**
68
+ * v5 新增:检测用户是否修复了历史问题
69
+ */
70
+ private markHistoricalIssuesResolved;
55
71
  /**
56
72
  * AI 驱动的代码审查
57
73
  */
@@ -1 +1 @@
1
- {"version":3,"file":"quality-gate.d.ts","sourceRoot":"","sources":["../../src/autopilot/quality-gate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEpD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,aAAa,CAAC;IACnE,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,GAAG,CAAa;IACxB,OAAO,CAAC,kBAAkB,CAAc;IACxC,OAAO,CAAC,aAAa,CAAgG;IACrH,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,mBAAmB,CAAyB;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAM;gBAEpC,GAAG,EAAE,UAAU;IAI3B;;OAEG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAIzC;;;OAGG;IACH,sBAAsB,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG,IAAI;IAI1D;;;OAGG;IACG,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IA4B9D;;OAEG;YACW,QAAQ;IAsDtB;;OAEG;IACH,iBAAiB,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IA0BzE;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI;IAgBxD;;OAEG;IACH,cAAc,IAAI,MAAM;IAyCxB;;;OAGG;IACH,qBAAqB,IAAI,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,YAAY,EAAE,CAAA;KAAE,CAAC;IAM3E;;;OAGG;IACH,YAAY,IAAI,MAAM;IAItB;;;OAGG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,KAAK,IAAI,IAAI;IAOb;;;OAGG;IACG,qBAAqB,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IA8E3H;;;OAGG;IACG,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAiG5F,OAAO,CAAC,8BAA8B;IAWtC,OAAO,CAAC,WAAW;IAiDnB,OAAO,CAAC,aAAa;CAQtB"}
1
+ {"version":3,"file":"quality-gate.d.ts","sourceRoot":"","sources":["../../src/autopilot/quality-gate.ts"],"names":[],"mappings":"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"}
@@ -16,14 +16,48 @@ import { PHASE_LABELS } from '../pipeline/types.js';
16
16
  */
17
17
  export class QualityGateEngine {
18
18
  api;
19
+ storage = null; // v5 新增:持久化支持
20
+ currentProjectPath = ''; // v5 新增:当前项目路径
21
+ currentSessionId = ''; // v5 新增:当前会话 ID
19
22
  currentRequirement = '';
20
23
  reviewHistory = [];
21
24
  checkCount = 0;
22
25
  skipPatterns = new Set(); // 用户多次忽略的检查类型
23
26
  conventionStandards = []; // 当前项目绑定的 Convention 质量规范
24
27
  static MAX_HISTORY_LENGTH = 50; // 限制历史记录长度,避免内存泄漏
25
- constructor(api) {
28
+ constructor(api, storage) {
26
29
  this.api = api;
30
+ if (storage) {
31
+ this.storage = storage;
32
+ }
33
+ }
34
+ /**
35
+ * v5 新增:设置当前会话上下文(用于持久化)
36
+ */
37
+ setSessionContext(sessionId, projectPath) {
38
+ this.currentSessionId = sessionId;
39
+ this.currentProjectPath = projectPath;
40
+ // 从数据库加载抑制规则
41
+ if (this.storage && projectPath) {
42
+ this.loadSuppressions(projectPath);
43
+ }
44
+ }
45
+ /**
46
+ * v5 新增:从数据库加载未过期的抑制规则
47
+ */
48
+ loadSuppressions(projectPath) {
49
+ if (!this.storage)
50
+ return;
51
+ try {
52
+ const categories = this.storage.getActiveSuppressions(projectPath);
53
+ this.skipPatterns = new Set(categories);
54
+ if (categories.length > 0) {
55
+ logger.info(`[质量门禁] 已加载 ${categories.length} 个抑制规则:${categories.join(', ')}`);
56
+ }
57
+ }
58
+ catch (err) {
59
+ logger.warn(`[质量门禁] 加载抑制规则失败:${err}`);
60
+ }
27
61
  }
28
62
  /**
29
63
  * 设置当前需求(从 Pipeline 获取)
@@ -67,6 +101,33 @@ export class QualityGateEngine {
67
101
  return null;
68
102
  }
69
103
  }
104
+ /**
105
+ * v5 新增:检测用户是否修复了历史问题
106
+ */
107
+ markHistoricalIssuesResolved(filePath, result) {
108
+ if (!this.storage || result.level !== 'pass')
109
+ return;
110
+ try {
111
+ // 查询该文件的未解决问题
112
+ const unresolvedIssues = this.storage.getUnresolvedIssues(filePath);
113
+ if (unresolvedIssues.length === 0)
114
+ return;
115
+ // 本次审查通过,标记历史问题为已解决
116
+ for (const issue of unresolvedIssues) {
117
+ this.storage.markQualityIssueResolved(filePath, issue.category);
118
+ }
119
+ // 更新内存中的 reviewHistory
120
+ for (const h of this.reviewHistory) {
121
+ if (h.filePath === filePath) {
122
+ h.resolved = true;
123
+ }
124
+ }
125
+ logger.info(`[质量门禁] ${filePath} 历史问题已解决(${unresolvedIssues.length} 个)`);
126
+ }
127
+ catch (err) {
128
+ logger.warn(`[质量门禁] 标记历史问题失败:${err}`);
129
+ }
130
+ }
70
131
  /**
71
132
  * AI 驱动的代码审查
72
133
  */
@@ -115,7 +176,27 @@ ${suppressedCategories.length > 0 ? `## 已抑制的检查类别(不要重复
115
176
  - test 和 quality 的 warn 可以接受
116
177
  - 只输出 JSON`;
117
178
  const response = await this.api.complete(prompt, 'quality-gate');
118
- return this.parseResult(response, filePath);
179
+ const result = this.parseResult(response, filePath);
180
+ // v5 新增:检测历史问题是否已修复
181
+ this.markHistoricalIssuesResolved(filePath, result);
182
+ // v5 新增:记录到数据库
183
+ if (this.storage && this.currentSessionId && this.currentProjectPath) {
184
+ for (const check of result.checks) {
185
+ if (check.level !== 'pass') {
186
+ const id = `qgh_${Date.now()}_${Math.random().toString(36).slice(2, 9)}`;
187
+ this.storage.insertQualityGateHistory({
188
+ id,
189
+ session_id: this.currentSessionId,
190
+ project_path: this.currentProjectPath,
191
+ file_path: filePath,
192
+ category: check.category,
193
+ level: check.level,
194
+ message: check.message,
195
+ });
196
+ }
197
+ }
198
+ }
199
+ return result;
119
200
  }
120
201
  /**
121
202
  * 根据审查结果生成注入指令
@@ -146,15 +227,18 @@ ${suppressedCategories.length > 0 ? `## 已抑制的检查类别(不要重复
146
227
  */
147
228
  feedback(accepted, categories) {
148
229
  if (!accepted && categories) {
149
- // 用户忽略了这些类别的审查意见
230
+ // v5 修改:持久化抑制计数
150
231
  for (const cat of categories) {
151
- // 连续 3 次忽略同一类别,自动抑制
232
+ if (this.storage && this.currentProjectPath) {
233
+ this.storage.incrementSuppressionCount(cat, this.currentProjectPath);
234
+ }
235
+ // 连续 3 次忽略同一类别,自动抑制(30 天后恢复)
152
236
  const ignoreCount = this.reviewHistory
153
237
  .filter(h => !h.accepted && h.result.checks.some(c => c.category === cat))
154
238
  .length;
155
239
  if (ignoreCount >= 3) {
156
240
  this.skipPatterns.add(cat);
157
- logger.info(`[质量门禁] 已抑制类别:${cat}(已忽略 ${ignoreCount} 次)`);
241
+ logger.info(`[质量门禁] 已抑制类别:${cat}(已忽略 ${ignoreCount} 次,30 天后自动恢复)`);
158
242
  }
159
243
  }
160
244
  }
@@ -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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"}
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA0H3D"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgL3D"}
@@ -86,25 +86,76 @@ export function registerQueryCommand(program) {
86
86
  });
87
87
  query
88
88
  .command('stats')
89
- .description('Show storage statistics')
90
- .action(async () => {
89
+ .description('Show storage statistics and observability metrics')
90
+ .option('--days <n>', 'Lookback window in days', '7')
91
+ .action(async (options) => {
91
92
  try {
92
93
  const config = ConfigManager.getInstance().get();
93
94
  const dbPath = expandPath(config.storage.path);
94
95
  const storage = new SQLiteStorage(dbPath);
96
+ const days = parseInt(options.days, 10) || 7;
95
97
  const totalEvents = storage.countEvents({});
96
98
  const undistilled = storage.countEvents({ distilled: false });
97
99
  const sessions = storage.querySessions({});
98
100
  const activeSessions = sessions.filter((s) => s.status === 'active');
99
101
  const sizeBytes = storage.getStorageSize();
100
102
  const sizeMB = (sizeBytes / 1024 / 1024).toFixed(2);
101
- table(['Metric', 'Value'], [
102
- ['Total events', String(totalEvents)],
103
- ['Undistilled events', String(undistilled)],
104
- ['Total sessions', String(sessions.length)],
105
- ['Active sessions', String(activeSessions.length)],
106
- ['Database size', `${sizeMB} MB`],
103
+ // 基础存储统计
104
+ info('\n── 存储统计 ──────────────────────────────');
105
+ table(['指标', '值'], [
106
+ ['总事件数', String(totalEvents)],
107
+ ['待蒸馏事件', String(undistilled)],
108
+ ['总会话数', String(sessions.length)],
109
+ ['活跃会话', String(activeSessions.length)],
110
+ ['数据库大小', `${sizeMB} MB`],
107
111
  ]);
112
+ // Token 消耗统计
113
+ try {
114
+ const usageSummary = storage.getApiUsageSummary(undefined, days);
115
+ if (usageSummary.length > 0) {
116
+ info(`\n── Token 消耗(最近 ${days} 天)──────────────`);
117
+ let totalIn = 0, totalOut = 0, totalCost = 0;
118
+ const rows = [];
119
+ for (const row of usageSummary) {
120
+ const label = String(row['label'] ?? '—');
121
+ const tokIn = Number(row['tokens_in'] ?? 0);
122
+ const tokOut = Number(row['tokens_out'] ?? 0);
123
+ const cost = Number(row['cost_usd'] ?? 0);
124
+ totalIn += tokIn;
125
+ totalOut += tokOut;
126
+ totalCost += cost;
127
+ rows.push([label, tokIn.toLocaleString(), tokOut.toLocaleString(), `$${cost.toFixed(4)}`]);
128
+ }
129
+ rows.push(['合计', totalIn.toLocaleString(), totalOut.toLocaleString(), `$${totalCost.toFixed(4)}`]);
130
+ table(['标签', '输入 Token', '输出 Token', '估算成本'], rows);
131
+ }
132
+ }
133
+ catch { /* 旧版 DB 无此表,静默跳过 */ }
134
+ // 满意度趋势
135
+ try {
136
+ const avgSatisfaction = storage.getAverageSatisfaction(undefined, days);
137
+ if (avgSatisfaction > 0) {
138
+ const pct = (avgSatisfaction * 100).toFixed(1);
139
+ const bar = '█'.repeat(Math.round(avgSatisfaction * 20)) + '░'.repeat(20 - Math.round(avgSatisfaction * 20));
140
+ info(`\n── 满意度趋势(最近 ${days} 天)──────────────`);
141
+ info(`平均满意度:${pct}% ${bar}`);
142
+ }
143
+ }
144
+ catch { /* 静默跳过 */ }
145
+ // 模式效果排行
146
+ try {
147
+ const topPatterns = storage.getTopPatterns('', 5);
148
+ if (topPatterns.length > 0) {
149
+ info('\n── 模式效果排行(Top 5)──────────────────');
150
+ table(['模式 ID', '采用次数', '效果评分', '最近使用'], topPatterns.map(p => [
151
+ String(p['task_type'] ?? p['id'] ?? '—').slice(0, 30),
152
+ String(p['adoption_count'] ?? 0),
153
+ `${(Number(p['effectiveness_score'] ?? 0.5) * 100).toFixed(0)}%`,
154
+ String(p['last_used'] ?? '—').slice(0, 16),
155
+ ]));
156
+ }
157
+ }
158
+ catch { /* 静默跳过 */ }
108
159
  storage.close();
109
160
  }
110
161
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/cli/commands/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/cli/commands/query.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,10 @@ import { IntentEngine } from '../../autopilot/intent-engine.js';
2
2
  import { QualityGateEngine } from '../../autopilot/quality-gate.js';
3
3
  import type { AIProvider } from '../../ai-provider/types.js';
4
4
  import type { Config } from '../../config/index.js';
5
+ import type { SQLiteStorage } from '../../storage/sqlite.js';
5
6
  export interface AutopilotEngines {
6
7
  intentEngine: IntentEngine | null;
7
8
  qualityGate: QualityGateEngine | null;
8
9
  }
9
- export declare function initAutopilotEngines(config: Config, sharedApi: AIProvider | null): AutopilotEngines;
10
+ export declare function initAutopilotEngines(config: Config, sharedApi: AIProvider | null, storage: SQLiteStorage): AutopilotEngines;
10
11
  //# sourceMappingURL=init-autopilot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"init-autopilot.d.ts","sourceRoot":"","sources":["../../../src/daemon/engine-registry/init-autopilot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,WAAW,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACvC;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,UAAU,GAAG,IAAI,GAC3B,gBAAgB,CAYlB"}
1
+ {"version":3,"file":"init-autopilot.d.ts","sourceRoot":"","sources":["../../../src/daemon/engine-registry/init-autopilot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,WAAW,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACvC;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,UAAU,GAAG,IAAI,EAC5B,OAAO,EAAE,aAAa,GACrB,gBAAgB,CAYlB"}
@@ -1,7 +1,8 @@
1
1
  import { IntentEngine } from '../../autopilot/intent-engine.js';
2
2
  import { QualityGateEngine } from '../../autopilot/quality-gate.js';
3
3
  import { logger } from '../../utils/logger.js';
4
- export function initAutopilotEngines(config, sharedApi) {
4
+ export function initAutopilotEngines(config, sharedApi, storage // v5 新增:注入 storage
5
+ ) {
5
6
  if (!config.autopilot.enabled || !sharedApi) {
6
7
  logger.info(`[自动驾驶] 引擎未初始化(enabled=${config.autopilot.enabled}, api=${!!sharedApi})`);
7
8
  return { intentEngine: null, qualityGate: null };
@@ -10,7 +11,7 @@ export function initAutopilotEngines(config, sharedApi) {
10
11
  ? (logger.info('自动驾驶 IntentEngine 已初始化'), new IntentEngine(sharedApi))
11
12
  : null;
12
13
  const qualityGate = config.autopilot.quality_gate
13
- ? (logger.info('自动驾驶 QualityGateEngine 已初始化'), new QualityGateEngine(sharedApi))
14
+ ? (logger.info('自动驾驶 QualityGateEngine 已初始化'), new QualityGateEngine(sharedApi, storage)) // v5 修改:传入 storage
14
15
  : null;
15
16
  return { intentEngine, qualityGate };
16
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"init-autopilot.js","sourceRoot":"","sources":["../../../src/daemon/engine-registry/init-autopilot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAS/C,MAAM,UAAU,oBAAoB,CAClC,MAAc,EACd,SAA4B;IAE5B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,yBAAyB,MAAM,CAAC,SAAS,CAAC,OAAO,SAAS,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC;QACtF,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACnD,CAAC;IACD,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,eAAe;QACnD,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,EAAE,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;QACtE,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,YAAY;QAC/C,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,EAAE,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAChF,CAAC,CAAC,IAAI,CAAC;IACT,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"init-autopilot.js","sourceRoot":"","sources":["../../../src/daemon/engine-registry/init-autopilot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAU/C,MAAM,UAAU,oBAAoB,CAClC,MAAc,EACd,SAA4B,EAC5B,OAAsB,CAAE,mBAAmB;;IAE3C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,yBAAyB,MAAM,CAAC,SAAS,CAAC,OAAO,SAAS,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC;QACtF,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACnD,CAAC;IACD,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,eAAe;QACnD,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,EAAE,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;QACtE,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,YAAY;QAC/C,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,EAAE,IAAI,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAE,mBAAmB;QAC9G,CAAC,CAAC,IAAI,CAAC;IACT,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;AACvC,CAAC"}
@@ -17,7 +17,7 @@ export async function buildEngineContext(config, storage, sharedApi) {
17
17
  const orchestration = initOrchestrationEngine(config, storage);
18
18
  const { skillRegistry, evolveInitTimer, evolveDailyTimer } = initSkillRegistry(sharedApi);
19
19
  const pipelineEngine = initPipelineEngine(storage, sharedApi);
20
- const { intentEngine, qualityGate } = initAutopilotEngines(config, sharedApi);
20
+ const { intentEngine, qualityGate } = initAutopilotEngines(config, sharedApi, storage); // v5 修改:传入 storage
21
21
  const profileManager = await initProfileManager();
22
22
  const patternEngine = initPatternEngine(sharedApi, storage);
23
23
  const conventionManager = new ConventionManager();
@@ -1 +1 @@
1
- {"version":3,"file":"engine-registry.js","sourceRoot":"","sources":["../../src/daemon/engine-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine-registry.js","sourceRoot":"","sources":["../../src/daemon/engine-registry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"post-tool-use-handler.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/post-tool-use-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIpD,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,GAAG,EAAE,cAAc;IAIzB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;CAmI9D"}
1
+ {"version":3,"file":"post-tool-use-handler.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/post-tool-use-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAKpD,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,GAAG,EAAE,cAAc;IAIzB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;CAkI9D"}