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
package/dist/teams/flow-team.js
DELETED
|
@@ -1,525 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FlowTeam = void 0;
|
|
4
|
-
const base_team_js_1 = require("./base-team.js");
|
|
5
|
-
const flow_specialists_js_1 = require("../specialists/flow-specialists.js");
|
|
6
|
-
class FlowTeam extends base_team_js_1.BaseTeam {
|
|
7
|
-
constructor(options = { sharedMemory: true, validation: true, parallel: false, monitor: false }) {
|
|
8
|
-
super(options);
|
|
9
|
-
}
|
|
10
|
-
initializeTeam() {
|
|
11
|
-
this.members = [
|
|
12
|
-
{
|
|
13
|
-
name: 'Morgan Process',
|
|
14
|
-
role: 'Process Designer',
|
|
15
|
-
expertise: ['Business Logic', 'Workflow Design', 'Process Optimization', 'Flow Architecture'],
|
|
16
|
-
execute: async (task, context) => {
|
|
17
|
-
const specialist = new flow_specialists_js_1.ProcessSpecialist(this.options);
|
|
18
|
-
return await specialist.execute(task.description, context);
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
{
|
|
22
|
-
name: 'Riley Trigger',
|
|
23
|
-
role: 'Trigger Specialist',
|
|
24
|
-
expertise: ['Event Handling', 'Conditions', 'Automation', 'Real-time Processing'],
|
|
25
|
-
execute: async (task, context) => {
|
|
26
|
-
const specialist = new flow_specialists_js_1.TriggerSpecialist(this.options);
|
|
27
|
-
return await specialist.execute(task.description, context);
|
|
28
|
-
}
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
name: 'Avery Data',
|
|
32
|
-
role: 'Data Specialist',
|
|
33
|
-
expertise: ['Data Modeling', 'Variable Management', 'Data Transformation', 'Data Validation'],
|
|
34
|
-
execute: async (task, context) => {
|
|
35
|
-
const specialist = new flow_specialists_js_1.DataSpecialist(this.options);
|
|
36
|
-
return await specialist.execute(task.description, context);
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
name: 'Cameron Integration',
|
|
41
|
-
role: 'Integration Specialist',
|
|
42
|
-
expertise: ['API Integration', 'External Systems', 'Data Synchronization', 'Middleware'],
|
|
43
|
-
execute: async (task, context) => {
|
|
44
|
-
const specialist = new flow_specialists_js_1.IntegrationSpecialist(this.options);
|
|
45
|
-
return await specialist.execute(task.description, context);
|
|
46
|
-
}
|
|
47
|
-
},
|
|
48
|
-
{
|
|
49
|
-
name: 'Quinn Security',
|
|
50
|
-
role: 'Security Specialist',
|
|
51
|
-
expertise: ['Security Analysis', 'Access Control', 'Compliance', 'Vulnerability Assessment'],
|
|
52
|
-
execute: async (task, context) => {
|
|
53
|
-
const specialist = new flow_specialists_js_1.SecuritySpecialist(this.options);
|
|
54
|
-
return await specialist.execute(task.description, context);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
];
|
|
58
|
-
// Initialize flow-specific quality gates
|
|
59
|
-
this.initializeFlowQualityGates();
|
|
60
|
-
}
|
|
61
|
-
async execute(task) {
|
|
62
|
-
console.log(`\n🔄 Flow Development Team Activated`);
|
|
63
|
-
console.log(`📋 Mission: ${task}`);
|
|
64
|
-
return await this.executeWithCoordination(task);
|
|
65
|
-
}
|
|
66
|
-
async analyzeRequirements(task) {
|
|
67
|
-
console.log(`\n🔍 Flow Team: Analyzing requirements...`);
|
|
68
|
-
const complexity = this.assessComplexity(task);
|
|
69
|
-
const components = this.identifyComponents(task);
|
|
70
|
-
const flowType = this.identifyFlowType(task);
|
|
71
|
-
const features = this.identifyRequiredFeatures(task);
|
|
72
|
-
const integrations = this.identifyIntegrationNeeds(task);
|
|
73
|
-
const requirements = {
|
|
74
|
-
task,
|
|
75
|
-
complexity,
|
|
76
|
-
components,
|
|
77
|
-
flowType,
|
|
78
|
-
features,
|
|
79
|
-
integrations,
|
|
80
|
-
coordination: this.determineCoordinationPattern(complexity, components, integrations),
|
|
81
|
-
estimatedTime: this.estimateProjectTime(complexity, features, integrations),
|
|
82
|
-
risks: this.identifyRisks(task),
|
|
83
|
-
dependencies: this.findDependencies(task)
|
|
84
|
-
};
|
|
85
|
-
console.log(` Flow Type: ${flowType}`);
|
|
86
|
-
console.log(` Complexity: ${complexity}`);
|
|
87
|
-
console.log(` Components: ${components.join(', ')}`);
|
|
88
|
-
console.log(` Integrations: ${integrations.join(', ')}`);
|
|
89
|
-
console.log(` Coordination: ${requirements.coordination}`);
|
|
90
|
-
return requirements;
|
|
91
|
-
}
|
|
92
|
-
async createTaskBreakdown(requirements) {
|
|
93
|
-
console.log(`\n📋 Flow Team: Creating task breakdown...`);
|
|
94
|
-
const tasks = [];
|
|
95
|
-
// Always start with process design for flows
|
|
96
|
-
tasks.push({
|
|
97
|
-
id: 'process_design',
|
|
98
|
-
description: `Design ${requirements.flowType} process architecture and business logic`,
|
|
99
|
-
assignedTo: this.getMemberByRole('Process Designer'),
|
|
100
|
-
dependencies: [],
|
|
101
|
-
priority: 'high',
|
|
102
|
-
estimatedTime: '45 min'
|
|
103
|
-
});
|
|
104
|
-
// Security analysis in parallel or after process design
|
|
105
|
-
tasks.push({
|
|
106
|
-
id: 'security_analysis',
|
|
107
|
-
description: `Analyze security requirements and compliance needs for ${requirements.flowType}`,
|
|
108
|
-
assignedTo: this.getMemberByRole('Security Specialist'),
|
|
109
|
-
dependencies: requirements.coordination === 'sequential' ? ['process_design'] : [],
|
|
110
|
-
priority: 'high',
|
|
111
|
-
estimatedTime: '30 min'
|
|
112
|
-
});
|
|
113
|
-
// Data modeling after process design
|
|
114
|
-
tasks.push({
|
|
115
|
-
id: 'data_modeling',
|
|
116
|
-
description: `Design data model, variables, and transformations for flow`,
|
|
117
|
-
assignedTo: this.getMemberByRole('Data Specialist'),
|
|
118
|
-
dependencies: ['process_design'],
|
|
119
|
-
priority: 'high',
|
|
120
|
-
estimatedTime: this.estimateDataTime(requirements)
|
|
121
|
-
});
|
|
122
|
-
// Trigger design after process design
|
|
123
|
-
tasks.push({
|
|
124
|
-
id: 'trigger_design',
|
|
125
|
-
description: `Design trigger mechanisms and event handling for ${requirements.flowType}`,
|
|
126
|
-
assignedTo: this.getMemberByRole('Trigger Specialist'),
|
|
127
|
-
dependencies: ['process_design'],
|
|
128
|
-
priority: 'high',
|
|
129
|
-
estimatedTime: this.estimateTriggerTime(requirements)
|
|
130
|
-
});
|
|
131
|
-
// Integration design if needed
|
|
132
|
-
if (requirements.integrations.length > 0) {
|
|
133
|
-
tasks.push({
|
|
134
|
-
id: 'integration_design',
|
|
135
|
-
description: `Design integration architecture for ${requirements.integrations.join(', ')}`,
|
|
136
|
-
assignedTo: this.getMemberByRole('Integration Specialist'),
|
|
137
|
-
dependencies: ['data_modeling'],
|
|
138
|
-
priority: 'medium',
|
|
139
|
-
estimatedTime: this.estimateIntegrationTime(requirements)
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
// Final integration and validation
|
|
143
|
-
const finalDependencies = ['trigger_design', 'data_modeling', 'security_analysis'];
|
|
144
|
-
if (requirements.integrations.length > 0) {
|
|
145
|
-
finalDependencies.push('integration_design');
|
|
146
|
-
}
|
|
147
|
-
tasks.push({
|
|
148
|
-
id: 'flow_integration',
|
|
149
|
-
description: `Integrate all components and validate complete flow definition`,
|
|
150
|
-
assignedTo: this.getMemberByRole('Process Designer'),
|
|
151
|
-
dependencies: finalDependencies,
|
|
152
|
-
priority: 'medium',
|
|
153
|
-
estimatedTime: '30 min'
|
|
154
|
-
});
|
|
155
|
-
console.log(` Created ${tasks.length} specialized tasks`);
|
|
156
|
-
tasks.forEach(task => {
|
|
157
|
-
console.log(` ${task.assignedTo.role}: ${task.description} (${task.estimatedTime})`);
|
|
158
|
-
});
|
|
159
|
-
return tasks;
|
|
160
|
-
}
|
|
161
|
-
async integrateResults(results) {
|
|
162
|
-
console.log(`\n🔗 Flow Team: Integrating all specialist deliverables...`);
|
|
163
|
-
const integration = {
|
|
164
|
-
teamType: 'Flow Development Team',
|
|
165
|
-
task: this.sharedContext.get('task'),
|
|
166
|
-
timestamp: new Date(),
|
|
167
|
-
specialists: {},
|
|
168
|
-
finalDeliverable: {},
|
|
169
|
-
qualityMetrics: {},
|
|
170
|
-
deploymentPackage: {}
|
|
171
|
-
};
|
|
172
|
-
// Organize results by specialist role
|
|
173
|
-
for (const result of results) {
|
|
174
|
-
if (result.status === 'success' && result.result) {
|
|
175
|
-
const specialist = result.result.specialist;
|
|
176
|
-
integration.specialists[specialist] = result.result;
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
// Create integrated flow deliverable
|
|
180
|
-
integration.finalDeliverable = await this.createFlowDeliverable(integration.specialists);
|
|
181
|
-
// Calculate quality metrics
|
|
182
|
-
integration.qualityMetrics = await this.calculateQualityMetrics(results);
|
|
183
|
-
// Prepare deployment package
|
|
184
|
-
integration.deploymentPackage = await this.prepareDeploymentPackage(integration.finalDeliverable);
|
|
185
|
-
console.log(`✅ Flow integration completed successfully`);
|
|
186
|
-
console.log(` Components: ${Object.keys(integration.specialists).length} specialists contributed`);
|
|
187
|
-
console.log(` Quality Score: ${integration.qualityMetrics.overallScore}/100`);
|
|
188
|
-
return integration;
|
|
189
|
-
}
|
|
190
|
-
identifyFlowType(task) {
|
|
191
|
-
const lowerTask = task.toLowerCase();
|
|
192
|
-
if (lowerTask.includes('approval')) {
|
|
193
|
-
return 'approval_workflow';
|
|
194
|
-
}
|
|
195
|
-
else if (lowerTask.includes('fulfillment') || lowerTask.includes('provision')) {
|
|
196
|
-
return 'fulfillment_workflow';
|
|
197
|
-
}
|
|
198
|
-
else if (lowerTask.includes('notification') || lowerTask.includes('alert')) {
|
|
199
|
-
return 'notification_workflow';
|
|
200
|
-
}
|
|
201
|
-
else if (lowerTask.includes('integration') || lowerTask.includes('sync')) {
|
|
202
|
-
return 'integration_workflow';
|
|
203
|
-
}
|
|
204
|
-
else if (lowerTask.includes('escalation')) {
|
|
205
|
-
return 'escalation_workflow';
|
|
206
|
-
}
|
|
207
|
-
else if (lowerTask.includes('automation')) {
|
|
208
|
-
return 'automation_workflow';
|
|
209
|
-
}
|
|
210
|
-
return 'utility_workflow';
|
|
211
|
-
}
|
|
212
|
-
identifyRequiredFeatures(task) {
|
|
213
|
-
const features = [];
|
|
214
|
-
const lowerTask = task.toLowerCase();
|
|
215
|
-
if (lowerTask.includes('approval')) {
|
|
216
|
-
features.push('approval_engine');
|
|
217
|
-
}
|
|
218
|
-
if (lowerTask.includes('notification') || lowerTask.includes('email')) {
|
|
219
|
-
features.push('notification_system');
|
|
220
|
-
}
|
|
221
|
-
if (lowerTask.includes('schedule') || lowerTask.includes('timer')) {
|
|
222
|
-
features.push('scheduling');
|
|
223
|
-
}
|
|
224
|
-
if (lowerTask.includes('condition') || lowerTask.includes('decision')) {
|
|
225
|
-
features.push('conditional_logic');
|
|
226
|
-
}
|
|
227
|
-
if (lowerTask.includes('parallel') || lowerTask.includes('concurrent')) {
|
|
228
|
-
features.push('parallel_processing');
|
|
229
|
-
}
|
|
230
|
-
if (lowerTask.includes('error') || lowerTask.includes('exception')) {
|
|
231
|
-
features.push('error_handling');
|
|
232
|
-
}
|
|
233
|
-
if (lowerTask.includes('escalation')) {
|
|
234
|
-
features.push('escalation_engine');
|
|
235
|
-
}
|
|
236
|
-
return features;
|
|
237
|
-
}
|
|
238
|
-
identifyIntegrationNeeds(task) {
|
|
239
|
-
const integrations = [];
|
|
240
|
-
const lowerTask = task.toLowerCase();
|
|
241
|
-
if (lowerTask.includes('api') || lowerTask.includes('rest')) {
|
|
242
|
-
integrations.push('rest_api');
|
|
243
|
-
}
|
|
244
|
-
if (lowerTask.includes('email') || lowerTask.includes('smtp')) {
|
|
245
|
-
integrations.push('email_system');
|
|
246
|
-
}
|
|
247
|
-
if (lowerTask.includes('ldap') || lowerTask.includes('active directory')) {
|
|
248
|
-
integrations.push('ldap');
|
|
249
|
-
}
|
|
250
|
-
if (lowerTask.includes('database') || lowerTask.includes('external db')) {
|
|
251
|
-
integrations.push('external_database');
|
|
252
|
-
}
|
|
253
|
-
if (lowerTask.includes('webhook')) {
|
|
254
|
-
integrations.push('webhook');
|
|
255
|
-
}
|
|
256
|
-
if (lowerTask.includes('soap')) {
|
|
257
|
-
integrations.push('soap_service');
|
|
258
|
-
}
|
|
259
|
-
return integrations;
|
|
260
|
-
}
|
|
261
|
-
determineCoordinationPattern(complexity, components, integrations) {
|
|
262
|
-
if (complexity === 'complex' || integrations.length > 2) {
|
|
263
|
-
return 'hybrid'; // Mix of sequential and parallel
|
|
264
|
-
}
|
|
265
|
-
else if (integrations.length > 0) {
|
|
266
|
-
return 'parallel_with_integration'; // Parallel with final integration step
|
|
267
|
-
}
|
|
268
|
-
else if (complexity === 'moderate') {
|
|
269
|
-
return 'parallel'; // Most tasks can run in parallel
|
|
270
|
-
}
|
|
271
|
-
return 'sequential'; // Simple linear workflow
|
|
272
|
-
}
|
|
273
|
-
estimateProjectTime(complexity, features, integrations) {
|
|
274
|
-
const baseTime = {
|
|
275
|
-
'simple': 90,
|
|
276
|
-
'moderate': 150,
|
|
277
|
-
'complex': 240
|
|
278
|
-
};
|
|
279
|
-
const featureTime = features.length * 20; // 20 min per feature
|
|
280
|
-
const integrationTime = integrations.length * 30; // 30 min per integration
|
|
281
|
-
const totalMinutes = baseTime[complexity] + featureTime + integrationTime;
|
|
282
|
-
if (totalMinutes < 60) {
|
|
283
|
-
return `${totalMinutes} minutes`;
|
|
284
|
-
}
|
|
285
|
-
else {
|
|
286
|
-
const hours = Math.floor(totalMinutes / 60);
|
|
287
|
-
const minutes = totalMinutes % 60;
|
|
288
|
-
return minutes > 0 ? `${hours}h ${minutes}m` : `${hours}h`;
|
|
289
|
-
}
|
|
290
|
-
}
|
|
291
|
-
identifyRisks(task) {
|
|
292
|
-
const risks = [];
|
|
293
|
-
const lowerTask = task.toLowerCase();
|
|
294
|
-
if (lowerTask.includes('complex') || lowerTask.includes('advanced')) {
|
|
295
|
-
risks.push('process_complexity');
|
|
296
|
-
}
|
|
297
|
-
if (lowerTask.includes('approval') && lowerTask.includes('multi')) {
|
|
298
|
-
risks.push('approval_chain_complexity');
|
|
299
|
-
}
|
|
300
|
-
if (lowerTask.includes('integration') || lowerTask.includes('api')) {
|
|
301
|
-
risks.push('external_system_dependencies');
|
|
302
|
-
}
|
|
303
|
-
if (lowerTask.includes('realtime') || lowerTask.includes('immediate')) {
|
|
304
|
-
risks.push('performance_requirements');
|
|
305
|
-
}
|
|
306
|
-
if (lowerTask.includes('security') || lowerTask.includes('sensitive')) {
|
|
307
|
-
risks.push('security_compliance');
|
|
308
|
-
}
|
|
309
|
-
return risks;
|
|
310
|
-
}
|
|
311
|
-
estimateDataTime(requirements) {
|
|
312
|
-
const baseTime = requirements.complexity === 'complex' ? 40 : 30;
|
|
313
|
-
const featureTime = requirements.features.length * 5;
|
|
314
|
-
return `${baseTime + featureTime} min`;
|
|
315
|
-
}
|
|
316
|
-
estimateTriggerTime(requirements) {
|
|
317
|
-
const baseTime = requirements.complexity === 'complex' ? 35 : 25;
|
|
318
|
-
const integrationTime = requirements.integrations.length * 10;
|
|
319
|
-
return `${baseTime + integrationTime} min`;
|
|
320
|
-
}
|
|
321
|
-
estimateIntegrationTime(requirements) {
|
|
322
|
-
const baseTime = 40;
|
|
323
|
-
const systemTime = requirements.integrations.length * 15;
|
|
324
|
-
return `${baseTime + systemTime} min`;
|
|
325
|
-
}
|
|
326
|
-
getMemberByRole(role) {
|
|
327
|
-
const member = this.members.find(m => m.role === role);
|
|
328
|
-
if (!member) {
|
|
329
|
-
throw new Error(`No team member found with role: ${role}`);
|
|
330
|
-
}
|
|
331
|
-
return member;
|
|
332
|
-
}
|
|
333
|
-
async createFlowDeliverable(specialists) {
|
|
334
|
-
const deliverable = {
|
|
335
|
-
type: 'ServiceNow Flow',
|
|
336
|
-
timestamp: new Date(),
|
|
337
|
-
components: {}
|
|
338
|
-
};
|
|
339
|
-
// Process design components
|
|
340
|
-
if (specialists['Process Designer']) {
|
|
341
|
-
deliverable.components.process = {
|
|
342
|
-
flowArchitecture: specialists['Process Designer'].deliverables?.flowArchitecture || {},
|
|
343
|
-
flowDefinition: specialists['Process Designer'].deliverables?.flowDefinition || {}
|
|
344
|
-
};
|
|
345
|
-
}
|
|
346
|
-
// Trigger components
|
|
347
|
-
if (specialists['Trigger Specialist']) {
|
|
348
|
-
deliverable.components.trigger = {
|
|
349
|
-
triggerDesign: specialists['Trigger Specialist'].deliverables?.triggerDesign || {},
|
|
350
|
-
triggerConfig: specialists['Trigger Specialist'].deliverables?.triggerConfig || {}
|
|
351
|
-
};
|
|
352
|
-
}
|
|
353
|
-
// Data components
|
|
354
|
-
if (specialists['Data Specialist']) {
|
|
355
|
-
deliverable.components.data = {
|
|
356
|
-
dataArchitecture: specialists['Data Specialist'].deliverables?.dataArchitecture || {},
|
|
357
|
-
dataStrategy: specialists['Data Specialist'].deliverables?.dataStrategy || {}
|
|
358
|
-
};
|
|
359
|
-
}
|
|
360
|
-
// Integration components
|
|
361
|
-
if (specialists['Integration Specialist']) {
|
|
362
|
-
deliverable.components.integration = {
|
|
363
|
-
integrationArchitecture: specialists['Integration Specialist'].deliverables?.integrationArchitecture || {},
|
|
364
|
-
implementationPlan: specialists['Integration Specialist'].deliverables?.implementationPlan || {}
|
|
365
|
-
};
|
|
366
|
-
}
|
|
367
|
-
// Security components
|
|
368
|
-
if (specialists['Security Specialist']) {
|
|
369
|
-
deliverable.components.security = {
|
|
370
|
-
securityControls: specialists['Security Specialist'].deliverables?.securityControls || {},
|
|
371
|
-
securityPlan: specialists['Security Specialist'].deliverables?.securityPlan || {}
|
|
372
|
-
};
|
|
373
|
-
}
|
|
374
|
-
return deliverable;
|
|
375
|
-
}
|
|
376
|
-
async calculateQualityMetrics(results) {
|
|
377
|
-
const successfulTasks = results.filter(r => r.status === 'success').length;
|
|
378
|
-
const totalTasks = results.length;
|
|
379
|
-
const completionRate = (successfulTasks / totalTasks) * 100;
|
|
380
|
-
// Calculate component quality scores
|
|
381
|
-
const qualityFactors = {
|
|
382
|
-
completeness: completionRate,
|
|
383
|
-
processDesign: 88, // Would be calculated from process complexity analysis
|
|
384
|
-
dataIntegrity: 92, // Would be calculated from data validation
|
|
385
|
-
securityCompliance: 90, // Would be assessed through security review
|
|
386
|
-
integrationReliability: 85, // Would be measured from integration tests
|
|
387
|
-
performanceOptimization: 87 // Would be evaluated through performance analysis
|
|
388
|
-
};
|
|
389
|
-
const overallScore = Object.values(qualityFactors).reduce((sum, score) => sum + score, 0) / Object.keys(qualityFactors).length;
|
|
390
|
-
return {
|
|
391
|
-
overallScore: Math.round(overallScore),
|
|
392
|
-
factors: qualityFactors,
|
|
393
|
-
completionRate,
|
|
394
|
-
recommendations: this.generateQualityRecommendations(qualityFactors)
|
|
395
|
-
};
|
|
396
|
-
}
|
|
397
|
-
generateQualityRecommendations(factors) {
|
|
398
|
-
const recommendations = [];
|
|
399
|
-
if (factors.completeness < 90) {
|
|
400
|
-
recommendations.push('Complete remaining development tasks');
|
|
401
|
-
}
|
|
402
|
-
if (factors.processDesign < 85) {
|
|
403
|
-
recommendations.push('Optimize process design for better efficiency');
|
|
404
|
-
}
|
|
405
|
-
if (factors.dataIntegrity < 90) {
|
|
406
|
-
recommendations.push('Strengthen data validation and integrity checks');
|
|
407
|
-
}
|
|
408
|
-
if (factors.securityCompliance < 90) {
|
|
409
|
-
recommendations.push('Address security compliance gaps');
|
|
410
|
-
}
|
|
411
|
-
if (factors.integrationReliability < 85) {
|
|
412
|
-
recommendations.push('Improve integration error handling and resilience');
|
|
413
|
-
}
|
|
414
|
-
if (factors.performanceOptimization < 85) {
|
|
415
|
-
recommendations.push('Optimize flow performance and resource usage');
|
|
416
|
-
}
|
|
417
|
-
return recommendations;
|
|
418
|
-
}
|
|
419
|
-
async prepareDeploymentPackage(deliverable) {
|
|
420
|
-
const flowDefinition = deliverable.components?.process?.flowDefinition?.flow || {};
|
|
421
|
-
const triggerConfig = deliverable.components?.trigger?.triggerConfig || {};
|
|
422
|
-
return {
|
|
423
|
-
flowDefinition: {
|
|
424
|
-
name: flowDefinition.name || this.generateFlowName(),
|
|
425
|
-
description: flowDefinition.description || 'Generated by Flow Development Team',
|
|
426
|
-
trigger_type: triggerConfig.triggerDefinition?.events?.[0] || 'manual',
|
|
427
|
-
trigger_condition: this.generateTriggerCondition(triggerConfig),
|
|
428
|
-
flow_definition: JSON.stringify(this.generateFlowJson(deliverable)),
|
|
429
|
-
active: true
|
|
430
|
-
},
|
|
431
|
-
deploymentInstructions: {
|
|
432
|
-
updateSet: 'Create new update set before deployment',
|
|
433
|
-
testing: 'Execute comprehensive flow testing before activation',
|
|
434
|
-
monitoring: 'Enable flow execution monitoring and logging',
|
|
435
|
-
rollback: 'Keep backup of previous version'
|
|
436
|
-
},
|
|
437
|
-
qualityAssurance: {
|
|
438
|
-
checklist: [
|
|
439
|
-
'All process steps defined and tested',
|
|
440
|
-
'Trigger conditions validated',
|
|
441
|
-
'Data transformations verified',
|
|
442
|
-
'Security controls implemented',
|
|
443
|
-
'Integration points tested',
|
|
444
|
-
'Error handling scenarios covered'
|
|
445
|
-
]
|
|
446
|
-
}
|
|
447
|
-
};
|
|
448
|
-
}
|
|
449
|
-
generateFlowName() {
|
|
450
|
-
const task = this.sharedContext.get('task') || 'custom_flow';
|
|
451
|
-
return task.toLowerCase().replace(/[^a-z0-9]/g, '_').substring(0, 40);
|
|
452
|
-
}
|
|
453
|
-
generateTriggerCondition(triggerConfig) {
|
|
454
|
-
const conditions = triggerConfig.triggerDefinition?.conditions?.conditions || [];
|
|
455
|
-
if (conditions.length === 0)
|
|
456
|
-
return '';
|
|
457
|
-
return conditions.map(c => `${c.field}${c.operator}${c.value}`).join('^');
|
|
458
|
-
}
|
|
459
|
-
generateFlowJson(deliverable) {
|
|
460
|
-
const processDefinition = deliverable.components?.process?.flowDefinition?.flow || {};
|
|
461
|
-
const triggerConfig = deliverable.components?.trigger?.triggerConfig?.triggerDefinition || {};
|
|
462
|
-
const dataArchitecture = deliverable.components?.data?.dataArchitecture || {};
|
|
463
|
-
return {
|
|
464
|
-
flow: {
|
|
465
|
-
name: processDefinition.name || 'Generated Flow',
|
|
466
|
-
description: processDefinition.description || 'Auto-generated flow',
|
|
467
|
-
steps: processDefinition.steps || [],
|
|
468
|
-
variables: dataArchitecture.variables || [],
|
|
469
|
-
trigger: {
|
|
470
|
-
type: triggerConfig.events?.[0] || 'manual',
|
|
471
|
-
conditions: triggerConfig.conditions || {},
|
|
472
|
-
filters: triggerConfig.filters || []
|
|
473
|
-
},
|
|
474
|
-
error_handling: {
|
|
475
|
-
enabled: true,
|
|
476
|
-
retry_count: 3,
|
|
477
|
-
escalation: true
|
|
478
|
-
}
|
|
479
|
-
}
|
|
480
|
-
};
|
|
481
|
-
}
|
|
482
|
-
initializeFlowQualityGates() {
|
|
483
|
-
// Add flow-specific quality gates
|
|
484
|
-
this.qualityGates.push({
|
|
485
|
-
name: 'Process design validation',
|
|
486
|
-
check: async (results) => {
|
|
487
|
-
const processResult = results.find(r => r.result?.specialist === 'Process Designer');
|
|
488
|
-
return processResult?.status === 'success' && processResult.result?.deliverables?.flowDefinition;
|
|
489
|
-
},
|
|
490
|
-
onFailure: async (results) => {
|
|
491
|
-
console.log('❌ Process design validation failed - missing or invalid flow definition');
|
|
492
|
-
}
|
|
493
|
-
}, {
|
|
494
|
-
name: 'Trigger configuration validation',
|
|
495
|
-
check: async (results) => {
|
|
496
|
-
const triggerResult = results.find(r => r.result?.specialist === 'Trigger Specialist');
|
|
497
|
-
return triggerResult?.status === 'success' && triggerResult.result?.deliverables?.triggerConfig;
|
|
498
|
-
},
|
|
499
|
-
onFailure: async (results) => {
|
|
500
|
-
console.log('❌ Trigger validation failed - missing or invalid trigger configuration');
|
|
501
|
-
}
|
|
502
|
-
}, {
|
|
503
|
-
name: 'Data model validation',
|
|
504
|
-
check: async (results) => {
|
|
505
|
-
const dataResult = results.find(r => r.result?.specialist === 'Data Specialist');
|
|
506
|
-
return dataResult?.status === 'success' && dataResult.result?.deliverables?.dataArchitecture;
|
|
507
|
-
}
|
|
508
|
-
}, {
|
|
509
|
-
name: 'Security compliance validation',
|
|
510
|
-
check: async (results) => {
|
|
511
|
-
const securityResult = results.find(r => r.result?.specialist === 'Security Specialist');
|
|
512
|
-
return securityResult?.status === 'success' && securityResult.result?.deliverables?.securityControls;
|
|
513
|
-
}
|
|
514
|
-
}, {
|
|
515
|
-
name: 'Integration readiness validation',
|
|
516
|
-
check: async (results) => {
|
|
517
|
-
const integrationResult = results.find(r => r.result?.specialist === 'Integration Specialist');
|
|
518
|
-
// Integration is optional, so pass if no integration specialist or if successful
|
|
519
|
-
return !integrationResult || (integrationResult?.status === 'success' && integrationResult.result?.deliverables?.integrationArchitecture);
|
|
520
|
-
}
|
|
521
|
-
});
|
|
522
|
-
}
|
|
523
|
-
}
|
|
524
|
-
exports.FlowTeam = FlowTeam;
|
|
525
|
-
//# sourceMappingURL=flow-team.js.map
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { BaseTeam, TeamOptions, TaskBreakdown } from './base-team.js';
|
|
2
|
-
export declare class WidgetTeam extends BaseTeam {
|
|
3
|
-
constructor(options?: TeamOptions);
|
|
4
|
-
initializeTeam(): void;
|
|
5
|
-
execute(task: string): Promise<any>;
|
|
6
|
-
protected analyzeRequirements(task: string): Promise<any>;
|
|
7
|
-
protected createTaskBreakdown(requirements: any): Promise<TaskBreakdown[]>;
|
|
8
|
-
protected integrateResults(results: any[]): Promise<any>;
|
|
9
|
-
private identifyWidgetType;
|
|
10
|
-
private identifyRequiredFeatures;
|
|
11
|
-
private determineCoordinationPattern;
|
|
12
|
-
private estimateProjectTime;
|
|
13
|
-
private identifyRisks;
|
|
14
|
-
private estimateBackendTime;
|
|
15
|
-
private estimateFrontendTime;
|
|
16
|
-
private getMemberByRole;
|
|
17
|
-
private createWidgetDeliverable;
|
|
18
|
-
private calculateQualityMetrics;
|
|
19
|
-
private generateQualityRecommendations;
|
|
20
|
-
private prepareDeploymentPackage;
|
|
21
|
-
private generateWidgetName;
|
|
22
|
-
private generateWidgetTitle;
|
|
23
|
-
private generateDemoData;
|
|
24
|
-
private initializeWidgetQualityGates;
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=widget-team.d.ts.map
|