testchimp-runner-core 0.0.39 → 0.0.41
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/execution-service.d.ts.map +1 -1
- package/dist/execution-service.js +1 -3
- package/dist/execution-service.js.map +1 -1
- package/dist/index.d.ts +7 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/orchestrator/decision-parser.d.ts.map +1 -1
- package/dist/orchestrator/decision-parser.js +16 -0
- package/dist/orchestrator/decision-parser.js.map +1 -1
- package/dist/orchestrator/index.d.ts +3 -1
- package/dist/orchestrator/index.d.ts.map +1 -1
- package/dist/orchestrator/index.js +8 -1
- package/dist/orchestrator/index.js.map +1 -1
- package/dist/orchestrator/orchestrator-agent.d.ts +10 -4
- package/dist/orchestrator/orchestrator-agent.d.ts.map +1 -1
- package/dist/orchestrator/orchestrator-agent.js +347 -93
- package/dist/orchestrator/orchestrator-agent.js.map +1 -1
- package/dist/orchestrator/orchestrator-prompts.d.ts.map +1 -1
- package/dist/orchestrator/orchestrator-prompts.js +364 -415
- package/dist/orchestrator/orchestrator-prompts.js.map +1 -1
- package/dist/orchestrator/page-loading-utils.d.ts +15 -0
- package/dist/orchestrator/page-loading-utils.d.ts.map +1 -0
- package/dist/orchestrator/page-loading-utils.js +115 -0
- package/dist/orchestrator/page-loading-utils.js.map +1 -0
- package/dist/orchestrator/page-som-handler.d.ts +2 -1
- package/dist/orchestrator/page-som-handler.d.ts.map +1 -1
- package/dist/orchestrator/page-som-handler.js +250 -33
- package/dist/orchestrator/page-som-handler.js.map +1 -1
- package/dist/orchestrator/site-learnings-utils.d.ts +31 -0
- package/dist/orchestrator/site-learnings-utils.d.ts.map +1 -0
- package/dist/orchestrator/site-learnings-utils.js +175 -0
- package/dist/orchestrator/site-learnings-utils.js.map +1 -0
- package/dist/orchestrator/som-types.d.ts +2 -0
- package/dist/orchestrator/som-types.d.ts.map +1 -1
- package/dist/orchestrator/som-types.js.map +1 -1
- package/dist/orchestrator/tools/take-screenshot.d.ts.map +1 -1
- package/dist/orchestrator/tools/take-screenshot.js +10 -1
- package/dist/orchestrator/tools/take-screenshot.js.map +1 -1
- package/dist/orchestrator/types.d.ts +54 -9
- package/dist/orchestrator/types.d.ts.map +1 -1
- package/dist/orchestrator/types.js.map +1 -1
- package/dist/progress-reporter.d.ts +23 -2
- package/dist/progress-reporter.d.ts.map +1 -1
- package/dist/progress-reporter.js.map +1 -1
- package/dist/scenario-service.d.ts +3 -3
- package/dist/scenario-service.d.ts.map +1 -1
- package/dist/scenario-service.js +6 -5
- package/dist/scenario-service.js.map +1 -1
- package/dist/scenario-worker-class.d.ts +7 -3
- package/dist/scenario-worker-class.d.ts.map +1 -1
- package/dist/scenario-worker-class.js +62 -9
- package/dist/scenario-worker-class.js.map +1 -1
- package/dist/types.d.ts +4 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
- package/dist/testing/agent-tester.d.ts +0 -35
- package/dist/testing/agent-tester.d.ts.map +0 -1
- package/dist/testing/agent-tester.js +0 -84
- package/dist/testing/agent-tester.js.map +0 -1
- package/dist/testing/ref-translator-tester.d.ts +0 -44
- package/dist/testing/ref-translator-tester.d.ts.map +0 -1
- package/dist/testing/ref-translator-tester.js +0 -104
- package/dist/testing/ref-translator-tester.js.map +0 -1
- package/dist/utils/hierarchical-selector.d.ts +0 -47
- package/dist/utils/hierarchical-selector.d.ts.map +0 -1
- package/dist/utils/hierarchical-selector.js +0 -212
- package/dist/utils/hierarchical-selector.js.map +0 -1
- package/dist/utils/ref-attacher.d.ts +0 -21
- package/dist/utils/ref-attacher.d.ts.map +0 -1
- package/dist/utils/ref-attacher.js +0 -149
- package/dist/utils/ref-attacher.js.map +0 -1
- package/dist/utils/ref-translator.d.ts +0 -49
- package/dist/utils/ref-translator.d.ts.map +0 -1
- package/dist/utils/ref-translator.js +0 -276
- package/dist/utils/ref-translator.js.map +0 -1
|
@@ -33,14 +33,27 @@ export interface CoordinateAction {
|
|
|
33
33
|
scrollAmount?: number;
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
|
-
* Journey memory - tracks the agent's journey through the scenario
|
|
36
|
+
* Journey memory - tracks the agent's journey through the scenario (temporal, journey-specific)
|
|
37
37
|
*/
|
|
38
38
|
export interface JourneyMemory {
|
|
39
39
|
history: MemoryStep[];
|
|
40
|
-
experiences: string[];
|
|
41
40
|
extractedData: Record<string, string>;
|
|
42
41
|
latestNote?: NoteToFutureSelf;
|
|
43
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* Site learnings - persistent knowledge across journeys (separate from journey memory)
|
|
45
|
+
*/
|
|
46
|
+
export interface SiteLearnings {
|
|
47
|
+
screens: Record<string, ScreenLearnings>;
|
|
48
|
+
uxPatterns: Record<number, string>;
|
|
49
|
+
screenStateVocabulary?: Record<string, string[]>;
|
|
50
|
+
}
|
|
51
|
+
export interface ScreenLearnings {
|
|
52
|
+
states: Record<string, ScreenStateLearning>;
|
|
53
|
+
}
|
|
54
|
+
export interface ScreenStateLearning {
|
|
55
|
+
observations: Record<number, string>;
|
|
56
|
+
}
|
|
44
57
|
/**
|
|
45
58
|
* Individual step in journey history
|
|
46
59
|
*/
|
|
@@ -53,6 +66,11 @@ export interface MemoryStep {
|
|
|
53
66
|
observation: string;
|
|
54
67
|
error?: string;
|
|
55
68
|
url: string;
|
|
69
|
+
previousUrl?: string;
|
|
70
|
+
screenState?: {
|
|
71
|
+
screen: string;
|
|
72
|
+
state: string;
|
|
73
|
+
};
|
|
56
74
|
timestamp: number;
|
|
57
75
|
}
|
|
58
76
|
/**
|
|
@@ -88,14 +106,33 @@ export interface AgentDecision {
|
|
|
88
106
|
observation: string;
|
|
89
107
|
extractedData?: Record<string, any>;
|
|
90
108
|
};
|
|
91
|
-
|
|
109
|
+
screenState?: {
|
|
110
|
+
screen: string;
|
|
111
|
+
state: string;
|
|
112
|
+
};
|
|
113
|
+
siteLearningsUpdate?: {
|
|
114
|
+
screens?: Record<string, {
|
|
115
|
+
states: Record<string, {
|
|
116
|
+
observations?: Array<{
|
|
117
|
+
id?: number;
|
|
118
|
+
text: string;
|
|
119
|
+
}>;
|
|
120
|
+
deleteObservationIds?: number[];
|
|
121
|
+
}>;
|
|
122
|
+
}>;
|
|
123
|
+
uxPatterns?: Array<{
|
|
124
|
+
id?: number;
|
|
125
|
+
text: string;
|
|
126
|
+
}>;
|
|
127
|
+
deleteUxPatternIds?: number[];
|
|
128
|
+
};
|
|
92
129
|
status: 'complete' | 'stuck' | 'infeasible' | 'continue';
|
|
93
130
|
statusReasoning: string;
|
|
94
131
|
reasoning: string;
|
|
95
132
|
stepSummary?: string;
|
|
96
133
|
blockerDetected?: {
|
|
97
134
|
description: string;
|
|
98
|
-
clearingCommands:
|
|
135
|
+
clearingCommands: any[];
|
|
99
136
|
};
|
|
100
137
|
stepReEvaluation?: {
|
|
101
138
|
detected: boolean;
|
|
@@ -105,6 +142,9 @@ export interface AgentDecision {
|
|
|
105
142
|
debugInfo?: {
|
|
106
143
|
suggestedPromptUpdates?: string;
|
|
107
144
|
reasoning?: string;
|
|
145
|
+
toolUsefulnessFeedback?: {
|
|
146
|
+
[toolName: string]: number;
|
|
147
|
+
};
|
|
108
148
|
};
|
|
109
149
|
}
|
|
110
150
|
/**
|
|
@@ -117,12 +157,16 @@ export interface AgentContext {
|
|
|
117
157
|
totalSteps: number;
|
|
118
158
|
completedSteps: string[];
|
|
119
159
|
remainingSteps: string[];
|
|
120
|
-
currentPageInfo: any;
|
|
121
160
|
currentURL: string;
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
161
|
+
currentPageTitle: string;
|
|
162
|
+
viewportWidth?: number;
|
|
163
|
+
viewportHeight?: number;
|
|
164
|
+
pageWidth?: number;
|
|
165
|
+
pageHeight?: number;
|
|
166
|
+
scrollX?: number;
|
|
167
|
+
scrollY?: number;
|
|
168
|
+
journeyMemory: JourneyMemory;
|
|
169
|
+
siteLearnings: SiteLearnings;
|
|
126
170
|
testDataPrompt?: string;
|
|
127
171
|
somScreenshot?: string;
|
|
128
172
|
somElementMap?: string;
|
|
@@ -176,6 +220,7 @@ export interface OrchestratorStepResult {
|
|
|
176
220
|
iterations: number;
|
|
177
221
|
terminationReason?: 'complete' | 'stuck' | 'infeasible' | 'system_limit' | 'agent_stuck';
|
|
178
222
|
memory: JourneyMemory;
|
|
223
|
+
siteLearnings: SiteLearnings;
|
|
179
224
|
error?: string;
|
|
180
225
|
}
|
|
181
226
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/orchestrator/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CAKjB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,OAAO,GAAG,aAAa,GAAG,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;IAGtF,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IAGjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAE5B,OAAO,EAAE,UAAU,EAAE,CAAC;IAGtB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/orchestrator/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/orchestrator/types.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/orchestrator/types.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AA+TH;;GAEG;AACU,QAAA,oBAAoB,GAA0B;IACzD,oBAAoB,EAAE,CAAC;IACvB,wBAAwB,EAAE,CAAC;IAC3B,uBAAuB,EAAE,CAAC;IAC1B,iCAAiC,EAAE,CAAC;IACpC,4BAA4B,EAAE,EAAE;IAChC,0BAA0B,EAAE,CAAC,EAAG,mBAAmB;IACnD,kBAAkB,EAAE,EAAE;IACtB,qBAAqB,EAAE,IAAI,EAAG,yCAAyC;IACvE,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,GAAG;IACnB,gBAAgB,EAAE,CAAC;IACnB,cAAc,EAAE,KAAK;IACrB,kBAAkB,EAAE,IAAI;IACxB,yBAAyB,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC;IACzE,cAAc,EAAE,EAAE;IAClB,oBAAoB,EAAE,KAAK,EAAG,6CAA6C;IAC3E,MAAM,EAAE,IAAI,EAAG,oDAAoD;IACnE,wBAAwB,EAAE,KAAK,EAAG,+BAA+B;IACjE,sBAAsB,EAAE,KAAK,EAAG,mDAAmD;IACnF,eAAe,EAAE;QACf,OAAO,EAAE,KAAK;QACd,iBAAiB,EAAE,EAAE;QACrB,cAAc,EAAE,SAAS;QACzB,mBAAmB,EAAE,EAAE;KACxB;CACF,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Progress Reporter Interface
|
|
3
3
|
* Allows consumers to track execution progress (logs, DB writes, etc.)
|
|
4
4
|
*/
|
|
5
|
+
import { SiteLearnings } from './orchestrator/types';
|
|
5
6
|
/**
|
|
6
7
|
* Execution status for a step
|
|
7
8
|
* Matches scriptservice StepExecutionStatus enum
|
|
@@ -59,6 +60,26 @@ export interface TokenUsage {
|
|
|
59
60
|
model: string;
|
|
60
61
|
timestamp: number;
|
|
61
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Tool usage statistics per tool
|
|
65
|
+
*/
|
|
66
|
+
export interface ToolUsageStats {
|
|
67
|
+
[toolName: string]: {
|
|
68
|
+
count: number;
|
|
69
|
+
averageUsefulnessScore: number;
|
|
70
|
+
numTimesRated: number;
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Debug statistics for a test run (populated only on completion)
|
|
75
|
+
*/
|
|
76
|
+
export interface DebugStats {
|
|
77
|
+
tokensUsedIn: number;
|
|
78
|
+
tokensUsedOut: number;
|
|
79
|
+
imagesUsed: number;
|
|
80
|
+
toolsUsed: ToolUsageStats;
|
|
81
|
+
promptImproveSuggestions: string[];
|
|
82
|
+
}
|
|
62
83
|
/**
|
|
63
84
|
* Additional step info for lifecycle callbacks
|
|
64
85
|
*/
|
|
@@ -119,9 +140,9 @@ export interface ProgressReporter {
|
|
|
119
140
|
beforeStepStart?(step: StepInfo, page: any): Promise<void>;
|
|
120
141
|
/**
|
|
121
142
|
* Called after test execution completes (success or failure)
|
|
122
|
-
* - Script Service: Write final status to DB, cleanup resources
|
|
143
|
+
* - Script Service: Write final status to DB, cleanup resources, persist site learnings
|
|
123
144
|
* - VS Extension/GitHub: Not used (return value is sufficient)
|
|
124
145
|
*/
|
|
125
|
-
afterEndTest?(status: 'passed' | 'failed', error?: string, page?: any): Promise<void>;
|
|
146
|
+
afterEndTest?(status: 'passed' | 'failed', error?: string, page?: any, siteLearnings?: SiteLearnings, debugStats?: DebugStats): Promise<void>;
|
|
126
147
|
}
|
|
127
148
|
//# sourceMappingURL=progress-reporter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress-reporter.d.ts","sourceRoot":"","sources":["../src/progress-reporter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"progress-reporter.d.ts","sourceRoot":"","sources":["../src/progress-reporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress-reporter.js","sourceRoot":"","sources":["../src/progress-reporter.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;
|
|
1
|
+
{"version":3,"file":"progress-reporter.js","sourceRoot":"","sources":["../src/progress-reporter.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH;;;GAGG;AACH,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,yDAAkC,CAAA;IAClC,yDAAkC,CAAA;IAClC,iEAA0C,CAAA;AAC5C,CAAC,EAJW,mBAAmB,mCAAnB,mBAAmB,QAI9B"}
|
|
@@ -4,7 +4,7 @@ import { FileHandler } from './file-handler';
|
|
|
4
4
|
import { AuthConfig } from './auth-config';
|
|
5
5
|
import { LLMProvider } from './llm-provider';
|
|
6
6
|
import { ProgressReporter } from './progress-reporter';
|
|
7
|
-
import { AgentConfig } from './orchestrator';
|
|
7
|
+
import { AgentConfig, SiteLearnings } from './orchestrator';
|
|
8
8
|
/**
|
|
9
9
|
* Service for processing scenarios using LLM + Playwright
|
|
10
10
|
*/
|
|
@@ -44,7 +44,7 @@ export declare class ScenarioService extends EventEmitter {
|
|
|
44
44
|
private initializeWorkers;
|
|
45
45
|
private createWorker;
|
|
46
46
|
initialize(): Promise<void>;
|
|
47
|
-
processScenario(scenario: string, testName?: string, config?: PlaywrightConfig, model?: string, scenarioFileName?: string, existingBrowser?: any, existingContext?: any, existingPage?: any): string;
|
|
47
|
+
processScenario(scenario: string, testName?: string, config?: PlaywrightConfig, model?: string, scenarioFileName?: string, existingBrowser?: any, existingContext?: any, existingPage?: any, existingSiteLearnings?: SiteLearnings): string;
|
|
48
48
|
private processNextJob;
|
|
49
49
|
private handleJobResult;
|
|
50
50
|
private handleJobError;
|
|
@@ -52,7 +52,7 @@ export declare class ScenarioService extends EventEmitter {
|
|
|
52
52
|
* Execute exploration mode using orchestrator
|
|
53
53
|
* Requires orchestrator to be enabled via useOrchestrator option
|
|
54
54
|
*/
|
|
55
|
-
executeExploration(page: any, explorationConfig: any, jobId: string): Promise<any>;
|
|
55
|
+
executeExploration(page: any, explorationConfig: any, jobId: string, existingSiteLearnings?: SiteLearnings): Promise<any>;
|
|
56
56
|
shutdown(): Promise<void>;
|
|
57
57
|
}
|
|
58
58
|
//# sourceMappingURL=scenario-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scenario-service.d.ts","sourceRoot":"","sources":["../src/scenario-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAiD,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE1F,OAAO,EAAE,WAAW,EAAmB,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"scenario-service.d.ts","sourceRoot":"","sources":["../src/scenario-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAiD,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE1F,OAAO,EAAE,WAAW,EAAmB,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAK5D;;GAEG;AACH,qBAAa,eAAgB,SAAQ,YAAY;IAC/C,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,QAAQ,CAAwB;IACxC,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,MAAM,CAAC,CAA8D;IAC7E,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,gBAAgB,CAAC,CAAmB;IAC5C,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,kBAAkB,CAAC,CAAuB;IAClD,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,aAAa,CAAC,CAAM;gBAG1B,UAAU,GAAE,MAAU,EACtB,WAAW,CAAC,EAAE,WAAW,EACzB,WAAW,CAAC,EAAE,WAAW,EACzB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,UAAU,CAAC,EAAE,UAAU,EACvB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;QACR,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAC1C,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB;IAeH;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,KAAK,IAAI,GAAG,IAAI;IAIpF;;OAEG;IACH,gBAAgB,CAAC,aAAa,EAAE,GAAG,GAAG,IAAI;IAI1C;;OAEG;IACH,OAAO,CAAC,GAAG;YAOG,iBAAiB;YAMjB,YAAY;IA0BpB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAMjC,eAAe,CACb,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,gBAAgB,EACzB,KAAK,CAAC,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,MAAM,EACzB,eAAe,CAAC,EAAE,GAAG,EACrB,eAAe,CAAC,EAAE,GAAG,EACrB,YAAY,CAAC,EAAE,GAAG,EAClB,qBAAqB,CAAC,EAAE,aAAa,GACpC,MAAM;YAuBK,cAAc;IA0C5B,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,cAAc;IAStB;;;OAGG;IACG,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,iBAAiB,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC;IAgBzH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAWhC"}
|
package/dist/scenario-service.js
CHANGED
|
@@ -78,7 +78,7 @@ class ScenarioService extends events_1.EventEmitter {
|
|
|
78
78
|
await this.initializeWorkers();
|
|
79
79
|
// Internal initialization - consumer doesn't need to see this
|
|
80
80
|
}
|
|
81
|
-
processScenario(scenario, testName, config, model, scenarioFileName, existingBrowser, existingContext, existingPage) {
|
|
81
|
+
processScenario(scenario, testName, config, model, scenarioFileName, existingBrowser, existingContext, existingPage, existingSiteLearnings) {
|
|
82
82
|
const jobId = `scenario_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
|
|
83
83
|
// Add job to queue
|
|
84
84
|
const job = {
|
|
@@ -90,7 +90,8 @@ class ScenarioService extends events_1.EventEmitter {
|
|
|
90
90
|
scenarioFileName,
|
|
91
91
|
existingBrowser,
|
|
92
92
|
existingContext,
|
|
93
|
-
existingPage
|
|
93
|
+
existingPage,
|
|
94
|
+
existingSiteLearnings
|
|
94
95
|
};
|
|
95
96
|
this.jobQueue.push(job);
|
|
96
97
|
this.processNextJob();
|
|
@@ -116,7 +117,7 @@ class ScenarioService extends events_1.EventEmitter {
|
|
|
116
117
|
this.busyWorkers.add(availableWorker);
|
|
117
118
|
try {
|
|
118
119
|
// Process job directly with worker
|
|
119
|
-
const result = await availableWorker.processScenarioJob(job);
|
|
120
|
+
const result = await availableWorker.processScenarioJob(job, job.existingSiteLearnings);
|
|
120
121
|
this.log(`[ScenarioService] Job ${job.id} completed with result: ${JSON.stringify(result)}`);
|
|
121
122
|
this.handleJobResult(job.id, result);
|
|
122
123
|
}
|
|
@@ -157,7 +158,7 @@ class ScenarioService extends events_1.EventEmitter {
|
|
|
157
158
|
* Execute exploration mode using orchestrator
|
|
158
159
|
* Requires orchestrator to be enabled via useOrchestrator option
|
|
159
160
|
*/
|
|
160
|
-
async executeExploration(page, explorationConfig, jobId) {
|
|
161
|
+
async executeExploration(page, explorationConfig, jobId, existingSiteLearnings) {
|
|
161
162
|
if (!this.useOrchestrator) {
|
|
162
163
|
throw new Error('Exploration mode requires orchestrator to be enabled');
|
|
163
164
|
}
|
|
@@ -168,7 +169,7 @@ class ScenarioService extends events_1.EventEmitter {
|
|
|
168
169
|
worker = this.workers[this.workers.length - 1];
|
|
169
170
|
}
|
|
170
171
|
// Execute exploration via worker's orchestrator
|
|
171
|
-
return worker.executeExploration(page, explorationConfig, jobId);
|
|
172
|
+
return worker.executeExploration(page, explorationConfig, jobId, existingSiteLearnings);
|
|
172
173
|
}
|
|
173
174
|
async shutdown() {
|
|
174
175
|
this.log('Shutting down scenario service...');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scenario-service.js","sourceRoot":"","sources":["../src/scenario-service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"scenario-service.js","sourceRoot":"","sources":["../src/scenario-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { FileHandler } from './file-handler';
|
|
|
4
4
|
import { AuthConfig } from './auth-config';
|
|
5
5
|
import { LLMProvider } from './llm-provider';
|
|
6
6
|
import { ProgressReporter } from './progress-reporter';
|
|
7
|
-
import { AgentConfig } from './orchestrator';
|
|
7
|
+
import { AgentConfig, SiteLearnings } from './orchestrator';
|
|
8
8
|
interface OutputChannel {
|
|
9
9
|
appendLine: (text: string) => void;
|
|
10
10
|
}
|
|
@@ -51,12 +51,16 @@ export declare class ScenarioWorker extends EventEmitter {
|
|
|
51
51
|
*/
|
|
52
52
|
private isComplexStep;
|
|
53
53
|
initialize(): Promise<void>;
|
|
54
|
-
processScenarioJob(job: ScenarioRunJob): Promise<ScenarioResponse>;
|
|
54
|
+
processScenarioJob(job: ScenarioRunJob, existingSiteLearnings?: SiteLearnings): Promise<ScenarioResponse>;
|
|
55
55
|
private executePlaywrightCommand;
|
|
56
|
+
/**
|
|
57
|
+
* Simple merge of site learnings (accumulate across steps)
|
|
58
|
+
*/
|
|
59
|
+
private mergeSiteLearningsSimple;
|
|
56
60
|
/**
|
|
57
61
|
* Execute exploration mode using orchestrator
|
|
58
62
|
*/
|
|
59
|
-
executeExploration(page: any, explorationConfig: any, jobId: string): Promise<any>;
|
|
63
|
+
executeExploration(page: any, explorationConfig: any, jobId: string, existingSiteLearnings?: SiteLearnings): Promise<any>;
|
|
60
64
|
cleanup(): Promise<void>;
|
|
61
65
|
}
|
|
62
66
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scenario-worker-class.d.ts","sourceRoot":"","sources":["../src/scenario-worker-class.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAItC,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAgB,MAAM,SAAS,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAkD,MAAM,qBAAqB,CAAC;AAEvG,OAAO,EAIL,WAAW,
|
|
1
|
+
{"version":3,"file":"scenario-worker-class.d.ts","sourceRoot":"","sources":["../src/scenario-worker-class.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAItC,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAgB,MAAM,SAAS,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAkD,MAAM,qBAAqB,CAAC;AAEvG,OAAO,EAIL,WAAW,EASX,aAAa,EACd,MAAM,gBAAgB,CAAC;AAGxB,UAAU,aAAa;IACrB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAiBD,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,aAAa,CAAC,CAAgB;IACtC,OAAO,CAAC,gBAAgB,CAAC,CAAmB;IAC5C,OAAO,CAAC,YAAY,CAAC,CAAS;IAG9B,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,iBAAiB,CAAC,CAAoB;IAC9C,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,kBAAkB,CAAC,CAAuB;IAClD,OAAO,CAAC,SAAS,CAAkB;gBAGjC,WAAW,CAAC,EAAE,WAAW,EACzB,WAAW,CAAC,EAAE,WAAW,EACzB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,UAAU,CAAC,EAAE,UAAU,EACvB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;QACR,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAC1C,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,EACD,aAAa,CAAC,EAAE,aAAa;IAsB/B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAmD9B,OAAO,CAAC,GAAG;IAWX,OAAO,CAAC,QAAQ;IAWhB;;;OAGG;YACW,qBAAqB;IAWnC;;OAEG;YACW,kBAAkB;IAchC;;OAEG;YACW,iBAAiB;IAW/B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAkCf,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAW3B,kBAAkB,CAAC,GAAG,EAAE,cAAc,EAAE,qBAAqB,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC;YAkzBjG,wBAAwB;IAoCtC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IA0BhC;;OAEG;IACG,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,iBAAiB,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC;IASzH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAI/B"}
|
|
@@ -176,7 +176,7 @@ class ScenarioWorker extends events_1.EventEmitter {
|
|
|
176
176
|
throw error;
|
|
177
177
|
}
|
|
178
178
|
}
|
|
179
|
-
async processScenarioJob(job) {
|
|
179
|
+
async processScenarioJob(job, existingSiteLearnings) {
|
|
180
180
|
if (!this.initialized) {
|
|
181
181
|
throw new Error('Scenario worker not initialized');
|
|
182
182
|
}
|
|
@@ -194,6 +194,7 @@ class ScenarioWorker extends events_1.EventEmitter {
|
|
|
194
194
|
let context;
|
|
195
195
|
let page;
|
|
196
196
|
let overallSuccess = true;
|
|
197
|
+
let siteLearnings = existingSiteLearnings || { screens: {}, uxPatterns: {} };
|
|
197
198
|
try {
|
|
198
199
|
// Report job started
|
|
199
200
|
await this.reportJobProgress({
|
|
@@ -251,13 +252,18 @@ class ScenarioWorker extends events_1.EventEmitter {
|
|
|
251
252
|
let consecutiveFailures = 0;
|
|
252
253
|
const MAX_CONSECUTIVE_FAILURES = this.orchestratorConfig?.maxConsecutiveStepFailures || 3;
|
|
253
254
|
const CONTINUE_ON_FAILURE = this.orchestratorConfig?.continueOnStepFailure !== false; // Default true
|
|
255
|
+
// Log existing site learnings if provided
|
|
256
|
+
if (existingSiteLearnings) {
|
|
257
|
+
const screenCount = Object.keys(existingSiteLearnings.screens || {}).length;
|
|
258
|
+
const patternCount = Object.keys(existingSiteLearnings.uxPatterns || {}).length;
|
|
259
|
+
this.log(`📚 Starting with existing learnings: ${screenCount} screens, ${patternCount} UX patterns`);
|
|
260
|
+
}
|
|
254
261
|
// 3a. ORCHESTRATOR MODE - Use orchestrator agent for execution
|
|
255
262
|
if (this.useOrchestrator && this.orchestratorAgent) {
|
|
256
263
|
this.log(`🤖 Using Orchestrator Mode (continueOnFailure: ${CONTINUE_ON_FAILURE})`);
|
|
257
264
|
// Initialize journey memory
|
|
258
265
|
const memory = {
|
|
259
266
|
history: [],
|
|
260
|
-
experiences: [],
|
|
261
267
|
extractedData: {}
|
|
262
268
|
};
|
|
263
269
|
// Execute steps using orchestrator
|
|
@@ -289,17 +295,30 @@ class ScenarioWorker extends events_1.EventEmitter {
|
|
|
289
295
|
}, page);
|
|
290
296
|
}
|
|
291
297
|
// Use orchestrator to execute this step
|
|
292
|
-
|
|
298
|
+
// Pass accumulated site learnings so agent can build upon them
|
|
299
|
+
const result = await this.orchestratorAgent.executeStep(page, step.description, step.stepNumber, steps.length, steps.map(s => s.description), memory, job.id, undefined, // priorSteps
|
|
300
|
+
undefined, // nextSteps
|
|
301
|
+
undefined, // successfulCommandsInStep
|
|
302
|
+
undefined, // failingCommand
|
|
303
|
+
undefined, // remainingCommandsInStep
|
|
304
|
+
siteLearnings // Pass accumulated learnings
|
|
305
|
+
);
|
|
293
306
|
// Update step with result
|
|
294
307
|
step.success = result.success;
|
|
295
308
|
step.playwrightCommands = result.commands;
|
|
296
309
|
step.error = result.error;
|
|
310
|
+
// Merge site learnings from this step
|
|
311
|
+
if (result.siteLearnings) {
|
|
312
|
+
siteLearnings = this.mergeSiteLearningsSimple(siteLearnings, result.siteLearnings);
|
|
313
|
+
}
|
|
297
314
|
if (result.success) {
|
|
298
|
-
this.log(`✓ Step ${step.stepNumber} completed via orchestrator (${result.iterations} iterations)`);
|
|
315
|
+
this.log(`✓ Step ${step.stepNumber} completed via orchestrator (${result.iterations} iterations, ${result.commands.length} commands)`);
|
|
299
316
|
consecutiveFailures = 0;
|
|
300
317
|
}
|
|
301
318
|
else {
|
|
302
319
|
this.log(`✗ Step ${step.stepNumber} failed via orchestrator: ${result.terminationReason}`);
|
|
320
|
+
this.log(` Reason: ${result.error || 'No error message'}`);
|
|
321
|
+
this.log(` Commands executed: ${result.commands.length}`);
|
|
303
322
|
consecutiveFailures++;
|
|
304
323
|
overallSuccess = false;
|
|
305
324
|
// CRITICAL: Stop on agent_stuck or infeasible (explicit agent decision)
|
|
@@ -781,7 +800,12 @@ class ScenarioWorker extends events_1.EventEmitter {
|
|
|
781
800
|
logLines.push(``);
|
|
782
801
|
}
|
|
783
802
|
const executionLog = logLines.join('\n');
|
|
784
|
-
// Report job completion
|
|
803
|
+
// Report job completion (siteLearnings and debugStats are now passed via afterEndTest)
|
|
804
|
+
this.log(`[ScenarioWorker] Reporting job completion: ${overallSuccess ? 'SUCCESS' : 'FAILURE'}`);
|
|
805
|
+
if (!overallSuccess) {
|
|
806
|
+
const failedSteps = steps.filter(s => !s.success);
|
|
807
|
+
this.log(`[ScenarioWorker] Failed steps: ${failedSteps.map(s => `${s.stepNumber}. ${s.description}`).join(', ')}`);
|
|
808
|
+
}
|
|
785
809
|
await this.reportJobProgress({
|
|
786
810
|
jobId: job.id,
|
|
787
811
|
status: overallSuccess ? 'completed' : 'failed',
|
|
@@ -796,7 +820,8 @@ class ScenarioWorker extends events_1.EventEmitter {
|
|
|
796
820
|
executionLog,
|
|
797
821
|
executionTime: Date.now() - startTime,
|
|
798
822
|
testName,
|
|
799
|
-
preferredFileName
|
|
823
|
+
preferredFileName,
|
|
824
|
+
siteLearnings: this.useOrchestrator ? siteLearnings : undefined
|
|
800
825
|
};
|
|
801
826
|
}
|
|
802
827
|
catch (error) {
|
|
@@ -825,7 +850,9 @@ class ScenarioWorker extends events_1.EventEmitter {
|
|
|
825
850
|
// LIFECYCLE: Call afterEndTest if provided
|
|
826
851
|
if (browser && this.progressReporter?.afterEndTest) {
|
|
827
852
|
try {
|
|
828
|
-
await this.progressReporter.afterEndTest(overallSuccess ? 'passed' : 'failed', overallSuccess ? undefined : 'Test execution had failures', page
|
|
853
|
+
await this.progressReporter.afterEndTest(overallSuccess ? 'passed' : 'failed', overallSuccess ? undefined : 'Test execution had failures', page, this.useOrchestrator ? siteLearnings : undefined, // Pass siteLearnings here
|
|
854
|
+
this.useOrchestrator && this.orchestratorAgent ? this.orchestratorAgent.getDebugStats() : undefined // Pass debugStats here
|
|
855
|
+
);
|
|
829
856
|
}
|
|
830
857
|
catch (callbackError) {
|
|
831
858
|
this.log(`afterEndTest callback failed: ${callbackError}`);
|
|
@@ -863,15 +890,41 @@ class ScenarioWorker extends events_1.EventEmitter {
|
|
|
863
890
|
page.setDefaultTimeout(5000);
|
|
864
891
|
}
|
|
865
892
|
}
|
|
893
|
+
/**
|
|
894
|
+
* Simple merge of site learnings (accumulate across steps)
|
|
895
|
+
*/
|
|
896
|
+
mergeSiteLearningsSimple(target, update) {
|
|
897
|
+
// Simple deep merge for siteLearnings
|
|
898
|
+
const merged = JSON.parse(JSON.stringify(target));
|
|
899
|
+
// Merge uxPatterns
|
|
900
|
+
if (update.uxPatterns) {
|
|
901
|
+
merged.uxPatterns = [...new Set([...merged.uxPatterns, ...update.uxPatterns])];
|
|
902
|
+
}
|
|
903
|
+
// Merge screens
|
|
904
|
+
if (update.screens) {
|
|
905
|
+
for (const screenName in update.screens) {
|
|
906
|
+
if (!merged.screens[screenName]) {
|
|
907
|
+
merged.screens[screenName] = update.screens[screenName];
|
|
908
|
+
}
|
|
909
|
+
else {
|
|
910
|
+
// Merge states
|
|
911
|
+
for (const stateName in update.screens[screenName].states) {
|
|
912
|
+
merged.screens[screenName].states[stateName] = update.screens[screenName].states[stateName];
|
|
913
|
+
}
|
|
914
|
+
}
|
|
915
|
+
}
|
|
916
|
+
}
|
|
917
|
+
return merged;
|
|
918
|
+
}
|
|
866
919
|
/**
|
|
867
920
|
* Execute exploration mode using orchestrator
|
|
868
921
|
*/
|
|
869
|
-
async executeExploration(page, explorationConfig, jobId) {
|
|
922
|
+
async executeExploration(page, explorationConfig, jobId, existingSiteLearnings) {
|
|
870
923
|
if (!this.useOrchestrator || !this.orchestratorAgent) {
|
|
871
924
|
throw new Error('Orchestrator not available - exploration mode requires orchestrator');
|
|
872
925
|
}
|
|
873
926
|
// Execute exploration via orchestrator
|
|
874
|
-
return this.orchestratorAgent.executeExploration(page, explorationConfig, jobId);
|
|
927
|
+
return this.orchestratorAgent.executeExploration(page, explorationConfig, jobId, existingSiteLearnings);
|
|
875
928
|
}
|
|
876
929
|
async cleanup() {
|
|
877
930
|
this.initialized = false;
|