@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,92 +0,0 @@
1
- "use strict";
2
- /**
3
- * Token Budget Enforcement (STORY-008)
4
- *
5
- * Provides fail-closed enforcement of per-model context window limits.
6
- * When total tokens exceed the model's hard limit, a structured error
7
- * is thrown instead of silently truncating.
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.TokenBudgetExceededError = void 0;
11
- exports.getModelLimit = getModelLimit;
12
- exports.calculateBudget = calculateBudget;
13
- exports.enforceBudget = enforceBudget;
14
- const config_manager_js_1 = require("../cli/config/config-manager.js");
15
- const token_estimator_js_1 = require("./token-estimator.js");
16
- /** Default per-model-prefix context window limits */
17
- const DEFAULT_MODEL_LIMITS = {
18
- claude: 180_000,
19
- codex: 120_000,
20
- gpt: 120_000,
21
- };
22
- /**
23
- * Structured error thrown when token budget is exceeded.
24
- */
25
- class TokenBudgetExceededError extends Error {
26
- code = 'TOKEN_BUDGET_EXCEEDED';
27
- budget;
28
- constructor(budget) {
29
- super(`Token budget exceeded for model "${budget.model}": ` +
30
- `${budget.totalTokens} tokens > ${budget.limitTokens} limit ` +
31
- `(system=${budget.systemTokens}, tools=${budget.toolsTokens}, history=${budget.historyTokens})`);
32
- this.name = 'TokenBudgetExceededError';
33
- this.budget = budget;
34
- }
35
- }
36
- exports.TokenBudgetExceededError = TokenBudgetExceededError;
37
- /**
38
- * Resolve the context window limit for a given model name.
39
- * Matches by prefix: "claude-sonnet-4-6" matches "claude" key.
40
- */
41
- function getModelLimit(model) {
42
- const configLimits = (0, config_manager_js_1.getConfig)().prompt?.model_limits;
43
- const limits = { ...DEFAULT_MODEL_LIMITS, ...configLimits };
44
- const lowerModel = model.toLowerCase();
45
- // Sort by prefix length descending so more specific prefixes match first
46
- const sorted = Object.entries(limits).sort((a, b) => b[0].length - a[0].length);
47
- for (const [prefix, limit] of sorted) {
48
- if (lowerModel.startsWith(prefix.toLowerCase())) {
49
- return limit;
50
- }
51
- }
52
- // Fail-closed: unknown model gets conservative 120K limit
53
- return 120_000;
54
- }
55
- /**
56
- * Calculate token budget breakdown for a prompt.
57
- *
58
- * @param model - Model name (e.g., "claude-sonnet-4-6")
59
- * @param systemPrompt - System prompt text
60
- * @param toolsPrompt - Gateway tools prompt text
61
- * @param historyText - Conversation history text
62
- * @returns Token budget breakdown
63
- */
64
- function calculateBudget(model, systemPrompt, toolsPrompt = '', historyText = '') {
65
- const limitTokens = getModelLimit(model);
66
- const systemTokens = (0, token_estimator_js_1.countTokens)(systemPrompt);
67
- const toolsTokens = (0, token_estimator_js_1.countTokens)(toolsPrompt);
68
- const historyTokens = (0, token_estimator_js_1.countTokens)(historyText);
69
- const totalTokens = systemTokens + toolsTokens + historyTokens;
70
- return {
71
- model,
72
- limitTokens,
73
- systemTokens,
74
- toolsTokens,
75
- historyTokens,
76
- totalTokens,
77
- withinBudget: totalTokens <= limitTokens,
78
- };
79
- }
80
- /**
81
- * Enforce token budget. Throws TokenBudgetExceededError if over limit.
82
- *
83
- * @throws {TokenBudgetExceededError} When total tokens exceed model limit
84
- */
85
- function enforceBudget(model, systemPrompt, toolsPrompt = '', historyText = '') {
86
- const budget = calculateBudget(model, systemPrompt, toolsPrompt, historyText);
87
- if (!budget.withinBudget) {
88
- throw new TokenBudgetExceededError(budget);
89
- }
90
- return budget;
91
- }
92
- //# sourceMappingURL=token-budget.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"token-budget.js","sourceRoot":"","sources":["../../src/agent/token-budget.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AA+CH,sCAeC;AAWD,0CAqBC;AAOD,sCAWC;AA9GD,uEAA4D;AAC5D,6DAAmD;AAEnD,qDAAqD;AACrD,MAAM,oBAAoB,GAA2B;IACnD,MAAM,EAAE,OAAO;IACf,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,OAAO;CACb,CAAC;AAEF;;GAEG;AACH,MAAa,wBAAyB,SAAQ,KAAK;IACxC,IAAI,GAAG,uBAAgC,CAAC;IACxC,MAAM,CAAc;IAE7B,YAAY,MAAmB;QAC7B,KAAK,CACH,oCAAoC,MAAM,CAAC,KAAK,KAAK;YACnD,GAAG,MAAM,CAAC,WAAW,aAAa,MAAM,CAAC,WAAW,SAAS;YAC7D,WAAW,MAAM,CAAC,YAAY,WAAW,MAAM,CAAC,WAAW,aAAa,MAAM,CAAC,aAAa,GAAG,CAClG,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AAbD,4DAaC;AAeD;;;GAGG;AACH,SAAgB,aAAa,CAAC,KAAa;IACzC,MAAM,YAAY,GAAG,IAAA,6BAAS,GAAE,CAAC,MAAM,EAAE,YAAY,CAAC;IACtD,MAAM,MAAM,GAAG,EAAE,GAAG,oBAAoB,EAAE,GAAG,YAAY,EAAE,CAAC;IAE5D,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IACvC,yEAAyE;IACzE,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAChF,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;QACrC,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAChD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,0DAA0D;IAC1D,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,eAAe,CAC7B,KAAa,EACb,YAAoB,EACpB,cAAsB,EAAE,EACxB,cAAsB,EAAE;IAExB,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,YAAY,GAAG,IAAA,gCAAW,EAAC,YAAY,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,IAAA,gCAAW,EAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,IAAA,gCAAW,EAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,YAAY,GAAG,WAAW,GAAG,aAAa,CAAC;IAE/D,OAAO;QACL,KAAK;QACL,WAAW;QACX,YAAY;QACZ,WAAW;QACX,aAAa;QACb,WAAW;QACX,YAAY,EAAE,WAAW,IAAI,WAAW;KACzC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAC3B,KAAa,EACb,YAAoB,EACpB,cAAsB,EAAE,EACxB,cAAsB,EAAE;IAExB,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IAC9E,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QACzB,MAAM,IAAI,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,18 +0,0 @@
1
- /**
2
- * Kagemusha History Compiler
3
- * Groups messages by month for batch compilation via LLM extraction.
4
- */
5
- import type { NormalizedItem } from '../framework/types.js';
6
- /**
7
- * Group NormalizedItems by year-month (YYYY-MM).
8
- */
9
- export declare function groupByMonth(items: NormalizedItem[]): Map<string, NormalizedItem[]>;
10
- /**
11
- * Get compilation stats for a set of items grouped by month.
12
- */
13
- export declare function getCompilationStats(grouped: Map<string, NormalizedItem[]>): {
14
- months: string[];
15
- totalItems: number;
16
- perMonth: Record<string, number>;
17
- };
18
- //# sourceMappingURL=history-compiler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"history-compiler.d.ts","sourceRoot":"","sources":["../../../src/connectors/kagemusha/history-compiler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAQnF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,GAAG;IAC3E,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CASA"}
@@ -1,35 +0,0 @@
1
- "use strict";
2
- /**
3
- * Kagemusha History Compiler
4
- * Groups messages by month for batch compilation via LLM extraction.
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.groupByMonth = groupByMonth;
8
- exports.getCompilationStats = getCompilationStats;
9
- /**
10
- * Group NormalizedItems by year-month (YYYY-MM).
11
- */
12
- function groupByMonth(items) {
13
- const map = new Map();
14
- for (const item of items) {
15
- const key = item.timestamp.toISOString().substring(0, 7);
16
- if (!map.has(key))
17
- map.set(key, []);
18
- map.get(key).push(item);
19
- }
20
- return map;
21
- }
22
- /**
23
- * Get compilation stats for a set of items grouped by month.
24
- */
25
- function getCompilationStats(grouped) {
26
- const months = Array.from(grouped.keys()).sort();
27
- const perMonth = {};
28
- let totalItems = 0;
29
- for (const [month, items] of grouped) {
30
- perMonth[month] = items.length;
31
- totalItems += items.length;
32
- }
33
- return { months, totalItems, perMonth };
34
- }
35
- //# sourceMappingURL=history-compiler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"history-compiler.js","sourceRoot":"","sources":["../../../src/connectors/kagemusha/history-compiler.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAOH,oCAQC;AAKD,kDAaC;AA7BD;;GAEG;AACH,SAAgB,YAAY,CAAC,KAAuB;IAClD,MAAM,GAAG,GAAG,IAAI,GAAG,EAA4B,CAAC;IAChD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACpC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CAAC,OAAsC;IAKxE,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACjD,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAC5C,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;QACrC,QAAQ,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;QAC/B,UAAU,IAAI,KAAK,CAAC,MAAM,CAAC;IAC7B,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;AAC1C,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { SQLiteDatabase } from '../../sqlite.js';
2
- export declare function applyWikiArtifactsMigration(db: SQLiteDatabase): void;
3
- //# sourceMappingURL=wiki-artifacts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wiki-artifacts.d.ts","sourceRoot":"","sources":["../../../src/db/migrations/wiki-artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,cAAc,GAAG,IAAI,CAmBpE"}
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.applyWikiArtifactsMigration = applyWikiArtifactsMigration;
4
- function applyWikiArtifactsMigration(db) {
5
- db.exec(`
6
- CREATE TABLE IF NOT EXISTS wiki_artifacts (
7
- artifact_id TEXT PRIMARY KEY,
8
- path TEXT NOT NULL UNIQUE,
9
- title TEXT NOT NULL,
10
- type TEXT NOT NULL,
11
- content TEXT NOT NULL,
12
- confidence TEXT NOT NULL CHECK (confidence IN ('high', 'medium', 'low')),
13
- compiled_at TEXT NOT NULL,
14
- source_refs_json TEXT NOT NULL CHECK (json_valid(source_refs_json)),
15
- source_ids_json TEXT NOT NULL CHECK (json_valid(source_ids_json)),
16
- created_at_ms INTEGER NOT NULL CHECK (created_at_ms >= 0),
17
- updated_at_ms INTEGER NOT NULL CHECK (updated_at_ms >= 0)
18
- );
19
-
20
- CREATE INDEX IF NOT EXISTS idx_wiki_artifacts_updated_at
21
- ON wiki_artifacts(updated_at_ms DESC);
22
- `);
23
- }
24
- //# sourceMappingURL=wiki-artifacts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wiki-artifacts.js","sourceRoot":"","sources":["../../../src/db/migrations/wiki-artifacts.ts"],"names":[],"mappings":";;AAEA,kEAmBC;AAnBD,SAAgB,2BAA2B,CAAC,EAAkB;IAC5D,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;GAiBP,CAAC,CAAC;AACL,CAAC"}
@@ -1,9 +0,0 @@
1
- import type { Envelope } from './types.js';
2
- export type EnvelopeSubsetResult = {
3
- ok: true;
4
- } | {
5
- ok: false;
6
- reason: 'raw_connectors_not_subset' | 'project_refs_not_subset' | 'memory_scopes_not_subset' | 'destinations_not_subset' | 'destination_id_empty' | 'tier_widened' | 'expiry_extended' | 'eval_privileged_escalation' | 'as_of_exceeds_parent' | 'budget_exceeds_parent' | 'token_budget_undefined_but_parent_bounded' | 'token_budget_exceeds_parent' | 'cost_cap_undefined_but_parent_bounded' | 'cost_cap_exceeds_parent';
7
- };
8
- export declare function isEnvelopeSubset(child: Envelope, parent: Envelope): EnvelopeSubsetResult;
9
- //# sourceMappingURL=subset.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"subset.d.ts","sourceRoot":"","sources":["../../src/envelope/subset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,MAAM,oBAAoB,GAC5B;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GACZ;IACE,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EACF,2BAA2B,GAC3B,yBAAyB,GACzB,0BAA0B,GAC1B,yBAAyB,GACzB,sBAAsB,GACtB,cAAc,GACd,iBAAiB,GACjB,4BAA4B,GAC5B,sBAAsB,GACtB,uBAAuB,GACvB,2CAA2C,GAC3C,6BAA6B,GAC7B,uCAAuC,GACvC,yBAAyB,CAAC;CAC/B,CAAC;AAEN,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,oBAAoB,CAwExF"}
@@ -1,67 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isEnvelopeSubset = isEnvelopeSubset;
4
- function isEnvelopeSubset(child, parent) {
5
- const childScope = child.scope;
6
- const parentScope = parent.scope;
7
- if (childScope.allowed_destinations.some((destination) => destination.id.trim() === '')) {
8
- return { ok: false, reason: 'destination_id_empty' };
9
- }
10
- if (!allIn(childScope.raw_connectors, new Set(parentScope.raw_connectors))) {
11
- return { ok: false, reason: 'raw_connectors_not_subset' };
12
- }
13
- if (!allIn(childScope.project_refs.map((ref) => ref.id), new Set(parentScope.project_refs.map((ref) => ref.id)))) {
14
- return { ok: false, reason: 'project_refs_not_subset' };
15
- }
16
- if (!allIn(childScope.memory_scopes.map((scope) => `${scope.kind}:${scope.id}`), new Set(parentScope.memory_scopes.map((scope) => `${scope.kind}:${scope.id}`)))) {
17
- return { ok: false, reason: 'memory_scopes_not_subset' };
18
- }
19
- if (!allIn(childScope.allowed_destinations.map(destinationKey), new Set(parentScope.allowed_destinations.map(destinationKey)))) {
20
- return { ok: false, reason: 'destinations_not_subset' };
21
- }
22
- if (child.tier < parent.tier) {
23
- return { ok: false, reason: 'tier_widened' };
24
- }
25
- if (!isNoLaterThan(child.expires_at, parent.expires_at)) {
26
- return { ok: false, reason: 'expiry_extended' };
27
- }
28
- if (childScope.eval_privileged === true && parentScope.eval_privileged !== true) {
29
- return { ok: false, reason: 'eval_privileged_escalation' };
30
- }
31
- if (parentScope.as_of !== undefined &&
32
- (childScope.as_of === undefined || !isNoLaterThan(childScope.as_of, parentScope.as_of))) {
33
- return { ok: false, reason: 'as_of_exceeds_parent' };
34
- }
35
- if (child.budget.wall_seconds > parent.budget.wall_seconds) {
36
- return { ok: false, reason: 'budget_exceeds_parent' };
37
- }
38
- if (parent.budget.token_limit !== undefined) {
39
- if (child.budget.token_limit === undefined) {
40
- return { ok: false, reason: 'token_budget_undefined_but_parent_bounded' };
41
- }
42
- if (child.budget.token_limit > parent.budget.token_limit) {
43
- return { ok: false, reason: 'token_budget_exceeds_parent' };
44
- }
45
- }
46
- if (parent.budget.cost_cap !== undefined) {
47
- if (child.budget.cost_cap === undefined) {
48
- return { ok: false, reason: 'cost_cap_undefined_but_parent_bounded' };
49
- }
50
- if (child.budget.cost_cap > parent.budget.cost_cap) {
51
- return { ok: false, reason: 'cost_cap_exceeds_parent' };
52
- }
53
- }
54
- return { ok: true };
55
- }
56
- function allIn(childValues, parentValues) {
57
- return childValues.every((value) => parentValues.has(value));
58
- }
59
- function destinationKey(destination) {
60
- return `${destination.kind}:${destination.id}`;
61
- }
62
- function isNoLaterThan(childIso, parentIso) {
63
- const childTime = Date.parse(childIso);
64
- const parentTime = Date.parse(parentIso);
65
- return Number.isFinite(childTime) && Number.isFinite(parentTime) && childTime <= parentTime;
66
- }
67
- //# sourceMappingURL=subset.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"subset.js","sourceRoot":"","sources":["../../src/envelope/subset.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import type { MemoryConsultIntent } from '@jungjaehoon/mama-core/memory/types';
2
- import type { MemoryScopeRef } from './scope-context.js';
3
- export interface MemoryConsultRequest {
4
- intent: MemoryConsultIntent;
5
- query?: string;
6
- scopeIds?: MemoryScopeRef[];
7
- }
8
- //# sourceMappingURL=consult-contract.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"consult-contract.d.ts","sourceRoot":"","sources":["../../src/memory/consult-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"consult-contract.js","sourceRoot":"","sources":["../../src/memory/consult-contract.ts"],"names":[],"mappings":""}
@@ -1,104 +0,0 @@
1
- /**
2
- * Agent Message Queue - Handles message queuing for busy agents
3
- *
4
- * Problem: When an agent process is busy, incoming @mentions are silently dropped.
5
- * Solution: Queue messages per agent, automatically drain when agent becomes idle.
6
- *
7
- * Features:
8
- * - Per-agent FIFO queue
9
- * - Max 5 messages per agent (oldest dropped when full)
10
- * - 20-minute TTL (expired messages skipped)
11
- * - Auto-drain on agent 'idle' event
12
- *
13
- * Sprint 3 F7
14
- */
15
- import type { AgentRuntimeProcess } from './runtime-process.js';
16
- /**
17
- * Message context (from multi-agent-slack.ts or multi-agent-discord.ts)
18
- */
19
- export interface MessageContext {
20
- channelId: string;
21
- channelName?: string;
22
- userId?: string;
23
- userName?: string;
24
- messageId?: string;
25
- threadId?: string;
26
- files?: Array<{
27
- url: string;
28
- name: string;
29
- type: string;
30
- }>;
31
- }
32
- /**
33
- * Queued message waiting for agent availability
34
- */
35
- export interface QueuedMessage {
36
- /** Full prompt to send to agent */
37
- prompt: string;
38
- /** Channel ID for response */
39
- channelId: string;
40
- /** Thread timestamp (Slack) or message ID (Discord) */
41
- threadTs?: string;
42
- /** Message source platform */
43
- source: 'slack' | 'discord';
44
- /** When message was enqueued (timestamp) */
45
- enqueuedAt: number;
46
- /** Full message context */
47
- context?: MessageContext;
48
- /** Discord message ID for emoji queue tracking (⏳→✅) */
49
- discordMessageId?: string;
50
- /** Retry count for busy-agent re-queue */
51
- retryCount?: number;
52
- }
53
- /**
54
- * Agent Message Queue Manager
55
- *
56
- * Manages per-agent message queues and automatic draining.
57
- */
58
- export declare class AgentMessageQueue {
59
- private queues;
60
- /** Per-agent drain lock to prevent concurrent drain() calls (idle event + tryDrainNow race) */
61
- private draining;
62
- /**
63
- * Enqueue a message for a busy agent
64
- *
65
- * @param agentId - Agent identifier
66
- * @param message - Message to queue
67
- */
68
- enqueue(agentId: string, message: QueuedMessage): void;
69
- /**
70
- * Drain queued messages for an agent
71
- *
72
- * Called when agent becomes idle. Processes next message in queue.
73
- *
74
- * @param agentId - Agent identifier
75
- * @param process - Agent process to send message to
76
- * @param sendCallback - Callback to handle sending response to platform
77
- */
78
- drain(agentId: string, process: AgentRuntimeProcess, sendCallback: (agentId: string, message: QueuedMessage, response: string) => Promise<void>): Promise<void>;
79
- private _drainInternal;
80
- /**
81
- * Get current queue size for an agent
82
- *
83
- * @param agentId - Agent identifier
84
- * @returns Number of queued messages
85
- */
86
- getQueueSize(agentId: string): number;
87
- /**
88
- * Clear expired messages from all queues
89
- *
90
- * Should be called periodically (e.g., every minute).
91
- */
92
- clearExpired(): void;
93
- /**
94
- * Get all agent IDs with queued messages
95
- *
96
- * @returns Array of agent IDs
97
- */
98
- getAgentIds(): string[];
99
- /**
100
- * Clear all queues (for testing)
101
- */
102
- clearAll(): void;
103
- }
104
- //# sourceMappingURL=agent-message-queue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-message-queue.d.ts","sourceRoot":"","sources":["../../src/multi-agent/agent-message-queue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAchE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC5D;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,MAAM,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,wDAAwD;IACxD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAKD;;;;GAIG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAA2C;IACzD,+FAA+F;IAC/F,OAAO,CAAC,QAAQ,CAAqB;IAErC;;;;;OAKG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI;IAwBtD;;;;;;;;OAQG;IACG,KAAK,CACT,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,mBAAmB,EAC5B,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GACzF,OAAO,CAAC,IAAI,CAAC;YAeF,cAAc;IAgF5B;;;;;OAKG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAKrC;;;;OAIG;IACH,YAAY,IAAI,IAAI;IA0BpB;;;;OAIG;IACH,WAAW,IAAI,MAAM,EAAE;IAIvB;;OAEG;IACH,QAAQ,IAAI,IAAI;CAGjB"}
@@ -1,227 +0,0 @@
1
- "use strict";
2
- /**
3
- * Agent Message Queue - Handles message queuing for busy agents
4
- *
5
- * Problem: When an agent process is busy, incoming @mentions are silently dropped.
6
- * Solution: Queue messages per agent, automatically drain when agent becomes idle.
7
- *
8
- * Features:
9
- * - Per-agent FIFO queue
10
- * - Max 5 messages per agent (oldest dropped when full)
11
- * - 20-minute TTL (expired messages skipped)
12
- * - Auto-drain on agent 'idle' event
13
- *
14
- * Sprint 3 F7
15
- */
16
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
17
- if (k2 === undefined) k2 = k;
18
- var desc = Object.getOwnPropertyDescriptor(m, k);
19
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
20
- desc = { enumerable: true, get: function() { return m[k]; } };
21
- }
22
- Object.defineProperty(o, k2, desc);
23
- }) : (function(o, m, k, k2) {
24
- if (k2 === undefined) k2 = k;
25
- o[k2] = m[k];
26
- }));
27
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
28
- Object.defineProperty(o, "default", { enumerable: true, value: v });
29
- }) : function(o, v) {
30
- o["default"] = v;
31
- });
32
- var __importStar = (this && this.__importStar) || (function () {
33
- var ownKeys = function(o) {
34
- ownKeys = Object.getOwnPropertyNames || function (o) {
35
- var ar = [];
36
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
37
- return ar;
38
- };
39
- return ownKeys(o);
40
- };
41
- return function (mod) {
42
- if (mod && mod.__esModule) return mod;
43
- var result = {};
44
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
45
- __setModuleDefault(result, mod);
46
- return result;
47
- };
48
- })();
49
- Object.defineProperty(exports, "__esModule", { value: true });
50
- exports.AgentMessageQueue = void 0;
51
- const config_manager_js_1 = require("../cli/config/config-manager.js");
52
- const debugLoggerModule = __importStar(require("@jungjaehoon/mama-core/debug-logger"));
53
- const { DebugLogger } = debugLoggerModule;
54
- const queueLogger = new DebugLogger('MessageQueue');
55
- const MAX_QUEUE_SIZE = 5;
56
- const MESSAGE_TTL_MS = () => (0, config_manager_js_1.getConfig)().gateway_tuning?.message_ttl_ms ?? 1_200_000;
57
- /**
58
- * Agent Message Queue Manager
59
- *
60
- * Manages per-agent message queues and automatic draining.
61
- */
62
- class AgentMessageQueue {
63
- queues = new Map();
64
- /** Per-agent drain lock to prevent concurrent drain() calls (idle event + tryDrainNow race) */
65
- draining = new Set();
66
- /**
67
- * Enqueue a message for a busy agent
68
- *
69
- * @param agentId - Agent identifier
70
- * @param message - Message to queue
71
- */
72
- enqueue(agentId, message) {
73
- let queue = this.queues.get(agentId);
74
- if (!queue) {
75
- queue = [];
76
- this.queues.set(agentId, queue);
77
- }
78
- // Add message to queue
79
- queue.push(message);
80
- // Enforce size limit
81
- if (queue.length > MAX_QUEUE_SIZE) {
82
- const dropped = queue.shift();
83
- queueLogger.warn(`Queue full for ${agentId}, dropped oldest message (waited ${Math.floor((Date.now() - dropped.enqueuedAt) / 1000)}s)`);
84
- }
85
- queueLogger.info(`Enqueued message for ${agentId} (queue size: ${queue.length}/${MAX_QUEUE_SIZE})`);
86
- }
87
- /**
88
- * Drain queued messages for an agent
89
- *
90
- * Called when agent becomes idle. Processes next message in queue.
91
- *
92
- * @param agentId - Agent identifier
93
- * @param process - Agent process to send message to
94
- * @param sendCallback - Callback to handle sending response to platform
95
- */
96
- async drain(agentId, process, sendCallback) {
97
- // Per-agent drain lock: prevent concurrent drain() from idle event + tryDrainNow
98
- if (this.draining.has(agentId)) {
99
- queueLogger.debug(`Drain already in progress for ${agentId}, skipping`);
100
- return;
101
- }
102
- this.draining.add(agentId);
103
- try {
104
- await this._drainInternal(agentId, process, sendCallback, 0);
105
- }
106
- finally {
107
- this.draining.delete(agentId);
108
- }
109
- }
110
- async _drainInternal(agentId, process, sendCallback, depth) {
111
- // Safety: prevent infinite recursion
112
- if (depth >= MAX_QUEUE_SIZE) {
113
- queueLogger.warn(`Drain depth limit reached for ${agentId}, stopping`);
114
- return;
115
- }
116
- const queue = this.queues.get(agentId);
117
- if (!queue || queue.length === 0) {
118
- return;
119
- }
120
- // Get next message
121
- const message = queue.shift();
122
- if (!message) {
123
- return;
124
- }
125
- // Check TTL
126
- const age = Date.now() - message.enqueuedAt;
127
- if (age > MESSAGE_TTL_MS()) {
128
- queueLogger.warn(`Skipping expired message for ${agentId} (age: ${Math.floor(age / 1000)}s, TTL: ${MESSAGE_TTL_MS() / 1000}s)`);
129
- // Try next message if any
130
- if (queue.length > 0) {
131
- await this._drainInternal(agentId, process, sendCallback, depth + 1);
132
- }
133
- return;
134
- }
135
- // Log drain
136
- const waitedSec = Math.floor(age / 1000);
137
- const remaining = queue.length;
138
- queueLogger.info(`Delivering queued message to ${agentId} (waited ${waitedSec}s, queue: ${remaining} remaining)`);
139
- try {
140
- // Send message to agent process
141
- const result = await process.sendMessage(message.prompt);
142
- // Call platform-specific send callback
143
- await sendCallback(agentId, message, result.response);
144
- }
145
- catch (err) {
146
- if (err instanceof Error && err.message.includes('Process is busy')) {
147
- // Agent busy - re-queue this message and wait for next idle event to drain
148
- const retries = (message.retryCount ?? 0) + 1;
149
- if (retries <= 3) {
150
- message.retryCount = retries;
151
- let q = this.queues.get(agentId);
152
- if (!q) {
153
- q = [];
154
- this.queues.set(agentId, q);
155
- }
156
- q.unshift(message);
157
- queueLogger.warn(`Agent ${agentId} still busy, re-queued (retry ${retries}/3)`);
158
- }
159
- else {
160
- queueLogger.warn(`Agent ${agentId} still busy after 3 retries, dropping message`);
161
- }
162
- // Don't drain more when agent is busy — wait for next idle event
163
- return;
164
- }
165
- else {
166
- // Other error - log and continue to next message
167
- queueLogger.error(`Failed to deliver message to ${agentId}:`, err);
168
- }
169
- }
170
- // Try draining next message if any
171
- if (queue.length > 0) {
172
- await this._drainInternal(agentId, process, sendCallback, depth + 1);
173
- }
174
- }
175
- /**
176
- * Get current queue size for an agent
177
- *
178
- * @param agentId - Agent identifier
179
- * @returns Number of queued messages
180
- */
181
- getQueueSize(agentId) {
182
- const queue = this.queues.get(agentId);
183
- return queue ? queue.length : 0;
184
- }
185
- /**
186
- * Clear expired messages from all queues
187
- *
188
- * Should be called periodically (e.g., every minute).
189
- */
190
- clearExpired() {
191
- const now = Date.now();
192
- let totalCleared = 0;
193
- for (const [agentId, queue] of this.queues.entries()) {
194
- const before = queue.length;
195
- const filtered = queue.filter((msg) => now - msg.enqueuedAt < MESSAGE_TTL_MS());
196
- if (filtered.length !== before) {
197
- this.queues.set(agentId, filtered);
198
- const cleared = before - filtered.length;
199
- totalCleared += cleared;
200
- queueLogger.info(`Cleared ${cleared} expired messages for ${agentId}`);
201
- }
202
- // Remove empty queues
203
- if (filtered.length === 0) {
204
- this.queues.delete(agentId);
205
- }
206
- }
207
- if (totalCleared > 0) {
208
- queueLogger.info(`Total expired messages cleared: ${totalCleared}`);
209
- }
210
- }
211
- /**
212
- * Get all agent IDs with queued messages
213
- *
214
- * @returns Array of agent IDs
215
- */
216
- getAgentIds() {
217
- return Array.from(this.queues.keys());
218
- }
219
- /**
220
- * Clear all queues (for testing)
221
- */
222
- clearAll() {
223
- this.queues.clear();
224
- }
225
- }
226
- exports.AgentMessageQueue = AgentMessageQueue;
227
- //# sourceMappingURL=agent-message-queue.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-message-queue.js","sourceRoot":"","sources":["../../src/multi-agent/agent-message-queue.ts"],"names":[],"mappings":"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"}