@exaudeus/workrail 0.6.1-beta.8 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/application/services/workflow-service.js +41 -11
- package/dist/cli.js +44 -0
- package/dist/config/feature-flags.d.ts +33 -0
- package/dist/config/feature-flags.js +106 -0
- package/dist/container.d.ts +2 -0
- package/dist/container.js +3 -0
- package/dist/mcp-server.js +31 -6
- package/package.json +1 -1
- package/web/assets/images/favicon-amber-16.png +0 -0
- package/web/assets/images/favicon-amber-32.png +0 -0
- package/web/assets/images/favicon-white-16-clean.png +0 -0
- package/web/assets/images/favicon-white-32-clean.png +0 -0
- package/web/assets/images/icon-amber-192.png +0 -0
- package/web/assets/images/icon-amber-512.png +0 -0
- package/web/assets/images/icon-amber.svg +27 -0
- package/web/assets/images/icon-white-192-clean.png +0 -0
- package/web/assets/images/icon-white-512-clean.png +0 -0
- package/web/assets/images/icon-white.svg +27 -0
- package/web/manifest.json +1 -1
- package/workflows/CHANGELOG-bug-investigation.md +167 -85
- package/workflows/documentation-update-workflow.json +334 -345
- package/workflows/examples/dashboard-template-workflow.json +176 -0
- package/workflows/systematic-bug-investigation-with-loops.backup-20251106-125543.json +751 -0
- package/workflows/systematic-bug-investigation-with-loops.json +727 -664
- package/web/ADAPTIVE_BACKGROUND_SYSTEM.md +0 -523
- package/web/BACKGROUND_ENHANCEMENTS.md +0 -419
- package/web/COMPONENT_LIBRARY.md +0 -755
- package/web/COMPONENT_MIGRATION_GUIDE.md +0 -537
- package/web/assets/images/favicon-white-16.png +0 -0
- package/web/assets/images/favicon-white-32.png +0 -0
- package/web/assets/images/icon-white-192.png +0 -0
- package/web/assets/images/icon-white-512.png +0 -0
- package/web/assets/images/icon-white.png +0 -0
- package/workflows/dashboard-template-workflow.json +0 -337
- package/workflows/deep-documentation-workflow.json +0 -0
- package/workflows/systemic-bug-investigation-with-loops.json +0 -645
|
@@ -54,8 +54,38 @@ class DefaultWorkflowService {
|
|
|
54
54
|
if (enhancedContext._currentLoop) {
|
|
55
55
|
const { loopId, loopStep } = enhancedContext._currentLoop;
|
|
56
56
|
const loopContext = new loop_execution_context_1.LoopExecutionContext(loopId, loopStep.loop, enhancedContext._loopState?.[loopId]);
|
|
57
|
+
const bodyStep = this.loopStepResolver.resolveLoopBody(workflow, loopStep.body, loopStep.id);
|
|
58
|
+
const bodyIsCompleted = Array.isArray(bodyStep)
|
|
59
|
+
? bodyStep.every(step => completed.includes(step.id))
|
|
60
|
+
: completed.includes(bodyStep.id);
|
|
61
|
+
if (bodyIsCompleted) {
|
|
62
|
+
loopContext.incrementIteration();
|
|
63
|
+
if (!enhancedContext._loopState) {
|
|
64
|
+
enhancedContext._loopState = {};
|
|
65
|
+
}
|
|
66
|
+
enhancedContext._loopState[loopId] = loopContext.getCurrentState();
|
|
67
|
+
if (Array.isArray(bodyStep)) {
|
|
68
|
+
bodyStep.forEach(step => {
|
|
69
|
+
const index = completed.indexOf(step.id);
|
|
70
|
+
if (index > -1) {
|
|
71
|
+
completed.splice(index, 1);
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
const index = completed.indexOf(bodyStep.id);
|
|
77
|
+
if (index > -1) {
|
|
78
|
+
completed.splice(index, 1);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
if (!loopContext.shouldContinue(context)) {
|
|
82
|
+
completed.push(loopId);
|
|
83
|
+
delete enhancedContext._currentLoop;
|
|
84
|
+
const nextStep = await this.getNextStep(workflow.id, completed, enhancedContext);
|
|
85
|
+
return nextStep;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
57
88
|
if (loopContext.shouldContinue(context)) {
|
|
58
|
-
const bodyStep = this.loopStepResolver.resolveLoopBody(workflow, loopStep.body, loopStep.id);
|
|
59
89
|
if (!Array.isArray(bodyStep)) {
|
|
60
90
|
const isFirst = loopContext.isFirstIteration();
|
|
61
91
|
if (isFirst && loopContext.isEmpty(context)) {
|
|
@@ -83,25 +113,25 @@ class DefaultWorkflowService {
|
|
|
83
113
|
};
|
|
84
114
|
}
|
|
85
115
|
else {
|
|
116
|
+
const isFirst = loopContext.isFirstIteration();
|
|
117
|
+
if (isFirst && loopContext.isEmpty(context)) {
|
|
118
|
+
const skipContext = context_optimizer_1.ContextOptimizer.createEnhancedContext(context, completed);
|
|
119
|
+
delete skipContext._currentLoop;
|
|
120
|
+
const nextStep = await this.getNextStep(workflow.id, completed, skipContext);
|
|
121
|
+
return nextStep;
|
|
122
|
+
}
|
|
123
|
+
const useMinimal = !isFirst && !!this.loopContextOptimizer;
|
|
124
|
+
const loopEnhancedContext = loopContext.injectVariables(context, useMinimal);
|
|
86
125
|
const uncompletedBodyStep = bodyStep.find(step => {
|
|
87
126
|
if (completed.includes(step.id)) {
|
|
88
127
|
return false;
|
|
89
128
|
}
|
|
90
129
|
if (step.runCondition) {
|
|
91
|
-
return (0, condition_evaluator_1.evaluateCondition)(step.runCondition,
|
|
130
|
+
return (0, condition_evaluator_1.evaluateCondition)(step.runCondition, loopEnhancedContext);
|
|
92
131
|
}
|
|
93
132
|
return true;
|
|
94
133
|
});
|
|
95
134
|
if (uncompletedBodyStep) {
|
|
96
|
-
const isFirst = loopContext.isFirstIteration();
|
|
97
|
-
if (isFirst && loopContext.isEmpty(context)) {
|
|
98
|
-
const skipContext = context_optimizer_1.ContextOptimizer.createEnhancedContext(context, completed);
|
|
99
|
-
delete skipContext._currentLoop;
|
|
100
|
-
const nextStep = await this.getNextStep(workflow.id, completed, skipContext);
|
|
101
|
-
return nextStep;
|
|
102
|
-
}
|
|
103
|
-
const useMinimal = !isFirst && !!this.loopContextOptimizer;
|
|
104
|
-
const loopEnhancedContext = loopContext.injectVariables(context, useMinimal);
|
|
105
135
|
const optimizedContext = useMinimal && this.loopContextOptimizer
|
|
106
136
|
? this.loopContextOptimizer.stripLoopMetadata(loopEnhancedContext)
|
|
107
137
|
: loopEnhancedContext;
|
package/dist/cli.js
CHANGED
|
@@ -1,5 +1,38 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
+
}) : function(o, v) {
|
|
17
|
+
o["default"] = v;
|
|
18
|
+
});
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
3
36
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
38
|
};
|
|
@@ -178,6 +211,17 @@ async function validateWorkflowFile(filePath) {
|
|
|
178
211
|
console.error(chalk_1.default.yellow('\nPlease check the JSON syntax and try again.'));
|
|
179
212
|
process.exit(1);
|
|
180
213
|
}
|
|
214
|
+
const { validateWorkflow: schemaValidate } = await Promise.resolve().then(() => __importStar(require('./application/validation')));
|
|
215
|
+
const schemaResult = schemaValidate(workflow);
|
|
216
|
+
if (!schemaResult.valid) {
|
|
217
|
+
console.error(chalk_1.default.red('❌ Workflow validation failed:'), filePath);
|
|
218
|
+
console.error(chalk_1.default.yellow('\nValidation errors:'));
|
|
219
|
+
schemaResult.errors.forEach(error => {
|
|
220
|
+
console.error(chalk_1.default.red(' •'), error);
|
|
221
|
+
});
|
|
222
|
+
console.error(chalk_1.default.yellow('\nPlease fix the errors above and try again.'));
|
|
223
|
+
process.exit(1);
|
|
224
|
+
}
|
|
181
225
|
const validationEngine = new validation_engine_1.ValidationEngine();
|
|
182
226
|
const result = validationEngine.validateWorkflow(workflow);
|
|
183
227
|
if (result.valid && !result.warnings?.length && !result.info?.length) {
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export interface FeatureFlagDefinition {
|
|
2
|
+
readonly key: string;
|
|
3
|
+
readonly envVar: string;
|
|
4
|
+
readonly defaultValue: boolean;
|
|
5
|
+
readonly description: string;
|
|
6
|
+
readonly since: string;
|
|
7
|
+
readonly stable: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare const FEATURE_FLAG_DEFINITIONS: ReadonlyArray<FeatureFlagDefinition>;
|
|
10
|
+
export type FeatureFlagKey = typeof FEATURE_FLAG_DEFINITIONS[number]['key'];
|
|
11
|
+
export type FeatureFlags = {
|
|
12
|
+
readonly [K in FeatureFlagKey]: boolean;
|
|
13
|
+
};
|
|
14
|
+
export interface IFeatureFlagProvider {
|
|
15
|
+
isEnabled(key: FeatureFlagKey): boolean;
|
|
16
|
+
getAll(): FeatureFlags;
|
|
17
|
+
getSummary(): string;
|
|
18
|
+
}
|
|
19
|
+
export declare class EnvironmentFeatureFlagProvider implements IFeatureFlagProvider {
|
|
20
|
+
private readonly flags;
|
|
21
|
+
constructor(env?: Record<string, string | undefined>);
|
|
22
|
+
isEnabled(key: FeatureFlagKey): boolean;
|
|
23
|
+
getAll(): FeatureFlags;
|
|
24
|
+
getSummary(): string;
|
|
25
|
+
}
|
|
26
|
+
export declare class StaticFeatureFlagProvider implements IFeatureFlagProvider {
|
|
27
|
+
private readonly flags;
|
|
28
|
+
constructor(flags?: Partial<FeatureFlags>);
|
|
29
|
+
isEnabled(key: FeatureFlagKey): boolean;
|
|
30
|
+
getAll(): FeatureFlags;
|
|
31
|
+
getSummary(): string;
|
|
32
|
+
}
|
|
33
|
+
export declare function createFeatureFlagProvider(env?: Record<string, string | undefined>): IFeatureFlagProvider;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StaticFeatureFlagProvider = exports.EnvironmentFeatureFlagProvider = exports.FEATURE_FLAG_DEFINITIONS = void 0;
|
|
4
|
+
exports.createFeatureFlagProvider = createFeatureFlagProvider;
|
|
5
|
+
exports.FEATURE_FLAG_DEFINITIONS = [
|
|
6
|
+
{
|
|
7
|
+
key: 'sessionTools',
|
|
8
|
+
envVar: 'WORKRAIL_ENABLE_SESSION_TOOLS',
|
|
9
|
+
defaultValue: false,
|
|
10
|
+
description: 'Enable session management tools (workrail_create_session, workrail_update_session, etc.) and HTTP dashboard server',
|
|
11
|
+
since: '0.6.0',
|
|
12
|
+
stable: false,
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
key: 'experimentalWorkflows',
|
|
16
|
+
envVar: 'WORKRAIL_ENABLE_EXPERIMENTAL_WORKFLOWS',
|
|
17
|
+
defaultValue: false,
|
|
18
|
+
description: 'Load workflows from experimental/ directory',
|
|
19
|
+
since: '0.6.1',
|
|
20
|
+
stable: false,
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
key: 'verboseLogging',
|
|
24
|
+
envVar: 'WORKRAIL_VERBOSE_LOGGING',
|
|
25
|
+
defaultValue: false,
|
|
26
|
+
description: 'Enable detailed debug logging',
|
|
27
|
+
since: '0.6.0',
|
|
28
|
+
stable: true,
|
|
29
|
+
},
|
|
30
|
+
];
|
|
31
|
+
function parseBoolean(value, defaultValue) {
|
|
32
|
+
if (value === undefined) {
|
|
33
|
+
return defaultValue;
|
|
34
|
+
}
|
|
35
|
+
const normalized = value.toLowerCase().trim();
|
|
36
|
+
const truthyValues = ['true', '1', 'yes', 'on'];
|
|
37
|
+
const falsyValues = ['false', '0', 'no', 'off'];
|
|
38
|
+
if (truthyValues.includes(normalized)) {
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
if (falsyValues.includes(normalized)) {
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
console.warn(`[FeatureFlags] Invalid boolean value "${value}" for flag. ` +
|
|
45
|
+
`Expected one of: ${[...truthyValues, ...falsyValues].join(', ')}. ` +
|
|
46
|
+
`Using default: ${defaultValue}`);
|
|
47
|
+
return defaultValue;
|
|
48
|
+
}
|
|
49
|
+
class EnvironmentFeatureFlagProvider {
|
|
50
|
+
constructor(env = process.env) {
|
|
51
|
+
const flags = {};
|
|
52
|
+
for (const definition of exports.FEATURE_FLAG_DEFINITIONS) {
|
|
53
|
+
const envValue = env[definition.envVar];
|
|
54
|
+
flags[definition.key] = parseBoolean(envValue, definition.defaultValue);
|
|
55
|
+
}
|
|
56
|
+
this.flags = flags;
|
|
57
|
+
const enabledExperimental = exports.FEATURE_FLAG_DEFINITIONS
|
|
58
|
+
.filter(def => !def.stable && this.flags[def.key])
|
|
59
|
+
.map(def => def.key);
|
|
60
|
+
if (enabledExperimental.length > 0) {
|
|
61
|
+
console.error(`[FeatureFlags] Experimental features enabled: ${enabledExperimental.join(', ')}`);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
isEnabled(key) {
|
|
65
|
+
return this.flags[key] ?? false;
|
|
66
|
+
}
|
|
67
|
+
getAll() {
|
|
68
|
+
return { ...this.flags };
|
|
69
|
+
}
|
|
70
|
+
getSummary() {
|
|
71
|
+
const lines = ['Feature Flags:'];
|
|
72
|
+
for (const definition of exports.FEATURE_FLAG_DEFINITIONS) {
|
|
73
|
+
const enabled = this.flags[definition.key];
|
|
74
|
+
const status = enabled ? '✓ ENABLED' : '✗ DISABLED';
|
|
75
|
+
const stability = definition.stable ? '[STABLE]' : '[EXPERIMENTAL]';
|
|
76
|
+
lines.push(` ${status} ${stability} ${definition.key}`);
|
|
77
|
+
lines.push(` ${definition.description}`);
|
|
78
|
+
lines.push(` env: ${definition.envVar}`);
|
|
79
|
+
}
|
|
80
|
+
return lines.join('\n');
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
exports.EnvironmentFeatureFlagProvider = EnvironmentFeatureFlagProvider;
|
|
84
|
+
class StaticFeatureFlagProvider {
|
|
85
|
+
constructor(flags = {}) {
|
|
86
|
+
this.flags = flags;
|
|
87
|
+
}
|
|
88
|
+
isEnabled(key) {
|
|
89
|
+
return this.flags[key] ?? false;
|
|
90
|
+
}
|
|
91
|
+
getAll() {
|
|
92
|
+
const allFlags = {};
|
|
93
|
+
for (const definition of exports.FEATURE_FLAG_DEFINITIONS) {
|
|
94
|
+
allFlags[definition.key] =
|
|
95
|
+
this.flags[definition.key] ?? definition.defaultValue;
|
|
96
|
+
}
|
|
97
|
+
return allFlags;
|
|
98
|
+
}
|
|
99
|
+
getSummary() {
|
|
100
|
+
return JSON.stringify(this.getAll(), null, 2);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
exports.StaticFeatureFlagProvider = StaticFeatureFlagProvider;
|
|
104
|
+
function createFeatureFlagProvider(env) {
|
|
105
|
+
return new EnvironmentFeatureFlagProvider(env);
|
|
106
|
+
}
|
package/dist/container.d.ts
CHANGED
|
@@ -3,7 +3,9 @@ import { ValidationEngine } from './application/services/validation-engine.js';
|
|
|
3
3
|
import { IWorkflowStorage } from './types/storage.js';
|
|
4
4
|
import { WorkflowLookupServer } from './types/server.js';
|
|
5
5
|
import { ILoopContextOptimizer } from './types/loop-context-optimizer.js';
|
|
6
|
+
import { IFeatureFlagProvider } from './config/feature-flags.js';
|
|
6
7
|
export interface AppContainer {
|
|
8
|
+
featureFlags: IFeatureFlagProvider;
|
|
7
9
|
storage: IWorkflowStorage;
|
|
8
10
|
validationEngine: ValidationEngine;
|
|
9
11
|
loopContextOptimizer: ILoopContextOptimizer;
|
package/dist/container.js
CHANGED
|
@@ -6,13 +6,16 @@ const workflow_service_js_1 = require("./application/services/workflow-service.j
|
|
|
6
6
|
const validation_engine_js_1 = require("./application/services/validation-engine.js");
|
|
7
7
|
const server_js_1 = require("./infrastructure/rpc/server.js");
|
|
8
8
|
const loop_context_optimizer_js_1 = require("./application/services/loop-context-optimizer.js");
|
|
9
|
+
const feature_flags_js_1 = require("./config/feature-flags.js");
|
|
9
10
|
function createAppContainer(overrides = {}) {
|
|
11
|
+
const featureFlags = overrides.featureFlags ?? (0, feature_flags_js_1.createFeatureFlagProvider)();
|
|
10
12
|
const storage = overrides.storage ?? (0, storage_js_1.createDefaultWorkflowStorage)();
|
|
11
13
|
const validationEngine = overrides.validationEngine ?? new validation_engine_js_1.ValidationEngine();
|
|
12
14
|
const loopContextOptimizer = overrides.loopContextOptimizer ?? new loop_context_optimizer_js_1.LoopContextOptimizer();
|
|
13
15
|
const workflowService = overrides.workflowService ?? new workflow_service_js_1.DefaultWorkflowService(storage, validationEngine, loopContextOptimizer);
|
|
14
16
|
const server = overrides.server ?? (0, server_js_1.createWorkflowLookupServer)(workflowService);
|
|
15
17
|
return {
|
|
18
|
+
featureFlags,
|
|
16
19
|
storage,
|
|
17
20
|
validationEngine,
|
|
18
21
|
loopContextOptimizer,
|
package/dist/mcp-server.js
CHANGED
|
@@ -38,19 +38,44 @@ const container_js_1 = require("./container.js");
|
|
|
38
38
|
const index_js_1 = require("./infrastructure/session/index.js");
|
|
39
39
|
const session_tools_js_1 = require("./tools/session-tools.js");
|
|
40
40
|
class WorkflowOrchestrationServer {
|
|
41
|
-
constructor() {
|
|
42
|
-
this.
|
|
43
|
-
this.
|
|
44
|
-
this.
|
|
45
|
-
this.
|
|
41
|
+
constructor(container) {
|
|
42
|
+
this.sessionManager = null;
|
|
43
|
+
this.httpServer = null;
|
|
44
|
+
this.container = container ?? (0, container_js_1.createAppContainer)();
|
|
45
|
+
this.featureFlags = this.container.featureFlags;
|
|
46
|
+
if (this.featureFlags.isEnabled('sessionTools')) {
|
|
47
|
+
this.sessionManager = new index_js_1.SessionManager();
|
|
48
|
+
this.httpServer = new index_js_1.HttpServer(this.sessionManager, { autoOpen: false });
|
|
49
|
+
this.sessionTools = (0, session_tools_js_1.createSessionTools)(this.sessionManager, this.httpServer);
|
|
50
|
+
console.error('[FeatureFlags] Session tools enabled');
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
this.sessionTools = [];
|
|
54
|
+
console.error('[FeatureFlags] Session tools disabled (enable with WORKRAIL_ENABLE_SESSION_TOOLS=true)');
|
|
55
|
+
}
|
|
46
56
|
}
|
|
47
57
|
async initialize() {
|
|
48
|
-
|
|
58
|
+
if (this.featureFlags.isEnabled('sessionTools') && this.httpServer) {
|
|
59
|
+
await this.httpServer.start();
|
|
60
|
+
console.error('[FeatureFlags] Dashboard server started');
|
|
61
|
+
}
|
|
49
62
|
}
|
|
50
63
|
getSessionTools() {
|
|
51
64
|
return this.sessionTools;
|
|
52
65
|
}
|
|
53
66
|
async handleSessionTool(name, args) {
|
|
67
|
+
if (!this.featureFlags.isEnabled('sessionTools') || !this.sessionManager || !this.httpServer) {
|
|
68
|
+
return {
|
|
69
|
+
content: [{
|
|
70
|
+
type: "text",
|
|
71
|
+
text: JSON.stringify({
|
|
72
|
+
error: 'Session tools are not enabled. Set WORKRAIL_ENABLE_SESSION_TOOLS=true to enable.',
|
|
73
|
+
tool: name
|
|
74
|
+
}, null, 2)
|
|
75
|
+
}],
|
|
76
|
+
isError: true
|
|
77
|
+
};
|
|
78
|
+
}
|
|
54
79
|
return (0, session_tools_js_1.handleSessionTool)(name, args, this.sessionManager, this.httpServer);
|
|
55
80
|
}
|
|
56
81
|
async callWorkflowMethod(method, params) {
|
package/package.json
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="100%" height="100%" viewBox="0 0 2021 1081" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
|
4
|
+
<g id="Artboard1" transform="matrix(1,0,0,0.637382,-465,-607.425118)">
|
|
5
|
+
<rect x="465" y="953" width="2021" height="1696" style="fill:none;"/>
|
|
6
|
+
<g transform="matrix(1,0,0,1.568918,1474.921541,2274.181449)">
|
|
7
|
+
<g transform="matrix(1,0,0,1,-996.300469,-814.404769)">
|
|
8
|
+
<clipPath id="_clip1">
|
|
9
|
+
<rect x="0" y="0" width="1992.601" height="1628.81"/>
|
|
10
|
+
</clipPath>
|
|
11
|
+
<g clip-path="url(#_clip1)">
|
|
12
|
+
<g transform="matrix(0.416667,0,0,-0.416667,-1136.565729,2841.542938)">
|
|
13
|
+
<path d="M7154,6805C7032,6778 6928,6704 6847,6586C6782,6490 6708,6322 6430,5645C6286,5293 6164,5002 6160,4997C6157,4993 6040,5175 5901,5402C5761,5629 5600,5893 5541,5987L5435,6160L5362,6160C5290,6160 5289,6160 5301,6138C5332,6081 6161,4736 6174,4722C6184,4712 6192,4724 6215,4782C6231,4822 6313,5024 6398,5230C6483,5436 6592,5702 6640,5820C6872,6385 6923,6491 7009,6583C7084,6664 7113,6674 7275,6678L7415,6682L7463,6745C7489,6779 7510,6810 7510,6814C7510,6826 7216,6819 7154,6805Z" style="fill-rule:nonzero;"/>
|
|
14
|
+
<path d="M2732,6782C2739,6772 2763,6741 2785,6712L2825,6661L2950,6660C3232,6658 3269,6611 3570,5885C3643,5709 3781,5374 3876,5141C3971,4908 4051,4715 4054,4712C4057,4709 4062,4709 4063,4711C4068,4716 4477,5385 4639,5652C4708,5766 4769,5859 4773,5857C4778,5856 4949,5524 5154,5120L5526,4385L5672,4379L5475,4767C4986,5730 4785,6120 4779,6120C4775,6120 4746,6076 4715,6023C4683,5969 4552,5754 4425,5545C4297,5336 4169,5126 4141,5078C4112,5029 4086,4990 4082,4990C4075,4990 4027,5104 3824,5600C3531,6319 3476,6443 3402,6556C3322,6680 3209,6765 3092,6789C3063,6795 2967,6800 2879,6800C2726,6800 2719,6799 2732,6782Z" style="fill-rule:nonzero;"/>
|
|
15
|
+
<path d="M6650,6779C6450,6750 6333,6657 6178,6405C6105,6285 5807,5739 5807,5725C5807,5706 5874,5600 5881,5608C5884,5612 5952,5734 6030,5880C6308,6396 6388,6521 6518,6641C6558,6678 6624,6726 6667,6748C6747,6790 6745,6793 6650,6779Z" style="fill-rule:nonzero;"/>
|
|
16
|
+
<path d="M3566,6737C3786,6616 3854,6525 4217,5860C4291,5725 4354,5612 4358,5608C4362,5604 4380,5629 4399,5664L4433,5728L4390,5806C4067,6396 3996,6513 3901,6607C3811,6697 3698,6749 3560,6765L3505,6771L3566,6737Z" style="fill-rule:nonzero;"/>
|
|
17
|
+
<path d="M6880,6741C6846,6722 6751,6629 6717,6581C6703,6559 6690,6556 6598,6547L6495,6537L6450,6472C6425,6436 6403,6402 6401,6397C6399,6391 6435,6389 6504,6392C6583,6396 6610,6395 6607,6386C6604,6380 6579,6322 6550,6257L6497,6139L6255,6143L6213,6065C6189,6022 6171,5985 6173,5984C6175,5982 6229,5975 6293,5969C6357,5962 6410,5953 6410,5948C6410,5937 6299,5678 6289,5667C6283,5660 6101,5688 6040,5705C6019,5711 5933,5551 5951,5540C5957,5535 6015,5517 6079,5499C6143,5481 6197,5465 6199,5464C6201,5462 6181,5411 6155,5351C6111,5249 6108,5238 6120,5210C6127,5194 6135,5180 6139,5180C6142,5180 6163,5224 6184,5278C6268,5486 6639,6349 6680,6430C6739,6547 6813,6652 6879,6711C6937,6763 6937,6771 6880,6741Z" style="fill-rule:nonzero;"/>
|
|
18
|
+
<path d="M3372,6681C3455,6604 3514,6516 3585,6368C3633,6265 3931,5568 4045,5290C4071,5227 4094,5173 4095,5172C4097,5170 4105,5181 4114,5198C4128,5226 4127,5232 4085,5333C4061,5392 4044,5441 4048,5443C4052,5446 4109,5464 4175,5485C4241,5505 4297,5524 4299,5526C4307,5534 4226,5690 4214,5690C4208,5690 4153,5679 4092,5665C4031,5651 3975,5640 3967,5640C3959,5640 3929,5696 3892,5784C3858,5864 3830,5931 3830,5933C3830,5936 3884,5944 3950,5950C4024,5958 4070,5967 4070,5974C4069,5980 4052,6016 4031,6054L3992,6122L3869,6121L3745,6120L3692,6237C3664,6302 3640,6361 3640,6368C3640,6377 3663,6379 3740,6374C3795,6370 3840,6371 3840,6375C3840,6379 3819,6414 3794,6451L3747,6519L3549,6533L3504,6592C3461,6647 3369,6730 3350,6730C3345,6730 3333,6733 3323,6737C3313,6741 3335,6716 3372,6681Z" style="fill-rule:nonzero;"/>
|
|
19
|
+
<path d="M4850,6155C4850,6153 4917,6024 4999,5868C5080,5712 5193,5495 5250,5385C5306,5275 5432,5030 5530,4840C5628,4650 5721,4469 5736,4438C5760,4388 5768,4380 5792,4380C5807,4380 5820,4382 5820,4385C5820,4388 5809,4413 5795,4439L5771,4488L5895,4574C5963,4622 6025,4663 6032,4665C6040,4668 6057,4649 6074,4617L6103,4565L6116,4595C6126,4621 6126,4629 6110,4655C5992,4852 5286,6024 5251,6082C5215,6143 5200,6160 5181,6160C5164,6160 5160,6156 5164,6145C5167,6137 5173,6123 5176,6115C5181,6102 5164,6100 5052,6100L4922,6100L4910,6130C4901,6151 4891,6160 4874,6160C4861,6160 4850,6158 4850,6155ZM5347,5843C5384,5778 5416,5723 5418,5719C5419,5716 5381,5710 5333,5706C5285,5702 5222,5696 5193,5693L5141,5687L5078,5811C5044,5879 5014,5938 5012,5942C5010,5946 5053,5951 5107,5953C5161,5954 5221,5957 5242,5958L5278,5960L5347,5843ZM5597,5420C5638,5352 5672,5292 5673,5287C5675,5277 5409,5199 5397,5207C5393,5209 5356,5279 5315,5360L5240,5509L5273,5515C5290,5518 5339,5527 5380,5535C5519,5560 5512,5563 5597,5420ZM5845,5003C5877,4949 5911,4891 5922,4873L5940,4842L5804,4766C5728,4724 5666,4691 5665,4692C5652,4711 5510,4991 5510,4998C5510,5008 5771,5110 5781,5104C5784,5102 5813,5057 5845,5003Z" style="fill-rule:nonzero;"/>
|
|
20
|
+
<path d="M4438,5173C4261,4877 4113,4632 4111,4627C4110,4623 4114,4606 4120,4589L4133,4559L4163,4612C4179,4641 4194,4666 4195,4668C4198,4672 4448,4501 4455,4490C4458,4485 4449,4458 4435,4430L4410,4380L4475,4380L4644,4713C4737,4895 4847,5108 4888,5184C4961,5321 4962,5324 4947,5354C4933,5383 4931,5383 4924,5365C4920,5354 4899,5313 4878,5274L4839,5202L4712,5236C4642,5255 4580,5272 4573,5274C4565,5278 4575,5305 4605,5357C4630,5400 4665,5461 4683,5493L4715,5552L4783,5546L4850,5540L4809,5622C4786,5668 4766,5706 4765,5708C4763,5710 4616,5469 4438,5173ZM4595,5054C4661,5029 4719,5005 4723,5001C4729,4995 4598,4723 4574,4692C4570,4687 4312,4829 4306,4839C4299,4850 4450,5100 4464,5100C4470,5100 4529,5079 4595,5054Z" style="fill-rule:nonzero;"/>
|
|
21
|
+
<path d="M5004,5241L4568,4379L4642,4382L4715,4385L5075,5099L5040,5170L5004,5241Z" style="fill-rule:nonzero;"/>
|
|
22
|
+
</g>
|
|
23
|
+
</g>
|
|
24
|
+
</g>
|
|
25
|
+
</g>
|
|
26
|
+
</g>
|
|
27
|
+
</svg>
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
3
|
+
<svg width="100%" height="100%" viewBox="0 0 2021 1081" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
|
4
|
+
<g id="Artboard1" transform="matrix(1,0,0,0.637382,-465,-607.425118)">
|
|
5
|
+
<rect x="465" y="953" width="2021" height="1696" style="fill:none;"/>
|
|
6
|
+
<g transform="matrix(1,0,0,1.568918,1474.921541,2274.181449)">
|
|
7
|
+
<g transform="matrix(1,0,0,1,-996.300469,-814.404769)">
|
|
8
|
+
<clipPath id="_clip1">
|
|
9
|
+
<rect x="0" y="0" width="1992.601" height="1628.81"/>
|
|
10
|
+
</clipPath>
|
|
11
|
+
<g clip-path="url(#_clip1)">
|
|
12
|
+
<g transform="matrix(0.416667,0,0,-0.416667,-1136.565729,2841.542938)">
|
|
13
|
+
<path d="M7154,6805C7032,6778 6928,6704 6847,6586C6782,6490 6708,6322 6430,5645C6286,5293 6164,5002 6160,4997C6157,4993 6040,5175 5901,5402C5761,5629 5600,5893 5541,5987L5435,6160L5362,6160C5290,6160 5289,6160 5301,6138C5332,6081 6161,4736 6174,4722C6184,4712 6192,4724 6215,4782C6231,4822 6313,5024 6398,5230C6483,5436 6592,5702 6640,5820C6872,6385 6923,6491 7009,6583C7084,6664 7113,6674 7275,6678L7415,6682L7463,6745C7489,6779 7510,6810 7510,6814C7510,6826 7216,6819 7154,6805Z" style="fill-rule:nonzero;"/>
|
|
14
|
+
<path d="M2732,6782C2739,6772 2763,6741 2785,6712L2825,6661L2950,6660C3232,6658 3269,6611 3570,5885C3643,5709 3781,5374 3876,5141C3971,4908 4051,4715 4054,4712C4057,4709 4062,4709 4063,4711C4068,4716 4477,5385 4639,5652C4708,5766 4769,5859 4773,5857C4778,5856 4949,5524 5154,5120L5526,4385L5672,4379L5475,4767C4986,5730 4785,6120 4779,6120C4775,6120 4746,6076 4715,6023C4683,5969 4552,5754 4425,5545C4297,5336 4169,5126 4141,5078C4112,5029 4086,4990 4082,4990C4075,4990 4027,5104 3824,5600C3531,6319 3476,6443 3402,6556C3322,6680 3209,6765 3092,6789C3063,6795 2967,6800 2879,6800C2726,6800 2719,6799 2732,6782Z" style="fill-rule:nonzero;"/>
|
|
15
|
+
<path d="M6650,6779C6450,6750 6333,6657 6178,6405C6105,6285 5807,5739 5807,5725C5807,5706 5874,5600 5881,5608C5884,5612 5952,5734 6030,5880C6308,6396 6388,6521 6518,6641C6558,6678 6624,6726 6667,6748C6747,6790 6745,6793 6650,6779Z" style="fill-rule:nonzero;"/>
|
|
16
|
+
<path d="M3566,6737C3786,6616 3854,6525 4217,5860C4291,5725 4354,5612 4358,5608C4362,5604 4380,5629 4399,5664L4433,5728L4390,5806C4067,6396 3996,6513 3901,6607C3811,6697 3698,6749 3560,6765L3505,6771L3566,6737Z" style="fill-rule:nonzero;"/>
|
|
17
|
+
<path d="M6880,6741C6846,6722 6751,6629 6717,6581C6703,6559 6690,6556 6598,6547L6495,6537L6450,6472C6425,6436 6403,6402 6401,6397C6399,6391 6435,6389 6504,6392C6583,6396 6610,6395 6607,6386C6604,6380 6579,6322 6550,6257L6497,6139L6255,6143L6213,6065C6189,6022 6171,5985 6173,5984C6175,5982 6229,5975 6293,5969C6357,5962 6410,5953 6410,5948C6410,5937 6299,5678 6289,5667C6283,5660 6101,5688 6040,5705C6019,5711 5933,5551 5951,5540C5957,5535 6015,5517 6079,5499C6143,5481 6197,5465 6199,5464C6201,5462 6181,5411 6155,5351C6111,5249 6108,5238 6120,5210C6127,5194 6135,5180 6139,5180C6142,5180 6163,5224 6184,5278C6268,5486 6639,6349 6680,6430C6739,6547 6813,6652 6879,6711C6937,6763 6937,6771 6880,6741Z" style="fill-rule:nonzero;"/>
|
|
18
|
+
<path d="M3372,6681C3455,6604 3514,6516 3585,6368C3633,6265 3931,5568 4045,5290C4071,5227 4094,5173 4095,5172C4097,5170 4105,5181 4114,5198C4128,5226 4127,5232 4085,5333C4061,5392 4044,5441 4048,5443C4052,5446 4109,5464 4175,5485C4241,5505 4297,5524 4299,5526C4307,5534 4226,5690 4214,5690C4208,5690 4153,5679 4092,5665C4031,5651 3975,5640 3967,5640C3959,5640 3929,5696 3892,5784C3858,5864 3830,5931 3830,5933C3830,5936 3884,5944 3950,5950C4024,5958 4070,5967 4070,5974C4069,5980 4052,6016 4031,6054L3992,6122L3869,6121L3745,6120L3692,6237C3664,6302 3640,6361 3640,6368C3640,6377 3663,6379 3740,6374C3795,6370 3840,6371 3840,6375C3840,6379 3819,6414 3794,6451L3747,6519L3549,6533L3504,6592C3461,6647 3369,6730 3350,6730C3345,6730 3333,6733 3323,6737C3313,6741 3335,6716 3372,6681Z" style="fill-rule:nonzero;"/>
|
|
19
|
+
<path d="M4850,6155C4850,6153 4917,6024 4999,5868C5080,5712 5193,5495 5250,5385C5306,5275 5432,5030 5530,4840C5628,4650 5721,4469 5736,4438C5760,4388 5768,4380 5792,4380C5807,4380 5820,4382 5820,4385C5820,4388 5809,4413 5795,4439L5771,4488L5895,4574C5963,4622 6025,4663 6032,4665C6040,4668 6057,4649 6074,4617L6103,4565L6116,4595C6126,4621 6126,4629 6110,4655C5992,4852 5286,6024 5251,6082C5215,6143 5200,6160 5181,6160C5164,6160 5160,6156 5164,6145C5167,6137 5173,6123 5176,6115C5181,6102 5164,6100 5052,6100L4922,6100L4910,6130C4901,6151 4891,6160 4874,6160C4861,6160 4850,6158 4850,6155ZM5347,5843C5384,5778 5416,5723 5418,5719C5419,5716 5381,5710 5333,5706C5285,5702 5222,5696 5193,5693L5141,5687L5078,5811C5044,5879 5014,5938 5012,5942C5010,5946 5053,5951 5107,5953C5161,5954 5221,5957 5242,5958L5278,5960L5347,5843ZM5597,5420C5638,5352 5672,5292 5673,5287C5675,5277 5409,5199 5397,5207C5393,5209 5356,5279 5315,5360L5240,5509L5273,5515C5290,5518 5339,5527 5380,5535C5519,5560 5512,5563 5597,5420ZM5845,5003C5877,4949 5911,4891 5922,4873L5940,4842L5804,4766C5728,4724 5666,4691 5665,4692C5652,4711 5510,4991 5510,4998C5510,5008 5771,5110 5781,5104C5784,5102 5813,5057 5845,5003Z" style="fill-rule:nonzero;"/>
|
|
20
|
+
<path d="M4438,5173C4261,4877 4113,4632 4111,4627C4110,4623 4114,4606 4120,4589L4133,4559L4163,4612C4179,4641 4194,4666 4195,4668C4198,4672 4448,4501 4455,4490C4458,4485 4449,4458 4435,4430L4410,4380L4475,4380L4644,4713C4737,4895 4847,5108 4888,5184C4961,5321 4962,5324 4947,5354C4933,5383 4931,5383 4924,5365C4920,5354 4899,5313 4878,5274L4839,5202L4712,5236C4642,5255 4580,5272 4573,5274C4565,5278 4575,5305 4605,5357C4630,5400 4665,5461 4683,5493L4715,5552L4783,5546L4850,5540L4809,5622C4786,5668 4766,5706 4765,5708C4763,5710 4616,5469 4438,5173ZM4595,5054C4661,5029 4719,5005 4723,5001C4729,4995 4598,4723 4574,4692C4570,4687 4312,4829 4306,4839C4299,4850 4450,5100 4464,5100C4470,5100 4529,5079 4595,5054Z" style="fill-rule:nonzero;"/>
|
|
21
|
+
<path d="M5004,5241L4568,4379L4642,4382L4715,4385L5075,5099L5040,5170L5004,5241Z" style="fill-rule:nonzero;"/>
|
|
22
|
+
</g>
|
|
23
|
+
</g>
|
|
24
|
+
</g>
|
|
25
|
+
</g>
|
|
26
|
+
</g>
|
|
27
|
+
</svg>
|