@calmo/task-runner 3.8.3 → 3.8.4
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/AGENTS.md +2 -0
- package/CHANGELOG.md +5 -0
- package/coverage/coverage-final.json +1 -1
- package/coverage/index.html +1 -1
- package/coverage/lcov-report/index.html +1 -1
- package/coverage/lcov-report/src/EventBus.ts.html +1 -1
- package/coverage/lcov-report/src/ExecutionConstants.ts.html +1 -1
- package/coverage/lcov-report/src/TaskGraphValidationError.ts.html +1 -1
- package/coverage/lcov-report/src/TaskGraphValidator.ts.html +4 -10
- package/coverage/lcov-report/src/TaskRunner.ts.html +1 -1
- package/coverage/lcov-report/src/TaskRunnerBuilder.ts.html +1 -1
- package/coverage/lcov-report/src/TaskRunnerExecutionConfig.ts.html +1 -1
- package/coverage/lcov-report/src/TaskStateManager.ts.html +1 -1
- package/coverage/lcov-report/src/WorkflowExecutor.ts.html +1 -1
- package/coverage/lcov-report/src/contracts/ErrorTypes.ts.html +1 -1
- package/coverage/lcov-report/src/contracts/RunnerEvents.ts.html +1 -1
- package/coverage/lcov-report/src/contracts/index.html +1 -1
- package/coverage/lcov-report/src/index.html +1 -1
- package/coverage/lcov-report/src/strategies/DryRunExecutionStrategy.ts.html +1 -1
- package/coverage/lcov-report/src/strategies/RetryingExecutionStrategy.ts.html +1 -1
- package/coverage/lcov-report/src/strategies/StandardExecutionStrategy.ts.html +1 -1
- package/coverage/lcov-report/src/strategies/index.html +1 -1
- package/coverage/lcov.info +18 -18
- package/coverage/src/EventBus.ts.html +1 -1
- package/coverage/src/ExecutionConstants.ts.html +1 -1
- package/coverage/src/TaskGraphValidationError.ts.html +1 -1
- package/coverage/src/TaskGraphValidator.ts.html +4 -10
- package/coverage/src/TaskRunner.ts.html +1 -1
- package/coverage/src/TaskRunnerBuilder.ts.html +1 -1
- package/coverage/src/TaskRunnerExecutionConfig.ts.html +1 -1
- package/coverage/src/TaskStateManager.ts.html +1 -1
- package/coverage/src/WorkflowExecutor.ts.html +1 -1
- package/coverage/src/contracts/ErrorTypes.ts.html +1 -1
- package/coverage/src/contracts/RunnerEvents.ts.html +1 -1
- package/coverage/src/contracts/index.html +1 -1
- package/coverage/src/index.html +1 -1
- package/coverage/src/strategies/DryRunExecutionStrategy.ts.html +1 -1
- package/coverage/src/strategies/RetryingExecutionStrategy.ts.html +1 -1
- package/coverage/src/strategies/StandardExecutionStrategy.ts.html +1 -1
- package/coverage/src/strategies/index.html +1 -1
- package/dist/TaskGraphValidator.js +2 -4
- package/dist/TaskGraphValidator.js.map +1 -1
- package/openspec/changes/feat-continue-on-error/proposal.md +20 -0
- package/openspec/changes/feat-continue-on-error/tasks.md +17 -0
- package/package.json +1 -1
- package/src/TaskGraphValidator.ts +2 -4
- package/test-report.xml +143 -143
package/test-report.xml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8" ?>
|
|
2
|
-
<testsuites name="vitest tests" tests="118" failures="0" errors="0" time="1.
|
|
3
|
-
<testsuite name="tests/ComplexScenario.test.ts" timestamp="2026-01-
|
|
4
|
-
<testcase classname="tests/ComplexScenario.test.ts" name="Complex Scenario Integration Tests > 1. All steps execute when all succeed and context is hydrated" time="0.
|
|
2
|
+
<testsuites name="vitest tests" tests="118" failures="0" errors="0" time="1.458970888">
|
|
3
|
+
<testsuite name="tests/ComplexScenario.test.ts" timestamp="2026-01-21T21:46:28.691Z" hostname="runnervmmtnos" tests="2" failures="0" errors="0" skipped="0" time="0.012412332">
|
|
4
|
+
<testcase classname="tests/ComplexScenario.test.ts" name="Complex Scenario Integration Tests > 1. All steps execute when all succeed and context is hydrated" time="0.007862942">
|
|
5
5
|
<system-out>
|
|
6
6
|
Running StepA
|
|
7
7
|
Running StepB
|
|
@@ -15,285 +15,285 @@ Running StepG
|
|
|
15
15
|
|
|
16
16
|
</system-out>
|
|
17
17
|
</testcase>
|
|
18
|
-
<testcase classname="tests/ComplexScenario.test.ts" name="Complex Scenario Integration Tests > 2. The 'skip' propagation works as intended if something breaks up in the tree" time="0.
|
|
18
|
+
<testcase classname="tests/ComplexScenario.test.ts" name="Complex Scenario Integration Tests > 2. The 'skip' propagation works as intended if something breaks up in the tree" time="0.00226413">
|
|
19
19
|
</testcase>
|
|
20
20
|
</testsuite>
|
|
21
|
-
<testsuite name="tests/DryRunExecutionStrategy.test.ts" timestamp="2026-01-
|
|
22
|
-
<testcase classname="tests/DryRunExecutionStrategy.test.ts" name="DryRunExecutionStrategy > should return success without running the task" time="0.
|
|
21
|
+
<testsuite name="tests/DryRunExecutionStrategy.test.ts" timestamp="2026-01-21T21:46:28.692Z" hostname="runnervmmtnos" tests="1" failures="0" errors="0" skipped="0" time="0.003589276">
|
|
22
|
+
<testcase classname="tests/DryRunExecutionStrategy.test.ts" name="DryRunExecutionStrategy > should return success without running the task" time="0.002021888">
|
|
23
23
|
</testcase>
|
|
24
24
|
</testsuite>
|
|
25
|
-
<testsuite name="tests/EventBus.test.ts" timestamp="2026-01-
|
|
26
|
-
<testcase classname="tests/EventBus.test.ts" name="EventBus > should subscribe to and emit events" time="0.
|
|
25
|
+
<testsuite name="tests/EventBus.test.ts" timestamp="2026-01-21T21:46:28.693Z" hostname="runnervmmtnos" tests="10" failures="0" errors="0" skipped="0" time="0.017890551">
|
|
26
|
+
<testcase classname="tests/EventBus.test.ts" name="EventBus > should subscribe to and emit events" time="0.004711364">
|
|
27
27
|
</testcase>
|
|
28
|
-
<testcase classname="tests/EventBus.test.ts" name="EventBus > should unsubscribe from events" time="0.
|
|
28
|
+
<testcase classname="tests/EventBus.test.ts" name="EventBus > should unsubscribe from events" time="0.001828757">
|
|
29
29
|
</testcase>
|
|
30
|
-
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle sync listener errors" time="0.
|
|
30
|
+
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle sync listener errors" time="0.001799543">
|
|
31
31
|
</testcase>
|
|
32
|
-
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle async listener rejections" time="0.
|
|
32
|
+
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle async listener rejections" time="0.001737336">
|
|
33
33
|
</testcase>
|
|
34
|
-
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle emit with no listeners" time="0.
|
|
34
|
+
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle emit with no listeners" time="0.001361193">
|
|
35
35
|
</testcase>
|
|
36
|
-
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle off for non-existent event" time="0.
|
|
36
|
+
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle off for non-existent event" time="0.000351768">
|
|
37
37
|
</testcase>
|
|
38
|
-
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle off for event with no listeners" time="0.
|
|
38
|
+
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle off for event with no listeners" time="0.000327813">
|
|
39
39
|
</testcase>
|
|
40
|
-
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle off when listener set exists but empty" time="0.
|
|
40
|
+
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle off when listener set exists but empty" time="0.000189945">
|
|
41
41
|
</testcase>
|
|
42
|
-
<testcase classname="tests/EventBus.test.ts" name="EventBus > should trigger outer catch block when inner catch fails" time="0.
|
|
42
|
+
<testcase classname="tests/EventBus.test.ts" name="EventBus > should trigger outer catch block when inner catch fails" time="0.001930467">
|
|
43
43
|
</testcase>
|
|
44
|
-
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle multiple listeners for the same event" time="0.
|
|
44
|
+
<testcase classname="tests/EventBus.test.ts" name="EventBus > should handle multiple listeners for the same event" time="0.001624267">
|
|
45
45
|
</testcase>
|
|
46
46
|
</testsuite>
|
|
47
|
-
<testsuite name="tests/ExecutionStrategyFailure.test.ts" timestamp="2026-01-
|
|
48
|
-
<testcase classname="tests/ExecutionStrategyFailure.test.ts" name="WorkflowExecutor Strategy Failure Handling > should handle execution strategy throwing an Error object" time="0.
|
|
47
|
+
<testsuite name="tests/ExecutionStrategyFailure.test.ts" timestamp="2026-01-21T21:46:28.695Z" hostname="runnervmmtnos" tests="2" failures="0" errors="0" skipped="0" time="0.006614269">
|
|
48
|
+
<testcase classname="tests/ExecutionStrategyFailure.test.ts" name="WorkflowExecutor Strategy Failure Handling > should handle execution strategy throwing an Error object" time="0.003502204">
|
|
49
49
|
</testcase>
|
|
50
|
-
<testcase classname="tests/ExecutionStrategyFailure.test.ts" name="WorkflowExecutor Strategy Failure Handling > should handle execution strategy throwing a non-Error object" time="0.
|
|
50
|
+
<testcase classname="tests/ExecutionStrategyFailure.test.ts" name="WorkflowExecutor Strategy Failure Handling > should handle execution strategy throwing a non-Error object" time="0.000613928">
|
|
51
51
|
</testcase>
|
|
52
52
|
</testsuite>
|
|
53
|
-
<testsuite name="tests/TaskGraphValidator.test.ts" timestamp="2026-01-
|
|
54
|
-
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should be instantiated" time="0.
|
|
53
|
+
<testsuite name="tests/TaskGraphValidator.test.ts" timestamp="2026-01-21T21:46:28.695Z" hostname="runnervmmtnos" tests="10" failures="0" errors="0" skipped="0" time="0.011972971">
|
|
54
|
+
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should be instantiated" time="0.002091007">
|
|
55
55
|
</testcase>
|
|
56
|
-
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should return valid result for empty graph" time="0.
|
|
56
|
+
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should return valid result for empty graph" time="0.001722398">
|
|
57
57
|
</testcase>
|
|
58
|
-
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should detect duplicate tasks" time="0.
|
|
58
|
+
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should detect duplicate tasks" time="0.001920869">
|
|
59
59
|
</testcase>
|
|
60
|
-
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should detect missing dependencies" time="0.
|
|
60
|
+
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should detect missing dependencies" time="0.000767895">
|
|
61
61
|
</testcase>
|
|
62
|
-
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should detect cycles" time="0.
|
|
62
|
+
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should detect cycles" time="0.000898839">
|
|
63
63
|
</testcase>
|
|
64
|
-
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should return valid for a correct graph" time="0.
|
|
64
|
+
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should return valid for a correct graph" time="0.000536242">
|
|
65
65
|
</testcase>
|
|
66
|
-
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should not detect cycles if missing dependencies are present" time="0.
|
|
66
|
+
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should not detect cycles if missing dependencies are present" time="0.000333343">
|
|
67
67
|
</testcase>
|
|
68
|
-
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should detect more complex cycles" time="0.
|
|
68
|
+
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should detect more complex cycles" time="0.000480238">
|
|
69
69
|
</testcase>
|
|
70
|
-
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should handle cycle detection with no cycles but shared dependencies" time="0.
|
|
70
|
+
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should handle cycle detection with no cycles but shared dependencies" time="0.000232454">
|
|
71
71
|
</testcase>
|
|
72
|
-
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should create a formatted error message" time="0.
|
|
72
|
+
<testcase classname="tests/TaskGraphValidator.test.ts" name="TaskGraphValidator > should create a formatted error message" time="0.000250067">
|
|
73
73
|
</testcase>
|
|
74
74
|
</testsuite>
|
|
75
|
-
<testsuite name="tests/TaskGraphValidatorDoS.test.ts" timestamp="2026-01-
|
|
76
|
-
<testcase classname="tests/TaskGraphValidatorDoS.test.ts" name="TaskGraphValidator - Deep Recursion > should handle deep graphs without stack overflow" time="0.
|
|
75
|
+
<testsuite name="tests/TaskGraphValidatorDoS.test.ts" timestamp="2026-01-21T21:46:28.697Z" hostname="runnervmmtnos" tests="1" failures="0" errors="0" skipped="0" time="0.058082892">
|
|
76
|
+
<testcase classname="tests/TaskGraphValidatorDoS.test.ts" name="TaskGraphValidator - Deep Recursion > should handle deep graphs without stack overflow" time="0.055830484">
|
|
77
77
|
</testcase>
|
|
78
78
|
</testsuite>
|
|
79
|
-
<testsuite name="tests/TaskRunner.test.ts" timestamp="2026-01-
|
|
80
|
-
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should run tasks in the correct sequential order" time="0.
|
|
79
|
+
<testsuite name="tests/TaskRunner.test.ts" timestamp="2026-01-21T21:46:28.697Z" hostname="runnervmmtnos" tests="11" failures="0" errors="0" skipped="0" time="0.116079849">
|
|
80
|
+
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should run tasks in the correct sequential order" time="0.003577505">
|
|
81
81
|
</testcase>
|
|
82
|
-
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should handle an empty list of tasks gracefully" time="0.
|
|
82
|
+
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should handle an empty list of tasks gracefully" time="0.001843963">
|
|
83
83
|
</testcase>
|
|
84
|
-
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should run independent tasks in parallel" time="0.
|
|
84
|
+
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should run independent tasks in parallel" time="0.100969086">
|
|
85
85
|
</testcase>
|
|
86
|
-
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should skip dependent tasks if a root task fails" time="0.
|
|
86
|
+
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should skip dependent tasks if a root task fails" time="0.000553684">
|
|
87
87
|
</testcase>
|
|
88
|
-
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should throw an error for 'circular dependency'" time="0.
|
|
88
|
+
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should throw an error for 'circular dependency'" time="0.003449806">
|
|
89
89
|
</testcase>
|
|
90
|
-
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should throw an error for 'missing dependency'" time="0.
|
|
90
|
+
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should throw an error for 'missing dependency'" time="0.000465509">
|
|
91
91
|
</testcase>
|
|
92
|
-
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should handle tasks that throw an error during execution" time="0.
|
|
92
|
+
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should handle tasks that throw an error during execution" time="0.000459669">
|
|
93
93
|
</testcase>
|
|
94
|
-
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should skip tasks whose dependencies are skipped" time="0.
|
|
94
|
+
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should skip tasks whose dependencies are skipped" time="0.000471161">
|
|
95
95
|
</testcase>
|
|
96
|
-
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should handle tasks that throw a non-Error object during execution" time="0.
|
|
96
|
+
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should handle tasks that throw a non-Error object during execution" time="0.000692153">
|
|
97
97
|
</testcase>
|
|
98
|
-
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should handle duplicate steps where one gets skipped due to failed dependency" time="0.
|
|
98
|
+
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should handle duplicate steps where one gets skipped due to failed dependency" time="0.000539358">
|
|
99
99
|
</testcase>
|
|
100
|
-
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should throw TaskGraphValidationError with detailed result" time="0.
|
|
100
|
+
<testcase classname="tests/TaskRunner.test.ts" name="TaskRunner > should throw TaskGraphValidationError with detailed result" time="0.000918707">
|
|
101
101
|
</testcase>
|
|
102
102
|
</testsuite>
|
|
103
|
-
<testsuite name="tests/TaskRunnerEvents.test.ts" timestamp="2026-01-
|
|
104
|
-
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should fire all lifecycle events in a successful run" time="0.
|
|
103
|
+
<testsuite name="tests/TaskRunnerEvents.test.ts" timestamp="2026-01-21T21:46:28.699Z" hostname="runnervmmtnos" tests="7" failures="0" errors="0" skipped="0" time="0.015819565">
|
|
104
|
+
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should fire all lifecycle events in a successful run" time="0.006411068">
|
|
105
105
|
</testcase>
|
|
106
|
-
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should fire taskSkipped event when dependency fails" time="0.
|
|
106
|
+
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should fire taskSkipped event when dependency fails" time="0.00402614">
|
|
107
107
|
</testcase>
|
|
108
|
-
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should not crash if a listener throws an error" time="0.
|
|
108
|
+
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should not crash if a listener throws an error" time="0.001464617">
|
|
109
109
|
</testcase>
|
|
110
|
-
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should fire workflow events even for empty step list" time="0.
|
|
110
|
+
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should fire workflow events even for empty step list" time="0.000425255">
|
|
111
111
|
</testcase>
|
|
112
|
-
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should handle unsubscribe correctly" time="0.
|
|
112
|
+
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should handle unsubscribe correctly" time="0.000584623">
|
|
113
113
|
</testcase>
|
|
114
|
-
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should safely handle off() when no listeners exist" time="0.
|
|
114
|
+
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should safely handle off() when no listeners exist" time="0.0004015">
|
|
115
115
|
</testcase>
|
|
116
|
-
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should support multiple listeners for the same event" time="0.
|
|
116
|
+
<testcase classname="tests/TaskRunnerEvents.test.ts" name="TaskRunner Events > should support multiple listeners for the same event" time="0.000628293">
|
|
117
117
|
</testcase>
|
|
118
118
|
</testsuite>
|
|
119
|
-
<testsuite name="tests/TaskRunnerMermaid.test.ts" timestamp="2026-01-
|
|
120
|
-
<testcase classname="tests/TaskRunnerMermaid.test.ts" name="TaskRunner Mermaid Graph > should generate a simple graph with no dependencies" time="0.
|
|
119
|
+
<testsuite name="tests/TaskRunnerMermaid.test.ts" timestamp="2026-01-21T21:46:28.700Z" hostname="runnervmmtnos" tests="5" failures="0" errors="0" skipped="0" time="0.005735276">
|
|
120
|
+
<testcase classname="tests/TaskRunnerMermaid.test.ts" name="TaskRunner Mermaid Graph > should generate a simple graph with no dependencies" time="0.0024243">
|
|
121
121
|
</testcase>
|
|
122
|
-
<testcase classname="tests/TaskRunnerMermaid.test.ts" name="TaskRunner Mermaid Graph > should generate a graph with dependencies" time="0.
|
|
122
|
+
<testcase classname="tests/TaskRunnerMermaid.test.ts" name="TaskRunner Mermaid Graph > should generate a graph with dependencies" time="0.000539187">
|
|
123
123
|
</testcase>
|
|
124
|
-
<testcase classname="tests/TaskRunnerMermaid.test.ts" name="TaskRunner Mermaid Graph > should handle mixed independent and dependent tasks" time="0.
|
|
124
|
+
<testcase classname="tests/TaskRunnerMermaid.test.ts" name="TaskRunner Mermaid Graph > should handle mixed independent and dependent tasks" time="0.000297856">
|
|
125
125
|
</testcase>
|
|
126
|
-
<testcase classname="tests/TaskRunnerMermaid.test.ts" name="TaskRunner Mermaid Graph > should handle special characters in task names" time="0.
|
|
126
|
+
<testcase classname="tests/TaskRunnerMermaid.test.ts" name="TaskRunner Mermaid Graph > should handle special characters in task names" time="0.00037985">
|
|
127
127
|
</testcase>
|
|
128
|
-
<testcase classname="tests/TaskRunnerMermaid.test.ts" name="TaskRunner Mermaid Graph > should sanitize brackets and parentheses" time="0.
|
|
128
|
+
<testcase classname="tests/TaskRunnerMermaid.test.ts" name="TaskRunner Mermaid Graph > should sanitize brackets and parentheses" time="0.000354563">
|
|
129
129
|
</testcase>
|
|
130
130
|
</testsuite>
|
|
131
|
-
<testsuite name="tests/TaskRunnerRefactor.test.ts" timestamp="2026-01-
|
|
132
|
-
<testcase classname="tests/TaskRunnerRefactor.test.ts" name="TaskRunner Refactor Coverage > should allow setting execution strategy" time="0.
|
|
131
|
+
<testsuite name="tests/TaskRunnerRefactor.test.ts" timestamp="2026-01-21T21:46:28.701Z" hostname="runnervmmtnos" tests="6" failures="0" errors="0" skipped="0" time="0.009217082">
|
|
132
|
+
<testcase classname="tests/TaskRunnerRefactor.test.ts" name="TaskRunner Refactor Coverage > should allow setting execution strategy" time="0.002251056">
|
|
133
133
|
</testcase>
|
|
134
|
-
<testcase classname="tests/TaskRunnerRefactor.test.ts" name="TaskRunner Refactor Coverage > should allow unsubscribing from events" time="0.
|
|
134
|
+
<testcase classname="tests/TaskRunnerRefactor.test.ts" name="TaskRunner Refactor Coverage > should allow unsubscribing from events" time="0.001041917">
|
|
135
135
|
</testcase>
|
|
136
|
-
<testcase classname="tests/TaskRunnerRefactor.test.ts" name="TaskRunner Refactor Coverage > TaskStateManager.cancelAllPending should handle non-existing tasks gracefully" time="0.
|
|
136
|
+
<testcase classname="tests/TaskRunnerRefactor.test.ts" name="TaskRunner Refactor Coverage > TaskStateManager.cancelAllPending should handle non-existing tasks gracefully" time="0.000518929">
|
|
137
137
|
</testcase>
|
|
138
|
-
<testcase classname="tests/TaskRunnerRefactor.test.ts" name="TaskRunner Refactor Coverage > TaskRunnerBuilder should build a TaskRunner" time="0.
|
|
138
|
+
<testcase classname="tests/TaskRunnerRefactor.test.ts" name="TaskRunner Refactor Coverage > TaskRunnerBuilder should build a TaskRunner" time="0.000760461">
|
|
139
139
|
</testcase>
|
|
140
|
-
<testcase classname="tests/TaskRunnerRefactor.test.ts" name="TaskRunner Refactor Coverage > TaskRunnerBuilder should build a TaskRunner with no listeners" time="0.
|
|
140
|
+
<testcase classname="tests/TaskRunnerRefactor.test.ts" name="TaskRunner Refactor Coverage > TaskRunnerBuilder should build a TaskRunner with no listeners" time="0.000226784">
|
|
141
141
|
</testcase>
|
|
142
|
-
<testcase classname="tests/TaskRunnerRefactor.test.ts" name="TaskRunner Refactor Coverage > WorkflowExecutor should break infinite loop if no progress can be made" time="0.
|
|
142
|
+
<testcase classname="tests/TaskRunnerRefactor.test.ts" name="TaskRunner Refactor Coverage > WorkflowExecutor should break infinite loop if no progress can be made" time="0.001892697">
|
|
143
143
|
</testcase>
|
|
144
144
|
</testsuite>
|
|
145
|
-
<testsuite name="tests/TaskStateManager.repro.test.ts" timestamp="2026-01-
|
|
146
|
-
<testcase classname="tests/TaskStateManager.repro.test.ts" name="TaskStateManager Repro > should emit taskEnd event when cancelling pending tasks" time="0.
|
|
145
|
+
<testsuite name="tests/TaskStateManager.repro.test.ts" timestamp="2026-01-21T21:46:28.702Z" hostname="runnervmmtnos" tests="1" failures="0" errors="0" skipped="0" time="0.007762234">
|
|
146
|
+
<testcase classname="tests/TaskStateManager.repro.test.ts" name="TaskStateManager Repro > should emit taskEnd event when cancelling pending tasks" time="0.005978961">
|
|
147
147
|
</testcase>
|
|
148
148
|
</testsuite>
|
|
149
|
-
<testsuite name="tests/WorkflowExecutor.test.ts" timestamp="2026-01-
|
|
150
|
-
<testcase classname="tests/WorkflowExecutor.test.ts" name="WorkflowExecutor > should execute steps sequentially when dependencies exist" time="0.
|
|
149
|
+
<testsuite name="tests/WorkflowExecutor.test.ts" timestamp="2026-01-21T21:46:28.703Z" hostname="runnervmmtnos" tests="3" failures="0" errors="0" skipped="0" time="0.058215293">
|
|
150
|
+
<testcase classname="tests/WorkflowExecutor.test.ts" name="WorkflowExecutor > should execute steps sequentially when dependencies exist" time="0.004055838">
|
|
151
151
|
</testcase>
|
|
152
|
-
<testcase classname="tests/WorkflowExecutor.test.ts" name="WorkflowExecutor > should skip dependent steps if dependency fails" time="0.
|
|
152
|
+
<testcase classname="tests/WorkflowExecutor.test.ts" name="WorkflowExecutor > should skip dependent steps if dependency fails" time="0.000531272">
|
|
153
153
|
</testcase>
|
|
154
|
-
<testcase classname="tests/WorkflowExecutor.test.ts" name="WorkflowExecutor > should run independent steps in parallel" time="0.
|
|
154
|
+
<testcase classname="tests/WorkflowExecutor.test.ts" name="WorkflowExecutor > should run independent steps in parallel" time="0.051080822">
|
|
155
155
|
</testcase>
|
|
156
156
|
</testsuite>
|
|
157
|
-
<testsuite name="tests/cancellation.test.ts" timestamp="2026-01-
|
|
158
|
-
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should execute tasks normally without cancellation" time="0.
|
|
157
|
+
<testsuite name="tests/cancellation.test.ts" timestamp="2026-01-21T21:46:28.704Z" hostname="runnervmmtnos" tests="10" failures="0" errors="0" skipped="0" time="0.163295466">
|
|
158
|
+
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should execute tasks normally without cancellation" time="0.003615616">
|
|
159
159
|
</testcase>
|
|
160
|
-
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should cancel workflow via AbortSignal" time="0.
|
|
160
|
+
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should cancel workflow via AbortSignal" time="0.011389991">
|
|
161
161
|
</testcase>
|
|
162
|
-
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should cancel workflow via global timeout" time="0.
|
|
162
|
+
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should cancel workflow via global timeout" time="0.051050928">
|
|
163
163
|
</testcase>
|
|
164
|
-
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should handle pre-aborted signal" time="0.
|
|
164
|
+
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should handle pre-aborted signal" time="0.000541552">
|
|
165
165
|
</testcase>
|
|
166
|
-
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should propagate cancellation to running task" time="0.
|
|
166
|
+
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should propagate cancellation to running task" time="0.010602501">
|
|
167
167
|
</testcase>
|
|
168
|
-
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should respect timeout over signal if timeout happens first" time="0.
|
|
168
|
+
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should respect timeout over signal if timeout happens first" time="0.050812172">
|
|
169
169
|
</testcase>
|
|
170
|
-
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should handle case where timeout is set AND signal is already aborted" time="0.
|
|
170
|
+
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should handle case where timeout is set AND signal is already aborted" time="0.00043908">
|
|
171
171
|
</testcase>
|
|
172
|
-
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should cancel workflow via AbortSignal when timeout is also set" time="0.
|
|
172
|
+
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should cancel workflow via AbortSignal when timeout is also set" time="0.01074663">
|
|
173
173
|
</testcase>
|
|
174
|
-
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should fail task if it throws non-abort error during cancellation" time="0.
|
|
174
|
+
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should fail task if it throws non-abort error during cancellation" time="0.010754535">
|
|
175
175
|
</testcase>
|
|
176
|
-
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should cancel task if it rejects with signal.reason" time="0.
|
|
176
|
+
<testcase classname="tests/cancellation.test.ts" name="TaskRunner Cancellation > should cancel task if it rejects with signal.reason" time="0.010779753">
|
|
177
177
|
</testcase>
|
|
178
178
|
</testsuite>
|
|
179
|
-
<testsuite name="tests/concurrency.test.ts" timestamp="2026-01-
|
|
180
|
-
<testcase classname="tests/concurrency.test.ts" name="Concurrency Control > should limit concurrency to 1" time="0.
|
|
179
|
+
<testsuite name="tests/concurrency.test.ts" timestamp="2026-01-21T21:46:28.705Z" hostname="runnervmmtnos" tests="4" failures="0" errors="0" skipped="0" time="0.350444291">
|
|
180
|
+
<testcase classname="tests/concurrency.test.ts" name="Concurrency Control > should limit concurrency to 1" time="0.15420884">
|
|
181
181
|
</testcase>
|
|
182
|
-
<testcase classname="tests/concurrency.test.ts" name="Concurrency Control > should limit concurrency to 2" time="0.
|
|
182
|
+
<testcase classname="tests/concurrency.test.ts" name="Concurrency Control > should limit concurrency to 2" time="0.101984385">
|
|
183
183
|
</testcase>
|
|
184
|
-
<testcase classname="tests/concurrency.test.ts" name="Concurrency Control > should handle unlimited concurrency (default)" time="0.
|
|
184
|
+
<testcase classname="tests/concurrency.test.ts" name="Concurrency Control > should handle unlimited concurrency (default)" time="0.050828473">
|
|
185
185
|
</testcase>
|
|
186
|
-
<testcase classname="tests/concurrency.test.ts" name="Concurrency Control > should run each task exactly once even when queued" time="0.
|
|
186
|
+
<testcase classname="tests/concurrency.test.ts" name="Concurrency Control > should run each task exactly once even when queued" time="0.040691542">
|
|
187
187
|
</testcase>
|
|
188
188
|
</testsuite>
|
|
189
|
-
<testsuite name="tests/conditional.test.ts" timestamp="2026-01-
|
|
190
|
-
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should execute task when condition is undefined" time="0.
|
|
189
|
+
<testsuite name="tests/conditional.test.ts" timestamp="2026-01-21T21:46:28.706Z" hostname="runnervmmtnos" tests="11" failures="0" errors="0" skipped="0" time="0.053515488">
|
|
190
|
+
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should execute task when condition is undefined" time="0.003262055">
|
|
191
191
|
</testcase>
|
|
192
|
-
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should execute task when condition returns true" time="0.
|
|
192
|
+
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should execute task when condition returns true" time="0.000556019">
|
|
193
193
|
</testcase>
|
|
194
|
-
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should skip task when condition returns false" time="0.
|
|
194
|
+
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should skip task when condition returns false" time="0.001903677">
|
|
195
195
|
</testcase>
|
|
196
|
-
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should handle async condition" time="0.
|
|
196
|
+
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should handle async condition" time="0.000330508">
|
|
197
197
|
</testcase>
|
|
198
|
-
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should skip dependent tasks if parent is skipped due to condition" time="0.
|
|
198
|
+
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should skip dependent tasks if parent is skipped due to condition" time="0.000694558">
|
|
199
199
|
</testcase>
|
|
200
|
-
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should handle condition throwing error" time="0.
|
|
200
|
+
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should handle condition throwing error" time="0.000555708">
|
|
201
201
|
</testcase>
|
|
202
|
-
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should handle condition throwing non-Error object" time="0.
|
|
202
|
+
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should handle condition throwing non-Error object" time="0.000571928">
|
|
203
203
|
</testcase>
|
|
204
|
-
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should handle cancellation during async condition evaluation" time="0.
|
|
204
|
+
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should handle cancellation during async condition evaluation" time="0.021172069">
|
|
205
205
|
</testcase>
|
|
206
|
-
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should handle cancellation between condition and execution (or before execution if no condition)" time="0.
|
|
206
|
+
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should handle cancellation between condition and execution (or before execution if no condition)" time="0.020679997">
|
|
207
207
|
</testcase>
|
|
208
|
-
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should handle immediate cancellation" time="0.
|
|
208
|
+
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should handle immediate cancellation" time="0.000491348">
|
|
209
209
|
</testcase>
|
|
210
|
-
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should break loop if stuck (e.g. cycle)" time="0.
|
|
210
|
+
<testcase classname="tests/conditional.test.ts" name="WorkflowExecutor Conditional Execution > should break loop if stuck (e.g. cycle)" time="0.000565627">
|
|
211
211
|
</testcase>
|
|
212
212
|
</testsuite>
|
|
213
|
-
<testsuite name="tests/integration.test.ts" timestamp="2026-01-
|
|
214
|
-
<testcase classname="tests/integration.test.ts" name="TaskRunner Validation Integration > should throw validation error with clear message for duplicate tasks" time="0.
|
|
213
|
+
<testsuite name="tests/integration.test.ts" timestamp="2026-01-21T21:46:28.708Z" hostname="runnervmmtnos" tests="3" failures="0" errors="0" skipped="0" time="0.00877194">
|
|
214
|
+
<testcase classname="tests/integration.test.ts" name="TaskRunner Validation Integration > should throw validation error with clear message for duplicate tasks" time="0.005249027">
|
|
215
215
|
</testcase>
|
|
216
|
-
<testcase classname="tests/integration.test.ts" name="TaskRunner Validation Integration > should throw validation error with clear message for missing dependencies" time="0.
|
|
216
|
+
<testcase classname="tests/integration.test.ts" name="TaskRunner Validation Integration > should throw validation error with clear message for missing dependencies" time="0.000598809">
|
|
217
217
|
</testcase>
|
|
218
|
-
<testcase classname="tests/integration.test.ts" name="TaskRunner Validation Integration > should throw validation error with clear message for cycles" time="0.
|
|
218
|
+
<testcase classname="tests/integration.test.ts" name="TaskRunner Validation Integration > should throw validation error with clear message for cycles" time="0.000541121">
|
|
219
219
|
</testcase>
|
|
220
220
|
</testsuite>
|
|
221
|
-
<testsuite name="tests/priority.test.ts" timestamp="2026-01-
|
|
222
|
-
<testcase classname="tests/priority.test.ts" name="Task Priority Scheduling > should execute higher priority tasks first when concurrency is limited" time="0.
|
|
221
|
+
<testsuite name="tests/priority.test.ts" timestamp="2026-01-21T21:46:28.708Z" hostname="runnervmmtnos" tests="6" failures="0" errors="0" skipped="0" time="0.233229776">
|
|
222
|
+
<testcase classname="tests/priority.test.ts" name="Task Priority Scheduling > should execute higher priority tasks first when concurrency is limited" time="0.045678941">
|
|
223
223
|
</testcase>
|
|
224
|
-
<testcase classname="tests/priority.test.ts" name="Task Priority Scheduling > should maintain FIFO order for tasks with equal priority" time="0.
|
|
224
|
+
<testcase classname="tests/priority.test.ts" name="Task Priority Scheduling > should maintain FIFO order for tasks with equal priority" time="0.030999823">
|
|
225
225
|
</testcase>
|
|
226
|
-
<testcase classname="tests/priority.test.ts" name="Task Priority Scheduling > should treat undefined priority as 0" time="0.
|
|
226
|
+
<testcase classname="tests/priority.test.ts" name="Task Priority Scheduling > should treat undefined priority as 0" time="0.041068457">
|
|
227
227
|
</testcase>
|
|
228
|
-
<testcase classname="tests/priority.test.ts" name="Task Priority Scheduling > should respect priority when tasks become ready at different times" time="0.
|
|
228
|
+
<testcase classname="tests/priority.test.ts" name="Task Priority Scheduling > should respect priority when tasks become ready at different times" time="0.031038704">
|
|
229
229
|
</testcase>
|
|
230
|
-
<testcase classname="tests/priority.test.ts" name="Task Priority Scheduling > should not affect execution when concurrency is unlimited" time="0.
|
|
230
|
+
<testcase classname="tests/priority.test.ts" name="Task Priority Scheduling > should not affect execution when concurrency is unlimited" time="0.050935273">
|
|
231
231
|
</testcase>
|
|
232
|
-
<testcase classname="tests/priority.test.ts" name="Task Priority Scheduling > should handle mixed priority and dependency scenarios" time="0.
|
|
232
|
+
<testcase classname="tests/priority.test.ts" name="Task Priority Scheduling > should handle mixed priority and dependency scenarios" time="0.031037624">
|
|
233
233
|
</testcase>
|
|
234
234
|
</testsuite>
|
|
235
|
-
<testsuite name="tests/integration-tests/basic-structure.test.ts" timestamp="2026-01-
|
|
236
|
-
<testcase classname="tests/integration-tests/basic-structure.test.ts" name="Integration: Basic Structure > Scenario 1: Basic linear workflow (A -> B -> C)" time="0.
|
|
235
|
+
<testsuite name="tests/integration-tests/basic-structure.test.ts" timestamp="2026-01-21T21:46:28.709Z" hostname="runnervmmtnos" tests="4" failures="0" errors="0" skipped="0" time="0.134004661">
|
|
236
|
+
<testcase classname="tests/integration-tests/basic-structure.test.ts" name="Integration: Basic Structure > Scenario 1: Basic linear workflow (A -> B -> C)" time="0.035899145">
|
|
237
237
|
</testcase>
|
|
238
|
-
<testcase classname="tests/integration-tests/basic-structure.test.ts" name="Integration: Basic Structure > Scenario 2: Branching workflow (A -> [B, C] -> D)" time="0.
|
|
238
|
+
<testcase classname="tests/integration-tests/basic-structure.test.ts" name="Integration: Basic Structure > Scenario 2: Branching workflow (A -> [B, C] -> D)" time="0.033309019">
|
|
239
239
|
</testcase>
|
|
240
|
-
<testcase classname="tests/integration-tests/basic-structure.test.ts" name="Integration: Basic Structure > Scenario 12: Complex 'Diamond' dependency graph (A -> B -> D, A -> C -> D)" time="0.
|
|
240
|
+
<testcase classname="tests/integration-tests/basic-structure.test.ts" name="Integration: Basic Structure > Scenario 12: Complex 'Diamond' dependency graph (A -> B -> D, A -> C -> D)" time="0.041478838">
|
|
241
241
|
</testcase>
|
|
242
|
-
<testcase classname="tests/integration-tests/basic-structure.test.ts" name="Integration: Basic Structure > Scenario 14: Zero-dependency parallel burst" time="0.
|
|
242
|
+
<testcase classname="tests/integration-tests/basic-structure.test.ts" name="Integration: Basic Structure > Scenario 14: Zero-dependency parallel burst" time="0.021223996">
|
|
243
243
|
</testcase>
|
|
244
244
|
</testsuite>
|
|
245
|
-
<testsuite name="tests/integration-tests/concurrency-timing.test.ts" timestamp="2026-01-
|
|
246
|
-
<testcase classname="tests/integration-tests/concurrency-timing.test.ts" name="Integration: Concurrency and Timing > Scenario 6: Mixed duration tasks (verifying parallel efficiency)" time="0.
|
|
245
|
+
<testsuite name="tests/integration-tests/concurrency-timing.test.ts" timestamp="2026-01-21T21:46:28.710Z" hostname="runnervmmtnos" tests="3" failures="0" errors="0" skipped="0" time="0.128595153">
|
|
246
|
+
<testcase classname="tests/integration-tests/concurrency-timing.test.ts" name="Integration: Concurrency and Timing > Scenario 6: Mixed duration tasks (verifying parallel efficiency)" time="0.053914539">
|
|
247
247
|
</testcase>
|
|
248
|
-
<testcase classname="tests/integration-tests/concurrency-timing.test.ts" name="Integration: Concurrency and Timing > Scenario 7: Cancellation via AbortSignal" time="0.
|
|
248
|
+
<testcase classname="tests/integration-tests/concurrency-timing.test.ts" name="Integration: Concurrency and Timing > Scenario 7: Cancellation via AbortSignal" time="0.021785619">
|
|
249
249
|
</testcase>
|
|
250
|
-
<testcase classname="tests/integration-tests/concurrency-timing.test.ts" name="Integration: Concurrency and Timing > Scenario 8: Global timeout interrupting long tasks" time="0.
|
|
250
|
+
<testcase classname="tests/integration-tests/concurrency-timing.test.ts" name="Integration: Concurrency and Timing > Scenario 8: Global timeout interrupting long tasks" time="0.050916218">
|
|
251
251
|
</testcase>
|
|
252
252
|
</testsuite>
|
|
253
|
-
<testsuite name="tests/integration-tests/context-state.test.ts" timestamp="2026-01-
|
|
254
|
-
<testcase classname="tests/integration-tests/context-state.test.ts" name="Integration: Context and State > Scenario 4: Shared context mutation (A writes, B reads)" time="0.
|
|
253
|
+
<testsuite name="tests/integration-tests/context-state.test.ts" timestamp="2026-01-21T21:46:28.711Z" hostname="runnervmmtnos" tests="3" failures="0" errors="0" skipped="0" time="0.018868865">
|
|
254
|
+
<testcase classname="tests/integration-tests/context-state.test.ts" name="Integration: Context and State > Scenario 4: Shared context mutation (A writes, B reads)" time="0.005622435">
|
|
255
255
|
</testcase>
|
|
256
|
-
<testcase classname="tests/integration-tests/context-state.test.ts" name="Integration: Context and State > Scenario 9: Dynamic context validation" time="0.
|
|
256
|
+
<testcase classname="tests/integration-tests/context-state.test.ts" name="Integration: Context and State > Scenario 9: Dynamic context validation" time="0.000712401">
|
|
257
257
|
</testcase>
|
|
258
|
-
<testcase classname="tests/integration-tests/context-state.test.ts" name="Integration: Context and State > Scenario 13: Tasks with side-effects" time="0.
|
|
258
|
+
<testcase classname="tests/integration-tests/context-state.test.ts" name="Integration: Context and State > Scenario 13: Tasks with side-effects" time="0.010084843">
|
|
259
259
|
</testcase>
|
|
260
260
|
</testsuite>
|
|
261
|
-
<testsuite name="tests/integration-tests/dryRun.test.ts" timestamp="2026-01-
|
|
262
|
-
<testcase classname="tests/integration-tests/dryRun.test.ts" name="Integration: Dry Run > should execute successfully without side effects" time="0.
|
|
261
|
+
<testsuite name="tests/integration-tests/dryRun.test.ts" timestamp="2026-01-21T21:46:28.711Z" hostname="runnervmmtnos" tests="2" failures="0" errors="0" skipped="0" time="0.007803521">
|
|
262
|
+
<testcase classname="tests/integration-tests/dryRun.test.ts" name="Integration: Dry Run > should execute successfully without side effects" time="0.005176963">
|
|
263
263
|
</testcase>
|
|
264
|
-
<testcase classname="tests/integration-tests/dryRun.test.ts" name="Integration: Dry Run > should respect dependencies (topological order is maintained even in dry run)" time="0.
|
|
264
|
+
<testcase classname="tests/integration-tests/dryRun.test.ts" name="Integration: Dry Run > should respect dependencies (topological order is maintained even in dry run)" time="0.00037985">
|
|
265
265
|
</testcase>
|
|
266
266
|
</testsuite>
|
|
267
|
-
<testsuite name="tests/integration-tests/error-handling.test.ts" timestamp="2026-01-
|
|
268
|
-
<testcase classname="tests/integration-tests/error-handling.test.ts" name="Integration: Error Handling > Scenario 3: Task failure and downstream skipping" time="0.
|
|
267
|
+
<testsuite name="tests/integration-tests/error-handling.test.ts" timestamp="2026-01-21T21:46:28.712Z" hostname="runnervmmtnos" tests="3" failures="0" errors="0" skipped="0" time="0.010735058">
|
|
268
|
+
<testcase classname="tests/integration-tests/error-handling.test.ts" name="Integration: Error Handling > Scenario 3: Task failure and downstream skipping" time="0.004940932">
|
|
269
269
|
</testcase>
|
|
270
|
-
<testcase classname="tests/integration-tests/error-handling.test.ts" name="Integration: Error Handling > Scenario 10: Circular dependency detection" time="0.
|
|
270
|
+
<testcase classname="tests/integration-tests/error-handling.test.ts" name="Integration: Error Handling > Scenario 10: Circular dependency detection" time="0.002768273">
|
|
271
271
|
</testcase>
|
|
272
|
-
<testcase classname="tests/integration-tests/error-handling.test.ts" name="Integration: Error Handling > Scenario 11: Missing dependency handling" time="0.
|
|
272
|
+
<testcase classname="tests/integration-tests/error-handling.test.ts" name="Integration: Error Handling > Scenario 11: Missing dependency handling" time="0.000524019">
|
|
273
273
|
</testcase>
|
|
274
274
|
</testsuite>
|
|
275
|
-
<testsuite name="tests/integration-tests/stress.test.ts" timestamp="2026-01-
|
|
276
|
-
<testcase classname="tests/integration-tests/stress.test.ts" name="Integration: Stress Tests > Scenario 5: Large graph execution (e.g., 20+ nodes)" time="0.
|
|
275
|
+
<testsuite name="tests/integration-tests/stress.test.ts" timestamp="2026-01-21T21:46:28.712Z" hostname="runnervmmtnos" tests="1" failures="0" errors="0" skipped="0" time="0.006760242">
|
|
276
|
+
<testcase classname="tests/integration-tests/stress.test.ts" name="Integration: Stress Tests > Scenario 5: Large graph execution (e.g., 20+ nodes)" time="0.004965418">
|
|
277
277
|
</testcase>
|
|
278
278
|
</testsuite>
|
|
279
|
-
<testsuite name="tests/strategies/RetryingExecutionStrategy.test.ts" timestamp="2026-01-
|
|
280
|
-
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should execute successfully without retry if task succeeds" time="0.
|
|
279
|
+
<testsuite name="tests/strategies/RetryingExecutionStrategy.test.ts" timestamp="2026-01-21T21:46:28.713Z" hostname="runnervmmtnos" tests="9" failures="0" errors="0" skipped="0" time="0.019554837">
|
|
280
|
+
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should execute successfully without retry if task succeeds" time="0.005371637">
|
|
281
281
|
</testcase>
|
|
282
|
-
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should execute successfully without retry if task has no retry config" time="0.
|
|
282
|
+
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should execute successfully without retry if task has no retry config" time="0.000585864">
|
|
283
283
|
</testcase>
|
|
284
|
-
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should retry task if it fails and has retry config (fixed backoff)" time="0.
|
|
284
|
+
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should retry task if it fails and has retry config (fixed backoff)" time="0.002157752">
|
|
285
285
|
</testcase>
|
|
286
|
-
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should fail after max attempts reached" time="0.
|
|
286
|
+
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should fail after max attempts reached" time="0.000882509">
|
|
287
287
|
</testcase>
|
|
288
|
-
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should use exponential backoff" time="0.
|
|
288
|
+
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should use exponential backoff" time="0.000923706">
|
|
289
289
|
</testcase>
|
|
290
|
-
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should handle cancellation during delay" time="0.
|
|
290
|
+
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should handle cancellation during delay" time="0.001704936">
|
|
291
291
|
</testcase>
|
|
292
|
-
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should handle cancellation before execution" time="0.
|
|
292
|
+
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should handle cancellation before execution" time="0.000621461">
|
|
293
293
|
</testcase>
|
|
294
|
-
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should propagate error if sleep throws non-abort error" time="0.
|
|
294
|
+
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should propagate error if sleep throws non-abort error" time="0.004000244">
|
|
295
295
|
</testcase>
|
|
296
|
-
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should handle cancellation if signal is aborted right before sleep (covering fast-fail in sleep)" time="0.
|
|
296
|
+
<testcase classname="tests/strategies/RetryingExecutionStrategy.test.ts" name="RetryingExecutionStrategy > should handle cancellation if signal is aborted right before sleep (covering fast-fail in sleep)" time="0.000771882">
|
|
297
297
|
</testcase>
|
|
298
298
|
</testsuite>
|
|
299
299
|
</testsuites>
|