@pcircle/claude-code-buddy-mcp 2.5.0 → 2.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/evolution/CloudEvolutionClient.d.ts +39 -0
- package/dist/evolution/CloudEvolutionClient.d.ts.map +1 -0
- package/dist/evolution/CloudEvolutionClient.js +35 -0
- package/dist/evolution/CloudEvolutionClient.js.map +1 -0
- package/dist/evolution/FeedbackCollector.d.ts +32 -2
- package/dist/evolution/FeedbackCollector.d.ts.map +1 -1
- package/dist/evolution/FeedbackCollector.js +146 -1
- package/dist/evolution/FeedbackCollector.js.map +1 -1
- package/dist/evolution/LocalMistakeDetector.d.ts +20 -0
- package/dist/evolution/LocalMistakeDetector.d.ts.map +1 -0
- package/dist/evolution/LocalMistakeDetector.js +233 -0
- package/dist/evolution/LocalMistakeDetector.js.map +1 -0
- package/dist/evolution/index.d.ts +5 -0
- package/dist/evolution/index.d.ts.map +1 -1
- package/dist/evolution/index.js +4 -0
- package/dist/evolution/index.js.map +1 -1
- package/dist/evolution/types.d.ts +34 -0
- package/dist/evolution/types.d.ts.map +1 -1
- package/dist/evolution/types.js +12 -1
- package/dist/evolution/types.js.map +1 -1
- package/dist/knowledge-graph/index.d.ts.map +1 -1
- package/dist/knowledge-graph/index.js +7 -4
- package/dist/knowledge-graph/index.js.map +1 -1
- package/dist/mcp/ToolDefinitions.d.ts.map +1 -1
- package/dist/mcp/ToolDefinitions.js +104 -0
- package/dist/mcp/ToolDefinitions.js.map +1 -1
- package/dist/mcp/ToolRouter.d.ts.map +1 -1
- package/dist/mcp/ToolRouter.js +6 -0
- package/dist/mcp/ToolRouter.js.map +1 -1
- package/dist/mcp/handlers/BuddyRecordMistake.d.ts +15 -0
- package/dist/mcp/handlers/BuddyRecordMistake.d.ts.map +1 -0
- package/dist/mcp/handlers/BuddyRecordMistake.js +65 -0
- package/dist/mcp/handlers/BuddyRecordMistake.js.map +1 -0
- package/dist/mcp/handlers/ToolHandlers.d.ts +1 -0
- package/dist/mcp/handlers/ToolHandlers.d.ts.map +1 -1
- package/dist/mcp/handlers/ToolHandlers.js +22 -0
- package/dist/mcp/handlers/ToolHandlers.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { AIMistake, AIBehaviorPattern, AIErrorType } from './types.js';
|
|
2
|
+
import type { Message, CorrectionDetection } from './LocalMistakeDetector.js';
|
|
3
|
+
export interface CloudEvolutionConfig {
|
|
4
|
+
apiKey: string;
|
|
5
|
+
baseUrl?: string;
|
|
6
|
+
timeout?: number;
|
|
7
|
+
}
|
|
8
|
+
export interface AdvancedMistakeDetection extends CorrectionDetection {
|
|
9
|
+
errorType?: AIErrorType;
|
|
10
|
+
impact?: string;
|
|
11
|
+
preventionMethod?: string;
|
|
12
|
+
relatedRule?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface PatternRecognitionResult {
|
|
15
|
+
patterns: AIBehaviorPattern[];
|
|
16
|
+
confidence: number;
|
|
17
|
+
insights: string[];
|
|
18
|
+
}
|
|
19
|
+
export interface PreventionSuggestion {
|
|
20
|
+
suggestion: string;
|
|
21
|
+
confidence: number;
|
|
22
|
+
patternId?: string;
|
|
23
|
+
}
|
|
24
|
+
export declare class CloudEvolutionClient {
|
|
25
|
+
private config;
|
|
26
|
+
constructor(config: CloudEvolutionConfig);
|
|
27
|
+
detectCorrectionAdvanced(userMessage: string, conversation: Message[]): Promise<AdvancedMistakeDetection>;
|
|
28
|
+
recognizePatterns(mistakes: AIMistake[]): Promise<PatternRecognitionResult>;
|
|
29
|
+
getPreventionSuggestions(context: Record<string, unknown>): Promise<PreventionSuggestion[]>;
|
|
30
|
+
getGlobalPatterns(): Promise<AIBehaviorPattern[]>;
|
|
31
|
+
syncMistakes(mistakes: AIMistake[]): Promise<void>;
|
|
32
|
+
checkHealth(): Promise<{
|
|
33
|
+
available: boolean;
|
|
34
|
+
authenticated: boolean;
|
|
35
|
+
tier: 'free' | 'pro' | 'team' | 'enterprise';
|
|
36
|
+
}>;
|
|
37
|
+
}
|
|
38
|
+
export declare function createCloudClient(apiKey?: string): CloudEvolutionClient | null;
|
|
39
|
+
//# sourceMappingURL=CloudEvolutionClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CloudEvolutionClient.d.ts","sourceRoot":"","sources":["../../src/evolution/CloudEvolutionClient.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC5E,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAK9E,MAAM,WAAW,oBAAoB;IAEnC,MAAM,EAAE,MAAM,CAAC;IAEf,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAKD,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IAEnE,SAAS,CAAC,EAAE,WAAW,CAAC;IAExB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAKD,MAAM,WAAW,wBAAwB;IAEvC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAE9B,UAAU,EAAE,MAAM,CAAC;IAEnB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAKD,MAAM,WAAW,oBAAoB;IAEnC,UAAU,EAAE,MAAM,CAAC;IAEnB,UAAU,EAAE,MAAM,CAAC;IAEnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAQD,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAiC;gBAEnC,MAAM,EAAE,oBAAoB;IAiBlC,wBAAwB,CAC5B,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,OAAO,EAAE,GACtB,OAAO,CAAC,wBAAwB,CAAC;IAa9B,iBAAiB,CACrB,QAAQ,EAAE,SAAS,EAAE,GACpB,OAAO,CAAC,wBAAwB,CAAC;IAa9B,wBAAwB,CAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAY5B,iBAAiB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAYjD,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQlD,WAAW,IAAI,OAAO,CAAC;QAC3B,SAAS,EAAE,OAAO,CAAC;QACnB,aAAa,EAAE,OAAO,CAAC;QACvB,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,YAAY,CAAC;KAC9C,CAAC;CAIH;AAOD,wBAAgB,iBAAiB,CAC/B,MAAM,CAAC,EAAE,MAAM,GACd,oBAAoB,GAAG,IAAI,CAM7B"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export class CloudEvolutionClient {
|
|
2
|
+
config;
|
|
3
|
+
constructor(config) {
|
|
4
|
+
this.config = {
|
|
5
|
+
apiKey: config.apiKey,
|
|
6
|
+
baseUrl: config.baseUrl || 'https://api.memesh.ai',
|
|
7
|
+
timeout: config.timeout || 10000,
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
async detectCorrectionAdvanced(userMessage, conversation) {
|
|
11
|
+
throw new Error('CloudEvolutionClient: Implementation not available in open source version');
|
|
12
|
+
}
|
|
13
|
+
async recognizePatterns(mistakes) {
|
|
14
|
+
throw new Error('CloudEvolutionClient: Implementation not available in open source version');
|
|
15
|
+
}
|
|
16
|
+
async getPreventionSuggestions(context) {
|
|
17
|
+
throw new Error('CloudEvolutionClient: Implementation not available in open source version');
|
|
18
|
+
}
|
|
19
|
+
async getGlobalPatterns() {
|
|
20
|
+
throw new Error('CloudEvolutionClient: Implementation not available in open source version');
|
|
21
|
+
}
|
|
22
|
+
async syncMistakes(mistakes) {
|
|
23
|
+
throw new Error('CloudEvolutionClient: Implementation not available in open source version');
|
|
24
|
+
}
|
|
25
|
+
async checkHealth() {
|
|
26
|
+
throw new Error('CloudEvolutionClient: Implementation not available in open source version');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export function createCloudClient(apiKey) {
|
|
30
|
+
if (!apiKey) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
return new CloudEvolutionClient({ apiKey });
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=CloudEvolutionClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CloudEvolutionClient.js","sourceRoot":"","sources":["../../src/evolution/CloudEvolutionClient.ts"],"names":[],"mappings":"AAqEA,MAAM,OAAO,oBAAoB;IACvB,MAAM,CAAiC;IAE/C,YAAY,MAA4B;QACtC,IAAI,CAAC,MAAM,GAAG;YACZ,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,uBAAuB;YAClD,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,KAAK;SACjC,CAAC;IACJ,CAAC;IAWD,KAAK,CAAC,wBAAwB,CAC5B,WAAmB,EACnB,YAAuB;QAGvB,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC/F,CAAC;IAUD,KAAK,CAAC,iBAAiB,CACrB,QAAqB;QAGrB,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC/F,CAAC;IAUD,KAAK,CAAC,wBAAwB,CAC5B,OAAgC;QAGhC,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC/F,CAAC;IASD,KAAK,CAAC,iBAAiB;QAErB,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC/F,CAAC;IASD,KAAK,CAAC,YAAY,CAAC,QAAqB;QAEtC,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC/F,CAAC;IAKD,KAAK,CAAC,WAAW;QAMf,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC/F,CAAC;CACF;AAOD,MAAM,UAAU,iBAAiB,CAC/B,MAAe;IAEf,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,IAAI,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;AAC9C,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { LearningManager } from './LearningManager.js';
|
|
2
|
-
import { AgentFeedback } from './types.js';
|
|
2
|
+
import { AgentFeedback, AIMistake, AIErrorType } from './types.js';
|
|
3
3
|
import { AgentType } from '../orchestrator/types.js';
|
|
4
|
+
import { type Message, type CorrectionDetection } from './LocalMistakeDetector.js';
|
|
5
|
+
import { type AdvancedMistakeDetection } from './CloudEvolutionClient.js';
|
|
4
6
|
export interface RoutingApprovalInput {
|
|
5
7
|
taskId: string;
|
|
6
8
|
recommendedAgent: AgentType;
|
|
@@ -17,10 +19,38 @@ export interface TaskCompletionInput {
|
|
|
17
19
|
userRating?: number;
|
|
18
20
|
userComment?: string;
|
|
19
21
|
}
|
|
22
|
+
export interface FeedbackCollectorConfig {
|
|
23
|
+
cloudApiKey?: string;
|
|
24
|
+
enableAutoDetection?: boolean;
|
|
25
|
+
}
|
|
20
26
|
export declare class FeedbackCollector {
|
|
21
27
|
private learningManager;
|
|
22
|
-
|
|
28
|
+
private mistakes;
|
|
29
|
+
private conversationHistory;
|
|
30
|
+
private mistakeDetector;
|
|
31
|
+
private cloudClient;
|
|
32
|
+
private enableAutoDetection;
|
|
33
|
+
constructor(learningManager: LearningManager, config?: FeedbackCollectorConfig);
|
|
23
34
|
recordRoutingApproval(input: RoutingApprovalInput): AgentFeedback;
|
|
24
35
|
recordTaskCompletion(input: TaskCompletionInput): AgentFeedback;
|
|
36
|
+
recordAIMistake(input: {
|
|
37
|
+
action: string;
|
|
38
|
+
errorType: AIErrorType;
|
|
39
|
+
userCorrection: string;
|
|
40
|
+
correctMethod: string;
|
|
41
|
+
impact: string;
|
|
42
|
+
preventionMethod: string;
|
|
43
|
+
relatedRule?: string;
|
|
44
|
+
context?: Record<string, unknown>;
|
|
45
|
+
}): AIMistake;
|
|
46
|
+
getMistakes(): AIMistake[];
|
|
47
|
+
getMistakesByType(errorType: AIErrorType): AIMistake[];
|
|
48
|
+
getRecentMistakes(count?: number): AIMistake[];
|
|
49
|
+
processUserMessage(userMessage: string, aiPreviousAction?: string, context?: Record<string, unknown>): Promise<CorrectionDetection | AdvancedMistakeDetection | null>;
|
|
50
|
+
recordAssistantMessage(assistantMessage: string): void;
|
|
51
|
+
private autoRecordMistake;
|
|
52
|
+
getConversationHistory(): Message[];
|
|
53
|
+
clearConversationHistory(): void;
|
|
54
|
+
isCloudEnabled(): boolean;
|
|
25
55
|
}
|
|
26
56
|
//# sourceMappingURL=FeedbackCollector.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeedbackCollector.d.ts","sourceRoot":"","sources":["../../src/evolution/FeedbackCollector.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FeedbackCollector.d.ts","sourceRoot":"","sources":["../../src/evolution/FeedbackCollector.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,OAAO,EAAwB,KAAK,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACzG,OAAO,EAAwB,KAAK,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAMhG,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,SAAS,CAAC;IAC5B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB;AAKD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,SAAS,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAKD,MAAM,WAAW,uBAAuB;IAEtC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAUD,qBAAa,iBAAiB;IAY1B,OAAO,CAAC,eAAe;IAXzB,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,mBAAmB,CAAiB;IAG5C,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,WAAW,CAAqC;IAGxD,OAAO,CAAC,mBAAmB,CAAU;gBAG3B,eAAe,EAAE,eAAe,EACxC,MAAM,GAAE,uBAA4B;IAsBtC,qBAAqB,CAAC,KAAK,EAAE,oBAAoB,GAAG,aAAa;IAoDjE,oBAAoB,CAAC,KAAK,EAAE,mBAAmB,GAAG,aAAa;IAkG/D,eAAe,CAAC,KAAK,EAAE;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,WAAW,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACnC,GAAG,SAAS;IA2Bb,WAAW,IAAI,SAAS,EAAE;IAU1B,iBAAiB,CAAC,SAAS,EAAE,WAAW,GAAG,SAAS,EAAE;IAUtD,iBAAiB,CAAC,KAAK,GAAE,MAAW,GAAG,SAAS,EAAE;IAqB5C,kBAAkB,CACtB,WAAW,EAAE,MAAM,EACnB,gBAAgB,CAAC,EAAE,MAAM,EACzB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,mBAAmB,GAAG,wBAAwB,GAAG,IAAI,CAAC;IAoEjE,sBAAsB,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI;YAoBxC,iBAAiB;IAqD/B,sBAAsB,IAAI,OAAO,EAAE;IAOnC,wBAAwB,IAAI,IAAI;IAOhC,cAAc,IAAI,OAAO;CAG1B"}
|
|
@@ -1,7 +1,28 @@
|
|
|
1
|
+
import { AIErrorType } from './types.js';
|
|
2
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
3
|
+
import { LocalMistakeDetector } from './LocalMistakeDetector.js';
|
|
4
|
+
import { CloudEvolutionClient } from './CloudEvolutionClient.js';
|
|
5
|
+
import { logger } from '../utils/logger.js';
|
|
1
6
|
export class FeedbackCollector {
|
|
2
7
|
learningManager;
|
|
3
|
-
|
|
8
|
+
mistakes = [];
|
|
9
|
+
conversationHistory = [];
|
|
10
|
+
mistakeDetector;
|
|
11
|
+
cloudClient = null;
|
|
12
|
+
enableAutoDetection;
|
|
13
|
+
constructor(learningManager, config = {}) {
|
|
4
14
|
this.learningManager = learningManager;
|
|
15
|
+
this.mistakeDetector = new LocalMistakeDetector();
|
|
16
|
+
this.enableAutoDetection = config.enableAutoDetection ?? true;
|
|
17
|
+
if (config.cloudApiKey) {
|
|
18
|
+
this.cloudClient = new CloudEvolutionClient({
|
|
19
|
+
apiKey: config.cloudApiKey,
|
|
20
|
+
});
|
|
21
|
+
logger.info('FeedbackCollector: Cloud Evolution enabled (paid tier)');
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
logger.info('FeedbackCollector: Running in free tier (local detection only)');
|
|
25
|
+
}
|
|
5
26
|
}
|
|
6
27
|
recordRoutingApproval(input) {
|
|
7
28
|
const { taskId, recommendedAgent, selectedAgent, wasOverridden, confidence, } = input;
|
|
@@ -89,5 +110,129 @@ export class FeedbackCollector {
|
|
|
89
110
|
this.learningManager.addFeedback(feedback);
|
|
90
111
|
return feedback;
|
|
91
112
|
}
|
|
113
|
+
recordAIMistake(input) {
|
|
114
|
+
const mistake = {
|
|
115
|
+
id: uuidv4(),
|
|
116
|
+
timestamp: new Date(),
|
|
117
|
+
action: input.action,
|
|
118
|
+
errorType: input.errorType,
|
|
119
|
+
userCorrection: input.userCorrection,
|
|
120
|
+
correctMethod: input.correctMethod,
|
|
121
|
+
impact: input.impact,
|
|
122
|
+
preventionMethod: input.preventionMethod,
|
|
123
|
+
relatedRule: input.relatedRule,
|
|
124
|
+
context: input.context,
|
|
125
|
+
};
|
|
126
|
+
this.mistakes.push(mistake);
|
|
127
|
+
return mistake;
|
|
128
|
+
}
|
|
129
|
+
getMistakes() {
|
|
130
|
+
return [...this.mistakes];
|
|
131
|
+
}
|
|
132
|
+
getMistakesByType(errorType) {
|
|
133
|
+
return this.mistakes.filter((m) => m.errorType === errorType);
|
|
134
|
+
}
|
|
135
|
+
getRecentMistakes(count = 10) {
|
|
136
|
+
return this.mistakes
|
|
137
|
+
.sort((a, b) => b.timestamp.getTime() - a.timestamp.getTime())
|
|
138
|
+
.slice(0, count);
|
|
139
|
+
}
|
|
140
|
+
async processUserMessage(userMessage, aiPreviousAction, context) {
|
|
141
|
+
if (!this.enableAutoDetection) {
|
|
142
|
+
return null;
|
|
143
|
+
}
|
|
144
|
+
this.conversationHistory.push({
|
|
145
|
+
role: 'user',
|
|
146
|
+
content: userMessage,
|
|
147
|
+
timestamp: new Date(),
|
|
148
|
+
});
|
|
149
|
+
if (this.conversationHistory.length > 10) {
|
|
150
|
+
this.conversationHistory = this.conversationHistory.slice(-10);
|
|
151
|
+
}
|
|
152
|
+
if (this.cloudClient) {
|
|
153
|
+
try {
|
|
154
|
+
const detection = await this.cloudClient.detectCorrectionAdvanced(userMessage, this.conversationHistory);
|
|
155
|
+
if (detection.isCorrection && detection.confidence >= 0.6) {
|
|
156
|
+
logger.info('Cloud mistake detection triggered', {
|
|
157
|
+
confidence: detection.confidence,
|
|
158
|
+
language: detection.language,
|
|
159
|
+
});
|
|
160
|
+
await this.autoRecordMistake(detection, aiPreviousAction, context);
|
|
161
|
+
return detection;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
catch (error) {
|
|
165
|
+
logger.warn('Cloud detection failed, falling back to local', {
|
|
166
|
+
error: error instanceof Error ? error.message : 'Unknown error',
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
const detection = this.mistakeDetector.detectCorrectionWithContext(userMessage, this.conversationHistory);
|
|
171
|
+
if (detection.isCorrection && detection.confidence >= 0.6) {
|
|
172
|
+
logger.info('Local mistake detection triggered', {
|
|
173
|
+
confidence: detection.confidence,
|
|
174
|
+
language: detection.language,
|
|
175
|
+
});
|
|
176
|
+
await this.autoRecordMistake(detection, aiPreviousAction, context);
|
|
177
|
+
return detection;
|
|
178
|
+
}
|
|
179
|
+
return null;
|
|
180
|
+
}
|
|
181
|
+
recordAssistantMessage(assistantMessage) {
|
|
182
|
+
this.conversationHistory.push({
|
|
183
|
+
role: 'assistant',
|
|
184
|
+
content: assistantMessage,
|
|
185
|
+
timestamp: new Date(),
|
|
186
|
+
});
|
|
187
|
+
if (this.conversationHistory.length > 10) {
|
|
188
|
+
this.conversationHistory = this.conversationHistory.slice(-10);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
async autoRecordMistake(detection, aiAction, context) {
|
|
192
|
+
let errorType;
|
|
193
|
+
if ('errorType' in detection && detection.errorType) {
|
|
194
|
+
errorType = detection.errorType;
|
|
195
|
+
}
|
|
196
|
+
else {
|
|
197
|
+
errorType = AIErrorType.ASSUMPTION_ERROR;
|
|
198
|
+
}
|
|
199
|
+
const mistake = {
|
|
200
|
+
id: uuidv4(),
|
|
201
|
+
timestamp: new Date(),
|
|
202
|
+
action: aiAction || detection.wrongAction || 'Unknown action',
|
|
203
|
+
errorType,
|
|
204
|
+
userCorrection: `User correction detected (confidence: ${(detection.confidence * 100).toFixed(0)}%)`,
|
|
205
|
+
correctMethod: detection.correctMethod || 'User indicated different approach',
|
|
206
|
+
impact: 'errorType' in detection && detection.impact
|
|
207
|
+
? detection.impact
|
|
208
|
+
: 'User had to correct AI behavior',
|
|
209
|
+
preventionMethod: 'errorType' in detection && detection.preventionMethod
|
|
210
|
+
? detection.preventionMethod
|
|
211
|
+
: 'Review this pattern to avoid recurrence',
|
|
212
|
+
relatedRule: 'errorType' in detection ? detection.relatedRule : undefined,
|
|
213
|
+
context: {
|
|
214
|
+
...context,
|
|
215
|
+
detectedLanguage: detection.language,
|
|
216
|
+
detectionConfidence: detection.confidence,
|
|
217
|
+
detectionMethod: this.cloudClient ? 'cloud' : 'local',
|
|
218
|
+
},
|
|
219
|
+
};
|
|
220
|
+
this.mistakes.push(mistake);
|
|
221
|
+
logger.info('Auto-recorded AI mistake', {
|
|
222
|
+
id: mistake.id,
|
|
223
|
+
errorType: mistake.errorType,
|
|
224
|
+
confidence: detection.confidence,
|
|
225
|
+
});
|
|
226
|
+
return mistake;
|
|
227
|
+
}
|
|
228
|
+
getConversationHistory() {
|
|
229
|
+
return [...this.conversationHistory];
|
|
230
|
+
}
|
|
231
|
+
clearConversationHistory() {
|
|
232
|
+
this.conversationHistory = [];
|
|
233
|
+
}
|
|
234
|
+
isCloudEnabled() {
|
|
235
|
+
return this.cloudClient !== null;
|
|
236
|
+
}
|
|
92
237
|
}
|
|
93
238
|
//# sourceMappingURL=FeedbackCollector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeedbackCollector.js","sourceRoot":"","sources":["../../src/evolution/FeedbackCollector.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FeedbackCollector.js","sourceRoot":"","sources":["../../src/evolution/FeedbackCollector.ts"],"names":[],"mappings":"AAWA,OAAO,EAA4B,WAAW,EAAE,MAAM,YAAY,CAAC;AAEnE,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAA0C,MAAM,2BAA2B,CAAC;AACzG,OAAO,EAAE,oBAAoB,EAAiC,MAAM,2BAA2B,CAAC;AAChG,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AA4C5C,MAAM,OAAO,iBAAiB;IAYlB;IAXF,QAAQ,GAAgB,EAAE,CAAC;IAC3B,mBAAmB,GAAc,EAAE,CAAC;IAGpC,eAAe,CAAuB;IACtC,WAAW,GAAgC,IAAI,CAAC;IAGhD,mBAAmB,CAAU;IAErC,YACU,eAAgC,EACxC,SAAkC,EAAE;QAD5B,oBAAe,GAAf,eAAe,CAAiB;QAGxC,IAAI,CAAC,eAAe,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAClD,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,IAAI,IAAI,CAAC;QAG9D,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW,GAAG,IAAI,oBAAoB,CAAC;gBAC1C,MAAM,EAAE,MAAM,CAAC,WAAW;aAC3B,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;QACxE,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAQD,qBAAqB,CAAC,KAA2B;QAC/C,MAAM,EACJ,MAAM,EACN,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,UAAU,GACX,GAAG,KAAK,CAAC;QAEV,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;QAGvD,MAAM,YAAY,GAA4B,aAAa;YACzD,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,UAAU,CAAC;QACf,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAErC,MAAM,YAAY,GAAG,aAAa;YAChC,CAAC,CAAC,iBAAiB,gBAAgB,oBAAoB,iBAAiB,8BAA8B,aAAa,UAAU;YAC7H,CAAC,CAAC,iBAAiB,gBAAgB,oBAAoB,iBAAiB,eAAe,CAAC;QAE1F,MAAM,WAAW,GAAG,aAAa;YAC/B,CAAC,CAAC;gBACE,qCAAqC,aAAa,eAAe,gBAAgB,EAAE;gBACnF,qBAAqB,aAAa,8BAA8B;gBAChE,kCAAkC,gBAAgB,sBAAsB;aACzE;YACH,CAAC,CAAC,SAAS,CAAC;QAEd,MAAM,QAAQ,GAAkB;YAC9B,EAAE,EAAE,YAAY,MAAM,UAAU;YAChC,WAAW,EAAE,MAAM;YACnB,OAAO,EAAE,gBAAgB;YACzB,IAAI,EAAE,YAAY;YAClB,MAAM;YACN,QAAQ,EAAE,YAAY;YACtB,WAAW;YACX,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;QAGF,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE3C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAQD,oBAAoB,CAAC,KAA0B;QAC7C,MAAM,EACJ,MAAM,EACN,OAAO,EACP,OAAO,EACP,YAAY,EACZ,UAAU,EACV,UAAU,EACV,WAAW,GACZ,GAAG,KAAK,CAAC;QAGV,MAAM,YAAY,GAA4B,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;QAGhF,IAAI,MAAc,CAAC;QACnB,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,GAAG,UAAU,CAAC;QACtB,CAAC;aAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,GAAG,CAAC,CAAC;QACb,CAAC;aAAM,CAAC;YAEN,IAAI,YAAY,IAAI,GAAG,EAAE,CAAC;gBACxB,MAAM,GAAG,CAAC,CAAC;YACb,CAAC;iBAAM,IAAI,YAAY,IAAI,GAAG,EAAE,CAAC;gBAC/B,MAAM,GAAG,CAAC,CAAC;YACb,CAAC;iBAAM,IAAI,YAAY,IAAI,GAAG,EAAE,CAAC;gBAC/B,MAAM,GAAG,CAAC,CAAC;YACb,CAAC;iBAAM,IAAI,YAAY,IAAI,GAAG,EAAE,CAAC;gBAC/B,MAAM,GAAG,CAAC,CAAC;YACb,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,CAAC,CAAC;YACb,CAAC;QACH,CAAC;QAGD,IAAI,YAAY,GAAG,OAAO;YACxB,CAAC,CAAC,kDAAkD,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAC7E,CAAC,CAAC,kCAAkC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAEhE,IAAI,WAAW,EAAE,CAAC;YAChB,YAAY,IAAI,MAAM,WAAW,EAAE,CAAC;QACtC,CAAC;QAGD,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC7B,CAAC;QAED,IAAI,YAAY,GAAG,GAAG,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,sBAAsB,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,UAAU,GAAG,KAAK,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,QAAQ,GAAkB;YAC9B,EAAE,EAAE,YAAY,MAAM,aAAa;YACnC,WAAW,EAAE,MAAM;YACnB,OAAO;YACP,IAAI,EAAE,YAAY;YAClB,MAAM;YACN,QAAQ,EAAE,YAAY;YACtB,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;YAC9C,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;QAGF,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE3C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAwBD,eAAe,CAAC,KASf;QACC,MAAM,OAAO,GAAc;YACzB,EAAE,EAAE,MAAM,EAAE;YACZ,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAK5B,OAAO,OAAO,CAAC;IACjB,CAAC;IAOD,WAAW;QACT,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAQD,iBAAiB,CAAC,SAAsB;QACtC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IAChE,CAAC;IAQD,iBAAiB,CAAC,QAAgB,EAAE;QAClC,OAAO,IAAI,CAAC,QAAQ;aACjB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;aAC7D,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACrB,CAAC;IAiBD,KAAK,CAAC,kBAAkB,CACtB,WAAmB,EACnB,gBAAyB,EACzB,OAAiC;QAEjC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QAGD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC5B,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC,CAAC;QAGH,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YACzC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QACjE,CAAC;QAGD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAC/D,WAAW,EACX,IAAI,CAAC,mBAAmB,CACzB,CAAC;gBAEF,IAAI,SAAS,CAAC,YAAY,IAAI,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE,CAAC;oBAC1D,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;wBAC/C,UAAU,EAAE,SAAS,CAAC,UAAU;wBAChC,QAAQ,EAAE,SAAS,CAAC,QAAQ;qBAC7B,CAAC,CAAC;oBAGH,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;oBACnE,OAAO,SAAS,CAAC;gBACnB,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,+CAA+C,EAAE;oBAC3D,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;iBAChE,CAAC,CAAC;YAEL,CAAC;QACH,CAAC;QAGD,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,2BAA2B,CAChE,WAAW,EACX,IAAI,CAAC,mBAAmB,CACzB,CAAC;QAEF,IAAI,SAAS,CAAC,YAAY,IAAI,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;gBAC/C,UAAU,EAAE,SAAS,CAAC,UAAU;gBAChC,QAAQ,EAAE,SAAS,CAAC,QAAQ;aAC7B,CAAC,CAAC;YAGH,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;YACnE,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAOD,sBAAsB,CAAC,gBAAwB;QAC7C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC5B,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,gBAAgB;YACzB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC,CAAC;QAGH,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YACzC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IASO,KAAK,CAAC,iBAAiB,CAC7B,SAAyD,EACzD,QAAiB,EACjB,OAAiC;QAGjC,IAAI,SAAsB,CAAC;QAC3B,IAAI,WAAW,IAAI,SAAS,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;YACpD,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;QAClC,CAAC;aAAM,CAAC;YAEN,SAAS,GAAG,WAAW,CAAC,gBAAgB,CAAC;QAC3C,CAAC;QAGD,MAAM,OAAO,GAAc;YACzB,EAAE,EAAE,MAAM,EAAE;YACZ,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,MAAM,EAAE,QAAQ,IAAI,SAAS,CAAC,WAAW,IAAI,gBAAgB;YAC7D,SAAS;YACT,cAAc,EAAE,yCAAyC,CAAC,SAAS,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;YACpG,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,mCAAmC;YAC7E,MAAM,EAAE,WAAW,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM;gBAClD,CAAC,CAAC,SAAS,CAAC,MAAM;gBAClB,CAAC,CAAC,iCAAiC;YACrC,gBAAgB,EAAE,WAAW,IAAI,SAAS,IAAI,SAAS,CAAC,gBAAgB;gBACtE,CAAC,CAAC,SAAS,CAAC,gBAAgB;gBAC5B,CAAC,CAAC,yCAAyC;YAC7C,WAAW,EAAE,WAAW,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;YACzE,OAAO,EAAE;gBACP,GAAG,OAAO;gBACV,gBAAgB,EAAE,SAAS,CAAC,QAAQ;gBACpC,mBAAmB,EAAE,SAAS,CAAC,UAAU;gBACzC,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;aACtD;SACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;YACtC,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,UAAU,EAAE,SAAS,CAAC,UAAU;SACjC,CAAC,CAAC;QAIH,OAAO,OAAO,CAAC;IACjB,CAAC;IAKD,sBAAsB;QACpB,OAAO,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAKD,wBAAwB;QACtB,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;IAChC,CAAC;IAKD,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC;IACnC,CAAC;CACF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface CorrectionDetection {
|
|
2
|
+
isCorrection: boolean;
|
|
3
|
+
confidence: number;
|
|
4
|
+
language?: string;
|
|
5
|
+
wrongAction?: string;
|
|
6
|
+
correctMethod?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface Message {
|
|
9
|
+
role: 'user' | 'assistant';
|
|
10
|
+
content: string;
|
|
11
|
+
timestamp?: Date;
|
|
12
|
+
}
|
|
13
|
+
export declare class LocalMistakeDetector {
|
|
14
|
+
detectCorrection(userMessage: string, language?: string): CorrectionDetection;
|
|
15
|
+
detectCorrectionWithContext(userMessage: string, conversationContext: Message[]): CorrectionDetection;
|
|
16
|
+
private extractCorrectionContent;
|
|
17
|
+
private isImmediateFollowUp;
|
|
18
|
+
detectNegativeSentiment(message: string): boolean;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=LocalMistakeDetector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LocalMistakeDetector.d.ts","sourceRoot":"","sources":["../../src/evolution/LocalMistakeDetector.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,mBAAmB;IAElC,YAAY,EAAE,OAAO,CAAC;IAEtB,UAAU,EAAE,MAAM,CAAC;IAEnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB;AAuID,qBAAa,oBAAoB;IAQ/B,gBAAgB,CACd,WAAW,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,MAAM,GAChB,mBAAmB;IA8CtB,2BAA2B,CACzB,WAAW,EAAE,MAAM,EACnB,mBAAmB,EAAE,OAAO,EAAE,GAC7B,mBAAmB;IAqBtB,OAAO,CAAC,wBAAwB;IA0ChC,OAAO,CAAC,mBAAmB;IAa3B,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAmBlD"}
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
const CORRECTION_PATTERNS = {
|
|
2
|
+
en: {
|
|
3
|
+
negative: [
|
|
4
|
+
/\bno\b,?\s*(that'?s?\s*)?(not|wrong|incorrect)/i,
|
|
5
|
+
/you'?re\s+(wrong|incorrect|mistaken)/i,
|
|
6
|
+
/that'?s\s+(wrong|incorrect|not\s+right)/i,
|
|
7
|
+
/don'?t\s+(do\s+that|say\s+that)/i,
|
|
8
|
+
/stop\s+(doing|saying)/i,
|
|
9
|
+
/\bnot\s+like\s+that\b/i,
|
|
10
|
+
],
|
|
11
|
+
directive: [
|
|
12
|
+
/should\s+(be|have|do)/i,
|
|
13
|
+
/supposed\s+to/i,
|
|
14
|
+
/actually,?\s+it'?s/i,
|
|
15
|
+
/instead,?\s+(you\s+should|do)/i,
|
|
16
|
+
/the\s+correct\s+(way|method|approach)\s+is/i,
|
|
17
|
+
],
|
|
18
|
+
},
|
|
19
|
+
zh: {
|
|
20
|
+
negative: [
|
|
21
|
+
/不對/,
|
|
22
|
+
/錯了/,
|
|
23
|
+
/不是/,
|
|
24
|
+
/不應該/,
|
|
25
|
+
/別這樣/,
|
|
26
|
+
/你搞錯/,
|
|
27
|
+
/你理解錯/,
|
|
28
|
+
/你又/,
|
|
29
|
+
],
|
|
30
|
+
directive: [
|
|
31
|
+
/應該是/,
|
|
32
|
+
/應該要/,
|
|
33
|
+
/正確的是/,
|
|
34
|
+
/要這樣/,
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
ja: {
|
|
38
|
+
negative: [
|
|
39
|
+
/違う/,
|
|
40
|
+
/間違い/,
|
|
41
|
+
/そうじゃない/,
|
|
42
|
+
/ダメ/,
|
|
43
|
+
],
|
|
44
|
+
directive: [
|
|
45
|
+
/べき/,
|
|
46
|
+
/はず/,
|
|
47
|
+
/正しくは/,
|
|
48
|
+
],
|
|
49
|
+
},
|
|
50
|
+
es: {
|
|
51
|
+
negative: [
|
|
52
|
+
/no,?\s+eso\s+no/i,
|
|
53
|
+
/incorrecto/i,
|
|
54
|
+
/equivocado/i,
|
|
55
|
+
/no\s+debes/i,
|
|
56
|
+
],
|
|
57
|
+
directive: [
|
|
58
|
+
/debería\s+ser/i,
|
|
59
|
+
/deberías/i,
|
|
60
|
+
/lo\s+correcto\s+es/i,
|
|
61
|
+
],
|
|
62
|
+
},
|
|
63
|
+
fr: {
|
|
64
|
+
negative: [
|
|
65
|
+
/non,?\s+c'?est\s+(faux|incorrect)/i,
|
|
66
|
+
/tu\s+as\s+tort/i,
|
|
67
|
+
/ne\s+fais\s+pas/i,
|
|
68
|
+
],
|
|
69
|
+
directive: [
|
|
70
|
+
/devrait\s+être/i,
|
|
71
|
+
/tu\s+devrais/i,
|
|
72
|
+
/la\s+bonne\s+(façon|méthode)/i,
|
|
73
|
+
],
|
|
74
|
+
},
|
|
75
|
+
de: {
|
|
76
|
+
negative: [
|
|
77
|
+
/nein,?\s+das\s+ist\s+(falsch|nicht\s+richtig)/i,
|
|
78
|
+
/du\s+liegst\s+falsch/i,
|
|
79
|
+
/nicht\s+so/i,
|
|
80
|
+
],
|
|
81
|
+
directive: [
|
|
82
|
+
/sollte\s+sein/i,
|
|
83
|
+
/du\s+solltest/i,
|
|
84
|
+
/die\s+richtige\s+(Art|Methode)/i,
|
|
85
|
+
],
|
|
86
|
+
},
|
|
87
|
+
ko: {
|
|
88
|
+
negative: [
|
|
89
|
+
/아니/,
|
|
90
|
+
/틀렸/,
|
|
91
|
+
/잘못/,
|
|
92
|
+
],
|
|
93
|
+
directive: [
|
|
94
|
+
/해야/,
|
|
95
|
+
/올바른/,
|
|
96
|
+
],
|
|
97
|
+
},
|
|
98
|
+
pt: {
|
|
99
|
+
negative: [
|
|
100
|
+
/não,?\s+isso\s+(não|está\s+errado)/i,
|
|
101
|
+
/incorreto/i,
|
|
102
|
+
/você\s+está\s+errado/i,
|
|
103
|
+
],
|
|
104
|
+
directive: [
|
|
105
|
+
/deveria\s+ser/i,
|
|
106
|
+
/o\s+correto\s+é/i,
|
|
107
|
+
],
|
|
108
|
+
},
|
|
109
|
+
ru: {
|
|
110
|
+
negative: [
|
|
111
|
+
/нет,?\s+это\s+(не\s+так|неправильно)/i,
|
|
112
|
+
/ты\s+не\s+прав/i,
|
|
113
|
+
],
|
|
114
|
+
directive: [
|
|
115
|
+
/должно\s+быть/i,
|
|
116
|
+
/правильно/i,
|
|
117
|
+
],
|
|
118
|
+
},
|
|
119
|
+
ar: {
|
|
120
|
+
negative: [
|
|
121
|
+
/لا،?\s*(هذا|ذلك)\s*(خطأ|غير\s+صحيح)/,
|
|
122
|
+
/أنت\s+مخطئ/,
|
|
123
|
+
],
|
|
124
|
+
directive: [
|
|
125
|
+
/يجب\s+أن/,
|
|
126
|
+
/الصحيح\s+هو/,
|
|
127
|
+
],
|
|
128
|
+
},
|
|
129
|
+
};
|
|
130
|
+
export class LocalMistakeDetector {
|
|
131
|
+
detectCorrection(userMessage, language) {
|
|
132
|
+
const languagesToTest = language
|
|
133
|
+
? [language]
|
|
134
|
+
: Object.keys(CORRECTION_PATTERNS);
|
|
135
|
+
let bestMatch = {
|
|
136
|
+
isCorrection: false,
|
|
137
|
+
confidence: 0,
|
|
138
|
+
};
|
|
139
|
+
for (const lang of languagesToTest) {
|
|
140
|
+
const patterns = CORRECTION_PATTERNS[lang];
|
|
141
|
+
if (!patterns)
|
|
142
|
+
continue;
|
|
143
|
+
const hasNegative = patterns.negative.some(p => p.test(userMessage));
|
|
144
|
+
const hasDirective = patterns.directive.some(p => p.test(userMessage));
|
|
145
|
+
let confidence = 0;
|
|
146
|
+
if (hasNegative && hasDirective) {
|
|
147
|
+
confidence = 0.9;
|
|
148
|
+
}
|
|
149
|
+
else if (hasNegative) {
|
|
150
|
+
confidence = 0.6;
|
|
151
|
+
}
|
|
152
|
+
else if (hasDirective) {
|
|
153
|
+
confidence = 0.4;
|
|
154
|
+
}
|
|
155
|
+
if (confidence > bestMatch.confidence) {
|
|
156
|
+
bestMatch = {
|
|
157
|
+
isCorrection: confidence >= 0.4,
|
|
158
|
+
confidence,
|
|
159
|
+
language: lang,
|
|
160
|
+
...this.extractCorrectionContent(userMessage, lang),
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
return bestMatch;
|
|
165
|
+
}
|
|
166
|
+
detectCorrectionWithContext(userMessage, conversationContext) {
|
|
167
|
+
const basicDetection = this.detectCorrection(userMessage);
|
|
168
|
+
if (this.isImmediateFollowUp(conversationContext)) {
|
|
169
|
+
basicDetection.confidence = Math.min(basicDetection.confidence + 0.2, 1.0);
|
|
170
|
+
basicDetection.isCorrection = basicDetection.confidence >= 0.4;
|
|
171
|
+
}
|
|
172
|
+
if (userMessage.length > 500) {
|
|
173
|
+
basicDetection.confidence *= 0.7;
|
|
174
|
+
basicDetection.isCorrection = basicDetection.confidence >= 0.4;
|
|
175
|
+
}
|
|
176
|
+
return basicDetection;
|
|
177
|
+
}
|
|
178
|
+
extractCorrectionContent(message, language) {
|
|
179
|
+
const result = {};
|
|
180
|
+
if (language === 'en') {
|
|
181
|
+
const shouldBe = message.match(/should\s+(?:be|do|have)\s+(.+?)(?:\.|$)/i);
|
|
182
|
+
const notShould = message.match(/(?:don't|shouldn't)\s+(.+?)(?:\.|$)/i);
|
|
183
|
+
if (shouldBe)
|
|
184
|
+
result.correctMethod = shouldBe[1].trim();
|
|
185
|
+
if (notShould)
|
|
186
|
+
result.wrongAction = notShould[1].trim();
|
|
187
|
+
}
|
|
188
|
+
if (language === 'zh') {
|
|
189
|
+
const shouldBe = message.match(/應該(?:是|要)(.+?)(?:。|$)/);
|
|
190
|
+
const shouldNot = message.match(/不應該(.+?)(?:。|$)/);
|
|
191
|
+
if (shouldBe)
|
|
192
|
+
result.correctMethod = shouldBe[1].trim();
|
|
193
|
+
if (shouldNot)
|
|
194
|
+
result.wrongAction = shouldNot[1].trim();
|
|
195
|
+
}
|
|
196
|
+
if (language === 'ja') {
|
|
197
|
+
const shouldBe = message.match(/(.+?)べき/);
|
|
198
|
+
if (shouldBe)
|
|
199
|
+
result.correctMethod = shouldBe[1].trim();
|
|
200
|
+
}
|
|
201
|
+
if (language === 'es') {
|
|
202
|
+
const shouldBe = message.match(/debería\s+ser\s+(.+?)(?:\.|$)/i);
|
|
203
|
+
if (shouldBe)
|
|
204
|
+
result.correctMethod = shouldBe[1].trim();
|
|
205
|
+
}
|
|
206
|
+
return result;
|
|
207
|
+
}
|
|
208
|
+
isImmediateFollowUp(conversation) {
|
|
209
|
+
if (conversation.length < 2)
|
|
210
|
+
return false;
|
|
211
|
+
const lastTwo = conversation.slice(-2);
|
|
212
|
+
return (lastTwo[0].role === 'assistant' &&
|
|
213
|
+
lastTwo[1].role === 'user');
|
|
214
|
+
}
|
|
215
|
+
detectNegativeSentiment(message) {
|
|
216
|
+
const negativeIndicators = [
|
|
217
|
+
/\bno\b/i,
|
|
218
|
+
/not\b/i,
|
|
219
|
+
/don't/i,
|
|
220
|
+
/wrong/i,
|
|
221
|
+
/incorrect/i,
|
|
222
|
+
/不/,
|
|
223
|
+
/錯/,
|
|
224
|
+
/違/,
|
|
225
|
+
/нет/,
|
|
226
|
+
/non\b/i,
|
|
227
|
+
/nein\b/i,
|
|
228
|
+
/아니/,
|
|
229
|
+
];
|
|
230
|
+
return negativeIndicators.some(p => p.test(message));
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
//# sourceMappingURL=LocalMistakeDetector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LocalMistakeDetector.js","sourceRoot":"","sources":["../../src/evolution/LocalMistakeDetector.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,12 @@ export { PerformanceTracker } from './PerformanceTracker.js';
|
|
|
2
2
|
export { LearningManager, type LearningConfig } from './LearningManager.js';
|
|
3
3
|
export { AdaptationEngine, type AdaptationResult, type AdaptedExecution, } from './AdaptationEngine.js';
|
|
4
4
|
export { EvolutionBootstrap } from './EvolutionBootstrap.js';
|
|
5
|
+
export { FeedbackCollector, type FeedbackCollectorConfig, type RoutingApprovalInput, type TaskCompletionInput, } from './FeedbackCollector.js';
|
|
6
|
+
export { LocalMistakeDetector, type CorrectionDetection, type Message, } from './LocalMistakeDetector.js';
|
|
7
|
+
export { CloudEvolutionClient, createCloudClient, type CloudEvolutionConfig, type AdvancedMistakeDetection, type PatternRecognitionResult, type PreventionSuggestion, } from './CloudEvolutionClient.js';
|
|
5
8
|
export type { PerformanceMetrics, LearnedPattern, AgentFeedback, AdaptationConfig, EvolutionStats, } from './types.js';
|
|
9
|
+
export { AIErrorType, } from './types.js';
|
|
10
|
+
export type { AIMistake, AIBehaviorPattern, } from './types.js';
|
|
6
11
|
export { TransferabilityChecker } from './TransferabilityChecker.js';
|
|
7
12
|
export { KnowledgeTransferManager, type FindTransferableOptions } from './KnowledgeTransferManager.js';
|
|
8
13
|
export { StatisticalAnalyzer, type WelchTTestResult } from './StatisticalAnalyzer.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/evolution/index.ts"],"names":[],"mappings":"AA2DA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EACL,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,cAAc,GACf,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,KAAK,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAGvG,OAAO,EAAE,mBAAmB,EAAE,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,KAAK,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAGjF,YAAY,EACV,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,kBAAkB,GACnB,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/evolution/index.ts"],"names":[],"mappings":"AA2DA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EACL,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,EACL,iBAAiB,EACjB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,GACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,KAAK,OAAO,GACb,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,GAC1B,MAAM,2BAA2B,CAAC;AAGnC,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,cAAc,GACf,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,SAAS,EACT,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,KAAK,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAGvG,OAAO,EAAE,mBAAmB,EAAE,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,KAAK,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAGjF,YAAY,EACV,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,kBAAkB,GACnB,MAAM,YAAY,CAAC"}
|
package/dist/evolution/index.js
CHANGED
|
@@ -2,6 +2,10 @@ export { PerformanceTracker } from './PerformanceTracker.js';
|
|
|
2
2
|
export { LearningManager } from './LearningManager.js';
|
|
3
3
|
export { AdaptationEngine, } from './AdaptationEngine.js';
|
|
4
4
|
export { EvolutionBootstrap } from './EvolutionBootstrap.js';
|
|
5
|
+
export { FeedbackCollector, } from './FeedbackCollector.js';
|
|
6
|
+
export { LocalMistakeDetector, } from './LocalMistakeDetector.js';
|
|
7
|
+
export { CloudEvolutionClient, createCloudClient, } from './CloudEvolutionClient.js';
|
|
8
|
+
export { AIErrorType, } from './types.js';
|
|
5
9
|
export { TransferabilityChecker } from './TransferabilityChecker.js';
|
|
6
10
|
export { KnowledgeTransferManager } from './KnowledgeTransferManager.js';
|
|
7
11
|
export { StatisticalAnalyzer } from './StatisticalAnalyzer.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/evolution/index.ts"],"names":[],"mappings":"AA2DA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAuB,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EACL,gBAAgB,GAGjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/evolution/index.ts"],"names":[],"mappings":"AA2DA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAuB,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EACL,gBAAgB,GAGjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,EACL,iBAAiB,GAIlB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,oBAAoB,GAGrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,EACpB,iBAAiB,GAKlB,MAAM,2BAA2B,CAAC;AAYnC,OAAO,EACL,WAAW,GACZ,MAAM,YAAY,CAAC;AAOpB,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAgC,MAAM,+BAA+B,CAAC;AAGvG,OAAO,EAAE,mBAAmB,EAAyB,MAAM,0BAA0B,CAAC;AACtF,OAAO,EAAE,aAAa,EAAgC,MAAM,oBAAoB,CAAC"}
|