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,386 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Utility functions for scope management and analysis
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ScopeUtils = void 0;
|
|
7
|
-
const global_scope_strategy_js_1 = require("../strategies/global-scope-strategy.js");
|
|
8
|
-
class ScopeUtils {
|
|
9
|
-
/**
|
|
10
|
-
* Analyze artifact content to determine optimal scope
|
|
11
|
-
*/
|
|
12
|
-
static analyzeArtifactScope(artifactType, artifactData) {
|
|
13
|
-
const _analysis = {
|
|
14
|
-
recommendedScope: global_scope_strategy_js_1.ScopeType.GLOBAL,
|
|
15
|
-
confidence: 0,
|
|
16
|
-
indicators: {
|
|
17
|
-
global: [],
|
|
18
|
-
application: [],
|
|
19
|
-
system: []
|
|
20
|
-
},
|
|
21
|
-
complexity: 'low',
|
|
22
|
-
crossAppIntegration: false
|
|
23
|
-
};
|
|
24
|
-
const content = this.extractArtifactContent(artifactData);
|
|
25
|
-
const contentLower = content.toLowerCase();
|
|
26
|
-
// Global scope indicators
|
|
27
|
-
const globalIndicators = [
|
|
28
|
-
{ pattern: /\b(global|system|util|common|shared|library)\b/gi, weight: 0.3 },
|
|
29
|
-
{ pattern: /\b(cross[_-]?application|multi[_-]?app|enterprise)\b/gi, weight: 0.4 },
|
|
30
|
-
{ pattern: /\b(infrastructure|platform|framework)\b/gi, weight: 0.35 },
|
|
31
|
-
{ pattern: /\b(gs\.|GlideSystem|GlideRecord)\b/gi, weight: 0.2 },
|
|
32
|
-
{ pattern: /\b(api|rest|soap|integration)\b/gi, weight: 0.25 }
|
|
33
|
-
];
|
|
34
|
-
// Application scope indicators
|
|
35
|
-
const applicationIndicators = [
|
|
36
|
-
{ pattern: /\b(business|custom|specific|department)\b/gi, weight: 0.3 },
|
|
37
|
-
{ pattern: /\b(workflow|process|procedure)\b/gi, weight: 0.2 },
|
|
38
|
-
{ pattern: /\b(application[_-]?specific|app[_-]?only)\b/gi, weight: 0.4 },
|
|
39
|
-
{ pattern: /\b(isolated|contained|scoped)\b/gi, weight: 0.25 }
|
|
40
|
-
];
|
|
41
|
-
// System indicators
|
|
42
|
-
const systemIndicators = [
|
|
43
|
-
{ pattern: /\b(admin|administrator|system[_-]?admin)\b/gi, weight: 0.3 },
|
|
44
|
-
{ pattern: /\b(configuration|setting|property)\b/gi, weight: 0.2 },
|
|
45
|
-
{ pattern: /\b(maintenance|monitoring|logging)\b/gi, weight: 0.25 }
|
|
46
|
-
];
|
|
47
|
-
// Analyze global indicators
|
|
48
|
-
let globalScore = 0;
|
|
49
|
-
globalIndicators.forEach(indicator => {
|
|
50
|
-
const matches = content.match(indicator.pattern);
|
|
51
|
-
if (matches) {
|
|
52
|
-
globalScore += indicator.weight * matches.length;
|
|
53
|
-
_analysis.indicators.global.push(`${indicator.pattern.source} (${matches.length} matches)`);
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
// Analyze application indicators
|
|
57
|
-
let applicationScore = 0;
|
|
58
|
-
applicationIndicators.forEach(indicator => {
|
|
59
|
-
const matches = content.match(indicator.pattern);
|
|
60
|
-
if (matches) {
|
|
61
|
-
applicationScore += indicator.weight * matches.length;
|
|
62
|
-
_analysis.indicators.application.push(`${indicator.pattern.source} (${matches.length} matches)`);
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
// Analyze system indicators
|
|
66
|
-
let systemScore = 0;
|
|
67
|
-
systemIndicators.forEach(indicator => {
|
|
68
|
-
const matches = content.match(indicator.pattern);
|
|
69
|
-
if (matches) {
|
|
70
|
-
systemScore += indicator.weight * matches.length;
|
|
71
|
-
_analysis.indicators.system.push(`${indicator.pattern.source} (${matches.length} matches)`);
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
// Determine recommended scope
|
|
75
|
-
const totalScore = globalScore + applicationScore + systemScore;
|
|
76
|
-
if (totalScore > 0) {
|
|
77
|
-
if (globalScore > applicationScore && globalScore > systemScore) {
|
|
78
|
-
_analysis.recommendedScope = global_scope_strategy_js_1.ScopeType.GLOBAL;
|
|
79
|
-
_analysis.confidence = Math.min(globalScore / totalScore, 1.0);
|
|
80
|
-
}
|
|
81
|
-
else if (applicationScore > globalScore && applicationScore > systemScore) {
|
|
82
|
-
_analysis.recommendedScope = global_scope_strategy_js_1.ScopeType.APPLICATION;
|
|
83
|
-
_analysis.confidence = Math.min(applicationScore / totalScore, 1.0);
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
_analysis.recommendedScope = global_scope_strategy_js_1.ScopeType.AUTO;
|
|
87
|
-
_analysis.confidence = 0.5;
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
else {
|
|
91
|
-
_analysis.confidence = 0.3;
|
|
92
|
-
}
|
|
93
|
-
// Analyze complexity
|
|
94
|
-
_analysis.complexity = this.analyzeComplexity(artifactType, artifactData);
|
|
95
|
-
// Check for cross-application integration
|
|
96
|
-
_analysis.crossAppIntegration = this.hasCrossAppIntegration(content);
|
|
97
|
-
return _analysis;
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Extract content from artifact for analysis
|
|
101
|
-
*/
|
|
102
|
-
static extractArtifactContent(artifactData) {
|
|
103
|
-
const contentFields = [
|
|
104
|
-
'name', 'description', 'short_description', 'script', 'template',
|
|
105
|
-
'client_script', 'server_script', 'condition', 'instructions'
|
|
106
|
-
];
|
|
107
|
-
let content = '';
|
|
108
|
-
contentFields.forEach(field => {
|
|
109
|
-
if (artifactData[field]) {
|
|
110
|
-
content += ` ${artifactData[field]}`;
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
// Include activity and variable information for flows
|
|
114
|
-
if (artifactData.activities) {
|
|
115
|
-
artifactData.activities.forEach((activity) => {
|
|
116
|
-
content += ` ${activity.name} ${activity.type}`;
|
|
117
|
-
if (activity.description)
|
|
118
|
-
content += ` ${activity.description}`;
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
|
-
return content;
|
|
122
|
-
}
|
|
123
|
-
/**
|
|
124
|
-
* Analyze artifact complexity
|
|
125
|
-
*/
|
|
126
|
-
static analyzeComplexity(artifactType, artifactData) {
|
|
127
|
-
let complexityScore = 0;
|
|
128
|
-
// Type-specific complexity scoring
|
|
129
|
-
switch (artifactType) {
|
|
130
|
-
case 'flow':
|
|
131
|
-
const activityCount = artifactData.activities?.length || 0;
|
|
132
|
-
complexityScore += activityCount * 0.1;
|
|
133
|
-
// Check for complex activity types
|
|
134
|
-
if (artifactData.activities) {
|
|
135
|
-
const complexTypes = ['script', 'condition', 'loop', 'rest', 'soap'];
|
|
136
|
-
const complexActivities = artifactData.activities.filter((a) => complexTypes.includes(a.type));
|
|
137
|
-
complexityScore += complexActivities.length * 0.3;
|
|
138
|
-
}
|
|
139
|
-
break;
|
|
140
|
-
case 'script_include':
|
|
141
|
-
const scriptLength = artifactData.script?.length || 0;
|
|
142
|
-
complexityScore += scriptLength / 1000 * 0.2; // 0.2 per 1000 chars
|
|
143
|
-
// Check for complex script patterns
|
|
144
|
-
if (artifactData.script) {
|
|
145
|
-
const complexPatterns = [
|
|
146
|
-
/function\s+\w+\s*\(/g, // Function definitions
|
|
147
|
-
/for\s*\(|while\s*\(/g, // Loops
|
|
148
|
-
/if\s*\(|switch\s*\(/g, // Conditionals
|
|
149
|
-
/try\s*\{|catch\s*\(/g // Error handling
|
|
150
|
-
];
|
|
151
|
-
complexPatterns.forEach(pattern => {
|
|
152
|
-
const matches = artifactData.script.match(pattern);
|
|
153
|
-
if (matches)
|
|
154
|
-
complexityScore += matches.length * 0.1;
|
|
155
|
-
});
|
|
156
|
-
}
|
|
157
|
-
break;
|
|
158
|
-
case 'widget':
|
|
159
|
-
const templateLength = artifactData.template?.length || 0;
|
|
160
|
-
const scriptLength2 = (artifactData.client_script?.length || 0) + (artifactData.server_script?.length || 0);
|
|
161
|
-
complexityScore += (templateLength + scriptLength2) / 1000 * 0.15;
|
|
162
|
-
break;
|
|
163
|
-
default:
|
|
164
|
-
complexityScore += 0.3; // Default complexity
|
|
165
|
-
}
|
|
166
|
-
// Return complexity level
|
|
167
|
-
if (complexityScore > 2.0)
|
|
168
|
-
return 'high';
|
|
169
|
-
if (complexityScore > 1.0)
|
|
170
|
-
return 'medium';
|
|
171
|
-
return 'low';
|
|
172
|
-
}
|
|
173
|
-
/**
|
|
174
|
-
* Check if artifact has cross-application integration
|
|
175
|
-
*/
|
|
176
|
-
static hasCrossAppIntegration(content) {
|
|
177
|
-
const integrationPatterns = [
|
|
178
|
-
/\b(rest|soap|api)\b/gi,
|
|
179
|
-
/\b(integration|connector|bridge)\b/gi,
|
|
180
|
-
/\b(cross[_-]?application|multi[_-]?app)\b/gi,
|
|
181
|
-
/\b(external|third[_-]?party)\b/gi,
|
|
182
|
-
/\b(http|https|url|endpoint)\b/gi
|
|
183
|
-
];
|
|
184
|
-
return integrationPatterns.some(pattern => pattern.test(content));
|
|
185
|
-
}
|
|
186
|
-
/**
|
|
187
|
-
* Validate scope configuration
|
|
188
|
-
*/
|
|
189
|
-
static validateScopeConfiguration(config) {
|
|
190
|
-
const issues = [];
|
|
191
|
-
// Validate scope type
|
|
192
|
-
if (!config.type || !Object.values(global_scope_strategy_js_1.ScopeType).includes(config.type)) {
|
|
193
|
-
issues.push('Invalid or missing scope type');
|
|
194
|
-
}
|
|
195
|
-
// Validate global scope configuration
|
|
196
|
-
if (config.type === global_scope_strategy_js_1.ScopeType.GLOBAL) {
|
|
197
|
-
if (config.globalDomain && config.globalDomain !== 'global') {
|
|
198
|
-
issues.push('Global scope should use "global" domain');
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
// Validate application scope configuration
|
|
202
|
-
if (config.type === global_scope_strategy_js_1.ScopeType.APPLICATION) {
|
|
203
|
-
if (!config.applicationId && !config.applicationName) {
|
|
204
|
-
issues.push('Application scope requires applicationId or applicationName');
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
return {
|
|
208
|
-
isValid: issues.length === 0,
|
|
209
|
-
issues
|
|
210
|
-
};
|
|
211
|
-
}
|
|
212
|
-
/**
|
|
213
|
-
* Generate scope recommendation report
|
|
214
|
-
*/
|
|
215
|
-
static generateScopeReport(_analysis) {
|
|
216
|
-
const report = `
|
|
217
|
-
Scope Analysis Report
|
|
218
|
-
====================
|
|
219
|
-
|
|
220
|
-
Recommended Scope: ${_analysis.recommendedScope}
|
|
221
|
-
Confidence: ${(_analysis.confidence * 100).toFixed(1)}%
|
|
222
|
-
Complexity: ${_analysis.complexity}
|
|
223
|
-
Cross-App Integration: ${_analysis.crossAppIntegration ? 'Yes' : 'No'}
|
|
224
|
-
|
|
225
|
-
Indicators:
|
|
226
|
-
-----------
|
|
227
|
-
Global Scope Indicators:
|
|
228
|
-
${_analysis.indicators.global.map(i => ` • ${i}`).join('\n')}
|
|
229
|
-
|
|
230
|
-
Application Scope Indicators:
|
|
231
|
-
${_analysis.indicators.application.map(i => ` • ${i}`).join('\n')}
|
|
232
|
-
|
|
233
|
-
System Indicators:
|
|
234
|
-
${_analysis.indicators.system.map(i => ` • ${i}`).join('\n')}
|
|
235
|
-
|
|
236
|
-
Recommendations:
|
|
237
|
-
---------------
|
|
238
|
-
${this.generateRecommendations(_analysis).map(r => ` • ${r}`).join('\n')}
|
|
239
|
-
`;
|
|
240
|
-
return report;
|
|
241
|
-
}
|
|
242
|
-
/**
|
|
243
|
-
* Generate recommendations based on analysis
|
|
244
|
-
*/
|
|
245
|
-
static generateRecommendations(_analysis) {
|
|
246
|
-
const recommendations = [];
|
|
247
|
-
if (_analysis.confidence < 0.5) {
|
|
248
|
-
recommendations.push('Consider manual scope selection due to low confidence');
|
|
249
|
-
}
|
|
250
|
-
if (_analysis.complexity === 'high') {
|
|
251
|
-
recommendations.push('High complexity artifact - ensure proper testing');
|
|
252
|
-
}
|
|
253
|
-
if (_analysis.crossAppIntegration) {
|
|
254
|
-
recommendations.push('Cross-application integration detected - global scope recommended');
|
|
255
|
-
}
|
|
256
|
-
if (_analysis.recommendedScope === global_scope_strategy_js_1.ScopeType.GLOBAL) {
|
|
257
|
-
recommendations.push('Ensure global scope permissions are available');
|
|
258
|
-
recommendations.push('Consider impact on system performance');
|
|
259
|
-
}
|
|
260
|
-
if (_analysis.recommendedScope === global_scope_strategy_js_1.ScopeType.APPLICATION) {
|
|
261
|
-
recommendations.push('Ensure application scope is properly configured');
|
|
262
|
-
recommendations.push('Consider application lifecycle management');
|
|
263
|
-
}
|
|
264
|
-
return recommendations;
|
|
265
|
-
}
|
|
266
|
-
/**
|
|
267
|
-
* Compare two scope configurations
|
|
268
|
-
*/
|
|
269
|
-
static compareScopeConfigurations(config1, config2) {
|
|
270
|
-
const differences = [];
|
|
271
|
-
if (config1.type !== config2.type) {
|
|
272
|
-
differences.push(`Scope type: ${config1.type} vs ${config2.type}`);
|
|
273
|
-
}
|
|
274
|
-
if (config1.globalDomain !== config2.globalDomain) {
|
|
275
|
-
differences.push(`Global domain: ${config1.globalDomain} vs ${config2.globalDomain}`);
|
|
276
|
-
}
|
|
277
|
-
if (config1.applicationId !== config2.applicationId) {
|
|
278
|
-
differences.push(`Application ID: ${config1.applicationId} vs ${config2.applicationId}`);
|
|
279
|
-
}
|
|
280
|
-
if (config1.fallbackToGlobal !== config2.fallbackToGlobal) {
|
|
281
|
-
differences.push(`Fallback to global: ${config1.fallbackToGlobal} vs ${config2.fallbackToGlobal}`);
|
|
282
|
-
}
|
|
283
|
-
return {
|
|
284
|
-
isDifferent: differences.length > 0,
|
|
285
|
-
differences
|
|
286
|
-
};
|
|
287
|
-
}
|
|
288
|
-
/**
|
|
289
|
-
* Get scope display name
|
|
290
|
-
*/
|
|
291
|
-
static getScopeDisplayName(scope) {
|
|
292
|
-
switch (scope) {
|
|
293
|
-
case global_scope_strategy_js_1.ScopeType.GLOBAL:
|
|
294
|
-
return 'Global Scope';
|
|
295
|
-
case global_scope_strategy_js_1.ScopeType.APPLICATION:
|
|
296
|
-
return 'Application Scope';
|
|
297
|
-
case global_scope_strategy_js_1.ScopeType.AUTO:
|
|
298
|
-
return 'Auto Selection';
|
|
299
|
-
default:
|
|
300
|
-
return 'Unknown Scope';
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
/**
|
|
304
|
-
* Get scope description
|
|
305
|
-
*/
|
|
306
|
-
static getScopeDescription(scope) {
|
|
307
|
-
switch (scope) {
|
|
308
|
-
case global_scope_strategy_js_1.ScopeType.GLOBAL:
|
|
309
|
-
return 'System-wide scope with no application boundaries';
|
|
310
|
-
case global_scope_strategy_js_1.ScopeType.APPLICATION:
|
|
311
|
-
return 'Application-specific scope with isolation';
|
|
312
|
-
case global_scope_strategy_js_1.ScopeType.AUTO:
|
|
313
|
-
return 'Automatic scope selection based on _analysis';
|
|
314
|
-
default:
|
|
315
|
-
return 'Unknown scope type';
|
|
316
|
-
}
|
|
317
|
-
}
|
|
318
|
-
/**
|
|
319
|
-
* Get scope benefits
|
|
320
|
-
*/
|
|
321
|
-
static getScopeBenefits(scope) {
|
|
322
|
-
switch (scope) {
|
|
323
|
-
case global_scope_strategy_js_1.ScopeType.GLOBAL:
|
|
324
|
-
return [
|
|
325
|
-
'System-wide availability',
|
|
326
|
-
'Cross-application integration',
|
|
327
|
-
'Simplified maintenance',
|
|
328
|
-
'Better performance for utilities',
|
|
329
|
-
'No boundary restrictions'
|
|
330
|
-
];
|
|
331
|
-
case global_scope_strategy_js_1.ScopeType.APPLICATION:
|
|
332
|
-
return [
|
|
333
|
-
'Application isolation',
|
|
334
|
-
'Dedicated namespace',
|
|
335
|
-
'Simplified lifecycle management',
|
|
336
|
-
'Better security boundaries',
|
|
337
|
-
'Easier deployment control'
|
|
338
|
-
];
|
|
339
|
-
case global_scope_strategy_js_1.ScopeType.AUTO:
|
|
340
|
-
return [
|
|
341
|
-
'Optimal scope selection',
|
|
342
|
-
'Reduced configuration complexity',
|
|
343
|
-
'Intelligent decision making',
|
|
344
|
-
'Automatic fallback support',
|
|
345
|
-
'Context-aware deployment'
|
|
346
|
-
];
|
|
347
|
-
default:
|
|
348
|
-
return [];
|
|
349
|
-
}
|
|
350
|
-
}
|
|
351
|
-
/**
|
|
352
|
-
* Get scope risks
|
|
353
|
-
*/
|
|
354
|
-
static getScopeRisks(scope) {
|
|
355
|
-
switch (scope) {
|
|
356
|
-
case global_scope_strategy_js_1.ScopeType.GLOBAL:
|
|
357
|
-
return [
|
|
358
|
-
'System-wide impact of changes',
|
|
359
|
-
'Potential security implications',
|
|
360
|
-
'Higher permission requirements',
|
|
361
|
-
'More complex troubleshooting',
|
|
362
|
-
'Broader testing requirements'
|
|
363
|
-
];
|
|
364
|
-
case global_scope_strategy_js_1.ScopeType.APPLICATION:
|
|
365
|
-
return [
|
|
366
|
-
'Limited cross-application functionality',
|
|
367
|
-
'Potential integration challenges',
|
|
368
|
-
'Increased complexity for shared utilities',
|
|
369
|
-
'Multiple application management',
|
|
370
|
-
'Duplication of common functionality'
|
|
371
|
-
];
|
|
372
|
-
case global_scope_strategy_js_1.ScopeType.AUTO:
|
|
373
|
-
return [
|
|
374
|
-
'Potential incorrect scope selection',
|
|
375
|
-
'Reduced user control',
|
|
376
|
-
'Dependency on _analysis accuracy',
|
|
377
|
-
'Complexity in troubleshooting decisions',
|
|
378
|
-
'Need for fallback mechanisms'
|
|
379
|
-
];
|
|
380
|
-
default:
|
|
381
|
-
return [];
|
|
382
|
-
}
|
|
383
|
-
}
|
|
384
|
-
}
|
|
385
|
-
exports.ScopeUtils = ScopeUtils;
|
|
386
|
-
//# sourceMappingURL=scope-utils.js.map
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
/**
|
|
3
|
-
* ServiceNow OAuth Authentication Utility
|
|
4
|
-
* Handles OAuth2 flow for ServiceNow integration
|
|
5
|
-
*/
|
|
6
|
-
export interface ServiceNowCredentials {
|
|
7
|
-
instance: string;
|
|
8
|
-
clientId: string;
|
|
9
|
-
clientSecret: string;
|
|
10
|
-
redirectUri: string;
|
|
11
|
-
accessToken?: string;
|
|
12
|
-
refreshToken?: string;
|
|
13
|
-
expiresAt?: number;
|
|
14
|
-
}
|
|
15
|
-
export interface ServiceNowAuthResult {
|
|
16
|
-
success: boolean;
|
|
17
|
-
credentials?: ServiceNowCredentials;
|
|
18
|
-
error?: string;
|
|
19
|
-
}
|
|
20
|
-
export declare class ServiceNowOAuth {
|
|
21
|
-
private credentialsFile;
|
|
22
|
-
private credentials;
|
|
23
|
-
constructor();
|
|
24
|
-
/**
|
|
25
|
-
* Initialize OAuth flow - opens browser and handles callback
|
|
26
|
-
*/
|
|
27
|
-
authenticate(instance: string, clientId: string, clientSecret: string): Promise<ServiceNowAuthResult>;
|
|
28
|
-
/**
|
|
29
|
-
* Generate ServiceNow OAuth authorization URL
|
|
30
|
-
*/
|
|
31
|
-
private generateAuthUrl;
|
|
32
|
-
/**
|
|
33
|
-
* Start local HTTP server to handle OAuth callback
|
|
34
|
-
*/
|
|
35
|
-
private startCallbackServer;
|
|
36
|
-
/**
|
|
37
|
-
* Exchange authorization code for access tokens
|
|
38
|
-
*/
|
|
39
|
-
private exchangeCodeForTokens;
|
|
40
|
-
/**
|
|
41
|
-
* Save credentials to file
|
|
42
|
-
*/
|
|
43
|
-
private saveCredentials;
|
|
44
|
-
/**
|
|
45
|
-
* Load credentials from file
|
|
46
|
-
*/
|
|
47
|
-
loadCredentials(): Promise<ServiceNowCredentials | null>;
|
|
48
|
-
/**
|
|
49
|
-
* Check if credentials are valid and not expired
|
|
50
|
-
*/
|
|
51
|
-
isAuthenticated(): Promise<boolean>;
|
|
52
|
-
/**
|
|
53
|
-
* Refresh access token using refresh token
|
|
54
|
-
*/
|
|
55
|
-
refreshAccessToken(): Promise<boolean>;
|
|
56
|
-
/**
|
|
57
|
-
* Get current credentials
|
|
58
|
-
*/
|
|
59
|
-
getCredentials(): ServiceNowCredentials | null;
|
|
60
|
-
/**
|
|
61
|
-
* Clear stored credentials
|
|
62
|
-
*/
|
|
63
|
-
logout(): Promise<void>;
|
|
64
|
-
}
|
|
65
|
-
//# sourceMappingURL=snow-oauth-old.d.ts.map
|