crewly 1.6.5 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (267) hide show
  1. package/config/roles/auditor/prompt.md +24 -0
  2. package/config/roles/developer/prompt.md +2 -1
  3. package/config/roles/orchestrator/prompt.md +74 -2
  4. package/config/roles/team-leader/prompt.md +6 -0
  5. package/config/skills/agent/core/create-request/SKILL.md +1 -1
  6. package/config/skills/agent/core/create-request/execute.sh +29 -2
  7. package/config/skills/agent/core/create-request/execute.test.sh +168 -0
  8. package/config/skills/agent/core/report-status/SKILL.md +8 -1
  9. package/config/skills/agent/core/report-status/execute.sh +23 -1
  10. package/config/skills/orchestrator/heartbeat/execute.sh +48 -6
  11. package/config/sops/common/mid-flight-milestone-surface.md +128 -0
  12. package/config/sops/common/owner-facing-communication.md +46 -2
  13. package/config/sops/developer/git-workflow.md +33 -0
  14. package/dist/backend/backend/src/constants.d.ts +12 -0
  15. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  16. package/dist/backend/backend/src/constants.js +12 -0
  17. package/dist/backend/backend/src/constants.js.map +1 -1
  18. package/dist/backend/backend/src/controllers/browser/browser.controller.js +2 -2
  19. package/dist/backend/backend/src/controllers/browser/browser.controller.js.map +1 -1
  20. package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts.map +1 -1
  21. package/dist/backend/backend/src/controllers/chat/chat.controller.js +6 -0
  22. package/dist/backend/backend/src/controllers/chat/chat.controller.js.map +1 -1
  23. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.d.ts +73 -0
  24. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.d.ts.map +1 -1
  25. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.js +128 -0
  26. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.js.map +1 -1
  27. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.routes.d.ts +3 -0
  28. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.routes.d.ts.map +1 -1
  29. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.routes.js +8 -0
  30. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.routes.js.map +1 -1
  31. package/dist/backend/backend/src/controllers/session/session.controller.d.ts.map +1 -1
  32. package/dist/backend/backend/src/controllers/session/session.controller.js +50 -8
  33. package/dist/backend/backend/src/controllers/session/session.controller.js.map +1 -1
  34. package/dist/backend/backend/src/controllers/slack/slack.controller.d.ts.map +1 -1
  35. package/dist/backend/backend/src/controllers/slack/slack.controller.js +215 -94
  36. package/dist/backend/backend/src/controllers/slack/slack.controller.js.map +1 -1
  37. package/dist/backend/backend/src/index.d.ts +1 -0
  38. package/dist/backend/backend/src/index.d.ts.map +1 -1
  39. package/dist/backend/backend/src/index.js +185 -36
  40. package/dist/backend/backend/src/index.js.map +1 -1
  41. package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
  42. package/dist/backend/backend/src/routes/api.routes.js +11 -1
  43. package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
  44. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +42 -0
  45. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  46. package/dist/backend/backend/src/services/agent/agent-registration.service.js +218 -6
  47. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  48. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts +61 -1
  49. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts.map +1 -1
  50. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js +117 -9
  51. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js.map +1 -1
  52. package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts +33 -0
  53. package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts.map +1 -1
  54. package/dist/backend/backend/src/services/agent/idle-detection.service.js +108 -4
  55. package/dist/backend/backend/src/services/agent/idle-detection.service.js.map +1 -1
  56. package/dist/backend/backend/src/services/browser/browser-proxy.service.d.ts +1 -1
  57. package/dist/backend/backend/src/services/browser/browser-proxy.service.d.ts.map +1 -1
  58. package/dist/backend/backend/src/services/browser/browser-proxy.service.js +40 -2
  59. package/dist/backend/backend/src/services/browser/browser-proxy.service.js.map +1 -1
  60. package/dist/backend/backend/src/services/chat/chat.service.d.ts +48 -331
  61. package/dist/backend/backend/src/services/chat/chat.service.d.ts.map +1 -1
  62. package/dist/backend/backend/src/services/chat/chat.service.js +261 -712
  63. package/dist/backend/backend/src/services/chat/chat.service.js.map +1 -1
  64. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +82 -1
  65. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
  66. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +120 -2
  67. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
  68. package/dist/backend/backend/src/services/chat-v2/chat-v2.providers.d.ts +114 -0
  69. package/dist/backend/backend/src/services/chat-v2/chat-v2.providers.d.ts.map +1 -0
  70. package/dist/backend/backend/src/services/chat-v2/chat-v2.providers.js +182 -0
  71. package/dist/backend/backend/src/services/chat-v2/chat-v2.providers.js.map +1 -0
  72. package/dist/backend/backend/src/services/chat-v2/chat-v2.relay-adapter.service.d.ts +188 -0
  73. package/dist/backend/backend/src/services/chat-v2/chat-v2.relay-adapter.service.d.ts.map +1 -0
  74. package/dist/backend/backend/src/services/chat-v2/chat-v2.relay-adapter.service.js +434 -0
  75. package/dist/backend/backend/src/services/chat-v2/chat-v2.relay-adapter.service.js.map +1 -0
  76. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.d.ts +401 -5
  77. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.d.ts.map +1 -1
  78. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.js +619 -3
  79. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.js.map +1 -1
  80. package/dist/backend/backend/src/services/chat-v2/legacy-dto.utils.d.ts +93 -0
  81. package/dist/backend/backend/src/services/chat-v2/legacy-dto.utils.d.ts.map +1 -0
  82. package/dist/backend/backend/src/services/chat-v2/legacy-dto.utils.js +138 -0
  83. package/dist/backend/backend/src/services/chat-v2/legacy-dto.utils.js.map +1 -0
  84. package/dist/backend/backend/src/services/chat-v2/sqlite/channel.store.d.ts +46 -0
  85. package/dist/backend/backend/src/services/chat-v2/sqlite/channel.store.d.ts.map +1 -1
  86. package/dist/backend/backend/src/services/chat-v2/sqlite/channel.store.js +75 -0
  87. package/dist/backend/backend/src/services/chat-v2/sqlite/channel.store.js.map +1 -1
  88. package/dist/backend/backend/src/services/chat-v2/sqlite/chat-db.d.ts +10 -2
  89. package/dist/backend/backend/src/services/chat-v2/sqlite/chat-db.d.ts.map +1 -1
  90. package/dist/backend/backend/src/services/chat-v2/sqlite/chat-db.js +178 -10
  91. package/dist/backend/backend/src/services/chat-v2/sqlite/chat-db.js.map +1 -1
  92. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts +37 -0
  93. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts.map +1 -1
  94. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js +71 -0
  95. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js.map +1 -1
  96. package/dist/backend/backend/src/services/chat-v2/types.d.ts +33 -1
  97. package/dist/backend/backend/src/services/chat-v2/types.d.ts.map +1 -1
  98. package/dist/backend/backend/src/services/chat-v2/types.js +1 -1
  99. package/dist/backend/backend/src/services/chat-v2/types.js.map +1 -1
  100. package/dist/backend/backend/src/services/cloud/cloud-sync.service.d.ts +22 -0
  101. package/dist/backend/backend/src/services/cloud/cloud-sync.service.d.ts.map +1 -1
  102. package/dist/backend/backend/src/services/cloud/cloud-sync.service.js +71 -1
  103. package/dist/backend/backend/src/services/cloud/cloud-sync.service.js.map +1 -1
  104. package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts +102 -1
  105. package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts.map +1 -1
  106. package/dist/backend/backend/src/services/cloud/cloud-sync.types.js +61 -0
  107. package/dist/backend/backend/src/services/cloud/cloud-sync.types.js.map +1 -1
  108. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.d.ts +21 -3
  109. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.d.ts.map +1 -1
  110. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.js +47 -13
  111. package/dist/backend/backend/src/services/cloud/device-auto-discovery.service.js.map +1 -1
  112. package/dist/backend/backend/src/services/core/system-health.util.d.ts +25 -4
  113. package/dist/backend/backend/src/services/core/system-health.util.d.ts.map +1 -1
  114. package/dist/backend/backend/src/services/core/system-health.util.js +30 -5
  115. package/dist/backend/backend/src/services/core/system-health.util.js.map +1 -1
  116. package/dist/backend/backend/src/services/event-bus/event-bus.service.d.ts.map +1 -1
  117. package/dist/backend/backend/src/services/event-bus/event-bus.service.js +22 -11
  118. package/dist/backend/backend/src/services/event-bus/event-bus.service.js.map +1 -1
  119. package/dist/backend/backend/src/services/memory/memory.service.d.ts.map +1 -1
  120. package/dist/backend/backend/src/services/memory/memory.service.js +35 -3
  121. package/dist/backend/backend/src/services/memory/memory.service.js.map +1 -1
  122. package/dist/backend/backend/src/services/messaging/message-replay.service.d.ts +2 -4
  123. package/dist/backend/backend/src/services/messaging/message-replay.service.d.ts.map +1 -1
  124. package/dist/backend/backend/src/services/messaging/message-replay.service.js +22 -12
  125. package/dist/backend/backend/src/services/messaging/message-replay.service.js.map +1 -1
  126. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  127. package/dist/backend/backend/src/services/messaging/queue-processor.service.js +25 -5
  128. package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  129. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.d.ts.map +1 -1
  130. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.js +13 -3
  131. package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.js.map +1 -1
  132. package/dist/backend/backend/src/services/notification/milestone-notification.subscriber.d.ts +99 -0
  133. package/dist/backend/backend/src/services/notification/milestone-notification.subscriber.d.ts.map +1 -0
  134. package/dist/backend/backend/src/services/notification/milestone-notification.subscriber.js +225 -0
  135. package/dist/backend/backend/src/services/notification/milestone-notification.subscriber.js.map +1 -0
  136. package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts +39 -18
  137. package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts.map +1 -1
  138. package/dist/backend/backend/src/services/reconciler/reconcile-rules.js +60 -32
  139. package/dist/backend/backend/src/services/reconciler/reconcile-rules.js.map +1 -1
  140. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.d.ts +134 -0
  141. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.d.ts.map +1 -1
  142. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js +416 -13
  143. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js.map +1 -1
  144. package/dist/backend/backend/src/services/reconciler/reconciler.service.d.ts.map +1 -1
  145. package/dist/backend/backend/src/services/reconciler/reconciler.service.js +73 -7
  146. package/dist/backend/backend/src/services/reconciler/reconciler.service.js.map +1 -1
  147. package/dist/backend/backend/src/services/session/session-handoff.service.d.ts.map +1 -1
  148. package/dist/backend/backend/src/services/session/session-handoff.service.js +30 -4
  149. package/dist/backend/backend/src/services/session/session-handoff.service.js.map +1 -1
  150. package/dist/backend/backend/src/services/skill/skill-executor.service.d.ts.map +1 -1
  151. package/dist/backend/backend/src/services/skill/skill-executor.service.js +13 -1
  152. package/dist/backend/backend/src/services/skill/skill-executor.service.js.map +1 -1
  153. package/dist/backend/backend/src/services/slack/notify-reconciliation.service.d.ts.map +1 -1
  154. package/dist/backend/backend/src/services/slack/notify-reconciliation.service.js +9 -6
  155. package/dist/backend/backend/src/services/slack/notify-reconciliation.service.js.map +1 -1
  156. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts +21 -2
  157. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  158. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +120 -46
  159. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  160. package/dist/backend/backend/src/services/slack/slack.service.d.ts.map +1 -1
  161. package/dist/backend/backend/src/services/slack/slack.service.js +49 -0
  162. package/dist/backend/backend/src/services/slack/slack.service.js.map +1 -1
  163. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts +33 -2
  164. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
  165. package/dist/backend/backend/src/services/task-pool/task-pool.service.js +160 -8
  166. package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -1
  167. package/dist/backend/backend/src/services/v3/cascade-request-status.d.ts.map +1 -1
  168. package/dist/backend/backend/src/services/v3/cascade-request-status.js +55 -2
  169. package/dist/backend/backend/src/services/v3/cascade-request-status.js.map +1 -1
  170. package/dist/backend/backend/src/services/v3/mission-executor.service.d.ts.map +1 -1
  171. package/dist/backend/backend/src/services/v3/mission-executor.service.js +9 -1
  172. package/dist/backend/backend/src/services/v3/mission-executor.service.js.map +1 -1
  173. package/dist/backend/backend/src/services/v3/request-decompose.subscriber.d.ts.map +1 -1
  174. package/dist/backend/backend/src/services/v3/request-decompose.subscriber.js +28 -3
  175. package/dist/backend/backend/src/services/v3/request-decompose.subscriber.js.map +1 -1
  176. package/dist/backend/backend/src/services/v3/request-sla.subscriber.d.ts.map +1 -1
  177. package/dist/backend/backend/src/services/v3/request-sla.subscriber.js +5 -2
  178. package/dist/backend/backend/src/services/v3/request-sla.subscriber.js.map +1 -1
  179. package/dist/backend/backend/src/services/v3/request-status-update.subscriber.d.ts.map +1 -1
  180. package/dist/backend/backend/src/services/v3/request-status-update.subscriber.js +57 -15
  181. package/dist/backend/backend/src/services/v3/request-status-update.subscriber.js.map +1 -1
  182. package/dist/backend/backend/src/services/v3/trigger-engine.service.d.ts +39 -0
  183. package/dist/backend/backend/src/services/v3/trigger-engine.service.d.ts.map +1 -1
  184. package/dist/backend/backend/src/services/v3/trigger-engine.service.js +81 -0
  185. package/dist/backend/backend/src/services/v3/trigger-engine.service.js.map +1 -1
  186. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts +17 -1
  187. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts.map +1 -1
  188. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js +22 -3
  189. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js.map +1 -1
  190. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.d.ts +1 -1
  191. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.d.ts.map +1 -1
  192. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.js +26 -10
  193. package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.js.map +1 -1
  194. package/dist/backend/backend/src/services/workflow/cron-task.service.d.ts.map +1 -1
  195. package/dist/backend/backend/src/services/workflow/cron-task.service.js +68 -5
  196. package/dist/backend/backend/src/services/workflow/cron-task.service.js.map +1 -1
  197. package/dist/backend/backend/src/services/workflow/team-identifier-resolver.d.ts +44 -0
  198. package/dist/backend/backend/src/services/workflow/team-identifier-resolver.d.ts.map +1 -0
  199. package/dist/backend/backend/src/services/workflow/team-identifier-resolver.js +57 -0
  200. package/dist/backend/backend/src/services/workflow/team-identifier-resolver.js.map +1 -0
  201. package/dist/backend/backend/src/types/credential.types.d.ts +17 -1
  202. package/dist/backend/backend/src/types/credential.types.d.ts.map +1 -1
  203. package/dist/backend/backend/src/types/credential.types.js +15 -5
  204. package/dist/backend/backend/src/types/credential.types.js.map +1 -1
  205. package/dist/backend/backend/src/types/cron-task.types.d.ts +17 -0
  206. package/dist/backend/backend/src/types/cron-task.types.d.ts.map +1 -1
  207. package/dist/backend/backend/src/types/event-bus.types.d.ts +1 -1
  208. package/dist/backend/backend/src/types/event-bus.types.d.ts.map +1 -1
  209. package/dist/backend/backend/src/types/event-bus.types.js +12 -0
  210. package/dist/backend/backend/src/types/event-bus.types.js.map +1 -1
  211. package/dist/backend/backend/src/types/intent-task.types.d.ts +10 -13
  212. package/dist/backend/backend/src/types/intent-task.types.d.ts.map +1 -1
  213. package/dist/backend/backend/src/types/intent-task.types.js +4 -1
  214. package/dist/backend/backend/src/types/intent-task.types.js.map +1 -1
  215. package/dist/backend/backend/src/types/v2/work-item.types.d.ts +23 -0
  216. package/dist/backend/backend/src/types/v2/work-item.types.d.ts.map +1 -1
  217. package/dist/backend/backend/src/types/v2/work-item.types.js.map +1 -1
  218. package/dist/backend/backend/src/utils/team.utils.d.ts +3 -1
  219. package/dist/backend/backend/src/utils/team.utils.d.ts.map +1 -1
  220. package/dist/backend/backend/src/utils/team.utils.js +26 -5
  221. package/dist/backend/backend/src/utils/team.utils.js.map +1 -1
  222. package/dist/backend/backend/src/websocket/chat-v2.gateway.d.ts +23 -0
  223. package/dist/backend/backend/src/websocket/chat-v2.gateway.d.ts.map +1 -1
  224. package/dist/backend/backend/src/websocket/chat-v2.gateway.js +56 -7
  225. package/dist/backend/backend/src/websocket/chat-v2.gateway.js.map +1 -1
  226. package/dist/backend/backend/src/websocket/chat.gateway.d.ts +19 -4
  227. package/dist/backend/backend/src/websocket/chat.gateway.d.ts.map +1 -1
  228. package/dist/backend/backend/src/websocket/chat.gateway.js +78 -63
  229. package/dist/backend/backend/src/websocket/chat.gateway.js.map +1 -1
  230. package/dist/backend/backend/src/websocket/terminal.gateway.d.ts.map +1 -1
  231. package/dist/backend/backend/src/websocket/terminal.gateway.js +10 -2
  232. package/dist/backend/backend/src/websocket/terminal.gateway.js.map +1 -1
  233. package/dist/cli/backend/src/constants.d.ts +12 -0
  234. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  235. package/dist/cli/backend/src/constants.js +12 -0
  236. package/dist/cli/backend/src/constants.js.map +1 -1
  237. package/dist/cli/backend/src/services/event-bus/event-bus.service.d.ts.map +1 -1
  238. package/dist/cli/backend/src/services/event-bus/event-bus.service.js +22 -11
  239. package/dist/cli/backend/src/services/event-bus/event-bus.service.js.map +1 -1
  240. package/dist/cli/backend/src/services/memory/memory.service.d.ts.map +1 -1
  241. package/dist/cli/backend/src/services/memory/memory.service.js +35 -3
  242. package/dist/cli/backend/src/services/memory/memory.service.js.map +1 -1
  243. package/dist/cli/backend/src/services/skill/skill-executor.service.d.ts.map +1 -1
  244. package/dist/cli/backend/src/services/skill/skill-executor.service.js +13 -1
  245. package/dist/cli/backend/src/services/skill/skill-executor.service.js.map +1 -1
  246. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts +33 -2
  247. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
  248. package/dist/cli/backend/src/services/task-pool/task-pool.service.js +160 -8
  249. package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -1
  250. package/dist/cli/backend/src/types/credential.types.d.ts +17 -1
  251. package/dist/cli/backend/src/types/credential.types.d.ts.map +1 -1
  252. package/dist/cli/backend/src/types/credential.types.js +15 -5
  253. package/dist/cli/backend/src/types/credential.types.js.map +1 -1
  254. package/dist/cli/backend/src/types/event-bus.types.d.ts +1 -1
  255. package/dist/cli/backend/src/types/event-bus.types.d.ts.map +1 -1
  256. package/dist/cli/backend/src/types/event-bus.types.js +12 -0
  257. package/dist/cli/backend/src/types/event-bus.types.js.map +1 -1
  258. package/dist/cli/backend/src/types/v2/work-item.types.d.ts +23 -0
  259. package/dist/cli/backend/src/types/v2/work-item.types.d.ts.map +1 -1
  260. package/dist/cli/backend/src/types/v2/work-item.types.js.map +1 -1
  261. package/dist/cli/cli/src/commands/start.js +73 -12
  262. package/dist/cli/cli/src/commands/start.js.map +1 -1
  263. package/frontend/dist/assets/index-b279da34.js +4926 -0
  264. package/frontend/dist/assets/{index-b7e59b2b.css → index-c07e04c0.css} +2 -2
  265. package/frontend/dist/index.html +2 -2
  266. package/package.json +1 -1
  267. package/frontend/dist/assets/index-698305f3.js +0 -5228
@@ -1 +1 @@
1
- {"version":3,"file":"chat.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/chat/chat.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/chat/chat.service.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,28 @@ export interface MentionDispatchOutcome {
50
50
  /** Error message, if delivery failed. */
51
51
  error?: string;
52
52
  }
53
+ /**
54
+ * Phase B-2 (2026-05-17) — one per-member outcome for huddle dispatch.
55
+ *
56
+ * Huddles don't go through `MentionResolver` — their roster is read
57
+ * directly from `chat_channel_members`. The outcome records whether
58
+ * the member was @-mentioned (which controls `responseMode` in the
59
+ * prompt) and whether the underlying sink call succeeded.
60
+ */
61
+ export interface HuddleDispatchOutcome {
62
+ /** Member's agent session name. */
63
+ sessionName: string;
64
+ /**
65
+ * `'required'` when the member appeared in `message.mentions[]`
66
+ * (they MUST reply); `'optional'` otherwise (they MAY reply if it
67
+ * makes sense). Surfaced in the formatted prompt.
68
+ */
69
+ responseMode: 'required' | 'optional';
70
+ /** Whether the prompt was successfully queued for the member. */
71
+ dispatched: boolean;
72
+ /** Error message, if delivery failed. */
73
+ error?: string;
74
+ }
53
75
  /**
54
76
  * Aggregate result of `dispatchMessage`. Reports the chosen routing
55
77
  * strategy and per-recipient outcomes so callers (and tests) can assert
@@ -63,7 +85,7 @@ export interface DispatchMessageResult {
63
85
  * - `'skip'`: nothing was dispatched (non-user message, no recipients,
64
86
  * archived/unbound channel, etc.). `reason` is filled.
65
87
  */
66
- strategy: 'dm' | 'channel-mentions' | 'skip';
88
+ strategy: 'dm' | 'channel-mentions' | 'huddle-broadcast' | 'skip';
67
89
  /** True when at least one underlying delivery succeeded. */
68
90
  dispatched: boolean;
69
91
  /** Filled when `strategy === 'skip'`. */
@@ -75,6 +97,12 @@ export interface DispatchMessageResult {
75
97
  * resolved target. Empty when no mentions resolved.
76
98
  */
77
99
  mentionOutcomes?: MentionDispatchOutcome[];
100
+ /**
101
+ * Phase B-2 — populated for `strategy === 'huddle-broadcast'`. One
102
+ * entry per huddle member. Mentioned members carry
103
+ * `responseMode: 'required'`; the rest are `'optional'`.
104
+ */
105
+ huddleOutcomes?: HuddleDispatchOutcome[];
78
106
  }
79
107
  /** Constructor options for {@link ChatV2DispatcherService}. */
80
108
  export interface ChatV2DispatcherOptions {
@@ -93,6 +121,17 @@ export interface ChatV2DispatcherOptions {
93
121
  * by `StorageService.getTeams()`.
94
122
  */
95
123
  mentionResolver?: ChatV2MentionResolver;
124
+ /**
125
+ * Phase B-2 (2026-05-17) — roster lookup used when dispatching a
126
+ * `type='huddle'` message to every member. Synchronous because the
127
+ * production implementation is a direct SQLite read against
128
+ * `chat_channel_members`. When omitted, huddle messages skip
129
+ * dispatch (mirrors how `mentionResolver` gates `'channel'` rows).
130
+ *
131
+ * Returns the list of `agentSession` ids for the huddle's members.
132
+ * Order doesn't matter — the dispatcher loops over the whole list.
133
+ */
134
+ huddleMembersFor?: (channelId: string) => readonly string[];
96
135
  }
97
136
  /** Inputs to the prompt formatter. */
98
137
  export interface FormatPromptArgs {
@@ -102,6 +141,15 @@ export interface FormatPromptArgs {
102
141
  senderId: string;
103
142
  content: string;
104
143
  clientMessageId?: string;
144
+ /**
145
+ * Phase B-2 — in a huddle, every member receives the prompt but
146
+ * only the @-mentioned ones MUST reply. The default formatter
147
+ * appends a "你必须回复" (mandatory) or "你可以选择是否回复" (optional)
148
+ * tag so the agent's prompt-following heuristics can branch. Defaults
149
+ * to `'required'` for DMs and `'channel'` (single-mention) dispatches
150
+ * where every recipient was explicitly addressed.
151
+ */
152
+ responseMode?: 'required' | 'optional';
105
153
  }
106
154
  /**
107
155
  * Default prompt formatter the agent sees when a user sends in their
@@ -122,6 +170,7 @@ export declare class ChatV2DispatcherService {
122
170
  private readonly agentSink;
123
171
  private readonly formatPrompt;
124
172
  private readonly mentionResolver?;
173
+ private readonly huddleMembersFor?;
125
174
  private readonly logger;
126
175
  constructor(options: ChatV2DispatcherOptions);
127
176
  /**
@@ -146,6 +195,27 @@ export declare class ChatV2DispatcherService {
146
195
  * @returns Aggregate result describing the strategy + outcomes.
147
196
  */
148
197
  dispatchMessage(channel: ChatChannelDTO, message: ChatMessageDTO): Promise<DispatchMessageResult>;
198
+ /**
199
+ * Phase B-2 — fan a user message out to every member of a huddle.
200
+ *
201
+ * Resolution path:
202
+ * 1. Look up the roster via the injected `huddleMembersFor`. No
203
+ * resolver wired → return `strategy: 'skip'` (the message still
204
+ * persists; nobody is paged).
205
+ * 2. Empty roster → same skip path. Should not happen since
206
+ * `createHuddle` rejects empty membership, but defensive.
207
+ * 3. For each member, derive `responseMode` from whether their
208
+ * session appears in `message.mentions[]`. Format the prompt
209
+ * accordingly and call `sendMessageToAgent`.
210
+ *
211
+ * Always resolves; per-member errors are captured in
212
+ * {@link DispatchMessageResult.huddleOutcomes} and never thrown.
213
+ *
214
+ * @param channel - The huddle channel.
215
+ * @param message - The persisted user message.
216
+ * @returns Aggregate result with one outcome per member.
217
+ */
218
+ private dispatchHuddleBroadcast;
149
219
  /**
150
220
  * Dispatch a `type='channel'` message to its resolved mentions.
151
221
  *
@@ -170,6 +240,17 @@ export declare class ChatV2DispatcherService {
170
240
  * Messages where `senderType !== "user"` are a no-op — we never loop an
171
241
  * agent's own reply back into its own PTY.
172
242
  *
243
+ * @deprecated Issue #334 — `dispatchToAgent` is the legacy 1:1 entry
244
+ * point. New callers MUST go through `dispatchMessage`, which routes
245
+ * type='dm' messages here and adds the type='channel' (@mentions /
246
+ * @team) path. Direct callers of `dispatchToAgent` silently bypass
247
+ * the mention-resolution layer.
248
+ *
249
+ * Conversion: replace `dispatchToAgent(channel, message)` with
250
+ * `dispatchMessage(channel, message)` and read the `dmResult` field
251
+ * of the returned object. See chat-v2.dispatcher.service.ts:dispatchMessage
252
+ * for the contract.
253
+ *
173
254
  * @param channel - Channel DTO (provides `agentSession` + display name)
174
255
  * @param message - Persisted message DTO
175
256
  */
@@ -1 +1 @@
1
- {"version":3,"file":"chat-v2.dispatcher.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/chat-v2/chat-v2.dispatcher.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,KAAK,EACV,qBAAqB,EAErB,aAAa,EACd,MAAM,+BAA+B,CAAC;AAOvC;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,kBAAkB,CAChB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACtF;AAED,4CAA4C;AAC5C,MAAM,WAAW,cAAc;IAC7B,8EAA8E;IAC9E,UAAU,EAAE,OAAO,CAAC;IACpB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,+DAA+D;AAC/D,MAAM,WAAW,sBAAsB;IACrC,iEAAiE;IACjE,MAAM,EAAE,aAAa,CAAC;IACtB,6EAA6E;IAC7E,UAAU,EAAE,OAAO,CAAC;IACpB,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;;;;OAMG;IACH,QAAQ,EAAE,IAAI,GAAG,kBAAkB,GAAG,MAAM,CAAC;IAC7C,4DAA4D;IAC5D,UAAU,EAAE,OAAO,CAAC;IACpB,yCAAyC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B;;;OAGG;IACH,eAAe,CAAC,EAAE,sBAAsB,EAAE,CAAC;CAC5C;AAED,+DAA+D;AAC/D,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,gBAAgB,CAAC;IAC5B;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,MAAM,CAAC;IAClD;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,qBAAqB,CAAC;CACzC;AAED,sCAAsC;AACtC,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAMD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAYlE;AAMD;;;;GAIG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmB;IAC7C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqC;IAClE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAwB;IACzD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;gBAE7B,OAAO,EAAE,uBAAuB;IAO5C;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,eAAe,CACnB,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,qBAAqB,CAAC;IAwBjC;;;;;;;;;;;;OAYG;YACW,uBAAuB;IA+ErC;;;;;;;;;;;;OAYG;IACG,eAAe,CACnB,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,cAAc,CAAC;CAoD3B"}
1
+ {"version":3,"file":"chat-v2.dispatcher.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/chat-v2/chat-v2.dispatcher.service.ts"],"names":[],"mappings":"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"}
@@ -33,16 +33,23 @@ import { LoggerService } from '../core/logger.service.js';
33
33
  * instruction on how to reply.
34
34
  */
35
35
  export function defaultFormatPrompt(args) {
36
- const { channelId, channelName, senderId, content, clientMessageId } = args;
36
+ const { channelId, channelName, senderId, content, clientMessageId, responseMode } = args;
37
37
  const trimmed = content.trim();
38
38
  const idHint = clientMessageId ? ` [cmid:${clientMessageId}]` : '';
39
+ // Default to "required" so DM and single-mention channel dispatches
40
+ // preserve the legacy "must reply" semantic. Only huddles flip this
41
+ // to "optional" for non-@'d members.
42
+ const mode = responseMode ?? 'required';
43
+ const replyHint = mode === 'optional'
44
+ ? `回复本频道: 你在此 huddle 中收到此消息但未被 @ — 如有必要可用 \`reply-channel\` skill (channelId="${channelId}") 回复,否则不回复也可以。`
45
+ : `回复本频道: 用 \`reply-channel\` skill, 参数 channelId="${channelId}"、content="<your reply>"。`;
39
46
  return [
40
47
  `[CHAT:${channelId}]${idHint} <${senderId}@${channelName}>`,
41
48
  ``,
42
49
  trimmed,
43
50
  ``,
44
51
  `---`,
45
- `回复本频道: 用 \`reply-channel\` skill, 参数 channelId="${channelId}"、content="<your reply>"。`,
52
+ replyHint,
46
53
  ].join('\n');
47
54
  }
48
55
  // ---------------------------------------------------------------------------
@@ -57,11 +64,13 @@ export class ChatV2DispatcherService {
57
64
  agentSink;
58
65
  formatPrompt;
59
66
  mentionResolver;
67
+ huddleMembersFor;
60
68
  logger;
61
69
  constructor(options) {
62
70
  this.agentSink = options.agentSink;
63
71
  this.formatPrompt = options.formatPrompt ?? defaultFormatPrompt;
64
72
  this.mentionResolver = options.mentionResolver;
73
+ this.huddleMembersFor = options.huddleMembersFor;
65
74
  this.logger = LoggerService.getInstance().createComponentLogger('ChatV2Dispatcher');
66
75
  }
67
76
  /**
@@ -96,6 +105,9 @@ export class ChatV2DispatcherService {
96
105
  if (channel.type === 'channel') {
97
106
  return this.dispatchChannelMentions(channel, message);
98
107
  }
108
+ if (channel.type === 'huddle') {
109
+ return this.dispatchHuddleBroadcast(channel, message);
110
+ }
99
111
  // Default to the DM path for any other type (including legacy /
100
112
  // missing — `type` is non-null after Phase A migration but defensive
101
113
  // here keeps the dispatcher robust).
@@ -106,6 +118,101 @@ export class ChatV2DispatcherService {
106
118
  dmResult,
107
119
  };
108
120
  }
121
+ /**
122
+ * Phase B-2 — fan a user message out to every member of a huddle.
123
+ *
124
+ * Resolution path:
125
+ * 1. Look up the roster via the injected `huddleMembersFor`. No
126
+ * resolver wired → return `strategy: 'skip'` (the message still
127
+ * persists; nobody is paged).
128
+ * 2. Empty roster → same skip path. Should not happen since
129
+ * `createHuddle` rejects empty membership, but defensive.
130
+ * 3. For each member, derive `responseMode` from whether their
131
+ * session appears in `message.mentions[]`. Format the prompt
132
+ * accordingly and call `sendMessageToAgent`.
133
+ *
134
+ * Always resolves; per-member errors are captured in
135
+ * {@link DispatchMessageResult.huddleOutcomes} and never thrown.
136
+ *
137
+ * @param channel - The huddle channel.
138
+ * @param message - The persisted user message.
139
+ * @returns Aggregate result with one outcome per member.
140
+ */
141
+ async dispatchHuddleBroadcast(channel, message) {
142
+ if (!this.huddleMembersFor) {
143
+ this.logger.debug('chat-v2 huddle dispatch skipped — no roster lookup wired', {
144
+ channelId: channel.id,
145
+ messageId: message.id,
146
+ });
147
+ return {
148
+ strategy: 'skip',
149
+ dispatched: false,
150
+ reason: 'no huddleMembersFor resolver wired',
151
+ };
152
+ }
153
+ const members = this.huddleMembersFor(channel.id);
154
+ if (members.length === 0) {
155
+ return {
156
+ strategy: 'skip',
157
+ dispatched: false,
158
+ reason: 'huddle has no members',
159
+ };
160
+ }
161
+ // Pre-build the mention set so each member lookup is O(1). The
162
+ // wire mention is the agent session id (same shape as the roster
163
+ // entries) so a simple Set membership check is enough.
164
+ const mentioned = new Set(Array.isArray(message.mentions) ? message.mentions : []);
165
+ const outcomes = [];
166
+ let anyDispatched = false;
167
+ for (const sessionName of members) {
168
+ const responseMode = mentioned.has(sessionName) ? 'required' : 'optional';
169
+ const prompt = this.formatPrompt({
170
+ channelId: channel.id,
171
+ channelName: channel.name,
172
+ agentSession: sessionName,
173
+ senderId: message.senderId,
174
+ content: message.content,
175
+ clientMessageId: typeof message.metadata?.clientMessageId === 'string'
176
+ ? message.metadata.clientMessageId
177
+ : undefined,
178
+ responseMode,
179
+ });
180
+ try {
181
+ const result = await this.agentSink.sendMessageToAgent(sessionName, prompt);
182
+ if (result.success) {
183
+ outcomes.push({ sessionName, responseMode, dispatched: true });
184
+ anyDispatched = true;
185
+ }
186
+ else {
187
+ this.logger.warn('chat-v2 huddle dispatch reported failure', {
188
+ channelId: channel.id,
189
+ sessionName,
190
+ err: result.error,
191
+ });
192
+ outcomes.push({
193
+ sessionName,
194
+ responseMode,
195
+ dispatched: false,
196
+ error: result.error ?? 'unknown sink failure',
197
+ });
198
+ }
199
+ }
200
+ catch (err) {
201
+ const errMsg = err instanceof Error ? err.message : String(err);
202
+ this.logger.error('chat-v2 huddle dispatch threw', {
203
+ channelId: channel.id,
204
+ sessionName,
205
+ err: errMsg,
206
+ });
207
+ outcomes.push({ sessionName, responseMode, dispatched: false, error: errMsg });
208
+ }
209
+ }
210
+ return {
211
+ strategy: 'huddle-broadcast',
212
+ dispatched: anyDispatched,
213
+ huddleOutcomes: outcomes,
214
+ };
215
+ }
109
216
  /**
110
217
  * Dispatch a `type='channel'` message to its resolved mentions.
111
218
  *
@@ -199,6 +306,17 @@ export class ChatV2DispatcherService {
199
306
  * Messages where `senderType !== "user"` are a no-op — we never loop an
200
307
  * agent's own reply back into its own PTY.
201
308
  *
309
+ * @deprecated Issue #334 — `dispatchToAgent` is the legacy 1:1 entry
310
+ * point. New callers MUST go through `dispatchMessage`, which routes
311
+ * type='dm' messages here and adds the type='channel' (@mentions /
312
+ * @team) path. Direct callers of `dispatchToAgent` silently bypass
313
+ * the mention-resolution layer.
314
+ *
315
+ * Conversion: replace `dispatchToAgent(channel, message)` with
316
+ * `dispatchMessage(channel, message)` and read the `dmResult` field
317
+ * of the returned object. See chat-v2.dispatcher.service.ts:dispatchMessage
318
+ * for the contract.
319
+ *
202
320
  * @param channel - Channel DTO (provides `agentSession` + display name)
203
321
  * @param message - Persisted message DTO
204
322
  */
@@ -1 +1 @@
1
- {"version":3,"file":"chat-v2.dispatcher.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/chat-v2/chat-v2.dispatcher.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-v2.dispatcher.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/chat-v2/chat-v2.dispatcher.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAQH,OAAO,EAAE,aAAa,EAAmB,MAAM,2BAA2B,CAAC;AA6I3E,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAsB;IACxD,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IAC1F,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,UAAU,eAAe,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,oEAAoE;IACpE,oEAAoE;IACpE,qCAAqC;IACrC,MAAM,IAAI,GAAG,YAAY,IAAI,UAAU,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,KAAK,UAAU;QACnC,CAAC,CAAC,8EAA8E,SAAS,iBAAiB;QAC1G,CAAC,CAAC,mDAAmD,SAAS,2BAA2B,CAAC;IAC5F,OAAO;QACL,SAAS,SAAS,IAAI,MAAM,KAAK,QAAQ,IAAI,WAAW,GAAG;QAC3D,EAAE;QACF,OAAO;QACP,EAAE;QACF,KAAK;QACL,SAAS;KACV,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E;;;;GAIG;AACH,MAAM,OAAO,uBAAuB;IACjB,SAAS,CAAmB;IAC5B,YAAY,CAAqC;IACjD,eAAe,CAAyB;IACxC,gBAAgB,CAA4C;IAC5D,MAAM,CAAkB;IAEzC,YAAY,OAAgC;QAC1C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,mBAAmB,CAAC;QAChE,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAC/C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;IACtF,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,eAAe,CACnB,OAAuB,EACvB,OAAuB;QAEvB,IAAI,OAAO,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;YAClC,OAAO;gBACL,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,KAAK;gBACjB,MAAM,EAAE,2BAA2B;aACpC,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxD,CAAC;QAED,gEAAgE;QAChE,qEAAqE;QACrE,qCAAqC;QACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9D,OAAO;YACL,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,QAAQ;SACT,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACK,KAAK,CAAC,uBAAuB,CACnC,OAAuB,EACvB,OAAuB;QAEvB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0DAA0D,EAAE;gBAC5E,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,SAAS,EAAE,OAAO,CAAC,EAAE;aACtB,CAAC,CAAC;YACH,OAAO;gBACL,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,KAAK;gBACjB,MAAM,EAAE,oCAAoC;aAC7C,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO;gBACL,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,KAAK;gBACjB,MAAM,EAAE,uBAAuB;aAChC,CAAC;QACJ,CAAC;QAED,+DAA+D;QAC/D,iEAAiE;QACjE,uDAAuD;QACvD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAEnF,MAAM,QAAQ,GAA4B,EAAE,CAAC;QAC7C,IAAI,aAAa,GAAG,KAAK,CAAC;QAE1B,KAAK,MAAM,WAAW,IAAI,OAAO,EAAE,CAAC;YAClC,MAAM,YAAY,GAA4B,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;YACnG,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;gBAC/B,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,YAAY,EAAE,WAAW;gBACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,eAAe,EACb,OAAO,OAAO,CAAC,QAAQ,EAAE,eAAe,KAAK,QAAQ;oBACnD,CAAC,CAAE,OAAO,CAAC,QAAQ,CAAC,eAA0B;oBAC9C,CAAC,CAAC,SAAS;gBACf,YAAY;aACb,CAAC,CAAC;YAEH,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;gBAC5E,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC/D,aAAa,GAAG,IAAI,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0CAA0C,EAAE;wBAC3D,SAAS,EAAE,OAAO,CAAC,EAAE;wBACrB,WAAW;wBACX,GAAG,EAAE,MAAM,CAAC,KAAK;qBAClB,CAAC,CAAC;oBACH,QAAQ,CAAC,IAAI,CAAC;wBACZ,WAAW;wBACX,YAAY;wBACZ,UAAU,EAAE,KAAK;wBACjB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,sBAAsB;qBAC9C,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE;oBACjD,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,WAAW;oBACX,GAAG,EAAE,MAAM;iBACZ,CAAC,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,kBAAkB;YAC5B,UAAU,EAAE,aAAa;YACzB,cAAc,EAAE,QAAQ;SACzB,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,KAAK,CAAC,uBAAuB,CACnC,OAAuB,EACvB,OAAuB;QAEvB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sDAAsD,EAAE;gBACxE,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,SAAS,EAAE,OAAO,CAAC,EAAE;aACtB,CAAC,CAAC;YACH,OAAO;gBACL,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,KAAK;gBACjB,MAAM,EAAE,4CAA4C;aACrD,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO;gBACL,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,KAAK;gBACjB,MAAM,EAAE,qCAAqC;aAC9C,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAA2B,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;QAC/D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAElE,MAAM,QAAQ,GAA6B,EAAE,CAAC;QAC9C,IAAI,aAAa,GAAG,KAAK,CAAC;QAE1B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;gBAC/B,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,YAAY,EAAE,MAAM,CAAC,WAAW;gBAChC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,eAAe,EACb,OAAO,OAAO,CAAC,QAAQ,EAAE,eAAe,KAAK,QAAQ;oBACnD,CAAC,CAAE,OAAO,CAAC,QAAQ,CAAC,eAA0B;oBAC9C,CAAC,CAAC,SAAS;aAChB,CAAC,CAAC;YAEH,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;gBACnF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC5C,aAAa,GAAG,IAAI,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2CAA2C,EAAE;wBAC5D,SAAS,EAAE,OAAO,CAAC,EAAE;wBACrB,WAAW,EAAE,MAAM,CAAC,WAAW;wBAC/B,GAAG,EAAE,MAAM,CAAC,KAAK;qBAClB,CAAC,CAAC;oBACH,QAAQ,CAAC,IAAI,CAAC;wBACZ,MAAM;wBACN,UAAU,EAAE,KAAK;wBACjB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,sBAAsB;qBAC9C,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE;oBAClD,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,GAAG,EAAE,MAAM;iBACZ,CAAC,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,kBAAkB;YAC5B,UAAU,EAAE,aAAa;YACzB,eAAe,EAAE,QAAQ;SAC1B,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,KAAK,CAAC,eAAe,CACnB,OAAuB,EACvB,OAAuB;QAEvB,IAAI,OAAO,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;YAClC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,2BAA2B,EAAE,CAAC;QACnE,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4CAA4C,EAAE;gBAC7D,SAAS,EAAE,OAAO,CAAC,EAAE;aACtB,CAAC,CAAC;YACH,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAE,CAAC;QACpE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;YAC/B,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,WAAW,EAAE,OAAO,CAAC,IAAI;YACzB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,eAAe,EACb,OAAO,OAAO,CAAC,QAAQ,EAAE,eAAe,KAAK,QAAQ;gBACnD,CAAC,CAAE,OAAO,CAAC,QAAQ,CAAC,eAA0B;gBAC9C,CAAC,CAAC,SAAS;SAChB,CAAC,CAAC;QAEH,IAAI,MAAmE,CAAC;QACxE,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACjF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE;gBAC1C,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,GAAG,EAAE,MAAM;aACZ,CAAC,CAAC;YACH,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;gBACpD,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,GAAG,EAAE,MAAM,CAAC,KAAK;aAClB,CAAC,CAAC;YACH,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,sBAAsB,EAAE,CAAC;QAC9E,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE;YACtC,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,KAAK;SAC/B,CAAC,CAAC;QACH,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC9B,CAAC;CACF"}
@@ -0,0 +1,114 @@
1
+ /**
2
+ * Provider factories backing the chat-v2 controller's `/agents` and
3
+ * `/presence/:agentId` endpoints.
4
+ *
5
+ * These are intentionally kept separate from the controller + service so
6
+ * tests can inject a fixture (`IAgentDirectoryProvider` / `IAgentPresenceProvider`
7
+ * stubs) without spinning up StorageService or the orchestrator-status
8
+ * helper. The production wiring in `api.routes.ts` instantiates them
9
+ * once per request stack and passes them as `ChatV2ControllerDeps`.
10
+ *
11
+ * Why a thin adapter layer over StorageService.getTeams + isAgentActive?
12
+ * - StorageService.getTeams returns the full `Team[]` shape including
13
+ * fields the directory doesn't need (templates, hierarchy graphs,
14
+ * project bindings). The controller's `IAgentDirectoryProvider`
15
+ * contract is intentionally narrow so the route handler stays
16
+ * decoupled from the storage shape.
17
+ * - `isAgentActive` returns a boolean only; the controller's wire DTO
18
+ * wants a `status` union + `lastSeenAt`. We do that mapping here.
19
+ *
20
+ * @module services/chat-v2/chat-v2.providers
21
+ */
22
+ import type { IAgentDirectoryProvider, IAgentPresenceProvider, ChatAgentPresenceDTO } from '../../controllers/chat-v2/chat-v2.controller.js';
23
+ /**
24
+ * Minimal storage surface the providers need. Decoupled from the full
25
+ * `StorageService` so a fixture team list is enough to test.
26
+ */
27
+ export interface IStorageServiceLike {
28
+ getTeams(): Promise<Array<{
29
+ id: string;
30
+ name: string;
31
+ members: Array<{
32
+ sessionName?: string;
33
+ name: string;
34
+ role: string;
35
+ agentStatus: string;
36
+ workingStatus: string;
37
+ avatar?: string;
38
+ }>;
39
+ }>>;
40
+ }
41
+ /**
42
+ * Minimal agent-liveness probe. Defaults to `isAgentActive` from
43
+ * `orchestrator-status.service`; tests pass a synchronous stub.
44
+ */
45
+ export type IsAgentActiveFn = (sessionName: string) => Promise<boolean>;
46
+ /**
47
+ * Optional hook for surfacing the virtual "Orchestrator Team". The OSS
48
+ * orchestrator is not a row in any teams.json (it lives in
49
+ * `teams/orchestrator/config.json` and is *filtered out* by
50
+ * StorageService.getTeams), but the user expects to chat with it from
51
+ * the /agents page. The provider synthesizes the team on top of
52
+ * `getTeams()` so the rail always lists the orchestrator first.
53
+ *
54
+ * Tests can override the resolver to return null + skip the virtual
55
+ * team, or to inject a synthetic status without touching storage.
56
+ */
57
+ export type OrchestratorStatusResolver = () => Promise<{
58
+ agentStatus: string;
59
+ workingStatus: string;
60
+ } | null>;
61
+ /**
62
+ * Build the production `IAgentDirectoryProvider`. Flattens
63
+ * `StorageService.getTeams()` into the narrow controller-facing shape,
64
+ * filtering out members without a `sessionName` (incomplete team
65
+ * entries, deleted-but-not-purged rows).
66
+ *
67
+ * Also prepends a synthetic Orchestrator Team so the user can DM the
68
+ * orchestrator from /agents without setting up a regular team. This
69
+ * mirrors team.controller's `buildOrchestratorTeam` virtual-team
70
+ * synthesis on the /api/teams endpoint.
71
+ *
72
+ * @param storage - The StorageService instance (or a fixture stub)
73
+ * @param opts.resolveOrchestratorStatus - Optional override for the
74
+ * orchestrator's stored status. Defaults to a lazy import of
75
+ * `StorageService.getOrchestratorStatus()` so tests can inject a stub.
76
+ * Returning null skips the virtual-team prepend entirely.
77
+ * @returns Provider satisfying {@link IAgentDirectoryProvider}
78
+ */
79
+ export declare function createOssAgentDirectoryProvider(storage: IStorageServiceLike, opts?: {
80
+ resolveOrchestratorStatus?: OrchestratorStatusResolver;
81
+ }): IAgentDirectoryProvider;
82
+ /**
83
+ * Map the stored `(agentStatus, workingStatus, isActive)` tuple to the
84
+ * presence wire status. The chat-ui client expects the closed set:
85
+ * - `online` : agent is up and idle (ready for a new message)
86
+ * - `busy` : agent is up and working on something
87
+ * - `starting` : agent is registered but session not yet alive
88
+ * - `offline` : everything else (inactive, suspended, crash, …)
89
+ *
90
+ * Single source of truth — exported for tests + presence-aware UI bits.
91
+ *
92
+ * @param isActive - True when the PTY/in-process session is alive
93
+ * @param agentStatus - Stored `agentStatus` from team file
94
+ * @param workingStatus - Stored `workingStatus` from team file
95
+ * @returns Wire-level presence status
96
+ */
97
+ export declare function resolvePresenceStatus(isActive: boolean, agentStatus: string, workingStatus: string): ChatAgentPresenceDTO['status'];
98
+ /**
99
+ * Build the production `IAgentPresenceProvider`. Uses
100
+ * {@link IsAgentActiveFn} (defaulting to `isAgentActive` from
101
+ * orchestrator-status) for liveness and falls back to the stored
102
+ * agentStatus/workingStatus for unknown sessions.
103
+ *
104
+ * @param storage - StorageService for member lookups
105
+ * @param opts.isAgentActive - Optional override (tests pass a stub)
106
+ * @param opts.now - Optional clock override (tests freeze the
107
+ * `lastSeenAt` timestamp)
108
+ * @returns Provider satisfying {@link IAgentPresenceProvider}
109
+ */
110
+ export declare function createOssAgentPresenceProvider(storage: IStorageServiceLike, opts?: {
111
+ isAgentActive?: IsAgentActiveFn;
112
+ now?: () => number;
113
+ }): IAgentPresenceProvider;
114
+ //# sourceMappingURL=chat-v2.providers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-v2.providers.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/chat-v2/chat-v2.providers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EACV,uBAAuB,EACvB,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,iDAAiD,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,IAAI,OAAO,CACjB,KAAK,CAAC;QACJ,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,KAAK,CAAC;YACb,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,WAAW,EAAE,MAAM,CAAC;YACpB,aAAa,EAAE,MAAM,CAAC;YACtB,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC,CAAC;KACJ,CAAC,CACH,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAExE;;;;;;;;;;GAUG;AACH,MAAM,MAAM,0BAA0B,GAAG,MAAM,OAAO,CAAC;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,IAAI,CAAC,CAAC;AAEV;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,mBAAmB,EAC5B,IAAI,GAAE;IACJ,yBAAyB,CAAC,EAAE,0BAA0B,CAAC;CACnD,GACL,uBAAuB,CA2DzB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,OAAO,EACjB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,oBAAoB,CAAC,QAAQ,CAAC,CAOhC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,mBAAmB,EAC5B,IAAI,GAAE;IACJ,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACf,GACL,sBAAsB,CAiDxB"}