@planweave-ai/runtime 0.1.0

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 (374) hide show
  1. package/LICENSE +21 -0
  2. package/dist/autoRun/codexExecutor.d.ts +20 -0
  3. package/dist/autoRun/codexExecutor.d.ts.map +1 -0
  4. package/dist/autoRun/codexExecutor.js +196 -0
  5. package/dist/autoRun/codexExecutor.js.map +1 -0
  6. package/dist/autoRun/codexProtocol.d.ts +5 -0
  7. package/dist/autoRun/codexProtocol.d.ts.map +1 -0
  8. package/dist/autoRun/codexProtocol.js +72 -0
  9. package/dist/autoRun/codexProtocol.js.map +1 -0
  10. package/dist/autoRun/contract.d.ts +46 -0
  11. package/dist/autoRun/contract.d.ts.map +1 -0
  12. package/dist/autoRun/contract.js +18 -0
  13. package/dist/autoRun/contract.js.map +1 -0
  14. package/dist/autoRun/executorShared.d.ts +57 -0
  15. package/dist/autoRun/executorShared.d.ts.map +1 -0
  16. package/dist/autoRun/executorShared.js +179 -0
  17. package/dist/autoRun/executorShared.js.map +1 -0
  18. package/dist/autoRun/executors.d.ts +43 -0
  19. package/dist/autoRun/executors.d.ts.map +1 -0
  20. package/dist/autoRun/executors.js +201 -0
  21. package/dist/autoRun/executors.js.map +1 -0
  22. package/dist/autoRun/localReviewExecutor.d.ts +20 -0
  23. package/dist/autoRun/localReviewExecutor.d.ts.map +1 -0
  24. package/dist/autoRun/localReviewExecutor.js +133 -0
  25. package/dist/autoRun/localReviewExecutor.js.map +1 -0
  26. package/dist/autoRun/opencodeExecutor.d.ts +20 -0
  27. package/dist/autoRun/opencodeExecutor.d.ts.map +1 -0
  28. package/dist/autoRun/opencodeExecutor.js +211 -0
  29. package/dist/autoRun/opencodeExecutor.js.map +1 -0
  30. package/dist/autoRun/opencodeInvocation.d.ts +9 -0
  31. package/dist/autoRun/opencodeInvocation.d.ts.map +1 -0
  32. package/dist/autoRun/opencodeInvocation.js +53 -0
  33. package/dist/autoRun/opencodeInvocation.js.map +1 -0
  34. package/dist/autoRun/opencodeOutput.d.ts +11 -0
  35. package/dist/autoRun/opencodeOutput.d.ts.map +1 -0
  36. package/dist/autoRun/opencodeOutput.js +190 -0
  37. package/dist/autoRun/opencodeOutput.js.map +1 -0
  38. package/dist/autoRun/reviewResultContract.d.ts +8 -0
  39. package/dist/autoRun/reviewResultContract.d.ts.map +1 -0
  40. package/dist/autoRun/reviewResultContract.js +30 -0
  41. package/dist/autoRun/reviewResultContract.js.map +1 -0
  42. package/dist/autoRun/streamingExecutor.d.ts +21 -0
  43. package/dist/autoRun/streamingExecutor.d.ts.map +1 -0
  44. package/dist/autoRun/streamingExecutor.js +40 -0
  45. package/dist/autoRun/streamingExecutor.js.map +1 -0
  46. package/dist/autoRun/tmuxExecutor.d.ts +36 -0
  47. package/dist/autoRun/tmuxExecutor.d.ts.map +1 -0
  48. package/dist/autoRun/tmuxExecutor.js +203 -0
  49. package/dist/autoRun/tmuxExecutor.js.map +1 -0
  50. package/dist/autoRun/tmuxRunnerScript.d.ts +2 -0
  51. package/dist/autoRun/tmuxRunnerScript.d.ts.map +1 -0
  52. package/dist/autoRun/tmuxRunnerScript.js +72 -0
  53. package/dist/autoRun/tmuxRunnerScript.js.map +1 -0
  54. package/dist/desktop/canvasApi.d.ts +18 -0
  55. package/dist/desktop/canvasApi.d.ts.map +1 -0
  56. package/dist/desktop/canvasApi.js +214 -0
  57. package/dist/desktop/canvasApi.js.map +1 -0
  58. package/dist/desktop/canvasDiagnostics.d.ts +3 -0
  59. package/dist/desktop/canvasDiagnostics.d.ts.map +1 -0
  60. package/dist/desktop/canvasDiagnostics.js +21 -0
  61. package/dist/desktop/canvasDiagnostics.js.map +1 -0
  62. package/dist/desktop/canvasRegistry.d.ts +17 -0
  63. package/dist/desktop/canvasRegistry.d.ts.map +1 -0
  64. package/dist/desktop/canvasRegistry.js +51 -0
  65. package/dist/desktop/canvasRegistry.js.map +1 -0
  66. package/dist/desktop/fileSyncApi.d.ts +8 -0
  67. package/dist/desktop/fileSyncApi.d.ts.map +1 -0
  68. package/dist/desktop/fileSyncApi.js +186 -0
  69. package/dist/desktop/fileSyncApi.js.map +1 -0
  70. package/dist/desktop/graph/draftModel.d.ts +8 -0
  71. package/dist/desktop/graph/draftModel.d.ts.map +1 -0
  72. package/dist/desktop/graph/draftModel.js +75 -0
  73. package/dist/desktop/graph/draftModel.js.map +1 -0
  74. package/dist/desktop/graph/editModel.d.ts +16 -0
  75. package/dist/desktop/graph/editModel.d.ts.map +1 -0
  76. package/dist/desktop/graph/editModel.js +273 -0
  77. package/dist/desktop/graph/editModel.js.map +1 -0
  78. package/dist/desktop/graph/graphHelpers.d.ts +17 -0
  79. package/dist/desktop/graph/graphHelpers.d.ts.map +1 -0
  80. package/dist/desktop/graph/graphHelpers.js +95 -0
  81. package/dist/desktop/graph/graphHelpers.js.map +1 -0
  82. package/dist/desktop/graph/projectCanvasAggregation.d.ts +10 -0
  83. package/dist/desktop/graph/projectCanvasAggregation.d.ts.map +1 -0
  84. package/dist/desktop/graph/projectCanvasAggregation.js +19 -0
  85. package/dist/desktop/graph/projectCanvasAggregation.js.map +1 -0
  86. package/dist/desktop/graph/readModel.d.ts +7 -0
  87. package/dist/desktop/graph/readModel.d.ts.map +1 -0
  88. package/dist/desktop/graph/readModel.js +154 -0
  89. package/dist/desktop/graph/readModel.js.map +1 -0
  90. package/dist/desktop/graph/searchModel.d.ts +3 -0
  91. package/dist/desktop/graph/searchModel.d.ts.map +1 -0
  92. package/dist/desktop/graph/searchModel.js +128 -0
  93. package/dist/desktop/graph/searchModel.js.map +1 -0
  94. package/dist/desktop/graph/statisticsModel.d.ts +3 -0
  95. package/dist/desktop/graph/statisticsModel.d.ts.map +1 -0
  96. package/dist/desktop/graph/statisticsModel.js +121 -0
  97. package/dist/desktop/graph/statisticsModel.js.map +1 -0
  98. package/dist/desktop/graph/todoModel.d.ts +4 -0
  99. package/dist/desktop/graph/todoModel.d.ts.map +1 -0
  100. package/dist/desktop/graph/todoModel.js +88 -0
  101. package/dist/desktop/graph/todoModel.js.map +1 -0
  102. package/dist/desktop/graphApi.d.ts +7 -0
  103. package/dist/desktop/graphApi.d.ts.map +1 -0
  104. package/dist/desktop/graphApi.js +7 -0
  105. package/dist/desktop/graphApi.js.map +1 -0
  106. package/dist/desktop/index.d.ts +12 -0
  107. package/dist/desktop/index.d.ts.map +1 -0
  108. package/dist/desktop/index.js +10 -0
  109. package/dist/desktop/index.js.map +1 -0
  110. package/dist/desktop/layoutApi.d.ts +10 -0
  111. package/dist/desktop/layoutApi.d.ts.map +1 -0
  112. package/dist/desktop/layoutApi.js +191 -0
  113. package/dist/desktop/layoutApi.js.map +1 -0
  114. package/dist/desktop/projectApi.d.ts +10 -0
  115. package/dist/desktop/projectApi.d.ts.map +1 -0
  116. package/dist/desktop/projectApi.js +99 -0
  117. package/dist/desktop/projectApi.js.map +1 -0
  118. package/dist/desktop/recordsApi.d.ts +7 -0
  119. package/dist/desktop/recordsApi.d.ts.map +1 -0
  120. package/dist/desktop/recordsApi.js +188 -0
  121. package/dist/desktop/recordsApi.js.map +1 -0
  122. package/dist/desktop/reviewPipelineApi.d.ts +5 -0
  123. package/dist/desktop/reviewPipelineApi.d.ts.map +1 -0
  124. package/dist/desktop/reviewPipelineApi.js +189 -0
  125. package/dist/desktop/reviewPipelineApi.js.map +1 -0
  126. package/dist/desktop/runApi.d.ts +8 -0
  127. package/dist/desktop/runApi.d.ts.map +1 -0
  128. package/dist/desktop/runApi.js +180 -0
  129. package/dist/desktop/runApi.js.map +1 -0
  130. package/dist/desktop/runRecordOutput.d.ts +14 -0
  131. package/dist/desktop/runRecordOutput.d.ts.map +1 -0
  132. package/dist/desktop/runRecordOutput.js +31 -0
  133. package/dist/desktop/runRecordOutput.js.map +1 -0
  134. package/dist/desktop/runStateStore.d.ts +9 -0
  135. package/dist/desktop/runStateStore.d.ts.map +1 -0
  136. package/dist/desktop/runStateStore.js +38 -0
  137. package/dist/desktop/runStateStore.js.map +1 -0
  138. package/dist/desktop/runStepState.d.ts +16 -0
  139. package/dist/desktop/runStepState.d.ts.map +1 -0
  140. package/dist/desktop/runStepState.js +94 -0
  141. package/dist/desktop/runStepState.js.map +1 -0
  142. package/dist/desktop/types/bridgeTypes.d.ts +115 -0
  143. package/dist/desktop/types/bridgeTypes.d.ts.map +1 -0
  144. package/dist/desktop/types/bridgeTypes.js +2 -0
  145. package/dist/desktop/types/bridgeTypes.js.map +1 -0
  146. package/dist/desktop/types/graphTypes.d.ts +201 -0
  147. package/dist/desktop/types/graphTypes.d.ts.map +1 -0
  148. package/dist/desktop/types/graphTypes.js +2 -0
  149. package/dist/desktop/types/graphTypes.js.map +1 -0
  150. package/dist/desktop/types/projectTypes.d.ts +19 -0
  151. package/dist/desktop/types/projectTypes.d.ts.map +1 -0
  152. package/dist/desktop/types/projectTypes.js +2 -0
  153. package/dist/desktop/types/projectTypes.js.map +1 -0
  154. package/dist/desktop/types/recordsTypes.d.ts +50 -0
  155. package/dist/desktop/types/recordsTypes.d.ts.map +1 -0
  156. package/dist/desktop/types/recordsTypes.js +2 -0
  157. package/dist/desktop/types/recordsTypes.js.map +1 -0
  158. package/dist/desktop/types/reviewPipelineTypes.d.ts +35 -0
  159. package/dist/desktop/types/reviewPipelineTypes.d.ts.map +1 -0
  160. package/dist/desktop/types/reviewPipelineTypes.js +2 -0
  161. package/dist/desktop/types/reviewPipelineTypes.js.map +1 -0
  162. package/dist/desktop/types/runTypes.d.ts +35 -0
  163. package/dist/desktop/types/runTypes.d.ts.map +1 -0
  164. package/dist/desktop/types/runTypes.js +2 -0
  165. package/dist/desktop/types/runTypes.js.map +1 -0
  166. package/dist/desktop/types/syncTypes.d.ts +22 -0
  167. package/dist/desktop/types/syncTypes.d.ts.map +1 -0
  168. package/dist/desktop/types/syncTypes.js +2 -0
  169. package/dist/desktop/types/syncTypes.js.map +1 -0
  170. package/dist/desktop/types.d.ts +8 -0
  171. package/dist/desktop/types.d.ts.map +1 -0
  172. package/dist/desktop/types.js +2 -0
  173. package/dist/desktop/types.js.map +1 -0
  174. package/dist/graph/compileTaskGraph.d.ts +8 -0
  175. package/dist/graph/compileTaskGraph.d.ts.map +1 -0
  176. package/dist/graph/compileTaskGraph.js +311 -0
  177. package/dist/graph/compileTaskGraph.js.map +1 -0
  178. package/dist/graph/editGraph.d.ts +49 -0
  179. package/dist/graph/editGraph.d.ts.map +1 -0
  180. package/dist/graph/editGraph.js +224 -0
  181. package/dist/graph/editGraph.js.map +1 -0
  182. package/dist/graph/mutation.d.ts +62 -0
  183. package/dist/graph/mutation.d.ts.map +1 -0
  184. package/dist/graph/mutation.js +158 -0
  185. package/dist/graph/mutation.js.map +1 -0
  186. package/dist/graph/session/applyOperation.d.ts +3 -0
  187. package/dist/graph/session/applyOperation.d.ts.map +1 -0
  188. package/dist/graph/session/applyOperation.js +101 -0
  189. package/dist/graph/session/applyOperation.js.map +1 -0
  190. package/dist/graph/session/fileQueue.d.ts +5 -0
  191. package/dist/graph/session/fileQueue.d.ts.map +1 -0
  192. package/dist/graph/session/fileQueue.js +26 -0
  193. package/dist/graph/session/fileQueue.js.map +1 -0
  194. package/dist/graph/session/graphIndexes.d.ts +15 -0
  195. package/dist/graph/session/graphIndexes.d.ts.map +1 -0
  196. package/dist/graph/session/graphIndexes.js +174 -0
  197. package/dist/graph/session/graphIndexes.js.map +1 -0
  198. package/dist/graph/session/manifestDiff.d.ts +3 -0
  199. package/dist/graph/session/manifestDiff.d.ts.map +1 -0
  200. package/dist/graph/session/manifestDiff.js +39 -0
  201. package/dist/graph/session/manifestDiff.js.map +1 -0
  202. package/dist/graph/session/rebuild.d.ts +4 -0
  203. package/dist/graph/session/rebuild.d.ts.map +1 -0
  204. package/dist/graph/session/rebuild.js +20 -0
  205. package/dist/graph/session/rebuild.js.map +1 -0
  206. package/dist/graph/session.d.ts +6 -0
  207. package/dist/graph/session.d.ts.map +1 -0
  208. package/dist/graph/session.js +97 -0
  209. package/dist/graph/session.js.map +1 -0
  210. package/dist/index.d.ts +34 -0
  211. package/dist/index.d.ts.map +1 -0
  212. package/dist/index.js +30 -0
  213. package/dist/index.js.map +1 -0
  214. package/dist/initWorkspace.d.ts +9 -0
  215. package/dist/initWorkspace.d.ts.map +1 -0
  216. package/dist/initWorkspace.js +108 -0
  217. package/dist/initWorkspace.js.map +1 -0
  218. package/dist/json.d.ts +3 -0
  219. package/dist/json.d.ts.map +1 -0
  220. package/dist/json.js +20 -0
  221. package/dist/json.js.map +1 -0
  222. package/dist/package/fileChanges.d.ts +14 -0
  223. package/dist/package/fileChanges.d.ts.map +1 -0
  224. package/dist/package/fileChanges.js +134 -0
  225. package/dist/package/fileChanges.js.map +1 -0
  226. package/dist/package/loadPackage.d.ts +8 -0
  227. package/dist/package/loadPackage.d.ts.map +1 -0
  228. package/dist/package/loadPackage.js +14 -0
  229. package/dist/package/loadPackage.js.map +1 -0
  230. package/dist/package/manifestEdit.d.ts +4 -0
  231. package/dist/package/manifestEdit.d.ts.map +1 -0
  232. package/dist/package/manifestEdit.js +198 -0
  233. package/dist/package/manifestEdit.js.map +1 -0
  234. package/dist/package/orphans.d.ts +6 -0
  235. package/dist/package/orphans.d.ts.map +1 -0
  236. package/dist/package/orphans.js +38 -0
  237. package/dist/package/orphans.js.map +1 -0
  238. package/dist/package/readMarkdown.d.ts +2 -0
  239. package/dist/package/readMarkdown.d.ts.map +1 -0
  240. package/dist/package/readMarkdown.js +5 -0
  241. package/dist/package/readMarkdown.js.map +1 -0
  242. package/dist/package/resolvePackagePath.d.ts +8 -0
  243. package/dist/package/resolvePackagePath.d.ts.map +1 -0
  244. package/dist/package/resolvePackagePath.js +56 -0
  245. package/dist/package/resolvePackagePath.js.map +1 -0
  246. package/dist/paths.d.ts +4 -0
  247. package/dist/paths.d.ts.map +1 -0
  248. package/dist/paths.js +28 -0
  249. package/dist/paths.js.map +1 -0
  250. package/dist/project.d.ts +4 -0
  251. package/dist/project.d.ts.map +1 -0
  252. package/dist/project.js +35 -0
  253. package/dist/project.js.map +1 -0
  254. package/dist/projectId.d.ts +2 -0
  255. package/dist/projectId.d.ts.map +1 -0
  256. package/dist/projectId.js +16 -0
  257. package/dist/projectId.js.map +1 -0
  258. package/dist/projectPromptPolicy.d.ts +9 -0
  259. package/dist/projectPromptPolicy.d.ts.map +1 -0
  260. package/dist/projectPromptPolicy.js +73 -0
  261. package/dist/projectPromptPolicy.js.map +1 -0
  262. package/dist/prompt/getPrompt.d.ts +6 -0
  263. package/dist/prompt/getPrompt.d.ts.map +1 -0
  264. package/dist/prompt/getPrompt.js +5 -0
  265. package/dist/prompt/getPrompt.js.map +1 -0
  266. package/dist/prompt/refreshPrompt.d.ts +6 -0
  267. package/dist/prompt/refreshPrompt.d.ts.map +1 -0
  268. package/dist/prompt/refreshPrompt.js +9 -0
  269. package/dist/prompt/refreshPrompt.js.map +1 -0
  270. package/dist/prompt/refreshPrompts.d.ts +5 -0
  271. package/dist/prompt/refreshPrompts.d.ts.map +1 -0
  272. package/dist/prompt/refreshPrompts.js +17 -0
  273. package/dist/prompt/refreshPrompts.js.map +1 -0
  274. package/dist/prompt/renderManagedSections.d.ts +3 -0
  275. package/dist/prompt/renderManagedSections.d.ts.map +1 -0
  276. package/dist/prompt/renderManagedSections.js +4 -0
  277. package/dist/prompt/renderManagedSections.js.map +1 -0
  278. package/dist/prompt/sections.d.ts +15 -0
  279. package/dist/prompt/sections.d.ts.map +1 -0
  280. package/dist/prompt/sections.js +62 -0
  281. package/dist/prompt/sections.js.map +1 -0
  282. package/dist/schema/manifest.d.ts +192 -0
  283. package/dist/schema/manifest.d.ts.map +1 -0
  284. package/dist/schema/manifest.js +178 -0
  285. package/dist/schema/manifest.js.map +1 -0
  286. package/dist/state.d.ts +7 -0
  287. package/dist/state.d.ts.map +1 -0
  288. package/dist/state.js +139 -0
  289. package/dist/state.js.map +1 -0
  290. package/dist/taskManager/autoRun.d.ts +16 -0
  291. package/dist/taskManager/autoRun.d.ts.map +1 -0
  292. package/dist/taskManager/autoRun.js +228 -0
  293. package/dist/taskManager/autoRun.js.map +1 -0
  294. package/dist/taskManager/blockStatusMutations.d.ts +42 -0
  295. package/dist/taskManager/blockStatusMutations.d.ts.map +1 -0
  296. package/dist/taskManager/blockStatusMutations.js +88 -0
  297. package/dist/taskManager/blockStatusMutations.js.map +1 -0
  298. package/dist/taskManager/blockSubmission.d.ts +9 -0
  299. package/dist/taskManager/blockSubmission.d.ts.map +1 -0
  300. package/dist/taskManager/blockSubmission.js +124 -0
  301. package/dist/taskManager/blockSubmission.js.map +1 -0
  302. package/dist/taskManager/claimScheduler.d.ts +26 -0
  303. package/dist/taskManager/claimScheduler.d.ts.map +1 -0
  304. package/dist/taskManager/claimScheduler.js +286 -0
  305. package/dist/taskManager/claimScheduler.js.map +1 -0
  306. package/dist/taskManager/doctor.d.ts +6 -0
  307. package/dist/taskManager/doctor.d.ts.map +1 -0
  308. package/dist/taskManager/doctor.js +141 -0
  309. package/dist/taskManager/doctor.js.map +1 -0
  310. package/dist/taskManager/executionStatus.d.ts +74 -0
  311. package/dist/taskManager/executionStatus.d.ts.map +1 -0
  312. package/dist/taskManager/executionStatus.js +180 -0
  313. package/dist/taskManager/executionStatus.js.map +1 -0
  314. package/dist/taskManager/executorApi.d.ts +9 -0
  315. package/dist/taskManager/executorApi.d.ts.map +1 -0
  316. package/dist/taskManager/executorApi.js +87 -0
  317. package/dist/taskManager/executorApi.js.map +1 -0
  318. package/dist/taskManager/feedbackArtifacts.d.ts +14 -0
  319. package/dist/taskManager/feedbackArtifacts.d.ts.map +1 -0
  320. package/dist/taskManager/feedbackArtifacts.js +17 -0
  321. package/dist/taskManager/feedbackArtifacts.js.map +1 -0
  322. package/dist/taskManager/feedbackSubmission.d.ts +7 -0
  323. package/dist/taskManager/feedbackSubmission.d.ts.map +1 -0
  324. package/dist/taskManager/feedbackSubmission.js +136 -0
  325. package/dist/taskManager/feedbackSubmission.js.map +1 -0
  326. package/dist/taskManager/index.d.ts +12 -0
  327. package/dist/taskManager/index.d.ts.map +1 -0
  328. package/dist/taskManager/index.js +11 -0
  329. package/dist/taskManager/index.js.map +1 -0
  330. package/dist/taskManager/promptRenderer.d.ts +29 -0
  331. package/dist/taskManager/promptRenderer.d.ts.map +1 -0
  332. package/dist/taskManager/promptRenderer.js +191 -0
  333. package/dist/taskManager/promptRenderer.js.map +1 -0
  334. package/dist/taskManager/resultIndex.d.ts +15 -0
  335. package/dist/taskManager/resultIndex.d.ts.map +1 -0
  336. package/dist/taskManager/resultIndex.js +61 -0
  337. package/dist/taskManager/resultIndex.js.map +1 -0
  338. package/dist/taskManager/reviewHook.d.ts +10 -0
  339. package/dist/taskManager/reviewHook.d.ts.map +1 -0
  340. package/dist/taskManager/reviewHook.js +49 -0
  341. package/dist/taskManager/reviewHook.js.map +1 -0
  342. package/dist/taskManager/reviewRetry.d.ts +13 -0
  343. package/dist/taskManager/reviewRetry.d.ts.map +1 -0
  344. package/dist/taskManager/reviewRetry.js +112 -0
  345. package/dist/taskManager/reviewRetry.js.map +1 -0
  346. package/dist/taskManager/reviewSubmission.d.ts +8 -0
  347. package/dist/taskManager/reviewSubmission.d.ts.map +1 -0
  348. package/dist/taskManager/reviewSubmission.js +444 -0
  349. package/dist/taskManager/reviewSubmission.js.map +1 -0
  350. package/dist/taskManager/runtimeContext.d.ts +16 -0
  351. package/dist/taskManager/runtimeContext.d.ts.map +1 -0
  352. package/dist/taskManager/runtimeContext.js +31 -0
  353. package/dist/taskManager/runtimeContext.js.map +1 -0
  354. package/dist/taskManager/selectors.d.ts +20 -0
  355. package/dist/taskManager/selectors.d.ts.map +1 -0
  356. package/dist/taskManager/selectors.js +148 -0
  357. package/dist/taskManager/selectors.js.map +1 -0
  358. package/dist/tasks/dependencies.d.ts +5 -0
  359. package/dist/tasks/dependencies.d.ts.map +1 -0
  360. package/dist/tasks/dependencies.js +11 -0
  361. package/dist/tasks/dependencies.js.map +1 -0
  362. package/dist/tasks/parallelSafety.d.ts +3 -0
  363. package/dist/tasks/parallelSafety.d.ts.map +1 -0
  364. package/dist/tasks/parallelSafety.js +18 -0
  365. package/dist/tasks/parallelSafety.js.map +1 -0
  366. package/dist/types.d.ts +675 -0
  367. package/dist/types.d.ts.map +1 -0
  368. package/dist/types.js +11 -0
  369. package/dist/types.js.map +1 -0
  370. package/dist/validatePackage.d.ts +5 -0
  371. package/dist/validatePackage.d.ts.map +1 -0
  372. package/dist/validatePackage.js +130 -0
  373. package/dist/validatePackage.js.map +1 -0
  374. package/package.json +47 -0
@@ -0,0 +1,179 @@
1
+ import { spawn } from "node:child_process";
2
+ import { createWriteStream, constants } from "node:fs";
3
+ import { access, mkdir, readdir, readFile, writeFile } from "node:fs/promises";
4
+ import { dirname, join } from "node:path";
5
+ import { parseBlockRef } from "../graph/compileTaskGraph.js";
6
+ import { writeJsonFile } from "../json.js";
7
+ import { loadPackage } from "../package/loadPackage.js";
8
+ import { runCommandInTmux } from "./tmuxExecutor.js";
9
+ export function planweaveExecutorEnv(workspace, env) {
10
+ return {
11
+ ...(env ?? {}),
12
+ PLANWEAVE_HOME: workspace.planweaveHome
13
+ };
14
+ }
15
+ export async function pathExists(path) {
16
+ try {
17
+ await access(path, constants.F_OK);
18
+ return true;
19
+ }
20
+ catch {
21
+ return false;
22
+ }
23
+ }
24
+ export async function nextRunId(runRoot) {
25
+ try {
26
+ const entries = await readdir(runRoot, { withFileTypes: true });
27
+ const count = entries.filter((entry) => entry.isDirectory() && /^RUN-\d+$/.test(entry.name)).length;
28
+ return `RUN-${String(count + 1).padStart(3, "0")}`;
29
+ }
30
+ catch {
31
+ return "RUN-001";
32
+ }
33
+ }
34
+ export async function prepareBlockRun(options) {
35
+ const { workspace } = await loadPackage(options.projectRoot);
36
+ const { taskId, blockId } = parseBlockRef(options.claim.ref);
37
+ const runRoot = join(workspace.resultsDir, taskId, "blocks", blockId, "runs");
38
+ const runId = await nextRunId(runRoot);
39
+ const runDir = join(runRoot, runId);
40
+ const promptPath = join(runDir, "prompt.md");
41
+ const metadataPath = join(runDir, "metadata.json");
42
+ const startedAt = new Date().toISOString();
43
+ await mkdir(runDir, { recursive: true });
44
+ await writeFile(promptPath, options.prompt, "utf8");
45
+ await writeJsonFile(metadataPath, {
46
+ runId,
47
+ ref: options.claim.ref,
48
+ executor: options.executorName,
49
+ adapter: options.profile.adapter,
50
+ projectRoot: workspace.rootPath,
51
+ executionCwd: workspace.rootPath,
52
+ startedAt,
53
+ finishedAt: null,
54
+ exitCode: null,
55
+ agentSessionId: null,
56
+ codexSessionId: null
57
+ });
58
+ return { runId, runDir, promptPath, metadataPath, startedAt };
59
+ }
60
+ export async function finishRunMetadata(path, patch) {
61
+ let previous = {};
62
+ if (await pathExists(path)) {
63
+ previous = JSON.parse(await readFile(path, "utf8"));
64
+ }
65
+ await writeJsonFile(path, { ...previous, ...patch });
66
+ }
67
+ export async function execWithStdin(options) {
68
+ return new Promise((resolve, reject) => {
69
+ const child = spawn(options.command, options.args, {
70
+ cwd: options.cwd,
71
+ env: options.env ? { ...process.env, ...options.env } : process.env,
72
+ stdio: ["pipe", "pipe", "pipe"]
73
+ });
74
+ let stdout = "";
75
+ let stderr = "";
76
+ let timedOut = false;
77
+ let timeout;
78
+ child.stdout.setEncoding("utf8");
79
+ child.stderr.setEncoding("utf8");
80
+ child.stdout.on("data", (chunk) => {
81
+ stdout += chunk;
82
+ });
83
+ child.stderr.on("data", (chunk) => {
84
+ stderr += chunk;
85
+ });
86
+ child.on("error", reject);
87
+ if (options.timeoutMs) {
88
+ timeout = setTimeout(() => {
89
+ timedOut = true;
90
+ child.kill("SIGTERM");
91
+ }, options.timeoutMs);
92
+ }
93
+ child.on("close", (code) => {
94
+ if (timeout) {
95
+ clearTimeout(timeout);
96
+ }
97
+ resolve({ stdout, stderr, exitCode: timedOut ? 124 : code ?? 1, timedOut });
98
+ });
99
+ child.stdin.end(options.stdin);
100
+ });
101
+ }
102
+ function finishWriteStream(stream) {
103
+ return new Promise((resolve, reject) => {
104
+ stream.once("error", reject);
105
+ stream.end(resolve);
106
+ });
107
+ }
108
+ export async function execWithStreaming(options) {
109
+ if (options.tmux) {
110
+ return runCommandInTmux({
111
+ command: options.command,
112
+ args: options.args,
113
+ cwd: options.cwd,
114
+ stdin: options.stdin,
115
+ env: options.env,
116
+ stdoutPath: options.stdoutPath,
117
+ stderrPath: options.stderrPath,
118
+ timeoutMs: options.timeoutMs,
119
+ tmux: options.tmux,
120
+ onStdout: options.onStdout,
121
+ onStderr: options.onStderr
122
+ });
123
+ }
124
+ await mkdir(dirname(options.stdoutPath), { recursive: true });
125
+ await mkdir(dirname(options.stderrPath), { recursive: true });
126
+ return new Promise((resolve, reject) => {
127
+ const stdoutStream = createWriteStream(options.stdoutPath, { flags: "w" });
128
+ const stderrStream = createWriteStream(options.stderrPath, { flags: "w" });
129
+ const child = spawn(options.command, options.args, {
130
+ cwd: options.cwd,
131
+ env: options.env ? { ...process.env, ...options.env } : process.env,
132
+ stdio: ["pipe", "pipe", "pipe"]
133
+ });
134
+ let timedOut = false;
135
+ let timeout;
136
+ let callbackChain = Promise.resolve();
137
+ const enqueueCallback = (callback, chunk) => {
138
+ if (!callback) {
139
+ return;
140
+ }
141
+ callbackChain = callbackChain.then(() => callback(chunk));
142
+ };
143
+ child.stdout.setEncoding("utf8");
144
+ child.stderr.setEncoding("utf8");
145
+ child.stdout.on("data", (chunk) => {
146
+ if (!stdoutStream.write(chunk)) {
147
+ child.stdout.pause();
148
+ stdoutStream.once("drain", () => child.stdout.resume());
149
+ }
150
+ enqueueCallback(options.onStdout, chunk);
151
+ });
152
+ child.stderr.on("data", (chunk) => {
153
+ if (!stderrStream.write(chunk)) {
154
+ child.stderr.pause();
155
+ stderrStream.once("drain", () => child.stderr.resume());
156
+ }
157
+ enqueueCallback(options.onStderr, chunk);
158
+ });
159
+ child.on("error", reject);
160
+ if (options.timeoutMs) {
161
+ timeout = setTimeout(() => {
162
+ timedOut = true;
163
+ child.kill("SIGTERM");
164
+ }, options.timeoutMs);
165
+ }
166
+ child.on("close", (code) => {
167
+ if (timeout) {
168
+ clearTimeout(timeout);
169
+ }
170
+ Promise.all([finishWriteStream(stdoutStream), finishWriteStream(stderrStream), callbackChain])
171
+ .then(() => {
172
+ resolve({ stdoutPath: options.stdoutPath, stderrPath: options.stderrPath, exitCode: timedOut ? 124 : code ?? 1, timedOut });
173
+ })
174
+ .catch(reject);
175
+ });
176
+ child.stdin.end(options.stdin);
177
+ });
178
+ }
179
+ //# sourceMappingURL=executorShared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executorShared.js","sourceRoot":"","sources":["../../src/autoRun/executorShared.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import type { ExecutorAdapter, ExecutorProfile, ExecutorProfileSummary, PackageWorkspaceRef } from "../types.js";
2
+ type ExecutorRuntimeOptions = {
3
+ tmuxEnabled?: boolean;
4
+ };
5
+ export declare function createManualExecutorAdapter(options: {
6
+ projectRoot: PackageWorkspaceRef;
7
+ executorName?: string;
8
+ runtime?: ExecutorRuntimeOptions;
9
+ }): ExecutorAdapter;
10
+ export declare function createCodexExecAdapter(options: {
11
+ projectRoot: PackageWorkspaceRef;
12
+ executorName?: string;
13
+ runtime?: ExecutorRuntimeOptions;
14
+ }): ExecutorAdapter;
15
+ export declare function createOpencodeExecAdapter(options: {
16
+ projectRoot: PackageWorkspaceRef;
17
+ executorName?: string;
18
+ runtime?: ExecutorRuntimeOptions;
19
+ }): ExecutorAdapter;
20
+ export declare function createLocalReviewAdapter(options: {
21
+ projectRoot: PackageWorkspaceRef;
22
+ executorName?: string;
23
+ runtime?: ExecutorRuntimeOptions;
24
+ }): ExecutorAdapter;
25
+ export declare function createExecutorAdapter(options: {
26
+ projectRoot: PackageWorkspaceRef;
27
+ executorName?: string;
28
+ runtime?: ExecutorRuntimeOptions;
29
+ }): ExecutorAdapter;
30
+ export declare function listExecutorProfiles(options: {
31
+ projectRoot: PackageWorkspaceRef;
32
+ }): Promise<ExecutorProfileSummary[]>;
33
+ export declare function testExecutorProfile(options: {
34
+ projectRoot: PackageWorkspaceRef;
35
+ executorName: string;
36
+ }): Promise<{
37
+ name: string;
38
+ adapter: ExecutorProfile["adapter"];
39
+ ok: boolean;
40
+ message: string;
41
+ }>;
42
+ export {};
43
+ //# sourceMappingURL=executors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executors.d.ts","sourceRoot":"","sources":["../../src/autoRun/executors.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,eAAe,EACf,eAAe,EACf,sBAAsB,EAEtB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAMrB,KAAK,sBAAsB,GAAG;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AA0JF,wBAAgB,2BAA2B,CAAC,OAAO,EAAE;IAAE,WAAW,EAAE,mBAAmB,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,sBAAsB,CAAA;CAAE,GAAG,eAAe,CAEnK;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE;IAAE,WAAW,EAAE,mBAAmB,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,sBAAsB,CAAA;CAAE,GAAG,eAAe,CAE9J;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE;IAAE,WAAW,EAAE,mBAAmB,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,sBAAsB,CAAA;CAAE,GAAG,eAAe,CAEjK;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE;IAAE,WAAW,EAAE,mBAAmB,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,sBAAsB,CAAA;CAAE,GAAG,eAAe,CAEhK;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE;IAAE,WAAW,EAAE,mBAAmB,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,sBAAsB,CAAA;CAAE,GAAG,eAAe,CAE7J;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE;IAAE,WAAW,EAAE,mBAAmB,CAAA;CAAE,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAkB3H;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE;IAAE,WAAW,EAAE,mBAAmB,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IACtH,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACpC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC,CAqBD"}
@@ -0,0 +1,201 @@
1
+ import { mkdir, writeFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ import { loadPackage, resolvePackageWorkspace } from "../package/loadPackage.js";
4
+ import { runCodexBlock, runCodexFeedback } from "./codexExecutor.js";
5
+ import { execWithStdin, nextRunId, prepareBlockRun } from "./executorShared.js";
6
+ import { runLocalReviewBlock, runLocalReviewFeedback } from "./localReviewExecutor.js";
7
+ import { runOpencodeBlock, runOpencodeFeedback } from "./opencodeExecutor.js";
8
+ const builtinExecutors = {
9
+ default: { adapter: "manual" },
10
+ manual: { adapter: "manual" },
11
+ "codex-auto": { adapter: "codex-exec", command: "codex", args: ["exec", "-"] },
12
+ "codex-reviewer": { adapter: "codex-exec", command: "codex", args: ["exec", "-"], role: "reviewer" }
13
+ };
14
+ function taskNodeForClaim(manifest, claim) {
15
+ const node = manifest.nodes.find((item) => item.type === "task" && item.id === claim.taskId);
16
+ if (node?.type !== "task") {
17
+ throw new Error(`Task '${claim.taskId}' does not exist.`);
18
+ }
19
+ return node;
20
+ }
21
+ function resolveBlockExecutorName(manifest, claim, override) {
22
+ const task = taskNodeForClaim(manifest, claim);
23
+ const block = task.blocks.find((item) => item.id === claim.blockId);
24
+ if (!block) {
25
+ throw new Error(`Block '${claim.ref}' does not exist.`);
26
+ }
27
+ return override ?? block.executor ?? task.executor ?? manifest.execution.defaultExecutor ?? "default";
28
+ }
29
+ function profilesByName(manifest) {
30
+ return {
31
+ ...builtinExecutors,
32
+ ...(manifest.executors ?? {})
33
+ };
34
+ }
35
+ async function resolveProfileForClaim(options) {
36
+ const { manifest } = await loadPackage(options.projectRoot);
37
+ const name = resolveBlockExecutorName(manifest, options.claim, options.executorName);
38
+ const profile = profilesByName(manifest)[name];
39
+ if (!profile) {
40
+ throw new Error(`Executor profile '${name}' does not exist.`);
41
+ }
42
+ return { name, profile };
43
+ }
44
+ function createProfiledAdapter(options) {
45
+ return {
46
+ async runBlock({ claim, prompt }) {
47
+ const { name, profile } = await resolveProfileForClaim({
48
+ projectRoot: options.projectRoot,
49
+ claim,
50
+ executorName: options.executorName
51
+ });
52
+ if (options.expectedAdapter && profile.adapter !== options.expectedAdapter) {
53
+ throw new Error(`Executor profile '${name}' is '${profile.adapter}', not '${options.expectedAdapter}'.`);
54
+ }
55
+ if (profile.adapter === "manual") {
56
+ const run = await prepareBlockRun({
57
+ projectRoot: options.projectRoot,
58
+ claim,
59
+ executorName: name,
60
+ profile,
61
+ prompt
62
+ });
63
+ return {
64
+ kind: "manual",
65
+ executor: name,
66
+ adapter: "manual",
67
+ promptPath: run.promptPath,
68
+ runDir: run.runDir,
69
+ runId: run.runId,
70
+ nextCommand: claim.blockType === "review"
71
+ ? `planweave submit-review ${claim.ref} --result <review-result.json>`
72
+ : `planweave submit-result ${claim.ref} --report <report.md>`
73
+ };
74
+ }
75
+ if (profile.adapter === "codex-exec") {
76
+ return runCodexBlock({ projectRoot: options.projectRoot, claim, prompt, executorName: name, profile, tmuxEnabled: options.runtime?.tmuxEnabled });
77
+ }
78
+ if (profile.adapter === "opencode-exec") {
79
+ return runOpencodeBlock({ projectRoot: options.projectRoot, claim, prompt, executorName: name, profile, tmuxEnabled: options.runtime?.tmuxEnabled });
80
+ }
81
+ return runLocalReviewBlock({ projectRoot: options.projectRoot, claim, prompt, executorName: name, profile, tmuxEnabled: options.runtime?.tmuxEnabled });
82
+ },
83
+ async runFeedback({ claim }) {
84
+ const { manifest, workspace } = await loadPackage(options.projectRoot);
85
+ const name = options.executorName ?? manifest.execution.defaultExecutor ?? "default";
86
+ const profile = profilesByName(manifest)[name];
87
+ if (!profile) {
88
+ throw new Error(`Executor profile '${name}' does not exist.`);
89
+ }
90
+ if (options.expectedAdapter && profile.adapter !== options.expectedAdapter) {
91
+ throw new Error(`Executor profile '${name}' is '${profile.adapter}', not '${options.expectedAdapter}'.`);
92
+ }
93
+ if (profile.adapter === "manual") {
94
+ const feedbackRoot = join(workspace.resultsDir, "feedback-runs");
95
+ const runId = await nextRunId(feedbackRoot);
96
+ const runDir = join(feedbackRoot, runId);
97
+ await mkdir(runDir, { recursive: true });
98
+ const promptPath = join(runDir, "feedback.md");
99
+ await writeFile(promptPath, claim.content, "utf8");
100
+ return {
101
+ kind: "manual",
102
+ executor: name,
103
+ adapter: "manual",
104
+ promptPath,
105
+ runDir,
106
+ runId,
107
+ nextCommand: "planweave submit-feedback --report <report.md>"
108
+ };
109
+ }
110
+ if (profile.adapter === "codex-exec") {
111
+ return runCodexFeedback({
112
+ projectRoot: workspace.rootPath,
113
+ planweaveHome: workspace.planweaveHome,
114
+ workspaceResultsDir: workspace.resultsDir,
115
+ claim,
116
+ executorName: name,
117
+ profile,
118
+ tmuxEnabled: options.runtime?.tmuxEnabled
119
+ });
120
+ }
121
+ if (profile.adapter === "opencode-exec") {
122
+ return runOpencodeFeedback({
123
+ projectRoot: workspace.rootPath,
124
+ planweaveHome: workspace.planweaveHome,
125
+ workspaceResultsDir: workspace.resultsDir,
126
+ claim,
127
+ executorName: name,
128
+ profile,
129
+ tmuxEnabled: options.runtime?.tmuxEnabled
130
+ });
131
+ }
132
+ return runLocalReviewFeedback({
133
+ projectRoot: workspace.rootPath,
134
+ planweaveHome: workspace.planweaveHome,
135
+ workspaceResultsDir: workspace.resultsDir,
136
+ claim,
137
+ executorName: name,
138
+ profile,
139
+ tmuxEnabled: options.runtime?.tmuxEnabled
140
+ });
141
+ }
142
+ };
143
+ }
144
+ export function createManualExecutorAdapter(options) {
145
+ return createProfiledAdapter({ ...options, expectedAdapter: "manual" });
146
+ }
147
+ export function createCodexExecAdapter(options) {
148
+ return createProfiledAdapter({ ...options, expectedAdapter: "codex-exec" });
149
+ }
150
+ export function createOpencodeExecAdapter(options) {
151
+ return createProfiledAdapter({ ...options, expectedAdapter: "opencode-exec" });
152
+ }
153
+ export function createLocalReviewAdapter(options) {
154
+ return createProfiledAdapter({ ...options, expectedAdapter: "local-review" });
155
+ }
156
+ export function createExecutorAdapter(options) {
157
+ return createProfiledAdapter(options);
158
+ }
159
+ export async function listExecutorProfiles(options) {
160
+ const { manifest } = await loadPackage(options.projectRoot);
161
+ const packageProfiles = manifest.executors ?? {};
162
+ const summaries = Object.entries(builtinExecutors).map(([name, profile]) => ({
163
+ name,
164
+ source: "builtin",
165
+ ...profile
166
+ }));
167
+ for (const [name, profile] of Object.entries(packageProfiles)) {
168
+ const existing = summaries.findIndex((summary) => summary.name === name);
169
+ const summary = { name, source: "package", ...profile };
170
+ if (existing >= 0) {
171
+ summaries[existing] = summary;
172
+ }
173
+ else {
174
+ summaries.push(summary);
175
+ }
176
+ }
177
+ return summaries;
178
+ }
179
+ export async function testExecutorProfile(options) {
180
+ const profiles = await listExecutorProfiles({ projectRoot: options.projectRoot });
181
+ const profile = profiles.find((item) => item.name === options.executorName);
182
+ if (!profile) {
183
+ return { name: options.executorName, adapter: "manual", ok: false, message: `Executor profile '${options.executorName}' does not exist.` };
184
+ }
185
+ if (profile.adapter === "manual") {
186
+ return { name: profile.name, adapter: profile.adapter, ok: true, message: "manual executor is always available" };
187
+ }
188
+ const result = await execWithStdin({
189
+ command: profile.command,
190
+ args: ["--version"],
191
+ cwd: (await resolvePackageWorkspace(options.projectRoot)).rootPath,
192
+ stdin: ""
193
+ });
194
+ return {
195
+ name: profile.name,
196
+ adapter: profile.adapter,
197
+ ok: result.exitCode === 0,
198
+ message: result.exitCode === 0 ? result.stdout.trim() : result.stderr.trim() || `exited with code ${result.exitCode}`
199
+ };
200
+ }
201
+ //# sourceMappingURL=executors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executors.js","sourceRoot":"","sources":["../../src/autoRun/executors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { ExecutorAdapterResult, LocalReviewExecutorProfile, PackageWorkspaceRef } from "../types.js";
2
+ import { type BlockClaim, type FeedbackClaim } from "./executorShared.js";
3
+ export declare function runLocalReviewBlock(options: {
4
+ projectRoot: PackageWorkspaceRef;
5
+ claim: BlockClaim;
6
+ prompt: string;
7
+ executorName: string;
8
+ profile: LocalReviewExecutorProfile;
9
+ tmuxEnabled?: boolean;
10
+ }): Promise<ExecutorAdapterResult>;
11
+ export declare function runLocalReviewFeedback(options: {
12
+ projectRoot: string;
13
+ planweaveHome: string;
14
+ workspaceResultsDir: string;
15
+ claim: FeedbackClaim;
16
+ executorName: string;
17
+ profile: LocalReviewExecutorProfile;
18
+ tmuxEnabled?: boolean;
19
+ }): Promise<ExecutorAdapterResult>;
20
+ //# sourceMappingURL=localReviewExecutor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localReviewExecutor.d.ts","sourceRoot":"","sources":["../../src/autoRun/localReviewExecutor.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC1G,OAAO,EAA0F,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGlK,wBAAsB,mBAAmB,CAAC,OAAO,EAAE;IACjD,WAAW,EAAE,mBAAmB,CAAC;IACjC,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,0BAA0B,CAAC;IACpC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CA8DjC;AAED,wBAAsB,sBAAsB,CAAC,OAAO,EAAE;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,KAAK,EAAE,aAAa,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,0BAA0B,CAAC;IACpC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAiEjC"}
@@ -0,0 +1,133 @@
1
+ import { mkdir, readFile, writeFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ import { parseBlockRef } from "../graph/compileTaskGraph.js";
4
+ import { writeJsonFile } from "../json.js";
5
+ import { resolvePackageWorkspace } from "../package/loadPackage.js";
6
+ import { execWithStreaming, finishRunMetadata, nextRunId, planweaveExecutorEnv, prepareBlockRun } from "./executorShared.js";
7
+ import { createTmuxSessionInfo, tmuxMetadataPatch } from "./tmuxExecutor.js";
8
+ export async function runLocalReviewBlock(options) {
9
+ if (options.claim.blockType !== "review") {
10
+ throw new Error(`Executor '${options.executorName}' uses local-review and can only run review blocks.`);
11
+ }
12
+ const run = await prepareBlockRun({
13
+ projectRoot: options.projectRoot,
14
+ claim: options.claim,
15
+ executorName: options.executorName,
16
+ profile: options.profile,
17
+ prompt: options.prompt
18
+ });
19
+ const workspace = await resolvePackageWorkspace(options.projectRoot);
20
+ const { blockId } = parseBlockRef(options.claim.ref);
21
+ const stdoutPath = join(run.runDir, "stdout.md");
22
+ const stderrPath = join(run.runDir, "stderr.log");
23
+ const tmux = await createTmuxSessionInfo({ runDir: run.runDir, runId: run.runId, ref: options.claim.ref, kind: "block", enabled: options.tmuxEnabled });
24
+ await finishRunMetadata(run.metadataPath, tmuxMetadataPatch(tmux));
25
+ const streamed = await execWithStreaming({
26
+ command: options.profile.command,
27
+ args: options.profile.args,
28
+ cwd: workspace.rootPath,
29
+ stdin: options.prompt,
30
+ env: planweaveExecutorEnv(workspace, {
31
+ PLANWEAVE_REVIEW_BLOCK_REF: options.claim.ref,
32
+ PLANWEAVE_TASK_ID: options.claim.taskId,
33
+ PLANWEAVE_BLOCK_ID: blockId
34
+ }),
35
+ timeoutMs: options.profile.timeoutMs,
36
+ stdoutPath,
37
+ stderrPath,
38
+ tmux
39
+ });
40
+ const result = {
41
+ stdout: await readFile(stdoutPath, "utf8"),
42
+ stderr: await readFile(stderrPath, "utf8"),
43
+ exitCode: streamed.exitCode,
44
+ timedOut: streamed.timedOut
45
+ };
46
+ await finishRunMetadata(run.metadataPath, {
47
+ finishedAt: new Date().toISOString(),
48
+ exitCode: result.exitCode,
49
+ command: options.profile.command,
50
+ args: options.profile.args,
51
+ projectRoot: workspace.rootPath,
52
+ executionCwd: workspace.rootPath,
53
+ sandbox: options.profile.sandbox ?? null,
54
+ timeoutMs: options.profile.timeoutMs ?? null,
55
+ timedOut: result.timedOut,
56
+ agentSessionId: null,
57
+ codexSessionId: null,
58
+ resumed: false
59
+ });
60
+ if (result.exitCode !== 0) {
61
+ throw new Error(result.timedOut
62
+ ? `Executor '${options.executorName}' timed out after ${options.profile.timeoutMs}ms.`
63
+ : result.stderr.trim() || `Executor '${options.executorName}' exited with code ${result.exitCode}.`);
64
+ }
65
+ const resultPath = join(run.runDir, "review-result.json");
66
+ await writeJsonFile(resultPath, JSON.parse(result.stdout.trim()));
67
+ return { kind: "review", resultPath, runId: run.runId, executor: options.executorName, adapter: "local-review", agentSessionId: null, codexSessionId: null, ...result };
68
+ }
69
+ export async function runLocalReviewFeedback(options) {
70
+ const runRoot = join(options.workspaceResultsDir, "feedback-runs");
71
+ const runId = await nextRunId(runRoot);
72
+ const runDir = join(runRoot, runId);
73
+ const metadataPath = join(runDir, "metadata.json");
74
+ const stdoutPath = join(runDir, "stdout.md");
75
+ const stderrPath = join(runDir, "stderr.log");
76
+ const startedAt = new Date().toISOString();
77
+ await mkdir(runDir, { recursive: true });
78
+ await writeFile(join(runDir, "prompt.md"), options.claim.content, "utf8");
79
+ const tmux = await createTmuxSessionInfo({ runDir, runId, kind: "feedback", enabled: options.tmuxEnabled });
80
+ await writeJsonFile(metadataPath, {
81
+ runId,
82
+ executor: options.executorName,
83
+ adapter: "local-review",
84
+ projectRoot: options.projectRoot,
85
+ executionCwd: options.projectRoot,
86
+ startedAt,
87
+ finishedAt: null,
88
+ exitCode: null,
89
+ command: options.profile.command,
90
+ args: options.profile.args,
91
+ timeoutMs: options.profile.timeoutMs ?? null,
92
+ timedOut: false,
93
+ agentSessionId: null,
94
+ codexSessionId: null,
95
+ ...tmuxMetadataPatch(tmux)
96
+ });
97
+ const streamed = await execWithStreaming({
98
+ command: options.profile.command,
99
+ args: options.profile.args,
100
+ cwd: options.projectRoot,
101
+ stdin: options.claim.content,
102
+ env: planweaveExecutorEnv({ planweaveHome: options.planweaveHome }),
103
+ timeoutMs: options.profile.timeoutMs,
104
+ stdoutPath,
105
+ stderrPath,
106
+ tmux
107
+ });
108
+ const result = {
109
+ stdout: await readFile(stdoutPath, "utf8"),
110
+ stderr: await readFile(stderrPath, "utf8"),
111
+ exitCode: streamed.exitCode,
112
+ timedOut: streamed.timedOut
113
+ };
114
+ await finishRunMetadata(metadataPath, {
115
+ finishedAt: new Date().toISOString(),
116
+ exitCode: result.exitCode,
117
+ command: options.profile.command,
118
+ args: options.profile.args,
119
+ timeoutMs: options.profile.timeoutMs ?? null,
120
+ timedOut: result.timedOut,
121
+ agentSessionId: null,
122
+ codexSessionId: null
123
+ });
124
+ if (result.exitCode !== 0) {
125
+ throw new Error(result.timedOut
126
+ ? `Executor '${options.executorName}' timed out after ${options.profile.timeoutMs}ms.`
127
+ : result.stderr.trim() || `Executor '${options.executorName}' exited with code ${result.exitCode}.`);
128
+ }
129
+ const reportPath = join(runDir, "report.md");
130
+ await writeFile(reportPath, result.stdout, "utf8");
131
+ return { kind: "feedback", reportPath, runId, executor: options.executorName, adapter: "local-review", agentSessionId: null, codexSessionId: null, ...result };
132
+ }
133
+ //# sourceMappingURL=localReviewExecutor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localReviewExecutor.js","sourceRoot":"","sources":["../../src/autoRun/localReviewExecutor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { ExecutorAdapterResult, OpencodeExecExecutorProfile, PackageWorkspaceRef } from "../types.js";
2
+ import { type BlockClaim, type FeedbackClaim } from "./executorShared.js";
3
+ export declare function runOpencodeBlock(options: {
4
+ projectRoot: PackageWorkspaceRef;
5
+ claim: BlockClaim;
6
+ prompt: string;
7
+ executorName: string;
8
+ profile: OpencodeExecExecutorProfile;
9
+ tmuxEnabled?: boolean;
10
+ }): Promise<ExecutorAdapterResult>;
11
+ export declare function runOpencodeFeedback(options: {
12
+ projectRoot: string;
13
+ planweaveHome: string;
14
+ workspaceResultsDir: string;
15
+ claim: FeedbackClaim;
16
+ executorName: string;
17
+ profile: OpencodeExecExecutorProfile;
18
+ tmuxEnabled?: boolean;
19
+ }): Promise<ExecutorAdapterResult>;
20
+ //# sourceMappingURL=opencodeExecutor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencodeExecutor.d.ts","sourceRoot":"","sources":["../../src/autoRun/opencodeExecutor.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC3G,OAAO,EAAuE,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAkC/I,wBAAsB,gBAAgB,CAAC,OAAO,EAAE;IAC9C,WAAW,EAAE,mBAAmB,CAAC;IACjC,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,2BAA2B,CAAC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CA2GjC;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,KAAK,EAAE,aAAa,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,2BAA2B,CAAC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAiFjC"}