snow-flow 3.0.9 → 3.0.13
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/claude-flow.bat +0 -0
- package/claude-flow.ps1 +0 -0
- package/dist/mcp/intelligent-reporting-mcp.d.ts +7 -0
- package/dist/mcp/intelligent-reporting-mcp.js +379 -0
- package/dist/mcp/servicenow-automation-mcp.js +0 -0
- package/dist/mcp/servicenow-deployment-mcp.js +0 -0
- package/dist/mcp/servicenow-integration-mcp.js +0 -0
- package/dist/mcp/servicenow-mcp-server.js +0 -0
- package/dist/mcp/servicenow-operations-mcp.js +0 -0
- package/dist/mcp/servicenow-platform-development-mcp.js +0 -0
- package/dist/mcp/servicenow-progressive-indexer.js +0 -0
- package/dist/mcp/servicenow-reporting-analytics-mcp.js +280 -29
- package/dist/mcp/servicenow-security-compliance-mcp.js +0 -0
- package/dist/mcp/servicenow-update-set-mcp.js +0 -0
- package/dist/mcp/start-all-mcp-servers.js +0 -0
- package/dist/mcp/start-servicenow-mcp.js +0 -0
- package/dist/services/widget-deployment-service.d.ts +2 -1
- package/dist/services/widget-deployment-service.js +17 -16
- package/dist/utils/anti-mock-data-validator.d.ts +66 -0
- package/dist/utils/anti-mock-data-validator.js +316 -0
- package/dist/utils/servicenow-eventual-consistency.d.ts +120 -0
- package/dist/utils/servicenow-eventual-consistency.js +220 -0
- package/memory/agents/README.md +1 -1
- package/memory/claude-flow-data.json +1 -1
- package/memory/sessions/README.md +1 -1
- package/package.json +4 -3
- package/.mcp.json +0 -22
- package/claude-flow.config.json +0 -20
- package/dist/agents/app-creator.agent.d.ts +0 -55
- package/dist/agents/app-creator.agent.js +0 -1292
- package/dist/agents/base/base-snow-agent.d.ts +0 -75
- package/dist/agents/base/base-snow-agent.js +0 -169
- package/dist/agents/base-snow-agent.d.ts +0 -63
- package/dist/agents/base-snow-agent.js +0 -296
- package/dist/agents/coordinator.d.ts +0 -200
- package/dist/agents/coordinator.js +0 -777
- package/dist/agents/flow-builder-agent.d.ts +0 -18
- package/dist/agents/flow-builder-agent.js +0 -197
- package/dist/agents/queen-403-handler.d.ts +0 -47
- package/dist/agents/queen-403-handler.js +0 -175
- package/dist/agents/queen-agent-example.d.ts +0 -23
- package/dist/agents/queen-agent-example.js +0 -240
- package/dist/agents/queen-agent.test.d.ts +0 -6
- package/dist/agents/script-generator.agent.d.ts +0 -32
- package/dist/agents/script-generator.agent.js +0 -772
- package/dist/agents/script-writer-agent.d.ts +0 -22
- package/dist/agents/script-writer-agent.js +0 -695
- package/dist/agents/security-agent.d.ts +0 -23
- package/dist/agents/security-agent.js +0 -619
- package/dist/agents/specialists/automation-specialist.agent.d.ts +0 -44
- package/dist/agents/specialists/automation-specialist.agent.js +0 -204
- package/dist/agents/specialists/data-specialist.agent.d.ts +0 -165
- package/dist/agents/specialists/data-specialist.agent.js +0 -484
- package/dist/agents/specialists/integration-specialist.agent.d.ts +0 -227
- package/dist/agents/specialists/integration-specialist.agent.js +0 -725
- package/dist/agents/specialists/reporting-specialist.agent.d.ts +0 -54
- package/dist/agents/specialists/reporting-specialist.agent.js +0 -193
- package/dist/agents/specialists/security-specialist.agent.d.ts +0 -85
- package/dist/agents/specialists/security-specialist.agent.js +0 -309
- package/dist/agents/teams/adaptive/adaptive-coordinator.agent.d.ts +0 -111
- package/dist/agents/teams/adaptive/adaptive-coordinator.agent.js +0 -383
- package/dist/agents/teams/base-team.d.ts +0 -72
- package/dist/agents/teams/base-team.js +0 -253
- package/dist/agents/teams/team-types.d.ts +0 -265
- package/dist/agents/teams/team-types.js +0 -3
- package/dist/agents/teams/widget/widget-architect.agent.d.ts +0 -61
- package/dist/agents/teams/widget/widget-architect.agent.js +0 -436
- package/dist/agents/teams/widget/widget-backend.agent.d.ts +0 -74
- package/dist/agents/teams/widget/widget-backend.agent.js +0 -1531
- package/dist/agents/teams/widget/widget-frontend.agent.d.ts +0 -67
- package/dist/agents/teams/widget/widget-frontend.agent.js +0 -1014
- package/dist/agents/teams/widget/widget-platform.agent.d.ts +0 -90
- package/dist/agents/teams/widget/widget-platform.agent.js +0 -1190
- package/dist/agents/teams/widget/widget-uiux.agent.d.ts +0 -107
- package/dist/agents/teams/widget/widget-uiux.agent.js +0 -1033
- package/dist/agents/test-agent.d.ts +0 -26
- package/dist/agents/test-agent.js +0 -734
- package/dist/agents/test-agents.d.ts +0 -7
- package/dist/agents/test-agents.js +0 -64
- package/dist/agents/ui-builder.agent.d.ts +0 -50
- package/dist/agents/ui-builder.agent.js +0 -1539
- package/dist/agents/widget-builder.agent.d.ts +0 -32
- package/dist/agents/widget-builder.agent.js +0 -439
- package/dist/agents/widget-creator-agent.d.ts +0 -18
- package/dist/agents/widget-creator-agent.js +0 -498
- package/dist/agents/workflow-designer.agent.d.ts +0 -31
- package/dist/agents/workflow-designer.agent.js +0 -583
- package/dist/api/error-handling.d.ts +0 -325
- package/dist/api/error-handling.js +0 -1488
- package/dist/api/flow-designer-api.d.ts +0 -167
- package/dist/api/flow-designer-api.js +0 -554
- package/dist/api/natural-language-mapper.d.ts +0 -124
- package/dist/api/natural-language-mapper.js +0 -501
- package/dist/api/performance-optimizer.d.ts +0 -240
- package/dist/api/performance-optimizer.js +0 -706
- package/dist/api/transaction-manager.d.ts +0 -189
- package/dist/api/transaction-manager.js +0 -576
- package/dist/assembly/team-assembler.d.ts +0 -140
- package/dist/assembly/team-assembler.js +0 -502
- package/dist/benchmark-performance.d.ts +0 -41
- package/dist/benchmark-performance.js +0 -230
- package/dist/cli/snow-flow-cli-integration.d.ts +0 -30
- package/dist/cli/snow-flow-cli-integration.js +0 -396
- package/dist/coordination/coordination-engine.d.ts +0 -41
- package/dist/coordination/coordination-engine.js +0 -324
- package/dist/coordination/coordination.test.d.ts +0 -6
- package/dist/coordination/example.d.ts +0 -31
- package/dist/coordination/example.js +0 -394
- package/dist/coordination/execution-patterns.d.ts +0 -43
- package/dist/coordination/execution-patterns.js +0 -507
- package/dist/coordination/factory.d.ts +0 -94
- package/dist/coordination/factory.js +0 -433
- package/dist/coordination/index.d.ts +0 -71
- package/dist/coordination/index.js +0 -135
- package/dist/coordination/progress-monitor.d.ts +0 -71
- package/dist/coordination/progress-monitor.js +0 -505
- package/dist/coordination/quality-gates.d.ts +0 -124
- package/dist/coordination/quality-gates.js +0 -577
- package/dist/coordination/shared-memory.d.ts +0 -39
- package/dist/coordination/shared-memory.js +0 -289
- package/dist/coordination/task-dependencies.d.ts +0 -50
- package/dist/coordination/task-dependencies.js +0 -407
- package/dist/coordination/team-coordinator.d.ts +0 -59
- package/dist/coordination/team-coordinator.js +0 -550
- package/dist/coordination/types.d.ts +0 -152
- package/dist/coordination/types.js +0 -3
- package/dist/mcp/mcp-wrapper.d.ts +0 -8
- package/dist/mcp/mcp-wrapper.js +0 -77
- package/dist/mcp/servicenow-flow-composer-enhanced.js +0 -396
- package/dist/mcp/servicenow-flow-composer-mcp.d.ts +0 -7
- package/dist/mcp/servicenow-flow-composer-mcp.js +0 -3103
- package/dist/mcp/servicenow-graph-memory-mcp.d.ts +0 -7
- package/dist/mcp/servicenow-intelligent-mcp.d.ts +0 -143
- package/dist/mcp/servicenow-intelligent-mcp.js +0 -4156
- package/dist/mcp/servicenow-xml-flow-mcp.d.ts +0 -53
- package/dist/mcp/servicenow-xml-flow-mcp.js +0 -1704
- package/dist/mcp/singleton-check.js +0 -31
- package/dist/mcp/test-simple-mcp.d.ts +0 -6
- package/dist/mcp/test-simple-mcp.js +0 -63
- package/dist/memory/hierarchical-memory-system.d.ts +0 -90
- package/dist/memory/hierarchical-memory-system.js +0 -400
- package/dist/memory/index.d.ts +0 -9
- package/dist/memory/index.js +0 -20
- package/dist/memory/mcp-integration-example.d.ts +0 -6
- package/dist/memory/mcp-integration-example.js +0 -281
- package/dist/memory/memory-client.d.ts +0 -199
- package/dist/memory/memory-client.js +0 -364
- package/dist/memory/memory-manager.d.ts +0 -29
- package/dist/memory/memory-manager.js +0 -280
- package/dist/memory/memory-operations.d.ts +0 -179
- package/dist/memory/memory-operations.js +0 -691
- package/dist/memory/memory-system.d.ts +0 -153
- package/dist/memory/memory-system.js +0 -651
- package/dist/memory/memory-test.d.ts +0 -6
- package/dist/memory/memory-test.js +0 -161
- package/dist/memory/snow-flow-memory-patterns.d.ts +0 -213
- package/dist/memory/snow-flow-memory-patterns.js +0 -200
- package/dist/memory/snow-memory.d.ts +0 -54
- package/dist/memory/snow-memory.js +0 -301
- package/dist/memory/swarm-memory.d.ts +0 -135
- package/dist/memory/swarm-memory.js +0 -378
- package/dist/optimization/flow-performance-optimizer.js +0 -723
- package/dist/orchestration/discovery/service-discovery.d.ts +0 -81
- package/dist/orchestration/discovery/service-discovery.js +0 -808
- package/dist/orchestration/distributed-orchestrator.d.ts +0 -131
- package/dist/orchestration/distributed-orchestrator.js +0 -712
- package/dist/orchestration/distribution/task-distribution-engine.d.ts +0 -53
- package/dist/orchestration/distribution/task-distribution-engine.js +0 -586
- package/dist/orchestration/flow-update-orchestrator.js +0 -648
- package/dist/orchestration/interfaces/distributed-orchestration.interface.d.ts +0 -606
- package/dist/orchestration/interfaces/distributed-orchestration.interface.js +0 -65
- package/dist/orchestration/protocols/mcpx-protocol.d.ts +0 -71
- package/dist/orchestration/protocols/mcpx-protocol.js +0 -668
- package/dist/orchestration/state/distributed-state-manager.d.ts +0 -89
- package/dist/orchestration/state/distributed-state-manager.js +0 -716
- package/dist/orchestrator/flow-composer.d.ts +0 -105
- package/dist/orchestrator/flow-composer.js +0 -404
- package/dist/orchestrator/flow-pattern-templates.d.ts +0 -260
- package/dist/orchestrator/flow-pattern-templates.js +0 -908
- package/dist/orchestrator/flow-subflow-decision-engine.d.ts +0 -202
- package/dist/orchestrator/flow-subflow-decision-engine.js +0 -769
- package/dist/orchestrator/flow-validation-engine.d.ts +0 -169
- package/dist/orchestrator/flow-validation-engine.js +0 -913
- package/dist/orchestrator/snow-orchestrator.d.ts +0 -49
- package/dist/orchestrator/snow-orchestrator.js +0 -235
- package/dist/orchestrator/subflow-creation-handler.d.ts +0 -230
- package/dist/orchestrator/subflow-creation-handler.js +0 -791
- package/dist/patterns/adaptive-patterns.d.ts +0 -140
- package/dist/patterns/adaptive-patterns.js +0 -549
- package/dist/queen/advanced-integration-test.d.ts +0 -48
- package/dist/queen/advanced-integration-test.js +0 -473
- package/dist/queen/integration-example.d.ts +0 -82
- package/dist/queen/integration-example.js +0 -219
- package/dist/queen/integration-test.d.ts +0 -72
- package/dist/queen/integration-test.js +0 -563
- package/dist/queen/mock-mcp-client.d.ts +0 -71
- package/dist/queen/mock-mcp-client.js +0 -317
- package/dist/queen/run-integration-tests.d.ts +0 -9
- package/dist/queen/run-integration-tests.js +0 -27
- package/dist/sparc/coordinators/adaptive-coordinator.d.ts +0 -54
- package/dist/sparc/coordinators/adaptive-coordinator.js +0 -367
- package/dist/sparc/coordinators/team-coordinator.d.ts +0 -66
- package/dist/sparc/coordinators/team-coordinator.js +0 -402
- package/dist/sparc/modes/team-modes.d.ts +0 -33
- package/dist/sparc/modes/team-modes.js +0 -399
- package/dist/sparc/teams/application-team.d.ts +0 -73
- package/dist/sparc/teams/application-team.js +0 -463
- package/dist/sparc/teams/flow-team.d.ts +0 -67
- package/dist/sparc/teams/flow-team.js +0 -373
- package/dist/sparc/teams/widget-team.d.ts +0 -61
- package/dist/sparc/teams/widget-team.js +0 -280
- package/dist/specialists/app-specialists.d.ts +0 -93
- package/dist/specialists/app-specialists.js +0 -1639
- package/dist/specialists/base-specialist.d.ts +0 -19
- package/dist/specialists/base-specialist.js +0 -54
- package/dist/specialists/flow-specialists.d.ts +0 -113
- package/dist/specialists/flow-specialists.js +0 -1787
- package/dist/specialists/individual-specialists.d.ts +0 -67
- package/dist/specialists/individual-specialists.js +0 -632
- package/dist/specialists/widget-specialists.d.ts +0 -70
- package/dist/specialists/widget-specialists.js +0 -1264
- package/dist/src/utils/agent-detector.js +0 -655
- package/dist/teams/adaptive-team.d.ts +0 -81
- package/dist/teams/adaptive-team.js +0 -1153
- package/dist/teams/application-team.d.ts +0 -30
- package/dist/teams/application-team.js +0 -547
- package/dist/teams/base-team.d.ts +0 -55
- package/dist/teams/base-team.js +0 -243
- package/dist/teams/flow-team.d.ts +0 -28
- package/dist/teams/flow-team.js +0 -525
- package/dist/teams/widget-team.d.ts +0 -26
- package/dist/teams/widget-team.js +0 -459
- package/dist/templates/flow-template-system.js +0 -625
- package/dist/test-fetch-incidents.d.ts +0 -2
- package/dist/test-fetch-incidents.js +0 -84
- package/dist/test-incident-access.d.ts +0 -2
- package/dist/test-incident-access.js +0 -72
- package/dist/test-iphone-flow.js +0 -189
- package/dist/test-limit-problem.d.ts +0 -2
- package/dist/test-limit-problem.js +0 -60
- package/dist/test-ml-batch-fix.d.ts +0 -2
- package/dist/test-ml-batch-fix.js +0 -104
- package/dist/test-ml-batch.d.ts +0 -2
- package/dist/test-ml-batch.js +0 -87
- package/dist/test-ml-query.d.ts +0 -2
- package/dist/test-ml-query.js +0 -100
- package/dist/test-ml-training-fix.d.ts +0 -12
- package/dist/test-ml-training-fix.js +0 -113
- package/dist/test-ml-training.d.ts +0 -2
- package/dist/test-ml-training.js +0 -32
- package/dist/test-operations-query.d.ts +0 -2
- package/dist/test-operations-query.js +0 -84
- package/dist/test-performance-query.d.ts +0 -2
- package/dist/test-performance-query.js +0 -52
- package/dist/test-singleton-protection.d.ts +0 -8
- package/dist/test-singleton-protection.js +0 -110
- package/dist/test-smart-limits.d.ts +0 -13
- package/dist/test-smart-limits.js +0 -100
- package/dist/test-snow-query-incidents.d.ts +0 -2
- package/dist/test-snow-query-incidents.js +0 -66
- package/dist/test-universal-query.d.ts +0 -2
- package/dist/test-universal-query.js +0 -106
- package/dist/testing/flow-testing-automation.js +0 -641
- package/dist/utils/complete-flow-xml-generator.js +0 -1285
- package/dist/utils/file-storage-fallback.d.ts +0 -62
- package/dist/utils/file-storage-fallback.js +0 -289
- package/dist/utils/flow-api-discovery.d.ts +0 -151
- package/dist/utils/flow-api-discovery.js +0 -439
- package/dist/utils/flow-examples.js +0 -720
- package/dist/utils/flow-structure-builder.js +0 -677
- package/dist/utils/flow-xml-generator.d.ts +0 -41
- package/dist/utils/flow-xml-generator.js +0 -258
- package/dist/utils/improved-flow-xml-generator.js +0 -820
- package/dist/utils/mcp-process-manager.backup.d.ts +0 -58
- package/dist/utils/mcp-process-manager.backup.js +0 -220
- package/dist/utils/mcp-singleton-enforcer.d.ts +0 -36
- package/dist/utils/mcp-singleton-enforcer.js +0 -201
- package/dist/utils/mcp-timeout-fix.d.ts +0 -53
- package/dist/utils/mcp-timeout-fix.js +0 -221
- package/dist/utils/migrate-claude-flow.d.ts +0 -22
- package/dist/utils/migrate-claude-flow.js +0 -120
- package/dist/utils/scope-utils.d.ts +0 -72
- package/dist/utils/scope-utils.js +0 -386
- package/dist/utils/snow-oauth-old.d.ts +0 -65
- package/dist/utils/snow-oauth-old.js +0 -345
- package/dist/utils/xml-first-flow-generator.js +0 -513
- package/memory/servicenow_artifacts/000d9224c895221055906c7518aa2d3d.json +0 -30
- package/memory/servicenow_artifacts/0196b66173303010e46b4a2214f6a7a2.json +0 -36
- package/memory/servicenow_artifacts/125e5d1d837e2a102a7ea130ceaad397.json +0 -30
- package/memory/servicenow_artifacts/7637c1f2b7112210a5e5911cde11a972.json +0 -30
- package/memory/servicenow_artifacts/default_documentation_tables_1754056582292.json +0 -55
- package/memory/servicenow_artifacts/default_documentation_tables_1754057477189.json +0 -55
- package/memory/update-set-sessions/01f82af583faea102a7ea130ceaad3d4.json +0 -9
- package/memory/update-set-sessions/27718fb983faea102a7ea130ceaad34b.json +0 -9
- package/memory/update-set-sessions/412e9bf6833e22502a7ea130ceaad30a.json +0 -8
- package/memory/update-set-sessions/66fc5a79837aea102a7ea130ceaad3ab.json +0 -9
- package/memory/update-set-sessions/71a30ff5837eea102a7ea130ceaad37f.json +0 -9
- package/memory/update-set-sessions/74fba27983faea102a7ea130ceaad3bd.json +0 -9
- package/memory/update-set-sessions/a0b147b5837eea102a7ea130ceaad344.json +0 -58
- package/memory/update-set-sessions/b13f5eb983baea102a7ea130ceaad33e.json +0 -9
- package/reports/swarm-auto-centralized-1752649029776.json +0 -13
- package/src/memory/README.md +0 -240
|
@@ -1,436 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.WidgetArchitectAgent = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Widget Architect Agent - Coordinates widget development team
|
|
6
|
-
* Analyzes requirements and orchestrates specialized team members
|
|
7
|
-
*/
|
|
8
|
-
const base_team_1 = require("../base-team");
|
|
9
|
-
class WidgetArchitectAgent extends base_team_1.BaseSnowAgent {
|
|
10
|
-
constructor(config) {
|
|
11
|
-
const capabilities = [
|
|
12
|
-
{
|
|
13
|
-
name: 'requirement_analysis',
|
|
14
|
-
description: 'Analyze and break down widget requirements',
|
|
15
|
-
proficiency: 0.95,
|
|
16
|
-
tools: ['analysis', 'planning', 'coordination']
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
name: 'team_coordination',
|
|
20
|
-
description: 'Coordinate specialized team members',
|
|
21
|
-
proficiency: 0.9,
|
|
22
|
-
tools: ['coordination', 'communication', 'project_management']
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
name: 'widget_architecture',
|
|
26
|
-
description: 'Design widget architecture and structure',
|
|
27
|
-
proficiency: 0.85,
|
|
28
|
-
tools: ['architecture', 'design_patterns', 'servicenow_patterns']
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
name: 'integration_planning',
|
|
32
|
-
description: 'Plan widget integrations and dependencies',
|
|
33
|
-
proficiency: 0.8,
|
|
34
|
-
tools: ['integration', 'api_design', 'dependency_management']
|
|
35
|
-
}
|
|
36
|
-
];
|
|
37
|
-
const specialization = {
|
|
38
|
-
primary: ['widget_architecture', 'team_coordination', 'requirement_analysis'],
|
|
39
|
-
secondary: ['ui_design', 'performance_planning', 'testing_strategy'],
|
|
40
|
-
tools: ['ServiceNow Flow Composer', 'ServiceNow Deployment', 'Team Coordination'],
|
|
41
|
-
experience: 0.9
|
|
42
|
-
};
|
|
43
|
-
super('widget-architect-001', 'Widget Architect', 'architect', capabilities, specialization, config);
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Set team members that this architect will coordinate
|
|
47
|
-
*/
|
|
48
|
-
setTeamMembers(frontendAgent, backendAgent, uiuxAgent, platformAgent) {
|
|
49
|
-
this.frontendAgent = frontendAgent;
|
|
50
|
-
this.backendAgent = backendAgent;
|
|
51
|
-
this.uiuxAgent = uiuxAgent;
|
|
52
|
-
this.platformAgent = platformAgent;
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Analyze widget requirements and create technical specification
|
|
56
|
-
*/
|
|
57
|
-
async analyzeRequirements(requirements) {
|
|
58
|
-
try {
|
|
59
|
-
this.setStatus('busy');
|
|
60
|
-
// Analyze complexity based on requirements
|
|
61
|
-
const complexity = this.assessComplexity(requirements);
|
|
62
|
-
// Estimate time based on complexity and features
|
|
63
|
-
const estimatedTime = this.estimateTime(requirements, complexity);
|
|
64
|
-
// Identify dependencies
|
|
65
|
-
const dependencies = this.identifyDependencies(requirements);
|
|
66
|
-
const specification = {
|
|
67
|
-
id: `widget-spec-${Date.now()}`,
|
|
68
|
-
requirements,
|
|
69
|
-
complexity,
|
|
70
|
-
estimatedTime,
|
|
71
|
-
dependencies
|
|
72
|
-
};
|
|
73
|
-
console.log(`Widget Architect: Analyzed requirements - Complexity: ${complexity}, Time: ${estimatedTime}m`);
|
|
74
|
-
return specification;
|
|
75
|
-
}
|
|
76
|
-
catch (error) {
|
|
77
|
-
console.error('Widget Architect: Error analyzing requirements:', error);
|
|
78
|
-
throw error;
|
|
79
|
-
}
|
|
80
|
-
finally {
|
|
81
|
-
this.setStatus('available');
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Coordinate the entire widget development team
|
|
86
|
-
*/
|
|
87
|
-
async execute(specification) {
|
|
88
|
-
try {
|
|
89
|
-
this.setStatus('busy');
|
|
90
|
-
console.log('Widget Architect: Starting team coordination...');
|
|
91
|
-
if (!this.frontendAgent || !this.backendAgent || !this.uiuxAgent || !this.platformAgent) {
|
|
92
|
-
throw new Error('Team members not properly initialized');
|
|
93
|
-
}
|
|
94
|
-
// Break down specification into specialized tasks
|
|
95
|
-
const tasks = await this.createTaskBreakdown(specification);
|
|
96
|
-
// Execute tasks based on dependencies and complexity
|
|
97
|
-
const result = await this.coordinateTeam(tasks);
|
|
98
|
-
// Integrate all components into final widget
|
|
99
|
-
const widget = await this.integrateComponents(result);
|
|
100
|
-
// Deploy the widget
|
|
101
|
-
const deployment = await this.deployWidget(widget);
|
|
102
|
-
console.log('Widget Architect: Team coordination completed successfully');
|
|
103
|
-
return {
|
|
104
|
-
success: true,
|
|
105
|
-
artifact: deployment,
|
|
106
|
-
metadata: {
|
|
107
|
-
duration: 0, // Will be set by base class
|
|
108
|
-
performance: {
|
|
109
|
-
coordination_efficiency: 0.85,
|
|
110
|
-
team_synchronization: 0.9
|
|
111
|
-
},
|
|
112
|
-
quality: {
|
|
113
|
-
architecture_score: 0.9,
|
|
114
|
-
integration_score: 0.85
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
};
|
|
118
|
-
}
|
|
119
|
-
catch (error) {
|
|
120
|
-
console.error('Widget Architect: Error coordinating team:', error);
|
|
121
|
-
return this.handleError(error);
|
|
122
|
-
}
|
|
123
|
-
finally {
|
|
124
|
-
this.setStatus('available');
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Break down widget specification into specialized tasks
|
|
129
|
-
*/
|
|
130
|
-
async createTaskBreakdown(specification) {
|
|
131
|
-
const { requirements } = specification;
|
|
132
|
-
// Create frontend requirements
|
|
133
|
-
const frontend = {
|
|
134
|
-
template: {
|
|
135
|
-
layout: this.determineLayout(requirements.type),
|
|
136
|
-
components: this.identifyComponents(requirements),
|
|
137
|
-
responsive: requirements.ui.responsive
|
|
138
|
-
},
|
|
139
|
-
styling: {
|
|
140
|
-
theme: requirements.ui.theme,
|
|
141
|
-
accessibility: requirements.ui.accessibility
|
|
142
|
-
},
|
|
143
|
-
clientScript: {
|
|
144
|
-
framework: 'angular', // ServiceNow default
|
|
145
|
-
events: this.identifyClientEvents(requirements),
|
|
146
|
-
apiCalls: this.identifyApiCalls(requirements)
|
|
147
|
-
}
|
|
148
|
-
};
|
|
149
|
-
// Create backend requirements
|
|
150
|
-
const backend = {
|
|
151
|
-
serverScript: {
|
|
152
|
-
dataProcessing: this.identifyDataProcessing(requirements),
|
|
153
|
-
apiIntegrations: requirements.integrations || [],
|
|
154
|
-
businessLogic: this.identifyBusinessLogic(requirements)
|
|
155
|
-
},
|
|
156
|
-
performance: {
|
|
157
|
-
caching: this.requiresCaching(requirements),
|
|
158
|
-
optimization: this.identifyOptimizations(requirements)
|
|
159
|
-
},
|
|
160
|
-
security: {
|
|
161
|
-
validation: this.identifyValidations(requirements),
|
|
162
|
-
authorization: this.identifyAuthorization(requirements)
|
|
163
|
-
}
|
|
164
|
-
};
|
|
165
|
-
// Create design requirements
|
|
166
|
-
const design = {
|
|
167
|
-
uiPattern: this.determineUIPattern(requirements.type),
|
|
168
|
-
accessibility: {
|
|
169
|
-
wcag: 'AA',
|
|
170
|
-
screenReader: requirements.ui.accessibility,
|
|
171
|
-
keyboard: requirements.ui.accessibility
|
|
172
|
-
},
|
|
173
|
-
userExperience: {
|
|
174
|
-
workflow: this.identifyWorkflows(requirements),
|
|
175
|
-
feedback: this.identifyFeedbackNeeds(requirements)
|
|
176
|
-
}
|
|
177
|
-
};
|
|
178
|
-
// Create platform requirements
|
|
179
|
-
const platform = {
|
|
180
|
-
integration: {
|
|
181
|
-
apis: requirements.integrations || [],
|
|
182
|
-
tables: [requirements.data.source],
|
|
183
|
-
dependencies: this.identifyPlatformDependencies(requirements)
|
|
184
|
-
},
|
|
185
|
-
deployment: {
|
|
186
|
-
scope: 'global',
|
|
187
|
-
permissions: this.identifyPermissions(requirements)
|
|
188
|
-
}
|
|
189
|
-
};
|
|
190
|
-
return { frontend, backend, design, platform };
|
|
191
|
-
}
|
|
192
|
-
/**
|
|
193
|
-
* Coordinate team execution with proper dependency management
|
|
194
|
-
*/
|
|
195
|
-
async coordinateTeam(tasks) {
|
|
196
|
-
console.log('Widget Architect: Coordinating specialized agents...');
|
|
197
|
-
// Phase 1: Design and Planning (parallel)
|
|
198
|
-
const [designResult, platformSetup] = await Promise.all([
|
|
199
|
-
this.uiuxAgent.execute(tasks.design),
|
|
200
|
-
this.platformAgent.execute(tasks.platform)
|
|
201
|
-
]);
|
|
202
|
-
if (!designResult.success || !platformSetup.success) {
|
|
203
|
-
throw new Error('Design or platform setup failed');
|
|
204
|
-
}
|
|
205
|
-
// Phase 2: Implementation (parallel, dependent on design)
|
|
206
|
-
const [frontendResult, backendResult] = await Promise.all([
|
|
207
|
-
this.frontendAgent.execute({
|
|
208
|
-
...tasks.frontend,
|
|
209
|
-
design: designResult.artifact
|
|
210
|
-
}),
|
|
211
|
-
this.backendAgent.execute({
|
|
212
|
-
...tasks.backend,
|
|
213
|
-
platform: platformSetup.artifact
|
|
214
|
-
})
|
|
215
|
-
]);
|
|
216
|
-
if (!frontendResult.success || !backendResult.success) {
|
|
217
|
-
throw new Error('Frontend or backend implementation failed');
|
|
218
|
-
}
|
|
219
|
-
return {
|
|
220
|
-
design: designResult.artifact,
|
|
221
|
-
frontend: frontendResult.artifact,
|
|
222
|
-
backend: backendResult.artifact,
|
|
223
|
-
platform: platformSetup.artifact
|
|
224
|
-
};
|
|
225
|
-
}
|
|
226
|
-
/**
|
|
227
|
-
* Integrate all components into final widget
|
|
228
|
-
*/
|
|
229
|
-
async integrateComponents(components) {
|
|
230
|
-
console.log('Widget Architect: Integrating components...');
|
|
231
|
-
const widget = {
|
|
232
|
-
name: `${components.design.name || 'custom_widget'}_${Date.now()}`,
|
|
233
|
-
id: `${components.design.id || 'custom_widget'}_${Date.now()}`,
|
|
234
|
-
template: components.frontend.template,
|
|
235
|
-
css: components.frontend.css,
|
|
236
|
-
client_script: components.frontend.clientScript,
|
|
237
|
-
server_script: components.backend.serverScript,
|
|
238
|
-
option_schema: JSON.stringify(components.frontend.optionSchema || {}),
|
|
239
|
-
public: true,
|
|
240
|
-
data: components.backend.data || {}
|
|
241
|
-
};
|
|
242
|
-
return widget;
|
|
243
|
-
}
|
|
244
|
-
/**
|
|
245
|
-
* Deploy the integrated widget
|
|
246
|
-
*/
|
|
247
|
-
async deployWidget(widget) {
|
|
248
|
-
console.log('Widget Architect: Deploying widget...');
|
|
249
|
-
// This would integrate with the ServiceNow deployment MCP
|
|
250
|
-
// For now, return the widget specification
|
|
251
|
-
return {
|
|
252
|
-
widget,
|
|
253
|
-
deploymentStatus: 'prepared',
|
|
254
|
-
commands: [
|
|
255
|
-
{
|
|
256
|
-
tool: 'mcp__servicenow-deployment__snow_deploy_widget',
|
|
257
|
-
parameters: widget
|
|
258
|
-
}
|
|
259
|
-
]
|
|
260
|
-
};
|
|
261
|
-
}
|
|
262
|
-
// Helper methods for requirement analysis
|
|
263
|
-
assessComplexity(requirements) {
|
|
264
|
-
let complexity = 0;
|
|
265
|
-
// Data complexity
|
|
266
|
-
if (requirements.data.fields.length > 10)
|
|
267
|
-
complexity += 2;
|
|
268
|
-
else if (requirements.data.fields.length > 5)
|
|
269
|
-
complexity += 1;
|
|
270
|
-
// Functionality complexity
|
|
271
|
-
if (requirements.functionality.realtime)
|
|
272
|
-
complexity += 2;
|
|
273
|
-
if (requirements.functionality.interactive)
|
|
274
|
-
complexity += 1;
|
|
275
|
-
if (requirements.functionality.export)
|
|
276
|
-
complexity += 1;
|
|
277
|
-
// Integration complexity
|
|
278
|
-
complexity += (requirements.integrations?.length || 0);
|
|
279
|
-
// UI complexity
|
|
280
|
-
if (requirements.ui.responsive)
|
|
281
|
-
complexity += 1;
|
|
282
|
-
if (requirements.ui.accessibility)
|
|
283
|
-
complexity += 1;
|
|
284
|
-
if (complexity >= 6)
|
|
285
|
-
return 'complex';
|
|
286
|
-
if (complexity >= 3)
|
|
287
|
-
return 'medium';
|
|
288
|
-
return 'simple';
|
|
289
|
-
}
|
|
290
|
-
estimateTime(requirements, complexity) {
|
|
291
|
-
const baseTime = {
|
|
292
|
-
simple: 60,
|
|
293
|
-
medium: 120,
|
|
294
|
-
complex: 240
|
|
295
|
-
};
|
|
296
|
-
let time = baseTime[complexity];
|
|
297
|
-
// Add time for specific features
|
|
298
|
-
if (requirements.functionality.realtime)
|
|
299
|
-
time += 60;
|
|
300
|
-
if (requirements.functionality.interactive)
|
|
301
|
-
time += 30;
|
|
302
|
-
if (requirements.ui.accessibility)
|
|
303
|
-
time += 45;
|
|
304
|
-
return time;
|
|
305
|
-
}
|
|
306
|
-
identifyDependencies(requirements) {
|
|
307
|
-
const deps = [];
|
|
308
|
-
if (requirements.functionality.realtime) {
|
|
309
|
-
deps.push('websocket_service');
|
|
310
|
-
}
|
|
311
|
-
if (requirements.type === 'chart') {
|
|
312
|
-
deps.push('chart_library');
|
|
313
|
-
}
|
|
314
|
-
if (requirements.integrations?.length) {
|
|
315
|
-
deps.push('integration_service');
|
|
316
|
-
}
|
|
317
|
-
return deps;
|
|
318
|
-
}
|
|
319
|
-
// Component identification methods
|
|
320
|
-
determineLayout(type) {
|
|
321
|
-
const layouts = {
|
|
322
|
-
dashboard: 'grid',
|
|
323
|
-
form: 'vertical',
|
|
324
|
-
list: 'table',
|
|
325
|
-
chart: 'centered',
|
|
326
|
-
custom: 'flexible'
|
|
327
|
-
};
|
|
328
|
-
return layouts[type] || 'flexible';
|
|
329
|
-
}
|
|
330
|
-
identifyComponents(requirements) {
|
|
331
|
-
const components = ['container'];
|
|
332
|
-
if (requirements.type === 'chart') {
|
|
333
|
-
components.push('chart', 'legend', 'filters');
|
|
334
|
-
}
|
|
335
|
-
if (requirements.functionality.interactive) {
|
|
336
|
-
components.push('controls', 'buttons');
|
|
337
|
-
}
|
|
338
|
-
if (requirements.functionality.export) {
|
|
339
|
-
components.push('export_button');
|
|
340
|
-
}
|
|
341
|
-
return components;
|
|
342
|
-
}
|
|
343
|
-
identifyClientEvents(requirements) {
|
|
344
|
-
const events = ['onLoad'];
|
|
345
|
-
if (requirements.functionality.interactive) {
|
|
346
|
-
events.push('onClick', 'onChange');
|
|
347
|
-
}
|
|
348
|
-
if (requirements.functionality.realtime) {
|
|
349
|
-
events.push('onUpdate');
|
|
350
|
-
}
|
|
351
|
-
return events;
|
|
352
|
-
}
|
|
353
|
-
identifyApiCalls(requirements) {
|
|
354
|
-
const calls = [`/api/now/table/${requirements.data.source}`];
|
|
355
|
-
if (requirements.integrations?.length) {
|
|
356
|
-
calls.push(...requirements.integrations.map(i => `/api/integration/${i}`));
|
|
357
|
-
}
|
|
358
|
-
return calls;
|
|
359
|
-
}
|
|
360
|
-
identifyDataProcessing(requirements) {
|
|
361
|
-
const processing = ['data_fetch'];
|
|
362
|
-
if (requirements.type === 'chart') {
|
|
363
|
-
processing.push('data_aggregation', 'chart_data_formatting');
|
|
364
|
-
}
|
|
365
|
-
if (requirements.data.filters) {
|
|
366
|
-
processing.push('data_filtering');
|
|
367
|
-
}
|
|
368
|
-
return processing;
|
|
369
|
-
}
|
|
370
|
-
identifyBusinessLogic(requirements) {
|
|
371
|
-
const logic = [];
|
|
372
|
-
if (requirements.functionality.interactive) {
|
|
373
|
-
logic.push('user_interaction_logic');
|
|
374
|
-
}
|
|
375
|
-
if (requirements.functionality.realtime) {
|
|
376
|
-
logic.push('realtime_update_logic');
|
|
377
|
-
}
|
|
378
|
-
return logic;
|
|
379
|
-
}
|
|
380
|
-
requiresCaching(requirements) {
|
|
381
|
-
return requirements.data.fields.length > 20 ||
|
|
382
|
-
requirements.functionality.realtime ||
|
|
383
|
-
(requirements.integrations?.length || 0) > 0;
|
|
384
|
-
}
|
|
385
|
-
identifyOptimizations(requirements) {
|
|
386
|
-
const optimizations = [];
|
|
387
|
-
if (requirements.data.fields.length > 10) {
|
|
388
|
-
optimizations.push('lazy_loading', 'pagination');
|
|
389
|
-
}
|
|
390
|
-
if (requirements.functionality.realtime) {
|
|
391
|
-
optimizations.push('efficient_polling', 'websocket_optimization');
|
|
392
|
-
}
|
|
393
|
-
return optimizations;
|
|
394
|
-
}
|
|
395
|
-
identifyValidations(requirements) {
|
|
396
|
-
return ['input_validation', 'data_validation', 'permission_check'];
|
|
397
|
-
}
|
|
398
|
-
identifyAuthorization(requirements) {
|
|
399
|
-
return ['role_check', 'table_access_check'];
|
|
400
|
-
}
|
|
401
|
-
determineUIPattern(type) {
|
|
402
|
-
const patterns = {
|
|
403
|
-
dashboard: 'card_grid',
|
|
404
|
-
form: 'form_layout',
|
|
405
|
-
list: 'data_table',
|
|
406
|
-
chart: 'visualization',
|
|
407
|
-
custom: 'flexible_layout'
|
|
408
|
-
};
|
|
409
|
-
return patterns[type] || 'flexible_layout';
|
|
410
|
-
}
|
|
411
|
-
identifyWorkflows(requirements) {
|
|
412
|
-
const workflows = ['load_data', 'display_data'];
|
|
413
|
-
if (requirements.functionality.interactive) {
|
|
414
|
-
workflows.push('user_interaction', 'update_display');
|
|
415
|
-
}
|
|
416
|
-
return workflows;
|
|
417
|
-
}
|
|
418
|
-
identifyFeedbackNeeds(requirements) {
|
|
419
|
-
return ['loading_indicators', 'error_messages', 'success_notifications'];
|
|
420
|
-
}
|
|
421
|
-
identifyPlatformDependencies(requirements) {
|
|
422
|
-
const deps = [];
|
|
423
|
-
if (requirements.type === 'chart') {
|
|
424
|
-
deps.push('chart_js');
|
|
425
|
-
}
|
|
426
|
-
if (requirements.functionality.export) {
|
|
427
|
-
deps.push('export_service');
|
|
428
|
-
}
|
|
429
|
-
return deps;
|
|
430
|
-
}
|
|
431
|
-
identifyPermissions(requirements) {
|
|
432
|
-
return [`${requirements.data.source}.read`];
|
|
433
|
-
}
|
|
434
|
-
}
|
|
435
|
-
exports.WidgetArchitectAgent = WidgetArchitectAgent;
|
|
436
|
-
//# sourceMappingURL=widget-architect.agent.js.map
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Widget Backend Agent - Backend Development Specialist
|
|
3
|
-
* Handles server-side scripts, data processing, API integrations, and performance optimization
|
|
4
|
-
*/
|
|
5
|
-
import { BaseSnowAgent } from '../base-team';
|
|
6
|
-
import { BackendRequirements, TeamResult } from '../team-types';
|
|
7
|
-
import { ServiceNowAgentConfig } from '../../../types/servicenow.types';
|
|
8
|
-
export declare class WidgetBackendAgent extends BaseSnowAgent {
|
|
9
|
-
constructor(config: ServiceNowAgentConfig);
|
|
10
|
-
/**
|
|
11
|
-
* Analyze backend requirements and prepare implementation plan
|
|
12
|
-
*/
|
|
13
|
-
analyzeRequirements(requirements: BackendRequirements & {
|
|
14
|
-
platform?: any;
|
|
15
|
-
}): Promise<any>;
|
|
16
|
-
/**
|
|
17
|
-
* Execute backend development tasks
|
|
18
|
-
*/
|
|
19
|
-
execute(requirements: BackendRequirements & {
|
|
20
|
-
platform?: any;
|
|
21
|
-
}): Promise<TeamResult>;
|
|
22
|
-
/**
|
|
23
|
-
* Create comprehensive server-side script
|
|
24
|
-
*/
|
|
25
|
-
createServerScript(requirements: BackendRequirements): Promise<string>;
|
|
26
|
-
/**
|
|
27
|
-
* Create data processing functions
|
|
28
|
-
*/
|
|
29
|
-
createDataProcessors(requirements: BackendRequirements): Promise<any>;
|
|
30
|
-
/**
|
|
31
|
-
* Create API integration handlers
|
|
32
|
-
*/
|
|
33
|
-
createApiHandlers(requirements: BackendRequirements): Promise<any>;
|
|
34
|
-
/**
|
|
35
|
-
* Create performance optimizations
|
|
36
|
-
*/
|
|
37
|
-
createPerformanceOptimizations(requirements: BackendRequirements): Promise<any>;
|
|
38
|
-
/**
|
|
39
|
-
* Create security validations
|
|
40
|
-
*/
|
|
41
|
-
createSecurityValidations(requirements: BackendRequirements): Promise<any>;
|
|
42
|
-
private createDataLoadingFunctions;
|
|
43
|
-
private createApiIntegrationFunctions;
|
|
44
|
-
private createCachingFunctions;
|
|
45
|
-
private createSecurityFunctions;
|
|
46
|
-
private createErrorHandlingFunctions;
|
|
47
|
-
private createDataFilterProcessor;
|
|
48
|
-
private createDataAggregationProcessor;
|
|
49
|
-
private createDataTransformationProcessor;
|
|
50
|
-
private createDataValidationProcessor;
|
|
51
|
-
private createRestApiHandler;
|
|
52
|
-
private createExternalApiHandler;
|
|
53
|
-
private createServiceNowApiHandler;
|
|
54
|
-
private createQueryOptimizations;
|
|
55
|
-
private createCachingStrategy;
|
|
56
|
-
private createLazyLoadingStrategy;
|
|
57
|
-
private createInputValidation;
|
|
58
|
-
private createAccessControl;
|
|
59
|
-
private createDataSanitization;
|
|
60
|
-
private analyzeDataProcessing;
|
|
61
|
-
private analyzeApiIntegrations;
|
|
62
|
-
private analyzePerformanceNeeds;
|
|
63
|
-
private analyzeSecurityNeeds;
|
|
64
|
-
private analyzeErrorHandling;
|
|
65
|
-
private validateImplementation;
|
|
66
|
-
private validateErrorHandling;
|
|
67
|
-
private validateSecurity;
|
|
68
|
-
private validateMaintainability;
|
|
69
|
-
private assessScriptEfficiency;
|
|
70
|
-
private assessQueryOptimization;
|
|
71
|
-
private assessApiPerformance;
|
|
72
|
-
private capitalizeFirst;
|
|
73
|
-
}
|
|
74
|
-
//# sourceMappingURL=widget-backend.agent.d.ts.map
|