@jungjaehoon/mama-os 0.28.5 → 0.29.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 (454) hide show
  1. package/dist/agent/agent-loop.d.ts +0 -4
  2. package/dist/agent/agent-loop.d.ts.map +1 -1
  3. package/dist/agent/agent-loop.js +44 -12
  4. package/dist/agent/agent-loop.js.map +1 -1
  5. package/dist/agent/code-act/host-bridge.d.ts.map +1 -1
  6. package/dist/agent/code-act/host-bridge.js +53 -3
  7. package/dist/agent/code-act/host-bridge.js.map +1 -1
  8. package/dist/agent/code-act/tool-policy.d.ts.map +1 -1
  9. package/dist/agent/code-act/tool-policy.js +5 -0
  10. package/dist/agent/code-act/tool-policy.js.map +1 -1
  11. package/dist/agent/codex-auth.d.ts +0 -1
  12. package/dist/agent/codex-auth.d.ts.map +1 -1
  13. package/dist/agent/codex-auth.js +0 -4
  14. package/dist/agent/codex-auth.js.map +1 -1
  15. package/dist/agent/codex-home.d.ts +0 -2
  16. package/dist/agent/codex-home.d.ts.map +1 -1
  17. package/dist/agent/codex-home.js +0 -66
  18. package/dist/agent/codex-home.js.map +1 -1
  19. package/dist/agent/context-compile-service.d.ts +9 -0
  20. package/dist/agent/context-compile-service.d.ts.map +1 -1
  21. package/dist/agent/context-compile-service.js +6 -0
  22. package/dist/agent/context-compile-service.js.map +1 -1
  23. package/dist/agent/context-prompt-builder.d.ts +0 -6
  24. package/dist/agent/context-prompt-builder.d.ts.map +1 -1
  25. package/dist/agent/context-prompt-builder.js +0 -131
  26. package/dist/agent/context-prompt-builder.js.map +1 -1
  27. package/dist/agent/contract-extractor.d.ts +0 -4
  28. package/dist/agent/contract-extractor.d.ts.map +1 -1
  29. package/dist/agent/contract-extractor.js +0 -68
  30. package/dist/agent/contract-extractor.js.map +1 -1
  31. package/dist/agent/gateway-tool-executor.d.ts +20 -15
  32. package/dist/agent/gateway-tool-executor.d.ts.map +1 -1
  33. package/dist/agent/gateway-tool-executor.js +236 -90
  34. package/dist/agent/gateway-tool-executor.js.map +1 -1
  35. package/dist/agent/gateway-tools.md +7 -4
  36. package/dist/agent/skill-loader.d.ts +0 -7
  37. package/dist/agent/skill-loader.d.ts.map +1 -1
  38. package/dist/agent/skill-loader.js +0 -86
  39. package/dist/agent/skill-loader.js.map +1 -1
  40. package/dist/agent/token-estimator.d.ts +0 -8
  41. package/dist/agent/token-estimator.d.ts.map +1 -1
  42. package/dist/agent/token-estimator.js +0 -14
  43. package/dist/agent/token-estimator.js.map +1 -1
  44. package/dist/agent/tool-registry.d.ts.map +1 -1
  45. package/dist/agent/tool-registry.js +23 -5
  46. package/dist/agent/tool-registry.js.map +1 -1
  47. package/dist/agent/types.d.ts +27 -1
  48. package/dist/agent/types.d.ts.map +1 -1
  49. package/dist/agent/types.js.map +1 -1
  50. package/dist/api/agent-graph-handler.d.ts +9 -0
  51. package/dist/api/agent-graph-handler.d.ts.map +1 -1
  52. package/dist/api/agent-graph-handler.js +27 -1
  53. package/dist/api/agent-graph-handler.js.map +1 -1
  54. package/dist/api/entity-audit-handler.d.ts +1 -2
  55. package/dist/api/entity-audit-handler.d.ts.map +1 -1
  56. package/dist/api/entity-audit-handler.js +0 -5
  57. package/dist/api/entity-audit-handler.js.map +1 -1
  58. package/dist/api/index.d.ts +1 -9
  59. package/dist/api/index.d.ts.map +1 -1
  60. package/dist/api/index.js +4 -17
  61. package/dist/api/index.js.map +1 -1
  62. package/dist/api/intelligence-handler.d.ts +0 -5
  63. package/dist/api/intelligence-handler.d.ts.map +1 -1
  64. package/dist/api/intelligence-handler.js +0 -15
  65. package/dist/api/intelligence-handler.js.map +1 -1
  66. package/dist/api/types.d.ts +1 -5
  67. package/dist/api/types.d.ts.map +1 -1
  68. package/dist/api/types.js +0 -14
  69. package/dist/api/types.js.map +1 -1
  70. package/dist/cli/commands/start.d.ts +117 -3
  71. package/dist/cli/commands/start.d.ts.map +1 -1
  72. package/dist/cli/commands/start.js +223 -62
  73. package/dist/cli/commands/start.js.map +1 -1
  74. package/dist/cli/config/config-manager.d.ts +0 -5
  75. package/dist/cli/config/config-manager.d.ts.map +1 -1
  76. package/dist/cli/config/config-manager.js +0 -29
  77. package/dist/cli/config/config-manager.js.map +1 -1
  78. package/dist/cli/config/types.d.ts.map +1 -1
  79. package/dist/cli/config/types.js +3 -0
  80. package/dist/cli/config/types.js.map +1 -1
  81. package/dist/cli/runtime/agent-loop-init.d.ts.map +1 -1
  82. package/dist/cli/runtime/agent-loop-init.js +9 -1
  83. package/dist/cli/runtime/agent-loop-init.js.map +1 -1
  84. package/dist/cli/runtime/api-routes-init.d.ts.map +1 -1
  85. package/dist/cli/runtime/api-routes-init.js +32 -5
  86. package/dist/cli/runtime/api-routes-init.js.map +1 -1
  87. package/dist/cli/runtime/api-server-init.d.ts.map +1 -1
  88. package/dist/cli/runtime/api-server-init.js +2 -0
  89. package/dist/cli/runtime/api-server-init.js.map +1 -1
  90. package/dist/cli/runtime/gateway-init.d.ts +1 -1
  91. package/dist/cli/runtime/gateway-init.d.ts.map +1 -1
  92. package/dist/cli/runtime/gateway-init.js +11 -38
  93. package/dist/cli/runtime/gateway-init.js.map +1 -1
  94. package/dist/cli/runtime/gateway-wiring.d.ts.map +1 -1
  95. package/dist/cli/runtime/gateway-wiring.js +6 -120
  96. package/dist/cli/runtime/gateway-wiring.js.map +1 -1
  97. package/dist/cli/utils/pid-manager.d.ts +0 -10
  98. package/dist/cli/utils/pid-manager.d.ts.map +1 -1
  99. package/dist/cli/utils/pid-manager.js +0 -26
  100. package/dist/cli/utils/pid-manager.js.map +1 -1
  101. package/dist/connectors/framework/polling-scheduler.d.ts +33 -1
  102. package/dist/connectors/framework/polling-scheduler.d.ts.map +1 -1
  103. package/dist/connectors/framework/polling-scheduler.js +46 -40
  104. package/dist/connectors/framework/polling-scheduler.js.map +1 -1
  105. package/dist/connectors/trello/query-tools.d.ts +32 -5
  106. package/dist/connectors/trello/query-tools.d.ts.map +1 -1
  107. package/dist/connectors/trello/query-tools.js +56 -17
  108. package/dist/connectors/trello/query-tools.js.map +1 -1
  109. package/dist/db/agent-store.d.ts +0 -4
  110. package/dist/db/agent-store.d.ts.map +1 -1
  111. package/dist/db/agent-store.js +0 -65
  112. package/dist/db/agent-store.js.map +1 -1
  113. package/dist/envelope/enforcer.d.ts.map +1 -1
  114. package/dist/envelope/enforcer.js +10 -1
  115. package/dist/envelope/enforcer.js.map +1 -1
  116. package/dist/envelope/index.d.ts +0 -1
  117. package/dist/envelope/index.d.ts.map +1 -1
  118. package/dist/envelope/index.js +0 -1
  119. package/dist/envelope/index.js.map +1 -1
  120. package/dist/envelope/signature.d.ts +0 -1
  121. package/dist/envelope/signature.d.ts.map +1 -1
  122. package/dist/envelope/signature.js +0 -7
  123. package/dist/envelope/signature.js.map +1 -1
  124. package/dist/envelope/tool-connector-scope.d.ts +35 -0
  125. package/dist/envelope/tool-connector-scope.d.ts.map +1 -0
  126. package/dist/envelope/tool-connector-scope.js +57 -0
  127. package/dist/envelope/tool-connector-scope.js.map +1 -0
  128. package/dist/evidence/effects.d.ts +107 -0
  129. package/dist/evidence/effects.d.ts.map +1 -0
  130. package/dist/evidence/effects.js +281 -0
  131. package/dist/evidence/effects.js.map +1 -0
  132. package/dist/evidence/read.d.ts +75 -0
  133. package/dist/evidence/read.d.ts.map +1 -0
  134. package/dist/evidence/read.js +105 -0
  135. package/dist/evidence/read.js.map +1 -0
  136. package/dist/gateways/base-gateway.d.ts +23 -3
  137. package/dist/gateways/base-gateway.d.ts.map +1 -1
  138. package/dist/gateways/base-gateway.js +15 -2
  139. package/dist/gateways/base-gateway.js.map +1 -1
  140. package/dist/gateways/discord.d.ts +4 -16
  141. package/dist/gateways/discord.d.ts.map +1 -1
  142. package/dist/gateways/discord.js +22 -189
  143. package/dist/gateways/discord.js.map +1 -1
  144. package/dist/gateways/index.d.ts +2 -1
  145. package/dist/gateways/index.d.ts.map +1 -1
  146. package/dist/gateways/message-router.d.ts +13 -20
  147. package/dist/gateways/message-router.d.ts.map +1 -1
  148. package/dist/gateways/message-router.js +32 -3
  149. package/dist/gateways/message-router.js.map +1 -1
  150. package/dist/gateways/slack.d.ts +2 -12
  151. package/dist/gateways/slack.d.ts.map +1 -1
  152. package/dist/gateways/slack.js +6 -220
  153. package/dist/gateways/slack.js.map +1 -1
  154. package/dist/gateways/telegram.d.ts +2 -2
  155. package/dist/gateways/telegram.d.ts.map +1 -1
  156. package/dist/gateways/telegram.js +3 -2
  157. package/dist/gateways/telegram.js.map +1 -1
  158. package/dist/gateways/turn-contract.d.ts +104 -0
  159. package/dist/gateways/turn-contract.d.ts.map +1 -0
  160. package/dist/{memory/consult-contract.js → gateways/turn-contract.js} +1 -1
  161. package/dist/gateways/turn-contract.js.map +1 -0
  162. package/dist/memory/provenance-live.d.ts +111 -0
  163. package/dist/memory/provenance-live.d.ts.map +1 -0
  164. package/dist/memory/provenance-live.js +381 -0
  165. package/dist/memory/provenance-live.js.map +1 -0
  166. package/dist/memory/provenance-resolver.d.ts +184 -0
  167. package/dist/memory/provenance-resolver.d.ts.map +1 -0
  168. package/dist/memory/provenance-resolver.js +152 -0
  169. package/dist/memory/provenance-resolver.js.map +1 -0
  170. package/dist/multi-agent/agent-event-bus.d.ts +1 -0
  171. package/dist/multi-agent/agent-event-bus.d.ts.map +1 -1
  172. package/dist/multi-agent/bmad-templates.d.ts +0 -18
  173. package/dist/multi-agent/bmad-templates.d.ts.map +1 -1
  174. package/dist/multi-agent/bmad-templates.js +0 -127
  175. package/dist/multi-agent/bmad-templates.js.map +1 -1
  176. package/dist/multi-agent/dashboard-agent-persona.js +3 -3
  177. package/dist/operator/board-reconcile.d.ts +2 -3
  178. package/dist/operator/board-reconcile.d.ts.map +1 -1
  179. package/dist/operator/board-reconcile.js +18 -32
  180. package/dist/operator/board-reconcile.js.map +1 -1
  181. package/dist/operator/changes-projection.d.ts +70 -0
  182. package/dist/operator/changes-projection.d.ts.map +1 -0
  183. package/dist/operator/changes-projection.js +109 -0
  184. package/dist/operator/changes-projection.js.map +1 -0
  185. package/dist/operator/external-correlation.d.ts +94 -0
  186. package/dist/operator/external-correlation.d.ts.map +1 -0
  187. package/dist/operator/external-correlation.js +177 -0
  188. package/dist/operator/external-correlation.js.map +1 -0
  189. package/dist/operator/operator-trigger-loop.d.ts +9 -1
  190. package/dist/operator/operator-trigger-loop.d.ts.map +1 -1
  191. package/dist/operator/operator-trigger-loop.js +8 -4
  192. package/dist/operator/operator-trigger-loop.js.map +1 -1
  193. package/dist/operator/provenance-lookup.d.ts +18 -0
  194. package/dist/operator/provenance-lookup.d.ts.map +1 -0
  195. package/dist/operator/provenance-lookup.js +54 -0
  196. package/dist/operator/provenance-lookup.js.map +1 -0
  197. package/dist/operator/report-carry.d.ts +18 -1
  198. package/dist/operator/report-carry.d.ts.map +1 -1
  199. package/dist/operator/report-carry.js +22 -3
  200. package/dist/operator/report-carry.js.map +1 -1
  201. package/dist/operator/report-run.d.ts +35 -0
  202. package/dist/operator/report-run.d.ts.map +1 -1
  203. package/dist/operator/report-run.js +184 -24
  204. package/dist/operator/report-run.js.map +1 -1
  205. package/dist/operator/situation-report.d.ts.map +1 -1
  206. package/dist/operator/situation-report.js +9 -2
  207. package/dist/operator/situation-report.js.map +1 -1
  208. package/dist/operator/task-ledger.d.ts +84 -2
  209. package/dist/operator/task-ledger.d.ts.map +1 -1
  210. package/dist/operator/task-ledger.js +274 -31
  211. package/dist/operator/task-ledger.js.map +1 -1
  212. package/dist/operator/worker-run.js +1 -1
  213. package/dist/operator/worker-run.js.map +1 -1
  214. package/dist/operator/workorder-hooks.d.ts +79 -4
  215. package/dist/operator/workorder-hooks.d.ts.map +1 -1
  216. package/dist/operator/workorder-hooks.js +152 -20
  217. package/dist/operator/workorder-hooks.js.map +1 -1
  218. package/dist/operator/workorder-publishers.d.ts +2 -0
  219. package/dist/operator/workorder-publishers.d.ts.map +1 -1
  220. package/dist/operator/workorder-publishers.js +8 -1
  221. package/dist/operator/workorder-publishers.js.map +1 -1
  222. package/dist/utils/untrusted-content.d.ts +11 -0
  223. package/dist/utils/untrusted-content.d.ts.map +1 -1
  224. package/dist/utils/untrusted-content.js +20 -0
  225. package/dist/utils/untrusted-content.js.map +1 -1
  226. package/package.json +4 -3
  227. package/scripts/backfill-channel-keys.ts +451 -0
  228. package/dist/agent/auto-recall.d.ts +0 -48
  229. package/dist/agent/auto-recall.d.ts.map +0 -1
  230. package/dist/agent/auto-recall.js +0 -192
  231. package/dist/agent/auto-recall.js.map +0 -1
  232. package/dist/agent/claude-client.d.ts +0 -50
  233. package/dist/agent/claude-client.d.ts.map +0 -1
  234. package/dist/agent/claude-client.js +0 -219
  235. package/dist/agent/claude-client.js.map +0 -1
  236. package/dist/agent/delegation-executor.d.ts +0 -49
  237. package/dist/agent/delegation-executor.d.ts.map +0 -1
  238. package/dist/agent/delegation-executor.js +0 -692
  239. package/dist/agent/delegation-executor.js.map +0 -1
  240. package/dist/agent/mcp-executor.d.ts +0 -60
  241. package/dist/agent/mcp-executor.d.ts.map +0 -1
  242. package/dist/agent/mcp-executor.js +0 -190
  243. package/dist/agent/mcp-executor.js.map +0 -1
  244. package/dist/agent/process-tree.d.ts +0 -6
  245. package/dist/agent/process-tree.d.ts.map +0 -1
  246. package/dist/agent/process-tree.js +0 -21
  247. package/dist/agent/process-tree.js.map +0 -1
  248. package/dist/agent/streaming-callback-manager.d.ts +0 -85
  249. package/dist/agent/streaming-callback-manager.d.ts.map +0 -1
  250. package/dist/agent/streaming-callback-manager.js +0 -103
  251. package/dist/agent/streaming-callback-manager.js.map +0 -1
  252. package/dist/agent/token-budget.d.ts +0 -49
  253. package/dist/agent/token-budget.d.ts.map +0 -1
  254. package/dist/agent/token-budget.js +0 -92
  255. package/dist/agent/token-budget.js.map +0 -1
  256. package/dist/connectors/kagemusha/history-compiler.d.ts +0 -18
  257. package/dist/connectors/kagemusha/history-compiler.d.ts.map +0 -1
  258. package/dist/connectors/kagemusha/history-compiler.js +0 -35
  259. package/dist/connectors/kagemusha/history-compiler.js.map +0 -1
  260. package/dist/db/migrations/wiki-artifacts.d.ts +0 -3
  261. package/dist/db/migrations/wiki-artifacts.d.ts.map +0 -1
  262. package/dist/db/migrations/wiki-artifacts.js +0 -24
  263. package/dist/db/migrations/wiki-artifacts.js.map +0 -1
  264. package/dist/envelope/subset.d.ts +0 -9
  265. package/dist/envelope/subset.d.ts.map +0 -1
  266. package/dist/envelope/subset.js +0 -67
  267. package/dist/envelope/subset.js.map +0 -1
  268. package/dist/memory/consult-contract.d.ts +0 -8
  269. package/dist/memory/consult-contract.d.ts.map +0 -1
  270. package/dist/memory/consult-contract.js.map +0 -1
  271. package/dist/multi-agent/agent-message-queue.d.ts +0 -104
  272. package/dist/multi-agent/agent-message-queue.d.ts.map +0 -1
  273. package/dist/multi-agent/agent-message-queue.js +0 -227
  274. package/dist/multi-agent/agent-message-queue.js.map +0 -1
  275. package/dist/multi-agent/background-task-manager.d.ts +0 -248
  276. package/dist/multi-agent/background-task-manager.d.ts.map +0 -1
  277. package/dist/multi-agent/background-task-manager.js +0 -415
  278. package/dist/multi-agent/background-task-manager.js.map +0 -1
  279. package/dist/multi-agent/category-router.d.ts +0 -56
  280. package/dist/multi-agent/category-router.d.ts.map +0 -1
  281. package/dist/multi-agent/category-router.js +0 -99
  282. package/dist/multi-agent/category-router.js.map +0 -1
  283. package/dist/multi-agent/council-engine.d.ts +0 -60
  284. package/dist/multi-agent/council-engine.d.ts.map +0 -1
  285. package/dist/multi-agent/council-engine.js +0 -284
  286. package/dist/multi-agent/council-engine.js.map +0 -1
  287. package/dist/multi-agent/delegation-format-validator.d.ts +0 -22
  288. package/dist/multi-agent/delegation-format-validator.d.ts.map +0 -1
  289. package/dist/multi-agent/delegation-format-validator.js +0 -31
  290. package/dist/multi-agent/delegation-format-validator.js.map +0 -1
  291. package/dist/multi-agent/delegation-manager.d.ts +0 -128
  292. package/dist/multi-agent/delegation-manager.d.ts.map +0 -1
  293. package/dist/multi-agent/delegation-manager.js +0 -276
  294. package/dist/multi-agent/delegation-manager.js.map +0 -1
  295. package/dist/multi-agent/i18n-messages.d.ts +0 -35
  296. package/dist/multi-agent/i18n-messages.d.ts.map +0 -1
  297. package/dist/multi-agent/i18n-messages.js +0 -54
  298. package/dist/multi-agent/i18n-messages.js.map +0 -1
  299. package/dist/multi-agent/index.d.ts +0 -31
  300. package/dist/multi-agent/index.d.ts.map +0 -1
  301. package/dist/multi-agent/index.js +0 -46
  302. package/dist/multi-agent/index.js.map +0 -1
  303. package/dist/multi-agent/multi-agent-base.d.ts +0 -223
  304. package/dist/multi-agent/multi-agent-base.d.ts.map +0 -1
  305. package/dist/multi-agent/multi-agent-base.js +0 -592
  306. package/dist/multi-agent/multi-agent-base.js.map +0 -1
  307. package/dist/multi-agent/multi-agent-discord.d.ts +0 -142
  308. package/dist/multi-agent/multi-agent-discord.d.ts.map +0 -1
  309. package/dist/multi-agent/multi-agent-discord.js +0 -1235
  310. package/dist/multi-agent/multi-agent-discord.js.map +0 -1
  311. package/dist/multi-agent/multi-agent-slack.d.ts +0 -146
  312. package/dist/multi-agent/multi-agent-slack.d.ts.map +0 -1
  313. package/dist/multi-agent/multi-agent-slack.js +0 -953
  314. package/dist/multi-agent/multi-agent-slack.js.map +0 -1
  315. package/dist/multi-agent/multi-bot-manager.d.ts +0 -119
  316. package/dist/multi-agent/multi-bot-manager.d.ts.map +0 -1
  317. package/dist/multi-agent/multi-bot-manager.js +0 -449
  318. package/dist/multi-agent/multi-bot-manager.js.map +0 -1
  319. package/dist/multi-agent/orchestrator.d.ts +0 -110
  320. package/dist/multi-agent/orchestrator.d.ts.map +0 -1
  321. package/dist/multi-agent/orchestrator.js +0 -436
  322. package/dist/multi-agent/orchestrator.js.map +0 -1
  323. package/dist/multi-agent/rate-limiter.d.ts +0 -76
  324. package/dist/multi-agent/rate-limiter.d.ts.map +0 -1
  325. package/dist/multi-agent/rate-limiter.js +0 -128
  326. package/dist/multi-agent/rate-limiter.js.map +0 -1
  327. package/dist/multi-agent/shared-context.d.ts +0 -127
  328. package/dist/multi-agent/shared-context.d.ts.map +0 -1
  329. package/dist/multi-agent/shared-context.js +0 -239
  330. package/dist/multi-agent/shared-context.js.map +0 -1
  331. package/dist/multi-agent/slack-config-validator.d.ts +0 -42
  332. package/dist/multi-agent/slack-config-validator.d.ts.map +0 -1
  333. package/dist/multi-agent/slack-config-validator.js +0 -194
  334. package/dist/multi-agent/slack-config-validator.js.map +0 -1
  335. package/dist/multi-agent/slack-multi-bot-manager.d.ts +0 -143
  336. package/dist/multi-agent/slack-multi-bot-manager.d.ts.map +0 -1
  337. package/dist/multi-agent/slack-multi-bot-manager.js +0 -413
  338. package/dist/multi-agent/slack-multi-bot-manager.js.map +0 -1
  339. package/dist/multi-agent/swarm/swarm-anti-pattern-detector.d.ts +0 -98
  340. package/dist/multi-agent/swarm/swarm-anti-pattern-detector.d.ts.map +0 -1
  341. package/dist/multi-agent/swarm/swarm-anti-pattern-detector.js +0 -225
  342. package/dist/multi-agent/swarm/swarm-anti-pattern-detector.js.map +0 -1
  343. package/dist/multi-agent/swarm/swarm-db.d.ts +0 -175
  344. package/dist/multi-agent/swarm/swarm-db.d.ts.map +0 -1
  345. package/dist/multi-agent/swarm/swarm-db.js +0 -313
  346. package/dist/multi-agent/swarm/swarm-db.js.map +0 -1
  347. package/dist/multi-agent/swarm/swarm-event-reporter.d.ts +0 -116
  348. package/dist/multi-agent/swarm/swarm-event-reporter.d.ts.map +0 -1
  349. package/dist/multi-agent/swarm/swarm-event-reporter.js +0 -243
  350. package/dist/multi-agent/swarm/swarm-event-reporter.js.map +0 -1
  351. package/dist/multi-agent/swarm/swarm-mama-adapter.d.ts +0 -57
  352. package/dist/multi-agent/swarm/swarm-mama-adapter.d.ts.map +0 -1
  353. package/dist/multi-agent/swarm/swarm-mama-adapter.js +0 -87
  354. package/dist/multi-agent/swarm/swarm-mama-adapter.js.map +0 -1
  355. package/dist/multi-agent/swarm/swarm-manager.d.ts +0 -122
  356. package/dist/multi-agent/swarm/swarm-manager.d.ts.map +0 -1
  357. package/dist/multi-agent/swarm/swarm-manager.js +0 -199
  358. package/dist/multi-agent/swarm/swarm-manager.js.map +0 -1
  359. package/dist/multi-agent/swarm/swarm-task-learner.d.ts +0 -104
  360. package/dist/multi-agent/swarm/swarm-task-learner.d.ts.map +0 -1
  361. package/dist/multi-agent/swarm/swarm-task-learner.js +0 -211
  362. package/dist/multi-agent/swarm/swarm-task-learner.js.map +0 -1
  363. package/dist/multi-agent/swarm/swarm-task-runner.d.ts +0 -155
  364. package/dist/multi-agent/swarm/swarm-task-runner.d.ts.map +0 -1
  365. package/dist/multi-agent/swarm/swarm-task-runner.js +0 -615
  366. package/dist/multi-agent/swarm/swarm-task-runner.js.map +0 -1
  367. package/dist/multi-agent/swarm/wave-engine.d.ts +0 -96
  368. package/dist/multi-agent/swarm/wave-engine.d.ts.map +0 -1
  369. package/dist/multi-agent/swarm/wave-engine.js +0 -123
  370. package/dist/multi-agent/swarm/wave-engine.js.map +0 -1
  371. package/dist/multi-agent/system-reminder.d.ts +0 -206
  372. package/dist/multi-agent/system-reminder.d.ts.map +0 -1
  373. package/dist/multi-agent/system-reminder.js +0 -455
  374. package/dist/multi-agent/system-reminder.js.map +0 -1
  375. package/dist/multi-agent/task-continuation.d.ts +0 -74
  376. package/dist/multi-agent/task-continuation.d.ts.map +0 -1
  377. package/dist/multi-agent/task-continuation.js +0 -172
  378. package/dist/multi-agent/task-continuation.js.map +0 -1
  379. package/dist/multi-agent/ultrawork-state.d.ts +0 -57
  380. package/dist/multi-agent/ultrawork-state.d.ts.map +0 -1
  381. package/dist/multi-agent/ultrawork-state.js +0 -191
  382. package/dist/multi-agent/ultrawork-state.js.map +0 -1
  383. package/dist/multi-agent/ultrawork.d.ts +0 -152
  384. package/dist/multi-agent/ultrawork.d.ts.map +0 -1
  385. package/dist/multi-agent/ultrawork.js +0 -879
  386. package/dist/multi-agent/ultrawork.js.map +0 -1
  387. package/dist/multi-agent/work-tracker.d.ts +0 -22
  388. package/dist/multi-agent/work-tracker.d.ts.map +0 -1
  389. package/dist/multi-agent/work-tracker.js +0 -45
  390. package/dist/multi-agent/work-tracker.js.map +0 -1
  391. package/dist/multi-agent/workflow-engine.d.ts +0 -87
  392. package/dist/multi-agent/workflow-engine.d.ts.map +0 -1
  393. package/dist/multi-agent/workflow-engine.js +0 -604
  394. package/dist/multi-agent/workflow-engine.js.map +0 -1
  395. package/dist/onboarding/all-tools.d.ts +0 -18
  396. package/dist/onboarding/all-tools.d.ts.map +0 -1
  397. package/dist/onboarding/all-tools.js +0 -149
  398. package/dist/onboarding/all-tools.js.map +0 -1
  399. package/dist/onboarding/autonomous-discovery-tools.d.ts +0 -23
  400. package/dist/onboarding/autonomous-discovery-tools.d.ts.map +0 -1
  401. package/dist/onboarding/autonomous-discovery-tools.js +0 -268
  402. package/dist/onboarding/autonomous-discovery-tools.js.map +0 -1
  403. package/dist/onboarding/onboarding-state.d.ts +0 -70
  404. package/dist/onboarding/onboarding-state.d.ts.map +0 -1
  405. package/dist/onboarding/onboarding-state.js +0 -183
  406. package/dist/onboarding/onboarding-state.js.map +0 -1
  407. package/dist/onboarding/personality-quiz.d.ts +0 -35
  408. package/dist/onboarding/personality-quiz.d.ts.map +0 -1
  409. package/dist/onboarding/personality-quiz.js +0 -219
  410. package/dist/onboarding/personality-quiz.js.map +0 -1
  411. package/dist/onboarding/phase-5-summary.d.ts +0 -26
  412. package/dist/onboarding/phase-5-summary.d.ts.map +0 -1
  413. package/dist/onboarding/phase-5-summary.js +0 -153
  414. package/dist/onboarding/phase-5-summary.js.map +0 -1
  415. package/dist/onboarding/phase-6-security.d.ts +0 -33
  416. package/dist/onboarding/phase-6-security.d.ts.map +0 -1
  417. package/dist/onboarding/phase-6-security.js +0 -473
  418. package/dist/onboarding/phase-6-security.js.map +0 -1
  419. package/dist/onboarding/phase-7-integrations.d.ts +0 -91
  420. package/dist/onboarding/phase-7-integrations.d.ts.map +0 -1
  421. package/dist/onboarding/phase-7-integrations.js +0 -725
  422. package/dist/onboarding/phase-7-integrations.js.map +0 -1
  423. package/dist/onboarding/phase-8-demo.d.ts +0 -43
  424. package/dist/onboarding/phase-8-demo.d.ts.map +0 -1
  425. package/dist/onboarding/phase-8-demo.js +0 -346
  426. package/dist/onboarding/phase-8-demo.js.map +0 -1
  427. package/dist/onboarding/phase-9-finalization.d.ts +0 -27
  428. package/dist/onboarding/phase-9-finalization.d.ts.map +0 -1
  429. package/dist/onboarding/phase-9-finalization.js +0 -417
  430. package/dist/onboarding/phase-9-finalization.js.map +0 -1
  431. package/dist/onboarding/ritual-prompt.d.ts +0 -2
  432. package/dist/onboarding/ritual-prompt.d.ts.map +0 -1
  433. package/dist/onboarding/ritual-prompt.js +0 -285
  434. package/dist/onboarding/ritual-prompt.js.map +0 -1
  435. package/dist/onboarding/ritual-tools.d.ts +0 -17
  436. package/dist/onboarding/ritual-tools.d.ts.map +0 -1
  437. package/dist/onboarding/ritual-tools.js +0 -93
  438. package/dist/onboarding/ritual-tools.js.map +0 -1
  439. package/dist/setup/setup-tools.d.ts +0 -13
  440. package/dist/setup/setup-tools.d.ts.map +0 -1
  441. package/dist/setup/setup-tools.js +0 -106
  442. package/dist/setup/setup-tools.js.map +0 -1
  443. package/dist/utils/slack-input-validator.d.ts +0 -74
  444. package/dist/utils/slack-input-validator.d.ts.map +0 -1
  445. package/dist/utils/slack-input-validator.js +0 -275
  446. package/dist/utils/slack-input-validator.js.map +0 -1
  447. package/dist/utils/slack-rate-limiter.d.ts +0 -139
  448. package/dist/utils/slack-rate-limiter.d.ts.map +0 -1
  449. package/dist/utils/slack-rate-limiter.js +0 -324
  450. package/dist/utils/slack-rate-limiter.js.map +0 -1
  451. package/dist/wiki/wiki-compiler.d.ts +0 -13
  452. package/dist/wiki/wiki-compiler.d.ts.map +0 -1
  453. package/dist/wiki/wiki-compiler.js +0 -82
  454. package/dist/wiki/wiki-compiler.js.map +0 -1
@@ -1,248 +0,0 @@
1
- /**
2
- * Background Task Manager
3
- *
4
- * Manages background task delegation for the multi-agent swarm system.
5
- * Queues tasks, enforces concurrency limits per agent, tracks lifecycle,
6
- * stores results, and emits events on completion/failure.
7
- *
8
- * Features:
9
- * - Per-agent concurrency limits (configurable)
10
- * - Global concurrency cap
11
- * - Task lifecycle: pending → running → completed → failed
12
- * - Result storage with recent-completed retention (last 50)
13
- * - EventEmitter for task-started / task-completed / task-failed
14
- * - Stale task detection with configurable timeout
15
- * - Queue size limits to prevent unbounded growth
16
- *
17
- * @module background-task-manager
18
- * @version 1.0
19
- */
20
- import { EventEmitter } from 'events';
21
- /**
22
- * Task status lifecycle
23
- */
24
- export type BackgroundTaskStatus = 'pending' | 'running' | 'completed' | 'failed';
25
- /**
26
- * A background task tracked by the manager
27
- */
28
- export interface BackgroundTask {
29
- /** Unique task ID with bg_ prefix (e.g. bg_a1b2c3d4) */
30
- id: string;
31
- /** Current lifecycle status */
32
- status: BackgroundTaskStatus;
33
- /** Human-readable task description */
34
- description: string;
35
- /** Full prompt to send to the executing agent */
36
- prompt: string;
37
- /** Agent ID that executes this task */
38
- agentId: string;
39
- /** Agent ID that requested this task */
40
- requestedBy: string;
41
- /** Source channel ID */
42
- channelId: string;
43
- /** Platform source */
44
- source: 'discord' | 'slack';
45
- /** Timestamp when task was queued */
46
- queuedAt: number;
47
- /** Timestamp when task started executing */
48
- startedAt?: number;
49
- /** Timestamp when task completed or failed */
50
- completedAt?: number;
51
- /** Agent response on success */
52
- result?: string;
53
- /** Error message on failure */
54
- error?: string;
55
- /** Execution duration in milliseconds */
56
- duration?: number;
57
- /** Number of retry attempts due to busy process */
58
- retryCount?: number;
59
- }
60
- /**
61
- * Options for submitting a new background task
62
- */
63
- export interface BackgroundTaskSubmitOptions {
64
- /** Human-readable task description */
65
- description: string;
66
- /** Full prompt to send to the executing agent */
67
- prompt: string;
68
- /** Agent ID that executes this task */
69
- agentId: string;
70
- /** Agent ID that requested this task */
71
- requestedBy: string;
72
- /** Source channel ID */
73
- channelId: string;
74
- /** Platform source */
75
- source: 'discord' | 'slack';
76
- }
77
- /**
78
- * Configuration options for BackgroundTaskManager
79
- */
80
- export interface BackgroundTaskManagerOptions {
81
- /** Maximum concurrent tasks per agent (default: 2) */
82
- maxConcurrentPerAgent?: number;
83
- /** Maximum total concurrent tasks across all agents (default: 5) */
84
- maxTotalConcurrent?: number;
85
- /** Timeout in ms after which a running task is considered stale (default: 300000 = 5min) */
86
- staleTimeoutMs?: number;
87
- /** Maximum number of pending tasks in the queue (default: 20) */
88
- maxQueueSize?: number;
89
- }
90
- /**
91
- * Aggregate task statistics
92
- */
93
- export interface BackgroundTaskStats {
94
- /** Number of tasks waiting to execute */
95
- pending: number;
96
- /** Number of tasks currently running */
97
- running: number;
98
- /** Number of successfully completed tasks */
99
- completed: number;
100
- /** Number of failed tasks */
101
- failed: number;
102
- /** Total tasks submitted since manager creation */
103
- totalSubmitted: number;
104
- }
105
- /**
106
- * Event payload emitted on task lifecycle transitions
107
- */
108
- export interface BackgroundTaskEvent {
109
- /** The task that triggered the event */
110
- task: BackgroundTask;
111
- }
112
- /**
113
- * Background Task Manager
114
- *
115
- * Manages background task execution for the multi-agent swarm.
116
- * Tasks are queued, executed respecting concurrency limits, and
117
- * results are stored for later retrieval.
118
- *
119
- * @example
120
- * ```typescript
121
- * const manager = new BackgroundTaskManager(
122
- * async (agentId, prompt) => {
123
- * const response = await agentProcess.sendMessage(prompt);
124
- * return response.text;
125
- * },
126
- * { maxConcurrentPerAgent: 2, maxTotalConcurrent: 5 }
127
- * );
128
- *
129
- * const task = manager.submit({
130
- * description: 'Analyze auth module',
131
- * prompt: 'Review the auth module for security issues',
132
- * agentId: 'reviewer',
133
- * requestedBy: 'conductor',
134
- * channelId: '123456789',
135
- * source: 'discord',
136
- * });
137
- *
138
- * manager.on('task-completed', ({ task }) => {
139
- * console.log(`Task ${task.id} done: ${task.result}`);
140
- * });
141
- * ```
142
- */
143
- export declare class BackgroundTaskManager extends EventEmitter {
144
- private tasks;
145
- private pendingQueue;
146
- private runningSet;
147
- private completedList;
148
- private totalSubmitted;
149
- private options;
150
- private executeTask;
151
- constructor(executeTask: (agentId: string, prompt: string) => Promise<string>, options?: BackgroundTaskManagerOptions);
152
- /**
153
- * Submit a new background task
154
- *
155
- * Creates a task with status='pending' and schedules queue processing.
156
- *
157
- * @param opts - Task submission options
158
- * @returns The created BackgroundTask with status='pending'
159
- * @throws Error if the queue is full
160
- *
161
- * @example
162
- * ```typescript
163
- * const task = manager.submit({
164
- * description: 'Fix auth bug',
165
- * prompt: 'Find and fix the JWT validation bug in auth.ts',
166
- * agentId: 'developer',
167
- * requestedBy: 'conductor',
168
- * channelId: '999888777',
169
- * source: 'discord',
170
- * });
171
- * console.log(task.id); // "bg_a1b2c3d4"
172
- * ```
173
- */
174
- submit(opts: BackgroundTaskSubmitOptions): BackgroundTask;
175
- /**
176
- * Get a task by ID
177
- *
178
- * @param taskId - Task ID to look up
179
- * @returns The task or undefined if not found
180
- */
181
- getTask(taskId: string): BackgroundTask | undefined;
182
- /**
183
- * Get the result string of a completed task
184
- *
185
- * @param taskId - Task ID to look up
186
- * @returns The result string or undefined if not found/not completed
187
- */
188
- getResult(taskId: string): string | undefined;
189
- /**
190
- * Cancel a pending or running task
191
- *
192
- * Pending tasks are removed from the queue.
193
- * Running tasks are marked as failed with a cancellation error.
194
- *
195
- * @param taskId - Task ID to cancel
196
- * @returns true if the task was cancelled, false if not found or already terminal
197
- */
198
- cancelTask(taskId: string): boolean;
199
- /**
200
- * Get all pending tasks (ordered by queue position)
201
- *
202
- * @returns Array of pending BackgroundTask objects
203
- */
204
- getQueuedTasks(): BackgroundTask[];
205
- /**
206
- * Get all currently running tasks
207
- *
208
- * @returns Array of running BackgroundTask objects
209
- */
210
- getRunningTasks(): BackgroundTask[];
211
- /**
212
- * Get recently completed tasks (last 50)
213
- *
214
- * Includes both completed and failed tasks, ordered newest first.
215
- *
216
- * @returns Array of completed/failed BackgroundTask objects
217
- */
218
- getCompletedTasks(): BackgroundTask[];
219
- /**
220
- * Get aggregate task statistics
221
- *
222
- * @returns Task counts by status and total submitted
223
- */
224
- getStats(): BackgroundTaskStats;
225
- /**
226
- * Clean up stale running tasks
227
- *
228
- * Marks running tasks that have exceeded the stale timeout as failed.
229
- * Call this periodically (e.g., every 60 seconds).
230
- *
231
- * @returns Number of stale tasks cleaned up
232
- */
233
- cleanupStale(): number;
234
- private _processQueue;
235
- private _startTask;
236
- /**
237
- * Mark a task as completed with result
238
- *
239
- * @param task - The task to complete
240
- * @param result - Agent response string
241
- */
242
- private _completeTask;
243
- private _failTask;
244
- private _addToCompleted;
245
- private _getRunningCountForAgent;
246
- destroy(): void;
247
- }
248
- //# sourceMappingURL=background-task-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"background-task-manager.d.ts","sourceRoot":"","sources":["../../src/multi-agent/background-task-manager.ts"],"names":[],"mappings":"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"}
@@ -1,415 +0,0 @@
1
- "use strict";
2
- /**
3
- * Background Task Manager
4
- *
5
- * Manages background task delegation for the multi-agent swarm system.
6
- * Queues tasks, enforces concurrency limits per agent, tracks lifecycle,
7
- * stores results, and emits events on completion/failure.
8
- *
9
- * Features:
10
- * - Per-agent concurrency limits (configurable)
11
- * - Global concurrency cap
12
- * - Task lifecycle: pending → running → completed → failed
13
- * - Result storage with recent-completed retention (last 50)
14
- * - EventEmitter for task-started / task-completed / task-failed
15
- * - Stale task detection with configurable timeout
16
- * - Queue size limits to prevent unbounded growth
17
- *
18
- * @module background-task-manager
19
- * @version 1.0
20
- */
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.BackgroundTaskManager = void 0;
23
- const events_1 = require("events");
24
- const crypto_1 = require("crypto");
25
- const config_manager_js_1 = require("../cli/config/config-manager.js");
26
- const MAX_COMPLETED_RETENTION = 50;
27
- const LOG_PREFIX = '[BackgroundTaskManager]';
28
- /**
29
- * Background Task Manager
30
- *
31
- * Manages background task execution for the multi-agent swarm.
32
- * Tasks are queued, executed respecting concurrency limits, and
33
- * results are stored for later retrieval.
34
- *
35
- * @example
36
- * ```typescript
37
- * const manager = new BackgroundTaskManager(
38
- * async (agentId, prompt) => {
39
- * const response = await agentProcess.sendMessage(prompt);
40
- * return response.text;
41
- * },
42
- * { maxConcurrentPerAgent: 2, maxTotalConcurrent: 5 }
43
- * );
44
- *
45
- * const task = manager.submit({
46
- * description: 'Analyze auth module',
47
- * prompt: 'Review the auth module for security issues',
48
- * agentId: 'reviewer',
49
- * requestedBy: 'conductor',
50
- * channelId: '123456789',
51
- * source: 'discord',
52
- * });
53
- *
54
- * manager.on('task-completed', ({ task }) => {
55
- * console.log(`Task ${task.id} done: ${task.result}`);
56
- * });
57
- * ```
58
- */
59
- class BackgroundTaskManager extends events_1.EventEmitter {
60
- tasks = new Map();
61
- pendingQueue = [];
62
- runningSet = new Set();
63
- completedList = [];
64
- totalSubmitted = 0;
65
- options;
66
- executeTask;
67
- constructor(executeTask, options) {
68
- super();
69
- this.executeTask = executeTask;
70
- this.options = {
71
- maxConcurrentPerAgent: options?.maxConcurrentPerAgent ?? 2,
72
- maxTotalConcurrent: options?.maxTotalConcurrent ?? 5,
73
- staleTimeoutMs: options?.staleTimeoutMs ?? 300000,
74
- maxQueueSize: options?.maxQueueSize ?? 20,
75
- };
76
- }
77
- /**
78
- * Submit a new background task
79
- *
80
- * Creates a task with status='pending' and schedules queue processing.
81
- *
82
- * @param opts - Task submission options
83
- * @returns The created BackgroundTask with status='pending'
84
- * @throws Error if the queue is full
85
- *
86
- * @example
87
- * ```typescript
88
- * const task = manager.submit({
89
- * description: 'Fix auth bug',
90
- * prompt: 'Find and fix the JWT validation bug in auth.ts',
91
- * agentId: 'developer',
92
- * requestedBy: 'conductor',
93
- * channelId: '999888777',
94
- * source: 'discord',
95
- * });
96
- * console.log(task.id); // "bg_a1b2c3d4"
97
- * ```
98
- */
99
- submit(opts) {
100
- if (this.pendingQueue.length >= this.options.maxQueueSize) {
101
- throw new Error(`${LOG_PREFIX} Queue full (${this.pendingQueue.length}/${this.options.maxQueueSize}), cannot submit task`);
102
- }
103
- const task = {
104
- id: `bg_${(0, crypto_1.randomUUID)().slice(0, 8)}`,
105
- status: 'pending',
106
- description: opts.description,
107
- prompt: opts.prompt,
108
- agentId: opts.agentId,
109
- requestedBy: opts.requestedBy,
110
- channelId: opts.channelId,
111
- source: opts.source,
112
- queuedAt: Date.now(),
113
- };
114
- this.tasks.set(task.id, task);
115
- this.pendingQueue.push(task.id);
116
- this.totalSubmitted++;
117
- console.log(`${LOG_PREFIX} Task submitted: ${task.id} (agent=${task.agentId}, queue=${this.pendingQueue.length}/${this.options.maxQueueSize})`);
118
- queueMicrotask(() => {
119
- this._processQueue();
120
- });
121
- return task;
122
- }
123
- /**
124
- * Get a task by ID
125
- *
126
- * @param taskId - Task ID to look up
127
- * @returns The task or undefined if not found
128
- */
129
- getTask(taskId) {
130
- return this.tasks.get(taskId);
131
- }
132
- /**
133
- * Get the result string of a completed task
134
- *
135
- * @param taskId - Task ID to look up
136
- * @returns The result string or undefined if not found/not completed
137
- */
138
- getResult(taskId) {
139
- const task = this.tasks.get(taskId);
140
- if (!task || task.status !== 'completed') {
141
- return undefined;
142
- }
143
- return task.result;
144
- }
145
- /**
146
- * Cancel a pending or running task
147
- *
148
- * Pending tasks are removed from the queue.
149
- * Running tasks are marked as failed with a cancellation error.
150
- *
151
- * @param taskId - Task ID to cancel
152
- * @returns true if the task was cancelled, false if not found or already terminal
153
- */
154
- cancelTask(taskId) {
155
- const task = this.tasks.get(taskId);
156
- if (!task) {
157
- return false;
158
- }
159
- if (task.status === 'completed' || task.status === 'failed') {
160
- return false;
161
- }
162
- if (task.status === 'pending') {
163
- const idx = this.pendingQueue.indexOf(taskId);
164
- if (idx !== -1) {
165
- this.pendingQueue.splice(idx, 1);
166
- }
167
- }
168
- if (task.status === 'running') {
169
- this.runningSet.delete(taskId);
170
- }
171
- task.status = 'failed';
172
- task.error = 'Cancelled';
173
- task.completedAt = Date.now();
174
- if (task.startedAt) {
175
- task.duration = task.completedAt - task.startedAt;
176
- }
177
- this._addToCompleted(taskId);
178
- console.log(`${LOG_PREFIX} Task cancelled: ${task.id}`);
179
- this.emit('task-failed', { task });
180
- this._processQueue();
181
- return true;
182
- }
183
- /**
184
- * Get all pending tasks (ordered by queue position)
185
- *
186
- * @returns Array of pending BackgroundTask objects
187
- */
188
- getQueuedTasks() {
189
- const tasks = [];
190
- for (const id of this.pendingQueue) {
191
- const task = this.tasks.get(id);
192
- if (task && task.status === 'pending') {
193
- tasks.push(task);
194
- }
195
- }
196
- return tasks;
197
- }
198
- /**
199
- * Get all currently running tasks
200
- *
201
- * @returns Array of running BackgroundTask objects
202
- */
203
- getRunningTasks() {
204
- const tasks = [];
205
- for (const id of this.runningSet) {
206
- const task = this.tasks.get(id);
207
- if (task && task.status === 'running') {
208
- tasks.push(task);
209
- }
210
- }
211
- return tasks;
212
- }
213
- /**
214
- * Get recently completed tasks (last 50)
215
- *
216
- * Includes both completed and failed tasks, ordered newest first.
217
- *
218
- * @returns Array of completed/failed BackgroundTask objects
219
- */
220
- getCompletedTasks() {
221
- const tasks = [];
222
- for (let i = this.completedList.length - 1; i >= 0; i--) {
223
- const task = this.tasks.get(this.completedList[i]);
224
- if (task) {
225
- tasks.push(task);
226
- }
227
- }
228
- return tasks;
229
- }
230
- /**
231
- * Get aggregate task statistics
232
- *
233
- * @returns Task counts by status and total submitted
234
- */
235
- getStats() {
236
- let pending = 0;
237
- let running = 0;
238
- let completed = 0;
239
- let failed = 0;
240
- for (const task of this.tasks.values()) {
241
- switch (task.status) {
242
- case 'pending':
243
- pending++;
244
- break;
245
- case 'running':
246
- running++;
247
- break;
248
- case 'completed':
249
- completed++;
250
- break;
251
- case 'failed':
252
- failed++;
253
- break;
254
- }
255
- }
256
- return { pending, running, completed, failed, totalSubmitted: this.totalSubmitted };
257
- }
258
- /**
259
- * Clean up stale running tasks
260
- *
261
- * Marks running tasks that have exceeded the stale timeout as failed.
262
- * Call this periodically (e.g., every 60 seconds).
263
- *
264
- * @returns Number of stale tasks cleaned up
265
- */
266
- cleanupStale() {
267
- const now = Date.now();
268
- let cleaned = 0;
269
- for (const taskId of Array.from(this.runningSet)) {
270
- const task = this.tasks.get(taskId);
271
- if (!task || !task.startedAt) {
272
- continue;
273
- }
274
- const elapsed = now - task.startedAt;
275
- if (elapsed > this.options.staleTimeoutMs) {
276
- console.warn(`${LOG_PREFIX} Stale task detected: ${task.id} (agent=${task.agentId}, running for ${Math.floor(elapsed / 1000)}s)`);
277
- task.status = 'failed';
278
- task.error = `Stale: exceeded ${Math.floor(this.options.staleTimeoutMs / 1000)}s timeout`;
279
- task.completedAt = now;
280
- task.duration = elapsed;
281
- this.runningSet.delete(taskId);
282
- this._addToCompleted(taskId);
283
- this.emit('task-failed', { task });
284
- cleaned++;
285
- }
286
- }
287
- if (cleaned > 0) {
288
- console.log(`${LOG_PREFIX} Cleaned up ${cleaned} stale task(s)`);
289
- this._processQueue();
290
- }
291
- return cleaned;
292
- }
293
- _processQueue() {
294
- while (this.pendingQueue.length > 0) {
295
- if (this.runningSet.size >= this.options.maxTotalConcurrent) {
296
- break;
297
- }
298
- const nextId = this.pendingQueue[0];
299
- const task = this.tasks.get(nextId);
300
- if (!task || task.status !== 'pending') {
301
- this.pendingQueue.shift();
302
- continue;
303
- }
304
- const agentRunning = this._getRunningCountForAgent(task.agentId);
305
- if (agentRunning >= this.options.maxConcurrentPerAgent) {
306
- // FIFO queue — no reordering; agent at capacity blocks further dequeuing
307
- break;
308
- }
309
- this.pendingQueue.shift();
310
- this._startTask(task);
311
- }
312
- }
313
- _startTask(task) {
314
- task.status = 'running';
315
- task.startedAt = Date.now();
316
- this.runningSet.add(task.id);
317
- console.log(`${LOG_PREFIX} Task started: ${task.id} (agent=${task.agentId}, running=${this.runningSet.size}/${this.options.maxTotalConcurrent})`);
318
- this.emit('task-started', { task });
319
- const MAX_BUSY_RETRIES = 5;
320
- const BUSY_RETRY_DELAY_MS = (0, config_manager_js_1.getConfig)().timeouts?.busy_retry_ms ?? 5_000;
321
- Promise.resolve()
322
- .then(() => this.executeTask(task.agentId, task.prompt))
323
- .then((result) => {
324
- this._completeTask(task, result);
325
- })
326
- .catch((err) => {
327
- const errorMessage = err instanceof Error ? err.message : String(err);
328
- const isBusy = errorMessage.includes('Process is busy');
329
- const retries = task.retryCount ?? 0;
330
- if (isBusy && retries < MAX_BUSY_RETRIES) {
331
- // Re-queue: revert to pending and retry after delay
332
- task.status = 'pending';
333
- task.startedAt = undefined;
334
- task.retryCount = retries + 1;
335
- this.runningSet.delete(task.id);
336
- this.pendingQueue.unshift(task.id);
337
- console.log(`${LOG_PREFIX} Task ${task.id} agent busy, re-queued (retry ${task.retryCount}/${MAX_BUSY_RETRIES})`);
338
- setTimeout(() => this._processQueue(), BUSY_RETRY_DELAY_MS);
339
- }
340
- else {
341
- this._failTask(task, errorMessage);
342
- }
343
- });
344
- }
345
- /**
346
- * Mark a task as completed with result
347
- *
348
- * @param task - The task to complete
349
- * @param result - Agent response string
350
- */
351
- _completeTask(task, result) {
352
- if (task.status !== 'running') {
353
- return;
354
- }
355
- const now = Date.now();
356
- task.status = 'completed';
357
- task.result = result;
358
- task.completedAt = now;
359
- task.duration = task.startedAt ? now - task.startedAt : 0;
360
- this.runningSet.delete(task.id);
361
- this._addToCompleted(task.id);
362
- console.log(`${LOG_PREFIX} Task completed: ${task.id} (agent=${task.agentId}, duration=${task.duration}ms)`);
363
- this.emit('task-completed', { task });
364
- this._processQueue();
365
- }
366
- _failTask(task, errorMessage) {
367
- if (task.status !== 'running') {
368
- return;
369
- }
370
- const now = Date.now();
371
- task.status = 'failed';
372
- task.error = errorMessage;
373
- task.completedAt = now;
374
- task.duration = task.startedAt ? now - task.startedAt : 0;
375
- this.runningSet.delete(task.id);
376
- this._addToCompleted(task.id);
377
- console.error(`${LOG_PREFIX} Task failed: ${task.id} (agent=${task.agentId}, error=${errorMessage})`);
378
- this.emit('task-failed', { task });
379
- this._processQueue();
380
- }
381
- _addToCompleted(taskId) {
382
- this.completedList.push(taskId);
383
- while (this.completedList.length > MAX_COMPLETED_RETENTION) {
384
- const evictedId = this.completedList.shift();
385
- if (evictedId) {
386
- this.tasks.delete(evictedId);
387
- }
388
- }
389
- }
390
- _getRunningCountForAgent(agentId) {
391
- let count = 0;
392
- for (const taskId of this.runningSet) {
393
- const task = this.tasks.get(taskId);
394
- if (task && task.agentId === agentId) {
395
- count++;
396
- }
397
- }
398
- return count;
399
- }
400
- destroy() {
401
- for (const taskId of [...this.pendingQueue]) {
402
- this.cancelTask(taskId);
403
- }
404
- for (const taskId of [...this.runningSet]) {
405
- this.cancelTask(taskId);
406
- }
407
- this.tasks.clear();
408
- this.pendingQueue = [];
409
- this.completedList = [];
410
- this.removeAllListeners();
411
- console.log(`${LOG_PREFIX} Destroyed — all tasks cancelled, listeners removed`);
412
- }
413
- }
414
- exports.BackgroundTaskManager = BackgroundTaskManager;
415
- //# sourceMappingURL=background-task-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"background-task-manager.js","sourceRoot":"","sources":["../../src/multi-agent/background-task-manager.ts"],"names":[],"mappings":"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"}