@winspan/claude-forge 0.5.0 → 0.5.2
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/dist/ai-provider/base-provider.d.ts.map +1 -1
- package/dist/ai-provider/base-provider.js +1 -4
- package/dist/ai-provider/base-provider.js.map +1 -1
- package/dist/autopilot/quality-gate.d.ts.map +1 -1
- package/dist/autopilot/quality-gate.js +19 -13
- package/dist/autopilot/quality-gate.js.map +1 -1
- package/dist/autopilot/rule-distiller.d.ts.map +1 -1
- package/dist/autopilot/rule-distiller.js +15 -4
- package/dist/autopilot/rule-distiller.js.map +1 -1
- package/dist/cli/commands/logs.js +3 -3
- package/dist/cli/commands/logs.js.map +1 -1
- package/dist/daemon/engine-registry.d.ts.map +1 -1
- package/dist/daemon/engine-registry.js +0 -4
- package/dist/daemon/engine-registry.js.map +1 -1
- package/dist/daemon/handler-context.d.ts +3 -5
- package/dist/daemon/handler-context.d.ts.map +1 -1
- package/dist/daemon/handlers/post-tool-use-handler.d.ts.map +1 -1
- package/dist/daemon/handlers/post-tool-use-handler.js +1 -11
- package/dist/daemon/handlers/post-tool-use-handler.js.map +1 -1
- package/dist/daemon/handlers/session-cleanup.d.ts +3 -0
- package/dist/daemon/handlers/session-cleanup.d.ts.map +1 -1
- package/dist/daemon/handlers/session-cleanup.js +30 -10
- package/dist/daemon/handlers/session-cleanup.js.map +1 -1
- package/dist/daemon/handlers/stop-handler.d.ts.map +1 -1
- package/dist/daemon/handlers/stop-handler.js +26 -1
- package/dist/daemon/handlers/stop-handler.js.map +1 -1
- package/dist/daemon/handlers/user-prompt-handler.d.ts +11 -5
- package/dist/daemon/handlers/user-prompt-handler.d.ts.map +1 -1
- package/dist/daemon/handlers/user-prompt-handler.js +77 -54
- package/dist/daemon/handlers/user-prompt-handler.js.map +1 -1
- package/dist/knowledge/graph.d.ts +18 -0
- package/dist/knowledge/graph.d.ts.map +1 -1
- package/dist/knowledge/graph.js +87 -2
- package/dist/knowledge/graph.js.map +1 -1
- package/dist/pattern-engine/pattern-router.d.ts.map +1 -1
- package/dist/pattern-engine/pattern-router.js +32 -20
- package/dist/pattern-engine/pattern-router.js.map +1 -1
- package/dist/pipeline/phase-manager.d.ts +2 -0
- package/dist/pipeline/phase-manager.d.ts.map +1 -1
- package/dist/pipeline/phase-manager.js +30 -10
- package/dist/pipeline/phase-manager.js.map +1 -1
- package/dist/pipeline/template-router.d.ts.map +1 -1
- package/dist/pipeline/template-router.js +18 -4
- package/dist/pipeline/template-router.js.map +1 -1
- package/dist/retrospective/index.d.ts +5 -0
- package/dist/retrospective/index.d.ts.map +1 -1
- package/dist/retrospective/index.js +6 -0
- package/dist/retrospective/index.js.map +1 -1
- package/dist/retrospective/satisfaction-inferrer.d.ts.map +1 -1
- package/dist/retrospective/satisfaction-inferrer.js +13 -9
- package/dist/retrospective/satisfaction-inferrer.js.map +1 -1
- package/dist/storage/index.d.ts +26 -0
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/sqlite.d.ts +32 -1
- package/dist/storage/sqlite.d.ts.map +1 -1
- package/dist/storage/sqlite.js +101 -2
- package/dist/storage/sqlite.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-cleanup.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/session-cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAa5D;;;GAGG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,GAAG,CAAiB;gBAEhB,GAAG,EAAE,cAAc;IAI/B,2BAA2B;IACrB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BtD,kCAAkC;IAC5B,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBhD,kBAAkB;IACZ,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBnC,aAAa;IACP,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBxD,aAAa;IACP,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IASpC,iBAAiB;IACX,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAcpC,+BAA+B;IACzB,wBAAwB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAgChE,yBAAyB;IACnB,cAAc,CAClB,KAAK,EAAE,UAAU,EACjB,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,IAAI,CAAC;IAwDhB,2CAA2C;IACrC,sBAAsB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA4C9D,2BAA2B;IACrB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBpC
|
|
1
|
+
{"version":3,"file":"session-cleanup.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/session-cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAa5D;;;GAGG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,GAAG,CAAiB;gBAEhB,GAAG,EAAE,cAAc;IAI/B,2BAA2B;IACrB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BtD,kCAAkC;IAC5B,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBhD,kBAAkB;IACZ,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBnC,aAAa;IACP,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBxD,aAAa;IACP,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IASpC,iBAAiB;IACX,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAcpC,+BAA+B;IACzB,wBAAwB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAgChE,yBAAyB;IACnB,cAAc,CAClB,KAAK,EAAE,UAAU,EACjB,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,IAAI,CAAC;IAwDhB,2CAA2C;IACrC,sBAAsB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA4C9D,2BAA2B;IACrB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBpC;;;;;;;OAOG;IACG,sBAAsB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAgF/D"}
|
|
@@ -290,6 +290,9 @@ export class SessionCleanupService {
|
|
|
290
290
|
* 同步 Claude Code Plan Mode 产物到项目 docs/YYYY-MM-DD/架构设计/(兜底机制)
|
|
291
291
|
* 主路径:Claude 在 ExitPlanMode 后通过 Write 工具直接写入 planPath。
|
|
292
292
|
* 兜底:Stop 事件时扫描当天内最新修改的计划文件,补写未落盘的情况。
|
|
293
|
+
*
|
|
294
|
+
* 安全约束:计划文件必须在内容中包含当前 project_path(或其 basename),
|
|
295
|
+
* 否则跳过,防止跨项目污染(如 data-market 的计划写入 claude-forge)。
|
|
293
296
|
*/
|
|
294
297
|
async syncPlanFromClaudeCode(event) {
|
|
295
298
|
if (!event.project_path) {
|
|
@@ -302,10 +305,9 @@ export class SessionCleanupService {
|
|
|
302
305
|
logger.debug('[Forge:计划同步] ~/.claude/plans/ 不存在');
|
|
303
306
|
return;
|
|
304
307
|
}
|
|
305
|
-
//
|
|
306
|
-
const
|
|
307
|
-
|
|
308
|
-
const todayStartMs = todayStart.getTime();
|
|
308
|
+
// 时间窗口:session 开始时间(event.timestamp)至今,最多回溯 24h
|
|
309
|
+
const sessionStart = new Date(event.timestamp);
|
|
310
|
+
const windowStartMs = Math.max(sessionStart.getTime(), Date.now() - 24 * 60 * 60 * 1000);
|
|
309
311
|
const files = fs.readdirSync(claudePlansDir)
|
|
310
312
|
.filter(f => f.endsWith('.md'))
|
|
311
313
|
.map(f => {
|
|
@@ -313,21 +315,39 @@ export class SessionCleanupService {
|
|
|
313
315
|
const stat = fs.statSync(fullPath);
|
|
314
316
|
return { path: fullPath, mtime: stat.mtimeMs };
|
|
315
317
|
})
|
|
316
|
-
.filter(f => f.mtime >=
|
|
318
|
+
.filter(f => f.mtime >= windowStartMs)
|
|
317
319
|
.sort((a, b) => b.mtime - a.mtime);
|
|
318
320
|
if (files.length === 0) {
|
|
319
|
-
logger.debug('[Forge:计划同步]
|
|
321
|
+
logger.debug('[Forge:计划同步] 本 session 内无计划文件');
|
|
322
|
+
return;
|
|
323
|
+
}
|
|
324
|
+
// 项目路径匹配:完整路径 或 最后两段(basename/subname)
|
|
325
|
+
const projectBasename = path.basename(event.project_path);
|
|
326
|
+
const projectTail = event.project_path.split('/').slice(-2).join('/');
|
|
327
|
+
// 找到第一个内容中包含当前项目路径引用的计划文件
|
|
328
|
+
let matchedPlan = null;
|
|
329
|
+
let matchedContent = '';
|
|
330
|
+
for (const file of files) {
|
|
331
|
+
const content = fs.readFileSync(file.path, 'utf-8');
|
|
332
|
+
if (content.includes(event.project_path) ||
|
|
333
|
+
content.includes(projectTail) ||
|
|
334
|
+
content.includes(projectBasename)) {
|
|
335
|
+
matchedPlan = file;
|
|
336
|
+
matchedContent = content;
|
|
337
|
+
break;
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
if (!matchedPlan) {
|
|
341
|
+
logger.debug(`[Forge:计划同步] 跳过:本 session 内计划文件均不属于项目 ${projectTail}`);
|
|
320
342
|
return;
|
|
321
343
|
}
|
|
322
|
-
const latestPlan = files[0];
|
|
323
|
-
const content = fs.readFileSync(latestPlan.path, 'utf-8');
|
|
324
344
|
// 提取计划标题(第一个 # 标题)
|
|
325
|
-
const titleMatch =
|
|
345
|
+
const titleMatch = matchedContent.match(/^#\s+(.+)$/m);
|
|
326
346
|
const title = titleMatch ? titleMatch[1].trim() : '实现计划';
|
|
327
347
|
// 通过 ArtifactManager 写入到正确位置(幂等:已存在则追加)
|
|
328
348
|
const artifactManager = new ArtifactManager(event.project_path);
|
|
329
349
|
const filename = `${title}.md`;
|
|
330
|
-
const writtenPath = artifactManager.writeArtifact('plan', filename,
|
|
350
|
+
const writtenPath = artifactManager.writeArtifact('plan', filename, matchedContent, `从 Plan Mode 同步的实现计划`, '架构设计');
|
|
331
351
|
logger.info(`[Forge:计划同步] 兜底同步计划文档:${path.relative(event.project_path, writtenPath)}`);
|
|
332
352
|
}
|
|
333
353
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-cleanup.js","sourceRoot":"","sources":["../../../src/daemon/handlers/session-cleanup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-cleanup.js","sourceRoot":"","sources":["../../../src/daemon/handlers/session-cleanup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stop-handler.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/stop-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;AAMpD,qBAAa,WAAY,SAAQ,eAAe;IAC9C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAChD,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,cAAc,CAA0B;gBAEpC,GAAG,EAAE,cAAc;
|
|
1
|
+
{"version":3,"file":"stop-handler.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/stop-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;AAMpD,qBAAa,WAAY,SAAQ,eAAe;IAC9C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAChD,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,cAAc,CAA0B;gBAEpC,GAAG,EAAE,cAAc;IAYzB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;CAsL9D"}
|
|
@@ -11,6 +11,17 @@ export class StopHandler extends BaseHookHandler {
|
|
|
11
11
|
constructor(ctx) {
|
|
12
12
|
super(ctx);
|
|
13
13
|
this.cleanup = new SessionCleanupService(ctx);
|
|
14
|
+
// 从持久化存储恢复 stopCount
|
|
15
|
+
const saved = ctx.storage.getDaemonState('stopCount');
|
|
16
|
+
if (saved)
|
|
17
|
+
this.stopCount = parseInt(saved, 10) || 0;
|
|
18
|
+
const savedRetries = ctx.storage.getDaemonState('pendingRetries');
|
|
19
|
+
if (savedRetries) {
|
|
20
|
+
try {
|
|
21
|
+
this.pendingRetries = new Set(JSON.parse(savedRetries));
|
|
22
|
+
}
|
|
23
|
+
catch { /* 忽略 */ }
|
|
24
|
+
}
|
|
14
25
|
}
|
|
15
26
|
async handle(event) {
|
|
16
27
|
const { resumeEngine, qualityGate, trigger, config } = this.ctx;
|
|
@@ -149,7 +160,18 @@ export class StopHandler extends BaseHookHandler {
|
|
|
149
160
|
if (skipped.length > 0) {
|
|
150
161
|
logger.info(`跳过 ${skipped.length} 个周期任务:${skipped.join('、')}`);
|
|
151
162
|
}
|
|
152
|
-
const
|
|
163
|
+
const CLEANUP_TOTAL_TIMEOUT = 30_000; // 30s 总超时
|
|
164
|
+
let timeoutHandle = null;
|
|
165
|
+
const allSettled = Promise.allSettled(cleanupTasks.map(t => t.task));
|
|
166
|
+
const timeoutRace = new Promise((_, reject) => {
|
|
167
|
+
timeoutHandle = setTimeout(() => reject(new Error('清理链总超时')), CLEANUP_TOTAL_TIMEOUT);
|
|
168
|
+
});
|
|
169
|
+
const results = await Promise.race([allSettled, timeoutRace]).catch((err) => {
|
|
170
|
+
logger.warn(`[Stop] 清理链超时,部分任务未完成:${err.message}`);
|
|
171
|
+
return cleanupTasks.map(() => ({ status: 'rejected', reason: err }));
|
|
172
|
+
});
|
|
173
|
+
if (timeoutHandle)
|
|
174
|
+
clearTimeout(timeoutHandle);
|
|
153
175
|
this.pendingRetries.clear();
|
|
154
176
|
const failed = results
|
|
155
177
|
.map((r, i) => r.status === 'rejected' ? cleanupTasks[i].name : null)
|
|
@@ -162,6 +184,9 @@ export class StopHandler extends BaseHookHandler {
|
|
|
162
184
|
else {
|
|
163
185
|
logger.info(`全部 ${results.length} 个清理任务完成`);
|
|
164
186
|
}
|
|
187
|
+
// 持久化 stopCount 和 pendingRetries
|
|
188
|
+
this.ctx.storage.setDaemonState('stopCount', String(this.stopCount));
|
|
189
|
+
this.ctx.storage.setDaemonState('pendingRetries', JSON.stringify([...this.pendingRetries]));
|
|
165
190
|
}
|
|
166
191
|
}
|
|
167
192
|
//# sourceMappingURL=stop-handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stop-handler.js","sourceRoot":"","sources":["../../../src/daemon/handlers/stop-handler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,MAAM,OAAO,WAAY,SAAQ,eAAe;IAC7B,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;IACtC,OAAO,CAAwB;IACxC,SAAS,GAAG,CAAC,CAAC;IACd,cAAc,GAAgB,IAAI,GAAG,EAAE,CAAC;IAEhD,YAAY,GAAmB;QAC7B,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,OAAO,GAAG,IAAI,qBAAqB,CAAC,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"stop-handler.js","sourceRoot":"","sources":["../../../src/daemon/handlers/stop-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,8 @@ export declare class UserPromptHandler extends BaseHookHandler {
|
|
|
18
18
|
* 相同 keywords / decisions 内容在同一 session 内只注入一次。
|
|
19
19
|
*/
|
|
20
20
|
private injectionCache;
|
|
21
|
+
/** 已处理过负向重启检测的 session(key=sessionId),避免同 session 重复触发 */
|
|
22
|
+
private negativeRestartChecked;
|
|
21
23
|
private static readonly ANALYSIS_COOLDOWN_MS;
|
|
22
24
|
/** Map 条目超过此时长(1 小时)后在下次写入时清理 */
|
|
23
25
|
private static readonly MAX_STATE_AGE_MS;
|
|
@@ -87,11 +89,6 @@ export declare class UserPromptHandler extends BaseHookHandler {
|
|
|
87
89
|
* 未命中或模板路由不可用时返回 undefined,继续走 Pattern 路由。
|
|
88
90
|
*/
|
|
89
91
|
private handleTemplateRoute;
|
|
90
|
-
/**
|
|
91
|
-
* Pattern 路由:若命中 Pattern,注入结构化执行指令并返回 HookResponse。
|
|
92
|
-
* 未命中或 patternEngine 不可用时返回 undefined,继续走原有编排路径。
|
|
93
|
-
*/
|
|
94
|
-
private handlePatternRoute;
|
|
95
92
|
private buildExecutionCard;
|
|
96
93
|
/** 处理复杂任务的 Pipeline 决策,返回 HookResponse 或 undefined(继续走简单路径) */
|
|
97
94
|
private handleComplexTask;
|
|
@@ -102,6 +99,10 @@ export declare class UserPromptHandler extends BaseHookHandler {
|
|
|
102
99
|
*/
|
|
103
100
|
private buildLightweightResponse;
|
|
104
101
|
private buildSimpleResponse;
|
|
102
|
+
/**
|
|
103
|
+
* 知识图谱上下文:查找历史成功路径,注入为参考上下文
|
|
104
|
+
*/
|
|
105
|
+
private buildGraphContext;
|
|
105
106
|
/**
|
|
106
107
|
* FTS5 历史场景检索:按 searchKeywords 查找最相似的历史 session,
|
|
107
108
|
* 读取对应 decisions.md 片段注入为"相似历史场景"上下文。
|
|
@@ -136,6 +137,11 @@ export declare class UserPromptHandler extends BaseHookHandler {
|
|
|
136
137
|
* 纯关键词匹配,不调用 AI,用于日志展示。
|
|
137
138
|
*/
|
|
138
139
|
private inferCurrentRole;
|
|
140
|
+
/**
|
|
141
|
+
* P4:负向重启回溯修正
|
|
142
|
+
* 检测到 dissatisfied 信号时,将上一个 session(24h 内)的满意度评分下调(×0.5,最低 0.1)
|
|
143
|
+
*/
|
|
144
|
+
private applyNegativeRestartPenalty;
|
|
139
145
|
/** 构建用户上下文(供 IntentEngine 有状态分析) */
|
|
140
146
|
private buildUserContext;
|
|
141
147
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-prompt-handler.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/user-prompt-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;AA6BpD,qBAAa,iBAAkB,SAAQ,eAAe;IACpD;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CAA8B;IACvD;;;OAGG;IACH,OAAO,CAAC,cAAc,CAA6B;IACnD;;;OAGG;IACH,OAAO,CAAC,cAAc,CAAqC;
|
|
1
|
+
{"version":3,"file":"user-prompt-handler.d.ts","sourceRoot":"","sources":["../../../src/daemon/handlers/user-prompt-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;AA6BpD,qBAAa,iBAAkB,SAAQ,eAAe;IACpD;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CAA8B;IACvD;;;OAGG;IACH,OAAO,CAAC,cAAc,CAA6B;IACnD;;;OAGG;IACH,OAAO,CAAC,cAAc,CAAqC;IAC3D,0DAA0D;IAC1D,OAAO,CAAC,sBAAsB,CAAqB;IAEnD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAO;IACnD,iCAAiC;IACjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAkB;IAE1D,OAAO,CAAC,aAAa,CAA8B;IACnD,8BAA8B;IAC9B,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,cAAc,CAA+B;gBAEzC,GAAG,EAAE,cAAc;IAW/B,4DAA4D;IAC5D,OAAO,CAAC,oBAAoB,CAAqB;IACjD,6CAA6C;IAC7C,OAAO,CAAC,cAAc,CAA6B;IAE7C,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IA0P7D;;;OAGG;YACW,mBAAmB;IAwBjC,6BAA6B;IAC7B,OAAO,CAAC,aAAa;IAYrB;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAqDhC,8CAA8C;IAC9C,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,oBAAoB;IAQ5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAmB3B,8BAA8B;IAC9B,OAAO,CAAC,kBAAkB;IAqB1B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAgB7B;;;OAGG;IACH,OAAO,CAAC,6BAA6B;IAwBrC,uBAAuB;IACvB,OAAO,CAAC,kBAAkB;IAI1B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA+C5B;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IAsExB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA8B5B,OAAO,CAAC,WAAW;IASnB;;;OAGG;YACW,mBAAmB;IAmDjC,OAAO,CAAC,kBAAkB;IAW1B,+DAA+D;YACjD,iBAAiB;YA4BjB,iBAAiB;IAiD/B,OAAO,CAAC,oBAAoB;IAkB5B;;OAEG;IACH,OAAO,CAAC,wBAAwB;YAgClB,mBAAmB;IAwDjC;;OAEG;YACW,iBAAiB;IAkB/B;;;;OAIG;IACH,OAAO,CAAC,0BAA0B;IAuClC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAmCzB;;;OAGG;YACW,oBAAoB;IA2ClC;;OAEG;YACW,yBAAyB;IA6BvC;;OAEG;IACH,OAAO,CAAC,4BAA4B;IA0CpC;;OAEG;YACW,uBAAuB;IA2BrC;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IA8CxB;;;OAGG;YACW,2BAA2B;IAoCzC,oCAAoC;IACpC,OAAO,CAAC,gBAAgB;CAqCzB"}
|
|
@@ -28,6 +28,8 @@ export class UserPromptHandler extends BaseHookHandler {
|
|
|
28
28
|
* 相同 keywords / decisions 内容在同一 session 内只注入一次。
|
|
29
29
|
*/
|
|
30
30
|
injectionCache = new Map();
|
|
31
|
+
/** 已处理过负向重启检测的 session(key=sessionId),避免同 session 重复触发 */
|
|
32
|
+
negativeRestartChecked = new Set();
|
|
31
33
|
static ANALYSIS_COOLDOWN_MS = 800;
|
|
32
34
|
/** Map 条目超过此时长(1 小时)后在下次写入时清理 */
|
|
33
35
|
static MAX_STATE_AGE_MS = 60 * 60 * 1000;
|
|
@@ -73,6 +75,13 @@ export class UserPromptHandler extends BaseHookHandler {
|
|
|
73
75
|
project_path: event.project_path,
|
|
74
76
|
}).catch(err => logger.debug(`[Forge:任务复盘] 记录失败信号异常:${err}`));
|
|
75
77
|
}
|
|
78
|
+
// P4:负向重启回溯修正(仅在 session 内首条 UserPromptSubmit 时触发)
|
|
79
|
+
if (!this.negativeRestartChecked.has(event.session_id)) {
|
|
80
|
+
this.negativeRestartChecked.add(event.session_id);
|
|
81
|
+
if (signal?.signal_type === 'dissatisfied') {
|
|
82
|
+
this.applyNegativeRestartPenalty(event.project_path, event.session_id).catch(err => logger.debug(`[Forge:满意度] 负向重启回溯失败:${err}`));
|
|
83
|
+
}
|
|
84
|
+
}
|
|
76
85
|
}
|
|
77
86
|
// 主动干预:检测卡死循环(fix_attempt_count >= 3 时注入建议)
|
|
78
87
|
if (this.ctx.retrospectiveEngine) {
|
|
@@ -204,10 +213,6 @@ export class UserPromptHandler extends BaseHookHandler {
|
|
|
204
213
|
const templateResponse = await this.handleTemplateRoute(userPrompt, analysis.complexity, event, analysis);
|
|
205
214
|
if (templateResponse !== undefined)
|
|
206
215
|
return templateResponse;
|
|
207
|
-
// 3.6 Pattern 路由(优先于 Pipeline / Skill 编排)
|
|
208
|
-
const patternResponse = await this.handlePatternRoute(userPrompt, analysis.complexity, event, analysis);
|
|
209
|
-
if (patternResponse !== undefined)
|
|
210
|
-
return patternResponse;
|
|
211
216
|
// 3.7 计划续接路由:有活跃计划时,优先注入计划上下文,跳过 Plan Mode 强制和 Pipeline 建议
|
|
212
217
|
if (activePlan && analysis.complexity !== 'simple') {
|
|
213
218
|
const resumeResponse = this.handlePlanResume(activePlan, userPrompt, analysis.requirement, event.project_path);
|
|
@@ -640,55 +645,6 @@ Do NOT write any code until the plan is approved and saved to ${planPath}. Start
|
|
|
640
645
|
return undefined;
|
|
641
646
|
}
|
|
642
647
|
}
|
|
643
|
-
/**
|
|
644
|
-
* Pattern 路由:若命中 Pattern,注入结构化执行指令并返回 HookResponse。
|
|
645
|
-
* 未命中或 patternEngine 不可用时返回 undefined,继续走原有编排路径。
|
|
646
|
-
*/
|
|
647
|
-
async handlePatternRoute(userPrompt, complexity, event, analysis) {
|
|
648
|
-
const { patternEngine, pipelineEngine } = this.ctx;
|
|
649
|
-
if (!patternEngine)
|
|
650
|
-
return undefined;
|
|
651
|
-
try {
|
|
652
|
-
// P1-1: Pipeline vs Pattern 职责分离 — Pipeline 活跃时,Pattern 降级为子进程模式(不注入指令)
|
|
653
|
-
if (pipelineEngine?.hasActivePipeline(event.project_path)) {
|
|
654
|
-
logger.info('[Forge:Pattern] Pipeline 活跃,Pattern 降级为子进程模式(不注入指令)');
|
|
655
|
-
return undefined;
|
|
656
|
-
}
|
|
657
|
-
// 从项目绑定的 Convention 获取角色体系,动态生成项目级 Pattern
|
|
658
|
-
const activeConventions = this.ctx.conventionManager.getActiveConventions(event.project_path);
|
|
659
|
-
const patternCtx = await this.ctx.latencyTracer.trace({
|
|
660
|
-
session_id: event.session_id,
|
|
661
|
-
project_path: event.project_path,
|
|
662
|
-
trace_type: 'pattern_route',
|
|
663
|
-
engine_name: 'PatternEngine',
|
|
664
|
-
}, () => patternEngine.routeAndStart(userPrompt, event.session_id, event.project_path, complexity, activeConventions));
|
|
665
|
-
if (!patternCtx) {
|
|
666
|
-
// 未匹配到 Pattern,走常规路径,但仍推断当前角色
|
|
667
|
-
const inferredRole = this.inferCurrentRole(analysis.requirement, activeConventions);
|
|
668
|
-
const roleInfo = inferredRole ? ` | 当前角色=${inferredRole.name}` : '';
|
|
669
|
-
logger.info(`未匹配到工作流模板,走常规路径${roleInfo}`);
|
|
670
|
-
return undefined;
|
|
671
|
-
}
|
|
672
|
-
const plan = patternEngine.getActivePlan(event.project_path);
|
|
673
|
-
if (!plan)
|
|
674
|
-
return undefined;
|
|
675
|
-
// 用已获取的 Convention 注入角色约束
|
|
676
|
-
const primaryConvention = activeConventions[0] ?? null;
|
|
677
|
-
const ctx = patternEngine.buildAdditionalContext(patternCtx, plan.patternId, primaryConvention);
|
|
678
|
-
if (!ctx)
|
|
679
|
-
return undefined;
|
|
680
|
-
logger.info(`匹配到工作流模板:${patternCtx.patternName} — 当前阶段:${patternCtx.currentPhaseId}`);
|
|
681
|
-
// 执行路径卡片通过 systemMessage 展示给用户,Pattern 指令通过 additionalContext 传给 Claude
|
|
682
|
-
const card = this.buildExecutionCard(analysis);
|
|
683
|
-
const profileCtx = this.buildProfileContext(event.project_path);
|
|
684
|
-
const combinedCtx = profileCtx ? ForgeFormatter.mergeContexts(profileCtx, ctx) : ctx;
|
|
685
|
-
return { allow: true, systemMessage: card, additionalContext: ForgeFormatter.wrapInQuote(combinedCtx) };
|
|
686
|
-
}
|
|
687
|
-
catch (err) {
|
|
688
|
-
logger.warn(`工作流路由失败,降级到技能编排:${err}`);
|
|
689
|
-
return undefined;
|
|
690
|
-
}
|
|
691
|
-
}
|
|
692
648
|
buildExecutionCard(analysis) {
|
|
693
649
|
return ForgeFormatter.formatExecutionCard({
|
|
694
650
|
intent: analysis.requirement,
|
|
@@ -790,6 +746,9 @@ Do NOT write any code until the plan is approved and saved to ${planPath}. Start
|
|
|
790
746
|
const similarSessionCtx = analysis.searchKeywords?.length
|
|
791
747
|
? this.buildSimilarSessionContext(analysis.searchKeywords, projectPath)
|
|
792
748
|
: undefined;
|
|
749
|
+
const graphContext = analysis.searchKeywords?.length
|
|
750
|
+
? await this.buildGraphContext(analysis.searchKeywords, projectPath)
|
|
751
|
+
: undefined;
|
|
793
752
|
// 加载项目规范并记录
|
|
794
753
|
const activeConventions = this.ctx.conventionManager.getActiveConventions(projectPath);
|
|
795
754
|
const conventionPrompt = this.ctx.conventionManager.getActivePrompt(projectPath) ?? undefined;
|
|
@@ -805,7 +764,7 @@ Do NOT write any code until the plan is approved and saved to ${planPath}. Start
|
|
|
805
764
|
additionalContext: clarify,
|
|
806
765
|
};
|
|
807
766
|
}
|
|
808
|
-
const body = ContextInjector.build({ content: this.buildPlanStartContext(projectPath), priority: INJECT_PRIORITY.PLAN, topic: 'plan' }, { content: this.buildProfileContext(projectPath), priority: INJECT_PRIORITY.PROFILE, topic: 'profile' }, { content: conventionPrompt, priority: INJECT_PRIORITY.CONVENTION, topic: 'convention' }, { content: directive ?? undefined, priority: INJECT_PRIORITY.DIRECTIVE, topic: 'directive' }, { content: similarSessionCtx, priority: INJECT_PRIORITY.HISTORY, minBudget: 500, topic: 'history' }, { content: decisionsContext, priority: INJECT_PRIORITY.DECISIONS, topic: 'decisions' });
|
|
767
|
+
const body = ContextInjector.build({ content: this.buildPlanStartContext(projectPath), priority: INJECT_PRIORITY.PLAN, topic: 'plan' }, { content: this.buildProfileContext(projectPath), priority: INJECT_PRIORITY.PROFILE, topic: 'profile' }, { content: conventionPrompt, priority: INJECT_PRIORITY.CONVENTION, topic: 'convention' }, { content: directive ?? undefined, priority: INJECT_PRIORITY.DIRECTIVE, topic: 'directive' }, { content: similarSessionCtx, priority: INJECT_PRIORITY.HISTORY, minBudget: 500, topic: 'history' }, { content: graphContext, priority: INJECT_PRIORITY.HISTORY - 1, minBudget: 300, topic: 'graph' }, { content: decisionsContext, priority: INJECT_PRIORITY.DECISIONS, topic: 'decisions' });
|
|
809
768
|
// 汇总注入内容
|
|
810
769
|
const injected = [];
|
|
811
770
|
if (this.injectionCache.get(projectPath)?.profileInjected)
|
|
@@ -818,6 +777,8 @@ Do NOT write any code until the plan is approved and saved to ${planPath}. Start
|
|
|
818
777
|
injected.push('决策历史');
|
|
819
778
|
if (similarSessionCtx)
|
|
820
779
|
injected.push('相似历史场景');
|
|
780
|
+
if (graphContext)
|
|
781
|
+
injected.push('图谱成功路径');
|
|
821
782
|
const inferredRole = this.inferCurrentRole(analysis.requirement, activeConventions);
|
|
822
783
|
const roleStr = inferredRole ? ` | 当前角色=${inferredRole.name}` : '';
|
|
823
784
|
logger.info(`处理完成:直接执行 | 复杂度=${analysis.complexity}${roleStr} | 注入=[${injected.join(', ') || '无'}]`);
|
|
@@ -827,6 +788,30 @@ Do NOT write any code until the plan is approved and saved to ${planPath}. Start
|
|
|
827
788
|
additionalContext: body ? ForgeFormatter.wrapInQuote(body) : undefined,
|
|
828
789
|
};
|
|
829
790
|
}
|
|
791
|
+
/**
|
|
792
|
+
* 知识图谱上下文:查找历史成功路径,注入为参考上下文
|
|
793
|
+
*/
|
|
794
|
+
async buildGraphContext(keywords, projectPath) {
|
|
795
|
+
const graph = this.ctx.retrospectiveEngine?.getKnowledgeGraph();
|
|
796
|
+
if (!graph || keywords.length === 0)
|
|
797
|
+
return undefined;
|
|
798
|
+
try {
|
|
799
|
+
const paths = await graph.findSimilarSuccessfulPaths(projectPath, keywords, 3);
|
|
800
|
+
if (paths.length === 0)
|
|
801
|
+
return undefined;
|
|
802
|
+
const lines = ['[历史成功路径参考]'];
|
|
803
|
+
for (const p of paths) {
|
|
804
|
+
lines.push(`- 需求:${p.requirement}`);
|
|
805
|
+
if (p.decisions.length > 0)
|
|
806
|
+
lines.push(` 决策:${p.decisions.join(' → ')}`);
|
|
807
|
+
lines.push(` 结果:${p.outcome}`);
|
|
808
|
+
}
|
|
809
|
+
return lines.join('\n');
|
|
810
|
+
}
|
|
811
|
+
catch {
|
|
812
|
+
return undefined;
|
|
813
|
+
}
|
|
814
|
+
}
|
|
830
815
|
/**
|
|
831
816
|
* FTS5 历史场景检索:按 searchKeywords 查找最相似的历史 session,
|
|
832
817
|
* 读取对应 decisions.md 片段注入为"相似历史场景"上下文。
|
|
@@ -1080,6 +1065,44 @@ Do NOT write any code until the plan is approved and saved to ${planPath}. Start
|
|
|
1080
1065
|
// 默认返回开发工程师(最常见的角色)
|
|
1081
1066
|
return allRoles.get('developer') ?? allRoles.get('surgeon') ?? null;
|
|
1082
1067
|
}
|
|
1068
|
+
/**
|
|
1069
|
+
* P4:负向重启回溯修正
|
|
1070
|
+
* 检测到 dissatisfied 信号时,将上一个 session(24h 内)的满意度评分下调(×0.5,最低 0.1)
|
|
1071
|
+
*/
|
|
1072
|
+
async applyNegativeRestartPenalty(projectPath, currentSessionId) {
|
|
1073
|
+
try {
|
|
1074
|
+
const last = this.ctx.storage.getLastCompletedTaskSession(projectPath);
|
|
1075
|
+
if (!last)
|
|
1076
|
+
return;
|
|
1077
|
+
if (last.session_id === currentSessionId)
|
|
1078
|
+
return;
|
|
1079
|
+
// 只回溯 24h 内的上一 session
|
|
1080
|
+
if (last.ended_at) {
|
|
1081
|
+
const age = Date.now() - new Date(last.ended_at).getTime();
|
|
1082
|
+
if (age > 24 * 60 * 60 * 1000)
|
|
1083
|
+
return;
|
|
1084
|
+
}
|
|
1085
|
+
const prevScore = last.satisfaction_score ?? 0.5;
|
|
1086
|
+
const newScore = Math.max(0.1, prevScore * 0.5);
|
|
1087
|
+
// 更新 task_sessions.satisfaction_score
|
|
1088
|
+
this.ctx.storage.updateTaskSessionSatisfaction(last.id, newScore);
|
|
1089
|
+
// 写入 satisfaction_signals 记录此次回溯修正
|
|
1090
|
+
this.ctx.storage.insertSatisfactionSignal({
|
|
1091
|
+
id: `ss_restart_${Date.now()}_${Math.random().toString(36).slice(2, 8)}`,
|
|
1092
|
+
session_id: last.session_id,
|
|
1093
|
+
project_path: projectPath,
|
|
1094
|
+
task_session_id: last.id,
|
|
1095
|
+
signal_type: 'negative_restart_penalty',
|
|
1096
|
+
signal_value: newScore - prevScore, // 负数,表示下调幅度
|
|
1097
|
+
weight: 1.0,
|
|
1098
|
+
raw_data: { prev_score: prevScore, new_score: newScore, triggered_by_session: currentSessionId },
|
|
1099
|
+
});
|
|
1100
|
+
logger.info(`[Forge:满意度] 检测到负向重启,回溯修正上一 session 评分:${prevScore.toFixed(3)} → ${newScore.toFixed(3)}`);
|
|
1101
|
+
}
|
|
1102
|
+
catch (err) {
|
|
1103
|
+
logger.warn(`[Forge:满意度] 负向重启回溯修正失败:${err}`);
|
|
1104
|
+
}
|
|
1105
|
+
}
|
|
1083
1106
|
/** 构建用户上下文(供 IntentEngine 有状态分析) */
|
|
1084
1107
|
buildUserContext(projectPath) {
|
|
1085
1108
|
const profile = this.ctx.profileManager.get();
|