improvement(executor): faster, more responsive workflow cancellation #17051
ci.yml
on: pull_request
Detect Version
0s
Test and Build
/
Test and Build
1m 28s
Check Docs Changes
Matrix: Build Dev ECR
Matrix: Build ARM64 (GHCR Only)
Matrix: Build AMD64
Migrate Dev DB
/
Apply Database Migrations
Matrix: Create GHCR Manifests
Process Docs
/
Process Documentation Embeddings
Create GitHub Release
0s
Annotations
10 errors and 6 warnings
|
executor/handlers/function/function-handler.test.ts > FunctionBlockHandler > should pass runtime context variables to function_execute:
apps/sim/executor/handlers/function/function-handler.test.ts#L195
AssertionError: expected "spy" to be called with arguments: [ 'function_execute', …(3) ]
Received:
1st spy call:
@@ -1,16 +1,34 @@
[
"function_execute",
- ObjectContaining {
+ {
+ "_context": {
+ "allowLargeValueWorkflowScope": undefined,
+ "enforceCredentialAccess": undefined,
+ "executionId": undefined,
+ "isDeployedContext": undefined,
+ "largeValueExecutionIds": undefined,
+ "userId": undefined,
+ "workflowId": "test-workflow-id",
+ "workspaceId": undefined,
+ },
+ "blockData": {},
+ "blockNameMapping": {},
+ "blockOutputSchemas": {},
+ "code": "return globalThis[\"__blockRef_0\"]",
"contextVariables": {
"__blockRef_0": {
"result": "from-block",
},
},
+ "envVars": {},
+ "language": "javascript",
+ "timeout": 300000,
+ "workflowVariables": {},
},
- false,
{
+ "executionContext": {
"activeExecutionPath": Set {},
"blockLogs": [],
"blockStates": Map {},
"completedLoops": Set {},
"decisions": {
@@ -22,7 +40,8 @@
"loopExecutions": Map {},
"metadata": {
"duration": 0,
},
"workflowId": "test-workflow-id",
+ },
},
]
Number of calls: 1
❯ executor/handlers/function/function-handler.test.ts:195:29
|
|
executor/handlers/function/function-handler.test.ts > FunctionBlockHandler > should use default timeout if not provided:
apps/sim/executor/handlers/function/function-handler.test.ts#L168
AssertionError: expected "spy" to be called with arguments: [ 'function_execute', …(3) ]
Received:
1st spy call:
@@ -1,12 +1,14 @@
[
"function_execute",
{
"_context": {
+ "allowLargeValueWorkflowScope": undefined,
"enforceCredentialAccess": undefined,
"executionId": undefined,
"isDeployedContext": undefined,
+ "largeValueExecutionIds": undefined,
"userId": undefined,
"workflowId": "test-workflow-id",
"workspaceId": undefined,
},
"blockData": {},
@@ -17,12 +19,12 @@
"envVars": {},
"language": "javascript",
"timeout": 300000,
"workflowVariables": {},
},
- false,
{
+ "executionContext": {
"activeExecutionPath": Set {},
"blockLogs": [],
"blockStates": Map {},
"completedLoops": Set {},
"decisions": {
@@ -34,7 +36,8 @@
"loopExecutions": Map {},
"metadata": {
"duration": 0,
},
"workflowId": "test-workflow-id",
+ },
},
]
Number of calls: 1
❯ executor/handlers/function/function-handler.test.ts:168:29
|
|
executor/handlers/function/function-handler.test.ts > FunctionBlockHandler > should execute function block with array code:
apps/sim/executor/handlers/function/function-handler.test.ts#L135
AssertionError: expected "spy" to be called with arguments: [ 'function_execute', { …(10) }, …(2) ]
Received:
1st spy call:
@@ -1,12 +1,14 @@
[
"function_execute",
{
"_context": {
+ "allowLargeValueWorkflowScope": undefined,
"enforceCredentialAccess": undefined,
"executionId": undefined,
"isDeployedContext": undefined,
+ "largeValueExecutionIds": undefined,
"userId": undefined,
"workflowId": "test-workflow-id",
"workspaceId": undefined,
},
"blockData": {},
@@ -18,12 +20,12 @@
"envVars": {},
"language": "javascript",
"timeout": 5000,
"workflowVariables": {},
},
- false,
{
+ "executionContext": {
"activeExecutionPath": Set {},
"blockLogs": [],
"blockStates": Map {},
"completedLoops": Set {},
"decisions": {
@@ -35,7 +37,8 @@
"loopExecutions": Map {},
"metadata": {
"duration": 0,
},
"workflowId": "test-workflow-id",
+ },
},
]
Number of calls: 1
❯ executor/handlers/function/function-handler.test.ts:135:29
|
|
executor/handlers/function/function-handler.test.ts > FunctionBlockHandler > should execute function block with string code:
apps/sim/executor/handlers/function/function-handler.test.ts#L94
AssertionError: expected "spy" to be called with arguments: [ 'function_execute', { …(10) }, …(2) ]
Received:
1st spy call:
@@ -1,12 +1,14 @@
[
"function_execute",
{
"_context": {
+ "allowLargeValueWorkflowScope": undefined,
"enforceCredentialAccess": undefined,
"executionId": undefined,
"isDeployedContext": undefined,
+ "largeValueExecutionIds": undefined,
"userId": undefined,
"workflowId": "test-workflow-id",
"workspaceId": undefined,
},
"blockData": {},
@@ -17,12 +19,12 @@
"envVars": {},
"language": "javascript",
"timeout": 10000,
"workflowVariables": {},
},
- false,
{
+ "executionContext": {
"activeExecutionPath": Set {},
"blockLogs": [],
"blockStates": Map {},
"completedLoops": Set {},
"decisions": {
@@ -34,7 +36,8 @@
"loopExecutions": Map {},
"metadata": {
"duration": 0,
},
"workflowId": "test-workflow-id",
+ },
},
]
Number of calls: 1
❯ executor/handlers/function/function-handler.test.ts:94:29
|
|
executor/handlers/condition/condition-handler.test.ts > ConditionBlockHandler > should pass correct parameters to function_execute tool:
apps/sim/executor/handlers/condition/condition-handler.test.ts#L169
AssertionError: expected "spy" to be called with arguments: [ 'function_execute', …(3) ]
Received:
1st spy call:
@@ -1,9 +1,12 @@
[
"function_execute",
- ObjectContaining {
+ {
"_context": {
+ "enforceCredentialAccess": undefined,
+ "isDeployedContext": undefined,
+ "userId": undefined,
"workflowId": "test-workflow-id",
"workspaceId": "test-workspace-id",
},
"blockData": {
"source-block-1": {
@@ -12,11 +15,13 @@
},
},
"blockNameMapping": {
"sourceblock": "source-block-1",
},
- "code": StringContaining "context.value > 5",
+ "blockOutputSchemas": undefined,
+ "code": "const context = {\"value\":10,\"text\":\"hello\"};
+ return Boolean(context.value > 5)",
"envVars": {
"API_KEY": "test-key",
},
"timeout": 5000,
"workflowVariables": {
@@ -25,12 +30,12 @@
"type": "plain",
"value": "john",
},
},
},
- false,
{
+ "executionContext": {
"activeExecutionPath": Set {},
"blockLogs": [],
"blockStates": Map {
"source-block-1" => {
"executed": true,
@@ -159,7 +164,8 @@
"type": "plain",
"value": "john",
},
},
"workspaceId": "test-workspace-id",
+ },
},
]
Number of calls: 1
❯ executor/handlers/condition/condition-handler.test.ts:169:29
|
|
executor/handlers/api/api-handler.test.ts > ApiBlockHandler > should handle null body by converting to undefined:
apps/sim/executor/handlers/api/api-handler.test.ts#L209
AssertionError: expected "executeTool" to be called with arguments: [ 'http_request', …(3) ]
Received:
1st executeTool call:
@@ -1,12 +1,22 @@
[
"http_request",
- ObjectContaining {
+ {
+ "_context": {
+ "callChain": undefined,
+ "enforceCredentialAccess": undefined,
+ "executionId": undefined,
+ "isDeployedContext": undefined,
+ "userId": undefined,
+ "workflowId": "test-workflow-id",
+ "workspaceId": undefined,
+ },
"body": undefined,
+ "url": "https://example.com/api",
},
- false,
{
+ "executionContext": {
"activeExecutionPath": Set {},
"blockLogs": [],
"blockStates": Map {},
"completedLoops": Set {},
"decisions": {
@@ -18,7 +28,8 @@
"loopExecutions": Map {},
"metadata": {
"duration": 0,
},
"workflowId": "test-workflow-id",
+ },
},
]
Number of calls: 1
❯ executor/handlers/api/api-handler.test.ts:209:29
|
|
executor/handlers/api/api-handler.test.ts > ApiBlockHandler > should keep non-JSON string body as string:
apps/sim/executor/handlers/api/api-handler.test.ts#L193
AssertionError: expected "executeTool" to be called with arguments: [ 'http_request', …(3) ]
Received:
1st executeTool call:
@@ -1,12 +1,22 @@
[
"http_request",
- ObjectContaining {
+ {
+ "_context": {
+ "callChain": undefined,
+ "enforceCredentialAccess": undefined,
+ "executionId": undefined,
+ "isDeployedContext": undefined,
+ "userId": undefined,
+ "workflowId": "test-workflow-id",
+ "workspaceId": undefined,
+ },
"body": "This is plain text",
+ "url": "https://example.com/api",
},
- false,
{
+ "executionContext": {
"activeExecutionPath": Set {},
"blockLogs": [],
"blockStates": Map {},
"completedLoops": Set {},
"decisions": {
@@ -18,7 +28,8 @@
"loopExecutions": Map {},
"metadata": {
"duration": 0,
},
"workflowId": "test-workflow-id",
+ },
},
]
Number of calls: 1
❯ executor/handlers/api/api-handler.test.ts:193:29
|
|
executor/handlers/api/api-handler.test.ts > ApiBlockHandler > should parse JSON string body correctly:
apps/sim/executor/handlers/api/api-handler.test.ts#L177
AssertionError: expected "executeTool" to be called with arguments: [ 'http_request', …(3) ]
Received:
1st executeTool call:
@@ -1,17 +1,27 @@
[
"http_request",
- ObjectContaining {
+ {
+ "_context": {
+ "callChain": undefined,
+ "enforceCredentialAccess": undefined,
+ "executionId": undefined,
+ "isDeployedContext": undefined,
+ "userId": undefined,
+ "workflowId": "test-workflow-id",
+ "workspaceId": undefined,
+ },
"body": {
"key": "value",
"nested": {
"num": 1,
},
},
+ "url": "https://example.com/api",
},
- false,
{
+ "executionContext": {
"activeExecutionPath": Set {},
"blockLogs": [],
"blockStates": Map {},
"completedLoops": Set {},
"decisions": {
@@ -23,7 +33,8 @@
"loopExecutions": Map {},
"metadata": {
"duration": 0,
},
"workflowId": "test-workflow-id",
+ },
},
]
Number of calls: 1
❯ executor/handlers/api/api-handler.test.ts:177:29
|
|
executor/handlers/api/api-handler.test.ts > ApiBlockHandler > should execute api block correctly with valid inputs:
apps/sim/executor/handlers/api/api-handler.test.ts#L112
AssertionError: expected "executeTool" to be called with arguments: [ 'http_request', { …(5) }, …(2) ]
Received:
1st executeTool call:
@@ -1,22 +1,28 @@
[
"http_request",
{
"_context": {
+ "callChain": undefined,
+ "enforceCredentialAccess": undefined,
+ "executionId": undefined,
+ "isDeployedContext": undefined,
+ "userId": undefined,
"workflowId": "test-workflow-id",
+ "workspaceId": undefined,
},
"body": {
"key": "value",
},
"headers": {
"Content-Type": "application/json",
},
"method": "POST",
"url": "https://example.com/api",
},
- false,
{
+ "executionContext": {
"activeExecutionPath": Set {},
"blockLogs": [],
"blockStates": Map {},
"completedLoops": Set {},
"decisions": {
@@ -28,7 +34,8 @@
"loopExecutions": Map {},
"metadata": {
"duration": 0,
},
"workflowId": "test-workflow-id",
+ },
},
]
Number of calls: 1
❯ executor/handlers/api/api-handler.test.ts:112:29
|
|
Test and Build / Test and Build
sim#test: command (/home/runner/_work/sim/sim/apps/sim) /home/runner/.bun/bin/bun run test exited (1)
|
|
Test and Build / Test and Build
Skipping sticky disk commit due to previous step failures
|
|
Test and Build / Test and Build
Found 2 failed/cancelled steps in previous workflow steps
|
|
Test and Build / Test and Build
Skipping sticky disk commit due to previous step failures
|
|
Test and Build / Test and Build
Found 2 failed/cancelled steps in previous workflow steps
|
|
Test and Build / Test and Build
Skipping sticky disk commit due to previous step failures
|
|
Test and Build / Test and Build
Found 2 failed/cancelled steps in previous workflow steps
|