task-pipeliner 0.2.2 → 0.2.3

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.
Files changed (168) hide show
  1. package/README.ko.md +17 -1
  2. package/README.md +17 -1
  3. package/dist/index.cjs +18 -16
  4. package/dist/index.js +18 -16
  5. package/dist/task-pipeliner-rs.node +0 -0
  6. package/package.json +10 -1
  7. package/dist/cli/index.d.ts +0 -19
  8. package/dist/cli/index.d.ts.map +0 -1
  9. package/dist/cli/index.js +0 -305
  10. package/dist/cli/index.js.map +0 -1
  11. package/dist/cli/prompts.d.ts +0 -48
  12. package/dist/cli/prompts.d.ts.map +0 -1
  13. package/dist/cli/prompts.js +0 -75
  14. package/dist/cli/prompts.js.map +0 -1
  15. package/dist/cli/ui.d.ts +0 -39
  16. package/dist/cli/ui.d.ts.map +0 -1
  17. package/dist/cli/ui.js +0 -84
  18. package/dist/cli/ui.js.map +0 -1
  19. package/dist/core/__tests__/actual-execution.test.d.ts +0 -2
  20. package/dist/core/__tests__/actual-execution.test.d.ts.map +0 -1
  21. package/dist/core/__tests__/actual-execution.test.js +0 -147
  22. package/dist/core/__tests__/actual-execution.test.js.map +0 -1
  23. package/dist/core/__tests__/base-dir.test.d.ts +0 -2
  24. package/dist/core/__tests__/base-dir.test.d.ts.map +0 -1
  25. package/dist/core/__tests__/base-dir.test.js +0 -146
  26. package/dist/core/__tests__/base-dir.test.js.map +0 -1
  27. package/dist/core/__tests__/built-code-execution.test.d.ts +0 -2
  28. package/dist/core/__tests__/built-code-execution.test.d.ts.map +0 -1
  29. package/dist/core/__tests__/built-code-execution.test.js +0 -48
  30. package/dist/core/__tests__/built-code-execution.test.js.map +0 -1
  31. package/dist/core/__tests__/choose-as-var-condition.test.d.ts +0 -2
  32. package/dist/core/__tests__/choose-as-var-condition.test.d.ts.map +0 -1
  33. package/dist/core/__tests__/choose-as-var-condition.test.js +0 -308
  34. package/dist/core/__tests__/choose-as-var-condition.test.js.map +0 -1
  35. package/dist/core/__tests__/cli-integration.test.d.ts +0 -2
  36. package/dist/core/__tests__/cli-integration.test.d.ts.map +0 -1
  37. package/dist/core/__tests__/cli-integration.test.js +0 -83
  38. package/dist/core/__tests__/cli-integration.test.js.map +0 -1
  39. package/dist/core/__tests__/comprehensive-basic-yaml.test.d.ts +0 -2
  40. package/dist/core/__tests__/comprehensive-basic-yaml.test.d.ts.map +0 -1
  41. package/dist/core/__tests__/comprehensive-basic-yaml.test.js +0 -114
  42. package/dist/core/__tests__/comprehensive-basic-yaml.test.js.map +0 -1
  43. package/dist/core/__tests__/condition-evaluator.test.d.ts +0 -2
  44. package/dist/core/__tests__/condition-evaluator.test.d.ts.map +0 -1
  45. package/dist/core/__tests__/condition-evaluator.test.js +0 -164
  46. package/dist/core/__tests__/condition-evaluator.test.js.map +0 -1
  47. package/dist/core/__tests__/debug-basic-yaml.test.d.ts +0 -2
  48. package/dist/core/__tests__/debug-basic-yaml.test.d.ts.map +0 -1
  49. package/dist/core/__tests__/debug-basic-yaml.test.js +0 -126
  50. package/dist/core/__tests__/debug-basic-yaml.test.js.map +0 -1
  51. package/dist/core/__tests__/example-files.test.d.ts +0 -2
  52. package/dist/core/__tests__/example-files.test.d.ts.map +0 -1
  53. package/dist/core/__tests__/example-files.test.js +0 -199
  54. package/dist/core/__tests__/example-files.test.js.map +0 -1
  55. package/dist/core/__tests__/executor-choice-integration.test.d.ts +0 -2
  56. package/dist/core/__tests__/executor-choice-integration.test.d.ts.map +0 -1
  57. package/dist/core/__tests__/executor-choice-integration.test.js +0 -169
  58. package/dist/core/__tests__/executor-choice-integration.test.js.map +0 -1
  59. package/dist/core/__tests__/executor-choice.test.d.ts +0 -2
  60. package/dist/core/__tests__/executor-choice.test.d.ts.map +0 -1
  61. package/dist/core/__tests__/executor-choice.test.js +0 -170
  62. package/dist/core/__tests__/executor-choice.test.js.map +0 -1
  63. package/dist/core/__tests__/executor-parallel.test.d.ts +0 -2
  64. package/dist/core/__tests__/executor-parallel.test.d.ts.map +0 -1
  65. package/dist/core/__tests__/executor-parallel.test.js +0 -129
  66. package/dist/core/__tests__/executor-parallel.test.js.map +0 -1
  67. package/dist/core/__tests__/executor-prompt.test.d.ts +0 -2
  68. package/dist/core/__tests__/executor-prompt.test.d.ts.map +0 -1
  69. package/dist/core/__tests__/executor-prompt.test.js +0 -147
  70. package/dist/core/__tests__/executor-prompt.test.js.map +0 -1
  71. package/dist/core/__tests__/executor-real-scenario.test.d.ts +0 -2
  72. package/dist/core/__tests__/executor-real-scenario.test.d.ts.map +0 -1
  73. package/dist/core/__tests__/executor-real-scenario.test.js +0 -169
  74. package/dist/core/__tests__/executor-real-scenario.test.js.map +0 -1
  75. package/dist/core/__tests__/file-condition.test.d.ts +0 -2
  76. package/dist/core/__tests__/file-condition.test.d.ts.map +0 -1
  77. package/dist/core/__tests__/file-condition.test.js +0 -172
  78. package/dist/core/__tests__/file-condition.test.js.map +0 -1
  79. package/dist/core/__tests__/final-verification.test.d.ts +0 -2
  80. package/dist/core/__tests__/final-verification.test.d.ts.map +0 -1
  81. package/dist/core/__tests__/final-verification.test.js +0 -56
  82. package/dist/core/__tests__/final-verification.test.js.map +0 -1
  83. package/dist/core/__tests__/parallel-when-condition.test.d.ts +0 -2
  84. package/dist/core/__tests__/parallel-when-condition.test.d.ts.map +0 -1
  85. package/dist/core/__tests__/parallel-when-condition.test.js +0 -155
  86. package/dist/core/__tests__/parallel-when-condition.test.js.map +0 -1
  87. package/dist/core/__tests__/parser.test.d.ts +0 -2
  88. package/dist/core/__tests__/parser.test.d.ts.map +0 -1
  89. package/dist/core/__tests__/parser.test.js +0 -91
  90. package/dist/core/__tests__/parser.test.js.map +0 -1
  91. package/dist/core/__tests__/real-inquirer-test.test.d.ts +0 -2
  92. package/dist/core/__tests__/real-inquirer-test.test.d.ts.map +0 -1
  93. package/dist/core/__tests__/real-inquirer-test.test.js +0 -20
  94. package/dist/core/__tests__/real-inquirer-test.test.js.map +0 -1
  95. package/dist/core/__tests__/reproduce-bug.test.d.ts +0 -2
  96. package/dist/core/__tests__/reproduce-bug.test.d.ts.map +0 -1
  97. package/dist/core/__tests__/reproduce-bug.test.js +0 -85
  98. package/dist/core/__tests__/reproduce-bug.test.js.map +0 -1
  99. package/dist/core/__tests__/timeout-retry.test.d.ts +0 -2
  100. package/dist/core/__tests__/timeout-retry.test.d.ts.map +0 -1
  101. package/dist/core/__tests__/timeout-retry.test.js +0 -184
  102. package/dist/core/__tests__/timeout-retry.test.js.map +0 -1
  103. package/dist/core/__tests__/workflow-validation.test.d.ts +0 -2
  104. package/dist/core/__tests__/workflow-validation.test.d.ts.map +0 -1
  105. package/dist/core/__tests__/workflow-validation.test.js +0 -116
  106. package/dist/core/__tests__/workflow-validation.test.js.map +0 -1
  107. package/dist/core/__tests__/workspace.test.d.ts +0 -2
  108. package/dist/core/__tests__/workspace.test.d.ts.map +0 -1
  109. package/dist/core/__tests__/workspace.test.js +0 -29
  110. package/dist/core/__tests__/workspace.test.js.map +0 -1
  111. package/dist/core/__tests__/yaml-integration.test.d.ts +0 -2
  112. package/dist/core/__tests__/yaml-integration.test.d.ts.map +0 -1
  113. package/dist/core/__tests__/yaml-integration.test.js +0 -114
  114. package/dist/core/__tests__/yaml-integration.test.js.map +0 -1
  115. package/dist/core/__tests__/yaml-scenarios.test.d.ts +0 -2
  116. package/dist/core/__tests__/yaml-scenarios.test.d.ts.map +0 -1
  117. package/dist/core/__tests__/yaml-scenarios.test.js +0 -197
  118. package/dist/core/__tests__/yaml-scenarios.test.js.map +0 -1
  119. package/dist/core/condition-evaluator.d.ts +0 -44
  120. package/dist/core/condition-evaluator.d.ts.map +0 -1
  121. package/dist/core/condition-evaluator.js +0 -121
  122. package/dist/core/condition-evaluator.js.map +0 -1
  123. package/dist/core/executor.d.ts +0 -172
  124. package/dist/core/executor.d.ts.map +0 -1
  125. package/dist/core/executor.js +0 -590
  126. package/dist/core/executor.js.map +0 -1
  127. package/dist/core/history.d.ts +0 -51
  128. package/dist/core/history.d.ts.map +0 -1
  129. package/dist/core/history.js +0 -57
  130. package/dist/core/history.js.map +0 -1
  131. package/dist/core/parser.d.ts +0 -41
  132. package/dist/core/parser.d.ts.map +0 -1
  133. package/dist/core/parser.js +0 -206
  134. package/dist/core/parser.js.map +0 -1
  135. package/dist/core/recorder.d.ts +0 -48
  136. package/dist/core/recorder.d.ts.map +0 -1
  137. package/dist/core/recorder.js +0 -56
  138. package/dist/core/recorder.js.map +0 -1
  139. package/dist/core/rust-task-runner.d.ts +0 -14
  140. package/dist/core/rust-task-runner.d.ts.map +0 -1
  141. package/dist/core/rust-task-runner.js +0 -34
  142. package/dist/core/rust-task-runner.js.map +0 -1
  143. package/dist/core/task-runner.d.ts +0 -63
  144. package/dist/core/task-runner.d.ts.map +0 -1
  145. package/dist/core/task-runner.js +0 -259
  146. package/dist/core/task-runner.js.map +0 -1
  147. package/dist/core/template.d.ts +0 -11
  148. package/dist/core/template.d.ts.map +0 -1
  149. package/dist/core/template.js +0 -36
  150. package/dist/core/template.js.map +0 -1
  151. package/dist/core/workflow-schema.d.ts +0 -31
  152. package/dist/core/workflow-schema.d.ts.map +0 -1
  153. package/dist/core/workflow-schema.js +0 -127
  154. package/dist/core/workflow-schema.js.map +0 -1
  155. package/dist/core/workspace.d.ts +0 -90
  156. package/dist/core/workspace.d.ts.map +0 -1
  157. package/dist/core/workspace.js +0 -143
  158. package/dist/core/workspace.js.map +0 -1
  159. package/dist/index.d.ts.map +0 -1
  160. package/dist/index.js.map +0 -1
  161. package/dist/types/condition.d.ts +0 -62
  162. package/dist/types/condition.d.ts.map +0 -1
  163. package/dist/types/condition.js +0 -6
  164. package/dist/types/condition.js.map +0 -1
  165. package/dist/types/workflow.d.ts +0 -90
  166. package/dist/types/workflow.d.ts.map +0 -1
  167. package/dist/types/workflow.js +0 -2
  168. package/dist/types/workflow.js.map +0 -1
@@ -1,172 +0,0 @@
1
- import type { Workflow } from '../types/workflow';
2
- import { Workspace } from './workspace';
3
- /**
4
- * Workflow Executor
5
- *
6
- * This class executes workflow steps sequentially, handling:
7
- * - Step execution (run, choose, prompt, parallel, fail)
8
- * - Condition evaluation (when clauses)
9
- * - Variable substitution
10
- * - Parallel execution with workspace cloning
11
- * - Error handling and reporting
12
- */
13
- export interface ExecutionContext {
14
- workspace: Workspace;
15
- stepIndex: number;
16
- branchIndex?: number;
17
- lineNumber?: number;
18
- fileName?: string;
19
- }
20
- export declare class Executor {
21
- private static readonly PARALLEL_STEP_INDEX_MULTIPLIER;
22
- private workspace;
23
- private taskRunner;
24
- private choicePrompt;
25
- private textPrompt;
26
- private baseDir?;
27
- constructor();
28
- /**
29
- * Resolve baseDir path from workflow configuration
30
- *
31
- * baseDir determines where commands will be executed:
32
- * - If absolute path: use as-is
33
- * - If relative path: resolve relative to YAML file location
34
- * - If no _filePath: resolve relative to current working directory
35
- */
36
- private resolveBaseDir;
37
- /**
38
- * Create execution context for a step
39
- *
40
- * Context contains information needed to execute a step:
41
- * - Workspace reference (for storing/reading state)
42
- * - Step index (for tracking which step we're on)
43
- * - Line number and file name (for error reporting)
44
- */
45
- private createStepContext;
46
- /**
47
- * Evaluate step condition and return whether step should execute
48
- */
49
- private evaluateStepCondition;
50
- /**
51
- * Calculate base step index for parallel execution
52
- * When in parallel, stepIndex is encoded as: baseStepIndex * MULTIPLIER + branchIndex
53
- * So we divide by MULTIPLIER to get the original step index
54
- */
55
- private calculateBaseStepIndex;
56
- /**
57
- * Execute workflow steps sequentially
58
- *
59
- * Main entry point for workflow execution:
60
- * 1. Resolve baseDir for command execution
61
- * 2. Loop through each step
62
- * 3. Evaluate conditions (when clauses)
63
- * 4. Execute step if condition passes
64
- * 5. Check for failures and handle errors
65
- */
66
- execute(workflow: Workflow): Promise<void>;
67
- /**
68
- * Check if step result indicates success
69
- */
70
- private isStepSuccessful;
71
- /**
72
- * Fix malformed step (YAML indentation issue)
73
- * When choose/prompt is null but properties exist at step level
74
- * This happens when YAML is incorrectly indented
75
- */
76
- private fixMalformedStep;
77
- /**
78
- * Execute a single step based on its type
79
- *
80
- * Steps can be:
81
- * - run: Execute a shell command
82
- * - choose: Show user a choice menu
83
- * - prompt: Ask user for text input
84
- * - parallel: Execute multiple steps in parallel
85
- * - fail: Intentionally fail with a message
86
- *
87
- * @param bufferOutput - If true, collect output instead of displaying immediately (for parallel)
88
- * @param hasWhenCondition - If true, step has a condition (affects UI color)
89
- */
90
- private executeStep;
91
- /**
92
- * Execute a run step (shell command)
93
- *
94
- * Steps:
95
- * 1. Calculate base step index (for parallel execution)
96
- * 2. Substitute variables in command ({{variable}} syntax)
97
- * 3. Run command via TaskRunner (with retry logic if specified)
98
- * 4. Store result in workspace
99
- */
100
- private executeRunStep;
101
- /**
102
- * Execute a choose step (show user a selection menu)
103
- *
104
- * User selects from options, and the choice is stored:
105
- * - As a choice (for when: { choice: 'id' } conditions) - uses choice id
106
- * - As a variable (for {{variable}} substitution) - uses 'as' field if provided, otherwise choice id
107
- */
108
- private executeChooseStep;
109
- /**
110
- * Execute a prompt step (ask user for text input)
111
- *
112
- * User enters text, which is stored:
113
- * - As a variable (for {{variable}} substitution)
114
- * - As a fact (for when: { var: 'name' } conditions)
115
- */
116
- private executePromptStep;
117
- /**
118
- * Create execution contexts for parallel branches
119
- * Encodes branch index into stepIndex: baseStepIndex * MULTIPLIER + branchIndex
120
- * Each branch inherits line number and file name from the parallel step
121
- */
122
- private createParallelContexts;
123
- /**
124
- * Get display name for a parallel branch step
125
- */
126
- private getBranchDisplayName;
127
- /**
128
- * Execute all parallel branches simultaneously
129
- *
130
- * Each branch:
131
- * 1. Has its own workspace clone (isolated state)
132
- * 2. Evaluates its own conditions
133
- * 3. Executes in buffer mode (collects output, don't display yet)
134
- * 4. Returns result or error
135
- *
136
- * All branches run at the same time using Promise.all()
137
- * Uses log-update to show all branch statuses in real-time
138
- */
139
- private executeParallelBranches;
140
- /**
141
- * Update parallel branches display using log-update
142
- */
143
- private updateParallelBranchesDisplay;
144
- /**
145
- * Display parallel execution results
146
- * Status display is already done, now we show the detailed output
147
- */
148
- private displayParallelResults;
149
- /**
150
- * Merge facts and variables from parallel branches
151
- */
152
- private mergeParallelResults;
153
- /**
154
- * Count how many branches will actually execute (after when condition evaluation)
155
- */
156
- private countExecutableBranches;
157
- /**
158
- * Execute a parallel step (run multiple steps simultaneously)
159
- *
160
- * Process:
161
- * 1. Create isolated contexts for each branch (with cloned workspaces)
162
- * 2. Count how many branches will actually execute
163
- * 3. Show header box with actual executable branch count
164
- * 4. Execute all branches in parallel
165
- * 5. Display results
166
- * 6. Merge facts and variables from all branches back to main workspace
167
- * 7. Throw error if any branch failed
168
- */
169
- private executeParallelStep;
170
- private executeFailStep;
171
- }
172
- //# sourceMappingURL=executor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/core/executor.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAQ,QAAQ,EAAsC,MAAM,mBAAmB,CAAC;AAK5F,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;;;;;;;GASG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,QAAQ;IAGnB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,8BAA8B,CAAQ;IAE9D,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,OAAO,CAAC,CAAS;;IASzB;;;;;;;OAOG;IACH,OAAO,CAAC,cAAc;IAoBtB;;;;;;;OAOG;IACH,OAAO,CAAC,iBAAiB;IAkBzB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAS7B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAO9B;;;;;;;;;OASG;IACG,OAAO,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAuDhD;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAaxB;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAoCxB;;;;;;;;;;;;OAYG;YACW,WAAW;IAyCzB;;;;;;;;OAQG;YACW,cAAc;IA4D5B;;;;;;OAMG;YACW,iBAAiB;IA0B/B;;;;;;OAMG;YACW,iBAAiB;IAmB/B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAa9B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAgB5B;;;;;;;;;;;OAWG;YACW,uBAAuB;IA8FrC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IA8CrC;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IA2D9B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAc5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAmB/B;;;;;;;;;;;OAWG;YACW,mBAAmB;YAmCnB,eAAe;CAS9B"}