sudocode 1.1.18-dev.0 → 1.1.18

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 (738) hide show
  1. package/package.json +9 -9
  2. package/node_modules/@sudocode-ai/cli/README.md +0 -330
  3. package/node_modules/@sudocode-ai/cli/dist/cli/feedback-commands.d.ts +0 -53
  4. package/node_modules/@sudocode-ai/cli/dist/cli/feedback-commands.d.ts.map +0 -1
  5. package/node_modules/@sudocode-ai/cli/dist/cli/feedback-commands.js +0 -339
  6. package/node_modules/@sudocode-ai/cli/dist/cli/feedback-commands.js.map +0 -1
  7. package/node_modules/@sudocode-ai/cli/dist/cli/init-commands.d.ts +0 -20
  8. package/node_modules/@sudocode-ai/cli/dist/cli/init-commands.d.ts.map +0 -1
  9. package/node_modules/@sudocode-ai/cli/dist/cli/init-commands.js +0 -145
  10. package/node_modules/@sudocode-ai/cli/dist/cli/init-commands.js.map +0 -1
  11. package/node_modules/@sudocode-ai/cli/dist/cli/issue-commands.d.ts +0 -46
  12. package/node_modules/@sudocode-ai/cli/dist/cli/issue-commands.d.ts.map +0 -1
  13. package/node_modules/@sudocode-ai/cli/dist/cli/issue-commands.js +0 -353
  14. package/node_modules/@sudocode-ai/cli/dist/cli/issue-commands.js.map +0 -1
  15. package/node_modules/@sudocode-ai/cli/dist/cli/merge-commands.d.ts +0 -42
  16. package/node_modules/@sudocode-ai/cli/dist/cli/merge-commands.d.ts.map +0 -1
  17. package/node_modules/@sudocode-ai/cli/dist/cli/merge-commands.js +0 -405
  18. package/node_modules/@sudocode-ai/cli/dist/cli/merge-commands.js.map +0 -1
  19. package/node_modules/@sudocode-ai/cli/dist/cli/plugin-commands.d.ts +0 -62
  20. package/node_modules/@sudocode-ai/cli/dist/cli/plugin-commands.d.ts.map +0 -1
  21. package/node_modules/@sudocode-ai/cli/dist/cli/plugin-commands.js +0 -595
  22. package/node_modules/@sudocode-ai/cli/dist/cli/plugin-commands.js.map +0 -1
  23. package/node_modules/@sudocode-ai/cli/dist/cli/query-commands.d.ts +0 -18
  24. package/node_modules/@sudocode-ai/cli/dist/cli/query-commands.d.ts.map +0 -1
  25. package/node_modules/@sudocode-ai/cli/dist/cli/query-commands.js +0 -61
  26. package/node_modules/@sudocode-ai/cli/dist/cli/query-commands.js.map +0 -1
  27. package/node_modules/@sudocode-ai/cli/dist/cli/reference-commands.d.ts +0 -22
  28. package/node_modules/@sudocode-ai/cli/dist/cli/reference-commands.d.ts.map +0 -1
  29. package/node_modules/@sudocode-ai/cli/dist/cli/reference-commands.js +0 -136
  30. package/node_modules/@sudocode-ai/cli/dist/cli/reference-commands.js.map +0 -1
  31. package/node_modules/@sudocode-ai/cli/dist/cli/relationship-commands.d.ts +0 -14
  32. package/node_modules/@sudocode-ai/cli/dist/cli/relationship-commands.d.ts.map +0 -1
  33. package/node_modules/@sudocode-ai/cli/dist/cli/relationship-commands.js +0 -83
  34. package/node_modules/@sudocode-ai/cli/dist/cli/relationship-commands.js.map +0 -1
  35. package/node_modules/@sudocode-ai/cli/dist/cli/server-commands.d.ts +0 -17
  36. package/node_modules/@sudocode-ai/cli/dist/cli/server-commands.d.ts.map +0 -1
  37. package/node_modules/@sudocode-ai/cli/dist/cli/server-commands.js +0 -123
  38. package/node_modules/@sudocode-ai/cli/dist/cli/server-commands.js.map +0 -1
  39. package/node_modules/@sudocode-ai/cli/dist/cli/spec-commands.d.ts +0 -38
  40. package/node_modules/@sudocode-ai/cli/dist/cli/spec-commands.d.ts.map +0 -1
  41. package/node_modules/@sudocode-ai/cli/dist/cli/spec-commands.js +0 -326
  42. package/node_modules/@sudocode-ai/cli/dist/cli/spec-commands.js.map +0 -1
  43. package/node_modules/@sudocode-ai/cli/dist/cli/status-commands.d.ts +0 -17
  44. package/node_modules/@sudocode-ai/cli/dist/cli/status-commands.d.ts.map +0 -1
  45. package/node_modules/@sudocode-ai/cli/dist/cli/status-commands.js +0 -131
  46. package/node_modules/@sudocode-ai/cli/dist/cli/status-commands.js.map +0 -1
  47. package/node_modules/@sudocode-ai/cli/dist/cli/sync-commands.d.ts +0 -24
  48. package/node_modules/@sudocode-ai/cli/dist/cli/sync-commands.d.ts.map +0 -1
  49. package/node_modules/@sudocode-ai/cli/dist/cli/sync-commands.js +0 -429
  50. package/node_modules/@sudocode-ai/cli/dist/cli/sync-commands.js.map +0 -1
  51. package/node_modules/@sudocode-ai/cli/dist/cli/update-commands.d.ts +0 -16
  52. package/node_modules/@sudocode-ai/cli/dist/cli/update-commands.d.ts.map +0 -1
  53. package/node_modules/@sudocode-ai/cli/dist/cli/update-commands.js +0 -160
  54. package/node_modules/@sudocode-ai/cli/dist/cli/update-commands.js.map +0 -1
  55. package/node_modules/@sudocode-ai/cli/dist/cli.d.ts +0 -6
  56. package/node_modules/@sudocode-ai/cli/dist/cli.d.ts.map +0 -1
  57. package/node_modules/@sudocode-ai/cli/dist/cli.js +0 -543
  58. package/node_modules/@sudocode-ai/cli/dist/cli.js.map +0 -1
  59. package/node_modules/@sudocode-ai/cli/dist/config.d.ts +0 -50
  60. package/node_modules/@sudocode-ai/cli/dist/config.d.ts.map +0 -1
  61. package/node_modules/@sudocode-ai/cli/dist/config.js +0 -76
  62. package/node_modules/@sudocode-ai/cli/dist/config.js.map +0 -1
  63. package/node_modules/@sudocode-ai/cli/dist/db.d.ts +0 -21
  64. package/node_modules/@sudocode-ai/cli/dist/db.d.ts.map +0 -1
  65. package/node_modules/@sudocode-ai/cli/dist/db.js +0 -55
  66. package/node_modules/@sudocode-ai/cli/dist/db.js.map +0 -1
  67. package/node_modules/@sudocode-ai/cli/dist/export.d.ts +0 -84
  68. package/node_modules/@sudocode-ai/cli/dist/export.d.ts.map +0 -1
  69. package/node_modules/@sudocode-ai/cli/dist/export.js +0 -265
  70. package/node_modules/@sudocode-ai/cli/dist/export.js.map +0 -1
  71. package/node_modules/@sudocode-ai/cli/dist/filename-generator.d.ts +0 -31
  72. package/node_modules/@sudocode-ai/cli/dist/filename-generator.d.ts.map +0 -1
  73. package/node_modules/@sudocode-ai/cli/dist/filename-generator.js +0 -103
  74. package/node_modules/@sudocode-ai/cli/dist/filename-generator.js.map +0 -1
  75. package/node_modules/@sudocode-ai/cli/dist/id-generator.d.ts +0 -63
  76. package/node_modules/@sudocode-ai/cli/dist/id-generator.d.ts.map +0 -1
  77. package/node_modules/@sudocode-ai/cli/dist/id-generator.js +0 -196
  78. package/node_modules/@sudocode-ai/cli/dist/id-generator.js.map +0 -1
  79. package/node_modules/@sudocode-ai/cli/dist/import.d.ts +0 -134
  80. package/node_modules/@sudocode-ai/cli/dist/import.d.ts.map +0 -1
  81. package/node_modules/@sudocode-ai/cli/dist/import.js +0 -751
  82. package/node_modules/@sudocode-ai/cli/dist/import.js.map +0 -1
  83. package/node_modules/@sudocode-ai/cli/dist/index.d.ts +0 -15
  84. package/node_modules/@sudocode-ai/cli/dist/index.d.ts.map +0 -1
  85. package/node_modules/@sudocode-ai/cli/dist/index.js +0 -15
  86. package/node_modules/@sudocode-ai/cli/dist/index.js.map +0 -1
  87. package/node_modules/@sudocode-ai/cli/dist/integrations/base-provider.d.ts +0 -108
  88. package/node_modules/@sudocode-ai/cli/dist/integrations/base-provider.d.ts.map +0 -1
  89. package/node_modules/@sudocode-ai/cli/dist/integrations/base-provider.js +0 -80
  90. package/node_modules/@sudocode-ai/cli/dist/integrations/base-provider.js.map +0 -1
  91. package/node_modules/@sudocode-ai/cli/dist/integrations/config-resolver.d.ts +0 -62
  92. package/node_modules/@sudocode-ai/cli/dist/integrations/config-resolver.d.ts.map +0 -1
  93. package/node_modules/@sudocode-ai/cli/dist/integrations/config-resolver.js +0 -69
  94. package/node_modules/@sudocode-ai/cli/dist/integrations/config-resolver.js.map +0 -1
  95. package/node_modules/@sudocode-ai/cli/dist/integrations/config-validator.d.ts +0 -75
  96. package/node_modules/@sudocode-ai/cli/dist/integrations/config-validator.d.ts.map +0 -1
  97. package/node_modules/@sudocode-ai/cli/dist/integrations/config-validator.js +0 -129
  98. package/node_modules/@sudocode-ai/cli/dist/integrations/config-validator.js.map +0 -1
  99. package/node_modules/@sudocode-ai/cli/dist/integrations/index.d.ts +0 -14
  100. package/node_modules/@sudocode-ai/cli/dist/integrations/index.d.ts.map +0 -1
  101. package/node_modules/@sudocode-ai/cli/dist/integrations/index.js +0 -20
  102. package/node_modules/@sudocode-ai/cli/dist/integrations/index.js.map +0 -1
  103. package/node_modules/@sudocode-ai/cli/dist/integrations/plugin-loader.d.ts +0 -77
  104. package/node_modules/@sudocode-ai/cli/dist/integrations/plugin-loader.d.ts.map +0 -1
  105. package/node_modules/@sudocode-ai/cli/dist/integrations/plugin-loader.js +0 -265
  106. package/node_modules/@sudocode-ai/cli/dist/integrations/plugin-loader.js.map +0 -1
  107. package/node_modules/@sudocode-ai/cli/dist/integrations/registry.d.ts +0 -67
  108. package/node_modules/@sudocode-ai/cli/dist/integrations/registry.d.ts.map +0 -1
  109. package/node_modules/@sudocode-ai/cli/dist/integrations/registry.js +0 -77
  110. package/node_modules/@sudocode-ai/cli/dist/integrations/registry.js.map +0 -1
  111. package/node_modules/@sudocode-ai/cli/dist/integrations/sync-coordinator.d.ts +0 -191
  112. package/node_modules/@sudocode-ai/cli/dist/integrations/sync-coordinator.d.ts.map +0 -1
  113. package/node_modules/@sudocode-ai/cli/dist/integrations/sync-coordinator.js +0 -798
  114. package/node_modules/@sudocode-ai/cli/dist/integrations/sync-coordinator.js.map +0 -1
  115. package/node_modules/@sudocode-ai/cli/dist/integrations/types.d.ts +0 -142
  116. package/node_modules/@sudocode-ai/cli/dist/integrations/types.d.ts.map +0 -1
  117. package/node_modules/@sudocode-ai/cli/dist/integrations/types.js +0 -6
  118. package/node_modules/@sudocode-ai/cli/dist/integrations/types.js.map +0 -1
  119. package/node_modules/@sudocode-ai/cli/dist/integrations/utils/conflict-resolver.d.ts +0 -79
  120. package/node_modules/@sudocode-ai/cli/dist/integrations/utils/conflict-resolver.d.ts.map +0 -1
  121. package/node_modules/@sudocode-ai/cli/dist/integrations/utils/conflict-resolver.js +0 -106
  122. package/node_modules/@sudocode-ai/cli/dist/integrations/utils/conflict-resolver.js.map +0 -1
  123. package/node_modules/@sudocode-ai/cli/dist/jsonl.d.ts +0 -69
  124. package/node_modules/@sudocode-ai/cli/dist/jsonl.d.ts.map +0 -1
  125. package/node_modules/@sudocode-ai/cli/dist/jsonl.js +0 -333
  126. package/node_modules/@sudocode-ai/cli/dist/jsonl.js.map +0 -1
  127. package/node_modules/@sudocode-ai/cli/dist/markdown.d.ts +0 -146
  128. package/node_modules/@sudocode-ai/cli/dist/markdown.d.ts.map +0 -1
  129. package/node_modules/@sudocode-ai/cli/dist/markdown.js +0 -329
  130. package/node_modules/@sudocode-ai/cli/dist/markdown.js.map +0 -1
  131. package/node_modules/@sudocode-ai/cli/dist/merge-resolver.d.ts +0 -85
  132. package/node_modules/@sudocode-ai/cli/dist/merge-resolver.d.ts.map +0 -1
  133. package/node_modules/@sudocode-ai/cli/dist/merge-resolver.js +0 -301
  134. package/node_modules/@sudocode-ai/cli/dist/merge-resolver.js.map +0 -1
  135. package/node_modules/@sudocode-ai/cli/dist/operations/events.d.ts +0 -53
  136. package/node_modules/@sudocode-ai/cli/dist/operations/events.d.ts.map +0 -1
  137. package/node_modules/@sudocode-ai/cli/dist/operations/events.js +0 -108
  138. package/node_modules/@sudocode-ai/cli/dist/operations/events.js.map +0 -1
  139. package/node_modules/@sudocode-ai/cli/dist/operations/external-links.d.ts +0 -147
  140. package/node_modules/@sudocode-ai/cli/dist/operations/external-links.d.ts.map +0 -1
  141. package/node_modules/@sudocode-ai/cli/dist/operations/external-links.js +0 -411
  142. package/node_modules/@sudocode-ai/cli/dist/operations/external-links.js.map +0 -1
  143. package/node_modules/@sudocode-ai/cli/dist/operations/feedback-anchors.d.ts +0 -92
  144. package/node_modules/@sudocode-ai/cli/dist/operations/feedback-anchors.d.ts.map +0 -1
  145. package/node_modules/@sudocode-ai/cli/dist/operations/feedback-anchors.js +0 -444
  146. package/node_modules/@sudocode-ai/cli/dist/operations/feedback-anchors.js.map +0 -1
  147. package/node_modules/@sudocode-ai/cli/dist/operations/feedback.d.ts +0 -94
  148. package/node_modules/@sudocode-ai/cli/dist/operations/feedback.d.ts.map +0 -1
  149. package/node_modules/@sudocode-ai/cli/dist/operations/feedback.js +0 -278
  150. package/node_modules/@sudocode-ai/cli/dist/operations/feedback.js.map +0 -1
  151. package/node_modules/@sudocode-ai/cli/dist/operations/index.d.ts +0 -11
  152. package/node_modules/@sudocode-ai/cli/dist/operations/index.d.ts.map +0 -1
  153. package/node_modules/@sudocode-ai/cli/dist/operations/index.js +0 -11
  154. package/node_modules/@sudocode-ai/cli/dist/operations/index.js.map +0 -1
  155. package/node_modules/@sudocode-ai/cli/dist/operations/issues.d.ts +0 -88
  156. package/node_modules/@sudocode-ai/cli/dist/operations/issues.d.ts.map +0 -1
  157. package/node_modules/@sudocode-ai/cli/dist/operations/issues.js +0 -474
  158. package/node_modules/@sudocode-ai/cli/dist/operations/issues.js.map +0 -1
  159. package/node_modules/@sudocode-ai/cli/dist/operations/references.d.ts +0 -34
  160. package/node_modules/@sudocode-ai/cli/dist/operations/references.d.ts.map +0 -1
  161. package/node_modules/@sudocode-ai/cli/dist/operations/references.js +0 -117
  162. package/node_modules/@sudocode-ai/cli/dist/operations/references.js.map +0 -1
  163. package/node_modules/@sudocode-ai/cli/dist/operations/relationships.d.ts +0 -64
  164. package/node_modules/@sudocode-ai/cli/dist/operations/relationships.d.ts.map +0 -1
  165. package/node_modules/@sudocode-ai/cli/dist/operations/relationships.js +0 -281
  166. package/node_modules/@sudocode-ai/cli/dist/operations/relationships.js.map +0 -1
  167. package/node_modules/@sudocode-ai/cli/dist/operations/specs.d.ts +0 -69
  168. package/node_modules/@sudocode-ai/cli/dist/operations/specs.d.ts.map +0 -1
  169. package/node_modules/@sudocode-ai/cli/dist/operations/specs.js +0 -330
  170. package/node_modules/@sudocode-ai/cli/dist/operations/specs.js.map +0 -1
  171. package/node_modules/@sudocode-ai/cli/dist/operations/tags.d.ts +0 -42
  172. package/node_modules/@sudocode-ai/cli/dist/operations/tags.d.ts.map +0 -1
  173. package/node_modules/@sudocode-ai/cli/dist/operations/tags.js +0 -127
  174. package/node_modules/@sudocode-ai/cli/dist/operations/tags.js.map +0 -1
  175. package/node_modules/@sudocode-ai/cli/dist/operations/transactions.d.ts +0 -41
  176. package/node_modules/@sudocode-ai/cli/dist/operations/transactions.d.ts.map +0 -1
  177. package/node_modules/@sudocode-ai/cli/dist/operations/transactions.js +0 -111
  178. package/node_modules/@sudocode-ai/cli/dist/operations/transactions.js.map +0 -1
  179. package/node_modules/@sudocode-ai/cli/dist/sync.d.ts +0 -47
  180. package/node_modules/@sudocode-ai/cli/dist/sync.d.ts.map +0 -1
  181. package/node_modules/@sudocode-ai/cli/dist/sync.js +0 -464
  182. package/node_modules/@sudocode-ai/cli/dist/sync.js.map +0 -1
  183. package/node_modules/@sudocode-ai/cli/dist/test-schema.d.ts +0 -5
  184. package/node_modules/@sudocode-ai/cli/dist/test-schema.d.ts.map +0 -1
  185. package/node_modules/@sudocode-ai/cli/dist/test-schema.js +0 -46
  186. package/node_modules/@sudocode-ai/cli/dist/test-schema.js.map +0 -1
  187. package/node_modules/@sudocode-ai/cli/dist/types.d.ts +0 -7
  188. package/node_modules/@sudocode-ai/cli/dist/types.d.ts.map +0 -1
  189. package/node_modules/@sudocode-ai/cli/dist/types.js +0 -7
  190. package/node_modules/@sudocode-ai/cli/dist/types.js.map +0 -1
  191. package/node_modules/@sudocode-ai/cli/dist/update-checker.d.ts +0 -33
  192. package/node_modules/@sudocode-ai/cli/dist/update-checker.d.ts.map +0 -1
  193. package/node_modules/@sudocode-ai/cli/dist/update-checker.js +0 -193
  194. package/node_modules/@sudocode-ai/cli/dist/update-checker.js.map +0 -1
  195. package/node_modules/@sudocode-ai/cli/dist/validation.d.ts +0 -11
  196. package/node_modules/@sudocode-ai/cli/dist/validation.d.ts.map +0 -1
  197. package/node_modules/@sudocode-ai/cli/dist/validation.js +0 -58
  198. package/node_modules/@sudocode-ai/cli/dist/validation.js.map +0 -1
  199. package/node_modules/@sudocode-ai/cli/dist/version.d.ts +0 -12
  200. package/node_modules/@sudocode-ai/cli/dist/version.d.ts.map +0 -1
  201. package/node_modules/@sudocode-ai/cli/dist/version.js +0 -23
  202. package/node_modules/@sudocode-ai/cli/dist/version.js.map +0 -1
  203. package/node_modules/@sudocode-ai/cli/dist/watcher.d.ts +0 -69
  204. package/node_modules/@sudocode-ai/cli/dist/watcher.d.ts.map +0 -1
  205. package/node_modules/@sudocode-ai/cli/dist/watcher.js +0 -783
  206. package/node_modules/@sudocode-ai/cli/dist/watcher.js.map +0 -1
  207. package/node_modules/@sudocode-ai/cli/package.json +0 -73
  208. package/node_modules/@sudocode-ai/integration-beads/package.json +0 -44
  209. package/node_modules/@sudocode-ai/integration-github/package.json +0 -41
  210. package/node_modules/@sudocode-ai/integration-openspec/package.json +0 -43
  211. package/node_modules/@sudocode-ai/integration-speckit/package.json +0 -42
  212. package/node_modules/@sudocode-ai/local-server/README.md +0 -25
  213. package/node_modules/@sudocode-ai/local-server/dist/cli.d.ts +0 -7
  214. package/node_modules/@sudocode-ai/local-server/dist/cli.d.ts.map +0 -1
  215. package/node_modules/@sudocode-ai/local-server/dist/cli.js +0 -7
  216. package/node_modules/@sudocode-ai/local-server/dist/cli.js.map +0 -1
  217. package/node_modules/@sudocode-ai/local-server/dist/errors/agent-errors.d.ts +0 -43
  218. package/node_modules/@sudocode-ai/local-server/dist/errors/agent-errors.d.ts.map +0 -1
  219. package/node_modules/@sudocode-ai/local-server/dist/errors/agent-errors.js +0 -69
  220. package/node_modules/@sudocode-ai/local-server/dist/errors/agent-errors.js.map +0 -1
  221. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/claude-adapter.d.ts +0 -63
  222. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/claude-adapter.d.ts.map +0 -1
  223. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/claude-adapter.js +0 -83
  224. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/claude-adapter.js.map +0 -1
  225. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/codex-adapter.d.ts +0 -67
  226. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/codex-adapter.d.ts.map +0 -1
  227. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/codex-adapter.js +0 -183
  228. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/codex-adapter.js.map +0 -1
  229. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/codex-config-builder.d.ts +0 -30
  230. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/codex-config-builder.d.ts.map +0 -1
  231. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/codex-config-builder.js +0 -110
  232. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/codex-config-builder.js.map +0 -1
  233. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/copilot-adapter.d.ts +0 -94
  234. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/copilot-adapter.d.ts.map +0 -1
  235. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/copilot-adapter.js +0 -163
  236. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/copilot-adapter.js.map +0 -1
  237. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/copilot-config-builder.d.ts +0 -48
  238. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/copilot-config-builder.d.ts.map +0 -1
  239. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/copilot-config-builder.js +0 -125
  240. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/copilot-config-builder.js.map +0 -1
  241. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/cursor-adapter.d.ts +0 -66
  242. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/cursor-adapter.d.ts.map +0 -1
  243. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/cursor-adapter.js +0 -121
  244. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/cursor-adapter.js.map +0 -1
  245. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/cursor-config-builder.d.ts +0 -29
  246. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/cursor-config-builder.d.ts.map +0 -1
  247. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/cursor-config-builder.js +0 -49
  248. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/cursor-config-builder.js.map +0 -1
  249. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/shared/config-presets.d.ts +0 -102
  250. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/shared/config-presets.d.ts.map +0 -1
  251. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/shared/config-presets.js +0 -205
  252. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/shared/config-presets.js.map +0 -1
  253. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/shared/config-utils.d.ts +0 -95
  254. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/shared/config-utils.d.ts.map +0 -1
  255. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/shared/config-utils.js +0 -163
  256. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/shared/config-utils.js.map +0 -1
  257. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/shared/index.d.ts +0 -8
  258. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/shared/index.d.ts.map +0 -1
  259. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/shared/index.js +0 -8
  260. package/node_modules/@sudocode-ai/local-server/dist/execution/adapters/shared/index.js.map +0 -1
  261. package/node_modules/@sudocode-ai/local-server/dist/execution/executors/agent-executor-wrapper.d.ts +0 -154
  262. package/node_modules/@sudocode-ai/local-server/dist/execution/executors/agent-executor-wrapper.d.ts.map +0 -1
  263. package/node_modules/@sudocode-ai/local-server/dist/execution/executors/agent-executor-wrapper.js +0 -725
  264. package/node_modules/@sudocode-ai/local-server/dist/execution/executors/agent-executor-wrapper.js.map +0 -1
  265. package/node_modules/@sudocode-ai/local-server/dist/execution/executors/executor-factory.d.ts +0 -95
  266. package/node_modules/@sudocode-ai/local-server/dist/execution/executors/executor-factory.d.ts.map +0 -1
  267. package/node_modules/@sudocode-ai/local-server/dist/execution/executors/executor-factory.js +0 -128
  268. package/node_modules/@sudocode-ai/local-server/dist/execution/executors/executor-factory.js.map +0 -1
  269. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-adapter.d.ts +0 -174
  270. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-adapter.d.ts.map +0 -1
  271. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-adapter.js +0 -436
  272. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-adapter.js.map +0 -1
  273. package/node_modules/@sudocode-ai/local-server/dist/execution/output/claude-to-ag-ui.d.ts +0 -90
  274. package/node_modules/@sudocode-ai/local-server/dist/execution/output/claude-to-ag-ui.d.ts.map +0 -1
  275. package/node_modules/@sudocode-ai/local-server/dist/execution/output/claude-to-ag-ui.js +0 -153
  276. package/node_modules/@sudocode-ai/local-server/dist/execution/output/claude-to-ag-ui.js.map +0 -1
  277. package/node_modules/@sudocode-ai/local-server/dist/execution/output/index.d.ts +0 -15
  278. package/node_modules/@sudocode-ai/local-server/dist/execution/output/index.d.ts.map +0 -1
  279. package/node_modules/@sudocode-ai/local-server/dist/execution/output/index.js +0 -13
  280. package/node_modules/@sudocode-ai/local-server/dist/execution/output/index.js.map +0 -1
  281. package/node_modules/@sudocode-ai/local-server/dist/execution/output/normalized-to-ag-ui-adapter.d.ts +0 -108
  282. package/node_modules/@sudocode-ai/local-server/dist/execution/output/normalized-to-ag-ui-adapter.d.ts.map +0 -1
  283. package/node_modules/@sudocode-ai/local-server/dist/execution/output/normalized-to-ag-ui-adapter.js +0 -321
  284. package/node_modules/@sudocode-ai/local-server/dist/execution/output/normalized-to-ag-ui-adapter.js.map +0 -1
  285. package/node_modules/@sudocode-ai/local-server/dist/execution/output/types.d.ts +0 -421
  286. package/node_modules/@sudocode-ai/local-server/dist/execution/output/types.d.ts.map +0 -1
  287. package/node_modules/@sudocode-ai/local-server/dist/execution/output/types.js +0 -22
  288. package/node_modules/@sudocode-ai/local-server/dist/execution/output/types.js.map +0 -1
  289. package/node_modules/@sudocode-ai/local-server/dist/execution/process/builders/claude.d.ts +0 -53
  290. package/node_modules/@sudocode-ai/local-server/dist/execution/process/builders/claude.d.ts.map +0 -1
  291. package/node_modules/@sudocode-ai/local-server/dist/execution/process/builders/claude.js +0 -225
  292. package/node_modules/@sudocode-ai/local-server/dist/execution/process/builders/claude.js.map +0 -1
  293. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/event-buffer.d.ts +0 -119
  294. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/event-buffer.d.ts.map +0 -1
  295. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/event-buffer.js +0 -208
  296. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/event-buffer.js.map +0 -1
  297. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/index.d.ts +0 -10
  298. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/index.d.ts.map +0 -1
  299. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/index.js +0 -10
  300. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/index.js.map +0 -1
  301. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/ipc-transport-manager.d.ts +0 -74
  302. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/ipc-transport-manager.d.ts.map +0 -1
  303. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/ipc-transport-manager.js +0 -104
  304. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/ipc-transport-manager.js.map +0 -1
  305. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/sse-transport.d.ts +0 -146
  306. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/sse-transport.d.ts.map +0 -1
  307. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/sse-transport.js +0 -282
  308. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/sse-transport.js.map +0 -1
  309. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/transport-manager.d.ts +0 -176
  310. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/transport-manager.d.ts.map +0 -1
  311. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/transport-manager.js +0 -234
  312. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/transport-manager.js.map +0 -1
  313. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/config.d.ts +0 -74
  314. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/config.d.ts.map +0 -1
  315. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/config.js +0 -280
  316. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/config.js.map +0 -1
  317. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/conflict-detector.d.ts +0 -85
  318. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/conflict-detector.d.ts.map +0 -1
  319. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/conflict-detector.js +0 -129
  320. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/conflict-detector.js.map +0 -1
  321. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-cli.d.ts +0 -208
  322. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-cli.d.ts.map +0 -1
  323. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-cli.js +0 -280
  324. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-cli.js.map +0 -1
  325. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-sync-cli.d.ts +0 -225
  326. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-sync-cli.d.ts.map +0 -1
  327. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-sync-cli.js +0 -464
  328. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-sync-cli.js.map +0 -1
  329. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/index.d.ts +0 -16
  330. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/index.d.ts.map +0 -1
  331. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/index.js +0 -15
  332. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/index.js.map +0 -1
  333. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/manager.d.ts +0 -221
  334. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/manager.d.ts.map +0 -1
  335. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/manager.js +0 -508
  336. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/manager.js.map +0 -1
  337. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/types.d.ts +0 -90
  338. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/types.d.ts.map +0 -1
  339. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/types.js +0 -42
  340. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/types.js.map +0 -1
  341. package/node_modules/@sudocode-ai/local-server/dist/index.d.ts +0 -6
  342. package/node_modules/@sudocode-ai/local-server/dist/index.d.ts.map +0 -1
  343. package/node_modules/@sudocode-ai/local-server/dist/index.js +0 -371
  344. package/node_modules/@sudocode-ai/local-server/dist/index.js.map +0 -1
  345. package/node_modules/@sudocode-ai/local-server/dist/middleware/project-context.d.ts +0 -37
  346. package/node_modules/@sudocode-ai/local-server/dist/middleware/project-context.d.ts.map +0 -1
  347. package/node_modules/@sudocode-ai/local-server/dist/middleware/project-context.js +0 -91
  348. package/node_modules/@sudocode-ai/local-server/dist/middleware/project-context.js.map +0 -1
  349. package/node_modules/@sudocode-ai/local-server/dist/public/assets/index-D4AKx6EO.css +0 -1
  350. package/node_modules/@sudocode-ai/local-server/dist/public/assets/index-DorQqwGV.js +0 -927
  351. package/node_modules/@sudocode-ai/local-server/dist/public/assets/index-DorQqwGV.js.map +0 -1
  352. package/node_modules/@sudocode-ai/local-server/dist/public/assets/react-vendor-DoNwlLhy.js +0 -60
  353. package/node_modules/@sudocode-ai/local-server/dist/public/assets/react-vendor-DoNwlLhy.js.map +0 -1
  354. package/node_modules/@sudocode-ai/local-server/dist/public/assets/ui-vendor-DlxvBun1.js +0 -54
  355. package/node_modules/@sudocode-ai/local-server/dist/public/assets/ui-vendor-DlxvBun1.js.map +0 -1
  356. package/node_modules/@sudocode-ai/local-server/dist/public/favicon.ico +0 -0
  357. package/node_modules/@sudocode-ai/local-server/dist/public/index.html +0 -16
  358. package/node_modules/@sudocode-ai/local-server/dist/public/logo.png +0 -0
  359. package/node_modules/@sudocode-ai/local-server/dist/routes/agents.d.ts +0 -3
  360. package/node_modules/@sudocode-ai/local-server/dist/routes/agents.d.ts.map +0 -1
  361. package/node_modules/@sudocode-ai/local-server/dist/routes/agents.js +0 -62
  362. package/node_modules/@sudocode-ai/local-server/dist/routes/agents.js.map +0 -1
  363. package/node_modules/@sudocode-ai/local-server/dist/routes/config.d.ts +0 -3
  364. package/node_modules/@sudocode-ai/local-server/dist/routes/config.d.ts.map +0 -1
  365. package/node_modules/@sudocode-ai/local-server/dist/routes/config.js +0 -116
  366. package/node_modules/@sudocode-ai/local-server/dist/routes/config.js.map +0 -1
  367. package/node_modules/@sudocode-ai/local-server/dist/routes/editors.d.ts +0 -15
  368. package/node_modules/@sudocode-ai/local-server/dist/routes/editors.d.ts.map +0 -1
  369. package/node_modules/@sudocode-ai/local-server/dist/routes/editors.js +0 -98
  370. package/node_modules/@sudocode-ai/local-server/dist/routes/editors.js.map +0 -1
  371. package/node_modules/@sudocode-ai/local-server/dist/routes/executions-stream.d.ts +0 -27
  372. package/node_modules/@sudocode-ai/local-server/dist/routes/executions-stream.d.ts.map +0 -1
  373. package/node_modules/@sudocode-ai/local-server/dist/routes/executions-stream.js +0 -59
  374. package/node_modules/@sudocode-ai/local-server/dist/routes/executions-stream.js.map +0 -1
  375. package/node_modules/@sudocode-ai/local-server/dist/routes/executions.d.ts +0 -18
  376. package/node_modules/@sudocode-ai/local-server/dist/routes/executions.d.ts.map +0 -1
  377. package/node_modules/@sudocode-ai/local-server/dist/routes/executions.js +0 -1169
  378. package/node_modules/@sudocode-ai/local-server/dist/routes/executions.js.map +0 -1
  379. package/node_modules/@sudocode-ai/local-server/dist/routes/feedback.d.ts +0 -8
  380. package/node_modules/@sudocode-ai/local-server/dist/routes/feedback.d.ts.map +0 -1
  381. package/node_modules/@sudocode-ai/local-server/dist/routes/feedback.js +0 -340
  382. package/node_modules/@sudocode-ai/local-server/dist/routes/feedback.js.map +0 -1
  383. package/node_modules/@sudocode-ai/local-server/dist/routes/files.d.ts +0 -18
  384. package/node_modules/@sudocode-ai/local-server/dist/routes/files.d.ts.map +0 -1
  385. package/node_modules/@sudocode-ai/local-server/dist/routes/files.js +0 -89
  386. package/node_modules/@sudocode-ai/local-server/dist/routes/files.js.map +0 -1
  387. package/node_modules/@sudocode-ai/local-server/dist/routes/import.d.ts +0 -142
  388. package/node_modules/@sudocode-ai/local-server/dist/routes/import.d.ts.map +0 -1
  389. package/node_modules/@sudocode-ai/local-server/dist/routes/import.js +0 -896
  390. package/node_modules/@sudocode-ai/local-server/dist/routes/import.js.map +0 -1
  391. package/node_modules/@sudocode-ai/local-server/dist/routes/issues.d.ts +0 -8
  392. package/node_modules/@sudocode-ai/local-server/dist/routes/issues.d.ts.map +0 -1
  393. package/node_modules/@sudocode-ai/local-server/dist/routes/issues.js +0 -419
  394. package/node_modules/@sudocode-ai/local-server/dist/routes/issues.js.map +0 -1
  395. package/node_modules/@sudocode-ai/local-server/dist/routes/plugins.d.ts +0 -34
  396. package/node_modules/@sudocode-ai/local-server/dist/routes/plugins.d.ts.map +0 -1
  397. package/node_modules/@sudocode-ai/local-server/dist/routes/plugins.js +0 -602
  398. package/node_modules/@sudocode-ai/local-server/dist/routes/plugins.js.map +0 -1
  399. package/node_modules/@sudocode-ai/local-server/dist/routes/projects.d.ts +0 -11
  400. package/node_modules/@sudocode-ai/local-server/dist/routes/projects.d.ts.map +0 -1
  401. package/node_modules/@sudocode-ai/local-server/dist/routes/projects.js +0 -536
  402. package/node_modules/@sudocode-ai/local-server/dist/routes/projects.js.map +0 -1
  403. package/node_modules/@sudocode-ai/local-server/dist/routes/relationships.d.ts +0 -8
  404. package/node_modules/@sudocode-ai/local-server/dist/routes/relationships.d.ts.map +0 -1
  405. package/node_modules/@sudocode-ai/local-server/dist/routes/relationships.js +0 -310
  406. package/node_modules/@sudocode-ai/local-server/dist/routes/relationships.js.map +0 -1
  407. package/node_modules/@sudocode-ai/local-server/dist/routes/repo-info.d.ts +0 -3
  408. package/node_modules/@sudocode-ai/local-server/dist/routes/repo-info.d.ts.map +0 -1
  409. package/node_modules/@sudocode-ai/local-server/dist/routes/repo-info.js +0 -203
  410. package/node_modules/@sudocode-ai/local-server/dist/routes/repo-info.js.map +0 -1
  411. package/node_modules/@sudocode-ai/local-server/dist/routes/specs.d.ts +0 -8
  412. package/node_modules/@sudocode-ai/local-server/dist/routes/specs.d.ts.map +0 -1
  413. package/node_modules/@sudocode-ai/local-server/dist/routes/specs.js +0 -414
  414. package/node_modules/@sudocode-ai/local-server/dist/routes/specs.js.map +0 -1
  415. package/node_modules/@sudocode-ai/local-server/dist/routes/update.d.ts +0 -7
  416. package/node_modules/@sudocode-ai/local-server/dist/routes/update.d.ts.map +0 -1
  417. package/node_modules/@sudocode-ai/local-server/dist/routes/update.js +0 -194
  418. package/node_modules/@sudocode-ai/local-server/dist/routes/update.js.map +0 -1
  419. package/node_modules/@sudocode-ai/local-server/dist/routes/version.d.ts +0 -3
  420. package/node_modules/@sudocode-ai/local-server/dist/routes/version.d.ts.map +0 -1
  421. package/node_modules/@sudocode-ai/local-server/dist/routes/version.js +0 -25
  422. package/node_modules/@sudocode-ai/local-server/dist/routes/version.js.map +0 -1
  423. package/node_modules/@sudocode-ai/local-server/dist/routes/workflows.d.ts +0 -8
  424. package/node_modules/@sudocode-ai/local-server/dist/routes/workflows.d.ts.map +0 -1
  425. package/node_modules/@sudocode-ai/local-server/dist/routes/workflows.js +0 -1729
  426. package/node_modules/@sudocode-ai/local-server/dist/routes/workflows.js.map +0 -1
  427. package/node_modules/@sudocode-ai/local-server/dist/services/agent-registry.d.ts +0 -140
  428. package/node_modules/@sudocode-ai/local-server/dist/services/agent-registry.d.ts.map +0 -1
  429. package/node_modules/@sudocode-ai/local-server/dist/services/agent-registry.js +0 -272
  430. package/node_modules/@sudocode-ai/local-server/dist/services/agent-registry.js.map +0 -1
  431. package/node_modules/@sudocode-ai/local-server/dist/services/db.d.ts +0 -33
  432. package/node_modules/@sudocode-ai/local-server/dist/services/db.d.ts.map +0 -1
  433. package/node_modules/@sudocode-ai/local-server/dist/services/db.js +0 -90
  434. package/node_modules/@sudocode-ai/local-server/dist/services/db.js.map +0 -1
  435. package/node_modules/@sudocode-ai/local-server/dist/services/editor-service.d.ts +0 -57
  436. package/node_modules/@sudocode-ai/local-server/dist/services/editor-service.d.ts.map +0 -1
  437. package/node_modules/@sudocode-ai/local-server/dist/services/editor-service.js +0 -204
  438. package/node_modules/@sudocode-ai/local-server/dist/services/editor-service.js.map +0 -1
  439. package/node_modules/@sudocode-ai/local-server/dist/services/execution-changes-service.d.ts +0 -110
  440. package/node_modules/@sudocode-ai/local-server/dist/services/execution-changes-service.d.ts.map +0 -1
  441. package/node_modules/@sudocode-ai/local-server/dist/services/execution-changes-service.js +0 -710
  442. package/node_modules/@sudocode-ai/local-server/dist/services/execution-changes-service.js.map +0 -1
  443. package/node_modules/@sudocode-ai/local-server/dist/services/execution-event-callbacks.d.ts +0 -73
  444. package/node_modules/@sudocode-ai/local-server/dist/services/execution-event-callbacks.d.ts.map +0 -1
  445. package/node_modules/@sudocode-ai/local-server/dist/services/execution-event-callbacks.js +0 -82
  446. package/node_modules/@sudocode-ai/local-server/dist/services/execution-event-callbacks.js.map +0 -1
  447. package/node_modules/@sudocode-ai/local-server/dist/services/execution-lifecycle.d.ts +0 -145
  448. package/node_modules/@sudocode-ai/local-server/dist/services/execution-lifecycle.d.ts.map +0 -1
  449. package/node_modules/@sudocode-ai/local-server/dist/services/execution-lifecycle.js +0 -392
  450. package/node_modules/@sudocode-ai/local-server/dist/services/execution-lifecycle.js.map +0 -1
  451. package/node_modules/@sudocode-ai/local-server/dist/services/execution-logs-cleanup.d.ts +0 -88
  452. package/node_modules/@sudocode-ai/local-server/dist/services/execution-logs-cleanup.d.ts.map +0 -1
  453. package/node_modules/@sudocode-ai/local-server/dist/services/execution-logs-cleanup.js +0 -137
  454. package/node_modules/@sudocode-ai/local-server/dist/services/execution-logs-cleanup.js.map +0 -1
  455. package/node_modules/@sudocode-ai/local-server/dist/services/execution-logs-store.d.ts +0 -252
  456. package/node_modules/@sudocode-ai/local-server/dist/services/execution-logs-store.d.ts.map +0 -1
  457. package/node_modules/@sudocode-ai/local-server/dist/services/execution-logs-store.js +0 -379
  458. package/node_modules/@sudocode-ai/local-server/dist/services/execution-logs-store.js.map +0 -1
  459. package/node_modules/@sudocode-ai/local-server/dist/services/execution-service.d.ts +0 -280
  460. package/node_modules/@sudocode-ai/local-server/dist/services/execution-service.d.ts.map +0 -1
  461. package/node_modules/@sudocode-ai/local-server/dist/services/execution-service.js +0 -1240
  462. package/node_modules/@sudocode-ai/local-server/dist/services/execution-service.js.map +0 -1
  463. package/node_modules/@sudocode-ai/local-server/dist/services/execution-worker-pool.d.ts +0 -116
  464. package/node_modules/@sudocode-ai/local-server/dist/services/execution-worker-pool.d.ts.map +0 -1
  465. package/node_modules/@sudocode-ai/local-server/dist/services/execution-worker-pool.js +0 -326
  466. package/node_modules/@sudocode-ai/local-server/dist/services/execution-worker-pool.js.map +0 -1
  467. package/node_modules/@sudocode-ai/local-server/dist/services/executions.d.ts +0 -63
  468. package/node_modules/@sudocode-ai/local-server/dist/services/executions.d.ts.map +0 -1
  469. package/node_modules/@sudocode-ai/local-server/dist/services/executions.js +0 -177
  470. package/node_modules/@sudocode-ai/local-server/dist/services/executions.js.map +0 -1
  471. package/node_modules/@sudocode-ai/local-server/dist/services/export.d.ts +0 -32
  472. package/node_modules/@sudocode-ai/local-server/dist/services/export.d.ts.map +0 -1
  473. package/node_modules/@sudocode-ai/local-server/dist/services/export.js +0 -114
  474. package/node_modules/@sudocode-ai/local-server/dist/services/export.js.map +0 -1
  475. package/node_modules/@sudocode-ai/local-server/dist/services/external-refresh-service.d.ts +0 -104
  476. package/node_modules/@sudocode-ai/local-server/dist/services/external-refresh-service.d.ts.map +0 -1
  477. package/node_modules/@sudocode-ai/local-server/dist/services/external-refresh-service.js +0 -520
  478. package/node_modules/@sudocode-ai/local-server/dist/services/external-refresh-service.js.map +0 -1
  479. package/node_modules/@sudocode-ai/local-server/dist/services/feedback.d.ts +0 -56
  480. package/node_modules/@sudocode-ai/local-server/dist/services/feedback.d.ts.map +0 -1
  481. package/node_modules/@sudocode-ai/local-server/dist/services/feedback.js +0 -78
  482. package/node_modules/@sudocode-ai/local-server/dist/services/feedback.js.map +0 -1
  483. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/git-ls-files-strategy.d.ts +0 -72
  484. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/git-ls-files-strategy.d.ts.map +0 -1
  485. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/git-ls-files-strategy.js +0 -176
  486. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/git-ls-files-strategy.js.map +0 -1
  487. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/index.d.ts +0 -9
  488. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/index.d.ts.map +0 -1
  489. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/index.js +0 -10
  490. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/index.js.map +0 -1
  491. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/registry.d.ts +0 -97
  492. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/registry.d.ts.map +0 -1
  493. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/registry.js +0 -140
  494. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/registry.js.map +0 -1
  495. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/strategy.d.ts +0 -58
  496. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/strategy.d.ts.map +0 -1
  497. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/strategy.js +0 -8
  498. package/node_modules/@sudocode-ai/local-server/dist/services/file-search/strategy.js.map +0 -1
  499. package/node_modules/@sudocode-ai/local-server/dist/services/integration-sync-service.d.ts +0 -185
  500. package/node_modules/@sudocode-ai/local-server/dist/services/integration-sync-service.d.ts.map +0 -1
  501. package/node_modules/@sudocode-ai/local-server/dist/services/integration-sync-service.js +0 -428
  502. package/node_modules/@sudocode-ai/local-server/dist/services/integration-sync-service.js.map +0 -1
  503. package/node_modules/@sudocode-ai/local-server/dist/services/issues.d.ts +0 -27
  504. package/node_modules/@sudocode-ai/local-server/dist/services/issues.d.ts.map +0 -1
  505. package/node_modules/@sudocode-ai/local-server/dist/services/issues.js +0 -35
  506. package/node_modules/@sudocode-ai/local-server/dist/services/issues.js.map +0 -1
  507. package/node_modules/@sudocode-ai/local-server/dist/services/project-context.d.ts +0 -97
  508. package/node_modules/@sudocode-ai/local-server/dist/services/project-context.d.ts.map +0 -1
  509. package/node_modules/@sudocode-ai/local-server/dist/services/project-context.js +0 -170
  510. package/node_modules/@sudocode-ai/local-server/dist/services/project-context.js.map +0 -1
  511. package/node_modules/@sudocode-ai/local-server/dist/services/project-manager.d.ts +0 -102
  512. package/node_modules/@sudocode-ai/local-server/dist/services/project-manager.d.ts.map +0 -1
  513. package/node_modules/@sudocode-ai/local-server/dist/services/project-manager.js +0 -502
  514. package/node_modules/@sudocode-ai/local-server/dist/services/project-manager.js.map +0 -1
  515. package/node_modules/@sudocode-ai/local-server/dist/services/project-registry.d.ts +0 -98
  516. package/node_modules/@sudocode-ai/local-server/dist/services/project-registry.d.ts.map +0 -1
  517. package/node_modules/@sudocode-ai/local-server/dist/services/project-registry.js +0 -289
  518. package/node_modules/@sudocode-ai/local-server/dist/services/project-registry.js.map +0 -1
  519. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-resolver.d.ts +0 -97
  520. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-resolver.d.ts.map +0 -1
  521. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-resolver.js +0 -377
  522. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-resolver.js.map +0 -1
  523. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-template-engine.d.ts +0 -108
  524. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-template-engine.d.ts.map +0 -1
  525. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-template-engine.js +0 -212
  526. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-template-engine.js.map +0 -1
  527. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-templates.d.ts +0 -97
  528. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-templates.d.ts.map +0 -1
  529. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-templates.js +0 -236
  530. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-templates.js.map +0 -1
  531. package/node_modules/@sudocode-ai/local-server/dist/services/relationships.d.ts +0 -35
  532. package/node_modules/@sudocode-ai/local-server/dist/services/relationships.d.ts.map +0 -1
  533. package/node_modules/@sudocode-ai/local-server/dist/services/relationships.js +0 -42
  534. package/node_modules/@sudocode-ai/local-server/dist/services/relationships.js.map +0 -1
  535. package/node_modules/@sudocode-ai/local-server/dist/services/repo-info.d.ts +0 -33
  536. package/node_modules/@sudocode-ai/local-server/dist/services/repo-info.d.ts.map +0 -1
  537. package/node_modules/@sudocode-ai/local-server/dist/services/repo-info.js +0 -136
  538. package/node_modules/@sudocode-ai/local-server/dist/services/repo-info.js.map +0 -1
  539. package/node_modules/@sudocode-ai/local-server/dist/services/specs.d.ts +0 -27
  540. package/node_modules/@sudocode-ai/local-server/dist/services/specs.d.ts.map +0 -1
  541. package/node_modules/@sudocode-ai/local-server/dist/services/specs.js +0 -35
  542. package/node_modules/@sudocode-ai/local-server/dist/services/specs.js.map +0 -1
  543. package/node_modules/@sudocode-ai/local-server/dist/services/version-service.d.ts +0 -14
  544. package/node_modules/@sudocode-ai/local-server/dist/services/version-service.d.ts.map +0 -1
  545. package/node_modules/@sudocode-ai/local-server/dist/services/version-service.js +0 -57
  546. package/node_modules/@sudocode-ai/local-server/dist/services/version-service.js.map +0 -1
  547. package/node_modules/@sudocode-ai/local-server/dist/services/watcher.d.ts +0 -49
  548. package/node_modules/@sudocode-ai/local-server/dist/services/watcher.d.ts.map +0 -1
  549. package/node_modules/@sudocode-ai/local-server/dist/services/watcher.js +0 -52
  550. package/node_modules/@sudocode-ai/local-server/dist/services/watcher.js.map +0 -1
  551. package/node_modules/@sudocode-ai/local-server/dist/services/websocket.d.ts +0 -179
  552. package/node_modules/@sudocode-ai/local-server/dist/services/websocket.d.ts.map +0 -1
  553. package/node_modules/@sudocode-ai/local-server/dist/services/websocket.js +0 -543
  554. package/node_modules/@sudocode-ai/local-server/dist/services/websocket.js.map +0 -1
  555. package/node_modules/@sudocode-ai/local-server/dist/services/workflow-broadcast-service.d.ts +0 -43
  556. package/node_modules/@sudocode-ai/local-server/dist/services/workflow-broadcast-service.d.ts.map +0 -1
  557. package/node_modules/@sudocode-ai/local-server/dist/services/workflow-broadcast-service.js +0 -155
  558. package/node_modules/@sudocode-ai/local-server/dist/services/workflow-broadcast-service.js.map +0 -1
  559. package/node_modules/@sudocode-ai/local-server/dist/services/worktree-sync-service.d.ts +0 -437
  560. package/node_modules/@sudocode-ai/local-server/dist/services/worktree-sync-service.d.ts.map +0 -1
  561. package/node_modules/@sudocode-ai/local-server/dist/services/worktree-sync-service.js +0 -1505
  562. package/node_modules/@sudocode-ai/local-server/dist/services/worktree-sync-service.js.map +0 -1
  563. package/node_modules/@sudocode-ai/local-server/dist/types/editor.d.ts +0 -49
  564. package/node_modules/@sudocode-ai/local-server/dist/types/editor.d.ts.map +0 -1
  565. package/node_modules/@sudocode-ai/local-server/dist/types/editor.js +0 -50
  566. package/node_modules/@sudocode-ai/local-server/dist/types/editor.js.map +0 -1
  567. package/node_modules/@sudocode-ai/local-server/dist/types/project.d.ts +0 -58
  568. package/node_modules/@sudocode-ai/local-server/dist/types/project.d.ts.map +0 -1
  569. package/node_modules/@sudocode-ai/local-server/dist/types/project.js +0 -10
  570. package/node_modules/@sudocode-ai/local-server/dist/types/project.js.map +0 -1
  571. package/node_modules/@sudocode-ai/local-server/dist/utils/execFileNoThrow.d.ts +0 -43
  572. package/node_modules/@sudocode-ai/local-server/dist/utils/execFileNoThrow.d.ts.map +0 -1
  573. package/node_modules/@sudocode-ai/local-server/dist/utils/execFileNoThrow.js +0 -53
  574. package/node_modules/@sudocode-ai/local-server/dist/utils/execFileNoThrow.js.map +0 -1
  575. package/node_modules/@sudocode-ai/local-server/dist/utils/executable-check.d.ts +0 -36
  576. package/node_modules/@sudocode-ai/local-server/dist/utils/executable-check.d.ts.map +0 -1
  577. package/node_modules/@sudocode-ai/local-server/dist/utils/executable-check.js +0 -79
  578. package/node_modules/@sudocode-ai/local-server/dist/utils/executable-check.js.map +0 -1
  579. package/node_modules/@sudocode-ai/local-server/dist/utils/sudocode-dir.d.ts +0 -6
  580. package/node_modules/@sudocode-ai/local-server/dist/utils/sudocode-dir.d.ts.map +0 -1
  581. package/node_modules/@sudocode-ai/local-server/dist/utils/sudocode-dir.js +0 -9
  582. package/node_modules/@sudocode-ai/local-server/dist/utils/sudocode-dir.js.map +0 -1
  583. package/node_modules/@sudocode-ai/local-server/dist/workers/execution-worker.d.ts +0 -18
  584. package/node_modules/@sudocode-ai/local-server/dist/workers/execution-worker.d.ts.map +0 -1
  585. package/node_modules/@sudocode-ai/local-server/dist/workers/execution-worker.js +0 -340
  586. package/node_modules/@sudocode-ai/local-server/dist/workers/execution-worker.js.map +0 -1
  587. package/node_modules/@sudocode-ai/local-server/dist/workers/worker-ipc.d.ts +0 -84
  588. package/node_modules/@sudocode-ai/local-server/dist/workers/worker-ipc.d.ts.map +0 -1
  589. package/node_modules/@sudocode-ai/local-server/dist/workers/worker-ipc.js +0 -29
  590. package/node_modules/@sudocode-ai/local-server/dist/workers/worker-ipc.js.map +0 -1
  591. package/node_modules/@sudocode-ai/local-server/dist/workflow/base-workflow-engine.d.ts +0 -186
  592. package/node_modules/@sudocode-ai/local-server/dist/workflow/base-workflow-engine.d.ts.map +0 -1
  593. package/node_modules/@sudocode-ai/local-server/dist/workflow/base-workflow-engine.js +0 -557
  594. package/node_modules/@sudocode-ai/local-server/dist/workflow/base-workflow-engine.js.map +0 -1
  595. package/node_modules/@sudocode-ai/local-server/dist/workflow/dependency-analyzer.d.ts +0 -78
  596. package/node_modules/@sudocode-ai/local-server/dist/workflow/dependency-analyzer.d.ts.map +0 -1
  597. package/node_modules/@sudocode-ai/local-server/dist/workflow/dependency-analyzer.js +0 -264
  598. package/node_modules/@sudocode-ai/local-server/dist/workflow/dependency-analyzer.js.map +0 -1
  599. package/node_modules/@sudocode-ai/local-server/dist/workflow/engines/orchestrator-engine.d.ts +0 -237
  600. package/node_modules/@sudocode-ai/local-server/dist/workflow/engines/orchestrator-engine.d.ts.map +0 -1
  601. package/node_modules/@sudocode-ai/local-server/dist/workflow/engines/orchestrator-engine.js +0 -749
  602. package/node_modules/@sudocode-ai/local-server/dist/workflow/engines/orchestrator-engine.js.map +0 -1
  603. package/node_modules/@sudocode-ai/local-server/dist/workflow/engines/sequential-engine.d.ts +0 -276
  604. package/node_modules/@sudocode-ai/local-server/dist/workflow/engines/sequential-engine.d.ts.map +0 -1
  605. package/node_modules/@sudocode-ai/local-server/dist/workflow/engines/sequential-engine.js +0 -1110
  606. package/node_modules/@sudocode-ai/local-server/dist/workflow/engines/sequential-engine.js.map +0 -1
  607. package/node_modules/@sudocode-ai/local-server/dist/workflow/index.d.ts +0 -15
  608. package/node_modules/@sudocode-ai/local-server/dist/workflow/index.d.ts.map +0 -1
  609. package/node_modules/@sudocode-ai/local-server/dist/workflow/index.js +0 -22
  610. package/node_modules/@sudocode-ai/local-server/dist/workflow/index.js.map +0 -1
  611. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/api-client.d.ts +0 -103
  612. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/api-client.d.ts.map +0 -1
  613. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/api-client.js +0 -193
  614. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/api-client.js.map +0 -1
  615. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/index.d.ts +0 -16
  616. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/index.d.ts.map +0 -1
  617. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/index.js +0 -114
  618. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/index.js.map +0 -1
  619. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/server.d.ts +0 -85
  620. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/server.d.ts.map +0 -1
  621. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/server.js +0 -520
  622. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/server.js.map +0 -1
  623. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/escalation.d.ts +0 -36
  624. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/escalation.d.ts.map +0 -1
  625. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/escalation.js +0 -47
  626. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/escalation.js.map +0 -1
  627. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/execution.d.ts +0 -59
  628. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/execution.d.ts.map +0 -1
  629. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/execution.js +0 -67
  630. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/execution.js.map +0 -1
  631. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/inspection.d.ts +0 -82
  632. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/inspection.d.ts.map +0 -1
  633. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/inspection.js +0 -57
  634. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/inspection.js.map +0 -1
  635. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/workflow.d.ts +0 -59
  636. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/workflow.d.ts.map +0 -1
  637. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/workflow.js +0 -40
  638. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/tools/workflow.js.map +0 -1
  639. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/types.d.ts +0 -345
  640. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/types.d.ts.map +0 -1
  641. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/types.js +0 -7
  642. package/node_modules/@sudocode-ai/local-server/dist/workflow/mcp/types.js.map +0 -1
  643. package/node_modules/@sudocode-ai/local-server/dist/workflow/services/prompt-builder.d.ts +0 -36
  644. package/node_modules/@sudocode-ai/local-server/dist/workflow/services/prompt-builder.d.ts.map +0 -1
  645. package/node_modules/@sudocode-ai/local-server/dist/workflow/services/prompt-builder.js +0 -329
  646. package/node_modules/@sudocode-ai/local-server/dist/workflow/services/prompt-builder.js.map +0 -1
  647. package/node_modules/@sudocode-ai/local-server/dist/workflow/services/wakeup-service.d.ts +0 -262
  648. package/node_modules/@sudocode-ai/local-server/dist/workflow/services/wakeup-service.d.ts.map +0 -1
  649. package/node_modules/@sudocode-ai/local-server/dist/workflow/services/wakeup-service.js +0 -809
  650. package/node_modules/@sudocode-ai/local-server/dist/workflow/services/wakeup-service.js.map +0 -1
  651. package/node_modules/@sudocode-ai/local-server/dist/workflow/workflow-engine.d.ts +0 -221
  652. package/node_modules/@sudocode-ai/local-server/dist/workflow/workflow-engine.d.ts.map +0 -1
  653. package/node_modules/@sudocode-ai/local-server/dist/workflow/workflow-engine.js +0 -94
  654. package/node_modules/@sudocode-ai/local-server/dist/workflow/workflow-engine.js.map +0 -1
  655. package/node_modules/@sudocode-ai/local-server/dist/workflow/workflow-event-emitter.d.ts +0 -278
  656. package/node_modules/@sudocode-ai/local-server/dist/workflow/workflow-event-emitter.d.ts.map +0 -1
  657. package/node_modules/@sudocode-ai/local-server/dist/workflow/workflow-event-emitter.js +0 -259
  658. package/node_modules/@sudocode-ai/local-server/dist/workflow/workflow-event-emitter.js.map +0 -1
  659. package/node_modules/@sudocode-ai/local-server/package.json +0 -78
  660. package/node_modules/@sudocode-ai/mcp/README.md +0 -226
  661. package/node_modules/@sudocode-ai/mcp/dist/client.d.ts +0 -33
  662. package/node_modules/@sudocode-ai/mcp/dist/client.d.ts.map +0 -1
  663. package/node_modules/@sudocode-ai/mcp/dist/client.js +0 -166
  664. package/node_modules/@sudocode-ai/mcp/dist/client.js.map +0 -1
  665. package/node_modules/@sudocode-ai/mcp/dist/index.d.ts +0 -6
  666. package/node_modules/@sudocode-ai/mcp/dist/index.d.ts.map +0 -1
  667. package/node_modules/@sudocode-ai/mcp/dist/index.js +0 -64
  668. package/node_modules/@sudocode-ai/mcp/dist/index.js.map +0 -1
  669. package/node_modules/@sudocode-ai/mcp/dist/server.d.ts +0 -26
  670. package/node_modules/@sudocode-ai/mcp/dist/server.d.ts.map +0 -1
  671. package/node_modules/@sudocode-ai/mcp/dist/server.js +0 -577
  672. package/node_modules/@sudocode-ai/mcp/dist/server.js.map +0 -1
  673. package/node_modules/@sudocode-ai/mcp/dist/tools/analytics.d.ts +0 -41
  674. package/node_modules/@sudocode-ai/mcp/dist/tools/analytics.d.ts.map +0 -1
  675. package/node_modules/@sudocode-ai/mcp/dist/tools/analytics.js +0 -21
  676. package/node_modules/@sudocode-ai/mcp/dist/tools/analytics.js.map +0 -1
  677. package/node_modules/@sudocode-ai/mcp/dist/tools/feedback.d.ts +0 -21
  678. package/node_modules/@sudocode-ai/mcp/dist/tools/feedback.d.ts.map +0 -1
  679. package/node_modules/@sudocode-ai/mcp/dist/tools/feedback.js +0 -30
  680. package/node_modules/@sudocode-ai/mcp/dist/tools/feedback.js.map +0 -1
  681. package/node_modules/@sudocode-ai/mcp/dist/tools/init.d.ts +0 -17
  682. package/node_modules/@sudocode-ai/mcp/dist/tools/init.d.ts.map +0 -1
  683. package/node_modules/@sudocode-ai/mcp/dist/tools/init.js +0 -15
  684. package/node_modules/@sudocode-ai/mcp/dist/tools/init.js.map +0 -1
  685. package/node_modules/@sudocode-ai/mcp/dist/tools/issues.d.ts +0 -44
  686. package/node_modules/@sudocode-ai/mcp/dist/tools/issues.d.ts.map +0 -1
  687. package/node_modules/@sudocode-ai/mcp/dist/tools/issues.js +0 -109
  688. package/node_modules/@sudocode-ai/mcp/dist/tools/issues.js.map +0 -1
  689. package/node_modules/@sudocode-ai/mcp/dist/tools/references.d.ts +0 -21
  690. package/node_modules/@sudocode-ai/mcp/dist/tools/references.d.ts.map +0 -1
  691. package/node_modules/@sudocode-ai/mcp/dist/tools/references.js +0 -49
  692. package/node_modules/@sudocode-ai/mcp/dist/tools/references.js.map +0 -1
  693. package/node_modules/@sudocode-ai/mcp/dist/tools/relationships.d.ts +0 -15
  694. package/node_modules/@sudocode-ai/mcp/dist/tools/relationships.d.ts.map +0 -1
  695. package/node_modules/@sudocode-ai/mcp/dist/tools/relationships.js +0 -18
  696. package/node_modules/@sudocode-ai/mcp/dist/tools/relationships.js.map +0 -1
  697. package/node_modules/@sudocode-ai/mcp/dist/tools/specs.d.ts +0 -35
  698. package/node_modules/@sudocode-ai/mcp/dist/tools/specs.d.ts.map +0 -1
  699. package/node_modules/@sudocode-ai/mcp/dist/tools/specs.js +0 -85
  700. package/node_modules/@sudocode-ai/mcp/dist/tools/specs.js.map +0 -1
  701. package/node_modules/@sudocode-ai/mcp/dist/types.d.ts +0 -35
  702. package/node_modules/@sudocode-ai/mcp/dist/types.d.ts.map +0 -1
  703. package/node_modules/@sudocode-ai/mcp/dist/types.js +0 -21
  704. package/node_modules/@sudocode-ai/mcp/dist/types.js.map +0 -1
  705. package/node_modules/@sudocode-ai/mcp/package.json +0 -67
  706. package/node_modules/@sudocode-ai/types/README.md +0 -7
  707. package/node_modules/@sudocode-ai/types/package.json +0 -76
  708. package/node_modules/@sudocode-ai/types/src/agents.d.ts +0 -278
  709. package/node_modules/@sudocode-ai/types/src/artifacts.d.ts +0 -66
  710. package/node_modules/@sudocode-ai/types/src/events.d.ts +0 -70
  711. package/node_modules/@sudocode-ai/types/src/index.d.ts +0 -452
  712. package/node_modules/@sudocode-ai/types/src/integrations.d.ts +0 -454
  713. package/node_modules/@sudocode-ai/types/src/workflows.d.ts +0 -501
  714. package/node_modules/commander/LICENSE +0 -22
  715. package/node_modules/commander/Readme.md +0 -1149
  716. package/node_modules/commander/esm.mjs +0 -16
  717. package/node_modules/commander/index.js +0 -24
  718. package/node_modules/commander/lib/argument.js +0 -149
  719. package/node_modules/commander/lib/command.js +0 -2662
  720. package/node_modules/commander/lib/error.js +0 -39
  721. package/node_modules/commander/lib/help.js +0 -709
  722. package/node_modules/commander/lib/option.js +0 -367
  723. package/node_modules/commander/lib/suggestSimilar.js +0 -101
  724. package/node_modules/commander/package-support.json +0 -16
  725. package/node_modules/commander/package.json +0 -82
  726. package/node_modules/commander/typings/esm.d.mts +0 -3
  727. package/node_modules/commander/typings/index.d.ts +0 -1045
  728. package/node_modules/glob/LICENSE +0 -15
  729. package/node_modules/glob/README.md +0 -1265
  730. package/node_modules/glob/package.json +0 -99
  731. package/node_modules/isexe/LICENSE +0 -15
  732. package/node_modules/isexe/README.md +0 -74
  733. package/node_modules/isexe/package.json +0 -96
  734. package/node_modules/which/LICENSE +0 -15
  735. package/node_modules/which/README.md +0 -51
  736. package/node_modules/which/bin/which.js +0 -52
  737. package/node_modules/which/lib/index.js +0 -111
  738. package/node_modules/which/package.json +0 -52
@@ -1,1110 +0,0 @@
1
- /**
2
- * Sequential Workflow Engine
3
- *
4
- * Executes workflow steps in topological order with worktree reuse.
5
- * Supports both sequential and parallel execution modes.
6
- */
7
- import { exec } from "child_process";
8
- import { promisify } from "util";
9
- import * as path from "path";
10
- import { getIssue, updateIssue, } from "@sudocode-ai/cli/dist/operations/issues.js";
11
- import { readJSONLSync, writeJSONL, } from "@sudocode-ai/cli/dist/jsonl.js";
12
- const execAsync = promisify(exec);
13
- import { BaseWorkflowEngine } from "../base-workflow-engine.js";
14
- import { WorkflowCycleError, WorkflowStateError, WorkflowStepNotFoundError, } from "../workflow-engine.js";
15
- import { getExecution } from "../../services/executions.js";
16
- // =============================================================================
17
- // Sequential Workflow Engine
18
- // =============================================================================
19
- /**
20
- * Sequential Workflow Engine implementation.
21
- *
22
- * Executes workflow steps in topological order (respecting dependencies).
23
- * Features:
24
- * - Single shared worktree for all steps
25
- * - Auto-commit after each step (configurable)
26
- * - Configurable failure handling (stop, pause, skip_dependents, continue)
27
- * - Support for parallel execution of independent steps
28
- *
29
- * @example
30
- * ```typescript
31
- * const engine = new SequentialWorkflowEngine(db, executionService, repoPath);
32
- *
33
- * // Create workflow from a spec
34
- * const workflow = await engine.createWorkflow({
35
- * type: "spec",
36
- * specId: "s-auth"
37
- * });
38
- *
39
- * // Start execution
40
- * await engine.startWorkflow(workflow.id);
41
- *
42
- * // Subscribe to events
43
- * engine.onWorkflowEvent((event) => {
44
- * console.log(event.type, event);
45
- * });
46
- * ```
47
- */
48
- export class SequentialWorkflowEngine extends BaseWorkflowEngine {
49
- executionService;
50
- lifecycleService;
51
- repoPath;
52
- activeWorkflows = new Map();
53
- constructor(db, executionService, lifecycleService, repoPath, eventEmitter) {
54
- super(db, eventEmitter);
55
- this.executionService = executionService;
56
- this.lifecycleService = lifecycleService;
57
- this.repoPath = repoPath;
58
- }
59
- // ===========================================================================
60
- // Workflow Creation
61
- // ===========================================================================
62
- /**
63
- * Create a new workflow from a source definition.
64
- *
65
- * @param source - How to determine workflow scope (spec, issues, root_issue, or goal)
66
- * @param config - Optional configuration overrides (includes baseBranch, title)
67
- * @returns The created workflow
68
- * @throws WorkflowCycleError if dependency cycles are detected
69
- */
70
- async createWorkflow(source, config) {
71
- // 1. Resolve source to issue IDs
72
- const issueIds = await this.resolveSource(source);
73
- // 2. Handle goal-based workflows (no initial issues)
74
- if (source.type === "goal" && issueIds.length === 0) {
75
- // Goal workflows start with no steps - orchestrator creates them
76
- const workflow = this.buildWorkflow({
77
- source,
78
- steps: [],
79
- config: config || {},
80
- repoPath: this.repoPath,
81
- });
82
- this.saveWorkflow(workflow);
83
- return workflow;
84
- }
85
- // 3. Build dependency graph
86
- const graph = this.analyzeDependencies(issueIds);
87
- // 4. Check for cycles
88
- if (graph.cycles && graph.cycles.length > 0) {
89
- throw new WorkflowCycleError(graph.cycles);
90
- }
91
- // 5. Create steps from graph
92
- const steps = this.createStepsFromGraph(graph);
93
- // 6. Build workflow object
94
- const workflow = this.buildWorkflow({
95
- source,
96
- steps,
97
- config: config || {},
98
- repoPath: this.repoPath,
99
- });
100
- // 7. Save to database
101
- this.saveWorkflow(workflow);
102
- return workflow;
103
- }
104
- // ===========================================================================
105
- // Workflow Recovery
106
- // ===========================================================================
107
- /**
108
- * Recover workflows that were running when the server crashed.
109
- *
110
- * This method:
111
- * 1. Finds all sequential workflows in 'running' or 'paused' status
112
- * 2. Reconstructs the activeWorkflows Map from database state
113
- * 3. Handles any steps that were 'running' when the server crashed
114
- * 4. Resumes execution loops for 'running' workflows
115
- *
116
- * Should be called during server startup after engine initialization.
117
- */
118
- async recoverWorkflows() {
119
- console.log("[SequentialWorkflowEngine] Starting workflow recovery...");
120
- // Find all sequential workflows that need recovery
121
- const rows = this.db
122
- .prepare(`
123
- SELECT * FROM workflows
124
- WHERE status IN ('running', 'paused')
125
- AND json_extract(config, '$.engineType') = 'sequential'
126
- `)
127
- .all();
128
- console.log(`[SequentialWorkflowEngine] Found ${rows.length} workflows to recover`);
129
- for (const row of rows) {
130
- try {
131
- await this.recoverSingleWorkflow(row);
132
- }
133
- catch (error) {
134
- console.error(`[SequentialWorkflowEngine] Failed to recover workflow ${row.id}:`, error);
135
- // Continue with other workflows even if one fails
136
- }
137
- }
138
- console.log("[SequentialWorkflowEngine] Workflow recovery complete");
139
- }
140
- /**
141
- * Recover a single workflow from its database row.
142
- */
143
- async recoverSingleWorkflow(row) {
144
- const workflowId = row.id;
145
- const isPaused = row.status === "paused";
146
- console.log(`[SequentialWorkflowEngine] Recovering workflow ${workflowId} (status: ${row.status})`);
147
- // Reconstruct activeWorkflows entry
148
- this.activeWorkflows.set(workflowId, {
149
- workflowId,
150
- isPaused,
151
- isCancelled: false,
152
- });
153
- // Parse steps to find any that were running
154
- const steps = JSON.parse(row.steps);
155
- const runningStep = steps.find((s) => s.status === "running");
156
- if (runningStep) {
157
- console.log(`[SequentialWorkflowEngine] Found running step ${runningStep.id} (execution: ${runningStep.executionId})`);
158
- await this.handleCrashedStep(workflowId, runningStep, row);
159
- }
160
- // Resume execution loop if workflow was running (not paused)
161
- if (!isPaused) {
162
- console.log(`[SequentialWorkflowEngine] Resuming execution loop for workflow ${workflowId}`);
163
- this.runExecutionLoop(workflowId).catch((error) => {
164
- console.error(`[SequentialWorkflowEngine] Recovered workflow ${workflowId} execution loop failed:`, error);
165
- this.failWorkflow(workflowId, error.message).catch(console.error);
166
- });
167
- }
168
- else {
169
- console.log(`[SequentialWorkflowEngine] Workflow ${workflowId} is paused, not resuming execution loop`);
170
- }
171
- }
172
- /**
173
- * Handle a step that was running when the server crashed.
174
- */
175
- async handleCrashedStep(workflowId, step, workflowRow) {
176
- if (!step.executionId) {
177
- // Step was marked running but no execution was created yet
178
- // Reset to pending so it can be retried
179
- console.log(`[SequentialWorkflowEngine] Step ${step.id} has no execution, resetting to pending`);
180
- this.updateStep(workflowId, step.id, {
181
- status: "pending",
182
- error: undefined,
183
- });
184
- return;
185
- }
186
- // Check the execution status
187
- const execution = getExecution(this.db, step.executionId);
188
- if (!execution) {
189
- // Execution record doesn't exist - this shouldn't happen but handle it
190
- console.warn(`[SequentialWorkflowEngine] Execution ${step.executionId} not found, marking step as failed`);
191
- this.updateStep(workflowId, step.id, {
192
- status: "failed",
193
- error: "Execution record not found after server restart",
194
- });
195
- await this.handleRecoveredStepFailure(workflowId, step, workflowRow);
196
- return;
197
- }
198
- // Handle based on execution status
199
- switch (execution.status) {
200
- case "completed":
201
- // Execution completed but we didn't record step success
202
- console.log(`[SequentialWorkflowEngine] Execution ${step.executionId} completed, handling success`);
203
- await this.handleRecoveredStepSuccess(workflowId, step, execution, workflowRow);
204
- break;
205
- case "failed":
206
- case "cancelled":
207
- case "stopped":
208
- // Execution failed/cancelled but we didn't record step failure
209
- console.log(`[SequentialWorkflowEngine] Execution ${step.executionId} ${execution.status}, handling failure`);
210
- this.updateStep(workflowId, step.id, {
211
- status: "failed",
212
- error: execution.error_message || `Execution ${execution.status}`,
213
- });
214
- await this.handleRecoveredStepFailure(workflowId, step, workflowRow);
215
- break;
216
- case "running":
217
- case "pending":
218
- case "preparing":
219
- case "paused":
220
- // Execution was still in progress - it's now orphaned
221
- // Mark as failed since the process is gone
222
- console.log(`[SequentialWorkflowEngine] Execution ${step.executionId} was ${execution.status}, marking as failed`);
223
- this.updateStep(workflowId, step.id, {
224
- status: "failed",
225
- error: "Server crashed during execution",
226
- });
227
- await this.handleRecoveredStepFailure(workflowId, step, workflowRow);
228
- break;
229
- default:
230
- console.warn(`[SequentialWorkflowEngine] Unknown execution status: ${execution.status}`);
231
- this.updateStep(workflowId, step.id, {
232
- status: "failed",
233
- error: `Unknown execution status: ${execution.status}`,
234
- });
235
- await this.handleRecoveredStepFailure(workflowId, step, workflowRow);
236
- }
237
- }
238
- /**
239
- * Handle step success during recovery.
240
- */
241
- async handleRecoveredStepSuccess(workflowId, step, execution, workflowRow) {
242
- // Update step status
243
- this.updateStep(workflowId, step.id, {
244
- status: "completed",
245
- commitSha: execution.after_commit ?? undefined,
246
- });
247
- // Update workflow progress
248
- this.updateWorkflow(workflowId, {
249
- currentStepIndex: workflowRow.current_step_index + 1,
250
- });
251
- // Close the issue in the worktree JSONL if available
252
- await this.closeIssue(step.issueId, workflowRow.worktree_path ?? undefined);
253
- }
254
- /**
255
- * Handle step failure during recovery.
256
- * Applies the workflow's onFailure strategy.
257
- */
258
- async handleRecoveredStepFailure(workflowId, step, workflowRow) {
259
- const config = JSON.parse(workflowRow.config);
260
- const steps = JSON.parse(workflowRow.steps);
261
- // Build a minimal workflow object for helper methods
262
- const workflow = {
263
- id: workflowId,
264
- title: workflowRow.title,
265
- source: JSON.parse(workflowRow.source),
266
- status: workflowRow.status,
267
- steps,
268
- worktreePath: workflowRow.worktree_path ?? undefined,
269
- branchName: workflowRow.branch_name ?? undefined,
270
- baseBranch: workflowRow.base_branch,
271
- currentStepIndex: workflowRow.current_step_index,
272
- config,
273
- createdAt: "",
274
- updatedAt: "",
275
- };
276
- // Apply failure strategy
277
- switch (config.onFailure) {
278
- case "stop":
279
- await this.failWorkflow(workflowId, `Step ${step.id} failed during recovery`);
280
- break;
281
- case "pause":
282
- this.updateWorkflow(workflowId, { status: "paused" });
283
- const state = this.activeWorkflows.get(workflowId);
284
- if (state) {
285
- state.isPaused = true;
286
- }
287
- break;
288
- case "skip_dependents":
289
- await this.skipDependentSteps(workflow, step, `Dependency ${step.issueId} failed during recovery`);
290
- break;
291
- case "continue":
292
- await this.blockDependentSteps(workflow, step);
293
- break;
294
- }
295
- }
296
- // ===========================================================================
297
- // Workflow Lifecycle
298
- // ===========================================================================
299
- /**
300
- * Start executing a pending workflow.
301
- *
302
- * Creates a worktree and begins the execution loop.
303
- *
304
- * @param workflowId - The workflow to start
305
- * @throws WorkflowNotFoundError if workflow doesn't exist
306
- * @throws WorkflowStateError if workflow is not in pending state
307
- */
308
- async startWorkflow(workflowId) {
309
- const workflow = await this.getWorkflowOrThrow(workflowId);
310
- // Validate state
311
- if (workflow.status !== "pending") {
312
- throw new WorkflowStateError(workflowId, workflow.status, "start");
313
- }
314
- // Create workflow-level worktree if not already present
315
- if (!workflow.worktreePath) {
316
- const { worktreePath, branchName } = await this.createWorkflowWorktreeHelper(workflow, this.repoPath, this.lifecycleService);
317
- // Update local workflow reference with worktree info
318
- workflow.worktreePath = worktreePath;
319
- workflow.branchName = branchName;
320
- }
321
- // Initialize workflow state
322
- this.activeWorkflows.set(workflowId, {
323
- workflowId,
324
- isPaused: false,
325
- isCancelled: false,
326
- });
327
- // Update status to running
328
- const updated = this.updateWorkflow(workflowId, {
329
- status: "running",
330
- startedAt: new Date().toISOString(),
331
- });
332
- // Emit workflow started event
333
- this.eventEmitter.emit({
334
- type: "workflow_started",
335
- workflowId,
336
- workflow: updated,
337
- timestamp: Date.now(),
338
- });
339
- // Start execution loop (non-blocking)
340
- this.runExecutionLoop(workflowId).catch((error) => {
341
- console.error(`Workflow ${workflowId} execution loop failed:`, error);
342
- this.failWorkflow(workflowId, error.message).catch(console.error);
343
- });
344
- }
345
- /**
346
- * Pause a running workflow, cancelling the current execution.
347
- *
348
- * The current step is reset to "pending" so it can be re-executed on resume.
349
- *
350
- * @param workflowId - The workflow to pause
351
- * @throws WorkflowNotFoundError if workflow doesn't exist
352
- * @throws WorkflowStateError if workflow is not running
353
- */
354
- async pauseWorkflow(workflowId) {
355
- const workflow = await this.getWorkflowOrThrow(workflowId);
356
- if (workflow.status !== "running") {
357
- throw new WorkflowStateError(workflowId, workflow.status, "pause");
358
- }
359
- // Set pause flag for execution loop
360
- const state = this.activeWorkflows.get(workflowId);
361
- if (state) {
362
- state.isPaused = true;
363
- // Cancel current execution if running and reset the step status
364
- // Keep the executionId so we can resume the session later
365
- if (state.currentExecutionId) {
366
- try {
367
- await this.executionService.cancelExecution(state.currentExecutionId);
368
- // Find the running step and reset status to pending (keep executionId for resume)
369
- const runningStep = workflow.steps.find((s) => s.status === "running");
370
- if (runningStep) {
371
- this.updateStep(workflowId, runningStep.id, {
372
- status: "pending",
373
- // Keep executionId so we can resume the session
374
- error: undefined,
375
- });
376
- console.log(`[SequentialWorkflowEngine] Reset step ${runningStep.id} to pending after pause (keeping executionId for resume)`);
377
- }
378
- }
379
- catch (error) {
380
- console.warn(`[SequentialWorkflowEngine] Failed to cancel execution ${state.currentExecutionId}:`, error);
381
- }
382
- state.currentExecutionId = undefined;
383
- }
384
- }
385
- // Update status
386
- this.updateWorkflow(workflowId, { status: "paused" });
387
- // Emit event
388
- this.eventEmitter.emit({
389
- type: "workflow_paused",
390
- workflowId,
391
- timestamp: Date.now(),
392
- });
393
- }
394
- /**
395
- * Resume a paused workflow.
396
- *
397
- * @param workflowId - The workflow to resume
398
- * @param _message - Optional message (not used in sequential engine, no orchestrator)
399
- * @throws WorkflowNotFoundError if workflow doesn't exist
400
- * @throws WorkflowStateError if workflow is not paused
401
- */
402
- async resumeWorkflow(workflowId, _message) {
403
- const workflow = await this.getWorkflowOrThrow(workflowId);
404
- if (workflow.status !== "paused") {
405
- throw new WorkflowStateError(workflowId, workflow.status, "resume");
406
- }
407
- // Clear pause flag
408
- let state = this.activeWorkflows.get(workflowId);
409
- if (!state) {
410
- state = {
411
- workflowId,
412
- isPaused: false,
413
- isCancelled: false,
414
- };
415
- this.activeWorkflows.set(workflowId, state);
416
- }
417
- state.isPaused = false;
418
- // Update status
419
- this.updateWorkflow(workflowId, { status: "running" });
420
- // Emit event
421
- this.eventEmitter.emit({
422
- type: "workflow_resumed",
423
- workflowId,
424
- timestamp: Date.now(),
425
- });
426
- // Restart execution loop
427
- this.runExecutionLoop(workflowId).catch((error) => {
428
- console.error(`Workflow ${workflowId} execution loop failed:`, error);
429
- this.failWorkflow(workflowId, error.message).catch(console.error);
430
- });
431
- }
432
- /**
433
- * Cancel a workflow, stopping any running executions.
434
- *
435
- * @param workflowId - The workflow to cancel
436
- * @throws WorkflowNotFoundError if workflow doesn't exist
437
- * @throws WorkflowStateError if workflow is already completed/failed/cancelled
438
- */
439
- async cancelWorkflow(workflowId) {
440
- const workflow = await this.getWorkflowOrThrow(workflowId);
441
- // Check if already in terminal state
442
- if (["completed", "failed", "cancelled"].includes(workflow.status)) {
443
- throw new WorkflowStateError(workflowId, workflow.status, "cancel");
444
- }
445
- // Set cancel flag
446
- const state = this.activeWorkflows.get(workflowId);
447
- if (state) {
448
- state.isCancelled = true;
449
- // Cancel current execution if running
450
- if (state.currentExecutionId) {
451
- try {
452
- await this.executionService.cancelExecution(state.currentExecutionId);
453
- }
454
- catch (error) {
455
- console.warn(`Failed to cancel execution ${state.currentExecutionId}:`, error);
456
- }
457
- }
458
- }
459
- // Update status
460
- this.updateWorkflow(workflowId, {
461
- status: "cancelled",
462
- completedAt: new Date().toISOString(),
463
- });
464
- // Emit event
465
- this.eventEmitter.emit({
466
- type: "workflow_cancelled",
467
- workflowId,
468
- timestamp: Date.now(),
469
- });
470
- // Cleanup
471
- this.activeWorkflows.delete(workflowId);
472
- }
473
- // ===========================================================================
474
- // Step Control
475
- // ===========================================================================
476
- /**
477
- * Retry a failed step.
478
- *
479
- * Resets the step status to pending and unblocks dependent steps.
480
- * If the workflow was paused due to the failure, it will be resumed.
481
- *
482
- * @param workflowId - The workflow containing the step
483
- * @param stepId - The step to retry
484
- * @throws WorkflowNotFoundError if workflow doesn't exist
485
- * @throws WorkflowStepNotFoundError if step doesn't exist
486
- * @throws WorkflowStateError if step is not in failed state
487
- */
488
- async retryStep(workflowId, stepId) {
489
- const workflow = await this.getWorkflowOrThrow(workflowId);
490
- const step = workflow.steps.find((s) => s.id === stepId);
491
- if (!step) {
492
- throw new WorkflowStepNotFoundError(workflowId, stepId);
493
- }
494
- if (step.status !== "failed") {
495
- throw new WorkflowStateError(workflowId, `step ${stepId} is ${step.status}`, "retry");
496
- }
497
- // Reset step status
498
- this.updateStep(workflowId, stepId, {
499
- status: "pending",
500
- error: undefined,
501
- executionId: undefined,
502
- });
503
- // Unblock dependent steps
504
- await this.unblockDependentSteps(workflow, step);
505
- // Resume workflow if paused
506
- if (workflow.status === "paused") {
507
- await this.resumeWorkflow(workflowId);
508
- }
509
- }
510
- /**
511
- * Skip a step and handle its dependents.
512
- *
513
- * @param workflowId - The workflow containing the step
514
- * @param stepId - The step to skip
515
- * @param reason - Optional reason for skipping
516
- * @throws WorkflowNotFoundError if workflow doesn't exist
517
- * @throws WorkflowStepNotFoundError if step doesn't exist
518
- */
519
- async skipStep(workflowId, stepId, reason) {
520
- const workflow = await this.getWorkflowOrThrow(workflowId);
521
- const step = workflow.steps.find((s) => s.id === stepId);
522
- if (!step) {
523
- throw new WorkflowStepNotFoundError(workflowId, stepId);
524
- }
525
- const skipReason = reason || "Manually skipped";
526
- // Mark as skipped
527
- this.updateStep(workflowId, stepId, {
528
- status: "skipped",
529
- error: skipReason,
530
- });
531
- // Emit event
532
- this.eventEmitter.emit({
533
- type: "step_skipped",
534
- workflowId,
535
- step: { ...step, status: "skipped", error: skipReason },
536
- reason: skipReason,
537
- timestamp: Date.now(),
538
- });
539
- // Handle dependents based on config
540
- if (workflow.config.onFailure === "skip_dependents") {
541
- await this.skipDependentSteps(workflow, step, "Dependency skipped");
542
- }
543
- else {
544
- await this.blockDependentSteps(workflow, step);
545
- }
546
- // Resume workflow if paused
547
- if (workflow.status === "paused") {
548
- await this.resumeWorkflow(workflowId);
549
- }
550
- }
551
- // ===========================================================================
552
- // Execution Loop
553
- // ===========================================================================
554
- /**
555
- * Main execution loop for the workflow.
556
- * Runs steps in topological order, respecting dependencies.
557
- *
558
- * @param workflowId - The workflow to execute
559
- */
560
- async runExecutionLoop(workflowId) {
561
- while (true) {
562
- // Check workflow state
563
- const state = this.activeWorkflows.get(workflowId);
564
- if (!state || state.isPaused || state.isCancelled) {
565
- break;
566
- }
567
- // Get current workflow state
568
- const workflow = await this.getWorkflowOrThrow(workflowId);
569
- // Check if workflow is complete
570
- if (this.isWorkflowComplete(workflow)) {
571
- await this.completeWorkflow(workflowId);
572
- break;
573
- }
574
- // Get ready steps (dependencies satisfied)
575
- const readySteps = await this.getReadySteps(workflowId);
576
- if (readySteps.length === 0) {
577
- // No ready steps but workflow not complete - likely all remaining steps are blocked
578
- // This can happen if a step fails and dependents are blocked
579
- const hasBlockedOrFailed = workflow.steps.some((s) => s.status === "blocked" || s.status === "failed");
580
- if (hasBlockedOrFailed) {
581
- // Workflow is stuck, wait for user intervention (retry/skip)
582
- break;
583
- }
584
- // Should not happen - safeguard against infinite loop
585
- console.warn(`Workflow ${workflowId}: No ready steps but workflow not complete`);
586
- break;
587
- }
588
- // Execute steps based on parallelism config
589
- if (workflow.config.parallelism === "sequential") {
590
- // Execute one step at a time
591
- await this.executeStep(workflow, readySteps[0]);
592
- }
593
- else {
594
- // Execute multiple ready steps in parallel mode
595
- // Note: For Phase 4, this uses shared worktree with sequential commits
596
- // True parallel execution with separate branches is a future enhancement
597
- await this.executeParallel(workflow, readySteps);
598
- }
599
- }
600
- }
601
- /**
602
- * Execute multiple steps in parallel mode.
603
- *
604
- * For Phase 4, this uses a shared worktree with sequential commits.
605
- * Steps are executed one after another but all ready steps in the batch
606
- * are processed before re-checking dependencies.
607
- *
608
- * Future enhancement: True parallel execution with separate branches
609
- * and merge handling.
610
- *
611
- * @param workflow - The workflow containing the steps
612
- * @param steps - The ready steps to execute
613
- */
614
- async executeParallel(workflow, steps) {
615
- // Respect maxConcurrency limit
616
- const maxConcurrency = workflow.config.maxConcurrency ?? steps.length;
617
- const toExecute = steps.slice(0, maxConcurrency);
618
- // Track failed steps for batch failure handling
619
- const failedSteps = [];
620
- // Execute steps sequentially within the batch
621
- // (shared worktree requires sequential commits)
622
- for (const step of toExecute) {
623
- // Check for pause/cancel between steps
624
- const state = this.activeWorkflows.get(workflow.id);
625
- if (!state || state.isPaused || state.isCancelled) {
626
- break;
627
- }
628
- try {
629
- await this.executeStep(workflow, step);
630
- // Refresh workflow state to check if step succeeded
631
- const updatedWorkflow = await this.getWorkflowOrThrow(workflow.id);
632
- const updatedStep = updatedWorkflow.steps.find((s) => s.id === step.id);
633
- if (updatedStep?.status === "failed") {
634
- failedSteps.push(updatedStep);
635
- // For "stop" strategy, break immediately
636
- if (workflow.config.onFailure === "stop") {
637
- break;
638
- }
639
- // For "pause" strategy, the workflow is already paused by handleStepFailure
640
- if (updatedWorkflow.status === "paused") {
641
- break;
642
- }
643
- }
644
- }
645
- catch (error) {
646
- // Unexpected error during step execution
647
- console.error(`Error executing step ${step.id}:`, error);
648
- failedSteps.push(step);
649
- if (workflow.config.onFailure === "stop") {
650
- throw error;
651
- }
652
- }
653
- }
654
- }
655
- /**
656
- * Execute a single workflow step.
657
- *
658
- * If the step has a previous execution (from a pause), attempts to resume
659
- * the session. Otherwise creates a new execution.
660
- *
661
- * @param workflow - The workflow containing the step
662
- * @param step - The step to execute
663
- */
664
- async executeStep(workflow, step) {
665
- const state = this.activeWorkflows.get(workflow.id);
666
- // 1. Get issue details for prompt
667
- const issue = getIssue(this.db, step.issueId);
668
- if (!issue) {
669
- throw new Error(`Issue ${step.issueId} not found`);
670
- }
671
- // 2. Check if we should resume a previous execution
672
- let sessionIdToResume;
673
- let parentExecutionId;
674
- if (step.executionId) {
675
- const previousExecution = getExecution(this.db, step.executionId);
676
- if (previousExecution?.session_id) {
677
- sessionIdToResume = previousExecution.session_id;
678
- parentExecutionId = step.executionId; // Link to previous execution
679
- console.log(`[SequentialWorkflowEngine] Resuming step ${step.id} with session ${sessionIdToResume} (parent: ${parentExecutionId})`);
680
- }
681
- }
682
- // 3. Build execution config - always use workflow's worktree
683
- // Workflow-spawned executions run autonomously without terminal interaction
684
- const config = {
685
- mode: "worktree",
686
- baseBranch: workflow.baseBranch,
687
- createBaseBranch: workflow.config.createBaseBranch,
688
- reuseWorktreePath: workflow.worktreePath,
689
- // Workflow step executions run autonomously - must skip permission prompts
690
- dangerouslySkipPermissions: true,
691
- // Use workflow's orchestrator model for consistency if available
692
- model: workflow.config.orchestratorModel,
693
- // Resume previous session if available
694
- resume: sessionIdToResume,
695
- // Link to parent execution for chain tracking
696
- parentExecutionId,
697
- };
698
- // 4. Build prompt - use resume message if resuming, otherwise full prompt
699
- const prompt = sessionIdToResume
700
- ? "Workflow resumed. Continue where you left off."
701
- : this.buildPrompt(issue, workflow);
702
- // 5. Update step status to running
703
- this.updateStep(workflow.id, step.id, {
704
- status: "running",
705
- });
706
- // 6. Emit step started event
707
- this.eventEmitter.emit({
708
- type: "step_started",
709
- workflowId: workflow.id,
710
- step: { ...step, status: "running" },
711
- timestamp: Date.now(),
712
- });
713
- // 7. Create execution (will resume session if config.resume is set)
714
- const execution = await this.executionService.createExecution(step.issueId, config, prompt, workflow.config.defaultAgentType);
715
- // Track current execution
716
- if (state) {
717
- state.currentExecutionId = execution.id;
718
- }
719
- // Update step with new execution ID
720
- this.updateStep(workflow.id, step.id, {
721
- executionId: execution.id,
722
- });
723
- // 8. Wait for execution to complete
724
- const completedExecution = await this.waitForExecution(execution.id);
725
- // Clear current execution tracking
726
- if (state) {
727
- state.currentExecutionId = undefined;
728
- }
729
- // 9. Check if workflow was paused/cancelled during execution
730
- // If so, don't treat the cancelled execution as a failure
731
- if (state?.isPaused || state?.isCancelled) {
732
- console.log(`[SequentialWorkflowEngine] Step ${step.id} execution ended due to workflow ${state.isPaused ? "pause" : "cancel"}, not treating as failure`);
733
- return;
734
- }
735
- // 10. Handle result
736
- if (completedExecution.status === "completed") {
737
- await this.handleStepSuccess(workflow, step, completedExecution);
738
- }
739
- else {
740
- await this.handleStepFailure(workflow, step, completedExecution);
741
- }
742
- }
743
- /**
744
- * Wait for an execution to complete by polling.
745
- *
746
- * @param executionId - The execution to wait for
747
- * @returns The completed execution
748
- */
749
- async waitForExecution(executionId) {
750
- const pollIntervalMs = 1000; // 1 second
751
- const maxWaitMs = 60 * 60 * 1000; // 1 hour max
752
- const startTime = Date.now();
753
- while (true) {
754
- const execution = getExecution(this.db, executionId);
755
- if (!execution) {
756
- throw new Error(`Execution ${executionId} not found`);
757
- }
758
- // Check if execution is in a terminal state
759
- if (execution.status === "completed" ||
760
- execution.status === "failed" ||
761
- execution.status === "stopped" ||
762
- execution.status === "cancelled") {
763
- return execution;
764
- }
765
- // Check timeout
766
- if (Date.now() - startTime > maxWaitMs) {
767
- throw new Error(`Execution ${executionId} timed out after ${maxWaitMs}ms`);
768
- }
769
- // Wait before next poll
770
- await this.sleep(pollIntervalMs);
771
- }
772
- }
773
- /**
774
- * Sleep for a specified duration.
775
- */
776
- sleep(ms) {
777
- return new Promise((resolve) => setTimeout(resolve, ms));
778
- }
779
- /**
780
- * Build the prompt for executing an issue.
781
- *
782
- * @param issue - The issue to execute
783
- * @param workflow - The workflow context
784
- * @returns The prompt string
785
- */
786
- buildPrompt(issue, workflow) {
787
- // Build a basic prompt from issue details
788
- const parts = [];
789
- parts.push(`# Task: ${issue.title}`);
790
- parts.push("");
791
- if (issue.content) {
792
- parts.push("## Description");
793
- parts.push(issue.content);
794
- parts.push("");
795
- }
796
- // Add workflow context
797
- parts.push("## Workflow Context");
798
- parts.push(`This is step ${workflow.currentStepIndex + 1} of ${workflow.steps.length} in workflow "${workflow.title}".`);
799
- return parts.join("\n");
800
- }
801
- /**
802
- * Handle successful step completion.
803
- *
804
- * @param workflow - The workflow containing the step
805
- * @param step - The completed step
806
- * @param execution - The execution result
807
- */
808
- async handleStepSuccess(workflow, step, execution) {
809
- // Convert null to undefined for type compatibility
810
- let commitSha = execution.after_commit ?? undefined;
811
- // Close the issue BEFORE auto-commit so the status change is included
812
- // Use worktree path to keep changes isolated until explicit sync
813
- await this.closeIssue(step.issueId, workflow.worktreePath);
814
- // Auto-commit if configured and we have a worktree
815
- // This now includes the issue status change from closeIssue above
816
- if (workflow.config.autoCommitAfterStep && workflow.worktreePath) {
817
- const newCommitSha = await this.commitStepChanges(workflow, step);
818
- if (newCommitSha) {
819
- commitSha = newCommitSha;
820
- }
821
- }
822
- // Update step status
823
- this.updateStep(workflow.id, step.id, {
824
- status: "completed",
825
- commitSha,
826
- });
827
- // Emit event
828
- this.eventEmitter.emit({
829
- type: "step_completed",
830
- workflowId: workflow.id,
831
- step: { ...step, status: "completed", commitSha },
832
- executionId: execution.id,
833
- timestamp: Date.now(),
834
- });
835
- // Update workflow progress
836
- this.updateWorkflow(workflow.id, {
837
- currentStepIndex: workflow.currentStepIndex + 1,
838
- });
839
- }
840
- /**
841
- * Commit step changes to git.
842
- *
843
- * @param workflow - The workflow containing the step
844
- * @param step - The completed step
845
- * @returns The commit SHA if successful, null otherwise
846
- */
847
- async commitStepChanges(workflow, step) {
848
- if (!workflow.worktreePath) {
849
- return null;
850
- }
851
- const issue = getIssue(this.db, step.issueId);
852
- const message = this.buildCommitMessage(workflow, step, issue);
853
- try {
854
- // Check if there are changes to commit
855
- const { stdout: status } = await execAsync("git status --porcelain", {
856
- cwd: workflow.worktreePath,
857
- maxBuffer: 10 * 1024 * 1024,
858
- });
859
- if (!status.trim()) {
860
- // No changes to commit
861
- return null;
862
- }
863
- // Stage all changes and commit
864
- // Escape double quotes in message for shell safety
865
- const escapedMessage = message.replace(/"/g, '\\"');
866
- await execAsync(`git add -A && git commit -m "${escapedMessage}"`, {
867
- cwd: workflow.worktreePath,
868
- maxBuffer: 10 * 1024 * 1024,
869
- });
870
- // Get new commit SHA
871
- const { stdout: sha } = await execAsync("git rev-parse HEAD", {
872
- cwd: workflow.worktreePath,
873
- });
874
- return sha.trim();
875
- }
876
- catch (error) {
877
- console.error("Failed to commit step changes:", error);
878
- return null;
879
- }
880
- }
881
- /**
882
- * Build commit message for a step.
883
- *
884
- * @param workflow - The workflow
885
- * @param step - The completed step
886
- * @param issue - The issue (may be null)
887
- * @returns The commit message
888
- */
889
- buildCommitMessage(workflow, step, issue) {
890
- const issueTitle = issue?.title || "Unknown issue";
891
- const stepNum = step.index + 1;
892
- const totalSteps = workflow.steps.length;
893
- return `[Workflow ${stepNum}/${totalSteps}] ${step.issueId}: ${issueTitle}
894
-
895
- Workflow: ${workflow.title}
896
- Step: ${stepNum} of ${totalSteps}`;
897
- }
898
- /**
899
- * Update an issue directly in the worktree's JSONL file.
900
- * This keeps changes isolated to the worktree until explicitly synced.
901
- *
902
- * @param worktreePath - Path to the worktree
903
- * @param issueId - The issue ID to update
904
- * @param updates - Partial issue updates to apply
905
- */
906
- async updateIssueInWorktree(worktreePath, issueId, updates) {
907
- const issuesPath = path.join(worktreePath, ".sudocode", "issues.jsonl");
908
- // Read current issues from worktree JSONL
909
- const issues = readJSONLSync(issuesPath);
910
- // Find and update the issue
911
- const issueIndex = issues.findIndex((issue) => issue.id === issueId);
912
- if (issueIndex === -1) {
913
- console.warn(`[SequentialWorkflowEngine] Issue ${issueId} not found in worktree JSONL`);
914
- return;
915
- }
916
- // Apply updates
917
- const updatedIssue = {
918
- ...issues[issueIndex],
919
- ...updates,
920
- updated_at: new Date().toISOString(),
921
- };
922
- // Handle closed_at for status changes
923
- if (updates.status === "closed" && issues[issueIndex].status !== "closed") {
924
- updatedIssue.closed_at = new Date().toISOString();
925
- }
926
- else if (updates.status && updates.status !== "closed" && issues[issueIndex].status === "closed") {
927
- updatedIssue.closed_at = undefined;
928
- }
929
- issues[issueIndex] = updatedIssue;
930
- // Write back to JSONL
931
- await writeJSONL(issuesPath, issues);
932
- console.log(`[SequentialWorkflowEngine] Updated issue ${issueId} in worktree JSONL:`, updates);
933
- }
934
- /**
935
- * Close an issue after successful step completion.
936
- * If a worktree path is provided, updates the worktree's JSONL directly.
937
- * Otherwise, updates the main database.
938
- *
939
- * @param issueId - The issue ID to close
940
- * @param worktreePath - Optional path to the worktree for isolated updates
941
- */
942
- async closeIssue(issueId, worktreePath) {
943
- try {
944
- if (worktreePath) {
945
- // Update the worktree's JSONL file directly
946
- await this.updateIssueInWorktree(worktreePath, issueId, {
947
- status: "closed",
948
- });
949
- }
950
- else {
951
- // Fall back to main database
952
- updateIssue(this.db, issueId, { status: "closed" });
953
- }
954
- }
955
- catch (error) {
956
- // Non-fatal - log but don't fail
957
- console.warn(`Failed to close issue ${issueId}:`, error);
958
- }
959
- }
960
- /**
961
- * Handle step failure.
962
- *
963
- * @param workflow - The workflow containing the step
964
- * @param step - The failed step
965
- * @param execution - The execution result
966
- */
967
- async handleStepFailure(workflow, step, execution) {
968
- const errorMessage = execution.error_message || "Unknown error";
969
- // Update step status
970
- this.updateStep(workflow.id, step.id, {
971
- status: "failed",
972
- error: errorMessage,
973
- });
974
- // Emit event
975
- this.eventEmitter.emit({
976
- type: "step_failed",
977
- workflowId: workflow.id,
978
- step: { ...step, status: "failed", error: errorMessage },
979
- error: errorMessage,
980
- timestamp: Date.now(),
981
- });
982
- // Handle based on failure strategy
983
- switch (workflow.config.onFailure) {
984
- case "stop":
985
- await this.failWorkflow(workflow.id, `Step ${step.id} failed: ${errorMessage}`);
986
- break;
987
- case "pause":
988
- await this.pauseWorkflow(workflow.id);
989
- break;
990
- case "skip_dependents":
991
- await this.skipDependentSteps(workflow, step, `Dependency ${step.issueId} failed`);
992
- break;
993
- case "continue":
994
- // Mark dependents as blocked, continue with other steps
995
- await this.blockDependentSteps(workflow, step);
996
- break;
997
- }
998
- }
999
- // ===========================================================================
1000
- // Helper Methods
1001
- // ===========================================================================
1002
- /**
1003
- * Mark workflow as failed.
1004
- */
1005
- async failWorkflow(workflowId, error) {
1006
- this.updateWorkflow(workflowId, {
1007
- status: "failed",
1008
- completedAt: new Date().toISOString(),
1009
- });
1010
- this.eventEmitter.emit({
1011
- type: "workflow_failed",
1012
- workflowId,
1013
- error,
1014
- timestamp: Date.now(),
1015
- });
1016
- this.activeWorkflows.delete(workflowId);
1017
- }
1018
- /**
1019
- * Mark workflow as completed.
1020
- */
1021
- async completeWorkflow(workflowId) {
1022
- const workflow = await this.getWorkflowOrThrow(workflowId);
1023
- this.updateWorkflow(workflowId, {
1024
- status: "completed",
1025
- completedAt: new Date().toISOString(),
1026
- });
1027
- this.eventEmitter.emit({
1028
- type: "workflow_completed",
1029
- workflowId,
1030
- workflow: { ...workflow, status: "completed" },
1031
- timestamp: Date.now(),
1032
- });
1033
- this.activeWorkflows.delete(workflowId);
1034
- }
1035
- /**
1036
- * Check if workflow is complete (all steps done or skipped).
1037
- */
1038
- isWorkflowComplete(workflow) {
1039
- return workflow.steps.every((step) => step.status === "completed" ||
1040
- step.status === "skipped" ||
1041
- step.status === "blocked");
1042
- }
1043
- /**
1044
- * Find all steps that transitively depend on a given step.
1045
- */
1046
- findDependentSteps(workflow, stepId) {
1047
- const dependents = [];
1048
- const visited = new Set();
1049
- const queue = [stepId];
1050
- while (queue.length > 0) {
1051
- const current = queue.shift();
1052
- for (const step of workflow.steps) {
1053
- if (step.dependencies.includes(current) && !visited.has(step.id)) {
1054
- visited.add(step.id);
1055
- dependents.push(step);
1056
- queue.push(step.id);
1057
- }
1058
- }
1059
- }
1060
- return dependents;
1061
- }
1062
- /**
1063
- * Skip all steps that depend on a failed/skipped step.
1064
- */
1065
- async skipDependentSteps(workflow, failedStep, reason) {
1066
- const dependents = this.findDependentSteps(workflow, failedStep.id);
1067
- for (const step of dependents) {
1068
- if (step.status === "pending" || step.status === "ready") {
1069
- this.updateStep(workflow.id, step.id, {
1070
- status: "skipped",
1071
- error: reason,
1072
- });
1073
- this.eventEmitter.emit({
1074
- type: "step_skipped",
1075
- workflowId: workflow.id,
1076
- step: { ...step, status: "skipped", error: reason },
1077
- reason,
1078
- timestamp: Date.now(),
1079
- });
1080
- }
1081
- }
1082
- }
1083
- /**
1084
- * Block all steps that depend on a failed step.
1085
- */
1086
- async blockDependentSteps(workflow, failedStep) {
1087
- const dependents = this.findDependentSteps(workflow, failedStep.id);
1088
- for (const step of dependents) {
1089
- if (step.status === "pending" || step.status === "ready") {
1090
- this.updateStep(workflow.id, step.id, {
1091
- status: "blocked",
1092
- });
1093
- }
1094
- }
1095
- }
1096
- /**
1097
- * Unblock steps that were blocked due to a failed dependency.
1098
- */
1099
- async unblockDependentSteps(workflow, retriedStep) {
1100
- const dependents = this.findDependentSteps(workflow, retriedStep.id);
1101
- for (const step of dependents) {
1102
- if (step.status === "blocked") {
1103
- this.updateStep(workflow.id, step.id, {
1104
- status: "pending",
1105
- });
1106
- }
1107
- }
1108
- }
1109
- }
1110
- //# sourceMappingURL=sequential-engine.js.map