@jungjaehoon/mama-os 0.28.6 → 0.29.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 (452) 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 +33 -10
  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/api-routes-init.d.ts.map +1 -1
  82. package/dist/cli/runtime/api-routes-init.js +32 -5
  83. package/dist/cli/runtime/api-routes-init.js.map +1 -1
  84. package/dist/cli/runtime/api-server-init.d.ts.map +1 -1
  85. package/dist/cli/runtime/api-server-init.js +2 -0
  86. package/dist/cli/runtime/api-server-init.js.map +1 -1
  87. package/dist/cli/runtime/gateway-init.d.ts +1 -1
  88. package/dist/cli/runtime/gateway-init.d.ts.map +1 -1
  89. package/dist/cli/runtime/gateway-init.js +11 -38
  90. package/dist/cli/runtime/gateway-init.js.map +1 -1
  91. package/dist/cli/runtime/gateway-wiring.d.ts.map +1 -1
  92. package/dist/cli/runtime/gateway-wiring.js +6 -120
  93. package/dist/cli/runtime/gateway-wiring.js.map +1 -1
  94. package/dist/cli/utils/pid-manager.d.ts +0 -10
  95. package/dist/cli/utils/pid-manager.d.ts.map +1 -1
  96. package/dist/cli/utils/pid-manager.js +0 -26
  97. package/dist/cli/utils/pid-manager.js.map +1 -1
  98. package/dist/connectors/framework/polling-scheduler.d.ts +33 -1
  99. package/dist/connectors/framework/polling-scheduler.d.ts.map +1 -1
  100. package/dist/connectors/framework/polling-scheduler.js +46 -40
  101. package/dist/connectors/framework/polling-scheduler.js.map +1 -1
  102. package/dist/connectors/trello/query-tools.d.ts +32 -5
  103. package/dist/connectors/trello/query-tools.d.ts.map +1 -1
  104. package/dist/connectors/trello/query-tools.js +56 -17
  105. package/dist/connectors/trello/query-tools.js.map +1 -1
  106. package/dist/db/agent-store.d.ts +0 -4
  107. package/dist/db/agent-store.d.ts.map +1 -1
  108. package/dist/db/agent-store.js +0 -65
  109. package/dist/db/agent-store.js.map +1 -1
  110. package/dist/envelope/enforcer.d.ts.map +1 -1
  111. package/dist/envelope/enforcer.js +10 -1
  112. package/dist/envelope/enforcer.js.map +1 -1
  113. package/dist/envelope/index.d.ts +0 -1
  114. package/dist/envelope/index.d.ts.map +1 -1
  115. package/dist/envelope/index.js +0 -1
  116. package/dist/envelope/index.js.map +1 -1
  117. package/dist/envelope/signature.d.ts +0 -1
  118. package/dist/envelope/signature.d.ts.map +1 -1
  119. package/dist/envelope/signature.js +0 -7
  120. package/dist/envelope/signature.js.map +1 -1
  121. package/dist/envelope/tool-connector-scope.d.ts +35 -0
  122. package/dist/envelope/tool-connector-scope.d.ts.map +1 -0
  123. package/dist/envelope/tool-connector-scope.js +57 -0
  124. package/dist/envelope/tool-connector-scope.js.map +1 -0
  125. package/dist/evidence/effects.d.ts +107 -0
  126. package/dist/evidence/effects.d.ts.map +1 -0
  127. package/dist/evidence/effects.js +281 -0
  128. package/dist/evidence/effects.js.map +1 -0
  129. package/dist/evidence/read.d.ts +75 -0
  130. package/dist/evidence/read.d.ts.map +1 -0
  131. package/dist/evidence/read.js +105 -0
  132. package/dist/evidence/read.js.map +1 -0
  133. package/dist/gateways/base-gateway.d.ts +23 -3
  134. package/dist/gateways/base-gateway.d.ts.map +1 -1
  135. package/dist/gateways/base-gateway.js +15 -2
  136. package/dist/gateways/base-gateway.js.map +1 -1
  137. package/dist/gateways/discord.d.ts +4 -16
  138. package/dist/gateways/discord.d.ts.map +1 -1
  139. package/dist/gateways/discord.js +22 -189
  140. package/dist/gateways/discord.js.map +1 -1
  141. package/dist/gateways/index.d.ts +2 -1
  142. package/dist/gateways/index.d.ts.map +1 -1
  143. package/dist/gateways/message-router.d.ts +13 -20
  144. package/dist/gateways/message-router.d.ts.map +1 -1
  145. package/dist/gateways/message-router.js +32 -3
  146. package/dist/gateways/message-router.js.map +1 -1
  147. package/dist/gateways/slack.d.ts +2 -12
  148. package/dist/gateways/slack.d.ts.map +1 -1
  149. package/dist/gateways/slack.js +6 -220
  150. package/dist/gateways/slack.js.map +1 -1
  151. package/dist/gateways/telegram.d.ts +2 -2
  152. package/dist/gateways/telegram.d.ts.map +1 -1
  153. package/dist/gateways/telegram.js +3 -2
  154. package/dist/gateways/telegram.js.map +1 -1
  155. package/dist/gateways/turn-contract.d.ts +104 -0
  156. package/dist/gateways/turn-contract.d.ts.map +1 -0
  157. package/dist/{memory/consult-contract.js → gateways/turn-contract.js} +1 -1
  158. package/dist/gateways/turn-contract.js.map +1 -0
  159. package/dist/memory/provenance-live.d.ts +111 -0
  160. package/dist/memory/provenance-live.d.ts.map +1 -0
  161. package/dist/memory/provenance-live.js +381 -0
  162. package/dist/memory/provenance-live.js.map +1 -0
  163. package/dist/memory/provenance-resolver.d.ts +184 -0
  164. package/dist/memory/provenance-resolver.d.ts.map +1 -0
  165. package/dist/memory/provenance-resolver.js +152 -0
  166. package/dist/memory/provenance-resolver.js.map +1 -0
  167. package/dist/multi-agent/agent-event-bus.d.ts +1 -0
  168. package/dist/multi-agent/agent-event-bus.d.ts.map +1 -1
  169. package/dist/multi-agent/bmad-templates.d.ts +0 -18
  170. package/dist/multi-agent/bmad-templates.d.ts.map +1 -1
  171. package/dist/multi-agent/bmad-templates.js +0 -127
  172. package/dist/multi-agent/bmad-templates.js.map +1 -1
  173. package/dist/multi-agent/dashboard-agent-persona.js +3 -3
  174. package/dist/operator/board-reconcile.d.ts +2 -3
  175. package/dist/operator/board-reconcile.d.ts.map +1 -1
  176. package/dist/operator/board-reconcile.js +18 -32
  177. package/dist/operator/board-reconcile.js.map +1 -1
  178. package/dist/operator/changes-projection.d.ts +70 -0
  179. package/dist/operator/changes-projection.d.ts.map +1 -0
  180. package/dist/operator/changes-projection.js +109 -0
  181. package/dist/operator/changes-projection.js.map +1 -0
  182. package/dist/operator/external-correlation.d.ts +94 -0
  183. package/dist/operator/external-correlation.d.ts.map +1 -0
  184. package/dist/operator/external-correlation.js +177 -0
  185. package/dist/operator/external-correlation.js.map +1 -0
  186. package/dist/operator/operator-trigger-loop.d.ts +9 -1
  187. package/dist/operator/operator-trigger-loop.d.ts.map +1 -1
  188. package/dist/operator/operator-trigger-loop.js +8 -4
  189. package/dist/operator/operator-trigger-loop.js.map +1 -1
  190. package/dist/operator/provenance-lookup.d.ts +18 -0
  191. package/dist/operator/provenance-lookup.d.ts.map +1 -0
  192. package/dist/operator/provenance-lookup.js +54 -0
  193. package/dist/operator/provenance-lookup.js.map +1 -0
  194. package/dist/operator/report-carry.d.ts +18 -1
  195. package/dist/operator/report-carry.d.ts.map +1 -1
  196. package/dist/operator/report-carry.js +22 -3
  197. package/dist/operator/report-carry.js.map +1 -1
  198. package/dist/operator/report-run.d.ts +31 -0
  199. package/dist/operator/report-run.d.ts.map +1 -1
  200. package/dist/operator/report-run.js +140 -22
  201. package/dist/operator/report-run.js.map +1 -1
  202. package/dist/operator/task-ledger.d.ts +84 -2
  203. package/dist/operator/task-ledger.d.ts.map +1 -1
  204. package/dist/operator/task-ledger.js +274 -31
  205. package/dist/operator/task-ledger.js.map +1 -1
  206. package/dist/operator/trigger-author.d.ts +7 -0
  207. package/dist/operator/trigger-author.d.ts.map +1 -1
  208. package/dist/operator/trigger-author.js +78 -7
  209. package/dist/operator/trigger-author.js.map +1 -1
  210. package/dist/operator/worker-run.js +1 -1
  211. package/dist/operator/worker-run.js.map +1 -1
  212. package/dist/operator/workorder-hooks.d.ts +79 -4
  213. package/dist/operator/workorder-hooks.d.ts.map +1 -1
  214. package/dist/operator/workorder-hooks.js +152 -20
  215. package/dist/operator/workorder-hooks.js.map +1 -1
  216. package/dist/operator/workorder-publishers.d.ts +2 -0
  217. package/dist/operator/workorder-publishers.d.ts.map +1 -1
  218. package/dist/operator/workorder-publishers.js +8 -1
  219. package/dist/operator/workorder-publishers.js.map +1 -1
  220. package/dist/utils/untrusted-content.d.ts +11 -0
  221. package/dist/utils/untrusted-content.d.ts.map +1 -1
  222. package/dist/utils/untrusted-content.js +20 -0
  223. package/dist/utils/untrusted-content.js.map +1 -1
  224. package/package.json +4 -3
  225. package/scripts/backfill-channel-keys.ts +451 -0
  226. package/dist/agent/auto-recall.d.ts +0 -48
  227. package/dist/agent/auto-recall.d.ts.map +0 -1
  228. package/dist/agent/auto-recall.js +0 -192
  229. package/dist/agent/auto-recall.js.map +0 -1
  230. package/dist/agent/claude-client.d.ts +0 -50
  231. package/dist/agent/claude-client.d.ts.map +0 -1
  232. package/dist/agent/claude-client.js +0 -219
  233. package/dist/agent/claude-client.js.map +0 -1
  234. package/dist/agent/delegation-executor.d.ts +0 -49
  235. package/dist/agent/delegation-executor.d.ts.map +0 -1
  236. package/dist/agent/delegation-executor.js +0 -692
  237. package/dist/agent/delegation-executor.js.map +0 -1
  238. package/dist/agent/mcp-executor.d.ts +0 -60
  239. package/dist/agent/mcp-executor.d.ts.map +0 -1
  240. package/dist/agent/mcp-executor.js +0 -190
  241. package/dist/agent/mcp-executor.js.map +0 -1
  242. package/dist/agent/process-tree.d.ts +0 -6
  243. package/dist/agent/process-tree.d.ts.map +0 -1
  244. package/dist/agent/process-tree.js +0 -21
  245. package/dist/agent/process-tree.js.map +0 -1
  246. package/dist/agent/streaming-callback-manager.d.ts +0 -85
  247. package/dist/agent/streaming-callback-manager.d.ts.map +0 -1
  248. package/dist/agent/streaming-callback-manager.js +0 -103
  249. package/dist/agent/streaming-callback-manager.js.map +0 -1
  250. package/dist/agent/token-budget.d.ts +0 -49
  251. package/dist/agent/token-budget.d.ts.map +0 -1
  252. package/dist/agent/token-budget.js +0 -92
  253. package/dist/agent/token-budget.js.map +0 -1
  254. package/dist/connectors/kagemusha/history-compiler.d.ts +0 -18
  255. package/dist/connectors/kagemusha/history-compiler.d.ts.map +0 -1
  256. package/dist/connectors/kagemusha/history-compiler.js +0 -35
  257. package/dist/connectors/kagemusha/history-compiler.js.map +0 -1
  258. package/dist/db/migrations/wiki-artifacts.d.ts +0 -3
  259. package/dist/db/migrations/wiki-artifacts.d.ts.map +0 -1
  260. package/dist/db/migrations/wiki-artifacts.js +0 -24
  261. package/dist/db/migrations/wiki-artifacts.js.map +0 -1
  262. package/dist/envelope/subset.d.ts +0 -9
  263. package/dist/envelope/subset.d.ts.map +0 -1
  264. package/dist/envelope/subset.js +0 -67
  265. package/dist/envelope/subset.js.map +0 -1
  266. package/dist/memory/consult-contract.d.ts +0 -8
  267. package/dist/memory/consult-contract.d.ts.map +0 -1
  268. package/dist/memory/consult-contract.js.map +0 -1
  269. package/dist/multi-agent/agent-message-queue.d.ts +0 -104
  270. package/dist/multi-agent/agent-message-queue.d.ts.map +0 -1
  271. package/dist/multi-agent/agent-message-queue.js +0 -227
  272. package/dist/multi-agent/agent-message-queue.js.map +0 -1
  273. package/dist/multi-agent/background-task-manager.d.ts +0 -248
  274. package/dist/multi-agent/background-task-manager.d.ts.map +0 -1
  275. package/dist/multi-agent/background-task-manager.js +0 -415
  276. package/dist/multi-agent/background-task-manager.js.map +0 -1
  277. package/dist/multi-agent/category-router.d.ts +0 -56
  278. package/dist/multi-agent/category-router.d.ts.map +0 -1
  279. package/dist/multi-agent/category-router.js +0 -99
  280. package/dist/multi-agent/category-router.js.map +0 -1
  281. package/dist/multi-agent/council-engine.d.ts +0 -60
  282. package/dist/multi-agent/council-engine.d.ts.map +0 -1
  283. package/dist/multi-agent/council-engine.js +0 -284
  284. package/dist/multi-agent/council-engine.js.map +0 -1
  285. package/dist/multi-agent/delegation-format-validator.d.ts +0 -22
  286. package/dist/multi-agent/delegation-format-validator.d.ts.map +0 -1
  287. package/dist/multi-agent/delegation-format-validator.js +0 -31
  288. package/dist/multi-agent/delegation-format-validator.js.map +0 -1
  289. package/dist/multi-agent/delegation-manager.d.ts +0 -128
  290. package/dist/multi-agent/delegation-manager.d.ts.map +0 -1
  291. package/dist/multi-agent/delegation-manager.js +0 -276
  292. package/dist/multi-agent/delegation-manager.js.map +0 -1
  293. package/dist/multi-agent/i18n-messages.d.ts +0 -35
  294. package/dist/multi-agent/i18n-messages.d.ts.map +0 -1
  295. package/dist/multi-agent/i18n-messages.js +0 -54
  296. package/dist/multi-agent/i18n-messages.js.map +0 -1
  297. package/dist/multi-agent/index.d.ts +0 -31
  298. package/dist/multi-agent/index.d.ts.map +0 -1
  299. package/dist/multi-agent/index.js +0 -46
  300. package/dist/multi-agent/index.js.map +0 -1
  301. package/dist/multi-agent/multi-agent-base.d.ts +0 -223
  302. package/dist/multi-agent/multi-agent-base.d.ts.map +0 -1
  303. package/dist/multi-agent/multi-agent-base.js +0 -592
  304. package/dist/multi-agent/multi-agent-base.js.map +0 -1
  305. package/dist/multi-agent/multi-agent-discord.d.ts +0 -142
  306. package/dist/multi-agent/multi-agent-discord.d.ts.map +0 -1
  307. package/dist/multi-agent/multi-agent-discord.js +0 -1235
  308. package/dist/multi-agent/multi-agent-discord.js.map +0 -1
  309. package/dist/multi-agent/multi-agent-slack.d.ts +0 -146
  310. package/dist/multi-agent/multi-agent-slack.d.ts.map +0 -1
  311. package/dist/multi-agent/multi-agent-slack.js +0 -953
  312. package/dist/multi-agent/multi-agent-slack.js.map +0 -1
  313. package/dist/multi-agent/multi-bot-manager.d.ts +0 -119
  314. package/dist/multi-agent/multi-bot-manager.d.ts.map +0 -1
  315. package/dist/multi-agent/multi-bot-manager.js +0 -449
  316. package/dist/multi-agent/multi-bot-manager.js.map +0 -1
  317. package/dist/multi-agent/orchestrator.d.ts +0 -110
  318. package/dist/multi-agent/orchestrator.d.ts.map +0 -1
  319. package/dist/multi-agent/orchestrator.js +0 -436
  320. package/dist/multi-agent/orchestrator.js.map +0 -1
  321. package/dist/multi-agent/rate-limiter.d.ts +0 -76
  322. package/dist/multi-agent/rate-limiter.d.ts.map +0 -1
  323. package/dist/multi-agent/rate-limiter.js +0 -128
  324. package/dist/multi-agent/rate-limiter.js.map +0 -1
  325. package/dist/multi-agent/shared-context.d.ts +0 -127
  326. package/dist/multi-agent/shared-context.d.ts.map +0 -1
  327. package/dist/multi-agent/shared-context.js +0 -239
  328. package/dist/multi-agent/shared-context.js.map +0 -1
  329. package/dist/multi-agent/slack-config-validator.d.ts +0 -42
  330. package/dist/multi-agent/slack-config-validator.d.ts.map +0 -1
  331. package/dist/multi-agent/slack-config-validator.js +0 -194
  332. package/dist/multi-agent/slack-config-validator.js.map +0 -1
  333. package/dist/multi-agent/slack-multi-bot-manager.d.ts +0 -143
  334. package/dist/multi-agent/slack-multi-bot-manager.d.ts.map +0 -1
  335. package/dist/multi-agent/slack-multi-bot-manager.js +0 -413
  336. package/dist/multi-agent/slack-multi-bot-manager.js.map +0 -1
  337. package/dist/multi-agent/swarm/swarm-anti-pattern-detector.d.ts +0 -98
  338. package/dist/multi-agent/swarm/swarm-anti-pattern-detector.d.ts.map +0 -1
  339. package/dist/multi-agent/swarm/swarm-anti-pattern-detector.js +0 -225
  340. package/dist/multi-agent/swarm/swarm-anti-pattern-detector.js.map +0 -1
  341. package/dist/multi-agent/swarm/swarm-db.d.ts +0 -175
  342. package/dist/multi-agent/swarm/swarm-db.d.ts.map +0 -1
  343. package/dist/multi-agent/swarm/swarm-db.js +0 -313
  344. package/dist/multi-agent/swarm/swarm-db.js.map +0 -1
  345. package/dist/multi-agent/swarm/swarm-event-reporter.d.ts +0 -116
  346. package/dist/multi-agent/swarm/swarm-event-reporter.d.ts.map +0 -1
  347. package/dist/multi-agent/swarm/swarm-event-reporter.js +0 -243
  348. package/dist/multi-agent/swarm/swarm-event-reporter.js.map +0 -1
  349. package/dist/multi-agent/swarm/swarm-mama-adapter.d.ts +0 -57
  350. package/dist/multi-agent/swarm/swarm-mama-adapter.d.ts.map +0 -1
  351. package/dist/multi-agent/swarm/swarm-mama-adapter.js +0 -87
  352. package/dist/multi-agent/swarm/swarm-mama-adapter.js.map +0 -1
  353. package/dist/multi-agent/swarm/swarm-manager.d.ts +0 -122
  354. package/dist/multi-agent/swarm/swarm-manager.d.ts.map +0 -1
  355. package/dist/multi-agent/swarm/swarm-manager.js +0 -199
  356. package/dist/multi-agent/swarm/swarm-manager.js.map +0 -1
  357. package/dist/multi-agent/swarm/swarm-task-learner.d.ts +0 -104
  358. package/dist/multi-agent/swarm/swarm-task-learner.d.ts.map +0 -1
  359. package/dist/multi-agent/swarm/swarm-task-learner.js +0 -211
  360. package/dist/multi-agent/swarm/swarm-task-learner.js.map +0 -1
  361. package/dist/multi-agent/swarm/swarm-task-runner.d.ts +0 -155
  362. package/dist/multi-agent/swarm/swarm-task-runner.d.ts.map +0 -1
  363. package/dist/multi-agent/swarm/swarm-task-runner.js +0 -615
  364. package/dist/multi-agent/swarm/swarm-task-runner.js.map +0 -1
  365. package/dist/multi-agent/swarm/wave-engine.d.ts +0 -96
  366. package/dist/multi-agent/swarm/wave-engine.d.ts.map +0 -1
  367. package/dist/multi-agent/swarm/wave-engine.js +0 -123
  368. package/dist/multi-agent/swarm/wave-engine.js.map +0 -1
  369. package/dist/multi-agent/system-reminder.d.ts +0 -206
  370. package/dist/multi-agent/system-reminder.d.ts.map +0 -1
  371. package/dist/multi-agent/system-reminder.js +0 -455
  372. package/dist/multi-agent/system-reminder.js.map +0 -1
  373. package/dist/multi-agent/task-continuation.d.ts +0 -74
  374. package/dist/multi-agent/task-continuation.d.ts.map +0 -1
  375. package/dist/multi-agent/task-continuation.js +0 -172
  376. package/dist/multi-agent/task-continuation.js.map +0 -1
  377. package/dist/multi-agent/ultrawork-state.d.ts +0 -57
  378. package/dist/multi-agent/ultrawork-state.d.ts.map +0 -1
  379. package/dist/multi-agent/ultrawork-state.js +0 -191
  380. package/dist/multi-agent/ultrawork-state.js.map +0 -1
  381. package/dist/multi-agent/ultrawork.d.ts +0 -152
  382. package/dist/multi-agent/ultrawork.d.ts.map +0 -1
  383. package/dist/multi-agent/ultrawork.js +0 -879
  384. package/dist/multi-agent/ultrawork.js.map +0 -1
  385. package/dist/multi-agent/work-tracker.d.ts +0 -22
  386. package/dist/multi-agent/work-tracker.d.ts.map +0 -1
  387. package/dist/multi-agent/work-tracker.js +0 -45
  388. package/dist/multi-agent/work-tracker.js.map +0 -1
  389. package/dist/multi-agent/workflow-engine.d.ts +0 -87
  390. package/dist/multi-agent/workflow-engine.d.ts.map +0 -1
  391. package/dist/multi-agent/workflow-engine.js +0 -604
  392. package/dist/multi-agent/workflow-engine.js.map +0 -1
  393. package/dist/onboarding/all-tools.d.ts +0 -18
  394. package/dist/onboarding/all-tools.d.ts.map +0 -1
  395. package/dist/onboarding/all-tools.js +0 -149
  396. package/dist/onboarding/all-tools.js.map +0 -1
  397. package/dist/onboarding/autonomous-discovery-tools.d.ts +0 -23
  398. package/dist/onboarding/autonomous-discovery-tools.d.ts.map +0 -1
  399. package/dist/onboarding/autonomous-discovery-tools.js +0 -268
  400. package/dist/onboarding/autonomous-discovery-tools.js.map +0 -1
  401. package/dist/onboarding/onboarding-state.d.ts +0 -70
  402. package/dist/onboarding/onboarding-state.d.ts.map +0 -1
  403. package/dist/onboarding/onboarding-state.js +0 -183
  404. package/dist/onboarding/onboarding-state.js.map +0 -1
  405. package/dist/onboarding/personality-quiz.d.ts +0 -35
  406. package/dist/onboarding/personality-quiz.d.ts.map +0 -1
  407. package/dist/onboarding/personality-quiz.js +0 -219
  408. package/dist/onboarding/personality-quiz.js.map +0 -1
  409. package/dist/onboarding/phase-5-summary.d.ts +0 -26
  410. package/dist/onboarding/phase-5-summary.d.ts.map +0 -1
  411. package/dist/onboarding/phase-5-summary.js +0 -153
  412. package/dist/onboarding/phase-5-summary.js.map +0 -1
  413. package/dist/onboarding/phase-6-security.d.ts +0 -33
  414. package/dist/onboarding/phase-6-security.d.ts.map +0 -1
  415. package/dist/onboarding/phase-6-security.js +0 -473
  416. package/dist/onboarding/phase-6-security.js.map +0 -1
  417. package/dist/onboarding/phase-7-integrations.d.ts +0 -91
  418. package/dist/onboarding/phase-7-integrations.d.ts.map +0 -1
  419. package/dist/onboarding/phase-7-integrations.js +0 -725
  420. package/dist/onboarding/phase-7-integrations.js.map +0 -1
  421. package/dist/onboarding/phase-8-demo.d.ts +0 -43
  422. package/dist/onboarding/phase-8-demo.d.ts.map +0 -1
  423. package/dist/onboarding/phase-8-demo.js +0 -346
  424. package/dist/onboarding/phase-8-demo.js.map +0 -1
  425. package/dist/onboarding/phase-9-finalization.d.ts +0 -27
  426. package/dist/onboarding/phase-9-finalization.d.ts.map +0 -1
  427. package/dist/onboarding/phase-9-finalization.js +0 -417
  428. package/dist/onboarding/phase-9-finalization.js.map +0 -1
  429. package/dist/onboarding/ritual-prompt.d.ts +0 -2
  430. package/dist/onboarding/ritual-prompt.d.ts.map +0 -1
  431. package/dist/onboarding/ritual-prompt.js +0 -285
  432. package/dist/onboarding/ritual-prompt.js.map +0 -1
  433. package/dist/onboarding/ritual-tools.d.ts +0 -17
  434. package/dist/onboarding/ritual-tools.d.ts.map +0 -1
  435. package/dist/onboarding/ritual-tools.js +0 -93
  436. package/dist/onboarding/ritual-tools.js.map +0 -1
  437. package/dist/setup/setup-tools.d.ts +0 -13
  438. package/dist/setup/setup-tools.d.ts.map +0 -1
  439. package/dist/setup/setup-tools.js +0 -106
  440. package/dist/setup/setup-tools.js.map +0 -1
  441. package/dist/utils/slack-input-validator.d.ts +0 -74
  442. package/dist/utils/slack-input-validator.d.ts.map +0 -1
  443. package/dist/utils/slack-input-validator.js +0 -275
  444. package/dist/utils/slack-input-validator.js.map +0 -1
  445. package/dist/utils/slack-rate-limiter.d.ts +0 -139
  446. package/dist/utils/slack-rate-limiter.d.ts.map +0 -1
  447. package/dist/utils/slack-rate-limiter.js +0 -324
  448. package/dist/utils/slack-rate-limiter.js.map +0 -1
  449. package/dist/wiki/wiki-compiler.d.ts +0 -13
  450. package/dist/wiki/wiki-compiler.d.ts.map +0 -1
  451. package/dist/wiki/wiki-compiler.js +0 -82
  452. 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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"}