sudocode 1.0.0 → 1.1.1

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 (447) hide show
  1. package/README.md +222 -0
  2. package/build.js +75 -0
  3. package/node_modules/@sudocode-ai/cli/README.md +330 -0
  4. package/node_modules/@sudocode-ai/cli/dist/cli/feedback-commands.d.ts +53 -0
  5. package/node_modules/@sudocode-ai/cli/dist/cli/feedback-commands.d.ts.map +1 -0
  6. package/node_modules/@sudocode-ai/cli/dist/cli/feedback-commands.js +274 -0
  7. package/node_modules/@sudocode-ai/cli/dist/cli/feedback-commands.js.map +1 -0
  8. package/node_modules/@sudocode-ai/cli/dist/cli/init-commands.d.ts +22 -0
  9. package/node_modules/@sudocode-ai/cli/dist/cli/init-commands.d.ts.map +1 -0
  10. package/node_modules/@sudocode-ai/cli/dist/cli/init-commands.js +148 -0
  11. package/node_modules/@sudocode-ai/cli/dist/cli/init-commands.js.map +1 -0
  12. package/node_modules/@sudocode-ai/cli/dist/cli/issue-commands.d.ts +45 -0
  13. package/node_modules/@sudocode-ai/cli/dist/cli/issue-commands.d.ts.map +1 -0
  14. package/node_modules/@sudocode-ai/cli/dist/cli/issue-commands.js +310 -0
  15. package/node_modules/@sudocode-ai/cli/dist/cli/issue-commands.js.map +1 -0
  16. package/node_modules/@sudocode-ai/cli/dist/cli/query-commands.d.ts +18 -0
  17. package/node_modules/@sudocode-ai/cli/dist/cli/query-commands.d.ts.map +1 -0
  18. package/node_modules/@sudocode-ai/cli/dist/cli/query-commands.js +61 -0
  19. package/node_modules/@sudocode-ai/cli/dist/cli/query-commands.js.map +1 -0
  20. package/node_modules/@sudocode-ai/cli/dist/cli/reference-commands.d.ts +22 -0
  21. package/node_modules/@sudocode-ai/cli/dist/cli/reference-commands.d.ts.map +1 -0
  22. package/node_modules/@sudocode-ai/cli/dist/cli/reference-commands.js +136 -0
  23. package/node_modules/@sudocode-ai/cli/dist/cli/reference-commands.js.map +1 -0
  24. package/node_modules/@sudocode-ai/cli/dist/cli/relationship-commands.d.ts +14 -0
  25. package/node_modules/@sudocode-ai/cli/dist/cli/relationship-commands.d.ts.map +1 -0
  26. package/node_modules/@sudocode-ai/cli/dist/cli/relationship-commands.js +76 -0
  27. package/node_modules/@sudocode-ai/cli/dist/cli/relationship-commands.js.map +1 -0
  28. package/node_modules/@sudocode-ai/cli/dist/cli/server-commands.d.ts +17 -0
  29. package/node_modules/@sudocode-ai/cli/dist/cli/server-commands.d.ts.map +1 -0
  30. package/node_modules/@sudocode-ai/cli/dist/cli/server-commands.js +99 -0
  31. package/node_modules/@sudocode-ai/cli/dist/cli/server-commands.js.map +1 -0
  32. package/node_modules/@sudocode-ai/cli/dist/cli/spec-commands.d.ts +38 -0
  33. package/node_modules/@sudocode-ai/cli/dist/cli/spec-commands.d.ts.map +1 -0
  34. package/node_modules/@sudocode-ai/cli/dist/cli/spec-commands.js +321 -0
  35. package/node_modules/@sudocode-ai/cli/dist/cli/spec-commands.js.map +1 -0
  36. package/node_modules/@sudocode-ai/cli/dist/cli/status-commands.d.ts +17 -0
  37. package/node_modules/@sudocode-ai/cli/dist/cli/status-commands.d.ts.map +1 -0
  38. package/node_modules/@sudocode-ai/cli/dist/cli/status-commands.js +131 -0
  39. package/node_modules/@sudocode-ai/cli/dist/cli/status-commands.js.map +1 -0
  40. package/node_modules/@sudocode-ai/cli/dist/cli/sync-commands.d.ts +24 -0
  41. package/node_modules/@sudocode-ai/cli/dist/cli/sync-commands.d.ts.map +1 -0
  42. package/node_modules/@sudocode-ai/cli/dist/cli/sync-commands.js +416 -0
  43. package/node_modules/@sudocode-ai/cli/dist/cli/sync-commands.js.map +1 -0
  44. package/node_modules/@sudocode-ai/cli/dist/cli/update-commands.d.ts +12 -0
  45. package/node_modules/@sudocode-ai/cli/dist/cli/update-commands.d.ts.map +1 -0
  46. package/node_modules/@sudocode-ai/cli/dist/cli/update-commands.js +78 -0
  47. package/node_modules/@sudocode-ai/cli/dist/cli/update-commands.js.map +1 -0
  48. package/node_modules/@sudocode-ai/cli/dist/cli.d.ts +6 -0
  49. package/node_modules/@sudocode-ai/cli/dist/cli.d.ts.map +1 -0
  50. package/node_modules/@sudocode-ai/cli/dist/cli.js +426 -0
  51. package/node_modules/@sudocode-ai/cli/dist/cli.js.map +1 -0
  52. package/node_modules/@sudocode-ai/cli/dist/db.d.ts +21 -0
  53. package/node_modules/@sudocode-ai/cli/dist/db.d.ts.map +1 -0
  54. package/node_modules/@sudocode-ai/cli/dist/db.js +54 -0
  55. package/node_modules/@sudocode-ai/cli/dist/db.js.map +1 -0
  56. package/node_modules/@sudocode-ai/cli/dist/export.d.ts +79 -0
  57. package/node_modules/@sudocode-ai/cli/dist/export.d.ts.map +1 -0
  58. package/node_modules/@sudocode-ai/cli/dist/export.js +195 -0
  59. package/node_modules/@sudocode-ai/cli/dist/export.js.map +1 -0
  60. package/node_modules/@sudocode-ai/cli/dist/filename-generator.d.ts +30 -0
  61. package/node_modules/@sudocode-ai/cli/dist/filename-generator.d.ts.map +1 -0
  62. package/node_modules/@sudocode-ai/cli/dist/filename-generator.js +93 -0
  63. package/node_modules/@sudocode-ai/cli/dist/filename-generator.js.map +1 -0
  64. package/node_modules/@sudocode-ai/cli/dist/id-generator.d.ts +26 -0
  65. package/node_modules/@sudocode-ai/cli/dist/id-generator.d.ts.map +1 -0
  66. package/node_modules/@sudocode-ai/cli/dist/id-generator.js +123 -0
  67. package/node_modules/@sudocode-ai/cli/dist/id-generator.js.map +1 -0
  68. package/node_modules/@sudocode-ai/cli/dist/import.d.ts +118 -0
  69. package/node_modules/@sudocode-ai/cli/dist/import.d.ts.map +1 -0
  70. package/node_modules/@sudocode-ai/cli/dist/import.js +608 -0
  71. package/node_modules/@sudocode-ai/cli/dist/import.js.map +1 -0
  72. package/node_modules/@sudocode-ai/cli/dist/index.d.ts +13 -0
  73. package/node_modules/@sudocode-ai/cli/dist/index.d.ts.map +1 -0
  74. package/node_modules/@sudocode-ai/cli/dist/index.js +13 -0
  75. package/node_modules/@sudocode-ai/cli/dist/index.js.map +1 -0
  76. package/node_modules/@sudocode-ai/cli/dist/jsonl.d.ts +69 -0
  77. package/node_modules/@sudocode-ai/cli/dist/jsonl.d.ts.map +1 -0
  78. package/node_modules/@sudocode-ai/cli/dist/jsonl.js +333 -0
  79. package/node_modules/@sudocode-ai/cli/dist/jsonl.js.map +1 -0
  80. package/node_modules/@sudocode-ai/cli/dist/markdown.d.ts +146 -0
  81. package/node_modules/@sudocode-ai/cli/dist/markdown.d.ts.map +1 -0
  82. package/node_modules/@sudocode-ai/cli/dist/markdown.js +357 -0
  83. package/node_modules/@sudocode-ai/cli/dist/markdown.js.map +1 -0
  84. package/node_modules/@sudocode-ai/cli/dist/migrations.d.ts +23 -0
  85. package/node_modules/@sudocode-ai/cli/dist/migrations.d.ts.map +1 -0
  86. package/node_modules/@sudocode-ai/cli/dist/migrations.js +57 -0
  87. package/node_modules/@sudocode-ai/cli/dist/migrations.js.map +1 -0
  88. package/node_modules/@sudocode-ai/cli/dist/operations/events.d.ts +53 -0
  89. package/node_modules/@sudocode-ai/cli/dist/operations/events.d.ts.map +1 -0
  90. package/node_modules/@sudocode-ai/cli/dist/operations/events.js +108 -0
  91. package/node_modules/@sudocode-ai/cli/dist/operations/events.js.map +1 -0
  92. package/node_modules/@sudocode-ai/cli/dist/operations/feedback-anchors.d.ts +92 -0
  93. package/node_modules/@sudocode-ai/cli/dist/operations/feedback-anchors.d.ts.map +1 -0
  94. package/node_modules/@sudocode-ai/cli/dist/operations/feedback-anchors.js +444 -0
  95. package/node_modules/@sudocode-ai/cli/dist/operations/feedback-anchors.js.map +1 -0
  96. package/node_modules/@sudocode-ai/cli/dist/operations/feedback.d.ts +76 -0
  97. package/node_modules/@sudocode-ai/cli/dist/operations/feedback.d.ts.map +1 -0
  98. package/node_modules/@sudocode-ai/cli/dist/operations/feedback.js +234 -0
  99. package/node_modules/@sudocode-ai/cli/dist/operations/feedback.js.map +1 -0
  100. package/node_modules/@sudocode-ai/cli/dist/operations/index.d.ts +10 -0
  101. package/node_modules/@sudocode-ai/cli/dist/operations/index.d.ts.map +1 -0
  102. package/node_modules/@sudocode-ai/cli/dist/operations/index.js +10 -0
  103. package/node_modules/@sudocode-ai/cli/dist/operations/index.js.map +1 -0
  104. package/node_modules/@sudocode-ai/cli/dist/operations/issues.d.ts +82 -0
  105. package/node_modules/@sudocode-ai/cli/dist/operations/issues.d.ts.map +1 -0
  106. package/node_modules/@sudocode-ai/cli/dist/operations/issues.js +411 -0
  107. package/node_modules/@sudocode-ai/cli/dist/operations/issues.js.map +1 -0
  108. package/node_modules/@sudocode-ai/cli/dist/operations/references.d.ts +34 -0
  109. package/node_modules/@sudocode-ai/cli/dist/operations/references.d.ts.map +1 -0
  110. package/node_modules/@sudocode-ai/cli/dist/operations/references.js +117 -0
  111. package/node_modules/@sudocode-ai/cli/dist/operations/references.js.map +1 -0
  112. package/node_modules/@sudocode-ai/cli/dist/operations/relationships.d.ts +57 -0
  113. package/node_modules/@sudocode-ai/cli/dist/operations/relationships.d.ts.map +1 -0
  114. package/node_modules/@sudocode-ai/cli/dist/operations/relationships.js +236 -0
  115. package/node_modules/@sudocode-ai/cli/dist/operations/relationships.js.map +1 -0
  116. package/node_modules/@sudocode-ai/cli/dist/operations/specs.d.ts +64 -0
  117. package/node_modules/@sudocode-ai/cli/dist/operations/specs.d.ts.map +1 -0
  118. package/node_modules/@sudocode-ai/cli/dist/operations/specs.js +290 -0
  119. package/node_modules/@sudocode-ai/cli/dist/operations/specs.js.map +1 -0
  120. package/node_modules/@sudocode-ai/cli/dist/operations/tags.d.ts +42 -0
  121. package/node_modules/@sudocode-ai/cli/dist/operations/tags.d.ts.map +1 -0
  122. package/node_modules/@sudocode-ai/cli/dist/operations/tags.js +127 -0
  123. package/node_modules/@sudocode-ai/cli/dist/operations/tags.js.map +1 -0
  124. package/node_modules/@sudocode-ai/cli/dist/operations/transactions.d.ts +41 -0
  125. package/node_modules/@sudocode-ai/cli/dist/operations/transactions.d.ts.map +1 -0
  126. package/node_modules/@sudocode-ai/cli/dist/operations/transactions.js +111 -0
  127. package/node_modules/@sudocode-ai/cli/dist/operations/transactions.js.map +1 -0
  128. package/node_modules/@sudocode-ai/cli/dist/sync.d.ts +47 -0
  129. package/node_modules/@sudocode-ai/cli/dist/sync.d.ts.map +1 -0
  130. package/node_modules/@sudocode-ai/cli/dist/sync.js +442 -0
  131. package/node_modules/@sudocode-ai/cli/dist/sync.js.map +1 -0
  132. package/node_modules/@sudocode-ai/cli/dist/test-schema.d.ts +5 -0
  133. package/node_modules/@sudocode-ai/cli/dist/test-schema.d.ts.map +1 -0
  134. package/node_modules/@sudocode-ai/cli/dist/test-schema.js +46 -0
  135. package/node_modules/@sudocode-ai/cli/dist/test-schema.js.map +1 -0
  136. package/node_modules/@sudocode-ai/cli/dist/types.d.ts +7 -0
  137. package/node_modules/@sudocode-ai/cli/dist/types.d.ts.map +1 -0
  138. package/node_modules/@sudocode-ai/cli/dist/types.js +7 -0
  139. package/node_modules/@sudocode-ai/cli/dist/types.js.map +1 -0
  140. package/node_modules/@sudocode-ai/cli/dist/update-checker.d.ts +24 -0
  141. package/node_modules/@sudocode-ai/cli/dist/update-checker.d.ts.map +1 -0
  142. package/node_modules/@sudocode-ai/cli/dist/update-checker.js +151 -0
  143. package/node_modules/@sudocode-ai/cli/dist/update-checker.js.map +1 -0
  144. package/node_modules/@sudocode-ai/cli/dist/version.d.ts +12 -0
  145. package/node_modules/@sudocode-ai/cli/dist/version.d.ts.map +1 -0
  146. package/node_modules/@sudocode-ai/cli/dist/version.js +23 -0
  147. package/node_modules/@sudocode-ai/cli/dist/version.js.map +1 -0
  148. package/node_modules/@sudocode-ai/cli/dist/watcher.d.ts +63 -0
  149. package/node_modules/@sudocode-ai/cli/dist/watcher.d.ts.map +1 -0
  150. package/node_modules/@sudocode-ai/cli/dist/watcher.js +438 -0
  151. package/node_modules/@sudocode-ai/cli/dist/watcher.js.map +1 -0
  152. package/node_modules/@sudocode-ai/cli/package.json +65 -0
  153. package/node_modules/@sudocode-ai/local-server/README.md +19 -0
  154. package/node_modules/@sudocode-ai/local-server/dist/cli.d.ts +7 -0
  155. package/node_modules/@sudocode-ai/local-server/dist/cli.d.ts.map +1 -0
  156. package/node_modules/@sudocode-ai/local-server/dist/cli.js +7 -0
  157. package/node_modules/@sudocode-ai/local-server/dist/cli.js.map +1 -0
  158. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/engine.d.ts +103 -0
  159. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/engine.d.ts.map +1 -0
  160. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/engine.js +10 -0
  161. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/engine.js.map +1 -0
  162. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/simple-engine.d.ts +190 -0
  163. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/simple-engine.d.ts.map +1 -0
  164. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/simple-engine.js +611 -0
  165. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/simple-engine.js.map +1 -0
  166. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/types.d.ts +116 -0
  167. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/types.d.ts.map +1 -0
  168. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/types.js +10 -0
  169. package/node_modules/@sudocode-ai/local-server/dist/execution/engine/types.js.map +1 -0
  170. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-adapter.d.ts +176 -0
  171. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-adapter.d.ts.map +1 -0
  172. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-adapter.js +438 -0
  173. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-adapter.js.map +1 -0
  174. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-integration.d.ts +96 -0
  175. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-integration.d.ts.map +1 -0
  176. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-integration.js +96 -0
  177. package/node_modules/@sudocode-ai/local-server/dist/execution/output/ag-ui-integration.js.map +1 -0
  178. package/node_modules/@sudocode-ai/local-server/dist/execution/output/claude-code-output-processor.d.ts +321 -0
  179. package/node_modules/@sudocode-ai/local-server/dist/execution/output/claude-code-output-processor.d.ts.map +1 -0
  180. package/node_modules/@sudocode-ai/local-server/dist/execution/output/claude-code-output-processor.js +769 -0
  181. package/node_modules/@sudocode-ai/local-server/dist/execution/output/claude-code-output-processor.js.map +1 -0
  182. package/node_modules/@sudocode-ai/local-server/dist/execution/output/index.d.ts +18 -0
  183. package/node_modules/@sudocode-ai/local-server/dist/execution/output/index.d.ts.map +1 -0
  184. package/node_modules/@sudocode-ai/local-server/dist/execution/output/index.js +15 -0
  185. package/node_modules/@sudocode-ai/local-server/dist/execution/output/index.js.map +1 -0
  186. package/node_modules/@sudocode-ai/local-server/dist/execution/output/types.d.ts +421 -0
  187. package/node_modules/@sudocode-ai/local-server/dist/execution/output/types.d.ts.map +1 -0
  188. package/node_modules/@sudocode-ai/local-server/dist/execution/output/types.js +22 -0
  189. package/node_modules/@sudocode-ai/local-server/dist/execution/output/types.js.map +1 -0
  190. package/node_modules/@sudocode-ai/local-server/dist/execution/process/builders/claude.d.ts +86 -0
  191. package/node_modules/@sudocode-ai/local-server/dist/execution/process/builders/claude.d.ts.map +1 -0
  192. package/node_modules/@sudocode-ai/local-server/dist/execution/process/builders/claude.js +59 -0
  193. package/node_modules/@sudocode-ai/local-server/dist/execution/process/builders/claude.js.map +1 -0
  194. package/node_modules/@sudocode-ai/local-server/dist/execution/process/index.d.ts +15 -0
  195. package/node_modules/@sudocode-ai/local-server/dist/execution/process/index.d.ts.map +1 -0
  196. package/node_modules/@sudocode-ai/local-server/dist/execution/process/index.js +15 -0
  197. package/node_modules/@sudocode-ai/local-server/dist/execution/process/index.js.map +1 -0
  198. package/node_modules/@sudocode-ai/local-server/dist/execution/process/manager.d.ts +133 -0
  199. package/node_modules/@sudocode-ai/local-server/dist/execution/process/manager.d.ts.map +1 -0
  200. package/node_modules/@sudocode-ai/local-server/dist/execution/process/manager.js +10 -0
  201. package/node_modules/@sudocode-ai/local-server/dist/execution/process/manager.js.map +1 -0
  202. package/node_modules/@sudocode-ai/local-server/dist/execution/process/simple-manager.d.ts +102 -0
  203. package/node_modules/@sudocode-ai/local-server/dist/execution/process/simple-manager.d.ts.map +1 -0
  204. package/node_modules/@sudocode-ai/local-server/dist/execution/process/simple-manager.js +336 -0
  205. package/node_modules/@sudocode-ai/local-server/dist/execution/process/simple-manager.js.map +1 -0
  206. package/node_modules/@sudocode-ai/local-server/dist/execution/process/types.d.ts +105 -0
  207. package/node_modules/@sudocode-ai/local-server/dist/execution/process/types.d.ts.map +1 -0
  208. package/node_modules/@sudocode-ai/local-server/dist/execution/process/types.js +10 -0
  209. package/node_modules/@sudocode-ai/local-server/dist/execution/process/types.js.map +1 -0
  210. package/node_modules/@sudocode-ai/local-server/dist/execution/process/utils.d.ts +53 -0
  211. package/node_modules/@sudocode-ai/local-server/dist/execution/process/utils.d.ts.map +1 -0
  212. package/node_modules/@sudocode-ai/local-server/dist/execution/process/utils.js +97 -0
  213. package/node_modules/@sudocode-ai/local-server/dist/execution/process/utils.js.map +1 -0
  214. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/circuit-breaker.d.ts +170 -0
  215. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/circuit-breaker.d.ts.map +1 -0
  216. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/circuit-breaker.js +291 -0
  217. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/circuit-breaker.js.map +1 -0
  218. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/executor.d.ts +109 -0
  219. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/executor.d.ts.map +1 -0
  220. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/executor.js +10 -0
  221. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/executor.js.map +1 -0
  222. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/index.d.ts +14 -0
  223. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/index.d.ts.map +1 -0
  224. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/index.js +15 -0
  225. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/index.js.map +1 -0
  226. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/resilient-executor.d.ts +86 -0
  227. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/resilient-executor.d.ts.map +1 -0
  228. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/resilient-executor.js +261 -0
  229. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/resilient-executor.js.map +1 -0
  230. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/retry.d.ts +161 -0
  231. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/retry.d.ts.map +1 -0
  232. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/retry.js +234 -0
  233. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/retry.js.map +1 -0
  234. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/types.d.ts +226 -0
  235. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/types.d.ts.map +1 -0
  236. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/types.js +30 -0
  237. package/node_modules/@sudocode-ai/local-server/dist/execution/resilience/types.js.map +1 -0
  238. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/event-buffer.d.ts +119 -0
  239. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/event-buffer.d.ts.map +1 -0
  240. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/event-buffer.js +208 -0
  241. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/event-buffer.js.map +1 -0
  242. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/index.d.ts +10 -0
  243. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/index.d.ts.map +1 -0
  244. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/index.js +10 -0
  245. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/index.js.map +1 -0
  246. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/sse-transport.d.ts +146 -0
  247. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/sse-transport.d.ts.map +1 -0
  248. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/sse-transport.js +282 -0
  249. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/sse-transport.js.map +1 -0
  250. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/transport-manager.d.ts +176 -0
  251. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/transport-manager.d.ts.map +1 -0
  252. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/transport-manager.js +231 -0
  253. package/node_modules/@sudocode-ai/local-server/dist/execution/transport/transport-manager.js.map +1 -0
  254. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/index.d.ts +13 -0
  255. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/index.d.ts.map +1 -0
  256. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/index.js +13 -0
  257. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/index.js.map +1 -0
  258. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/linear-orchestrator.d.ts +216 -0
  259. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/linear-orchestrator.d.ts.map +1 -0
  260. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/linear-orchestrator.js +683 -0
  261. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/linear-orchestrator.js.map +1 -0
  262. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/memory-storage.d.ts +54 -0
  263. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/memory-storage.d.ts.map +1 -0
  264. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/memory-storage.js +68 -0
  265. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/memory-storage.js.map +1 -0
  266. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/orchestrator.d.ts +158 -0
  267. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/orchestrator.d.ts.map +1 -0
  268. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/orchestrator.js +9 -0
  269. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/orchestrator.js.map +1 -0
  270. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/types.d.ts +172 -0
  271. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/types.d.ts.map +1 -0
  272. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/types.js +9 -0
  273. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/types.js.map +1 -0
  274. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/utils.d.ts +89 -0
  275. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/utils.d.ts.map +1 -0
  276. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/utils.js +152 -0
  277. package/node_modules/@sudocode-ai/local-server/dist/execution/workflow/utils.js.map +1 -0
  278. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/config.d.ts +74 -0
  279. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/config.d.ts.map +1 -0
  280. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/config.js +280 -0
  281. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/config.js.map +1 -0
  282. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-cli.d.ts +151 -0
  283. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-cli.d.ts.map +1 -0
  284. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-cli.js +189 -0
  285. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/git-cli.js.map +1 -0
  286. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/index.d.ts +16 -0
  287. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/index.d.ts.map +1 -0
  288. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/index.js +15 -0
  289. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/index.js.map +1 -0
  290. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/manager.d.ts +184 -0
  291. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/manager.d.ts.map +1 -0
  292. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/manager.js +452 -0
  293. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/manager.js.map +1 -0
  294. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/types.d.ts +90 -0
  295. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/types.d.ts.map +1 -0
  296. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/types.js +42 -0
  297. package/node_modules/@sudocode-ai/local-server/dist/execution/worktree/types.js.map +1 -0
  298. package/node_modules/@sudocode-ai/local-server/dist/index.d.ts +8 -0
  299. package/node_modules/@sudocode-ai/local-server/dist/index.d.ts.map +1 -0
  300. package/node_modules/@sudocode-ai/local-server/dist/index.js +356 -0
  301. package/node_modules/@sudocode-ai/local-server/dist/index.js.map +1 -0
  302. package/node_modules/@sudocode-ai/local-server/dist/public/assets/index-C4SmlXoo.js +568 -0
  303. package/node_modules/@sudocode-ai/local-server/dist/public/assets/index-C4SmlXoo.js.map +1 -0
  304. package/node_modules/@sudocode-ai/local-server/dist/public/assets/index-DE59j7ti.css +1 -0
  305. package/node_modules/@sudocode-ai/local-server/dist/public/assets/react-vendor-LX0UoTxg.js +60 -0
  306. package/node_modules/@sudocode-ai/local-server/dist/public/assets/react-vendor-LX0UoTxg.js.map +1 -0
  307. package/node_modules/@sudocode-ai/local-server/dist/public/assets/ui-vendor-_cxVHaqZ.js +54 -0
  308. package/node_modules/@sudocode-ai/local-server/dist/public/assets/ui-vendor-_cxVHaqZ.js.map +1 -0
  309. package/node_modules/@sudocode-ai/local-server/dist/public/favicon.ico +0 -0
  310. package/node_modules/@sudocode-ai/local-server/dist/public/index.html +16 -0
  311. package/node_modules/@sudocode-ai/local-server/dist/public/logo.png +0 -0
  312. package/node_modules/@sudocode-ai/local-server/dist/routes/executions-stream.d.ts +24 -0
  313. package/node_modules/@sudocode-ai/local-server/dist/routes/executions-stream.d.ts.map +1 -0
  314. package/node_modules/@sudocode-ai/local-server/dist/routes/executions-stream.js +55 -0
  315. package/node_modules/@sudocode-ai/local-server/dist/routes/executions-stream.js.map +1 -0
  316. package/node_modules/@sudocode-ai/local-server/dist/routes/executions.d.ts +19 -0
  317. package/node_modules/@sudocode-ai/local-server/dist/routes/executions.d.ts.map +1 -0
  318. package/node_modules/@sudocode-ai/local-server/dist/routes/executions.js +267 -0
  319. package/node_modules/@sudocode-ai/local-server/dist/routes/executions.js.map +1 -0
  320. package/node_modules/@sudocode-ai/local-server/dist/routes/feedback.d.ts +7 -0
  321. package/node_modules/@sudocode-ai/local-server/dist/routes/feedback.d.ts.map +1 -0
  322. package/node_modules/@sudocode-ai/local-server/dist/routes/feedback.js +329 -0
  323. package/node_modules/@sudocode-ai/local-server/dist/routes/feedback.js.map +1 -0
  324. package/node_modules/@sudocode-ai/local-server/dist/routes/issues.d.ts +7 -0
  325. package/node_modules/@sudocode-ai/local-server/dist/routes/issues.d.ts.map +1 -0
  326. package/node_modules/@sudocode-ai/local-server/dist/routes/issues.js +280 -0
  327. package/node_modules/@sudocode-ai/local-server/dist/routes/issues.js.map +1 -0
  328. package/node_modules/@sudocode-ai/local-server/dist/routes/relationships.d.ts +7 -0
  329. package/node_modules/@sudocode-ai/local-server/dist/routes/relationships.d.ts.map +1 -0
  330. package/node_modules/@sudocode-ai/local-server/dist/routes/relationships.js +308 -0
  331. package/node_modules/@sudocode-ai/local-server/dist/routes/relationships.js.map +1 -0
  332. package/node_modules/@sudocode-ai/local-server/dist/routes/specs.d.ts +7 -0
  333. package/node_modules/@sudocode-ai/local-server/dist/routes/specs.d.ts.map +1 -0
  334. package/node_modules/@sudocode-ai/local-server/dist/routes/specs.js +270 -0
  335. package/node_modules/@sudocode-ai/local-server/dist/routes/specs.js.map +1 -0
  336. package/node_modules/@sudocode-ai/local-server/dist/services/db.d.ts +33 -0
  337. package/node_modules/@sudocode-ai/local-server/dist/services/db.d.ts.map +1 -0
  338. package/node_modules/@sudocode-ai/local-server/dist/services/db.js +85 -0
  339. package/node_modules/@sudocode-ai/local-server/dist/services/db.js.map +1 -0
  340. package/node_modules/@sudocode-ai/local-server/dist/services/execution-lifecycle.d.ts +108 -0
  341. package/node_modules/@sudocode-ai/local-server/dist/services/execution-lifecycle.d.ts.map +1 -0
  342. package/node_modules/@sudocode-ai/local-server/dist/services/execution-lifecycle.js +286 -0
  343. package/node_modules/@sudocode-ai/local-server/dist/services/execution-lifecycle.js.map +1 -0
  344. package/node_modules/@sudocode-ai/local-server/dist/services/execution-service.d.ts +185 -0
  345. package/node_modules/@sudocode-ai/local-server/dist/services/execution-service.d.ts.map +1 -0
  346. package/node_modules/@sudocode-ai/local-server/dist/services/execution-service.js +676 -0
  347. package/node_modules/@sudocode-ai/local-server/dist/services/execution-service.js.map +1 -0
  348. package/node_modules/@sudocode-ai/local-server/dist/services/executions.d.ts +59 -0
  349. package/node_modules/@sudocode-ai/local-server/dist/services/executions.d.ts.map +1 -0
  350. package/node_modules/@sudocode-ai/local-server/dist/services/executions.js +164 -0
  351. package/node_modules/@sudocode-ai/local-server/dist/services/executions.js.map +1 -0
  352. package/node_modules/@sudocode-ai/local-server/dist/services/export.d.ts +24 -0
  353. package/node_modules/@sudocode-ai/local-server/dist/services/export.d.ts.map +1 -0
  354. package/node_modules/@sudocode-ai/local-server/dist/services/export.js +106 -0
  355. package/node_modules/@sudocode-ai/local-server/dist/services/export.js.map +1 -0
  356. package/node_modules/@sudocode-ai/local-server/dist/services/feedback.d.ts +40 -0
  357. package/node_modules/@sudocode-ai/local-server/dist/services/feedback.d.ts.map +1 -0
  358. package/node_modules/@sudocode-ai/local-server/dist/services/feedback.js +54 -0
  359. package/node_modules/@sudocode-ai/local-server/dist/services/feedback.js.map +1 -0
  360. package/node_modules/@sudocode-ai/local-server/dist/services/issues.d.ts +27 -0
  361. package/node_modules/@sudocode-ai/local-server/dist/services/issues.d.ts.map +1 -0
  362. package/node_modules/@sudocode-ai/local-server/dist/services/issues.js +35 -0
  363. package/node_modules/@sudocode-ai/local-server/dist/services/issues.js.map +1 -0
  364. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-template-engine.d.ts +108 -0
  365. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-template-engine.d.ts.map +1 -0
  366. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-template-engine.js +212 -0
  367. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-template-engine.js.map +1 -0
  368. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-templates.d.ts +97 -0
  369. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-templates.d.ts.map +1 -0
  370. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-templates.js +236 -0
  371. package/node_modules/@sudocode-ai/local-server/dist/services/prompt-templates.js.map +1 -0
  372. package/node_modules/@sudocode-ai/local-server/dist/services/relationships.d.ts +35 -0
  373. package/node_modules/@sudocode-ai/local-server/dist/services/relationships.d.ts.map +1 -0
  374. package/node_modules/@sudocode-ai/local-server/dist/services/relationships.js +42 -0
  375. package/node_modules/@sudocode-ai/local-server/dist/services/relationships.js.map +1 -0
  376. package/node_modules/@sudocode-ai/local-server/dist/services/specs.d.ts +27 -0
  377. package/node_modules/@sudocode-ai/local-server/dist/services/specs.d.ts.map +1 -0
  378. package/node_modules/@sudocode-ai/local-server/dist/services/specs.js +35 -0
  379. package/node_modules/@sudocode-ai/local-server/dist/services/specs.js.map +1 -0
  380. package/node_modules/@sudocode-ai/local-server/dist/services/watcher.d.ts +50 -0
  381. package/node_modules/@sudocode-ai/local-server/dist/services/watcher.d.ts.map +1 -0
  382. package/node_modules/@sudocode-ai/local-server/dist/services/watcher.js +69 -0
  383. package/node_modules/@sudocode-ai/local-server/dist/services/watcher.js.map +1 -0
  384. package/node_modules/@sudocode-ai/local-server/dist/services/websocket.d.ts +127 -0
  385. package/node_modules/@sudocode-ai/local-server/dist/services/websocket.d.ts.map +1 -0
  386. package/node_modules/@sudocode-ai/local-server/dist/services/websocket.js +389 -0
  387. package/node_modules/@sudocode-ai/local-server/dist/services/websocket.js.map +1 -0
  388. package/node_modules/@sudocode-ai/local-server/dist/utils/sudocode-dir.d.ts +6 -0
  389. package/node_modules/@sudocode-ai/local-server/dist/utils/sudocode-dir.d.ts.map +1 -0
  390. package/node_modules/@sudocode-ai/local-server/dist/utils/sudocode-dir.js +9 -0
  391. package/node_modules/@sudocode-ai/local-server/dist/utils/sudocode-dir.js.map +1 -0
  392. package/node_modules/@sudocode-ai/local-server/package.json +72 -0
  393. package/node_modules/@sudocode-ai/mcp/LICENSE +21 -0
  394. package/node_modules/@sudocode-ai/mcp/README.md +226 -0
  395. package/node_modules/@sudocode-ai/mcp/dist/client.d.ts +33 -0
  396. package/node_modules/@sudocode-ai/mcp/dist/client.d.ts.map +1 -0
  397. package/node_modules/@sudocode-ai/mcp/dist/client.js +159 -0
  398. package/node_modules/@sudocode-ai/mcp/dist/client.js.map +1 -0
  399. package/node_modules/@sudocode-ai/mcp/dist/index.d.ts +6 -0
  400. package/node_modules/@sudocode-ai/mcp/dist/index.d.ts.map +1 -0
  401. package/node_modules/@sudocode-ai/mcp/dist/index.js +64 -0
  402. package/node_modules/@sudocode-ai/mcp/dist/index.js.map +1 -0
  403. package/node_modules/@sudocode-ai/mcp/dist/server.d.ts +26 -0
  404. package/node_modules/@sudocode-ai/mcp/dist/server.d.ts.map +1 -0
  405. package/node_modules/@sudocode-ai/mcp/dist/server.js +575 -0
  406. package/node_modules/@sudocode-ai/mcp/dist/server.js.map +1 -0
  407. package/node_modules/@sudocode-ai/mcp/dist/tools/analytics.d.ts +41 -0
  408. package/node_modules/@sudocode-ai/mcp/dist/tools/analytics.d.ts.map +1 -0
  409. package/node_modules/@sudocode-ai/mcp/dist/tools/analytics.js +21 -0
  410. package/node_modules/@sudocode-ai/mcp/dist/tools/analytics.js.map +1 -0
  411. package/node_modules/@sudocode-ai/mcp/dist/tools/feedback.d.ts +19 -0
  412. package/node_modules/@sudocode-ai/mcp/dist/tools/feedback.d.ts.map +1 -0
  413. package/node_modules/@sudocode-ai/mcp/dist/tools/feedback.js +24 -0
  414. package/node_modules/@sudocode-ai/mcp/dist/tools/feedback.js.map +1 -0
  415. package/node_modules/@sudocode-ai/mcp/dist/tools/init.d.ts +17 -0
  416. package/node_modules/@sudocode-ai/mcp/dist/tools/init.d.ts.map +1 -0
  417. package/node_modules/@sudocode-ai/mcp/dist/tools/init.js +15 -0
  418. package/node_modules/@sudocode-ai/mcp/dist/tools/init.js.map +1 -0
  419. package/node_modules/@sudocode-ai/mcp/dist/tools/issues.d.ts +44 -0
  420. package/node_modules/@sudocode-ai/mcp/dist/tools/issues.d.ts.map +1 -0
  421. package/node_modules/@sudocode-ai/mcp/dist/tools/issues.js +106 -0
  422. package/node_modules/@sudocode-ai/mcp/dist/tools/issues.js.map +1 -0
  423. package/node_modules/@sudocode-ai/mcp/dist/tools/references.d.ts +21 -0
  424. package/node_modules/@sudocode-ai/mcp/dist/tools/references.d.ts.map +1 -0
  425. package/node_modules/@sudocode-ai/mcp/dist/tools/references.js +49 -0
  426. package/node_modules/@sudocode-ai/mcp/dist/tools/references.js.map +1 -0
  427. package/node_modules/@sudocode-ai/mcp/dist/tools/relationships.d.ts +15 -0
  428. package/node_modules/@sudocode-ai/mcp/dist/tools/relationships.d.ts.map +1 -0
  429. package/node_modules/@sudocode-ai/mcp/dist/tools/relationships.js +18 -0
  430. package/node_modules/@sudocode-ai/mcp/dist/tools/relationships.js.map +1 -0
  431. package/node_modules/@sudocode-ai/mcp/dist/tools/specs.d.ts +35 -0
  432. package/node_modules/@sudocode-ai/mcp/dist/tools/specs.d.ts.map +1 -0
  433. package/node_modules/@sudocode-ai/mcp/dist/tools/specs.js +85 -0
  434. package/node_modules/@sudocode-ai/mcp/dist/tools/specs.js.map +1 -0
  435. package/node_modules/@sudocode-ai/mcp/dist/types.d.ts +35 -0
  436. package/node_modules/@sudocode-ai/mcp/dist/types.d.ts.map +1 -0
  437. package/node_modules/@sudocode-ai/mcp/dist/types.js +21 -0
  438. package/node_modules/@sudocode-ai/mcp/dist/types.js.map +1 -0
  439. package/node_modules/@sudocode-ai/mcp/package.json +67 -0
  440. package/node_modules/@sudocode-ai/types/README.md +7 -0
  441. package/node_modules/@sudocode-ai/types/dist/schema.d.ts +45 -0
  442. package/node_modules/@sudocode-ai/types/dist/schema.d.ts.map +1 -0
  443. package/node_modules/@sudocode-ai/types/dist/schema.js +338 -0
  444. package/node_modules/@sudocode-ai/types/dist/schema.js.map +1 -0
  445. package/node_modules/@sudocode-ai/types/package.json +46 -0
  446. package/package.json +51 -12
  447. package/index.js +0 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../../src/execution/process/builders/claude.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAwEH;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAwB;IACxD,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,4CAA4C;IAC5C,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvB,CAAC;IAED,2BAA2B;IAC3B,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IACpD,CAAC;IAED,gEAAgE;IAChE,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,YAAY,KAAK,aAAa,CAAC,EAAE,CAAC;QAC9E,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzB,CAAC;IAED,0CAA0C;IAC1C,IAAI,MAAM,CAAC,0BAA0B,EAAE,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAC9C,CAAC;IAED,0CAA0C;IAC1C,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;IACxD,CAAC;IAED,OAAO;QACL,cAAc,EAAE,MAAM,CAAC,UAAU,IAAI,QAAQ;QAC7C,IAAI;QACJ,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;KACpB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Process Layer - Public API
3
+ *
4
+ * Barrel export for the Process Layer (Layer 1) of the execution system.
5
+ * Exports all public types, interfaces, and implementations.
6
+ *
7
+ * @module execution/process
8
+ */
9
+ export type { ProcessStatus, ProcessConfig, ManagedProcess, OutputHandler, ErrorHandler, ProcessMetrics, } from './types.js';
10
+ export type { IProcessManager } from './manager.js';
11
+ export { SimpleProcessManager } from './simple-manager.js';
12
+ export { generateId, formatDuration, isValidSignal, formatProcessError, } from './utils.js';
13
+ export { buildClaudeConfig } from './builders/claude.js';
14
+ export type { ClaudeCodeConfig } from './builders/claude.js';
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/execution/process/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,YAAY,EACV,aAAa,EACb,aAAa,EACb,cAAc,EACd,aAAa,EACb,YAAY,EACZ,cAAc,GACf,MAAM,YAAY,CAAC;AAGpB,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D,OAAO,EACL,UAAU,EACV,cAAc,EACd,aAAa,EACb,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Process Layer - Public API
3
+ *
4
+ * Barrel export for the Process Layer (Layer 1) of the execution system.
5
+ * Exports all public types, interfaces, and implementations.
6
+ *
7
+ * @module execution/process
8
+ */
9
+ // Implementations
10
+ export { SimpleProcessManager } from './simple-manager.js';
11
+ // Utilities
12
+ export { generateId, formatDuration, isValidSignal, formatProcessError, } from './utils.js';
13
+ // Configuration Builders
14
+ export { buildClaudeConfig } from './builders/claude.js';
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/execution/process/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAeH,kBAAkB;AAClB,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE3D,YAAY;AACZ,OAAO,EACL,UAAU,EACV,cAAc,EACd,aAAa,EACb,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAEpB,yBAAyB;AACzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,133 @@
1
+ /**
2
+ * Process Manager Interface
3
+ *
4
+ * Defines the contract for all process managers in the Process Layer.
5
+ * Process managers handle spawning, monitoring, and terminating Claude Code processes.
6
+ *
7
+ * @module execution/process/manager
8
+ */
9
+ import type { ManagedProcess, ProcessConfig, ProcessMetrics, OutputHandler, ErrorHandler } from './types.js';
10
+ /**
11
+ * Core abstraction for managing Claude Code CLI processes
12
+ *
13
+ * This interface defines the contract that all process manager implementations
14
+ * must follow. It provides methods for:
15
+ * - Process lifecycle management (acquire, release, terminate)
16
+ * - Process communication (I/O)
17
+ * - Monitoring and metrics
18
+ *
19
+ * @example
20
+ * ```typescript
21
+ * const manager: IProcessManager = new SimpleProcessManager();
22
+ * const process = await manager.acquireProcess({
23
+ * claudePath: 'claude',
24
+ * workDir: '/path/to/project',
25
+ * args: {
26
+ * print: true,
27
+ * outputFormat: 'stream-json',
28
+ * dangerouslySkipPermissions: true,
29
+ * },
30
+ * });
31
+ * ```
32
+ */
33
+ export interface IProcessManager {
34
+ /**
35
+ * Acquire a new Claude Code process
36
+ *
37
+ * Spawns a new process with the given configuration and returns a managed
38
+ * process handle. The process will be tracked until it exits or is terminated.
39
+ *
40
+ * @param config - Configuration for the process
41
+ * @returns Promise resolving to the managed process
42
+ * @throws Error if process fails to spawn
43
+ */
44
+ acquireProcess(config: ProcessConfig): Promise<ManagedProcess>;
45
+ /**
46
+ * Release a process (terminate it gracefully)
47
+ *
48
+ * Sends SIGTERM to the process and waits for it to exit. If it doesn't exit
49
+ * within a grace period, SIGKILL is sent.
50
+ *
51
+ * @param processId - ID of the process to release
52
+ * @returns Promise that resolves when process is terminated
53
+ */
54
+ releaseProcess(processId: string): Promise<void>;
55
+ /**
56
+ * Terminate a process with a specific signal
57
+ *
58
+ * Sends the specified signal to the process. Uses graceful shutdown with
59
+ * SIGTERM by default, followed by SIGKILL if needed.
60
+ *
61
+ * @param processId - ID of the process to terminate
62
+ * @param signal - Signal to send (defaults to SIGTERM)
63
+ * @returns Promise that resolves when process is terminated
64
+ */
65
+ terminateProcess(processId: string, signal?: NodeJS.Signals): Promise<void>;
66
+ /**
67
+ * Send input to a process's stdin
68
+ *
69
+ * @param processId - ID of the process
70
+ * @param input - Input string to send
71
+ * @returns Promise that resolves when input is written
72
+ * @throws Error if process is not found
73
+ */
74
+ sendInput(processId: string, input: string): Promise<void>;
75
+ /**
76
+ * Close stdin stream for a process
77
+ *
78
+ * Signals EOF to the process. This is useful for programs like Claude Code
79
+ * in --print mode that wait for stdin to close before processing input.
80
+ *
81
+ * @param processId - ID of the process
82
+ * @throws Error if process is not found
83
+ */
84
+ closeInput(processId: string): void;
85
+ /**
86
+ * Register a handler for process output (stdout/stderr)
87
+ *
88
+ * The handler will be called whenever the process produces output.
89
+ * Multiple handlers can be registered for the same process.
90
+ *
91
+ * @param processId - ID of the process
92
+ * @param handler - Handler function to call on output
93
+ */
94
+ onOutput(processId: string, handler: OutputHandler): void;
95
+ /**
96
+ * Register a handler for process errors
97
+ *
98
+ * The handler will be called when the process encounters an error.
99
+ *
100
+ * @param processId - ID of the process
101
+ * @param handler - Handler function to call on error
102
+ */
103
+ onError(processId: string, handler: ErrorHandler): void;
104
+ /**
105
+ * Get a managed process by ID
106
+ *
107
+ * @param processId - ID of the process
108
+ * @returns The managed process or null if not found
109
+ */
110
+ getProcess(processId: string): ManagedProcess | null;
111
+ /**
112
+ * Get all currently active processes
113
+ *
114
+ * @returns Array of all active managed processes
115
+ */
116
+ getActiveProcesses(): ManagedProcess[];
117
+ /**
118
+ * Get aggregate metrics for all processes
119
+ *
120
+ * @returns Process metrics summary
121
+ */
122
+ getMetrics(): ProcessMetrics;
123
+ /**
124
+ * Shutdown the process manager
125
+ *
126
+ * Terminates all active processes and cleans up resources.
127
+ * This should be called before the application exits.
128
+ *
129
+ * @returns Promise that resolves when all processes are terminated
130
+ */
131
+ shutdown(): Promise<void>;
132
+ }
133
+ //# sourceMappingURL=manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/execution/process/manager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,cAAc,EACd,aAAa,EACb,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,eAAe;IAK9B;;;;;;;;;OASG;IACH,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAE/D;;;;;;;;OAQG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjD;;;;;;;;;OASG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAM5E;;;;;;;OAOG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3D;;;;;;;;OAQG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpC;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAE1D;;;;;;;OAOG;IACH,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAMxD;;;;;OAKG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAAC;IAErD;;;;OAIG;IACH,kBAAkB,IAAI,cAAc,EAAE,CAAC;IAEvC;;;;OAIG;IACH,UAAU,IAAI,cAAc,CAAC;IAM7B;;;;;;;OAOG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Process Manager Interface
3
+ *
4
+ * Defines the contract for all process managers in the Process Layer.
5
+ * Process managers handle spawning, monitoring, and terminating Claude Code processes.
6
+ *
7
+ * @module execution/process/manager
8
+ */
9
+ export {};
10
+ //# sourceMappingURL=manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/execution/process/manager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
@@ -0,0 +1,102 @@
1
+ /**
2
+ * Simple Process Manager Implementation
3
+ *
4
+ * A straightforward implementation of IProcessManager that spawns a fresh
5
+ * process for each task. This is the "simple first" approach that will later
6
+ * be upgraded to support process pooling.
7
+ *
8
+ * Supports any CLI tool/agent (Claude Code, Codex, Gemini CLI, etc.)
9
+ *
10
+ * Key features:
11
+ * - One process per task (no pooling)
12
+ * - Event-based I/O streaming
13
+ * - Graceful termination (SIGTERM → SIGKILL)
14
+ * - Automatic cleanup
15
+ * - Metrics tracking
16
+ * - Agent-agnostic design
17
+ *
18
+ * @module execution/process/simple-manager
19
+ */
20
+ import type { ManagedProcess, ProcessConfig, ProcessMetrics, OutputHandler, ErrorHandler } from "./types.js";
21
+ import type { IProcessManager } from "./manager.js";
22
+ /**
23
+ * Simple process manager that spawns one process per task
24
+ *
25
+ * This implementation follows the "simple first" principle - it provides
26
+ * a production-ready process manager without the complexity of pooling.
27
+ *
28
+ * Works with any CLI tool/agent by accepting executable path and args.
29
+ *
30
+ * @example
31
+ * ```typescript
32
+ * // Claude Code example
33
+ * const manager = new SimpleProcessManager({
34
+ * executablePath: 'claude',
35
+ * args: ['--print', '--output-format', 'stream-json'],
36
+ * });
37
+ *
38
+ * const process = await manager.acquireProcess({
39
+ * executablePath: 'claude',
40
+ * args: ['--print', '--output-format', 'stream-json'],
41
+ * workDir: '/path/to/project',
42
+ * timeout: 300000,
43
+ * });
44
+ *
45
+ * // Codex example
46
+ * const codexProcess = await manager.acquireProcess({
47
+ * executablePath: 'codex',
48
+ * args: ['--mode', 'agent', '--json'],
49
+ * workDir: '/path/to/project',
50
+ * });
51
+ * ```
52
+ */
53
+ export declare class SimpleProcessManager implements IProcessManager {
54
+ private readonly _defaultConfig;
55
+ private _activeProcesses;
56
+ private _cleanupTimers;
57
+ private _metrics;
58
+ /**
59
+ * Create a new SimpleProcessManager
60
+ *
61
+ * @param defaultConfig - Default configuration to merge with per-process config
62
+ */
63
+ constructor(_defaultConfig?: Partial<ProcessConfig>);
64
+ acquireProcess(config: ProcessConfig): Promise<ManagedProcess>;
65
+ /**
66
+ * Spawn a process with the given configuration
67
+ *
68
+ * @param config - Process configuration
69
+ * @returns ChildProcess instance
70
+ */
71
+ private spawnProcess;
72
+ /**
73
+ * Set up event handlers for a managed process
74
+ *
75
+ * Handles lifecycle events:
76
+ * - exit: Process terminated normally or abnormally
77
+ * - error: Process encountered an error
78
+ * - stdout/stderr data: Track activity for idle detection
79
+ *
80
+ * @param managedProcess - The managed process to set up handlers for
81
+ * @param config - Process configuration (for timeout)
82
+ */
83
+ private setupProcessHandlers;
84
+ releaseProcess(processId: string): Promise<void>;
85
+ terminateProcess(processId: string, signal?: NodeJS.Signals): Promise<void>;
86
+ sendInput(processId: string, input: string): Promise<void>;
87
+ /**
88
+ * Close stdin stream for a process
89
+ *
90
+ * Signals EOF to the process, useful for programs that wait for stdin to close.
91
+ *
92
+ * @param processId - ID of the process
93
+ */
94
+ closeInput(processId: string): void;
95
+ onOutput(processId: string, handler: OutputHandler): void;
96
+ onError(processId: string, handler: ErrorHandler): void;
97
+ getProcess(processId: string): ManagedProcess | null;
98
+ getActiveProcesses(): ManagedProcess[];
99
+ getMetrics(): ProcessMetrics;
100
+ shutdown(): Promise<void>;
101
+ }
102
+ //# sourceMappingURL=simple-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple-manager.d.ts","sourceRoot":"","sources":["../../../src/execution/process/simple-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,cAAc,EACd,aAAa,EACb,YAAY,EACb,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,oBAAqB,YAAW,eAAe;IAgB9C,OAAO,CAAC,QAAQ,CAAC,cAAc;IAf3C,OAAO,CAAC,gBAAgB,CAAqC;IAC7D,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,QAAQ,CAMd;IAEF;;;;OAIG;gBAC0B,cAAc,GAAE,OAAO,CAAC,aAAa,CAAM;IAElE,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAsDpE;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAapB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,oBAAoB;IA8FtB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,MAAM,CAAC,OAAmB,GACjC,OAAO,CAAC,IAAI,CAAC;IAkDV,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAchE;;;;;;OAMG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IASnC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI;IAezD,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAWvD,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI;IAIpD,kBAAkB,IAAI,cAAc,EAAE;IAItC,UAAU,IAAI,cAAc;IAKtB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAahC"}
@@ -0,0 +1,336 @@
1
+ /**
2
+ * Simple Process Manager Implementation
3
+ *
4
+ * A straightforward implementation of IProcessManager that spawns a fresh
5
+ * process for each task. This is the "simple first" approach that will later
6
+ * be upgraded to support process pooling.
7
+ *
8
+ * Supports any CLI tool/agent (Claude Code, Codex, Gemini CLI, etc.)
9
+ *
10
+ * Key features:
11
+ * - One process per task (no pooling)
12
+ * - Event-based I/O streaming
13
+ * - Graceful termination (SIGTERM → SIGKILL)
14
+ * - Automatic cleanup
15
+ * - Metrics tracking
16
+ * - Agent-agnostic design
17
+ *
18
+ * @module execution/process/simple-manager
19
+ */
20
+ import { spawn } from "child_process";
21
+ import { generateId } from "./utils.js";
22
+ /**
23
+ * Simple process manager that spawns one process per task
24
+ *
25
+ * This implementation follows the "simple first" principle - it provides
26
+ * a production-ready process manager without the complexity of pooling.
27
+ *
28
+ * Works with any CLI tool/agent by accepting executable path and args.
29
+ *
30
+ * @example
31
+ * ```typescript
32
+ * // Claude Code example
33
+ * const manager = new SimpleProcessManager({
34
+ * executablePath: 'claude',
35
+ * args: ['--print', '--output-format', 'stream-json'],
36
+ * });
37
+ *
38
+ * const process = await manager.acquireProcess({
39
+ * executablePath: 'claude',
40
+ * args: ['--print', '--output-format', 'stream-json'],
41
+ * workDir: '/path/to/project',
42
+ * timeout: 300000,
43
+ * });
44
+ *
45
+ * // Codex example
46
+ * const codexProcess = await manager.acquireProcess({
47
+ * executablePath: 'codex',
48
+ * args: ['--mode', 'agent', '--json'],
49
+ * workDir: '/path/to/project',
50
+ * });
51
+ * ```
52
+ */
53
+ export class SimpleProcessManager {
54
+ _defaultConfig;
55
+ _activeProcesses = new Map();
56
+ _cleanupTimers = new Map();
57
+ _metrics = {
58
+ totalSpawned: 0,
59
+ currentlyActive: 0,
60
+ totalCompleted: 0,
61
+ totalFailed: 0,
62
+ averageDuration: 0,
63
+ };
64
+ /**
65
+ * Create a new SimpleProcessManager
66
+ *
67
+ * @param defaultConfig - Default configuration to merge with per-process config
68
+ */
69
+ constructor(_defaultConfig = {}) {
70
+ this._defaultConfig = _defaultConfig;
71
+ }
72
+ async acquireProcess(config) {
73
+ // Merge with default config
74
+ const mergedConfig = { ...this._defaultConfig, ...config };
75
+ // Spawn the process
76
+ const childProcess = this.spawnProcess(mergedConfig);
77
+ // Validate process spawned successfully
78
+ if (!childProcess.pid) {
79
+ // Suppress error event to prevent uncaughtException
80
+ childProcess.once("error", () => {
81
+ // Error is expected when process fails to spawn
82
+ });
83
+ throw new Error("Failed to spawn process: no PID assigned");
84
+ }
85
+ // Generate unique ID for this process
86
+ const id = generateId("process");
87
+ // Create managed process object
88
+ const managedProcess = {
89
+ id,
90
+ pid: childProcess.pid,
91
+ status: "busy",
92
+ spawnedAt: new Date(),
93
+ lastActivity: new Date(),
94
+ exitCode: null,
95
+ signal: null,
96
+ process: childProcess,
97
+ streams: {
98
+ stdout: childProcess.stdout,
99
+ stderr: childProcess.stderr,
100
+ stdin: childProcess.stdin,
101
+ },
102
+ metrics: {
103
+ totalDuration: 0,
104
+ tasksCompleted: 0,
105
+ successRate: 1.0,
106
+ },
107
+ };
108
+ // Track the process
109
+ this._activeProcesses.set(id, managedProcess);
110
+ // Update metrics
111
+ this._metrics.totalSpawned++;
112
+ this._metrics.currentlyActive++;
113
+ // Set up event handlers for lifecycle management
114
+ this.setupProcessHandlers(managedProcess, mergedConfig);
115
+ return managedProcess;
116
+ }
117
+ /**
118
+ * Spawn a process with the given configuration
119
+ *
120
+ * @param config - Process configuration
121
+ * @returns ChildProcess instance
122
+ */
123
+ spawnProcess(config) {
124
+ const childProcess = spawn(config.executablePath, config.args, {
125
+ cwd: config.workDir,
126
+ stdio: ["pipe", "pipe", "pipe"],
127
+ env: {
128
+ ...process.env,
129
+ ...config.env,
130
+ },
131
+ });
132
+ return childProcess;
133
+ }
134
+ /**
135
+ * Set up event handlers for a managed process
136
+ *
137
+ * Handles lifecycle events:
138
+ * - exit: Process terminated normally or abnormally
139
+ * - error: Process encountered an error
140
+ * - stdout/stderr data: Track activity for idle detection
141
+ *
142
+ * @param managedProcess - The managed process to set up handlers for
143
+ * @param config - Process configuration (for timeout)
144
+ */
145
+ setupProcessHandlers(managedProcess, config) {
146
+ const { process: childProcess, id } = managedProcess;
147
+ let timeoutHandle = null;
148
+ // Set up timeout if configured
149
+ if (config.timeout) {
150
+ timeoutHandle = setTimeout(() => {
151
+ // Terminate process on timeout using graceful termination
152
+ if (managedProcess.status === "busy") {
153
+ this.terminateProcess(id).catch(() => {
154
+ // Ignore errors during timeout termination
155
+ });
156
+ }
157
+ }, config.timeout);
158
+ }
159
+ // Exit event handler
160
+ childProcess.once("exit", (code, signal) => {
161
+ // Clear timeout
162
+ if (timeoutHandle) {
163
+ clearTimeout(timeoutHandle);
164
+ }
165
+ // Update process state
166
+ managedProcess.exitCode = code;
167
+ managedProcess.signal = signal;
168
+ managedProcess.status = code === 0 ? "completed" : "crashed";
169
+ // Calculate duration
170
+ const duration = Date.now() - managedProcess.spawnedAt.getTime();
171
+ managedProcess.metrics.totalDuration = duration;
172
+ // Update global metrics
173
+ this._metrics.currentlyActive--;
174
+ if (code === 0) {
175
+ this._metrics.totalCompleted++;
176
+ }
177
+ else {
178
+ this._metrics.totalFailed++;
179
+ }
180
+ // Calculate average duration
181
+ const totalProcesses = this._metrics.totalCompleted + this._metrics.totalFailed;
182
+ if (totalProcesses > 0) {
183
+ const currentTotal = this._metrics.averageDuration * (totalProcesses - 1);
184
+ this._metrics.averageDuration =
185
+ (currentTotal + duration) / totalProcesses;
186
+ }
187
+ // Clean up stdio streams to prevent event loop hang
188
+ managedProcess.streams.stdin.destroy();
189
+ managedProcess.streams.stdout.destroy();
190
+ managedProcess.streams.stderr.destroy();
191
+ // Schedule cleanup (delete from activeProcesses after 5s delay)
192
+ const cleanupTimer = setTimeout(() => {
193
+ this._activeProcesses.delete(id);
194
+ this._cleanupTimers.delete(id);
195
+ }, 5000);
196
+ this._cleanupTimers.set(id, cleanupTimer);
197
+ });
198
+ // Error event handler
199
+ childProcess.once("error", (error) => {
200
+ void error; // Error is logged but not used here
201
+ // Clear timeout
202
+ if (timeoutHandle) {
203
+ clearTimeout(timeoutHandle);
204
+ }
205
+ // Update process state
206
+ managedProcess.status = "crashed";
207
+ // Update global metrics
208
+ this._metrics.currentlyActive--;
209
+ this._metrics.totalFailed++;
210
+ });
211
+ // stdout data handler - track activity
212
+ childProcess.stdout?.on("data", () => {
213
+ managedProcess.lastActivity = new Date();
214
+ });
215
+ // stderr data handler - track activity
216
+ childProcess.stderr?.on("data", () => {
217
+ managedProcess.lastActivity = new Date();
218
+ });
219
+ }
220
+ async releaseProcess(processId) {
221
+ await this.terminateProcess(processId);
222
+ }
223
+ async terminateProcess(processId, signal = "SIGTERM") {
224
+ const managed = this._activeProcesses.get(processId);
225
+ if (!managed) {
226
+ return; // Process not found, nothing to terminate
227
+ }
228
+ // If already terminated, do nothing (idempotent)
229
+ if (managed.exitCode !== null) {
230
+ return;
231
+ }
232
+ // Update status to terminating
233
+ managed.status = "terminating";
234
+ // Try graceful shutdown first
235
+ managed.process.kill(signal);
236
+ // Wait for process to exit (with 2 second timeout)
237
+ const exitPromise = new Promise((resolve) => {
238
+ if (managed.exitCode !== null) {
239
+ resolve();
240
+ }
241
+ else {
242
+ managed.process.once("exit", () => resolve());
243
+ }
244
+ });
245
+ const timeoutPromise = new Promise((resolve) => {
246
+ setTimeout(resolve, 2000);
247
+ });
248
+ await Promise.race([exitPromise, timeoutPromise]);
249
+ // Force kill if still running
250
+ if (managed.exitCode === null) {
251
+ managed.process.kill("SIGKILL");
252
+ // Wait for SIGKILL to take effect (with timeout)
253
+ await Promise.race([
254
+ new Promise((resolve) => {
255
+ if (managed.exitCode !== null) {
256
+ resolve();
257
+ }
258
+ else {
259
+ managed.process.once("exit", () => resolve());
260
+ }
261
+ }),
262
+ new Promise((resolve) => setTimeout(resolve, 1000)),
263
+ ]);
264
+ }
265
+ }
266
+ async sendInput(processId, input) {
267
+ const managed = this._activeProcesses.get(processId);
268
+ if (!managed) {
269
+ throw new Error(`Process ${processId} not found`);
270
+ }
271
+ return new Promise((resolve, reject) => {
272
+ managed.streams.stdin.write(input, (error) => {
273
+ if (error)
274
+ reject(error);
275
+ else
276
+ resolve();
277
+ });
278
+ });
279
+ }
280
+ /**
281
+ * Close stdin stream for a process
282
+ *
283
+ * Signals EOF to the process, useful for programs that wait for stdin to close.
284
+ *
285
+ * @param processId - ID of the process
286
+ */
287
+ closeInput(processId) {
288
+ const managed = this._activeProcesses.get(processId);
289
+ if (!managed) {
290
+ throw new Error(`Process ${processId} not found`);
291
+ }
292
+ managed.streams.stdin.end();
293
+ }
294
+ onOutput(processId, handler) {
295
+ const managed = this._activeProcesses.get(processId);
296
+ if (!managed) {
297
+ throw new Error(`Process ${processId} not found`);
298
+ }
299
+ managed.streams.stdout.on("data", (data) => {
300
+ handler(data, "stdout");
301
+ });
302
+ managed.streams.stderr.on("data", (data) => {
303
+ handler(data, "stderr");
304
+ });
305
+ }
306
+ onError(processId, handler) {
307
+ const managed = this._activeProcesses.get(processId);
308
+ if (!managed) {
309
+ throw new Error(`Process ${processId} not found`);
310
+ }
311
+ managed.process.on("error", (error) => {
312
+ handler(error);
313
+ });
314
+ }
315
+ getProcess(processId) {
316
+ return this._activeProcesses.get(processId) || null;
317
+ }
318
+ getActiveProcesses() {
319
+ return Array.from(this._activeProcesses.values());
320
+ }
321
+ getMetrics() {
322
+ // Return a copy to prevent external mutation
323
+ return { ...this._metrics };
324
+ }
325
+ async shutdown() {
326
+ // Terminate all active processes first
327
+ const processIds = Array.from(this._activeProcesses.keys());
328
+ await Promise.all(processIds.map((id) => this.terminateProcess(id, "SIGTERM")));
329
+ // Clear all pending cleanup timers (including ones scheduled by exit handlers)
330
+ for (const [id, timer] of this._cleanupTimers.entries()) {
331
+ clearTimeout(timer);
332
+ this._cleanupTimers.delete(id);
333
+ }
334
+ }
335
+ }
336
+ //# sourceMappingURL=simple-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple-manager.js","sourceRoot":"","sources":["../../../src/execution/process/simple-manager.ts"],"names":[],"mappings":"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"}