@autoweb/domain-models 1.0.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/README.md +100 -0
- package/index.d.ts +594 -0
- package/index.js +3 -0
- package/package.json +55 -0
- package/python-models/__init__.py +68 -0
- package/python-models/action-configs.py +1112 -0
- package/python-models/build/lib/floweb_models/__init__.py +194 -0
- package/python-models/build/lib/floweb_models/action_configs.py +783 -0
- package/python-models/build/lib/floweb_models/debug.py +209 -0
- package/python-models/build/lib/floweb_models/debug_models.py +141 -0
- package/python-models/build/lib/floweb_models/environment.py +158 -0
- package/python-models/build/lib/floweb_models/execution_results.py +208 -0
- package/python-models/build/lib/floweb_models/flow.py +345 -0
- package/python-models/build/lib/floweb_models/flow_validation.py +316 -0
- package/python-models/build/lib/floweb_models/parallel_execution.py +258 -0
- package/python-models/build/lib/floweb_models/performance_test.py +605 -0
- package/python-models/build/lib/floweb_models/websocket_communication.py +697 -0
- package/python-models/debug.py +209 -0
- package/python-models/dist/floweb_domain_models-1.0.0-py3-none-any.whl +0 -0
- package/python-models/environment.py +158 -0
- package/python-models/execution-results.py +208 -0
- package/python-models/flow-validation.py +316 -0
- package/python-models/flow.py +369 -0
- package/python-models/floweb_domain_models.egg-info/PKG-INFO +9 -0
- package/python-models/floweb_domain_models.egg-info/SOURCES.txt +16 -0
- package/python-models/floweb_domain_models.egg-info/dependency_links.txt +1 -0
- package/python-models/floweb_domain_models.egg-info/requires.txt +1 -0
- package/python-models/floweb_domain_models.egg-info/top_level.txt +1 -0
- package/python-models/floweb_models/__init__.py +194 -0
- package/python-models/floweb_models/__pycache__/__init__.cpython-312.pyc +0 -0
- package/python-models/floweb_models/__pycache__/action_configs.cpython-312.pyc +0 -0
- package/python-models/floweb_models/__pycache__/debug.cpython-312.pyc +0 -0
- package/python-models/floweb_models/__pycache__/debug_models.cpython-312.pyc +0 -0
- package/python-models/floweb_models/__pycache__/environment.cpython-312.pyc +0 -0
- package/python-models/floweb_models/__pycache__/execution_results.cpython-312.pyc +0 -0
- package/python-models/floweb_models/__pycache__/flow.cpython-312.pyc +0 -0
- package/python-models/floweb_models/__pycache__/flow_validation.cpython-312.pyc +0 -0
- package/python-models/floweb_models/__pycache__/parallel_execution.cpython-312.pyc +0 -0
- package/python-models/floweb_models/__pycache__/performance_test.cpython-312.pyc +0 -0
- package/python-models/floweb_models/__pycache__/websocket_communication.cpython-312.pyc +0 -0
- package/python-models/floweb_models/action_configs.py +1062 -0
- package/python-models/floweb_models/debug.py +209 -0
- package/python-models/floweb_models/debug_models.py +141 -0
- package/python-models/floweb_models/environment.py +158 -0
- package/python-models/floweb_models/execution_results.py +208 -0
- package/python-models/floweb_models/flow.py +345 -0
- package/python-models/floweb_models/flow_validation.py +316 -0
- package/python-models/floweb_models/parallel_execution.py +229 -0
- package/python-models/floweb_models/performance_test.py +605 -0
- package/python-models/floweb_models/websocket_communication.py +697 -0
- package/python-models/floweb_models.egg-info/PKG-INFO +9 -0
- package/python-models/floweb_models.egg-info/SOURCES.txt +16 -0
- package/python-models/floweb_models.egg-info/dependency_links.txt +1 -0
- package/python-models/floweb_models.egg-info/requires.txt +1 -0
- package/python-models/floweb_models.egg-info/top_level.txt +1 -0
- package/python-models/parallel-execution.py +475 -0
- package/python-models/performance-test.py +605 -0
- package/python-models/setup.py +13 -0
- package/python-models/websocket-communication.py +697 -0
- package/schemas/action-configs.json +1501 -0
- package/schemas/debug.json +203 -0
- package/schemas/environment.json +165 -0
- package/schemas/execution-results.json +209 -0
- package/schemas/flow-validation.json +311 -0
- package/schemas/flow.json +381 -0
- package/schemas/parallel-execution.json +219 -0
- package/schemas/performance-test.json +600 -0
- package/schemas/websocket-communication.json +1118 -0
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://floweb.com/schemas/debug.json",
|
|
4
|
+
"title": "Debug Models",
|
|
5
|
+
"description": "Schema for debug session management, states, and execution control",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"$defs": {
|
|
8
|
+
"DebugState": {
|
|
9
|
+
"type": "string",
|
|
10
|
+
"enum": [
|
|
11
|
+
"ready",
|
|
12
|
+
"running",
|
|
13
|
+
"paused",
|
|
14
|
+
"stepping",
|
|
15
|
+
"completed",
|
|
16
|
+
"error",
|
|
17
|
+
"stopped"
|
|
18
|
+
],
|
|
19
|
+
"description": "Debug session states following the state machine specification"
|
|
20
|
+
},
|
|
21
|
+
"PauseReason": {
|
|
22
|
+
"type": "string",
|
|
23
|
+
"enum": [
|
|
24
|
+
"breakpoint",
|
|
25
|
+
"manual",
|
|
26
|
+
"error",
|
|
27
|
+
"step"
|
|
28
|
+
],
|
|
29
|
+
"description": "Reasons for debug execution pause"
|
|
30
|
+
},
|
|
31
|
+
"Breakpoint": {
|
|
32
|
+
"type": "object",
|
|
33
|
+
"description": "Represents a breakpoint in debug execution",
|
|
34
|
+
"properties": {
|
|
35
|
+
"nodeId": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"description": "Action/node ID where breakpoint is set"
|
|
38
|
+
},
|
|
39
|
+
"enabled": {
|
|
40
|
+
"type": "boolean",
|
|
41
|
+
"description": "Whether the breakpoint is active"
|
|
42
|
+
},
|
|
43
|
+
"hitCount": {
|
|
44
|
+
"type": "integer",
|
|
45
|
+
"description": "Number of times this breakpoint has been hit",
|
|
46
|
+
"default": 0
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
"required": ["nodeId", "enabled"]
|
|
50
|
+
},
|
|
51
|
+
"DebugExecutionInfo": {
|
|
52
|
+
"type": "object",
|
|
53
|
+
"description": "Information about current debug execution state",
|
|
54
|
+
"properties": {
|
|
55
|
+
"currentNodeId": {
|
|
56
|
+
"type": ["string", "null"],
|
|
57
|
+
"description": "ID of the action currently being executed or about to execute"
|
|
58
|
+
},
|
|
59
|
+
"currentActionIndex": {
|
|
60
|
+
"type": "integer",
|
|
61
|
+
"description": "Zero-based index of current action in execution order",
|
|
62
|
+
"default": 0
|
|
63
|
+
},
|
|
64
|
+
"totalActions": {
|
|
65
|
+
"type": "integer",
|
|
66
|
+
"description": "Total number of actions in the flow",
|
|
67
|
+
"default": 0
|
|
68
|
+
},
|
|
69
|
+
"executedActions": {
|
|
70
|
+
"type": "array",
|
|
71
|
+
"items": {
|
|
72
|
+
"type": "string"
|
|
73
|
+
},
|
|
74
|
+
"description": "List of action IDs that have been executed",
|
|
75
|
+
"default": []
|
|
76
|
+
},
|
|
77
|
+
"nextBreakpoint": {
|
|
78
|
+
"type": ["string", "null"],
|
|
79
|
+
"description": "ID of the next breakpoint that will be hit"
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
"required": ["currentNodeId", "currentActionIndex", "totalActions", "executedActions", "nextBreakpoint"]
|
|
83
|
+
},
|
|
84
|
+
"DebugSession": {
|
|
85
|
+
"type": "object",
|
|
86
|
+
"description": "Represents a single debug execution session",
|
|
87
|
+
"properties": {
|
|
88
|
+
"sessionId": {
|
|
89
|
+
"type": "string",
|
|
90
|
+
"description": "Unique identifier for the debug session"
|
|
91
|
+
},
|
|
92
|
+
"flowId": {
|
|
93
|
+
"type": "string",
|
|
94
|
+
"description": "ID of the flow being debugged"
|
|
95
|
+
},
|
|
96
|
+
"breakpoints": {
|
|
97
|
+
"type": "array",
|
|
98
|
+
"items": {
|
|
99
|
+
"type": "string"
|
|
100
|
+
},
|
|
101
|
+
"description": "Set of action IDs where execution should pause",
|
|
102
|
+
"default": []
|
|
103
|
+
},
|
|
104
|
+
"state": {
|
|
105
|
+
"$ref": "#/$defs/DebugState",
|
|
106
|
+
"default": "ready"
|
|
107
|
+
},
|
|
108
|
+
"currentActionId": {
|
|
109
|
+
"type": ["string", "null"],
|
|
110
|
+
"description": "ID of the action currently being executed or about to execute"
|
|
111
|
+
},
|
|
112
|
+
"currentActionIndex": {
|
|
113
|
+
"type": "integer",
|
|
114
|
+
"description": "Zero-based index of current action in execution order",
|
|
115
|
+
"default": 0
|
|
116
|
+
},
|
|
117
|
+
"executedActions": {
|
|
118
|
+
"type": "array",
|
|
119
|
+
"items": {
|
|
120
|
+
"type": "string"
|
|
121
|
+
},
|
|
122
|
+
"description": "List of action IDs that have been executed",
|
|
123
|
+
"default": []
|
|
124
|
+
},
|
|
125
|
+
"pauseRequested": {
|
|
126
|
+
"type": "boolean",
|
|
127
|
+
"description": "Flag indicating manual pause was requested",
|
|
128
|
+
"default": false
|
|
129
|
+
},
|
|
130
|
+
"stopRequested": {
|
|
131
|
+
"type": "boolean",
|
|
132
|
+
"description": "Flag indicating stop was requested",
|
|
133
|
+
"default": false
|
|
134
|
+
},
|
|
135
|
+
"createdAt": {
|
|
136
|
+
"type": "number",
|
|
137
|
+
"description": "Timestamp when session was created (Unix timestamp)"
|
|
138
|
+
},
|
|
139
|
+
"lastUpdated": {
|
|
140
|
+
"type": "number",
|
|
141
|
+
"description": "Timestamp of last state change (Unix timestamp)"
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
"required": ["sessionId", "flowId", "breakpoints", "state"]
|
|
145
|
+
},
|
|
146
|
+
"DebugActionUpdate": {
|
|
147
|
+
"type": "object",
|
|
148
|
+
"description": "Real-time update sent during debug execution",
|
|
149
|
+
"properties": {
|
|
150
|
+
"type": {
|
|
151
|
+
"type": "string",
|
|
152
|
+
"enum": [
|
|
153
|
+
"debug_action_started",
|
|
154
|
+
"debug_action_completed",
|
|
155
|
+
"debug_action_failed",
|
|
156
|
+
"debug_paused",
|
|
157
|
+
"debug_resumed",
|
|
158
|
+
"debug_completed",
|
|
159
|
+
"debug_stopped",
|
|
160
|
+
"debug_error"
|
|
161
|
+
],
|
|
162
|
+
"description": "Type of debug update"
|
|
163
|
+
},
|
|
164
|
+
"sessionId": {
|
|
165
|
+
"type": "string",
|
|
166
|
+
"description": "Debug session ID"
|
|
167
|
+
},
|
|
168
|
+
"actionId": {
|
|
169
|
+
"type": ["string", "null"],
|
|
170
|
+
"description": "Action ID related to this update"
|
|
171
|
+
},
|
|
172
|
+
"actionIndex": {
|
|
173
|
+
"type": ["integer", "null"],
|
|
174
|
+
"description": "Index of the action in execution order"
|
|
175
|
+
},
|
|
176
|
+
"state": {
|
|
177
|
+
"$ref": "#/$defs/DebugState",
|
|
178
|
+
"description": "Current debug state"
|
|
179
|
+
},
|
|
180
|
+
"pauseReason": {
|
|
181
|
+
"oneOf": [
|
|
182
|
+
{"$ref": "#/$defs/PauseReason"},
|
|
183
|
+
{"type": "null"}
|
|
184
|
+
],
|
|
185
|
+
"description": "Reason for pause if state is paused"
|
|
186
|
+
},
|
|
187
|
+
"result": {
|
|
188
|
+
"type": ["object", "null"],
|
|
189
|
+
"description": "Action execution result if available"
|
|
190
|
+
},
|
|
191
|
+
"error": {
|
|
192
|
+
"type": ["string", "null"],
|
|
193
|
+
"description": "Error message if action failed"
|
|
194
|
+
},
|
|
195
|
+
"variables": {
|
|
196
|
+
"type": ["object", "null"],
|
|
197
|
+
"description": "Current flow variables state"
|
|
198
|
+
}
|
|
199
|
+
},
|
|
200
|
+
"required": ["type", "sessionId", "state"]
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://floweb.com/schemas/environment.json",
|
|
4
|
+
"title": "Environment and Global Variables Configuration",
|
|
5
|
+
"description": "Schema for environment configurations and global variables used in Floweb automation flows",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"environments": {
|
|
9
|
+
"type": "array",
|
|
10
|
+
"description": "List of available environments",
|
|
11
|
+
"items": {
|
|
12
|
+
"$ref": "#/$defs/Environment"
|
|
13
|
+
},
|
|
14
|
+
"minItems": 0
|
|
15
|
+
},
|
|
16
|
+
"globalVariables": {
|
|
17
|
+
"type": "array",
|
|
18
|
+
"description": "List of global variables available across all environments",
|
|
19
|
+
"items": {
|
|
20
|
+
"$ref": "#/$defs/GlobalVariable"
|
|
21
|
+
},
|
|
22
|
+
"minItems": 0
|
|
23
|
+
},
|
|
24
|
+
"selectedEnvironmentId": {
|
|
25
|
+
"type": "string",
|
|
26
|
+
"description": "ID of the currently selected environment",
|
|
27
|
+
"pattern": "^[a-zA-Z0-9_-]+$"
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"required": ["environments", "globalVariables"],
|
|
31
|
+
"$defs": {
|
|
32
|
+
"Environment": {
|
|
33
|
+
"type": "object",
|
|
34
|
+
"description": "An environment configuration with its variables",
|
|
35
|
+
"properties": {
|
|
36
|
+
"id": {
|
|
37
|
+
"type": "string",
|
|
38
|
+
"description": "Unique identifier for the environment",
|
|
39
|
+
"pattern": "^[a-zA-Z0-9_-]+$",
|
|
40
|
+
"minLength": 1,
|
|
41
|
+
"maxLength": 50
|
|
42
|
+
},
|
|
43
|
+
"name": {
|
|
44
|
+
"type": "string",
|
|
45
|
+
"description": "Display name for the environment",
|
|
46
|
+
"minLength": 1,
|
|
47
|
+
"maxLength": 100
|
|
48
|
+
},
|
|
49
|
+
"description": {
|
|
50
|
+
"type": "string",
|
|
51
|
+
"description": "Description of the environment's purpose",
|
|
52
|
+
"maxLength": 500
|
|
53
|
+
},
|
|
54
|
+
"variables": {
|
|
55
|
+
"type": "array",
|
|
56
|
+
"description": "Environment-specific variables",
|
|
57
|
+
"items": {
|
|
58
|
+
"$ref": "#/$defs/Variable"
|
|
59
|
+
},
|
|
60
|
+
"minItems": 0
|
|
61
|
+
},
|
|
62
|
+
"isDefault": {
|
|
63
|
+
"type": "boolean",
|
|
64
|
+
"description": "Whether this is the default environment",
|
|
65
|
+
"default": false
|
|
66
|
+
},
|
|
67
|
+
"createdAt": {
|
|
68
|
+
"type": "string",
|
|
69
|
+
"format": "date-time",
|
|
70
|
+
"description": "ISO 8601 timestamp when the environment was created"
|
|
71
|
+
},
|
|
72
|
+
"updatedAt": {
|
|
73
|
+
"type": "string",
|
|
74
|
+
"format": "date-time",
|
|
75
|
+
"description": "ISO 8601 timestamp when the environment was last updated"
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
"required": ["id", "name", "variables", "isDefault"]
|
|
79
|
+
},
|
|
80
|
+
"GlobalVariable": {
|
|
81
|
+
"type": "object",
|
|
82
|
+
"description": "A global variable available across all environments",
|
|
83
|
+
"properties": {
|
|
84
|
+
"id": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"description": "Unique identifier for the global variable",
|
|
87
|
+
"pattern": "^[a-zA-Z0-9_-]+$",
|
|
88
|
+
"minLength": 1,
|
|
89
|
+
"maxLength": 50
|
|
90
|
+
},
|
|
91
|
+
"name": {
|
|
92
|
+
"type": "string",
|
|
93
|
+
"description": "Variable name used in flows",
|
|
94
|
+
"pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$",
|
|
95
|
+
"minLength": 1,
|
|
96
|
+
"maxLength": 50
|
|
97
|
+
},
|
|
98
|
+
"value": {
|
|
99
|
+
"type": "string",
|
|
100
|
+
"description": "The variable's value",
|
|
101
|
+
"minLength": 0,
|
|
102
|
+
"maxLength": 10000
|
|
103
|
+
},
|
|
104
|
+
"type": {
|
|
105
|
+
"type": "string",
|
|
106
|
+
"description": "Data type of the variable",
|
|
107
|
+
"enum": ["string", "number", "boolean", "url", "file", "json", "array"]
|
|
108
|
+
},
|
|
109
|
+
"description": {
|
|
110
|
+
"type": "string",
|
|
111
|
+
"description": "Description of the variable's purpose",
|
|
112
|
+
"maxLength": 500
|
|
113
|
+
},
|
|
114
|
+
"createdAt": {
|
|
115
|
+
"type": "string",
|
|
116
|
+
"format": "date-time",
|
|
117
|
+
"description": "ISO 8601 timestamp when the variable was created"
|
|
118
|
+
},
|
|
119
|
+
"updatedAt": {
|
|
120
|
+
"type": "string",
|
|
121
|
+
"format": "date-time",
|
|
122
|
+
"description": "ISO 8601 timestamp when the variable was last updated"
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
"required": ["id", "name", "value", "type"]
|
|
126
|
+
},
|
|
127
|
+
"Variable": {
|
|
128
|
+
"type": "object",
|
|
129
|
+
"description": "An environment-specific variable",
|
|
130
|
+
"properties": {
|
|
131
|
+
"id": {
|
|
132
|
+
"type": "string",
|
|
133
|
+
"description": "Unique identifier for the variable within this environment",
|
|
134
|
+
"pattern": "^[a-zA-Z0-9_-]+$",
|
|
135
|
+
"minLength": 1,
|
|
136
|
+
"maxLength": 50
|
|
137
|
+
},
|
|
138
|
+
"name": {
|
|
139
|
+
"type": "string",
|
|
140
|
+
"description": "Variable name used in flows",
|
|
141
|
+
"pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$",
|
|
142
|
+
"minLength": 1,
|
|
143
|
+
"maxLength": 50
|
|
144
|
+
},
|
|
145
|
+
"value": {
|
|
146
|
+
"type": "string",
|
|
147
|
+
"description": "The variable's value",
|
|
148
|
+
"minLength": 0,
|
|
149
|
+
"maxLength": 10000
|
|
150
|
+
},
|
|
151
|
+
"type": {
|
|
152
|
+
"type": "string",
|
|
153
|
+
"description": "Data type of the variable",
|
|
154
|
+
"enum": ["string", "number", "boolean", "url", "file", "json", "array"]
|
|
155
|
+
},
|
|
156
|
+
"description": {
|
|
157
|
+
"type": "string",
|
|
158
|
+
"description": "Description of the variable's purpose",
|
|
159
|
+
"maxLength": 500
|
|
160
|
+
}
|
|
161
|
+
},
|
|
162
|
+
"required": ["id", "name", "value", "type"]
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://floweb.com/schemas/execution-results.json",
|
|
4
|
+
"title": "Execution Results Models",
|
|
5
|
+
"description": "Schema for action execution results and flow reports",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"executionResults": {
|
|
9
|
+
"type": "object",
|
|
10
|
+
"properties": {
|
|
11
|
+
"actionResults": {
|
|
12
|
+
"type": "array",
|
|
13
|
+
"items": {
|
|
14
|
+
"$ref": "#/$defs/ActionResult"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"flowReports": {
|
|
18
|
+
"type": "array",
|
|
19
|
+
"items": {
|
|
20
|
+
"$ref": "#/$defs/FlowReport"
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"$defs": {
|
|
27
|
+
"ActionResult": {
|
|
28
|
+
"type": "object",
|
|
29
|
+
"description": "Result of executing an action",
|
|
30
|
+
"properties": {
|
|
31
|
+
"node_id": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"description": "Action node ID"
|
|
34
|
+
},
|
|
35
|
+
"action_type": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"description": "Type of action executed"
|
|
38
|
+
},
|
|
39
|
+
"config": {
|
|
40
|
+
"type": "object",
|
|
41
|
+
"description": "Action configuration used",
|
|
42
|
+
"additionalProperties": true
|
|
43
|
+
},
|
|
44
|
+
"start_time": {
|
|
45
|
+
"type": "integer",
|
|
46
|
+
"description": "Start timestamp in milliseconds"
|
|
47
|
+
},
|
|
48
|
+
"end_time": {
|
|
49
|
+
"type": "integer",
|
|
50
|
+
"description": "End timestamp in milliseconds"
|
|
51
|
+
},
|
|
52
|
+
"duration_seconds": {
|
|
53
|
+
"type": "number",
|
|
54
|
+
"minimum": 0,
|
|
55
|
+
"description": "Duration in seconds"
|
|
56
|
+
},
|
|
57
|
+
"success": {
|
|
58
|
+
"type": "boolean",
|
|
59
|
+
"description": "Whether the action succeeded"
|
|
60
|
+
},
|
|
61
|
+
"message": {
|
|
62
|
+
"type": "string",
|
|
63
|
+
"description": "Result message"
|
|
64
|
+
},
|
|
65
|
+
"error": {
|
|
66
|
+
"type": "string",
|
|
67
|
+
"description": "Error message if failed"
|
|
68
|
+
},
|
|
69
|
+
"screenshot": {
|
|
70
|
+
"type": "string",
|
|
71
|
+
"description": "Base64 screenshot if taken"
|
|
72
|
+
},
|
|
73
|
+
"data": {
|
|
74
|
+
"type": "object",
|
|
75
|
+
"description": "Additional action-specific data",
|
|
76
|
+
"additionalProperties": true
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
"required": ["node_id", "action_type", "config", "start_time", "end_time", "duration_seconds", "success", "message"]
|
|
80
|
+
},
|
|
81
|
+
"FlowReport": {
|
|
82
|
+
"type": "object",
|
|
83
|
+
"description": "Complete report of flow execution",
|
|
84
|
+
"properties": {
|
|
85
|
+
"actions": {
|
|
86
|
+
"type": "array",
|
|
87
|
+
"items": {
|
|
88
|
+
"$ref": "#/$defs/ActionResult"
|
|
89
|
+
},
|
|
90
|
+
"description": "Results of all actions"
|
|
91
|
+
},
|
|
92
|
+
"variables": {
|
|
93
|
+
"type": "object",
|
|
94
|
+
"description": "Variables used during execution (input/output)",
|
|
95
|
+
"patternProperties": {
|
|
96
|
+
".*": {
|
|
97
|
+
"type": "array",
|
|
98
|
+
"items": {
|
|
99
|
+
"type": "object",
|
|
100
|
+
"additionalProperties": true
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
"parameters": {
|
|
106
|
+
"type": "object",
|
|
107
|
+
"description": "Parameters used during execution (input/output)",
|
|
108
|
+
"properties": {
|
|
109
|
+
"input": {
|
|
110
|
+
"type": "array",
|
|
111
|
+
"items": {
|
|
112
|
+
"type": "object",
|
|
113
|
+
"additionalProperties": true
|
|
114
|
+
},
|
|
115
|
+
"default": []
|
|
116
|
+
},
|
|
117
|
+
"output": {
|
|
118
|
+
"type": "array",
|
|
119
|
+
"items": {
|
|
120
|
+
"type": "object",
|
|
121
|
+
"additionalProperties": true
|
|
122
|
+
},
|
|
123
|
+
"default": []
|
|
124
|
+
}
|
|
125
|
+
},
|
|
126
|
+
"default": {
|
|
127
|
+
"input": [],
|
|
128
|
+
"output": []
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
"output": {
|
|
132
|
+
"type": "object",
|
|
133
|
+
"description": "Final output",
|
|
134
|
+
"additionalProperties": true,
|
|
135
|
+
"default": {}
|
|
136
|
+
},
|
|
137
|
+
"recording": {
|
|
138
|
+
"type": "string",
|
|
139
|
+
"description": "Recording data (deprecated, use recording_file instead)"
|
|
140
|
+
},
|
|
141
|
+
"recording_file": {
|
|
142
|
+
"type": "string",
|
|
143
|
+
"description": "Path to the recording file on the server"
|
|
144
|
+
},
|
|
145
|
+
"recording_duration": {
|
|
146
|
+
"type": "number",
|
|
147
|
+
"minimum": 0,
|
|
148
|
+
"description": "Duration of the recording in seconds"
|
|
149
|
+
},
|
|
150
|
+
"flow_id": {
|
|
151
|
+
"type": "string",
|
|
152
|
+
"description": "ID of the executed flow"
|
|
153
|
+
},
|
|
154
|
+
"flow_name": {
|
|
155
|
+
"type": "string",
|
|
156
|
+
"description": "Name of the executed flow"
|
|
157
|
+
},
|
|
158
|
+
"start_time": {
|
|
159
|
+
"type": "integer",
|
|
160
|
+
"description": "Flow execution start timestamp"
|
|
161
|
+
},
|
|
162
|
+
"end_time": {
|
|
163
|
+
"type": "integer",
|
|
164
|
+
"description": "Flow execution end timestamp"
|
|
165
|
+
},
|
|
166
|
+
"total_duration": {
|
|
167
|
+
"type": "number",
|
|
168
|
+
"minimum": 0,
|
|
169
|
+
"description": "Total execution time in seconds"
|
|
170
|
+
},
|
|
171
|
+
"success": {
|
|
172
|
+
"type": "boolean",
|
|
173
|
+
"description": "Overall flow success status"
|
|
174
|
+
},
|
|
175
|
+
"error": {
|
|
176
|
+
"type": "string",
|
|
177
|
+
"description": "Error message if flow failed"
|
|
178
|
+
},
|
|
179
|
+
"environment": {
|
|
180
|
+
"type": "object",
|
|
181
|
+
"description": "Environment used during execution",
|
|
182
|
+
"additionalProperties": true
|
|
183
|
+
},
|
|
184
|
+
"browser_info": {
|
|
185
|
+
"type": "object",
|
|
186
|
+
"description": "Browser information",
|
|
187
|
+
"properties": {
|
|
188
|
+
"name": {"type": "string"},
|
|
189
|
+
"version": {"type": "string"},
|
|
190
|
+
"user_agent": {"type": "string"}
|
|
191
|
+
}
|
|
192
|
+
},
|
|
193
|
+
"performance_metrics": {
|
|
194
|
+
"type": "object",
|
|
195
|
+
"description": "Performance metrics collected during execution",
|
|
196
|
+
"properties": {
|
|
197
|
+
"total_actions": {"type": "integer", "minimum": 0},
|
|
198
|
+
"successful_actions": {"type": "integer", "minimum": 0},
|
|
199
|
+
"failed_actions": {"type": "integer", "minimum": 0},
|
|
200
|
+
"average_action_time": {"type": "number", "minimum": 0},
|
|
201
|
+
"total_network_requests": {"type": "integer", "minimum": 0},
|
|
202
|
+
"total_data_transferred": {"type": "integer", "minimum": 0}
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
},
|
|
206
|
+
"required": ["actions", "variables", "parameters", "output"]
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
}
|