agentic-qe 2.6.0 → 2.6.1
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/CHANGELOG.md +85 -0
- package/README.md +1 -1
- package/dist/agents/pool/AgentPool.d.ts +112 -0
- package/dist/agents/pool/AgentPool.d.ts.map +1 -0
- package/dist/agents/pool/AgentPool.js +573 -0
- package/dist/agents/pool/AgentPool.js.map +1 -0
- package/dist/agents/pool/QEAgentPoolFactory.d.ts +118 -0
- package/dist/agents/pool/QEAgentPoolFactory.d.ts.map +1 -0
- package/dist/agents/pool/QEAgentPoolFactory.js +251 -0
- package/dist/agents/pool/QEAgentPoolFactory.js.map +1 -0
- package/dist/agents/pool/index.d.ts +34 -0
- package/dist/agents/pool/index.d.ts.map +1 -0
- package/dist/agents/pool/index.js +44 -0
- package/dist/agents/pool/index.js.map +1 -0
- package/dist/agents/pool/types.d.ts +227 -0
- package/dist/agents/pool/types.d.ts.map +1 -0
- package/dist/agents/pool/types.js +28 -0
- package/dist/agents/pool/types.js.map +1 -0
- package/dist/mcp/handlers/agent-spawn.d.ts +71 -5
- package/dist/mcp/handlers/agent-spawn.d.ts.map +1 -1
- package/dist/mcp/handlers/agent-spawn.js +336 -110
- package/dist/mcp/handlers/agent-spawn.js.map +1 -1
- package/dist/mcp/handlers/fleet-init.d.ts +24 -0
- package/dist/mcp/handlers/fleet-init.d.ts.map +1 -1
- package/dist/mcp/handlers/fleet-init.js +56 -4
- package/dist/mcp/handlers/fleet-init.js.map +1 -1
- package/dist/mcp/server-instructions.d.ts +1 -1
- package/dist/mcp/server-instructions.js +1 -1
- package/dist/memory/HNSWPatternStore.d.ts.map +1 -1
- package/dist/memory/HNSWPatternStore.js.map +1 -1
- package/dist/plugins/BasePlugin.d.ts +111 -0
- package/dist/plugins/BasePlugin.d.ts.map +1 -0
- package/dist/plugins/BasePlugin.js +154 -0
- package/dist/plugins/BasePlugin.js.map +1 -0
- package/dist/plugins/PluginManager.d.ts +145 -0
- package/dist/plugins/PluginManager.d.ts.map +1 -0
- package/dist/plugins/PluginManager.js +862 -0
- package/dist/plugins/PluginManager.js.map +1 -0
- package/dist/plugins/adapters/McpToolsPlugin.d.ts +98 -0
- package/dist/plugins/adapters/McpToolsPlugin.d.ts.map +1 -0
- package/dist/plugins/adapters/McpToolsPlugin.js +518 -0
- package/dist/plugins/adapters/McpToolsPlugin.js.map +1 -0
- package/dist/plugins/adapters/PlaywrightPlugin.d.ts +63 -0
- package/dist/plugins/adapters/PlaywrightPlugin.d.ts.map +1 -0
- package/dist/plugins/adapters/PlaywrightPlugin.js +451 -0
- package/dist/plugins/adapters/PlaywrightPlugin.js.map +1 -0
- package/dist/plugins/adapters/VitestPlugin.d.ts +74 -0
- package/dist/plugins/adapters/VitestPlugin.d.ts.map +1 -0
- package/dist/plugins/adapters/VitestPlugin.js +589 -0
- package/dist/plugins/adapters/VitestPlugin.js.map +1 -0
- package/dist/plugins/adapters/index.d.ts +8 -0
- package/dist/plugins/adapters/index.d.ts.map +1 -0
- package/dist/plugins/adapters/index.js +17 -0
- package/dist/plugins/adapters/index.js.map +1 -0
- package/dist/plugins/index.d.ts +32 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/index.js +48 -0
- package/dist/plugins/index.js.map +1 -0
- package/dist/plugins/types.d.ts +528 -0
- package/dist/plugins/types.d.ts.map +1 -0
- package/dist/plugins/types.js +61 -0
- package/dist/plugins/types.js.map +1 -0
- package/package.json +4 -1
|
@@ -11,6 +11,8 @@ import { BaseHandler, HandlerResponse } from './base-handler.js';
|
|
|
11
11
|
import { FleetConfig } from '../tools.js';
|
|
12
12
|
import { AgentRegistry } from '../services/AgentRegistry.js';
|
|
13
13
|
import { HookExecutor } from '../services/HookExecutor.js';
|
|
14
|
+
import { AgentSpawnHandler } from './agent-spawn.js';
|
|
15
|
+
import { QEAgentType } from '../../types/index.js';
|
|
14
16
|
export interface FleetInitArgs {
|
|
15
17
|
config: FleetConfig;
|
|
16
18
|
projectContext?: {
|
|
@@ -18,6 +20,10 @@ export interface FleetInitArgs {
|
|
|
18
20
|
language?: string;
|
|
19
21
|
buildSystem?: string;
|
|
20
22
|
};
|
|
23
|
+
/** Enable agent pool warmup during initialization (default: true) */
|
|
24
|
+
enablePoolWarmup?: boolean;
|
|
25
|
+
/** Agent types to pre-warm in pool */
|
|
26
|
+
warmupTypes?: QEAgentType[];
|
|
21
27
|
}
|
|
22
28
|
export interface FleetInstance {
|
|
23
29
|
id: string;
|
|
@@ -28,12 +34,30 @@ export interface FleetInstance {
|
|
|
28
34
|
coordinationChannels: string[];
|
|
29
35
|
createdAt: string;
|
|
30
36
|
configuration: FleetConfig;
|
|
37
|
+
/** Pool warmup status */
|
|
38
|
+
poolWarmup?: {
|
|
39
|
+
enabled: boolean;
|
|
40
|
+
warmedTypes: QEAgentType[];
|
|
41
|
+
warmupTimeMs: number;
|
|
42
|
+
poolStats?: {
|
|
43
|
+
totalAgents: number;
|
|
44
|
+
availableAgents: number;
|
|
45
|
+
};
|
|
46
|
+
};
|
|
31
47
|
}
|
|
32
48
|
export declare class FleetInitHandler extends BaseHandler {
|
|
33
49
|
private activeFleets;
|
|
34
50
|
private registry;
|
|
35
51
|
private hookExecutor;
|
|
52
|
+
private spawnHandler;
|
|
53
|
+
/** Default types to warm up during fleet initialization */
|
|
54
|
+
private static readonly DEFAULT_WARMUP_TYPES;
|
|
36
55
|
constructor(registry: AgentRegistry, hookExecutor: HookExecutor);
|
|
56
|
+
/**
|
|
57
|
+
* Set the spawn handler for pool warmup integration
|
|
58
|
+
* This allows fleet init to trigger pool warmup during initialization
|
|
59
|
+
*/
|
|
60
|
+
setSpawnHandler(spawnHandler: AgentSpawnHandler): void;
|
|
37
61
|
handle(args: FleetInitArgs): Promise<HandlerResponse>;
|
|
38
62
|
private validateFleetConfig;
|
|
39
63
|
private initializeFleet;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fleet-init.d.ts","sourceRoot":"","sources":["../../../src/mcp/handlers/fleet-init.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"fleet-init.d.ts","sourceRoot":"","sources":["../../../src/mcp/handlers/fleet-init.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,EAAE;QACf,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,qEAAqE;IACrE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,sCAAsC;IACtC,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,cAAc,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC;IACxD,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,WAAW,CAAC;IAC3B,yBAAyB;IACzB,UAAU,CAAC,EAAE;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,WAAW,EAAE,WAAW,EAAE,CAAC;QAC3B,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE;YACV,WAAW,EAAE,MAAM,CAAC;YACpB,eAAe,EAAE,MAAM,CAAC;SACzB,CAAC;KACH,CAAC;CACH;AAED,qBAAa,gBAAiB,SAAQ,WAAW;IAC/C,OAAO,CAAC,YAAY,CAAyC;IAC7D,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,YAAY,CAAkC;IAEtD,2DAA2D;IAC3D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAI1C;gBAEU,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY;IAM/D;;;OAGG;IACH,eAAe,CAAC,YAAY,EAAE,iBAAiB,GAAG,IAAI;IAIhD,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC;IA4D3D,OAAO,CAAC,mBAAmB;YAWb,eAAe;IAwE7B,OAAO,CAAC,0BAA0B;YAqBpB,uBAAuB;IAcrC;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAIpD;;OAEG;IACH,UAAU,IAAI,aAAa,EAAE;IAI7B;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CActD"}
|
|
@@ -12,13 +12,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.FleetInitHandler = void 0;
|
|
13
13
|
const base_handler_js_1 = require("./base-handler.js");
|
|
14
14
|
const SecureRandom_js_1 = require("../../utils/SecureRandom.js");
|
|
15
|
+
const index_js_1 = require("../../types/index.js");
|
|
15
16
|
class FleetInitHandler extends base_handler_js_1.BaseHandler {
|
|
16
17
|
constructor(registry, hookExecutor) {
|
|
17
18
|
super();
|
|
18
19
|
this.activeFleets = new Map();
|
|
20
|
+
this.spawnHandler = null;
|
|
19
21
|
this.registry = registry;
|
|
20
22
|
this.hookExecutor = hookExecutor;
|
|
21
23
|
}
|
|
24
|
+
/**
|
|
25
|
+
* Set the spawn handler for pool warmup integration
|
|
26
|
+
* This allows fleet init to trigger pool warmup during initialization
|
|
27
|
+
*/
|
|
28
|
+
setSpawnHandler(spawnHandler) {
|
|
29
|
+
this.spawnHandler = spawnHandler;
|
|
30
|
+
}
|
|
22
31
|
async handle(args) {
|
|
23
32
|
const requestId = this.generateRequestId();
|
|
24
33
|
this.log('info', 'Initializing QE fleet', { requestId, config: args.config });
|
|
@@ -31,7 +40,8 @@ class FleetInitHandler extends base_handler_js_1.BaseHandler {
|
|
|
31
40
|
// Validate required parameters
|
|
32
41
|
this.validateRequired(args, ['config']);
|
|
33
42
|
this.validateFleetConfig(args.config);
|
|
34
|
-
const
|
|
43
|
+
const enablePoolWarmup = args.enablePoolWarmup !== false;
|
|
44
|
+
const { result: fleetInstance, executionTime } = await this.measureExecutionTime(() => this.initializeFleet(args.config, args.projectContext, enablePoolWarmup, args.warmupTypes));
|
|
35
45
|
// Execute post-task hook
|
|
36
46
|
await this.hookExecutor.executePostTask({
|
|
37
47
|
taskId: fleetInstance.id,
|
|
@@ -39,13 +49,21 @@ class FleetInitHandler extends base_handler_js_1.BaseHandler {
|
|
|
39
49
|
fleetId: fleetInstance.id,
|
|
40
50
|
topology: fleetInstance.topology,
|
|
41
51
|
maxAgents: fleetInstance.maxAgents,
|
|
42
|
-
status: fleetInstance.status
|
|
52
|
+
status: fleetInstance.status,
|
|
53
|
+
poolWarmup: fleetInstance.poolWarmup
|
|
43
54
|
}
|
|
44
55
|
});
|
|
45
56
|
this.log('info', `Fleet initialized successfully in ${executionTime.toFixed(2)}ms`, {
|
|
46
57
|
fleetId: fleetInstance.id,
|
|
47
58
|
topology: fleetInstance.topology,
|
|
48
|
-
maxAgents: fleetInstance.maxAgents
|
|
59
|
+
maxAgents: fleetInstance.maxAgents,
|
|
60
|
+
poolWarmup: fleetInstance.poolWarmup
|
|
61
|
+
? {
|
|
62
|
+
enabled: true,
|
|
63
|
+
warmupTimeMs: fleetInstance.poolWarmup.warmupTimeMs,
|
|
64
|
+
agentsWarmed: fleetInstance.poolWarmup.poolStats?.totalAgents,
|
|
65
|
+
}
|
|
66
|
+
: { enabled: false }
|
|
49
67
|
});
|
|
50
68
|
return this.createSuccessResponse(fleetInstance, requestId);
|
|
51
69
|
}
|
|
@@ -63,7 +81,7 @@ class FleetInitHandler extends base_handler_js_1.BaseHandler {
|
|
|
63
81
|
throw new Error('maxAgents must be between 5 and 50');
|
|
64
82
|
}
|
|
65
83
|
}
|
|
66
|
-
async initializeFleet(config, projectContext) {
|
|
84
|
+
async initializeFleet(config, projectContext, enablePoolWarmup = true, warmupTypes) {
|
|
67
85
|
const fleetId = `fleet-${Date.now()}-${SecureRandom_js_1.SecureRandom.generateId(5)}`;
|
|
68
86
|
// Create coordination channels based on topology
|
|
69
87
|
const coordinationChannels = this.createCoordinationChannels(config.topology, fleetId);
|
|
@@ -81,6 +99,34 @@ class FleetInitHandler extends base_handler_js_1.BaseHandler {
|
|
|
81
99
|
// The registry is already initialized and ready to spawn agents
|
|
82
100
|
// Simulate Claude Flow integration
|
|
83
101
|
await this.integrateWithClaudeFlow(fleetInstance, projectContext);
|
|
102
|
+
// Pool warmup during fleet initialization (Phase 3 D1)
|
|
103
|
+
if (enablePoolWarmup && this.spawnHandler) {
|
|
104
|
+
const typesToWarm = warmupTypes || FleetInitHandler.DEFAULT_WARMUP_TYPES;
|
|
105
|
+
this.log('info', 'Warming up agent pool during fleet init', {
|
|
106
|
+
fleetId,
|
|
107
|
+
types: typesToWarm,
|
|
108
|
+
});
|
|
109
|
+
const warmupStart = Date.now();
|
|
110
|
+
await this.spawnHandler.warmupPool(typesToWarm);
|
|
111
|
+
const warmupTime = Date.now() - warmupStart;
|
|
112
|
+
const poolStats = this.spawnHandler.getPoolStats();
|
|
113
|
+
fleetInstance.poolWarmup = {
|
|
114
|
+
enabled: true,
|
|
115
|
+
warmedTypes: typesToWarm,
|
|
116
|
+
warmupTimeMs: warmupTime,
|
|
117
|
+
poolStats: poolStats
|
|
118
|
+
? {
|
|
119
|
+
totalAgents: poolStats.totalAgents,
|
|
120
|
+
availableAgents: poolStats.availableAgents,
|
|
121
|
+
}
|
|
122
|
+
: undefined,
|
|
123
|
+
};
|
|
124
|
+
this.log('info', 'Pool warmup completed', {
|
|
125
|
+
fleetId,
|
|
126
|
+
warmupTimeMs: warmupTime,
|
|
127
|
+
poolStats: fleetInstance.poolWarmup.poolStats,
|
|
128
|
+
});
|
|
129
|
+
}
|
|
84
130
|
// Store fleet instance
|
|
85
131
|
this.activeFleets.set(fleetId, fleetInstance);
|
|
86
132
|
// Update current agents from registry
|
|
@@ -147,4 +193,10 @@ class FleetInitHandler extends base_handler_js_1.BaseHandler {
|
|
|
147
193
|
}
|
|
148
194
|
}
|
|
149
195
|
exports.FleetInitHandler = FleetInitHandler;
|
|
196
|
+
/** Default types to warm up during fleet initialization */
|
|
197
|
+
FleetInitHandler.DEFAULT_WARMUP_TYPES = [
|
|
198
|
+
index_js_1.QEAgentType.TEST_GENERATOR,
|
|
199
|
+
index_js_1.QEAgentType.COVERAGE_ANALYZER,
|
|
200
|
+
index_js_1.QEAgentType.QUALITY_GATE,
|
|
201
|
+
];
|
|
150
202
|
//# sourceMappingURL=fleet-init.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fleet-init.js","sourceRoot":"","sources":["../../../src/mcp/handlers/fleet-init.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,uDAAiE;AAIjE,iEAA2D;
|
|
1
|
+
{"version":3,"file":"fleet-init.js","sourceRoot":"","sources":["../../../src/mcp/handlers/fleet-init.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
export declare const SERVER_INSTRUCTIONS = "\n# Agentic QE Fleet - MCP Tool Guide\n\n## Overview\nAgentic QE provides 96 specialized quality engineering tools organized into a hierarchical system for efficient context usage.\n\n## Quick Start\n1. **Discover available tools:** Use `tools_discover` to see all domains\n2. **Load domain tools:** Use `tools_load_domain` to load specialized tools\n3. **Auto-loading:** Domain tools auto-load when relevant keywords are detected\n\n---\n\n## Core Tools (Always Available - 14 tools)\n\n### Fleet Management\n- `fleet_init` - Initialize QE fleet with topology\n- `agent_spawn` - Spawn specialized QE agent\n- `fleet_status` - Get fleet and agent status\n\n### Testing\n- `test_generate_enhanced` - AI test generation with pattern recognition\n- `test_execute_parallel` - Parallel test execution with retry\n- `test_report_comprehensive` - Multi-format test reports\n\n### Memory & Coordination\n- `memory_store` - Store data with TTL & namespacing\n- `memory_retrieve` - Retrieve stored data\n- `memory_query` - Pattern-based memory search\n\n### Quality & Orchestration\n- `quality_analyze` - Analyze quality metrics\n- `task_orchestrate` - Orchestrate tasks across agents\n- `task_status` - Check task progress\n\n### Discovery\n- `tools_discover` - List available tool domains\n- `tools_load_domain` - Load tools for a domain\n\n---\n\n## Domain Tools (Load as Needed)\n\n| Domain | Keywords | Tools | Use Case |\n|--------|----------|-------|----------|\n| **Security** | security, vulnerability, audit, owasp | 4 tools | Security scanning, vulnerability detection |\n| **Performance** | benchmark, bottleneck, profiling | 4 tools | Performance testing, bottleneck analysis |\n| **Coverage** | coverage, gap, uncovered | 5 tools | Coverage analysis, gap detection |\n| **Quality** | quality gate, deploy, release | 6 tools | Quality gates, deployment readiness |\n| **Flaky** | flaky, unstable, retry | 3 tools | Flaky test detection and stabilization |\n| **Visual** | screenshot, accessibility, wcag | 3 tools | Visual regression, accessibility testing |\n| **Requirements** | bdd, gherkin, acceptance | 2 tools | Requirements validation, BDD generation |\n\n### Loading Domain Tools\n```\n# Explicit load\ntools_load_domain({ domain: 'security' })\n\n# Auto-load: Just mention keywords in your request\n\"I need to run a security scan\" \u2192 Security tools auto-load\n```\n\n---\n\n## Specialized Tools (Expert Use)\n\n### Learning Domain (4 tools)\nFor persistent learning and pattern storage across sessions.\nLoad with: `tools_load_domain({ domain: 'learning' })`\n\n### Advanced Domain (7 tools)\nFor mutation testing, API contract validation, production incident replay.\nLoad with: `tools_load_domain({ domain: 'advanced' })`\n\n---\n\n## Best Practices\n\n1. **Start with core tools** - They handle 80% of use cases\n2. **Let auto-load work** - Mention keywords naturally\n3. **Use tools_discover** - When unsure what's available\n4. **Batch operations** - Use parallel execution for speed\n5. **Check fleet_status** - Monitor agent health\n\n---\n\n## Common Workflows\n\n### Test Generation & Execution\n1. `test_generate_enhanced` - Generate tests\n2. `test_execute_parallel` - Run tests\n3. `test_report_comprehensive` - Generate report\n\n### Quality Gate Check\n1. Load quality domain if not auto-loaded\n2. `quality_analyze` - Analyze metrics\n3. `qe_qualitygate_evaluate` - Make go/no-go decision\n\n### Security Audit\n1. `tools_load_domain({ domain: 'security' })`\n2. `qe_security_scan_comprehensive` - Full scan\n3. `qe_security_detect_vulnerabilities` - Detailed analysis\n\n---\n\n## Tool Naming Convention\nAll tools follow: `mcp__agentic_qe__<tool_name>`\n\nExample: `mcp__agentic_qe__test_generate_enhanced`\n";
|
|
8
8
|
export declare const SERVER_NAME = "agentic-qe";
|
|
9
|
-
export declare const SERVER_VERSION = "2.6.
|
|
9
|
+
export declare const SERVER_VERSION = "2.6.1";
|
|
10
10
|
/**
|
|
11
11
|
* Get formatted server info for MCP initialization
|
|
12
12
|
*/
|
|
@@ -119,7 +119,7 @@ All tools follow: \`mcp__agentic_qe__<tool_name>\`
|
|
|
119
119
|
Example: \`mcp__agentic_qe__test_generate_enhanced\`
|
|
120
120
|
`;
|
|
121
121
|
exports.SERVER_NAME = 'agentic-qe';
|
|
122
|
-
exports.SERVER_VERSION = '2.6.
|
|
122
|
+
exports.SERVER_VERSION = '2.6.1';
|
|
123
123
|
/**
|
|
124
124
|
* Get formatted server info for MCP initialization
|
|
125
125
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HNSWPatternStore.d.ts","sourceRoot":"","sources":["../../src/memory/HNSWPatternStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"HNSWPatternStore.d.ts","sourceRoot":"","sources":["../../src/memory/HNSWPatternStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HNSWPatternStore.js","sourceRoot":"","sources":["../../src/memory/HNSWPatternStore.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"HNSWPatternStore.js","sourceRoot":"","sources":["../../src/memory/HNSWPatternStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Plugin Class
|
|
3
|
+
* Phase 3 B2: Extensible Test Framework Adapters
|
|
4
|
+
*
|
|
5
|
+
* Provides a base implementation for plugins with common functionality.
|
|
6
|
+
* Extend this class to create custom plugins more easily.
|
|
7
|
+
*/
|
|
8
|
+
import { Plugin, PluginMetadata, PluginContext, PluginCategory } from './types';
|
|
9
|
+
/**
|
|
10
|
+
* Base plugin implementation with common functionality
|
|
11
|
+
*/
|
|
12
|
+
export declare abstract class BasePlugin implements Plugin {
|
|
13
|
+
protected context?: PluginContext;
|
|
14
|
+
private _healthy;
|
|
15
|
+
/**
|
|
16
|
+
* Plugin metadata - must be provided by subclass
|
|
17
|
+
*/
|
|
18
|
+
abstract readonly metadata: PluginMetadata;
|
|
19
|
+
/**
|
|
20
|
+
* Called when plugin is loaded
|
|
21
|
+
*/
|
|
22
|
+
onLoad(context: PluginContext): void;
|
|
23
|
+
/**
|
|
24
|
+
* Called when plugin is activated
|
|
25
|
+
* Override in subclass for custom activation logic
|
|
26
|
+
*/
|
|
27
|
+
onActivate(context: PluginContext): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* Called when plugin is deactivated
|
|
30
|
+
* Override in subclass for custom deactivation logic
|
|
31
|
+
*/
|
|
32
|
+
onDeactivate(_context: PluginContext): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Called when plugin is unloaded
|
|
35
|
+
*/
|
|
36
|
+
onUnload(_context: PluginContext): void;
|
|
37
|
+
/**
|
|
38
|
+
* Called when configuration changes
|
|
39
|
+
*/
|
|
40
|
+
onConfigChange(_context: PluginContext, changes: Record<string, unknown>): void;
|
|
41
|
+
/**
|
|
42
|
+
* Health check - returns true if plugin is healthy
|
|
43
|
+
*/
|
|
44
|
+
healthCheck(): Promise<boolean>;
|
|
45
|
+
/**
|
|
46
|
+
* Mark plugin as unhealthy
|
|
47
|
+
*/
|
|
48
|
+
protected setUnhealthy(): void;
|
|
49
|
+
/**
|
|
50
|
+
* Mark plugin as healthy
|
|
51
|
+
*/
|
|
52
|
+
protected setHealthy(): void;
|
|
53
|
+
/**
|
|
54
|
+
* Log a message using the plugin's logger
|
|
55
|
+
*/
|
|
56
|
+
protected log(level: 'debug' | 'info' | 'warn' | 'error', message: string, ...args: unknown[]): void;
|
|
57
|
+
/**
|
|
58
|
+
* Get configuration value
|
|
59
|
+
*/
|
|
60
|
+
protected getConfig<T>(key: string, defaultValue?: T): T | undefined;
|
|
61
|
+
/**
|
|
62
|
+
* Set configuration value
|
|
63
|
+
*/
|
|
64
|
+
protected setConfig<T>(key: string, value: T): void;
|
|
65
|
+
/**
|
|
66
|
+
* Emit an event
|
|
67
|
+
*/
|
|
68
|
+
protected emit(event: string, data?: unknown): void;
|
|
69
|
+
/**
|
|
70
|
+
* Listen for an event
|
|
71
|
+
*/
|
|
72
|
+
protected on(event: string, handler: (data: unknown) => void): () => void;
|
|
73
|
+
/**
|
|
74
|
+
* Get persistent storage value
|
|
75
|
+
*/
|
|
76
|
+
protected getStoredValue<T>(key: string): Promise<T | undefined>;
|
|
77
|
+
/**
|
|
78
|
+
* Set persistent storage value
|
|
79
|
+
*/
|
|
80
|
+
protected setStoredValue<T>(key: string, value: T): Promise<void>;
|
|
81
|
+
/**
|
|
82
|
+
* Get another plugin
|
|
83
|
+
*/
|
|
84
|
+
protected getPlugin<T extends Plugin>(id: string): T | undefined;
|
|
85
|
+
/**
|
|
86
|
+
* Register a service for other plugins to use
|
|
87
|
+
*/
|
|
88
|
+
protected registerService<T>(name: string, service: T): void;
|
|
89
|
+
/**
|
|
90
|
+
* Get a registered service
|
|
91
|
+
*/
|
|
92
|
+
protected getService<T>(name: string): T | undefined;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Helper to create plugin metadata
|
|
96
|
+
*/
|
|
97
|
+
export declare function createPluginMetadata(options: {
|
|
98
|
+
id: string;
|
|
99
|
+
name: string;
|
|
100
|
+
version: string;
|
|
101
|
+
description: string;
|
|
102
|
+
author: string;
|
|
103
|
+
category: PluginCategory;
|
|
104
|
+
minAgenticQEVersion?: string;
|
|
105
|
+
dependencies?: {
|
|
106
|
+
pluginId: string;
|
|
107
|
+
versionRange: string;
|
|
108
|
+
optional?: boolean;
|
|
109
|
+
}[];
|
|
110
|
+
}): PluginMetadata;
|
|
111
|
+
//# sourceMappingURL=BasePlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BasePlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/BasePlugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,MAAM,EACN,cAAc,EACd,aAAa,EACb,cAAc,EACf,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,8BAAsB,UAAW,YAAW,MAAM;IAChD,SAAS,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IAClC,OAAO,CAAC,QAAQ,CAAQ;IAExB;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAE3C;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAKpC;;;OAGG;IACG,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvD;;;OAGG;IACG,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;IAKvC;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI/E;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC;;OAEG;IACH,SAAS,CAAC,YAAY,IAAI,IAAI;IAI9B;;OAEG;IACH,SAAS,CAAC,UAAU,IAAI,IAAI;IAI5B;;OAEG;IACH,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAQpG;;OAEG;IACH,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAIpE;;OAEG;IACH,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAInD;;OAEG;IACH,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI;IAInD;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI;IAIzE;;OAEG;cACa,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAItE;;OAEG;cACa,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE;;OAEG;IACH,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAIhE;;OAEG;IACH,SAAS,CAAC,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI;IAI5D;;OAEG;IACH,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;CAGrD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE;IACP,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,cAAc,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,CAAC;CACjF,GACA,cAAc,CAWhB"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Base Plugin Class
|
|
4
|
+
* Phase 3 B2: Extensible Test Framework Adapters
|
|
5
|
+
*
|
|
6
|
+
* Provides a base implementation for plugins with common functionality.
|
|
7
|
+
* Extend this class to create custom plugins more easily.
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.BasePlugin = void 0;
|
|
11
|
+
exports.createPluginMetadata = createPluginMetadata;
|
|
12
|
+
/**
|
|
13
|
+
* Base plugin implementation with common functionality
|
|
14
|
+
*/
|
|
15
|
+
class BasePlugin {
|
|
16
|
+
constructor() {
|
|
17
|
+
this._healthy = true;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Called when plugin is loaded
|
|
21
|
+
*/
|
|
22
|
+
onLoad(context) {
|
|
23
|
+
this.context = context;
|
|
24
|
+
this.log('debug', 'Plugin loaded');
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Called when plugin is activated
|
|
28
|
+
* Override in subclass for custom activation logic
|
|
29
|
+
*/
|
|
30
|
+
async onActivate(context) {
|
|
31
|
+
this.context = context;
|
|
32
|
+
this.log('info', 'Plugin activated');
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Called when plugin is deactivated
|
|
36
|
+
* Override in subclass for custom deactivation logic
|
|
37
|
+
*/
|
|
38
|
+
async onDeactivate(_context) {
|
|
39
|
+
this.log('info', 'Plugin deactivated');
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Called when plugin is unloaded
|
|
43
|
+
*/
|
|
44
|
+
onUnload(_context) {
|
|
45
|
+
this.context = undefined;
|
|
46
|
+
this.log('debug', 'Plugin unloaded');
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Called when configuration changes
|
|
50
|
+
*/
|
|
51
|
+
onConfigChange(_context, changes) {
|
|
52
|
+
this.log('debug', 'Config changed', changes);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Health check - returns true if plugin is healthy
|
|
56
|
+
*/
|
|
57
|
+
async healthCheck() {
|
|
58
|
+
return this._healthy;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Mark plugin as unhealthy
|
|
62
|
+
*/
|
|
63
|
+
setUnhealthy() {
|
|
64
|
+
this._healthy = false;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Mark plugin as healthy
|
|
68
|
+
*/
|
|
69
|
+
setHealthy() {
|
|
70
|
+
this._healthy = true;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Log a message using the plugin's logger
|
|
74
|
+
*/
|
|
75
|
+
log(level, message, ...args) {
|
|
76
|
+
if (this.context?.logger) {
|
|
77
|
+
this.context.logger[level](message, ...args);
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
console[level](`[${this.metadata.id}] ${message}`, ...args);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Get configuration value
|
|
85
|
+
*/
|
|
86
|
+
getConfig(key, defaultValue) {
|
|
87
|
+
return this.context?.config.get(key, defaultValue);
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Set configuration value
|
|
91
|
+
*/
|
|
92
|
+
setConfig(key, value) {
|
|
93
|
+
this.context?.config.set(key, value);
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Emit an event
|
|
97
|
+
*/
|
|
98
|
+
emit(event, data) {
|
|
99
|
+
this.context?.events.emit(event, data);
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Listen for an event
|
|
103
|
+
*/
|
|
104
|
+
on(event, handler) {
|
|
105
|
+
return this.context?.events.on(event, handler) ?? (() => { });
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Get persistent storage value
|
|
109
|
+
*/
|
|
110
|
+
async getStoredValue(key) {
|
|
111
|
+
return this.context?.storage.get(key);
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Set persistent storage value
|
|
115
|
+
*/
|
|
116
|
+
async setStoredValue(key, value) {
|
|
117
|
+
await this.context?.storage.set(key, value);
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Get another plugin
|
|
121
|
+
*/
|
|
122
|
+
getPlugin(id) {
|
|
123
|
+
return this.context?.pluginManager.getPlugin(id);
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Register a service for other plugins to use
|
|
127
|
+
*/
|
|
128
|
+
registerService(name, service) {
|
|
129
|
+
this.context?.pluginManager.registerService(name, service);
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Get a registered service
|
|
133
|
+
*/
|
|
134
|
+
getService(name) {
|
|
135
|
+
return this.context?.pluginManager.getService(name);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
exports.BasePlugin = BasePlugin;
|
|
139
|
+
/**
|
|
140
|
+
* Helper to create plugin metadata
|
|
141
|
+
*/
|
|
142
|
+
function createPluginMetadata(options) {
|
|
143
|
+
return {
|
|
144
|
+
id: options.id,
|
|
145
|
+
name: options.name,
|
|
146
|
+
version: options.version,
|
|
147
|
+
description: options.description,
|
|
148
|
+
author: options.author,
|
|
149
|
+
category: options.category,
|
|
150
|
+
minAgenticQEVersion: options.minAgenticQEVersion || '2.0.0',
|
|
151
|
+
dependencies: options.dependencies,
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=BasePlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BasePlugin.js","sourceRoot":"","sources":["../../src/plugins/BasePlugin.ts"],"names":[],"mappings":"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"}
|