@winspan/claude-forge 0.7.1 → 0.7.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 (133) hide show
  1. package/dist/ai-gateway/model-selector.d.ts.map +1 -1
  2. package/dist/ai-gateway/model-selector.js +42 -6
  3. package/dist/ai-gateway/model-selector.js.map +1 -1
  4. package/dist/autopilot/intent-engine.d.ts +0 -4
  5. package/dist/autopilot/intent-engine.d.ts.map +1 -1
  6. package/dist/autopilot/intent-engine.js +32 -102
  7. package/dist/autopilot/intent-engine.js.map +1 -1
  8. package/dist/autopilot/issue-tracker.d.ts +48 -0
  9. package/dist/autopilot/issue-tracker.d.ts.map +1 -0
  10. package/dist/autopilot/issue-tracker.js +94 -0
  11. package/dist/autopilot/issue-tracker.js.map +1 -0
  12. package/dist/autopilot/phase-gap-detector.d.ts +25 -0
  13. package/dist/autopilot/phase-gap-detector.d.ts.map +1 -0
  14. package/dist/autopilot/phase-gap-detector.js +80 -0
  15. package/dist/autopilot/phase-gap-detector.js.map +1 -0
  16. package/dist/autopilot/quality-gate.d.ts +22 -0
  17. package/dist/autopilot/quality-gate.d.ts.map +1 -1
  18. package/dist/autopilot/quality-gate.js +108 -25
  19. package/dist/autopilot/quality-gate.js.map +1 -1
  20. package/dist/cli/commands/pattern.d.ts.map +1 -1
  21. package/dist/cli/commands/pattern.js +44 -38
  22. package/dist/cli/commands/pattern.js.map +1 -1
  23. package/dist/daemon/context-injector.d.ts +11 -1
  24. package/dist/daemon/context-injector.d.ts.map +1 -1
  25. package/dist/daemon/context-injector.js +27 -4
  26. package/dist/daemon/context-injector.js.map +1 -1
  27. package/dist/daemon/engine-registry.d.ts.map +1 -1
  28. package/dist/daemon/engine-registry.js +4 -1
  29. package/dist/daemon/engine-registry.js.map +1 -1
  30. package/dist/daemon/handler-context.d.ts +4 -2
  31. package/dist/daemon/handler-context.d.ts.map +1 -1
  32. package/dist/daemon/handlers/orchestration-context.d.ts +2 -0
  33. package/dist/daemon/handlers/orchestration-context.d.ts.map +1 -1
  34. package/dist/daemon/handlers/post-tool-use-handler.d.ts.map +1 -1
  35. package/dist/daemon/handlers/post-tool-use-handler.js +26 -4
  36. package/dist/daemon/handlers/post-tool-use-handler.js.map +1 -1
  37. package/dist/daemon/handlers/stages/09-pipeline-active.d.ts +1 -1
  38. package/dist/daemon/handlers/stages/09-pipeline-active.d.ts.map +1 -1
  39. package/dist/daemon/handlers/stages/09-pipeline-active.js +22 -6
  40. package/dist/daemon/handlers/stages/09-pipeline-active.js.map +1 -1
  41. package/dist/daemon/handlers/stages/12-strategy-advice.d.ts.map +1 -1
  42. package/dist/daemon/handlers/stages/12-strategy-advice.js +1 -4
  43. package/dist/daemon/handlers/stages/12-strategy-advice.js.map +1 -1
  44. package/dist/daemon/handlers/stages/17-simple-task.d.ts.map +1 -1
  45. package/dist/daemon/handlers/stages/17-simple-task.js +1 -1
  46. package/dist/daemon/handlers/stages/17-simple-task.js.map +1 -1
  47. package/dist/daemon/handlers/stages/18-complex-task.d.ts.map +1 -1
  48. package/dist/daemon/handlers/stages/18-complex-task.js +2 -2
  49. package/dist/daemon/handlers/stages/18-complex-task.js.map +1 -1
  50. package/dist/daemon/handlers/stages/19-moderate-task.d.ts.map +1 -1
  51. package/dist/daemon/handlers/stages/19-moderate-task.js +1 -1
  52. package/dist/daemon/handlers/stages/19-moderate-task.js.map +1 -1
  53. package/dist/daemon/handlers/stop-handler.d.ts.map +1 -1
  54. package/dist/daemon/handlers/stop-handler.js +5 -0
  55. package/dist/daemon/handlers/stop-handler.js.map +1 -1
  56. package/dist/daemon/handlers/user-prompt-handler.d.ts.map +1 -1
  57. package/dist/daemon/handlers/user-prompt-handler.js +95 -48
  58. package/dist/daemon/handlers/user-prompt-handler.js.map +1 -1
  59. package/dist/distill/writer.d.ts.map +1 -1
  60. package/dist/distill/writer.js +27 -11
  61. package/dist/distill/writer.js.map +1 -1
  62. package/dist/knowledge/graph.d.ts +13 -0
  63. package/dist/knowledge/graph.d.ts.map +1 -1
  64. package/dist/knowledge/graph.js +62 -0
  65. package/dist/knowledge/graph.js.map +1 -1
  66. package/dist/pipeline/index.d.ts +9 -0
  67. package/dist/pipeline/index.d.ts.map +1 -1
  68. package/dist/pipeline/index.js +49 -3
  69. package/dist/pipeline/index.js.map +1 -1
  70. package/dist/{pattern-engine/types.d.ts → pipeline/pattern-types.d.ts} +1 -1
  71. package/dist/pipeline/pattern-types.d.ts.map +1 -0
  72. package/dist/{pattern-engine/types.js → pipeline/pattern-types.js} +1 -1
  73. package/dist/pipeline/pattern-types.js.map +1 -0
  74. package/dist/pipeline/phase-manager.d.ts +5 -0
  75. package/dist/pipeline/phase-manager.d.ts.map +1 -1
  76. package/dist/pipeline/phase-manager.js +67 -25
  77. package/dist/pipeline/phase-manager.js.map +1 -1
  78. package/dist/pipeline/report-generator.d.ts +20 -0
  79. package/dist/pipeline/report-generator.d.ts.map +1 -0
  80. package/dist/pipeline/report-generator.js +123 -0
  81. package/dist/pipeline/report-generator.js.map +1 -0
  82. package/dist/prompts/intent-analysis.md +62 -0
  83. package/dist/prompts/registry.d.ts +17 -0
  84. package/dist/prompts/registry.d.ts.map +1 -0
  85. package/dist/prompts/registry.js +40 -0
  86. package/dist/prompts/registry.js.map +1 -0
  87. package/dist/skill-registry/evolver/index.d.ts +1 -1
  88. package/dist/skill-registry/evolver/index.d.ts.map +1 -1
  89. package/dist/{pattern-engine → skill-registry}/pattern-evolver.d.ts +6 -2
  90. package/dist/skill-registry/pattern-evolver.d.ts.map +1 -0
  91. package/dist/{pattern-engine → skill-registry}/pattern-evolver.js +30 -6
  92. package/dist/skill-registry/pattern-evolver.js.map +1 -0
  93. package/dist/storage/repositories/distill-repository.d.ts +2 -1
  94. package/dist/storage/repositories/distill-repository.d.ts.map +1 -1
  95. package/dist/storage/repositories/distill-repository.js +6 -0
  96. package/dist/storage/repositories/distill-repository.js.map +1 -1
  97. package/dist/storage/sqlite.d.ts +96 -157
  98. package/dist/storage/sqlite.d.ts.map +1 -1
  99. package/dist/storage/sqlite.js +123 -896
  100. package/dist/storage/sqlite.js.map +1 -1
  101. package/package.json +2 -2
  102. package/dist/daemon/engine-registry/init-pattern-engine.d.ts +0 -9
  103. package/dist/daemon/engine-registry/init-pattern-engine.d.ts.map +0 -1
  104. package/dist/daemon/engine-registry/init-pattern-engine.js +0 -22
  105. package/dist/daemon/engine-registry/init-pattern-engine.js.map +0 -1
  106. package/dist/pattern-engine/convention-pattern-generator.d.ts +0 -14
  107. package/dist/pattern-engine/convention-pattern-generator.d.ts.map +0 -1
  108. package/dist/pattern-engine/convention-pattern-generator.js +0 -120
  109. package/dist/pattern-engine/convention-pattern-generator.js.map +0 -1
  110. package/dist/pattern-engine/execution-tracker.d.ts +0 -45
  111. package/dist/pattern-engine/execution-tracker.d.ts.map +0 -1
  112. package/dist/pattern-engine/execution-tracker.js +0 -136
  113. package/dist/pattern-engine/execution-tracker.js.map +0 -1
  114. package/dist/pattern-engine/index.d.ts +0 -75
  115. package/dist/pattern-engine/index.d.ts.map +0 -1
  116. package/dist/pattern-engine/index.js +0 -247
  117. package/dist/pattern-engine/index.js.map +0 -1
  118. package/dist/pattern-engine/pattern-evolver.d.ts.map +0 -1
  119. package/dist/pattern-engine/pattern-evolver.js.map +0 -1
  120. package/dist/pattern-engine/pattern-executor.d.ts +0 -43
  121. package/dist/pattern-engine/pattern-executor.d.ts.map +0 -1
  122. package/dist/pattern-engine/pattern-executor.js +0 -228
  123. package/dist/pattern-engine/pattern-executor.js.map +0 -1
  124. package/dist/pattern-engine/pattern-loader.d.ts +0 -14
  125. package/dist/pattern-engine/pattern-loader.d.ts.map +0 -1
  126. package/dist/pattern-engine/pattern-loader.js +0 -111
  127. package/dist/pattern-engine/pattern-loader.js.map +0 -1
  128. package/dist/pattern-engine/pattern-router.d.ts +0 -31
  129. package/dist/pattern-engine/pattern-router.d.ts.map +0 -1
  130. package/dist/pattern-engine/pattern-router.js +0 -160
  131. package/dist/pattern-engine/pattern-router.js.map +0 -1
  132. package/dist/pattern-engine/types.d.ts.map +0 -1
  133. package/dist/pattern-engine/types.js.map +0 -1
@@ -1,111 +0,0 @@
1
- import fs from 'fs';
2
- import path from 'path';
3
- import os from 'os';
4
- import yaml from 'js-yaml';
5
- import { z } from 'zod';
6
- import { logger } from '../utils/logger.js';
7
- const PATTERNS_DIR = path.join(os.homedir(), '.claude-forge', 'patterns');
8
- // ── Zod 校验 Schema ──────────────────────────────────────────────────
9
- const CompletionSignalSchema = z.object({
10
- tool_used: z.string().optional(),
11
- file_pattern: z.string().optional(),
12
- });
13
- const PhaseGateSchema = z.object({
14
- command: z.string(),
15
- must_pass: z.boolean(),
16
- });
17
- const PatternPhaseSchema = z.object({
18
- id: z.string(),
19
- name: z.string(),
20
- agent_role: z.string(),
21
- prompt_template: z.string(),
22
- tools_allowed: z.array(z.string()).default([]),
23
- depends_on: z.array(z.string()).default([]),
24
- output_key: z.string().optional(),
25
- completion_signal: CompletionSignalSchema.optional(),
26
- gate: PhaseGateSchema.optional(),
27
- invoke_skill: z.string().optional(),
28
- });
29
- const PatternTriggerSchema = z.object({
30
- intent_patterns: z.array(z.string()).min(1),
31
- complexity: z.array(z.enum(['simple', 'moderate', 'complex'])).optional(),
32
- keywords: z.array(z.string()).optional(),
33
- });
34
- const PatternEvolutionSchema = z.object({
35
- track_metrics: z.array(z.string()).default([]),
36
- auto_optimize: z.boolean().default(true),
37
- optimize_interval_days: z.number().int().positive().default(7),
38
- });
39
- const PatternSchema = z.object({
40
- id: z.string(),
41
- name: z.string(),
42
- version: z.string(),
43
- description: z.string(),
44
- source: z.enum(['official', 'user', 'generated']).default('user'),
45
- trigger: PatternTriggerSchema,
46
- phases: z.array(PatternPhaseSchema).min(1),
47
- evolution: PatternEvolutionSchema.optional(),
48
- });
49
- // ── PatternLoader ────────────────────────────────────────────────────
50
- export class PatternLoader {
51
- patternsDir;
52
- constructor(patternsDir = PATTERNS_DIR) {
53
- this.patternsDir = patternsDir;
54
- }
55
- /** 加载目录下所有 .yaml/.yml Pattern 文件 */
56
- loadAll() {
57
- if (!fs.existsSync(this.patternsDir)) {
58
- logger.debug(`工作流模板目录不存在,跳过:${this.patternsDir}`);
59
- return [];
60
- }
61
- const files = fs.readdirSync(this.patternsDir).filter((f) => f.endsWith('.yaml') || f.endsWith('.yml'));
62
- const patterns = [];
63
- for (const file of files) {
64
- const filePath = path.join(this.patternsDir, file);
65
- const pattern = this.loadFile(filePath);
66
- if (pattern) {
67
- patterns.push(pattern);
68
- }
69
- }
70
- logger.info(`已加载 ${patterns.length} 个工作流模板`);
71
- return patterns;
72
- }
73
- /** 加载并验证单个 Pattern 文件 */
74
- loadFile(filePath) {
75
- try {
76
- const content = fs.readFileSync(filePath, 'utf-8');
77
- const raw = yaml.load(content);
78
- const result = PatternSchema.safeParse(raw);
79
- if (!result.success) {
80
- logger.warn(`工作流模板校验失败 ${filePath}:${result.error.message}`);
81
- return null;
82
- }
83
- const pattern = {
84
- ...result.data,
85
- filePath,
86
- };
87
- return pattern;
88
- }
89
- catch (err) {
90
- logger.warn(`工作流模板解析失败 ${filePath}:${err}`);
91
- return null;
92
- }
93
- }
94
- /** 将 Pattern 写回 YAML 文件(供 PatternEvolver 调用) */
95
- savePattern(pattern) {
96
- if (!fs.existsSync(this.patternsDir)) {
97
- fs.mkdirSync(this.patternsDir, { recursive: true });
98
- }
99
- const filePath = pattern.filePath || path.join(this.patternsDir, `${pattern.id}.yaml`);
100
- // 序列化时去掉运行时字段
101
- const { filePath: _fp, ...serializable } = pattern;
102
- const content = yaml.dump(serializable, { lineWidth: 100, noRefs: true });
103
- fs.writeFileSync(filePath, content, 'utf-8');
104
- logger.info(`已保存工作流模板 ${pattern.id} v${pattern.version}`);
105
- }
106
- /** 返回 patterns 目录路径 */
107
- getPatternsDir() {
108
- return this.patternsDir;
109
- }
110
- }
111
- //# sourceMappingURL=pattern-loader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pattern-loader.js","sourceRoot":"","sources":["../../src/pattern-engine/pattern-loader.ts"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- import type { AIProvider } from '../ai-provider/types.js';
2
- import type { Pattern, RouteResult } from './types.js';
3
- /**
4
- * PatternRouter:用 AI 语义匹配将用户意图路由到合适的 Pattern。
5
- * 2s 超时后自动降级到关键词匹配,保证响应速度。
6
- */
7
- export declare class PatternRouter {
8
- private api;
9
- private patterns;
10
- /** 路由结果缓存:避免相似输入重复调用 AI */
11
- private routeCache;
12
- constructor(api: AIProvider);
13
- /** 更新可用 Pattern 列表(由 PatternEngine 调用) */
14
- setPatterns(patterns: Pattern[]): void;
15
- /**
16
- * 路由入口:先尝试 AI 语义匹配,超时或失败则降级到关键词匹配。
17
- * @param userInput 用户原始输入
18
- * @param complexity 意图复杂度(由 IntentEngine 提供)
19
- */
20
- route(userInput: string, complexity?: 'simple' | 'moderate' | 'complex'): Promise<RouteResult>;
21
- /** AI 语义匹配(2s 超时) */
22
- private routeWithAI;
23
- /**
24
- * 返回所有关键词匹配置信度 >= 0.5 的候选 Pattern(供多臂老虎机使用)。
25
- * 结果按置信度降序排列。
26
- */
27
- routeAllCandidates(userInput: string, complexity?: string): RouteResult[];
28
- /** 关键词兜底匹配 */
29
- private routeWithKeywords;
30
- }
31
- //# sourceMappingURL=pattern-router.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pattern-router.d.ts","sourceRoot":"","sources":["../../src/pattern-engine/pattern-router.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAKvD;;;GAGG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,GAAG,CAAa;IACxB,OAAO,CAAC,QAAQ,CAAiB;IACjC,2BAA2B;IAC3B,OAAO,CAAC,UAAU,CAAgE;gBAEtE,GAAG,EAAE,UAAU;IAI3B,0CAA0C;IAC1C,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAKtC;;;;OAIG;IACG,KAAK,CACT,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,GAC7C,OAAO,CAAC,WAAW,CAAC;IAqCvB,qBAAqB;YACP,WAAW;IA6DzB;;;OAGG;IACH,kBAAkB,CAChB,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,GAClB,WAAW,EAAE;IA+BhB,cAAc;IACd,OAAO,CAAC,iBAAiB;CAY1B"}
@@ -1,160 +0,0 @@
1
- import { logger } from '../utils/logger.js';
2
- const ROUTE_TIMEOUT_MS = 60_000; // 60s timeout(允许复杂语义匹配)
3
- const ROUTE_CACHE_TTL_MS = 5 * 60 * 1000; // 5min 路由结果缓存
4
- /**
5
- * PatternRouter:用 AI 语义匹配将用户意图路由到合适的 Pattern。
6
- * 2s 超时后自动降级到关键词匹配,保证响应速度。
7
- */
8
- export class PatternRouter {
9
- api;
10
- patterns = [];
11
- /** 路由结果缓存:避免相似输入重复调用 AI */
12
- routeCache = new Map();
13
- constructor(api) {
14
- this.api = api;
15
- }
16
- /** 更新可用 Pattern 列表(由 PatternEngine 调用) */
17
- setPatterns(patterns) {
18
- this.patterns = patterns;
19
- this.routeCache.clear(); // Pattern 列表变更时清空缓存
20
- }
21
- /**
22
- * 路由入口:先尝试 AI 语义匹配,超时或失败则降级到关键词匹配。
23
- * @param userInput 用户原始输入
24
- * @param complexity 意图复杂度(由 IntentEngine 提供)
25
- */
26
- async route(userInput, complexity) {
27
- if (this.patterns.length === 0) {
28
- return { pattern: null, confidence: 0, method: 'fallback' };
29
- }
30
- // 缓存检查:相同输入 5 分钟内直接返回
31
- const cacheKey = `${userInput.slice(0, 100)}|${complexity ?? ''}`;
32
- const cached = this.routeCache.get(cacheKey);
33
- if (cached && Date.now() < cached.expireAt) {
34
- logger.info(`工作流路由缓存命中:${cached.result.pattern?.id ?? '无匹配'}`);
35
- return cached.result;
36
- }
37
- // 先尝试 AI 匹配(带超时)
38
- let result;
39
- try {
40
- const aiResult = await this.routeWithAI(userInput, complexity);
41
- if (aiResult.pattern) {
42
- result = aiResult;
43
- }
44
- else {
45
- result = this.routeWithKeywords(userInput, complexity);
46
- }
47
- }
48
- catch (err) {
49
- logger.info(`AI 匹配失败,降级到关键词匹配:${err}`);
50
- result = this.routeWithKeywords(userInput, complexity);
51
- }
52
- // 写入缓存
53
- this.routeCache.set(cacheKey, { result, expireAt: Date.now() + ROUTE_CACHE_TTL_MS });
54
- // 清理过期缓存
55
- for (const [k, v] of this.routeCache) {
56
- if (Date.now() >= v.expireAt)
57
- this.routeCache.delete(k);
58
- }
59
- return result;
60
- }
61
- /** AI 语义匹配(2s 超时) */
62
- async routeWithAI(userInput, complexity) {
63
- const patternList = this.patterns
64
- .map((p) => `- id: ${p.id}\n name: ${p.name}\n description: ${p.description}\n intent_patterns: ${p.trigger.intent_patterns.join(' / ')}`)
65
- .join('\n');
66
- const prompt = `你是一个任务路由专家,根据用户输入匹配最合适的工作流 Pattern。
67
-
68
- ## 用户输入
69
- ${userInput}
70
- ${complexity ? `\n## 任务复杂度\n${complexity}` : ''}
71
-
72
- ## 可用 Pattern 列表
73
- ${patternList}
74
-
75
- ## 任务
76
- 选择最匹配的 Pattern。如果没有任何 Pattern 明显符合,输出 NONE。
77
-
78
- ## 输出格式(严格 JSON,无其他文字)
79
- { "id": "pattern-id", "confidence": 0.85 }
80
-
81
- { "id": "NONE", "confidence": 0 }`;
82
- let timeoutHandle = null;
83
- try {
84
- const timeoutPromise = new Promise((_, reject) => {
85
- timeoutHandle = setTimeout(() => reject(new Error('AI 路由超时')), ROUTE_TIMEOUT_MS);
86
- });
87
- const apiPromise = this.api.complete(prompt, 'pattern-router', { retries: 0 });
88
- const response = await Promise.race([apiPromise, timeoutPromise]);
89
- if (timeoutHandle)
90
- clearTimeout(timeoutHandle);
91
- const jsonMatch = response.match(/\{[\s\S]*\}/);
92
- if (!jsonMatch)
93
- return { pattern: null, confidence: 0, method: 'ai' };
94
- const parsed = JSON.parse(jsonMatch[0]);
95
- if (parsed.id === 'NONE' || !parsed.id) {
96
- return { pattern: null, confidence: 0, method: 'ai' };
97
- }
98
- const matched = this.patterns.find((p) => p.id === parsed.id);
99
- if (!matched)
100
- return { pattern: null, confidence: 0, method: 'ai' };
101
- // 复杂度过滤:如果 Pattern 指定了复杂度范围,检查是否兼容
102
- if (complexity && matched.trigger.complexity && matched.trigger.complexity.length > 0) {
103
- if (!matched.trigger.complexity.includes(complexity)) {
104
- logger.info(`工作流模板 ${matched.id} 不适用于当前任务复杂度(${complexity}),跳过`);
105
- return { pattern: null, confidence: 0, method: 'ai' };
106
- }
107
- }
108
- logger.info(`AI 匹配成功:${matched.id}(置信度 ${parsed.confidence})`);
109
- return { pattern: matched, confidence: parsed.confidence, method: 'ai' };
110
- }
111
- catch (err) {
112
- if (timeoutHandle)
113
- clearTimeout(timeoutHandle);
114
- throw err;
115
- }
116
- }
117
- /**
118
- * 返回所有关键词匹配置信度 >= 0.5 的候选 Pattern(供多臂老虎机使用)。
119
- * 结果按置信度降序排列。
120
- */
121
- routeAllCandidates(userInput, complexity) {
122
- const input = userInput.toLowerCase();
123
- const candidates = [];
124
- for (const pattern of this.patterns) {
125
- if (complexity && pattern.trigger.complexity && pattern.trigger.complexity.length > 0) {
126
- if (!pattern.trigger.complexity.includes(complexity)) {
127
- continue;
128
- }
129
- }
130
- let score = 0;
131
- for (const kw of (pattern.trigger.keywords ?? [])) {
132
- if (input.includes(kw.toLowerCase()))
133
- score++;
134
- }
135
- for (const intentPattern of pattern.trigger.intent_patterns) {
136
- const words = intentPattern.split(/[\s,,、]+/).filter((w) => w.length > 1);
137
- for (const word of words) {
138
- if (input.includes(word.toLowerCase()))
139
- score += 0.5;
140
- }
141
- }
142
- const confidence = Math.min(score / 3, 1);
143
- if (confidence >= 0.5) {
144
- candidates.push({ pattern, confidence, method: 'keyword' });
145
- }
146
- }
147
- return candidates.sort((a, b) => b.confidence - a.confidence);
148
- }
149
- /** 关键词兜底匹配 */
150
- routeWithKeywords(userInput, complexity) {
151
- const candidates = this.routeAllCandidates(userInput, complexity);
152
- if (candidates.length > 0) {
153
- const best = candidates[0];
154
- logger.info(`关键词匹配成功:${best.pattern.id}(得分 ${best.confidence.toFixed(2)})`);
155
- return best;
156
- }
157
- return { pattern: null, confidence: 0, method: 'fallback' };
158
- }
159
- }
160
- //# sourceMappingURL=pattern-router.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pattern-router.js","sourceRoot":"","sources":["../../src/pattern-engine/pattern-router.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/pattern-engine/types.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/pattern-engine/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}