@synergenius/flow-weaver-pack-weaver 0.8.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 (459) hide show
  1. package/LICENSE +204 -0
  2. package/README.md +167 -0
  3. package/dist/bot/agent-provider.d.ts +34 -0
  4. package/dist/bot/agent-provider.d.ts.map +1 -0
  5. package/dist/bot/agent-provider.js +218 -0
  6. package/dist/bot/agent-provider.js.map +1 -0
  7. package/dist/bot/ai-client.d.ts +15 -0
  8. package/dist/bot/ai-client.d.ts.map +1 -0
  9. package/dist/bot/ai-client.js +128 -0
  10. package/dist/bot/ai-client.js.map +1 -0
  11. package/dist/bot/approvals.d.ts +22 -0
  12. package/dist/bot/approvals.d.ts.map +1 -0
  13. package/dist/bot/approvals.js +187 -0
  14. package/dist/bot/approvals.js.map +1 -0
  15. package/dist/bot/audit-logger.d.ts +5 -0
  16. package/dist/bot/audit-logger.d.ts.map +1 -0
  17. package/dist/bot/audit-logger.js +42 -0
  18. package/dist/bot/audit-logger.js.map +1 -0
  19. package/dist/bot/audit-store.d.ts +13 -0
  20. package/dist/bot/audit-store.d.ts.map +1 -0
  21. package/dist/bot/audit-store.js +59 -0
  22. package/dist/bot/audit-store.js.map +1 -0
  23. package/dist/bot/bot-agent-channel.d.ts +46 -0
  24. package/dist/bot/bot-agent-channel.d.ts.map +1 -0
  25. package/dist/bot/bot-agent-channel.js +58 -0
  26. package/dist/bot/bot-agent-channel.js.map +1 -0
  27. package/dist/bot/cli-provider.d.ts +29 -0
  28. package/dist/bot/cli-provider.d.ts.map +1 -0
  29. package/dist/bot/cli-provider.js +132 -0
  30. package/dist/bot/cli-provider.js.map +1 -0
  31. package/dist/bot/cli-stream-parser.d.ts +11 -0
  32. package/dist/bot/cli-stream-parser.d.ts.map +1 -0
  33. package/dist/bot/cli-stream-parser.js +53 -0
  34. package/dist/bot/cli-stream-parser.js.map +1 -0
  35. package/dist/bot/cost-store.d.ts +18 -0
  36. package/dist/bot/cost-store.d.ts.map +1 -0
  37. package/dist/bot/cost-store.js +81 -0
  38. package/dist/bot/cost-store.js.map +1 -0
  39. package/dist/bot/cost-tracker.d.ts +18 -0
  40. package/dist/bot/cost-tracker.d.ts.map +1 -0
  41. package/dist/bot/cost-tracker.js +60 -0
  42. package/dist/bot/cost-tracker.js.map +1 -0
  43. package/dist/bot/cron-parser.d.ts +5 -0
  44. package/dist/bot/cron-parser.d.ts.map +1 -0
  45. package/dist/bot/cron-parser.js +141 -0
  46. package/dist/bot/cron-parser.js.map +1 -0
  47. package/dist/bot/cron-scheduler.d.ts +12 -0
  48. package/dist/bot/cron-scheduler.d.ts.map +1 -0
  49. package/dist/bot/cron-scheduler.js +43 -0
  50. package/dist/bot/cron-scheduler.js.map +1 -0
  51. package/dist/bot/dashboard.d.ts +34 -0
  52. package/dist/bot/dashboard.d.ts.map +1 -0
  53. package/dist/bot/dashboard.js +602 -0
  54. package/dist/bot/dashboard.js.map +1 -0
  55. package/dist/bot/design-checker.d.ts +24 -0
  56. package/dist/bot/design-checker.d.ts.map +1 -0
  57. package/dist/bot/design-checker.js +269 -0
  58. package/dist/bot/design-checker.js.map +1 -0
  59. package/dist/bot/file-lock.d.ts +7 -0
  60. package/dist/bot/file-lock.d.ts.map +1 -0
  61. package/dist/bot/file-lock.js +64 -0
  62. package/dist/bot/file-lock.js.map +1 -0
  63. package/dist/bot/file-validator.d.ts +10 -0
  64. package/dist/bot/file-validator.d.ts.map +1 -0
  65. package/dist/bot/file-validator.js +27 -0
  66. package/dist/bot/file-validator.js.map +1 -0
  67. package/dist/bot/file-watcher.d.ts +24 -0
  68. package/dist/bot/file-watcher.d.ts.map +1 -0
  69. package/dist/bot/file-watcher.js +98 -0
  70. package/dist/bot/file-watcher.js.map +1 -0
  71. package/dist/bot/fw-api.d.ts +8 -0
  72. package/dist/bot/fw-api.d.ts.map +1 -0
  73. package/dist/bot/fw-api.js +12 -0
  74. package/dist/bot/fw-api.js.map +1 -0
  75. package/dist/bot/genesis-prompt-context.d.ts +31 -0
  76. package/dist/bot/genesis-prompt-context.d.ts.map +1 -0
  77. package/dist/bot/genesis-prompt-context.js +121 -0
  78. package/dist/bot/genesis-prompt-context.js.map +1 -0
  79. package/dist/bot/genesis-store.d.ts +28 -0
  80. package/dist/bot/genesis-store.d.ts.map +1 -0
  81. package/dist/bot/genesis-store.js +154 -0
  82. package/dist/bot/genesis-store.js.map +1 -0
  83. package/dist/bot/index.d.ts +38 -0
  84. package/dist/bot/index.d.ts.map +1 -0
  85. package/dist/bot/index.js +37 -0
  86. package/dist/bot/index.js.map +1 -0
  87. package/dist/bot/notifications.d.ts +20 -0
  88. package/dist/bot/notifications.d.ts.map +1 -0
  89. package/dist/bot/notifications.js +215 -0
  90. package/dist/bot/notifications.js.map +1 -0
  91. package/dist/bot/pipeline-runner.d.ts +22 -0
  92. package/dist/bot/pipeline-runner.d.ts.map +1 -0
  93. package/dist/bot/pipeline-runner.js +263 -0
  94. package/dist/bot/pipeline-runner.js.map +1 -0
  95. package/dist/bot/provider-registry.d.ts +26 -0
  96. package/dist/bot/provider-registry.d.ts.map +1 -0
  97. package/dist/bot/provider-registry.js +175 -0
  98. package/dist/bot/provider-registry.js.map +1 -0
  99. package/dist/bot/run-store.d.ts +25 -0
  100. package/dist/bot/run-store.d.ts.map +1 -0
  101. package/dist/bot/run-store.js +156 -0
  102. package/dist/bot/run-store.js.map +1 -0
  103. package/dist/bot/runner.d.ts +13 -0
  104. package/dist/bot/runner.d.ts.map +1 -0
  105. package/dist/bot/runner.js +244 -0
  106. package/dist/bot/runner.js.map +1 -0
  107. package/dist/bot/session-state.d.ts +19 -0
  108. package/dist/bot/session-state.d.ts.map +1 -0
  109. package/dist/bot/session-state.js +65 -0
  110. package/dist/bot/session-state.js.map +1 -0
  111. package/dist/bot/steering.d.ts +13 -0
  112. package/dist/bot/steering.d.ts.map +1 -0
  113. package/dist/bot/steering.js +40 -0
  114. package/dist/bot/steering.js.map +1 -0
  115. package/dist/bot/step-executor.d.ts +10 -0
  116. package/dist/bot/step-executor.d.ts.map +1 -0
  117. package/dist/bot/step-executor.js +30 -0
  118. package/dist/bot/step-executor.js.map +1 -0
  119. package/dist/bot/system-prompt.d.ts +19 -0
  120. package/dist/bot/system-prompt.d.ts.map +1 -0
  121. package/dist/bot/system-prompt.js +222 -0
  122. package/dist/bot/system-prompt.js.map +1 -0
  123. package/dist/bot/task-queue.d.ts +26 -0
  124. package/dist/bot/task-queue.d.ts.map +1 -0
  125. package/dist/bot/task-queue.js +98 -0
  126. package/dist/bot/task-queue.js.map +1 -0
  127. package/dist/bot/types.d.ts +478 -0
  128. package/dist/bot/types.d.ts.map +1 -0
  129. package/dist/bot/types.js +2 -0
  130. package/dist/bot/types.js.map +1 -0
  131. package/dist/bot/utils.d.ts +2 -0
  132. package/dist/bot/utils.d.ts.map +1 -0
  133. package/dist/bot/utils.js +20 -0
  134. package/dist/bot/utils.js.map +1 -0
  135. package/dist/bot/watch-daemon.d.ts +19 -0
  136. package/dist/bot/watch-daemon.d.ts.map +1 -0
  137. package/dist/bot/watch-daemon.js +178 -0
  138. package/dist/bot/watch-daemon.js.map +1 -0
  139. package/dist/bot/web-approval.d.ts +19 -0
  140. package/dist/bot/web-approval.d.ts.map +1 -0
  141. package/dist/bot/web-approval.js +207 -0
  142. package/dist/bot/web-approval.js.map +1 -0
  143. package/dist/cli-bridge.d.ts +2 -0
  144. package/dist/cli-bridge.d.ts.map +1 -0
  145. package/dist/cli-bridge.js +30 -0
  146. package/dist/cli-bridge.js.map +1 -0
  147. package/dist/cli-handlers.d.ts +79 -0
  148. package/dist/cli-handlers.d.ts.map +1 -0
  149. package/dist/cli-handlers.js +1335 -0
  150. package/dist/cli-handlers.js.map +1 -0
  151. package/dist/cli.d.ts +3 -0
  152. package/dist/cli.d.ts.map +1 -0
  153. package/dist/cli.js +749 -0
  154. package/dist/cli.js.map +1 -0
  155. package/dist/docs/docs/weaver-config.md +135 -0
  156. package/dist/docs/weaver-config.md +141 -0
  157. package/dist/index.d.ts +30 -0
  158. package/dist/index.d.ts.map +1 -0
  159. package/dist/index.js +37 -0
  160. package/dist/index.js.map +1 -0
  161. package/dist/mcp-tools.d.ts +13 -0
  162. package/dist/mcp-tools.d.ts.map +1 -0
  163. package/dist/mcp-tools.js +197 -0
  164. package/dist/mcp-tools.js.map +1 -0
  165. package/dist/node-types/abort-task.d.ts +15 -0
  166. package/dist/node-types/abort-task.d.ts.map +1 -0
  167. package/dist/node-types/abort-task.js +28 -0
  168. package/dist/node-types/abort-task.js.map +1 -0
  169. package/dist/node-types/approval-gate.d.ts +18 -0
  170. package/dist/node-types/approval-gate.d.ts.map +1 -0
  171. package/dist/node-types/approval-gate.js +80 -0
  172. package/dist/node-types/approval-gate.js.map +1 -0
  173. package/dist/node-types/bot-report.d.ts +20 -0
  174. package/dist/node-types/bot-report.d.ts.map +1 -0
  175. package/dist/node-types/bot-report.js +67 -0
  176. package/dist/node-types/bot-report.js.map +1 -0
  177. package/dist/node-types/build-context.d.ts +16 -0
  178. package/dist/node-types/build-context.d.ts.map +1 -0
  179. package/dist/node-types/build-context.js +64 -0
  180. package/dist/node-types/build-context.js.map +1 -0
  181. package/dist/node-types/detect-provider.d.ts +17 -0
  182. package/dist/node-types/detect-provider.d.ts.map +1 -0
  183. package/dist/node-types/detect-provider.js +71 -0
  184. package/dist/node-types/detect-provider.js.map +1 -0
  185. package/dist/node-types/exec-validate-retry.d.ts +17 -0
  186. package/dist/node-types/exec-validate-retry.d.ts.map +1 -0
  187. package/dist/node-types/exec-validate-retry.js +147 -0
  188. package/dist/node-types/exec-validate-retry.js.map +1 -0
  189. package/dist/node-types/execute-plan.d.ts +26 -0
  190. package/dist/node-types/execute-plan.d.ts.map +1 -0
  191. package/dist/node-types/execute-plan.js +120 -0
  192. package/dist/node-types/execute-plan.js.map +1 -0
  193. package/dist/node-types/execute-target.d.ts +16 -0
  194. package/dist/node-types/execute-target.d.ts.map +1 -0
  195. package/dist/node-types/execute-target.js +238 -0
  196. package/dist/node-types/execute-target.js.map +1 -0
  197. package/dist/node-types/fix-errors.d.ts +24 -0
  198. package/dist/node-types/fix-errors.d.ts.map +1 -0
  199. package/dist/node-types/fix-errors.js +49 -0
  200. package/dist/node-types/fix-errors.js.map +1 -0
  201. package/dist/node-types/genesis-apply-retry.d.ts +27 -0
  202. package/dist/node-types/genesis-apply-retry.d.ts.map +1 -0
  203. package/dist/node-types/genesis-apply-retry.js +97 -0
  204. package/dist/node-types/genesis-apply-retry.js.map +1 -0
  205. package/dist/node-types/genesis-apply.d.ts +29 -0
  206. package/dist/node-types/genesis-apply.d.ts.map +1 -0
  207. package/dist/node-types/genesis-apply.js +76 -0
  208. package/dist/node-types/genesis-apply.js.map +1 -0
  209. package/dist/node-types/genesis-approve.d.ts +19 -0
  210. package/dist/node-types/genesis-approve.d.ts.map +1 -0
  211. package/dist/node-types/genesis-approve.js +59 -0
  212. package/dist/node-types/genesis-approve.js.map +1 -0
  213. package/dist/node-types/genesis-check-stabilize.d.ts +16 -0
  214. package/dist/node-types/genesis-check-stabilize.d.ts.map +1 -0
  215. package/dist/node-types/genesis-check-stabilize.js +32 -0
  216. package/dist/node-types/genesis-check-stabilize.js.map +1 -0
  217. package/dist/node-types/genesis-check-threshold.d.ts +15 -0
  218. package/dist/node-types/genesis-check-threshold.d.ts.map +1 -0
  219. package/dist/node-types/genesis-check-threshold.js +29 -0
  220. package/dist/node-types/genesis-check-threshold.js.map +1 -0
  221. package/dist/node-types/genesis-commit.d.ts +17 -0
  222. package/dist/node-types/genesis-commit.d.ts.map +1 -0
  223. package/dist/node-types/genesis-commit.js +59 -0
  224. package/dist/node-types/genesis-commit.js.map +1 -0
  225. package/dist/node-types/genesis-compile-validate.d.ts +26 -0
  226. package/dist/node-types/genesis-compile-validate.d.ts.map +1 -0
  227. package/dist/node-types/genesis-compile-validate.js +60 -0
  228. package/dist/node-types/genesis-compile-validate.js.map +1 -0
  229. package/dist/node-types/genesis-diff-fingerprint.d.ts +15 -0
  230. package/dist/node-types/genesis-diff-fingerprint.d.ts.map +1 -0
  231. package/dist/node-types/genesis-diff-fingerprint.js +59 -0
  232. package/dist/node-types/genesis-diff-fingerprint.js.map +1 -0
  233. package/dist/node-types/genesis-diff-workflow.d.ts +15 -0
  234. package/dist/node-types/genesis-diff-workflow.d.ts.map +1 -0
  235. package/dist/node-types/genesis-diff-workflow.js +67 -0
  236. package/dist/node-types/genesis-diff-workflow.js.map +1 -0
  237. package/dist/node-types/genesis-escrow-grace.d.ts +15 -0
  238. package/dist/node-types/genesis-escrow-grace.d.ts.map +1 -0
  239. package/dist/node-types/genesis-escrow-grace.js +52 -0
  240. package/dist/node-types/genesis-escrow-grace.js.map +1 -0
  241. package/dist/node-types/genesis-escrow-migrate.d.ts +21 -0
  242. package/dist/node-types/genesis-escrow-migrate.d.ts.map +1 -0
  243. package/dist/node-types/genesis-escrow-migrate.js +116 -0
  244. package/dist/node-types/genesis-escrow-migrate.js.map +1 -0
  245. package/dist/node-types/genesis-escrow-recover.d.ts +15 -0
  246. package/dist/node-types/genesis-escrow-recover.d.ts.map +1 -0
  247. package/dist/node-types/genesis-escrow-recover.js +90 -0
  248. package/dist/node-types/genesis-escrow-recover.js.map +1 -0
  249. package/dist/node-types/genesis-escrow-stage.d.ts +17 -0
  250. package/dist/node-types/genesis-escrow-stage.d.ts.map +1 -0
  251. package/dist/node-types/genesis-escrow-stage.js +86 -0
  252. package/dist/node-types/genesis-escrow-stage.js.map +1 -0
  253. package/dist/node-types/genesis-escrow-validate.d.ts +17 -0
  254. package/dist/node-types/genesis-escrow-validate.d.ts.map +1 -0
  255. package/dist/node-types/genesis-escrow-validate.js +110 -0
  256. package/dist/node-types/genesis-escrow-validate.js.map +1 -0
  257. package/dist/node-types/genesis-load-config.d.ts +17 -0
  258. package/dist/node-types/genesis-load-config.d.ts.map +1 -0
  259. package/dist/node-types/genesis-load-config.js +36 -0
  260. package/dist/node-types/genesis-load-config.js.map +1 -0
  261. package/dist/node-types/genesis-observe.d.ts +18 -0
  262. package/dist/node-types/genesis-observe.d.ts.map +1 -0
  263. package/dist/node-types/genesis-observe.js +103 -0
  264. package/dist/node-types/genesis-observe.js.map +1 -0
  265. package/dist/node-types/genesis-propose.d.ts +17 -0
  266. package/dist/node-types/genesis-propose.d.ts.map +1 -0
  267. package/dist/node-types/genesis-propose.js +69 -0
  268. package/dist/node-types/genesis-propose.js.map +1 -0
  269. package/dist/node-types/genesis-report.d.ts +20 -0
  270. package/dist/node-types/genesis-report.d.ts.map +1 -0
  271. package/dist/node-types/genesis-report.js +87 -0
  272. package/dist/node-types/genesis-report.js.map +1 -0
  273. package/dist/node-types/genesis-snapshot.d.ts +15 -0
  274. package/dist/node-types/genesis-snapshot.d.ts.map +1 -0
  275. package/dist/node-types/genesis-snapshot.js +26 -0
  276. package/dist/node-types/genesis-snapshot.js.map +1 -0
  277. package/dist/node-types/genesis-try-apply.d.ts +18 -0
  278. package/dist/node-types/genesis-try-apply.d.ts.map +1 -0
  279. package/dist/node-types/genesis-try-apply.js +142 -0
  280. package/dist/node-types/genesis-try-apply.js.map +1 -0
  281. package/dist/node-types/genesis-update-history.d.ts +15 -0
  282. package/dist/node-types/genesis-update-history.d.ts.map +1 -0
  283. package/dist/node-types/genesis-update-history.js +70 -0
  284. package/dist/node-types/genesis-update-history.js.map +1 -0
  285. package/dist/node-types/genesis-validate-proposal.d.ts +16 -0
  286. package/dist/node-types/genesis-validate-proposal.d.ts.map +1 -0
  287. package/dist/node-types/genesis-validate-proposal.js +109 -0
  288. package/dist/node-types/genesis-validate-proposal.js.map +1 -0
  289. package/dist/node-types/git-ops.d.ts +15 -0
  290. package/dist/node-types/git-ops.d.ts.map +1 -0
  291. package/dist/node-types/git-ops.js +69 -0
  292. package/dist/node-types/git-ops.js.map +1 -0
  293. package/dist/node-types/index.d.ts +37 -0
  294. package/dist/node-types/index.d.ts.map +1 -0
  295. package/dist/node-types/index.js +37 -0
  296. package/dist/node-types/index.js.map +1 -0
  297. package/dist/node-types/load-config.d.ts +17 -0
  298. package/dist/node-types/load-config.d.ts.map +1 -0
  299. package/dist/node-types/load-config.js +27 -0
  300. package/dist/node-types/load-config.js.map +1 -0
  301. package/dist/node-types/plan-task.d.ts +17 -0
  302. package/dist/node-types/plan-task.d.ts.map +1 -0
  303. package/dist/node-types/plan-task.js +55 -0
  304. package/dist/node-types/plan-task.js.map +1 -0
  305. package/dist/node-types/read-workflow.d.ts +15 -0
  306. package/dist/node-types/read-workflow.d.ts.map +1 -0
  307. package/dist/node-types/read-workflow.js +60 -0
  308. package/dist/node-types/read-workflow.js.map +1 -0
  309. package/dist/node-types/receive-task.d.ts +20 -0
  310. package/dist/node-types/receive-task.d.ts.map +1 -0
  311. package/dist/node-types/receive-task.js +69 -0
  312. package/dist/node-types/receive-task.js.map +1 -0
  313. package/dist/node-types/report.d.ts +14 -0
  314. package/dist/node-types/report.d.ts.map +1 -0
  315. package/dist/node-types/report.js +25 -0
  316. package/dist/node-types/report.js.map +1 -0
  317. package/dist/node-types/resolve-target.d.ts +16 -0
  318. package/dist/node-types/resolve-target.d.ts.map +1 -0
  319. package/dist/node-types/resolve-target.js +67 -0
  320. package/dist/node-types/resolve-target.js.map +1 -0
  321. package/dist/node-types/route-task.d.ts +14 -0
  322. package/dist/node-types/route-task.d.ts.map +1 -0
  323. package/dist/node-types/route-task.js +22 -0
  324. package/dist/node-types/route-task.js.map +1 -0
  325. package/dist/node-types/send-notify.d.ts +14 -0
  326. package/dist/node-types/send-notify.d.ts.map +1 -0
  327. package/dist/node-types/send-notify.js +71 -0
  328. package/dist/node-types/send-notify.js.map +1 -0
  329. package/dist/node-types/validate-result.d.ts +24 -0
  330. package/dist/node-types/validate-result.d.ts.map +1 -0
  331. package/dist/node-types/validate-result.js +38 -0
  332. package/dist/node-types/validate-result.js.map +1 -0
  333. package/dist/templates/index.d.ts +5 -0
  334. package/dist/templates/index.d.ts.map +1 -0
  335. package/dist/templates/index.js +4 -0
  336. package/dist/templates/index.js.map +1 -0
  337. package/dist/templates/weaver-bot-template.d.ts +11 -0
  338. package/dist/templates/weaver-bot-template.d.ts.map +1 -0
  339. package/dist/templates/weaver-bot-template.js +99 -0
  340. package/dist/templates/weaver-bot-template.js.map +1 -0
  341. package/dist/templates/weaver-template.d.ts +11 -0
  342. package/dist/templates/weaver-template.d.ts.map +1 -0
  343. package/dist/templates/weaver-template.js +53 -0
  344. package/dist/templates/weaver-template.js.map +1 -0
  345. package/dist/workflows/genesis-task.d.ts +62 -0
  346. package/dist/workflows/genesis-task.d.ts.map +1 -0
  347. package/dist/workflows/genesis-task.js +64 -0
  348. package/dist/workflows/genesis-task.js.map +1 -0
  349. package/dist/workflows/index.d.ts +4 -0
  350. package/dist/workflows/index.d.ts.map +1 -0
  351. package/dist/workflows/index.js +4 -0
  352. package/dist/workflows/index.js.map +1 -0
  353. package/dist/workflows/weaver-bot-batch.d.ts +49 -0
  354. package/dist/workflows/weaver-bot-batch.d.ts.map +1 -0
  355. package/dist/workflows/weaver-bot-batch.js +49 -0
  356. package/dist/workflows/weaver-bot-batch.js.map +1 -0
  357. package/dist/workflows/weaver-bot-session.d.ts +65 -0
  358. package/dist/workflows/weaver-bot-session.d.ts.map +1 -0
  359. package/dist/workflows/weaver-bot-session.js +68 -0
  360. package/dist/workflows/weaver-bot-session.js.map +1 -0
  361. package/dist/workflows/weaver-bot.d.ts +61 -0
  362. package/dist/workflows/weaver-bot.d.ts.map +1 -0
  363. package/dist/workflows/weaver-bot.js +61 -0
  364. package/dist/workflows/weaver-bot.js.map +1 -0
  365. package/dist/workflows/weaver.d.ts +24 -0
  366. package/dist/workflows/weaver.d.ts.map +1 -0
  367. package/dist/workflows/weaver.js +28 -0
  368. package/dist/workflows/weaver.js.map +1 -0
  369. package/flowweaver.manifest.json +1001 -0
  370. package/package.json +78 -0
  371. package/src/bot/agent-provider.ts +273 -0
  372. package/src/bot/ai-client.ts +153 -0
  373. package/src/bot/approvals.ts +273 -0
  374. package/src/bot/audit-logger.ts +45 -0
  375. package/src/bot/audit-store.ts +69 -0
  376. package/src/bot/bot-agent-channel.ts +99 -0
  377. package/src/bot/cli-provider.ts +169 -0
  378. package/src/bot/cli-stream-parser.ts +59 -0
  379. package/src/bot/cost-store.ts +92 -0
  380. package/src/bot/cost-tracker.ts +72 -0
  381. package/src/bot/cron-parser.ts +153 -0
  382. package/src/bot/cron-scheduler.ts +48 -0
  383. package/src/bot/dashboard.ts +658 -0
  384. package/src/bot/design-checker.ts +327 -0
  385. package/src/bot/file-lock.ts +73 -0
  386. package/src/bot/file-validator.ts +41 -0
  387. package/src/bot/file-watcher.ts +103 -0
  388. package/src/bot/fw-api.ts +18 -0
  389. package/src/bot/genesis-prompt-context.ts +135 -0
  390. package/src/bot/genesis-store.ts +180 -0
  391. package/src/bot/index.ts +127 -0
  392. package/src/bot/notifications.ts +263 -0
  393. package/src/bot/pipeline-runner.ts +324 -0
  394. package/src/bot/provider-registry.ts +236 -0
  395. package/src/bot/run-store.ts +169 -0
  396. package/src/bot/runner.ts +311 -0
  397. package/src/bot/session-state.ts +73 -0
  398. package/src/bot/steering.ts +44 -0
  399. package/src/bot/step-executor.ts +34 -0
  400. package/src/bot/system-prompt.ts +280 -0
  401. package/src/bot/task-queue.ts +111 -0
  402. package/src/bot/types.ts +571 -0
  403. package/src/bot/utils.ts +17 -0
  404. package/src/bot/watch-daemon.ts +203 -0
  405. package/src/bot/web-approval.ts +240 -0
  406. package/src/cli-bridge.ts +41 -0
  407. package/src/cli-handlers.ts +1445 -0
  408. package/src/docs/weaver-config.md +135 -0
  409. package/src/index.ts +177 -0
  410. package/src/mcp-tools.ts +274 -0
  411. package/src/node-types/abort-task.ts +31 -0
  412. package/src/node-types/approval-gate.ts +95 -0
  413. package/src/node-types/bot-report.ts +82 -0
  414. package/src/node-types/build-context.ts +65 -0
  415. package/src/node-types/detect-provider.ts +77 -0
  416. package/src/node-types/exec-validate-retry.ts +170 -0
  417. package/src/node-types/execute-plan.ts +130 -0
  418. package/src/node-types/execute-target.ts +256 -0
  419. package/src/node-types/fix-errors.ts +63 -0
  420. package/src/node-types/genesis-apply-retry.ts +133 -0
  421. package/src/node-types/genesis-apply.ts +96 -0
  422. package/src/node-types/genesis-approve.ts +73 -0
  423. package/src/node-types/genesis-check-stabilize.ts +37 -0
  424. package/src/node-types/genesis-check-threshold.ts +34 -0
  425. package/src/node-types/genesis-commit.ts +71 -0
  426. package/src/node-types/genesis-compile-validate.ts +77 -0
  427. package/src/node-types/genesis-diff-fingerprint.ts +67 -0
  428. package/src/node-types/genesis-diff-workflow.ts +71 -0
  429. package/src/node-types/genesis-escrow-grace.ts +62 -0
  430. package/src/node-types/genesis-escrow-migrate.ts +138 -0
  431. package/src/node-types/genesis-escrow-recover.ts +99 -0
  432. package/src/node-types/genesis-escrow-stage.ts +104 -0
  433. package/src/node-types/genesis-escrow-validate.ts +120 -0
  434. package/src/node-types/genesis-load-config.ts +44 -0
  435. package/src/node-types/genesis-observe.ts +119 -0
  436. package/src/node-types/genesis-propose.ts +86 -0
  437. package/src/node-types/genesis-report.ts +95 -0
  438. package/src/node-types/genesis-snapshot.ts +30 -0
  439. package/src/node-types/genesis-try-apply.ts +165 -0
  440. package/src/node-types/genesis-update-history.ts +72 -0
  441. package/src/node-types/genesis-validate-proposal.ts +124 -0
  442. package/src/node-types/git-ops.ts +72 -0
  443. package/src/node-types/index.ts +36 -0
  444. package/src/node-types/load-config.ts +27 -0
  445. package/src/node-types/plan-task.ts +66 -0
  446. package/src/node-types/read-workflow.ts +68 -0
  447. package/src/node-types/receive-task.ts +92 -0
  448. package/src/node-types/report.ts +25 -0
  449. package/src/node-types/resolve-target.ts +64 -0
  450. package/src/node-types/route-task.ts +25 -0
  451. package/src/node-types/send-notify.ts +75 -0
  452. package/src/node-types/validate-result.ts +49 -0
  453. package/src/templates/index.ts +5 -0
  454. package/src/templates/weaver-bot-template.ts +106 -0
  455. package/src/workflows/genesis-task.ts +91 -0
  456. package/src/workflows/index.ts +3 -0
  457. package/src/workflows/weaver-bot-batch.ts +65 -0
  458. package/src/workflows/weaver-bot.ts +79 -0
  459. package/templates.js +1 -0
@@ -0,0 +1,49 @@
1
+ import { callAI, parseJsonResponse } from '../bot/ai-client.js';
2
+ /**
3
+ * When validation fails, sends errors + context to the AI and
4
+ * asks it to produce a repair plan.
5
+ *
6
+ * @flowWeaver nodeType
7
+ * @label Fix Errors
8
+ * @input env [order:0] - Weaver environment bundle
9
+ * @input validationResultJson [order:1] - Validation results (JSON)
10
+ * @input taskJson [order:2] - Task (JSON, pass-through)
11
+ * @output env [order:0] - Weaver environment bundle (pass-through)
12
+ * @output fixPlanJson [order:1] - Fix plan (JSON, same schema as planJson)
13
+ * @output taskJson [order:2] - Task (pass-through)
14
+ * @output onSuccess [order:-2] - On Success
15
+ * @output onFailure [order:-1] - On Failure
16
+ */
17
+ export async function weaverFixErrors(execute, env, validationResultJson, taskJson) {
18
+ if (!execute) {
19
+ return { onSuccess: true, onFailure: false, env, taskJson, fixPlanJson: '{"steps":[],"summary":"dry run"}' };
20
+ }
21
+ const { providerInfo: pInfo } = env;
22
+ const validation = JSON.parse(validationResultJson);
23
+ const errors = validation.filter(v => !v.valid);
24
+ if (errors.length === 0) {
25
+ return { onSuccess: true, onFailure: false, env, taskJson, fixPlanJson: '{"steps":[],"summary":"no errors to fix"}' };
26
+ }
27
+ let systemPrompt;
28
+ try {
29
+ const mod = await import('../bot/system-prompt.js');
30
+ systemPrompt = await mod.buildSystemPrompt();
31
+ }
32
+ catch {
33
+ systemPrompt = 'You are Weaver. Return ONLY valid JSON.';
34
+ }
35
+ const errorSummary = errors.map(e => `${e.file}: ${e.errors.join(', ')}`).join('\n');
36
+ const userPrompt = `The following validation errors occurred:\n${errorSummary}\n\nProvide a fix plan as JSON with "steps" and "summary". Each step needs "id", "operation", "description", and "args".`;
37
+ try {
38
+ const text = await callAI(pInfo, systemPrompt, userPrompt, 8192);
39
+ const plan = parseJsonResponse(text);
40
+ console.log(`\x1b[36m→ Fix plan: ${plan.summary ?? 'generated'}\x1b[0m`);
41
+ return { onSuccess: true, onFailure: false, env, taskJson, fixPlanJson: JSON.stringify(plan) };
42
+ }
43
+ catch (err) {
44
+ const msg = err instanceof Error ? err.message : String(err);
45
+ console.error(`\x1b[31m→ Fix planning failed: ${msg}\x1b[0m`);
46
+ return { onSuccess: false, onFailure: true, env, taskJson, fixPlanJson: JSON.stringify({ steps: [], summary: `Fix failed: ${msg}` }) };
47
+ }
48
+ }
49
+ //# sourceMappingURL=fix-errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fix-errors.js","sourceRoot":"","sources":["../../src/node-types/fix-errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAEhE;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,OAAgB,EAChB,GAAc,EACd,oBAA4B,EAC5B,QAAgB;IAMhB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,kCAAkC,EAAE,CAAC;IAC/G,CAAC;IAED,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;IACpC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAA8D,CAAC;IACjH,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEhD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,2CAA2C,EAAE,CAAC;IACxH,CAAC;IAED,IAAI,YAAoB,CAAC;IACzB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;QACpD,YAAY,GAAG,MAAM,GAAG,CAAC,iBAAiB,EAAE,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,YAAY,GAAG,yCAAyC,CAAC;IAC3D,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrF,MAAM,UAAU,GAAG,8CAA8C,YAAY,0HAA0H,CAAC;IAExM,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QAEjE,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,uBAAwB,IAA6B,CAAC,OAAO,IAAI,WAAW,SAAS,CAAC,CAAC;QACnG,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;IACjG,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,OAAO,CAAC,KAAK,CAAC,kCAAkC,GAAG,SAAS,CAAC,CAAC;QAC9D,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,eAAe,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC;IACzI,CAAC;AACH,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Scoped retry loop for apply + compile. Delegates the actual work to
3
+ * a child node via the attempt callback, and between failures restores
4
+ * the snapshot and asks the AI to revise the proposal.
5
+ *
6
+ * @flowWeaver nodeType
7
+ * @label Genesis Apply Retry
8
+ * @input ctx [order:0] - Genesis context (JSON)
9
+ * @output start scope:attempt [order:10] [hidden] - Trigger scope execution (boolean)
10
+ * @output attemptCtx scope:attempt [order:11] - Context for child (JSON)
11
+ * @input success scope:attempt [order:12] [hidden] - Success signal from child (boolean)
12
+ * @input failure scope:attempt [order:13] [hidden] - Failure signal from child (boolean)
13
+ * @input attemptCtx scope:attempt [order:14] - Result context from child (JSON)
14
+ * @output ctx [order:0] - Genesis context with applyResultJson (JSON)
15
+ * @output onSuccess [order:-2] - On Success
16
+ * @output onFailure [order:-1] - On Failure
17
+ */
18
+ export declare function genesisApplyRetry(execute: boolean, ctx: string, attempt: (start: boolean, attemptCtx: string) => Promise<{
19
+ success: boolean;
20
+ failure: boolean;
21
+ attemptCtx: string;
22
+ }>): Promise<{
23
+ onSuccess: boolean;
24
+ onFailure: boolean;
25
+ ctx: string;
26
+ }>;
27
+ //# sourceMappingURL=genesis-apply-retry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genesis-apply-retry.d.ts","sourceRoot":"","sources":["../../src/node-types/genesis-apply-retry.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,CACP,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,MAAM,KACf,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,GACvE,OAAO,CAAC;IACT,SAAS,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IACvC,GAAG,EAAE,MAAM,CAAC;CACb,CAAC,CA8DD"}
@@ -0,0 +1,97 @@
1
+ import * as fs from 'node:fs';
2
+ import * as path from 'node:path';
3
+ import { callAI, parseJsonResponse } from '../bot/ai-client.js';
4
+ import { GenesisStore } from '../bot/genesis-store.js';
5
+ import { getGenesisSystemPrompt, getOperationExamples } from '../bot/genesis-prompt-context.js';
6
+ /**
7
+ * Scoped retry loop for apply + compile. Delegates the actual work to
8
+ * a child node via the attempt callback, and between failures restores
9
+ * the snapshot and asks the AI to revise the proposal.
10
+ *
11
+ * @flowWeaver nodeType
12
+ * @label Genesis Apply Retry
13
+ * @input ctx [order:0] - Genesis context (JSON)
14
+ * @output start scope:attempt [order:10] [hidden] - Trigger scope execution (boolean)
15
+ * @output attemptCtx scope:attempt [order:11] - Context for child (JSON)
16
+ * @input success scope:attempt [order:12] [hidden] - Success signal from child (boolean)
17
+ * @input failure scope:attempt [order:13] [hidden] - Failure signal from child (boolean)
18
+ * @input attemptCtx scope:attempt [order:14] - Result context from child (JSON)
19
+ * @output ctx [order:0] - Genesis context with applyResultJson (JSON)
20
+ * @output onSuccess [order:-2] - On Success
21
+ * @output onFailure [order:-1] - On Failure
22
+ */
23
+ export async function genesisApplyRetry(execute, ctx, attempt) {
24
+ const context = JSON.parse(ctx);
25
+ if (!execute) {
26
+ const result = { applied: 0, failed: 0, errors: [] };
27
+ context.applyResultJson = JSON.stringify(result);
28
+ context.error = '';
29
+ return { onSuccess: true, onFailure: false, ctx: JSON.stringify(context) };
30
+ }
31
+ const { env } = context;
32
+ const maxAttempts = 3;
33
+ let lastResult = '';
34
+ let lastErrors = '';
35
+ for (let i = 1; i <= maxAttempts; i++) {
36
+ console.log(`\x1b[36m→ Apply attempt ${i}/${maxAttempts}\x1b[0m`);
37
+ const outcome = await attempt(true, JSON.stringify(context));
38
+ const childCtx = JSON.parse(outcome.attemptCtx);
39
+ lastResult = childCtx.applyResultJson ?? '';
40
+ lastErrors = childCtx.error ?? '';
41
+ if (outcome.success) {
42
+ context.applyResultJson = childCtx.applyResultJson;
43
+ context.error = '';
44
+ return { onSuccess: true, onFailure: false, ctx: JSON.stringify(context) };
45
+ }
46
+ if (i < maxAttempts) {
47
+ console.log('\x1b[33m→ Requesting revised proposal from AI...\x1b[0m');
48
+ const config = JSON.parse(context.genesisConfigJson);
49
+ const targetPath = path.resolve(env.projectDir, config.targetWorkflow);
50
+ const store = new GenesisStore(env.projectDir);
51
+ const snapshot = store.loadSnapshot(context.snapshotPath);
52
+ if (snapshot) {
53
+ fs.writeFileSync(targetPath, snapshot, 'utf-8');
54
+ }
55
+ try {
56
+ const revisedProposal = await reviseProposal(env, config, context.proposalJson, lastErrors, targetPath, context.workflowDescription, !!context.stabilized);
57
+ context.proposalJson = revisedProposal;
58
+ console.log('\x1b[36m→ Revised proposal received\x1b[0m');
59
+ }
60
+ catch (err) {
61
+ const msg = err instanceof Error ? err.message : String(err);
62
+ console.error(`\x1b[31m→ AI revision failed: ${msg}\x1b[0m`);
63
+ break;
64
+ }
65
+ }
66
+ }
67
+ const errorDesc = lastErrors
68
+ ? `Apply/compile failed after ${maxAttempts} attempts. Last errors: ${lastErrors}`
69
+ : `Apply failed after ${maxAttempts} attempts (all operations failed)`;
70
+ context.applyResultJson = lastResult;
71
+ context.error = errorDesc;
72
+ return { onSuccess: false, onFailure: true, ctx: JSON.stringify(context) };
73
+ }
74
+ async function reviseProposal(env, config, currentProposal, compileErrors, targetPath, workflowDescription, stabilized) {
75
+ const { providerInfo: pInfo } = env;
76
+ const systemPrompt = await getGenesisSystemPrompt(config, !!stabilized);
77
+ const userPrompt = [
78
+ 'The following proposal caused errors when applied. Revise it to fix these errors.',
79
+ '',
80
+ '## Current Workflow Structure',
81
+ workflowDescription || '(no description available)',
82
+ '',
83
+ '## Failed Proposal',
84
+ currentProposal,
85
+ '',
86
+ '## Errors',
87
+ compileErrors,
88
+ '',
89
+ getOperationExamples(targetPath),
90
+ '',
91
+ 'Return the full revised proposal as JSON. Use node IDs and port names that exist in the workflow structure above.',
92
+ ].join('\n');
93
+ const text = await callAI(pInfo, systemPrompt, userPrompt, 8192);
94
+ const parsed = parseJsonResponse(text);
95
+ return JSON.stringify(parsed);
96
+ }
97
+ //# sourceMappingURL=genesis-apply-retry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genesis-apply-retry.js","sourceRoot":"","sources":["../../src/node-types/genesis-apply-retry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { WeaverEnv } from '../bot/types.js';
2
+ /**
3
+ * Applies proposal operations to the target workflow by invoking the
4
+ * flow-weaver CLI modify command for each operation.
5
+ *
6
+ * @flowWeaver nodeType
7
+ * @label Genesis Apply
8
+ * @input env [order:0] - Weaver environment bundle
9
+ * @input genesisConfigJson [order:1] - Genesis configuration (JSON)
10
+ * @input proposalJson [order:2] - Genesis proposal (JSON)
11
+ * @input snapshotPath [order:3] - Path to the pre-apply snapshot
12
+ * @output env [order:0] - Weaver environment bundle (pass-through)
13
+ * @output genesisConfigJson [order:1] - Genesis configuration (pass-through)
14
+ * @output proposalJson [order:2] - Genesis proposal (pass-through)
15
+ * @output snapshotPath [order:3] - Path to the pre-apply snapshot (pass-through)
16
+ * @output applyResultJson [order:4] - Apply result (JSON)
17
+ * @output onSuccess [order:-2] - On Success
18
+ * @output onFailure [order:-1] - On Failure
19
+ */
20
+ export declare function genesisApply(execute: boolean, env: WeaverEnv, genesisConfigJson: string, proposalJson: string, snapshotPath: string): Promise<{
21
+ onSuccess: boolean;
22
+ onFailure: boolean;
23
+ env: WeaverEnv;
24
+ genesisConfigJson: string;
25
+ proposalJson: string;
26
+ snapshotPath: string;
27
+ applyResultJson: string;
28
+ }>;
29
+ //# sourceMappingURL=genesis-apply.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genesis-apply.d.ts","sourceRoot":"","sources":["../../src/node-types/genesis-apply.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAoD,MAAM,iBAAiB,CAAC;AAEnG;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,SAAS,EACd,iBAAiB,EAAE,MAAM,EACzB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC;IACT,SAAS,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IACvC,GAAG,EAAE,SAAS,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC,CA2CD"}
@@ -0,0 +1,76 @@
1
+ import * as path from 'node:path';
2
+ import { execFileSync } from 'node:child_process';
3
+ /**
4
+ * Applies proposal operations to the target workflow by invoking the
5
+ * flow-weaver CLI modify command for each operation.
6
+ *
7
+ * @flowWeaver nodeType
8
+ * @label Genesis Apply
9
+ * @input env [order:0] - Weaver environment bundle
10
+ * @input genesisConfigJson [order:1] - Genesis configuration (JSON)
11
+ * @input proposalJson [order:2] - Genesis proposal (JSON)
12
+ * @input snapshotPath [order:3] - Path to the pre-apply snapshot
13
+ * @output env [order:0] - Weaver environment bundle (pass-through)
14
+ * @output genesisConfigJson [order:1] - Genesis configuration (pass-through)
15
+ * @output proposalJson [order:2] - Genesis proposal (pass-through)
16
+ * @output snapshotPath [order:3] - Path to the pre-apply snapshot (pass-through)
17
+ * @output applyResultJson [order:4] - Apply result (JSON)
18
+ * @output onSuccess [order:-2] - On Success
19
+ * @output onFailure [order:-1] - On Failure
20
+ */
21
+ export async function genesisApply(execute, env, genesisConfigJson, proposalJson, snapshotPath) {
22
+ if (!execute) {
23
+ const result = { applied: 0, failed: 0, errors: [] };
24
+ return { onSuccess: true, onFailure: false, env, genesisConfigJson, proposalJson, snapshotPath, applyResultJson: JSON.stringify(result) };
25
+ }
26
+ const config = JSON.parse(genesisConfigJson);
27
+ const proposal = JSON.parse(proposalJson);
28
+ const targetPath = path.resolve(env.projectDir, config.targetWorkflow);
29
+ let applied = 0;
30
+ let failed = 0;
31
+ const errors = [];
32
+ for (const op of proposal.operations) {
33
+ try {
34
+ const cliArgs = buildModifyArgs(op, targetPath);
35
+ execFileSync('flow-weaver', cliArgs, {
36
+ cwd: env.projectDir,
37
+ encoding: 'utf-8',
38
+ stdio: ['pipe', 'pipe', 'pipe'],
39
+ timeout: 30_000,
40
+ });
41
+ applied++;
42
+ console.log(`\x1b[32m + ${op.type}: ${op.rationale}\x1b[0m`);
43
+ }
44
+ catch (err) {
45
+ failed++;
46
+ const msg = err instanceof Error ? err.message : String(err);
47
+ errors.push(`${op.type}: ${msg}`);
48
+ console.error(`\x1b[31m x ${op.type}: ${msg}\x1b[0m`);
49
+ }
50
+ }
51
+ const result = { applied, failed, errors };
52
+ const success = failed === 0 && applied > 0;
53
+ console.log(`\x1b[36m→ Apply: ${applied} succeeded, ${failed} failed\x1b[0m`);
54
+ return {
55
+ onSuccess: success, onFailure: !success,
56
+ env, genesisConfigJson, proposalJson, snapshotPath,
57
+ applyResultJson: JSON.stringify(result),
58
+ };
59
+ }
60
+ function buildModifyArgs(op, targetPath) {
61
+ switch (op.type) {
62
+ case 'addNode':
63
+ return ['modify', 'addNode', '--file', targetPath, '--nodeId', String(op.args.nodeId), '--nodeType', String(op.args.nodeType)];
64
+ case 'removeNode':
65
+ return ['modify', 'removeNode', '--file', targetPath, '--nodeId', String(op.args.nodeId)];
66
+ case 'addConnection':
67
+ return ['modify', 'addConnection', '--file', targetPath, '--from', String(op.args.from), '--to', String(op.args.to)];
68
+ case 'removeConnection':
69
+ return ['modify', 'removeConnection', '--file', targetPath, '--from', String(op.args.from), '--to', String(op.args.to)];
70
+ case 'implementNode':
71
+ return ['implement', targetPath, '--nodeId', String(op.args.nodeId)];
72
+ default:
73
+ throw new Error(`Unknown genesis operation type: ${op.type}`);
74
+ }
75
+ }
76
+ //# sourceMappingURL=genesis-apply.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genesis-apply.js","sourceRoot":"","sources":["../../src/node-types/genesis-apply.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Handles approval for genesis proposals. Auto-approves when approval
3
+ * is not required or when config approval mode is 'auto'. Otherwise
4
+ * displays the proposal summary and diff, then rejects (non-interactive
5
+ * environments cannot prompt).
6
+ *
7
+ * @flowWeaver nodeType
8
+ * @label Genesis Approve
9
+ * @input ctx [order:0] - Genesis context (JSON)
10
+ * @output ctx [order:0] - Genesis context with approved (JSON)
11
+ * @output onSuccess [order:-2] - On Success
12
+ * @output onFailure [order:-1] [hidden] - On Failure
13
+ */
14
+ export declare function genesisApprove(execute: boolean, ctx: string): Promise<{
15
+ onSuccess: boolean;
16
+ onFailure: boolean;
17
+ ctx: string;
18
+ }>;
19
+ //# sourceMappingURL=genesis-approve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genesis-approve.d.ts","sourceRoot":"","sources":["../../src/node-types/genesis-approve.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;IACT,SAAS,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IACvC,GAAG,EAAE,MAAM,CAAC;CACb,CAAC,CAmDD"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Handles approval for genesis proposals. Auto-approves when approval
3
+ * is not required or when config approval mode is 'auto'. Otherwise
4
+ * displays the proposal summary and diff, then rejects (non-interactive
5
+ * environments cannot prompt).
6
+ *
7
+ * @flowWeaver nodeType
8
+ * @label Genesis Approve
9
+ * @input ctx [order:0] - Genesis context (JSON)
10
+ * @output ctx [order:0] - Genesis context with approved (JSON)
11
+ * @output onSuccess [order:-2] - On Success
12
+ * @output onFailure [order:-1] [hidden] - On Failure
13
+ */
14
+ export async function genesisApprove(execute, ctx) {
15
+ const context = JSON.parse(ctx);
16
+ if (!execute) {
17
+ context.approved = true;
18
+ return { onSuccess: true, onFailure: false, ctx: JSON.stringify(context) };
19
+ }
20
+ // Auto-approve when approval is not required
21
+ if (!context.approvalRequired) {
22
+ console.log('\x1b[32m→ Auto-approved (below threshold)\x1b[0m');
23
+ context.approved = true;
24
+ return { onSuccess: true, onFailure: false, ctx: JSON.stringify(context) };
25
+ }
26
+ const { config } = context.env;
27
+ // Match the same default as runner.ts resolveApproval: no approval field = 'auto'
28
+ const approvalMode = !config.approval || config.approval === 'auto'
29
+ ? 'auto'
30
+ : typeof config.approval === 'string'
31
+ ? config.approval
32
+ : config.approval.mode;
33
+ // Display proposal summary
34
+ const proposal = JSON.parse(context.proposalJson);
35
+ const diffData = JSON.parse(context.workflowDiffJson);
36
+ console.log('\n\x1b[1m┌─ Genesis Proposal ─────────────────────┐\x1b[0m');
37
+ console.log(`\x1b[1m│\x1b[0m Impact: ${proposal.impactLevel}`);
38
+ console.log(`\x1b[1m│\x1b[0m Summary: ${proposal.summary}`);
39
+ console.log(`\x1b[1m│\x1b[0m Operations: ${proposal.operations.length} (cost: ${proposal.totalCost})`);
40
+ for (const op of proposal.operations) {
41
+ console.log(`\x1b[1m│\x1b[0m ${op.type}: ${op.rationale}`);
42
+ }
43
+ console.log('\x1b[1m├─ Diff ─────────────────────────────────┤\x1b[0m');
44
+ for (const line of diffData.diff.split('\n').slice(0, 20)) {
45
+ console.log(`\x1b[1m│\x1b[0m ${line}`);
46
+ }
47
+ console.log('\x1b[1m└────────────────────────────────────────┘\x1b[0m\n');
48
+ // Auto mode approves automatically
49
+ if (approvalMode === 'auto') {
50
+ console.log('\x1b[32m→ Auto-approved (approval mode: auto)\x1b[0m');
51
+ context.approved = true;
52
+ return { onSuccess: true, onFailure: false, ctx: JSON.stringify(context) };
53
+ }
54
+ // Non-auto modes reject in non-interactive context
55
+ console.log('\x1b[33m→ Rejected (approval required, non-auto mode)\x1b[0m');
56
+ context.approved = false;
57
+ return { onSuccess: true, onFailure: false, ctx: JSON.stringify(context) };
58
+ }
59
+ //# sourceMappingURL=genesis-approve.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genesis-approve.js","sourceRoot":"","sources":["../../src/node-types/genesis-approve.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Determines whether genesis should enter stabilize mode. This happens
3
+ * when the config flag is set or when the last 3 cycles were all
4
+ * rollbacks or rejections.
5
+ *
6
+ * @flowWeaver nodeType
7
+ * @expression
8
+ * @label Genesis Check Stabilize
9
+ * @input ctx [order:0] - Genesis context (JSON)
10
+ * @output ctx [order:0] - Genesis context with stabilized (JSON)
11
+ * @output onFailure [hidden]
12
+ */
13
+ export declare function genesisCheckStabilize(ctx: string): {
14
+ ctx: string;
15
+ };
16
+ //# sourceMappingURL=genesis-check-stabilize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genesis-check-stabilize.d.ts","sourceRoot":"","sources":["../../src/node-types/genesis-check-stabilize.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAqBlE"}
@@ -0,0 +1,32 @@
1
+ import { GenesisStore } from '../bot/genesis-store.js';
2
+ /**
3
+ * Determines whether genesis should enter stabilize mode. This happens
4
+ * when the config flag is set or when the last 3 cycles were all
5
+ * rollbacks or rejections.
6
+ *
7
+ * @flowWeaver nodeType
8
+ * @expression
9
+ * @label Genesis Check Stabilize
10
+ * @input ctx [order:0] - Genesis context (JSON)
11
+ * @output ctx [order:0] - Genesis context with stabilized (JSON)
12
+ * @output onFailure [hidden]
13
+ */
14
+ export function genesisCheckStabilize(ctx) {
15
+ const context = JSON.parse(ctx);
16
+ const config = JSON.parse(context.genesisConfigJson);
17
+ if (config.stabilize) {
18
+ console.log('\x1b[33m→ Stabilize mode: enabled by config\x1b[0m');
19
+ context.stabilized = true;
20
+ return { ctx: JSON.stringify(context) };
21
+ }
22
+ const store = new GenesisStore(context.env.projectDir);
23
+ const recent = store.getRecentOutcomes(3);
24
+ if (recent.length >= 3 && recent.every(o => o === 'rolled-back' || o === 'rejected')) {
25
+ console.log('\x1b[33m→ Stabilize mode: 3+ consecutive rollbacks/rejections\x1b[0m');
26
+ context.stabilized = true;
27
+ return { ctx: JSON.stringify(context) };
28
+ }
29
+ context.stabilized = false;
30
+ return { ctx: JSON.stringify(context) };
31
+ }
32
+ //# sourceMappingURL=genesis-check-stabilize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genesis-check-stabilize.js","sourceRoot":"","sources":["../../src/node-types/genesis-check-stabilize.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAmB,CAAC;IAClD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAkB,CAAC;IAEtE,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QAClE,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;QAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAE1C,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,aAAa,IAAI,CAAC,KAAK,UAAU,CAAC,EAAE,CAAC;QACrF,OAAO,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;QACpF,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;QAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,CAAC;IAED,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC;IAC3B,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;AAC1C,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Compares the proposal's impact level against the configured approval
3
+ * threshold to decide if human approval is required.
4
+ *
5
+ * @flowWeaver nodeType
6
+ * @expression
7
+ * @label Genesis Check Threshold
8
+ * @input ctx [order:0] - Genesis context (JSON)
9
+ * @output ctx [order:0] - Genesis context with approvalRequired (JSON)
10
+ * @output onFailure [hidden]
11
+ */
12
+ export declare function genesisCheckThreshold(ctx: string): {
13
+ ctx: string;
14
+ };
15
+ //# sourceMappingURL=genesis-check-threshold.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genesis-check-threshold.d.ts","sourceRoot":"","sources":["../../src/node-types/genesis-check-threshold.ts"],"names":[],"mappings":"AASA;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAalE"}
@@ -0,0 +1,29 @@
1
+ const IMPACT_ORDER = {
2
+ COSMETIC: 0,
3
+ MINOR: 1,
4
+ BREAKING: 2,
5
+ CRITICAL: 3,
6
+ };
7
+ /**
8
+ * Compares the proposal's impact level against the configured approval
9
+ * threshold to decide if human approval is required.
10
+ *
11
+ * @flowWeaver nodeType
12
+ * @expression
13
+ * @label Genesis Check Threshold
14
+ * @input ctx [order:0] - Genesis context (JSON)
15
+ * @output ctx [order:0] - Genesis context with approvalRequired (JSON)
16
+ * @output onFailure [hidden]
17
+ */
18
+ export function genesisCheckThreshold(ctx) {
19
+ const context = JSON.parse(ctx);
20
+ const config = JSON.parse(context.genesisConfigJson);
21
+ const proposal = JSON.parse(context.proposalJson);
22
+ const proposalLevel = IMPACT_ORDER[proposal.impactLevel] ?? 0;
23
+ const thresholdLevel = IMPACT_ORDER[config.approvalThreshold] ?? 0;
24
+ const approvalRequired = proposalLevel >= thresholdLevel;
25
+ console.log(`\x1b[36m→ Impact ${proposal.impactLevel} vs threshold ${config.approvalThreshold}: approval ${approvalRequired ? 'required' : 'not required'}\x1b[0m`);
26
+ context.approvalRequired = approvalRequired;
27
+ return { ctx: JSON.stringify(context) };
28
+ }
29
+ //# sourceMappingURL=genesis-check-threshold.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genesis-check-threshold.js","sourceRoot":"","sources":["../../src/node-types/genesis-check-threshold.ts"],"names":[],"mappings":"AAEA,MAAM,YAAY,GAAuC;IACvD,QAAQ,EAAE,CAAC;IACX,KAAK,EAAE,CAAC;IACR,QAAQ,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC;CACZ,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAmB,CAAC;IAClD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAkB,CAAC;IACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAa,CAAoB,CAAC;IAEtE,MAAM,aAAa,GAAG,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACnE,MAAM,gBAAgB,GAAG,aAAa,IAAI,cAAc,CAAC;IAEzD,OAAO,CAAC,GAAG,CAAC,oBAAoB,QAAQ,CAAC,WAAW,iBAAiB,MAAM,CAAC,iBAAiB,cAAc,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,SAAS,CAAC,CAAC;IAEpK,OAAO,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC5C,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;AAC1C,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Commits the modified workflow to git if approved, or restores from
3
+ * the snapshot if rejected. Commit messages are prefixed with "genesis:".
4
+ *
5
+ * @flowWeaver nodeType
6
+ * @label Genesis Commit
7
+ * @input ctx [order:0] - Genesis context (JSON)
8
+ * @output ctx [order:0] - Genesis context with commitResultJson (JSON)
9
+ * @output onSuccess [order:-2] - On Success
10
+ * @output onFailure [order:-1] [hidden] - On Failure
11
+ */
12
+ export declare function genesisCommit(execute: boolean, ctx: string): Promise<{
13
+ onSuccess: boolean;
14
+ onFailure: boolean;
15
+ ctx: string;
16
+ }>;
17
+ //# sourceMappingURL=genesis-commit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genesis-commit.d.ts","sourceRoot":"","sources":["../../src/node-types/genesis-commit.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;IACT,SAAS,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IACvC,GAAG,EAAE,MAAM,CAAC;CACb,CAAC,CA+CD"}
@@ -0,0 +1,59 @@
1
+ import * as fs from 'node:fs';
2
+ import * as path from 'node:path';
3
+ import { execFileSync } from 'node:child_process';
4
+ import { GenesisStore } from '../bot/genesis-store.js';
5
+ /**
6
+ * Commits the modified workflow to git if approved, or restores from
7
+ * the snapshot if rejected. Commit messages are prefixed with "genesis:".
8
+ *
9
+ * @flowWeaver nodeType
10
+ * @label Genesis Commit
11
+ * @input ctx [order:0] - Genesis context (JSON)
12
+ * @output ctx [order:0] - Genesis context with commitResultJson (JSON)
13
+ * @output onSuccess [order:-2] - On Success
14
+ * @output onFailure [order:-1] [hidden] - On Failure
15
+ */
16
+ export async function genesisCommit(execute, ctx) {
17
+ const context = JSON.parse(ctx);
18
+ if (!execute) {
19
+ context.commitResultJson = JSON.stringify({ committed: false, reason: 'dry run' });
20
+ return { onSuccess: true, onFailure: false, ctx: JSON.stringify(context) };
21
+ }
22
+ const { env } = context;
23
+ const config = JSON.parse(context.genesisConfigJson);
24
+ const targetPath = path.resolve(env.projectDir, config.targetWorkflow);
25
+ if (!context.approved) {
26
+ // Restore from snapshot
27
+ const store = new GenesisStore(env.projectDir);
28
+ const snapshot = store.loadSnapshot(context.snapshotPath);
29
+ if (snapshot) {
30
+ fs.writeFileSync(targetPath, snapshot, 'utf-8');
31
+ console.log('\x1b[33m→ Restored from snapshot (not approved)\x1b[0m');
32
+ }
33
+ context.commitResultJson = JSON.stringify({ committed: false, reason: 'not approved' });
34
+ return { onSuccess: false, onFailure: true, ctx: JSON.stringify(context) };
35
+ }
36
+ try {
37
+ execFileSync('git', ['add', targetPath], {
38
+ cwd: env.projectDir,
39
+ encoding: 'utf-8',
40
+ stdio: ['pipe', 'pipe', 'pipe'],
41
+ });
42
+ const message = `genesis: evolve ${path.basename(config.targetWorkflow)}`;
43
+ execFileSync('git', ['commit', '-m', message], {
44
+ cwd: env.projectDir,
45
+ encoding: 'utf-8',
46
+ stdio: ['pipe', 'pipe', 'pipe'],
47
+ });
48
+ console.log(`\x1b[32m→ Committed: ${message}\x1b[0m`);
49
+ context.commitResultJson = JSON.stringify({ committed: true, message });
50
+ return { onSuccess: true, onFailure: false, ctx: JSON.stringify(context) };
51
+ }
52
+ catch (err) {
53
+ const msg = err instanceof Error ? err.message : String(err);
54
+ console.error(`\x1b[31m→ Commit failed: ${msg}\x1b[0m`);
55
+ context.commitResultJson = JSON.stringify({ committed: false, reason: msg });
56
+ return { onSuccess: false, onFailure: true, ctx: JSON.stringify(context) };
57
+ }
58
+ }
59
+ //# sourceMappingURL=genesis-commit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genesis-commit.js","sourceRoot":"","sources":["../../src/node-types/genesis-commit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import type { WeaverEnv } from '../bot/types.js';
2
+ /**
3
+ * Runs flow-weaver validate and compile on the target workflow after
4
+ * operations have been applied. On failure, restores from the snapshot
5
+ * and fires the failure path.
6
+ *
7
+ * @flowWeaver nodeType
8
+ * @label Genesis Compile & Validate
9
+ * @input env [order:0] - Weaver environment bundle
10
+ * @input genesisConfigJson [order:1] - Genesis configuration (JSON)
11
+ * @input snapshotPath [order:2] - Path to the pre-apply snapshot
12
+ * @input applyResultJson [order:3] - Apply result (JSON)
13
+ * @output env [order:0] - Weaver environment bundle (pass-through)
14
+ * @output genesisConfigJson [order:1] - Genesis configuration (pass-through)
15
+ * @output snapshotPath [order:2] - Path to the snapshot (pass-through)
16
+ * @output onSuccess [order:-2] - On Success
17
+ * @output onFailure [order:-1] - On Failure
18
+ */
19
+ export declare function genesisCompileValidate(execute: boolean, env: WeaverEnv, genesisConfigJson: string, snapshotPath: string, applyResultJson: string): Promise<{
20
+ onSuccess: boolean;
21
+ onFailure: boolean;
22
+ env: WeaverEnv;
23
+ genesisConfigJson: string;
24
+ snapshotPath: string;
25
+ }>;
26
+ //# sourceMappingURL=genesis-compile-validate.d.ts.map