sudocode 1.1.1 → 1.1.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 (446) hide show
  1. package/README.md +4 -3
  2. package/package.json +8 -38
  3. package/build.js +0 -75
  4. package/node_modules/@sudocode-ai/cli/README.md +0 -330
  5. package/node_modules/@sudocode-ai/cli/dist/cli/feedback-commands.d.ts +0 -53
  6. package/node_modules/@sudocode-ai/cli/dist/cli/feedback-commands.d.ts.map +0 -1
  7. package/node_modules/@sudocode-ai/cli/dist/cli/feedback-commands.js +0 -274
  8. package/node_modules/@sudocode-ai/cli/dist/cli/feedback-commands.js.map +0 -1
  9. package/node_modules/@sudocode-ai/cli/dist/cli/init-commands.d.ts +0 -22
  10. package/node_modules/@sudocode-ai/cli/dist/cli/init-commands.d.ts.map +0 -1
  11. package/node_modules/@sudocode-ai/cli/dist/cli/init-commands.js +0 -148
  12. package/node_modules/@sudocode-ai/cli/dist/cli/init-commands.js.map +0 -1
  13. package/node_modules/@sudocode-ai/cli/dist/cli/issue-commands.d.ts +0 -45
  14. package/node_modules/@sudocode-ai/cli/dist/cli/issue-commands.d.ts.map +0 -1
  15. package/node_modules/@sudocode-ai/cli/dist/cli/issue-commands.js +0 -310
  16. package/node_modules/@sudocode-ai/cli/dist/cli/issue-commands.js.map +0 -1
  17. package/node_modules/@sudocode-ai/cli/dist/cli/query-commands.d.ts +0 -18
  18. package/node_modules/@sudocode-ai/cli/dist/cli/query-commands.d.ts.map +0 -1
  19. package/node_modules/@sudocode-ai/cli/dist/cli/query-commands.js +0 -61
  20. package/node_modules/@sudocode-ai/cli/dist/cli/query-commands.js.map +0 -1
  21. package/node_modules/@sudocode-ai/cli/dist/cli/reference-commands.d.ts +0 -22
  22. package/node_modules/@sudocode-ai/cli/dist/cli/reference-commands.d.ts.map +0 -1
  23. package/node_modules/@sudocode-ai/cli/dist/cli/reference-commands.js +0 -136
  24. package/node_modules/@sudocode-ai/cli/dist/cli/reference-commands.js.map +0 -1
  25. package/node_modules/@sudocode-ai/cli/dist/cli/relationship-commands.d.ts +0 -14
  26. package/node_modules/@sudocode-ai/cli/dist/cli/relationship-commands.d.ts.map +0 -1
  27. package/node_modules/@sudocode-ai/cli/dist/cli/relationship-commands.js +0 -76
  28. package/node_modules/@sudocode-ai/cli/dist/cli/relationship-commands.js.map +0 -1
  29. package/node_modules/@sudocode-ai/cli/dist/cli/server-commands.d.ts +0 -17
  30. package/node_modules/@sudocode-ai/cli/dist/cli/server-commands.d.ts.map +0 -1
  31. package/node_modules/@sudocode-ai/cli/dist/cli/server-commands.js +0 -99
  32. package/node_modules/@sudocode-ai/cli/dist/cli/server-commands.js.map +0 -1
  33. package/node_modules/@sudocode-ai/cli/dist/cli/spec-commands.d.ts +0 -38
  34. package/node_modules/@sudocode-ai/cli/dist/cli/spec-commands.d.ts.map +0 -1
  35. package/node_modules/@sudocode-ai/cli/dist/cli/spec-commands.js +0 -321
  36. package/node_modules/@sudocode-ai/cli/dist/cli/spec-commands.js.map +0 -1
  37. package/node_modules/@sudocode-ai/cli/dist/cli/status-commands.d.ts +0 -17
  38. package/node_modules/@sudocode-ai/cli/dist/cli/status-commands.d.ts.map +0 -1
  39. package/node_modules/@sudocode-ai/cli/dist/cli/status-commands.js +0 -131
  40. package/node_modules/@sudocode-ai/cli/dist/cli/status-commands.js.map +0 -1
  41. package/node_modules/@sudocode-ai/cli/dist/cli/sync-commands.d.ts +0 -24
  42. package/node_modules/@sudocode-ai/cli/dist/cli/sync-commands.d.ts.map +0 -1
  43. package/node_modules/@sudocode-ai/cli/dist/cli/sync-commands.js +0 -416
  44. package/node_modules/@sudocode-ai/cli/dist/cli/sync-commands.js.map +0 -1
  45. package/node_modules/@sudocode-ai/cli/dist/cli/update-commands.d.ts +0 -12
  46. package/node_modules/@sudocode-ai/cli/dist/cli/update-commands.d.ts.map +0 -1
  47. package/node_modules/@sudocode-ai/cli/dist/cli/update-commands.js +0 -78
  48. package/node_modules/@sudocode-ai/cli/dist/cli/update-commands.js.map +0 -1
  49. package/node_modules/@sudocode-ai/cli/dist/cli.d.ts +0 -6
  50. package/node_modules/@sudocode-ai/cli/dist/cli.d.ts.map +0 -1
  51. package/node_modules/@sudocode-ai/cli/dist/cli.js +0 -426
  52. package/node_modules/@sudocode-ai/cli/dist/cli.js.map +0 -1
  53. package/node_modules/@sudocode-ai/cli/dist/db.d.ts +0 -21
  54. package/node_modules/@sudocode-ai/cli/dist/db.d.ts.map +0 -1
  55. package/node_modules/@sudocode-ai/cli/dist/db.js +0 -54
  56. package/node_modules/@sudocode-ai/cli/dist/db.js.map +0 -1
  57. package/node_modules/@sudocode-ai/cli/dist/export.d.ts +0 -79
  58. package/node_modules/@sudocode-ai/cli/dist/export.d.ts.map +0 -1
  59. package/node_modules/@sudocode-ai/cli/dist/export.js +0 -195
  60. package/node_modules/@sudocode-ai/cli/dist/export.js.map +0 -1
  61. package/node_modules/@sudocode-ai/cli/dist/filename-generator.d.ts +0 -30
  62. package/node_modules/@sudocode-ai/cli/dist/filename-generator.d.ts.map +0 -1
  63. package/node_modules/@sudocode-ai/cli/dist/filename-generator.js +0 -93
  64. package/node_modules/@sudocode-ai/cli/dist/filename-generator.js.map +0 -1
  65. package/node_modules/@sudocode-ai/cli/dist/id-generator.d.ts +0 -26
  66. package/node_modules/@sudocode-ai/cli/dist/id-generator.d.ts.map +0 -1
  67. package/node_modules/@sudocode-ai/cli/dist/id-generator.js +0 -123
  68. package/node_modules/@sudocode-ai/cli/dist/id-generator.js.map +0 -1
  69. package/node_modules/@sudocode-ai/cli/dist/import.d.ts +0 -118
  70. package/node_modules/@sudocode-ai/cli/dist/import.d.ts.map +0 -1
  71. package/node_modules/@sudocode-ai/cli/dist/import.js +0 -608
  72. package/node_modules/@sudocode-ai/cli/dist/import.js.map +0 -1
  73. package/node_modules/@sudocode-ai/cli/dist/index.d.ts +0 -13
  74. package/node_modules/@sudocode-ai/cli/dist/index.d.ts.map +0 -1
  75. package/node_modules/@sudocode-ai/cli/dist/index.js +0 -13
  76. package/node_modules/@sudocode-ai/cli/dist/index.js.map +0 -1
  77. package/node_modules/@sudocode-ai/cli/dist/jsonl.d.ts +0 -69
  78. package/node_modules/@sudocode-ai/cli/dist/jsonl.d.ts.map +0 -1
  79. package/node_modules/@sudocode-ai/cli/dist/jsonl.js +0 -333
  80. package/node_modules/@sudocode-ai/cli/dist/jsonl.js.map +0 -1
  81. package/node_modules/@sudocode-ai/cli/dist/markdown.d.ts +0 -146
  82. package/node_modules/@sudocode-ai/cli/dist/markdown.d.ts.map +0 -1
  83. package/node_modules/@sudocode-ai/cli/dist/markdown.js +0 -357
  84. package/node_modules/@sudocode-ai/cli/dist/markdown.js.map +0 -1
  85. package/node_modules/@sudocode-ai/cli/dist/migrations.d.ts +0 -23
  86. package/node_modules/@sudocode-ai/cli/dist/migrations.d.ts.map +0 -1
  87. package/node_modules/@sudocode-ai/cli/dist/migrations.js +0 -57
  88. package/node_modules/@sudocode-ai/cli/dist/migrations.js.map +0 -1
  89. package/node_modules/@sudocode-ai/cli/dist/operations/events.d.ts +0 -53
  90. package/node_modules/@sudocode-ai/cli/dist/operations/events.d.ts.map +0 -1
  91. package/node_modules/@sudocode-ai/cli/dist/operations/events.js +0 -108
  92. package/node_modules/@sudocode-ai/cli/dist/operations/events.js.map +0 -1
  93. package/node_modules/@sudocode-ai/cli/dist/operations/feedback-anchors.d.ts +0 -92
  94. package/node_modules/@sudocode-ai/cli/dist/operations/feedback-anchors.d.ts.map +0 -1
  95. package/node_modules/@sudocode-ai/cli/dist/operations/feedback-anchors.js +0 -444
  96. package/node_modules/@sudocode-ai/cli/dist/operations/feedback-anchors.js.map +0 -1
  97. package/node_modules/@sudocode-ai/cli/dist/operations/feedback.d.ts +0 -76
  98. package/node_modules/@sudocode-ai/cli/dist/operations/feedback.d.ts.map +0 -1
  99. package/node_modules/@sudocode-ai/cli/dist/operations/feedback.js +0 -234
  100. package/node_modules/@sudocode-ai/cli/dist/operations/feedback.js.map +0 -1
  101. package/node_modules/@sudocode-ai/cli/dist/operations/index.d.ts +0 -10
  102. package/node_modules/@sudocode-ai/cli/dist/operations/index.d.ts.map +0 -1
  103. package/node_modules/@sudocode-ai/cli/dist/operations/index.js +0 -10
  104. package/node_modules/@sudocode-ai/cli/dist/operations/index.js.map +0 -1
  105. package/node_modules/@sudocode-ai/cli/dist/operations/issues.d.ts +0 -82
  106. package/node_modules/@sudocode-ai/cli/dist/operations/issues.d.ts.map +0 -1
  107. package/node_modules/@sudocode-ai/cli/dist/operations/issues.js +0 -411
  108. package/node_modules/@sudocode-ai/cli/dist/operations/issues.js.map +0 -1
  109. package/node_modules/@sudocode-ai/cli/dist/operations/references.d.ts +0 -34
  110. package/node_modules/@sudocode-ai/cli/dist/operations/references.d.ts.map +0 -1
  111. package/node_modules/@sudocode-ai/cli/dist/operations/references.js +0 -117
  112. package/node_modules/@sudocode-ai/cli/dist/operations/references.js.map +0 -1
  113. package/node_modules/@sudocode-ai/cli/dist/operations/relationships.d.ts +0 -57
  114. package/node_modules/@sudocode-ai/cli/dist/operations/relationships.d.ts.map +0 -1
  115. package/node_modules/@sudocode-ai/cli/dist/operations/relationships.js +0 -236
  116. package/node_modules/@sudocode-ai/cli/dist/operations/relationships.js.map +0 -1
  117. package/node_modules/@sudocode-ai/cli/dist/operations/specs.d.ts +0 -64
  118. package/node_modules/@sudocode-ai/cli/dist/operations/specs.d.ts.map +0 -1
  119. package/node_modules/@sudocode-ai/cli/dist/operations/specs.js +0 -290
  120. package/node_modules/@sudocode-ai/cli/dist/operations/specs.js.map +0 -1
  121. package/node_modules/@sudocode-ai/cli/dist/operations/tags.d.ts +0 -42
  122. package/node_modules/@sudocode-ai/cli/dist/operations/tags.d.ts.map +0 -1
  123. package/node_modules/@sudocode-ai/cli/dist/operations/tags.js +0 -127
  124. package/node_modules/@sudocode-ai/cli/dist/operations/tags.js.map +0 -1
  125. package/node_modules/@sudocode-ai/cli/dist/operations/transactions.d.ts +0 -41
  126. package/node_modules/@sudocode-ai/cli/dist/operations/transactions.d.ts.map +0 -1
  127. package/node_modules/@sudocode-ai/cli/dist/operations/transactions.js +0 -111
  128. package/node_modules/@sudocode-ai/cli/dist/operations/transactions.js.map +0 -1
  129. package/node_modules/@sudocode-ai/cli/dist/sync.d.ts +0 -47
  130. package/node_modules/@sudocode-ai/cli/dist/sync.d.ts.map +0 -1
  131. package/node_modules/@sudocode-ai/cli/dist/sync.js +0 -442
  132. package/node_modules/@sudocode-ai/cli/dist/sync.js.map +0 -1
  133. package/node_modules/@sudocode-ai/cli/dist/test-schema.d.ts +0 -5
  134. package/node_modules/@sudocode-ai/cli/dist/test-schema.d.ts.map +0 -1
  135. package/node_modules/@sudocode-ai/cli/dist/test-schema.js +0 -46
  136. package/node_modules/@sudocode-ai/cli/dist/test-schema.js.map +0 -1
  137. package/node_modules/@sudocode-ai/cli/dist/types.d.ts +0 -7
  138. package/node_modules/@sudocode-ai/cli/dist/types.d.ts.map +0 -1
  139. package/node_modules/@sudocode-ai/cli/dist/types.js +0 -7
  140. package/node_modules/@sudocode-ai/cli/dist/types.js.map +0 -1
  141. package/node_modules/@sudocode-ai/cli/dist/update-checker.d.ts +0 -24
  142. package/node_modules/@sudocode-ai/cli/dist/update-checker.d.ts.map +0 -1
  143. package/node_modules/@sudocode-ai/cli/dist/update-checker.js +0 -151
  144. package/node_modules/@sudocode-ai/cli/dist/update-checker.js.map +0 -1
  145. package/node_modules/@sudocode-ai/cli/dist/version.d.ts +0 -12
  146. package/node_modules/@sudocode-ai/cli/dist/version.d.ts.map +0 -1
  147. package/node_modules/@sudocode-ai/cli/dist/version.js +0 -23
  148. package/node_modules/@sudocode-ai/cli/dist/version.js.map +0 -1
  149. package/node_modules/@sudocode-ai/cli/dist/watcher.d.ts +0 -63
  150. package/node_modules/@sudocode-ai/cli/dist/watcher.d.ts.map +0 -1
  151. package/node_modules/@sudocode-ai/cli/dist/watcher.js +0 -438
  152. package/node_modules/@sudocode-ai/cli/dist/watcher.js.map +0 -1
  153. package/node_modules/@sudocode-ai/cli/package.json +0 -65
  154. package/node_modules/@sudocode-ai/local-server/README.md +0 -19
  155. package/node_modules/@sudocode-ai/local-server/dist/cli.d.ts +0 -7
  156. package/node_modules/@sudocode-ai/local-server/dist/cli.d.ts.map +0 -1
  157. package/node_modules/@sudocode-ai/local-server/dist/cli.js +0 -7
  158. package/node_modules/@sudocode-ai/local-server/dist/cli.js.map +0 -1
  159. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/engine.d.ts +0 -103
  160. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/engine.d.ts.map +0 -1
  161. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/engine.js +0 -10
  162. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/engine.js.map +0 -1
  163. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/simple-engine.d.ts +0 -190
  164. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/simple-engine.d.ts.map +0 -1
  165. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/simple-engine.js +0 -611
  166. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/simple-engine.js.map +0 -1
  167. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/types.d.ts +0 -116
  168. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/types.d.ts.map +0 -1
  169. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/types.js +0 -10
  170. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/types.js.map +0 -1
  171. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-adapter.d.ts +0 -176
  172. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-adapter.d.ts.map +0 -1
  173. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-adapter.js +0 -438
  174. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-adapter.js.map +0 -1
  175. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-integration.d.ts +0 -96
  176. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-integration.d.ts.map +0 -1
  177. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-integration.js +0 -96
  178. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-integration.js.map +0 -1
  179. package/node_modules/@sudocode-ai/local-server/dist/execution/output/claude-code-output-processor.d.ts +0 -321
  180. package/node_modules/@sudocode-ai/local-server/dist/execution/output/claude-code-output-processor.d.ts.map +0 -1
  181. package/node_modules/@sudocode-ai/local-server/dist/execution/output/claude-code-output-processor.js +0 -769
  182. package/node_modules/@sudocode-ai/local-server/dist/execution/output/claude-code-output-processor.js.map +0 -1
  183. package/node_modules/@sudocode-ai/local-server/dist/execution/output/index.d.ts +0 -18
  184. package/node_modules/@sudocode-ai/local-server/dist/execution/output/index.d.ts.map +0 -1
  185. package/node_modules/@sudocode-ai/local-server/dist/execution/output/index.js +0 -15
  186. package/node_modules/@sudocode-ai/local-server/dist/execution/output/index.js.map +0 -1
  187. package/node_modules/@sudocode-ai/local-server/dist/execution/output/types.d.ts +0 -421
  188. package/node_modules/@sudocode-ai/local-server/dist/execution/output/types.d.ts.map +0 -1
  189. package/node_modules/@sudocode-ai/local-server/dist/execution/output/types.js +0 -22
  190. package/node_modules/@sudocode-ai/local-server/dist/execution/output/types.js.map +0 -1
  191. package/node_modules/@sudocode-ai/local-server/dist/execution/process/builders/claude.d.ts +0 -86
  192. package/node_modules/@sudocode-ai/local-server/dist/execution/process/builders/claude.d.ts.map +0 -1
  193. package/node_modules/@sudocode-ai/local-server/dist/execution/process/builders/claude.js +0 -59
  194. package/node_modules/@sudocode-ai/local-server/dist/execution/process/builders/claude.js.map +0 -1
  195. package/node_modules/@sudocode-ai/local-server/dist/execution/process/index.d.ts +0 -15
  196. package/node_modules/@sudocode-ai/local-server/dist/execution/process/index.d.ts.map +0 -1
  197. package/node_modules/@sudocode-ai/local-server/dist/execution/process/index.js +0 -15
  198. package/node_modules/@sudocode-ai/local-server/dist/execution/process/index.js.map +0 -1
  199. package/node_modules/@sudocode-ai/local-server/dist/execution/process/manager.d.ts +0 -133
  200. package/node_modules/@sudocode-ai/local-server/dist/execution/process/manager.d.ts.map +0 -1
  201. package/node_modules/@sudocode-ai/local-server/dist/execution/process/manager.js +0 -10
  202. package/node_modules/@sudocode-ai/local-server/dist/execution/process/manager.js.map +0 -1
  203. package/node_modules/@sudocode-ai/local-server/dist/execution/process/simple-manager.d.ts +0 -102
  204. package/node_modules/@sudocode-ai/local-server/dist/execution/process/simple-manager.d.ts.map +0 -1
  205. package/node_modules/@sudocode-ai/local-server/dist/execution/process/simple-manager.js +0 -336
  206. package/node_modules/@sudocode-ai/local-server/dist/execution/process/simple-manager.js.map +0 -1
  207. package/node_modules/@sudocode-ai/local-server/dist/execution/process/types.d.ts +0 -105
  208. package/node_modules/@sudocode-ai/local-server/dist/execution/process/types.d.ts.map +0 -1
  209. package/node_modules/@sudocode-ai/local-server/dist/execution/process/types.js +0 -10
  210. package/node_modules/@sudocode-ai/local-server/dist/execution/process/types.js.map +0 -1
  211. package/node_modules/@sudocode-ai/local-server/dist/execution/process/utils.d.ts +0 -53
  212. package/node_modules/@sudocode-ai/local-server/dist/execution/process/utils.d.ts.map +0 -1
  213. package/node_modules/@sudocode-ai/local-server/dist/execution/process/utils.js +0 -97
  214. package/node_modules/@sudocode-ai/local-server/dist/execution/process/utils.js.map +0 -1
  215. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/circuit-breaker.d.ts +0 -170
  216. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/circuit-breaker.d.ts.map +0 -1
  217. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/circuit-breaker.js +0 -291
  218. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/circuit-breaker.js.map +0 -1
  219. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/executor.d.ts +0 -109
  220. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/executor.d.ts.map +0 -1
  221. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/executor.js +0 -10
  222. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/executor.js.map +0 -1
  223. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/index.d.ts +0 -14
  224. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/index.d.ts.map +0 -1
  225. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/index.js +0 -15
  226. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/index.js.map +0 -1
  227. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/resilient-executor.d.ts +0 -86
  228. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/resilient-executor.d.ts.map +0 -1
  229. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/resilient-executor.js +0 -261
  230. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/resilient-executor.js.map +0 -1
  231. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/retry.d.ts +0 -161
  232. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/retry.d.ts.map +0 -1
  233. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/retry.js +0 -234
  234. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/retry.js.map +0 -1
  235. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/types.d.ts +0 -226
  236. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/types.d.ts.map +0 -1
  237. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/types.js +0 -30
  238. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/types.js.map +0 -1
  239. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/event-buffer.d.ts +0 -119
  240. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/event-buffer.d.ts.map +0 -1
  241. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/event-buffer.js +0 -208
  242. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/event-buffer.js.map +0 -1
  243. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/index.d.ts +0 -10
  244. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/index.d.ts.map +0 -1
  245. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/index.js +0 -10
  246. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/index.js.map +0 -1
  247. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/sse-transport.d.ts +0 -146
  248. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/sse-transport.d.ts.map +0 -1
  249. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/sse-transport.js +0 -282
  250. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/sse-transport.js.map +0 -1
  251. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/transport-manager.d.ts +0 -176
  252. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/transport-manager.d.ts.map +0 -1
  253. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/transport-manager.js +0 -231
  254. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/transport-manager.js.map +0 -1
  255. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/index.d.ts +0 -13
  256. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/index.d.ts.map +0 -1
  257. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/index.js +0 -13
  258. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/index.js.map +0 -1
  259. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/linear-orchestrator.d.ts +0 -216
  260. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/linear-orchestrator.d.ts.map +0 -1
  261. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/linear-orchestrator.js +0 -683
  262. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/linear-orchestrator.js.map +0 -1
  263. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/memory-storage.d.ts +0 -54
  264. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/memory-storage.d.ts.map +0 -1
  265. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/memory-storage.js +0 -68
  266. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/memory-storage.js.map +0 -1
  267. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/orchestrator.d.ts +0 -158
  268. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/orchestrator.d.ts.map +0 -1
  269. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/orchestrator.js +0 -9
  270. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/orchestrator.js.map +0 -1
  271. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/types.d.ts +0 -172
  272. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/types.d.ts.map +0 -1
  273. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/types.js +0 -9
  274. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/types.js.map +0 -1
  275. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/utils.d.ts +0 -89
  276. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/utils.d.ts.map +0 -1
  277. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/utils.js +0 -152
  278. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/utils.js.map +0 -1
  279. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/config.d.ts +0 -74
  280. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/config.d.ts.map +0 -1
  281. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/config.js +0 -280
  282. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/config.js.map +0 -1
  283. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-cli.d.ts +0 -151
  284. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-cli.d.ts.map +0 -1
  285. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-cli.js +0 -189
  286. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-cli.js.map +0 -1
  287. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/index.d.ts +0 -16
  288. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/index.d.ts.map +0 -1
  289. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/index.js +0 -15
  290. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/index.js.map +0 -1
  291. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/manager.d.ts +0 -184
  292. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/manager.d.ts.map +0 -1
  293. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/manager.js +0 -452
  294. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/manager.js.map +0 -1
  295. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/types.d.ts +0 -90
  296. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/types.d.ts.map +0 -1
  297. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/types.js +0 -42
  298. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/types.js.map +0 -1
  299. package/node_modules/@sudocode-ai/local-server/dist/index.d.ts +0 -8
  300. package/node_modules/@sudocode-ai/local-server/dist/index.d.ts.map +0 -1
  301. package/node_modules/@sudocode-ai/local-server/dist/index.js +0 -356
  302. package/node_modules/@sudocode-ai/local-server/dist/index.js.map +0 -1
  303. package/node_modules/@sudocode-ai/local-server/dist/public/assets/index-C4SmlXoo.js +0 -568
  304. package/node_modules/@sudocode-ai/local-server/dist/public/assets/index-C4SmlXoo.js.map +0 -1
  305. package/node_modules/@sudocode-ai/local-server/dist/public/assets/index-DE59j7ti.css +0 -1
  306. package/node_modules/@sudocode-ai/local-server/dist/public/assets/react-vendor-LX0UoTxg.js +0 -60
  307. package/node_modules/@sudocode-ai/local-server/dist/public/assets/react-vendor-LX0UoTxg.js.map +0 -1
  308. package/node_modules/@sudocode-ai/local-server/dist/public/assets/ui-vendor-_cxVHaqZ.js +0 -54
  309. package/node_modules/@sudocode-ai/local-server/dist/public/assets/ui-vendor-_cxVHaqZ.js.map +0 -1
  310. package/node_modules/@sudocode-ai/local-server/dist/public/favicon.ico +0 -0
  311. package/node_modules/@sudocode-ai/local-server/dist/public/index.html +0 -16
  312. package/node_modules/@sudocode-ai/local-server/dist/public/logo.png +0 -0
  313. package/node_modules/@sudocode-ai/local-server/dist/routes/executions-stream.d.ts +0 -24
  314. package/node_modules/@sudocode-ai/local-server/dist/routes/executions-stream.d.ts.map +0 -1
  315. package/node_modules/@sudocode-ai/local-server/dist/routes/executions-stream.js +0 -55
  316. package/node_modules/@sudocode-ai/local-server/dist/routes/executions-stream.js.map +0 -1
  317. package/node_modules/@sudocode-ai/local-server/dist/routes/executions.d.ts +0 -19
  318. package/node_modules/@sudocode-ai/local-server/dist/routes/executions.d.ts.map +0 -1
  319. package/node_modules/@sudocode-ai/local-server/dist/routes/executions.js +0 -267
  320. package/node_modules/@sudocode-ai/local-server/dist/routes/executions.js.map +0 -1
  321. package/node_modules/@sudocode-ai/local-server/dist/routes/feedback.d.ts +0 -7
  322. package/node_modules/@sudocode-ai/local-server/dist/routes/feedback.d.ts.map +0 -1
  323. package/node_modules/@sudocode-ai/local-server/dist/routes/feedback.js +0 -329
  324. package/node_modules/@sudocode-ai/local-server/dist/routes/feedback.js.map +0 -1
  325. package/node_modules/@sudocode-ai/local-server/dist/routes/issues.d.ts +0 -7
  326. package/node_modules/@sudocode-ai/local-server/dist/routes/issues.d.ts.map +0 -1
  327. package/node_modules/@sudocode-ai/local-server/dist/routes/issues.js +0 -280
  328. package/node_modules/@sudocode-ai/local-server/dist/routes/issues.js.map +0 -1
  329. package/node_modules/@sudocode-ai/local-server/dist/routes/relationships.d.ts +0 -7
  330. package/node_modules/@sudocode-ai/local-server/dist/routes/relationships.d.ts.map +0 -1
  331. package/node_modules/@sudocode-ai/local-server/dist/routes/relationships.js +0 -308
  332. package/node_modules/@sudocode-ai/local-server/dist/routes/relationships.js.map +0 -1
  333. package/node_modules/@sudocode-ai/local-server/dist/routes/specs.d.ts +0 -7
  334. package/node_modules/@sudocode-ai/local-server/dist/routes/specs.d.ts.map +0 -1
  335. package/node_modules/@sudocode-ai/local-server/dist/routes/specs.js +0 -270
  336. package/node_modules/@sudocode-ai/local-server/dist/routes/specs.js.map +0 -1
  337. package/node_modules/@sudocode-ai/local-server/dist/services/db.d.ts +0 -33
  338. package/node_modules/@sudocode-ai/local-server/dist/services/db.d.ts.map +0 -1
  339. package/node_modules/@sudocode-ai/local-server/dist/services/db.js +0 -85
  340. package/node_modules/@sudocode-ai/local-server/dist/services/db.js.map +0 -1
  341. package/node_modules/@sudocode-ai/local-server/dist/services/execution-lifecycle.d.ts +0 -108
  342. package/node_modules/@sudocode-ai/local-server/dist/services/execution-lifecycle.d.ts.map +0 -1
  343. package/node_modules/@sudocode-ai/local-server/dist/services/execution-lifecycle.js +0 -286
  344. package/node_modules/@sudocode-ai/local-server/dist/services/execution-lifecycle.js.map +0 -1
  345. package/node_modules/@sudocode-ai/local-server/dist/services/execution-service.d.ts +0 -185
  346. package/node_modules/@sudocode-ai/local-server/dist/services/execution-service.d.ts.map +0 -1
  347. package/node_modules/@sudocode-ai/local-server/dist/services/execution-service.js +0 -676
  348. package/node_modules/@sudocode-ai/local-server/dist/services/execution-service.js.map +0 -1
  349. package/node_modules/@sudocode-ai/local-server/dist/services/executions.d.ts +0 -59
  350. package/node_modules/@sudocode-ai/local-server/dist/services/executions.d.ts.map +0 -1
  351. package/node_modules/@sudocode-ai/local-server/dist/services/executions.js +0 -164
  352. package/node_modules/@sudocode-ai/local-server/dist/services/executions.js.map +0 -1
  353. package/node_modules/@sudocode-ai/local-server/dist/services/export.d.ts +0 -24
  354. package/node_modules/@sudocode-ai/local-server/dist/services/export.d.ts.map +0 -1
  355. package/node_modules/@sudocode-ai/local-server/dist/services/export.js +0 -106
  356. package/node_modules/@sudocode-ai/local-server/dist/services/export.js.map +0 -1
  357. package/node_modules/@sudocode-ai/local-server/dist/services/feedback.d.ts +0 -40
  358. package/node_modules/@sudocode-ai/local-server/dist/services/feedback.d.ts.map +0 -1
  359. package/node_modules/@sudocode-ai/local-server/dist/services/feedback.js +0 -54
  360. package/node_modules/@sudocode-ai/local-server/dist/services/feedback.js.map +0 -1
  361. package/node_modules/@sudocode-ai/local-server/dist/services/issues.d.ts +0 -27
  362. package/node_modules/@sudocode-ai/local-server/dist/services/issues.d.ts.map +0 -1
  363. package/node_modules/@sudocode-ai/local-server/dist/services/issues.js +0 -35
  364. package/node_modules/@sudocode-ai/local-server/dist/services/issues.js.map +0 -1
  365. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-template-engine.d.ts +0 -108
  366. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-template-engine.d.ts.map +0 -1
  367. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-template-engine.js +0 -212
  368. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-template-engine.js.map +0 -1
  369. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-templates.d.ts +0 -97
  370. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-templates.d.ts.map +0 -1
  371. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-templates.js +0 -236
  372. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-templates.js.map +0 -1
  373. package/node_modules/@sudocode-ai/local-server/dist/services/relationships.d.ts +0 -35
  374. package/node_modules/@sudocode-ai/local-server/dist/services/relationships.d.ts.map +0 -1
  375. package/node_modules/@sudocode-ai/local-server/dist/services/relationships.js +0 -42
  376. package/node_modules/@sudocode-ai/local-server/dist/services/relationships.js.map +0 -1
  377. package/node_modules/@sudocode-ai/local-server/dist/services/specs.d.ts +0 -27
  378. package/node_modules/@sudocode-ai/local-server/dist/services/specs.d.ts.map +0 -1
  379. package/node_modules/@sudocode-ai/local-server/dist/services/specs.js +0 -35
  380. package/node_modules/@sudocode-ai/local-server/dist/services/specs.js.map +0 -1
  381. package/node_modules/@sudocode-ai/local-server/dist/services/watcher.d.ts +0 -50
  382. package/node_modules/@sudocode-ai/local-server/dist/services/watcher.d.ts.map +0 -1
  383. package/node_modules/@sudocode-ai/local-server/dist/services/watcher.js +0 -69
  384. package/node_modules/@sudocode-ai/local-server/dist/services/watcher.js.map +0 -1
  385. package/node_modules/@sudocode-ai/local-server/dist/services/websocket.d.ts +0 -127
  386. package/node_modules/@sudocode-ai/local-server/dist/services/websocket.d.ts.map +0 -1
  387. package/node_modules/@sudocode-ai/local-server/dist/services/websocket.js +0 -389
  388. package/node_modules/@sudocode-ai/local-server/dist/services/websocket.js.map +0 -1
  389. package/node_modules/@sudocode-ai/local-server/dist/utils/sudocode-dir.d.ts +0 -6
  390. package/node_modules/@sudocode-ai/local-server/dist/utils/sudocode-dir.d.ts.map +0 -1
  391. package/node_modules/@sudocode-ai/local-server/dist/utils/sudocode-dir.js +0 -9
  392. package/node_modules/@sudocode-ai/local-server/dist/utils/sudocode-dir.js.map +0 -1
  393. package/node_modules/@sudocode-ai/local-server/package.json +0 -72
  394. package/node_modules/@sudocode-ai/mcp/LICENSE +0 -21
  395. package/node_modules/@sudocode-ai/mcp/README.md +0 -226
  396. package/node_modules/@sudocode-ai/mcp/dist/client.d.ts +0 -33
  397. package/node_modules/@sudocode-ai/mcp/dist/client.d.ts.map +0 -1
  398. package/node_modules/@sudocode-ai/mcp/dist/client.js +0 -159
  399. package/node_modules/@sudocode-ai/mcp/dist/client.js.map +0 -1
  400. package/node_modules/@sudocode-ai/mcp/dist/index.d.ts +0 -6
  401. package/node_modules/@sudocode-ai/mcp/dist/index.d.ts.map +0 -1
  402. package/node_modules/@sudocode-ai/mcp/dist/index.js +0 -64
  403. package/node_modules/@sudocode-ai/mcp/dist/index.js.map +0 -1
  404. package/node_modules/@sudocode-ai/mcp/dist/server.d.ts +0 -26
  405. package/node_modules/@sudocode-ai/mcp/dist/server.d.ts.map +0 -1
  406. package/node_modules/@sudocode-ai/mcp/dist/server.js +0 -575
  407. package/node_modules/@sudocode-ai/mcp/dist/server.js.map +0 -1
  408. package/node_modules/@sudocode-ai/mcp/dist/tools/analytics.d.ts +0 -41
  409. package/node_modules/@sudocode-ai/mcp/dist/tools/analytics.d.ts.map +0 -1
  410. package/node_modules/@sudocode-ai/mcp/dist/tools/analytics.js +0 -21
  411. package/node_modules/@sudocode-ai/mcp/dist/tools/analytics.js.map +0 -1
  412. package/node_modules/@sudocode-ai/mcp/dist/tools/feedback.d.ts +0 -19
  413. package/node_modules/@sudocode-ai/mcp/dist/tools/feedback.d.ts.map +0 -1
  414. package/node_modules/@sudocode-ai/mcp/dist/tools/feedback.js +0 -24
  415. package/node_modules/@sudocode-ai/mcp/dist/tools/feedback.js.map +0 -1
  416. package/node_modules/@sudocode-ai/mcp/dist/tools/init.d.ts +0 -17
  417. package/node_modules/@sudocode-ai/mcp/dist/tools/init.d.ts.map +0 -1
  418. package/node_modules/@sudocode-ai/mcp/dist/tools/init.js +0 -15
  419. package/node_modules/@sudocode-ai/mcp/dist/tools/init.js.map +0 -1
  420. package/node_modules/@sudocode-ai/mcp/dist/tools/issues.d.ts +0 -44
  421. package/node_modules/@sudocode-ai/mcp/dist/tools/issues.d.ts.map +0 -1
  422. package/node_modules/@sudocode-ai/mcp/dist/tools/issues.js +0 -106
  423. package/node_modules/@sudocode-ai/mcp/dist/tools/issues.js.map +0 -1
  424. package/node_modules/@sudocode-ai/mcp/dist/tools/references.d.ts +0 -21
  425. package/node_modules/@sudocode-ai/mcp/dist/tools/references.d.ts.map +0 -1
  426. package/node_modules/@sudocode-ai/mcp/dist/tools/references.js +0 -49
  427. package/node_modules/@sudocode-ai/mcp/dist/tools/references.js.map +0 -1
  428. package/node_modules/@sudocode-ai/mcp/dist/tools/relationships.d.ts +0 -15
  429. package/node_modules/@sudocode-ai/mcp/dist/tools/relationships.d.ts.map +0 -1
  430. package/node_modules/@sudocode-ai/mcp/dist/tools/relationships.js +0 -18
  431. package/node_modules/@sudocode-ai/mcp/dist/tools/relationships.js.map +0 -1
  432. package/node_modules/@sudocode-ai/mcp/dist/tools/specs.d.ts +0 -35
  433. package/node_modules/@sudocode-ai/mcp/dist/tools/specs.d.ts.map +0 -1
  434. package/node_modules/@sudocode-ai/mcp/dist/tools/specs.js +0 -85
  435. package/node_modules/@sudocode-ai/mcp/dist/tools/specs.js.map +0 -1
  436. package/node_modules/@sudocode-ai/mcp/dist/types.d.ts +0 -35
  437. package/node_modules/@sudocode-ai/mcp/dist/types.d.ts.map +0 -1
  438. package/node_modules/@sudocode-ai/mcp/dist/types.js +0 -21
  439. package/node_modules/@sudocode-ai/mcp/dist/types.js.map +0 -1
  440. package/node_modules/@sudocode-ai/mcp/package.json +0 -67
  441. package/node_modules/@sudocode-ai/types/README.md +0 -7
  442. package/node_modules/@sudocode-ai/types/dist/schema.d.ts +0 -45
  443. package/node_modules/@sudocode-ai/types/dist/schema.d.ts.map +0 -1
  444. package/node_modules/@sudocode-ai/types/dist/schema.js +0 -338
  445. package/node_modules/@sudocode-ai/types/dist/schema.js.map +0 -1
  446. package/node_modules/@sudocode-ai/types/package.json +0 -46
@@ -1,683 +0,0 @@
1
- /**
2
- * Linear Workflow Orchestrator Implementation
3
- *
4
- * Executes workflow steps sequentially with state management and checkpointing.
5
- *
6
- * @module execution/workflow/linear-orchestrator
7
- */
8
- import { renderTemplate, generateId, extractValue, evaluateCondition, } from "./utils.js";
9
- /**
10
- * LinearOrchestrator - Sequential workflow execution with state management
11
- *
12
- * Implements the IWorkflowOrchestrator interface to provide:
13
- * - Sequential step execution
14
- * - State persistence via checkpoints
15
- * - Crash recovery and resumption
16
- * - Event-driven monitoring
17
- */
18
- export class LinearOrchestrator {
19
- // Internal state
20
- _executions = new Map();
21
- _cleanedUpExecutions = new Set(); // Track which executions have been cleaned up
22
- _storage;
23
- _executor;
24
- _agUiAdapter;
25
- _lifecycleService;
26
- // Event handlers
27
- _workflowStartHandlers = [];
28
- _workflowCompleteHandlers = [];
29
- _workflowFailedHandlers = [];
30
- _stepStartHandlers = [];
31
- _stepCompleteHandlers = [];
32
- _stepFailedHandlers = [];
33
- _checkpointHandlers = [];
34
- _resumeHandlers = [];
35
- _pauseHandlers = [];
36
- _cancelHandlers = [];
37
- /**
38
- * Create a new LinearOrchestrator
39
- *
40
- * @param executor - Resilient executor for running tasks
41
- * @param storage - Optional storage for checkpoints
42
- * @param agUiAdapter - Optional AG-UI event adapter for real-time event streaming
43
- * @param lifecycleService - Optional execution lifecycle service for worktree management
44
- */
45
- constructor(executor, storage, agUiAdapter, lifecycleService) {
46
- this._executor = executor;
47
- this._storage = storage;
48
- this._agUiAdapter = agUiAdapter;
49
- this._lifecycleService = lifecycleService;
50
- }
51
- /**
52
- * Start a new workflow execution
53
- *
54
- * @param workflow - Workflow definition to execute
55
- * @param workDir - Working directory for task execution
56
- * @param options - Execution options (executionId is required)
57
- * @returns Promise resolving to execution ID
58
- */
59
- async startWorkflow(workflow, workDir, options) {
60
- // 1. Create execution
61
- const execution = {
62
- executionId: options.executionId,
63
- workflowId: workflow.id,
64
- definition: workflow,
65
- status: "pending",
66
- currentStepIndex: 0,
67
- context: options?.initialContext || workflow.initialContext || {},
68
- stepResults: [],
69
- startedAt: new Date(),
70
- };
71
- // 2. Store execution
72
- this._executions.set(execution.executionId, execution);
73
- // 3. Start execution in background (non-blocking)
74
- this._executeWorkflow(workflow, execution, workDir, options?.checkpointInterval).catch((error) => {
75
- execution.status = "failed";
76
- execution.completedAt = new Date();
77
- execution.error = error.message;
78
- // Emit workflow failed event
79
- this._workflowFailedHandlers.forEach((handler) => {
80
- handler(execution.executionId, error);
81
- });
82
- // Emit AG-UI RUN_ERROR event
83
- if (this._agUiAdapter) {
84
- this._agUiAdapter.emitRunError(error.message, error.stack);
85
- }
86
- // Cleanup execution resources (worktree)
87
- this._cleanupExecution(execution).catch(() => {
88
- // Error already logged in _cleanupExecution
89
- });
90
- });
91
- // 4. Return execution ID immediately
92
- return execution.executionId;
93
- }
94
- /**
95
- * Resume a workflow from a checkpoint
96
- *
97
- * @param executionId - Execution ID to resume
98
- * @param options - Resume options
99
- * @returns Promise resolving to execution ID
100
- */
101
- async resumeWorkflow(executionId, options) {
102
- if (!this._storage) {
103
- throw new Error("Cannot resume workflow: no storage configured");
104
- }
105
- // Load checkpoint
106
- const checkpoint = await this._storage.loadCheckpoint(executionId);
107
- if (!checkpoint) {
108
- throw new Error(`No checkpoint found for execution ${executionId}`);
109
- }
110
- // Restore execution state
111
- const execution = {
112
- workflowId: checkpoint.workflowId,
113
- executionId: checkpoint.executionId,
114
- definition: checkpoint.definition,
115
- status: "running",
116
- currentStepIndex: checkpoint.state.currentStepIndex,
117
- context: { ...checkpoint.state.context },
118
- stepResults: [...checkpoint.state.stepResults],
119
- startedAt: checkpoint.state.startedAt,
120
- resumedAt: new Date(),
121
- };
122
- this._executions.set(executionId, execution);
123
- // Emit resume event
124
- this._resumeHandlers.forEach((handler) => {
125
- handler(executionId, checkpoint);
126
- });
127
- // Get workDir from workflow metadata or use default
128
- const workDir = checkpoint.definition.metadata?.workDir || process.cwd();
129
- // Continue execution from saved point
130
- this._executeWorkflow(checkpoint.definition, execution, workDir, options?.checkpointInterval).catch((error) => {
131
- execution.status = "failed";
132
- execution.completedAt = new Date();
133
- execution.error = error.message;
134
- // Emit workflow failed event
135
- this._workflowFailedHandlers.forEach((handler) => {
136
- handler(execution.executionId, error);
137
- });
138
- // Emit AG-UI RUN_ERROR event
139
- if (this._agUiAdapter) {
140
- this._agUiAdapter.emitRunError(error.message, error.stack);
141
- }
142
- // Cleanup execution resources (worktree)
143
- this._cleanupExecution(execution).catch(() => {
144
- // Error already logged in _cleanupExecution
145
- });
146
- });
147
- return executionId;
148
- }
149
- /**
150
- * Pause a running workflow
151
- *
152
- * @param executionId - Execution ID to pause
153
- */
154
- async pauseWorkflow(executionId) {
155
- const execution = this._executions.get(executionId);
156
- if (!execution) {
157
- return; // Silently ignore non-existent executions
158
- }
159
- if (execution.status !== "running") {
160
- throw new Error(`Cannot pause workflow in ${execution.status} state`);
161
- }
162
- execution.status = "paused";
163
- execution.pausedAt = new Date();
164
- // Wait for any currently executing step to complete and update state
165
- // This prevents race condition where step is submitted to executor but result not yet saved
166
- // 250ms is enough for typical step execution (MockResilientExecutor uses 200ms in tests)
167
- await new Promise((resolve) => setTimeout(resolve, 250));
168
- // Now save checkpoint with current state
169
- if (this._storage) {
170
- await this._saveCheckpoint(execution);
171
- }
172
- // Emit pause event
173
- this._pauseHandlers.forEach((handler) => {
174
- handler(executionId);
175
- });
176
- }
177
- /**
178
- * Cancel a running workflow
179
- *
180
- * @param executionId - Execution ID to cancel
181
- */
182
- async cancelWorkflow(executionId) {
183
- const execution = this._executions.get(executionId);
184
- if (!execution) {
185
- return; // Silently ignore non-existent executions
186
- }
187
- if (["completed", "cancelled"].includes(execution.status)) {
188
- return; // Already done
189
- }
190
- execution.status = "cancelled";
191
- execution.completedAt = new Date();
192
- // Create final checkpoint (currentStepIndex is already up-to-date)
193
- if (this._storage) {
194
- await this._saveCheckpoint(execution);
195
- }
196
- // Emit cancel event
197
- this._cancelHandlers.forEach((handler) => {
198
- handler(executionId);
199
- });
200
- // Cleanup execution resources (worktree)
201
- await this._cleanupExecution(execution);
202
- }
203
- /**
204
- * Get current execution state
205
- *
206
- * @param executionId - Execution ID to query
207
- * @returns Execution state or null if not found
208
- */
209
- getExecution(executionId) {
210
- return this._executions.get(executionId) || null;
211
- }
212
- /**
213
- * Get status of a specific step
214
- *
215
- * @param executionId - Execution ID
216
- * @param stepId - Step ID to query
217
- * @returns Step status or null if not found
218
- */
219
- getStepStatus(executionId, stepId) {
220
- const execution = this._executions.get(executionId);
221
- if (!execution) {
222
- return null;
223
- }
224
- // Find step index
225
- const stepIndex = execution.definition.steps.findIndex((s) => s.id === stepId);
226
- if (stepIndex === -1) {
227
- return null;
228
- }
229
- // Determine status based on execution state
230
- let status;
231
- const result = execution.stepResults[stepIndex];
232
- // Check if result exists first (step has been executed)
233
- if (result !== undefined) {
234
- // Step has a result, so it's either completed or failed
235
- status = result.success ? "completed" : "failed";
236
- }
237
- else if (stepIndex === execution.currentStepIndex) {
238
- // Currently executing (no result yet)
239
- status = "running";
240
- }
241
- else {
242
- // Not yet executed
243
- status = "pending";
244
- }
245
- return {
246
- stepId,
247
- status,
248
- result,
249
- attempts: 1, // TODO: Track actual attempts
250
- };
251
- }
252
- /**
253
- * Wait for workflow to complete
254
- *
255
- * @param executionId - Execution ID to wait for
256
- * @returns Promise resolving to workflow execution
257
- */
258
- async waitForWorkflow(executionId) {
259
- const execution = this._executions.get(executionId);
260
- if (!execution) {
261
- throw new Error(`Workflow execution ${executionId} not found`);
262
- }
263
- // If already completed/failed/cancelled, return immediately
264
- if (["completed", "failed", "cancelled"].includes(execution.status)) {
265
- return execution;
266
- }
267
- // Wait for completion by polling
268
- return new Promise((resolve, reject) => {
269
- const checkInterval = setInterval(() => {
270
- const current = this._executions.get(executionId);
271
- if (!current) {
272
- clearInterval(checkInterval);
273
- reject(new Error(`Workflow execution ${executionId} not found`));
274
- return;
275
- }
276
- if (["completed", "failed", "cancelled"].includes(current.status)) {
277
- clearInterval(checkInterval);
278
- resolve(current);
279
- }
280
- }, 100);
281
- // Timeout after 5 minutes
282
- setTimeout(() => {
283
- clearInterval(checkInterval);
284
- reject(new Error(`Timeout waiting for workflow ${executionId}`));
285
- }, 300000);
286
- });
287
- }
288
- /**
289
- * List all checkpoints for a workflow
290
- *
291
- * @param workflowId - Optional workflow ID to filter by
292
- * @returns Promise resolving to list of checkpoints
293
- */
294
- async listCheckpoints(workflowId) {
295
- if (!this._storage) {
296
- return [];
297
- }
298
- return this._storage.listCheckpoints(workflowId);
299
- }
300
- /**
301
- * Register handler for workflow start events
302
- */
303
- onWorkflowStart(handler) {
304
- this._workflowStartHandlers.push(handler);
305
- }
306
- /**
307
- * Register handler for workflow completion events
308
- */
309
- onWorkflowComplete(handler) {
310
- this._workflowCompleteHandlers.push(handler);
311
- }
312
- /**
313
- * Register handler for workflow failure events
314
- */
315
- onWorkflowFailed(handler) {
316
- this._workflowFailedHandlers.push(handler);
317
- }
318
- /**
319
- * Register handler for step start events
320
- */
321
- onStepStart(handler) {
322
- this._stepStartHandlers.push(handler);
323
- }
324
- /**
325
- * Register handler for step completion events
326
- */
327
- onStepComplete(handler) {
328
- this._stepCompleteHandlers.push(handler);
329
- }
330
- /**
331
- * Register handler for step failure events
332
- */
333
- onStepFailed(handler) {
334
- this._stepFailedHandlers.push(handler);
335
- }
336
- /**
337
- * Register handler for checkpoint events
338
- */
339
- onCheckpoint(handler) {
340
- this._checkpointHandlers.push(handler);
341
- }
342
- /**
343
- * Register handler for resume events
344
- */
345
- onResume(handler) {
346
- this._resumeHandlers.push(handler);
347
- }
348
- /**
349
- * Register handler for pause events
350
- */
351
- onPause(handler) {
352
- this._pauseHandlers.push(handler);
353
- }
354
- /**
355
- * Register handler for cancel events
356
- */
357
- onCancel(handler) {
358
- this._cancelHandlers.push(handler);
359
- }
360
- /**
361
- * Execute workflow (main execution loop)
362
- *
363
- * @param workflow - Workflow definition
364
- * @param execution - Workflow execution state
365
- * @param workDir - Working directory for task execution
366
- * @param checkpointInterval - Optional checkpoint interval (in steps)
367
- * @returns Promise that resolves when workflow completes
368
- * @private
369
- */
370
- async _executeWorkflow(workflow, execution, workDir, checkpointInterval) {
371
- // 1. Set status to running
372
- execution.status = "running";
373
- // Emit workflow start event
374
- this._workflowStartHandlers.forEach((handler) => {
375
- handler(execution.executionId, workflow.id);
376
- });
377
- // Emit AG-UI RUN_STARTED event
378
- if (this._agUiAdapter) {
379
- this._agUiAdapter.emitRunStarted({
380
- workflowId: workflow.id,
381
- executionId: execution.executionId,
382
- });
383
- }
384
- // 2. Execute steps sequentially
385
- for (let i = execution.currentStepIndex; i < workflow.steps.length; i++) {
386
- const step = workflow.steps[i];
387
- // Check if paused or cancelled before starting each step
388
- // Note: Status can be changed externally via pauseWorkflow/cancelWorkflow
389
- if (["paused", "cancelled"].includes(execution.status)) {
390
- return;
391
- }
392
- // Skip steps that have already been executed (for resumed workflows)
393
- if (execution.stepResults[i] && execution.stepResults[i].success) {
394
- // Update currentStepIndex to skip completed step
395
- execution.currentStepIndex = i + 1;
396
- continue;
397
- }
398
- // Check dependencies
399
- if (!this._areDependenciesMet(step, execution)) {
400
- const error = new Error(`Dependencies not met for step ${step.id}`);
401
- // Emit step failed event
402
- this._stepFailedHandlers.forEach((handler) => {
403
- handler(execution.executionId, step.id, error);
404
- });
405
- if (!workflow.config?.continueOnStepFailure) {
406
- execution.status = "failed";
407
- execution.completedAt = new Date();
408
- execution.error = error.message;
409
- // Emit workflow failed event
410
- this._workflowFailedHandlers.forEach((handler) => {
411
- handler(execution.executionId, error);
412
- });
413
- // Cleanup execution resources (worktree)
414
- await this._cleanupExecution(execution);
415
- return;
416
- }
417
- // Update currentStepIndex to point to next step before continuing
418
- execution.currentStepIndex = i + 1;
419
- continue;
420
- }
421
- // Check condition
422
- if (!this._shouldExecuteStep(step, execution.context)) {
423
- // Step condition not met, skip it
424
- // Update currentStepIndex to point to next step before continuing
425
- execution.currentStepIndex = i + 1;
426
- continue;
427
- }
428
- // Emit step start event
429
- this._stepStartHandlers.forEach((handler) => {
430
- handler(execution.executionId, step.id, i);
431
- });
432
- // Emit AG-UI STEP_STARTED event
433
- if (this._agUiAdapter) {
434
- this._agUiAdapter.emitStepStarted(step.id, step.taskType || `Step ${i + 1}`);
435
- }
436
- // Execute step
437
- try {
438
- const result = await this._executeStep(step, execution, workDir);
439
- // Store result
440
- execution.stepResults[i] = result;
441
- // Check if step failed
442
- if (!result.success) {
443
- const error = new Error(result.error || `Step ${step.id} failed`);
444
- // Emit step failed event
445
- this._stepFailedHandlers.forEach((handler) => {
446
- handler(execution.executionId, step.id, error);
447
- });
448
- if (!workflow.config?.continueOnStepFailure) {
449
- execution.status = "failed";
450
- execution.completedAt = new Date();
451
- execution.error = error.message;
452
- // Emit workflow failed event
453
- this._workflowFailedHandlers.forEach((handler) => {
454
- handler(execution.executionId, error);
455
- });
456
- // Cleanup execution resources (worktree)
457
- await this._cleanupExecution(execution);
458
- return;
459
- }
460
- // Update currentStepIndex to point to next step before continuing
461
- execution.currentStepIndex = i + 1;
462
- continue;
463
- }
464
- // Apply output mapping (only for successful steps)
465
- this._applyOutputMapping(step, result, execution.context);
466
- // Emit step complete event
467
- this._stepCompleteHandlers.forEach((handler) => {
468
- handler(execution.executionId, step.id, result);
469
- });
470
- // Emit AG-UI STEP_FINISHED event (success)
471
- if (this._agUiAdapter) {
472
- this._agUiAdapter.emitStepFinished(step.id, "success", result.output);
473
- }
474
- // Update currentStepIndex to point to next step after successful completion
475
- execution.currentStepIndex = i + 1;
476
- // Checkpoint if configured
477
- if (checkpointInterval &&
478
- this._storage &&
479
- (i + 1) % checkpointInterval === 0) {
480
- await this._saveCheckpoint(execution);
481
- }
482
- }
483
- catch (error) {
484
- // Emit step failed event
485
- this._stepFailedHandlers.forEach((handler) => {
486
- handler(execution.executionId, step.id, error);
487
- });
488
- // Emit AG-UI STEP_FINISHED event (error)
489
- if (this._agUiAdapter) {
490
- this._agUiAdapter.emitStepFinished(step.id, "error");
491
- }
492
- if (!workflow.config?.continueOnStepFailure) {
493
- execution.status = "failed";
494
- execution.completedAt = new Date();
495
- execution.error = error.message;
496
- // Emit workflow failed event
497
- this._workflowFailedHandlers.forEach((handler) => {
498
- handler(execution.executionId, error);
499
- });
500
- // Emit AG-UI RUN_ERROR event
501
- if (this._agUiAdapter) {
502
- this._agUiAdapter.emitRunError(error.message, error.stack);
503
- }
504
- // Cleanup execution resources (worktree)
505
- await this._cleanupExecution(execution);
506
- return;
507
- }
508
- // Update currentStepIndex when continuing after error (for checkpoint consistency)
509
- execution.currentStepIndex = i + 1;
510
- }
511
- }
512
- // 3. Workflow completed
513
- execution.status = "completed";
514
- execution.completedAt = new Date();
515
- // 4. Emit workflow complete event
516
- const result = {
517
- executionId: execution.executionId,
518
- success: execution.stepResults.every((r) => r.success),
519
- completedSteps: execution.stepResults.filter((r) => r.success).length,
520
- failedSteps: execution.stepResults.filter((r) => !r.success).length,
521
- skippedSteps: 0, // TODO: Track skipped steps properly
522
- outputs: execution.context,
523
- duration: execution.completedAt.getTime() - execution.startedAt.getTime(),
524
- };
525
- this._workflowCompleteHandlers.forEach((handler) => {
526
- handler(execution.executionId, result);
527
- });
528
- // Emit AG-UI RUN_FINISHED event
529
- if (this._agUiAdapter) {
530
- this._agUiAdapter.emitRunFinished(result);
531
- }
532
- // 5. Cleanup execution resources (worktree)
533
- await this._cleanupExecution(execution);
534
- }
535
- /**
536
- * Save checkpoint to storage
537
- *
538
- * @param execution - Workflow execution to checkpoint
539
- * @private
540
- */
541
- async _saveCheckpoint(execution) {
542
- if (!this._storage) {
543
- return;
544
- }
545
- const checkpoint = {
546
- workflowId: execution.workflowId,
547
- executionId: execution.executionId,
548
- definition: execution.definition,
549
- state: {
550
- status: execution.status,
551
- currentStepIndex: execution.currentStepIndex,
552
- context: execution.context,
553
- stepResults: execution.stepResults,
554
- error: execution.error,
555
- startedAt: execution.startedAt,
556
- completedAt: execution.completedAt,
557
- },
558
- createdAt: new Date(),
559
- };
560
- await this._storage.saveCheckpoint(checkpoint);
561
- // Emit checkpoint event
562
- this._checkpointHandlers.forEach((handler) => {
563
- handler(checkpoint);
564
- });
565
- }
566
- /**
567
- * Clean up execution resources (worktree)
568
- * Ensures cleanup is called only once per execution
569
- *
570
- * @param execution - Workflow execution to cleanup
571
- * @private
572
- */
573
- async _cleanupExecution(execution) {
574
- // Skip if no lifecycle service or no execution ID
575
- if (!this._lifecycleService || !execution.executionId) {
576
- return;
577
- }
578
- // Skip if already cleaned up
579
- if (this._cleanedUpExecutions.has(execution.executionId)) {
580
- return;
581
- }
582
- // Mark as cleaned up before calling cleanup (to prevent race conditions)
583
- this._cleanedUpExecutions.add(execution.executionId);
584
- try {
585
- await this._lifecycleService.cleanupExecution(execution.executionId);
586
- }
587
- catch (error) {
588
- // Log error but don't fail
589
- console.error(`Failed to cleanup execution ${execution.executionId}:`, error);
590
- }
591
- }
592
- /**
593
- * Execute a single workflow step
594
- *
595
- * @param step - Workflow step to execute
596
- * @param execution - Current workflow execution state
597
- * @param workDir - Working directory for task execution
598
- * @returns Promise resolving to execution result
599
- * @private
600
- */
601
- async _executeStep(step, execution, workDir) {
602
- // 1. Render prompt template with context
603
- const prompt = renderTemplate(step.prompt, execution.context);
604
- // 2. Build execution task
605
- const task = {
606
- id: generateId("task"),
607
- type: step.taskType,
608
- prompt,
609
- workDir,
610
- priority: 0,
611
- dependencies: [],
612
- createdAt: new Date(),
613
- config: step.taskConfig || {},
614
- };
615
- // 3. Execute with resilience (includes retry logic)
616
- const result = await this._executor.executeTask(task, step.retryPolicy);
617
- return result;
618
- }
619
- /**
620
- * Apply output mapping from step result to workflow context
621
- *
622
- * @param step - Workflow step with output mapping
623
- * @param result - Execution result from step
624
- * @param context - Workflow context to update
625
- * @private
626
- */
627
- _applyOutputMapping(step, result, context) {
628
- if (!step.outputMapping) {
629
- return;
630
- }
631
- // Map each output from result to context
632
- for (const [contextKey, resultPath] of Object.entries(step.outputMapping)) {
633
- const value = extractValue(result, resultPath);
634
- context[contextKey] = value;
635
- }
636
- }
637
- /**
638
- * Check if all step dependencies are met
639
- *
640
- * @param step - Workflow step to check
641
- * @param execution - Current workflow execution state
642
- * @returns True if all dependencies are met, false otherwise
643
- * @private
644
- */
645
- _areDependenciesMet(step, execution) {
646
- if (!step.dependencies || step.dependencies.length === 0) {
647
- return true; // No dependencies
648
- }
649
- // Check if all dependencies are in completed steps
650
- for (const depId of step.dependencies) {
651
- const depIndex = execution.definition.steps.findIndex((s) => s.id === depId);
652
- if (depIndex === -1) {
653
- // Dependency not found in workflow
654
- return false;
655
- }
656
- if (depIndex >= execution.currentStepIndex) {
657
- // Dependency hasn't been executed yet
658
- return false;
659
- }
660
- const depResult = execution.stepResults[depIndex];
661
- if (!depResult || !depResult.success) {
662
- // Dependency failed or hasn't completed
663
- return false;
664
- }
665
- }
666
- return true;
667
- }
668
- /**
669
- * Evaluate a step condition
670
- *
671
- * @param step - Workflow step with condition
672
- * @param context - Workflow context
673
- * @returns True if condition evaluates to true or no condition exists
674
- * @private
675
- */
676
- _shouldExecuteStep(step, context) {
677
- if (!step.condition) {
678
- return true; // No condition means always execute
679
- }
680
- return evaluateCondition(step.condition, context);
681
- }
682
- }
683
- //# sourceMappingURL=linear-orchestrator.js.map