crewly 1.20.202 → 1.20.204

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 (230) hide show
  1. package/config/skills/agent/core/reply/SKILL.md +1 -0
  2. package/config/skills/agent/core/reply/execute.sh +7 -1
  3. package/config/skills/agent/core/reply-channel/SKILL.md +4 -0
  4. package/config/skills/agent/core/reply-channel/execute.sh +12 -1
  5. package/dist/backend/backend/src/constants.d.ts +158 -0
  6. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  7. package/dist/backend/backend/src/constants.js +158 -0
  8. package/dist/backend/backend/src/constants.js.map +1 -1
  9. package/dist/backend/backend/src/controllers/chat/agent-reply.controller.d.ts.map +1 -1
  10. package/dist/backend/backend/src/controllers/chat/agent-reply.controller.js +1 -0
  11. package/dist/backend/backend/src/controllers/chat/agent-reply.controller.js.map +1 -1
  12. package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts.map +1 -1
  13. package/dist/backend/backend/src/controllers/chat/chat.controller.js +11 -1
  14. package/dist/backend/backend/src/controllers/chat/chat.controller.js.map +1 -1
  15. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.d.ts.map +1 -1
  16. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.js +50 -0
  17. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.js.map +1 -1
  18. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts +6 -0
  19. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts.map +1 -1
  20. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js +30 -2
  21. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js.map +1 -1
  22. package/dist/backend/backend/src/controllers/session/session.controller.d.ts.map +1 -1
  23. package/dist/backend/backend/src/controllers/session/session.controller.js +7 -0
  24. package/dist/backend/backend/src/controllers/session/session.controller.js.map +1 -1
  25. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts.map +1 -1
  26. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js +4 -1
  27. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js.map +1 -1
  28. package/dist/backend/backend/src/index.d.ts +28 -0
  29. package/dist/backend/backend/src/index.d.ts.map +1 -1
  30. package/dist/backend/backend/src/index.js +141 -35
  31. package/dist/backend/backend/src/index.js.map +1 -1
  32. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  33. package/dist/backend/backend/src/services/agent/agent-registration.service.js +7 -0
  34. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  35. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts.map +1 -1
  36. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js +11 -0
  37. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js.map +1 -1
  38. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.d.ts +22 -0
  39. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.d.ts.map +1 -1
  40. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.js +39 -3
  41. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.js.map +1 -1
  42. package/dist/backend/backend/src/services/agent/in-process-turn-failure.service.d.ts +140 -0
  43. package/dist/backend/backend/src/services/agent/in-process-turn-failure.service.d.ts.map +1 -0
  44. package/dist/backend/backend/src/services/agent/in-process-turn-failure.service.js +267 -0
  45. package/dist/backend/backend/src/services/agent/in-process-turn-failure.service.js.map +1 -0
  46. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +117 -0
  47. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
  48. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +165 -9
  49. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
  50. package/dist/backend/backend/src/services/chat-v2/room-context-backlog.d.ts +93 -0
  51. package/dist/backend/backend/src/services/chat-v2/room-context-backlog.d.ts.map +1 -0
  52. package/dist/backend/backend/src/services/chat-v2/room-context-backlog.js +138 -0
  53. package/dist/backend/backend/src/services/chat-v2/room-context-backlog.js.map +1 -0
  54. package/dist/backend/backend/src/services/decisions/decision-card.d.ts.map +1 -1
  55. package/dist/backend/backend/src/services/decisions/decision-card.js +5 -1
  56. package/dist/backend/backend/src/services/decisions/decision-card.js.map +1 -1
  57. package/dist/backend/backend/src/services/decisions/decision.service.d.ts +43 -1
  58. package/dist/backend/backend/src/services/decisions/decision.service.d.ts.map +1 -1
  59. package/dist/backend/backend/src/services/decisions/decision.service.js +110 -7
  60. package/dist/backend/backend/src/services/decisions/decision.service.js.map +1 -1
  61. package/dist/backend/backend/src/services/decisions/decision.wiring.d.ts +2 -0
  62. package/dist/backend/backend/src/services/decisions/decision.wiring.d.ts.map +1 -1
  63. package/dist/backend/backend/src/services/decisions/decision.wiring.js +1 -0
  64. package/dist/backend/backend/src/services/decisions/decision.wiring.js.map +1 -1
  65. package/dist/backend/backend/src/services/messaging/drain-queued-delivery.d.ts +59 -0
  66. package/dist/backend/backend/src/services/messaging/drain-queued-delivery.d.ts.map +1 -0
  67. package/dist/backend/backend/src/services/messaging/drain-queued-delivery.js +70 -0
  68. package/dist/backend/backend/src/services/messaging/drain-queued-delivery.js.map +1 -0
  69. package/dist/backend/backend/src/services/messaging/owner-message-watchdog.service.d.ts +46 -1
  70. package/dist/backend/backend/src/services/messaging/owner-message-watchdog.service.d.ts.map +1 -1
  71. package/dist/backend/backend/src/services/messaging/owner-message-watchdog.service.js +109 -0
  72. package/dist/backend/backend/src/services/messaging/owner-message-watchdog.service.js.map +1 -1
  73. package/dist/backend/backend/src/services/messaging/owner-message-watchdog.wiring.d.ts +2 -0
  74. package/dist/backend/backend/src/services/messaging/owner-message-watchdog.wiring.d.ts.map +1 -1
  75. package/dist/backend/backend/src/services/messaging/owner-message-watchdog.wiring.js +6 -0
  76. package/dist/backend/backend/src/services/messaging/owner-message-watchdog.wiring.js.map +1 -1
  77. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.d.ts +51 -1
  78. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.d.ts.map +1 -1
  79. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.js +73 -3
  80. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.js.map +1 -1
  81. package/dist/backend/backend/src/services/monitoring/liveness-monitor.service.d.ts +168 -0
  82. package/dist/backend/backend/src/services/monitoring/liveness-monitor.service.d.ts.map +1 -0
  83. package/dist/backend/backend/src/services/monitoring/liveness-monitor.service.js +280 -0
  84. package/dist/backend/backend/src/services/monitoring/liveness-monitor.service.js.map +1 -0
  85. package/dist/backend/backend/src/services/open-items/open-items.service.d.ts +21 -0
  86. package/dist/backend/backend/src/services/open-items/open-items.service.d.ts.map +1 -1
  87. package/dist/backend/backend/src/services/open-items/open-items.service.js +72 -3
  88. package/dist/backend/backend/src/services/open-items/open-items.service.js.map +1 -1
  89. package/dist/backend/backend/src/services/orc/orc-chat-owner-mirror.d.ts +153 -0
  90. package/dist/backend/backend/src/services/orc/orc-chat-owner-mirror.d.ts.map +1 -0
  91. package/dist/backend/backend/src/services/orc/orc-chat-owner-mirror.js +276 -0
  92. package/dist/backend/backend/src/services/orc/orc-chat-owner-mirror.js.map +1 -0
  93. package/dist/backend/backend/src/services/orc/reply-destination.wiring.d.ts +16 -0
  94. package/dist/backend/backend/src/services/orc/reply-destination.wiring.d.ts.map +1 -1
  95. package/dist/backend/backend/src/services/orc/reply-destination.wiring.js +22 -2
  96. package/dist/backend/backend/src/services/orc/reply-destination.wiring.js.map +1 -1
  97. package/dist/backend/backend/src/services/restart/in-flight-turn-tracker.service.d.ts +9 -0
  98. package/dist/backend/backend/src/services/restart/in-flight-turn-tracker.service.d.ts.map +1 -1
  99. package/dist/backend/backend/src/services/restart/in-flight-turn-tracker.service.js +11 -0
  100. package/dist/backend/backend/src/services/restart/in-flight-turn-tracker.service.js.map +1 -1
  101. package/dist/backend/backend/src/services/slack/room-responder.d.ts +144 -0
  102. package/dist/backend/backend/src/services/slack/room-responder.d.ts.map +1 -0
  103. package/dist/backend/backend/src/services/slack/room-responder.js +236 -0
  104. package/dist/backend/backend/src/services/slack/room-responder.js.map +1 -0
  105. package/dist/backend/backend/src/services/slack/slack-agent-dm.service.d.ts +11 -2
  106. package/dist/backend/backend/src/services/slack/slack-agent-dm.service.d.ts.map +1 -1
  107. package/dist/backend/backend/src/services/slack/slack-agent-dm.service.js +22 -1
  108. package/dist/backend/backend/src/services/slack/slack-agent-dm.service.js.map +1 -1
  109. package/dist/backend/backend/src/services/slack/slack-initializer.d.ts.map +1 -1
  110. package/dist/backend/backend/src/services/slack/slack-initializer.js +64 -2
  111. package/dist/backend/backend/src/services/slack/slack-initializer.js.map +1 -1
  112. package/dist/backend/backend/src/services/slack/slack-relogin-dm.service.d.ts +8 -2
  113. package/dist/backend/backend/src/services/slack/slack-relogin-dm.service.d.ts.map +1 -1
  114. package/dist/backend/backend/src/services/slack/slack-relogin-dm.service.js +7 -4
  115. package/dist/backend/backend/src/services/slack/slack-relogin-dm.service.js.map +1 -1
  116. package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts +148 -2
  117. package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
  118. package/dist/backend/backend/src/services/slack/slack-team-channel.service.js +784 -231
  119. package/dist/backend/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
  120. package/dist/backend/backend/src/services/slack/slack-thread-context.service.d.ts +27 -0
  121. package/dist/backend/backend/src/services/slack/slack-thread-context.service.d.ts.map +1 -1
  122. package/dist/backend/backend/src/services/slack/slack-thread-context.service.js +52 -0
  123. package/dist/backend/backend/src/services/slack/slack-thread-context.service.js.map +1 -1
  124. package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.d.ts +30 -5
  125. package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.d.ts.map +1 -1
  126. package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.js +41 -8
  127. package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.js.map +1 -1
  128. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts +1 -0
  129. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
  130. package/dist/backend/backend/src/services/task-pool/task-pool.service.js +8 -3
  131. package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -1
  132. package/dist/backend/backend/src/services/v3/ticket-channel-hooks.d.ts +13 -1
  133. package/dist/backend/backend/src/services/v3/ticket-channel-hooks.d.ts.map +1 -1
  134. package/dist/backend/backend/src/services/v3/ticket-channel-hooks.js +36 -3
  135. package/dist/backend/backend/src/services/v3/ticket-channel-hooks.js.map +1 -1
  136. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts +54 -3
  137. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts.map +1 -1
  138. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js +117 -9
  139. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js.map +1 -1
  140. package/dist/backend/backend/src/types/decision.types.d.ts +7 -0
  141. package/dist/backend/backend/src/types/decision.types.d.ts.map +1 -1
  142. package/dist/backend/build-info.json +2 -2
  143. package/dist/cli/backend/src/constants.d.ts +158 -0
  144. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  145. package/dist/cli/backend/src/constants.js +158 -0
  146. package/dist/cli/backend/src/constants.js.map +1 -1
  147. package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  148. package/dist/cli/backend/src/services/agent/agent-registration.service.js +7 -0
  149. package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
  150. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts.map +1 -1
  151. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js +11 -0
  152. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js.map +1 -1
  153. package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.d.ts +22 -0
  154. package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.d.ts.map +1 -1
  155. package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.js +39 -3
  156. package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.js.map +1 -1
  157. package/dist/cli/backend/src/services/agent/in-process-turn-failure.service.d.ts +140 -0
  158. package/dist/cli/backend/src/services/agent/in-process-turn-failure.service.d.ts.map +1 -0
  159. package/dist/cli/backend/src/services/agent/in-process-turn-failure.service.js +267 -0
  160. package/dist/cli/backend/src/services/agent/in-process-turn-failure.service.js.map +1 -0
  161. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +117 -0
  162. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
  163. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +165 -9
  164. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
  165. package/dist/cli/backend/src/services/chat-v2/room-context-backlog.d.ts +93 -0
  166. package/dist/cli/backend/src/services/chat-v2/room-context-backlog.d.ts.map +1 -0
  167. package/dist/cli/backend/src/services/chat-v2/room-context-backlog.js +138 -0
  168. package/dist/cli/backend/src/services/chat-v2/room-context-backlog.js.map +1 -0
  169. package/dist/cli/backend/src/services/decisions/decision-card.d.ts.map +1 -1
  170. package/dist/cli/backend/src/services/decisions/decision-card.js +5 -1
  171. package/dist/cli/backend/src/services/decisions/decision-card.js.map +1 -1
  172. package/dist/cli/backend/src/services/decisions/decision.service.d.ts +43 -1
  173. package/dist/cli/backend/src/services/decisions/decision.service.d.ts.map +1 -1
  174. package/dist/cli/backend/src/services/decisions/decision.service.js +110 -7
  175. package/dist/cli/backend/src/services/decisions/decision.service.js.map +1 -1
  176. package/dist/cli/backend/src/services/messaging/owner-message-watchdog.service.d.ts +46 -1
  177. package/dist/cli/backend/src/services/messaging/owner-message-watchdog.service.d.ts.map +1 -1
  178. package/dist/cli/backend/src/services/messaging/owner-message-watchdog.service.js +109 -0
  179. package/dist/cli/backend/src/services/messaging/owner-message-watchdog.service.js.map +1 -1
  180. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.d.ts +51 -1
  181. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.d.ts.map +1 -1
  182. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.js +73 -3
  183. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.js.map +1 -1
  184. package/dist/cli/backend/src/services/open-items/open-items.service.d.ts +21 -0
  185. package/dist/cli/backend/src/services/open-items/open-items.service.d.ts.map +1 -1
  186. package/dist/cli/backend/src/services/open-items/open-items.service.js +72 -3
  187. package/dist/cli/backend/src/services/open-items/open-items.service.js.map +1 -1
  188. package/dist/cli/backend/src/services/restart/in-flight-turn-tracker.service.d.ts +9 -0
  189. package/dist/cli/backend/src/services/restart/in-flight-turn-tracker.service.d.ts.map +1 -1
  190. package/dist/cli/backend/src/services/restart/in-flight-turn-tracker.service.js +11 -0
  191. package/dist/cli/backend/src/services/restart/in-flight-turn-tracker.service.js.map +1 -1
  192. package/dist/cli/backend/src/services/runtime-fallback/reset-time.d.ts +66 -0
  193. package/dist/cli/backend/src/services/runtime-fallback/reset-time.d.ts.map +1 -0
  194. package/dist/cli/backend/src/services/runtime-fallback/reset-time.js +211 -0
  195. package/dist/cli/backend/src/services/runtime-fallback/reset-time.js.map +1 -0
  196. package/dist/cli/backend/src/services/runtime-fallback/usage-limit-rules.d.ts +113 -0
  197. package/dist/cli/backend/src/services/runtime-fallback/usage-limit-rules.d.ts.map +1 -0
  198. package/dist/cli/backend/src/services/runtime-fallback/usage-limit-rules.js +257 -0
  199. package/dist/cli/backend/src/services/runtime-fallback/usage-limit-rules.js.map +1 -0
  200. package/dist/cli/backend/src/services/slack/room-responder.d.ts +144 -0
  201. package/dist/cli/backend/src/services/slack/room-responder.d.ts.map +1 -0
  202. package/dist/cli/backend/src/services/slack/room-responder.js +236 -0
  203. package/dist/cli/backend/src/services/slack/room-responder.js.map +1 -0
  204. package/dist/cli/backend/src/services/slack/slack-agent-dm.service.d.ts +11 -2
  205. package/dist/cli/backend/src/services/slack/slack-agent-dm.service.d.ts.map +1 -1
  206. package/dist/cli/backend/src/services/slack/slack-agent-dm.service.js +22 -1
  207. package/dist/cli/backend/src/services/slack/slack-agent-dm.service.js.map +1 -1
  208. package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts +148 -2
  209. package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
  210. package/dist/cli/backend/src/services/slack/slack-team-channel.service.js +784 -231
  211. package/dist/cli/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
  212. package/dist/cli/backend/src/services/slack/slack-thread-context.service.d.ts +27 -0
  213. package/dist/cli/backend/src/services/slack/slack-thread-context.service.d.ts.map +1 -1
  214. package/dist/cli/backend/src/services/slack/slack-thread-context.service.js +52 -0
  215. package/dist/cli/backend/src/services/slack/slack-thread-context.service.js.map +1 -1
  216. package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.d.ts +30 -5
  217. package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.d.ts.map +1 -1
  218. package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.js +41 -8
  219. package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.js.map +1 -1
  220. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts +1 -0
  221. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
  222. package/dist/cli/backend/src/services/task-pool/task-pool.service.js +8 -3
  223. package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -1
  224. package/dist/cli/backend/src/services/v3/ticket-channel-hooks.d.ts +13 -1
  225. package/dist/cli/backend/src/services/v3/ticket-channel-hooks.d.ts.map +1 -1
  226. package/dist/cli/backend/src/services/v3/ticket-channel-hooks.js +36 -3
  227. package/dist/cli/backend/src/services/v3/ticket-channel-hooks.js.map +1 -1
  228. package/dist/cli/backend/src/types/decision.types.d.ts +7 -0
  229. package/dist/cli/backend/src/types/decision.types.d.ts.map +1 -1
  230. package/package.json +1 -1
@@ -50,6 +50,7 @@ import { TaskPoolService } from '../task-pool/task-pool.service.js';
50
50
  import { getLocalApiBaseUrl } from '../../utils/local-api-url.utils.js';
51
51
  import { DIRECT_DELIVERY_CONSTANTS, ORCHESTRATOR_SESSION_NAME } from '../../constants.js';
52
52
  import { spendCapStopOf } from '../spend/spend-cap.gate.js';
53
+ import { SubAgentMessageQueue } from '../messaging/sub-agent-message-queue.service.js';
53
54
  import { FreshTaskConversationService, freshConversationNote, } from '../agent/fresh-task-conversation.service.js';
54
55
  import { traceHarness, workItemTraceMarker } from '../trace/trace-recorder.js';
55
56
  import { noteScheduledTurn } from '../slack/slack-auto-working.service.js';
@@ -122,15 +123,24 @@ export function dispatchNoticeWorkItemIds(message) {
122
123
  * verified, one per notification, and the agent re-checked the pool for work
123
124
  * that was not there (#836). Text that is not a dispatch notice is never stale.
124
125
  *
126
+ * A WorkItem the target already received in this process (`isDelivered`:
127
+ * its brief was handed over directly, or another notice went out) counts as
128
+ * announced: a drain longer than the grace period queued both the held
129
+ * brief and this notice, and delivering both would brief the agent twice
130
+ * (crewly#1015 follow-up re-review).
131
+ *
125
132
  * @param message - Queued message text
126
133
  * @param findWorkItem - Looks up a WorkItem's current state by id
134
+ * @param isDelivered - Whether a WorkItem was already delivered to the notice's target
127
135
  * @returns True when the notice should be dropped instead of delivered
128
136
  */
129
- export async function isStaleDispatchNotice(message, findWorkItem) {
137
+ export async function isStaleDispatchNotice(message, findWorkItem, isDelivered) {
130
138
  const ids = dispatchNoticeWorkItemIds(message);
131
139
  if (!ids)
132
140
  return false;
133
141
  for (const id of ids) {
142
+ if (isDelivered?.(id))
143
+ continue;
134
144
  const current = await findWorkItem(id);
135
145
  if (current && !FINISHED_WORK_ITEM_STATUSES.has(current.status))
136
146
  return false;
@@ -186,6 +196,19 @@ export class WorkItemDispatchSubscriber {
186
196
  * double-fire on the same target.
187
197
  */
188
198
  dispatched = new Set();
199
+ /**
200
+ * Keys whose brief CONFIRMEDLY reached the agent: a direct hand-over took
201
+ * the key, a write went straight into the agent, or a dispatch notice was
202
+ * delivered from the agent's queue. Only these count for
203
+ * {@link isDelivered} — a write the terminal answered with `202 queued`
204
+ * (the agent was not active) is in {@link pendingQueued} instead, so the
205
+ * queue never drops the dispatcher's own waiting notice as stale
206
+ * (crewly#1015 follow-up re-review). {@link dispatched} still holds every
207
+ * key, so nothing is dispatched twice while a notice waits.
208
+ */
209
+ confirmed = new Set();
210
+ /** Keys whose dispatch notice is waiting on the agent's message queue (`202 queued`) */
211
+ pendingQueued = new Set();
189
212
  /** Pending direct-delivery grace timers, keyed like {@link dispatched} */
190
213
  graceTimers = new Map();
191
214
  /** Composite dedup key — workItem id alone is not enough (see above). */
@@ -424,6 +447,18 @@ export class WorkItemDispatchSubscriber {
424
447
  });
425
448
  return false;
426
449
  }
450
+ if (res?.data?.queued === true) {
451
+ // The agent is not active (stopped, starting): the notice waits on
452
+ // its queue. Dispatched (no second push meanwhile), not delivered.
453
+ this.pendingQueued.add(key);
454
+ this.logger.info('Dispatch notice queued for an agent that is not active yet', {
455
+ workItemId: workItem.id,
456
+ target: workItem.target,
457
+ });
458
+ return true;
459
+ }
460
+ this.confirmed.add(key);
461
+ this.pendingQueued.delete(key);
427
462
  this.logger.info('Dispatched WorkItem to target session', {
428
463
  workItemId: workItem.id,
429
464
  target: workItem.target,
@@ -466,8 +501,35 @@ export class WorkItemDispatchSubscriber {
466
501
  if (this.dispatched.has(key))
467
502
  return false;
468
503
  this.dispatched.add(key);
504
+ this.confirmed.add(key);
469
505
  return true;
470
506
  }
507
+ /**
508
+ * A dispatch notice for (WI, target) was delivered from the agent's
509
+ * message queue: the brief is in front of the agent now. A held brief for
510
+ * the same WorkItem flushed after it is then dropped as already
511
+ * dispatched (crewly#1015 follow-up).
512
+ *
513
+ * @param workItemId - WorkItem the notice announced
514
+ * @param target - Session it was delivered to
515
+ */
516
+ noteDeliveredFromQueue(workItemId, target) {
517
+ const key = this.dispatchKey(workItemId, target);
518
+ this.dispatched.add(key);
519
+ this.confirmed.add(key);
520
+ this.pendingQueued.delete(key);
521
+ }
522
+ /**
523
+ * Whether the dispatcher's notice for (WI, target) is waiting on the
524
+ * agent's queue (written while the agent was not active).
525
+ *
526
+ * @param workItemId - WorkItem id
527
+ * @param target - Session
528
+ * @returns True while it waits
529
+ */
530
+ isPendingQueued(workItemId, target) {
531
+ return this.pendingQueued.has(this.dispatchKey(workItemId, target));
532
+ }
471
533
  /**
472
534
  * Give back a key taken by {@link claimDirectDelivery} when the hand-over
473
535
  * failed, so the dispatcher's fallback (grace timer, reconciler, backfill)
@@ -477,17 +539,40 @@ export class WorkItemDispatchSubscriber {
477
539
  * @param target - Session it was meant for
478
540
  */
479
541
  releaseDirectDelivery(workItemId, target) {
480
- this.dispatched.delete(this.dispatchKey(workItemId, target));
542
+ const key = this.dispatchKey(workItemId, target);
543
+ this.dispatched.delete(key);
544
+ this.confirmed.delete(key);
481
545
  }
482
546
  /**
483
- * Whether a (WI, target) pair was already delivered in this process.
547
+ * Whether a (WI, target) brief CONFIRMEDLY reached the agent in this
548
+ * process: handed over directly, written straight into the agent, or
549
+ * delivered from its queue. A notice still waiting on the queue does not
550
+ * count (see {@link confirmed}).
484
551
  *
485
552
  * @param workItemId - WorkItem id
486
553
  * @param target - Session
487
- * @returns True when dispatched or handed over directly
554
+ * @returns True when confirmed delivered
488
555
  */
489
556
  isDelivered(workItemId, target) {
490
- return this.dispatched.has(this.dispatchKey(workItemId, target));
557
+ return this.confirmed.has(this.dispatchKey(workItemId, target));
558
+ }
559
+ /**
560
+ * Whether a dispatch notice announcing this WorkItem still waits on the
561
+ * agent's message queue (it may have been dropped: aged out, capacity).
562
+ *
563
+ * @param workItemId - WorkItem id
564
+ * @param target - Session
565
+ * @returns True when one is queued
566
+ */
567
+ noticeStillQueued(workItemId, target) {
568
+ try {
569
+ return SubAgentMessageQueue.getInstance()
570
+ .peek(target)
571
+ .some((m) => (dispatchNoticeWorkItemIds(m.data) ?? []).includes(workItemId));
572
+ }
573
+ catch {
574
+ return false;
575
+ }
491
576
  }
492
577
  /** Stop every pending direct-delivery grace timer (tests / shutdown). */
493
578
  stop() {
@@ -519,6 +604,17 @@ export class WorkItemDispatchSubscriber {
519
604
  if (!workItem.target)
520
605
  return false;
521
606
  const key = this.dispatchKey(workItem.id, workItem.target);
607
+ // Its notice still waits on the agent's queue: it goes out when the agent
608
+ // is active; a second one would brief it twice.
609
+ if (this.pendingQueued.has(key) && this.noticeStillQueued(workItem.id, workItem.target)) {
610
+ this.logger.info('Redispatch skipped — the notice is still waiting on the agent queue', {
611
+ workItemId: workItem.id,
612
+ target: workItem.target,
613
+ });
614
+ return false;
615
+ }
616
+ this.pendingQueued.delete(key);
617
+ this.confirmed.delete(key);
522
618
  this.dispatched.delete(key);
523
619
  const ok = await this.dispatchTo(workItem);
524
620
  traceHarness('harness.redelivery', {
@@ -554,8 +650,11 @@ export class WorkItemDispatchSubscriber {
554
650
  this.logger.info('Batch redispatch skipped — target is over its daily token cap', { target, count: batch.length });
555
651
  return false;
556
652
  }
557
- for (const wi of batch)
558
- this.dispatched.delete(this.dispatchKey(wi.id, target));
653
+ for (const wi of batch) {
654
+ const key = this.dispatchKey(wi.id, target);
655
+ this.dispatched.delete(key);
656
+ this.confirmed.delete(key);
657
+ }
559
658
  // No fresh-conversation prepare here: a batch is a reminder for work that
560
659
  // was already delivered to this agent, so its context is what the agent
561
660
  // needs; clearing would drop it. (A single-item reminder goes through
@@ -571,8 +670,17 @@ export class WorkItemDispatchSubscriber {
571
670
  this.logger.info('Batch redispatch held by the daily token cap — not delivered', { target, count: batch.length });
572
671
  return false;
573
672
  }
574
- for (const wi of batch)
575
- this.dispatched.add(this.dispatchKey(wi.id, target));
673
+ const queuedReminder = res?.data?.queued === true;
674
+ for (const wi of batch) {
675
+ const key = this.dispatchKey(wi.id, target);
676
+ this.dispatched.add(key);
677
+ if (queuedReminder)
678
+ this.pendingQueued.add(key);
679
+ else {
680
+ this.confirmed.add(key);
681
+ this.pendingQueued.delete(key);
682
+ }
683
+ }
576
684
  if (batch.some(isScheduledWorkItem))
577
685
  noteScheduledTurn(target);
578
686
  for (const wi of batch) {
@@ -1 +1 @@
1
- {"version":3,"file":"workitem-dispatch.subscriber.js","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/workitem-dispatch.subscriber.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workitem-dispatch.subscriber.js","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/workitem-dispatch.subscriber.ts"],"names":[],"mappings":"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"}
@@ -195,6 +195,12 @@ export interface OwnerDecision {
195
195
  chosenKey?: string;
196
196
  /** Free-text answer, when the owner replied with words that matched no option */
197
197
  answerText?: string;
198
+ /**
199
+ * The owner's whole reply when it chose an option in more words than the
200
+ * option itself ("go with Hold"): forwarded to the asker, so nothing the
201
+ * owner wrote beyond the choice is lost (specs/2026-10-03-one-responder-per-message.md §3).
202
+ */
203
+ ownerWords?: string;
198
204
  answeredBy?: string;
199
205
  answeredVia?: DecisionAnswerVia;
200
206
  resolvedAt?: string;
@@ -236,6 +242,7 @@ export interface DecisionButtonValue {
236
242
  export type DecisionChoice = {
237
243
  kind: 'option';
238
244
  key: string;
245
+ words?: string;
239
246
  } | {
240
247
  kind: 'remind';
241
248
  }
@@ -1 +1 @@
1
- {"version":3,"file":"decision.types.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/decision.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decision.types.d.ts","sourceRoot":"","sources":["../../../../../backend/src/types/decision.types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  {
2
- "commit": "e4f1f0cc377ed009fa1ee88e77acc8366918c85a",
3
- "builtAt": "2026-10-03T17:00:20.999Z"
2
+ "commit": "52d44be582079dee966ac1fe193cf74edbfeafe2",
3
+ "builtAt": "2026-10-03T18:25:15.791Z"
4
4
  }
@@ -1561,6 +1561,13 @@ export declare const SLACK_AGENT_DM_CONSTANTS: {
1561
1561
  * sentence about it stay together).
1562
1562
  */
1563
1563
  readonly ATTACH_FOLLOWS_REPLY_MS: number;
1564
+ /**
1565
+ * An unanswered DM thread older than this no longer attracts an answer
1566
+ * that names no thread: an orc answer to a new question landed under an
1567
+ * 18-hour-old one (steamfun-ops 2026-10-01, crewly#1015 §8). The answer
1568
+ * goes where the agent's current turn came from instead.
1569
+ */
1570
+ readonly OPEN_THREAD_MAX_AGE_MS: number;
1564
1571
  };
1565
1572
  /**
1566
1573
  * Stable per-thread keys for Slack conversations (2026-09-28).
@@ -1944,6 +1951,25 @@ export declare const SLACK_TEAM_CHANNEL_CONSTANTS: {
1944
1951
  readonly ROOM_UNANSWERED_FALLBACK_MS: number;
1945
1952
  /** The in-thread line when nobody could take an owner's room message. */
1946
1953
  readonly ROOM_UNANSWERED_NOTE: "No agent picked up this message (nobody in the room was awake to take it). Please @ an agent and send it again.";
1954
+ /**
1955
+ * How long routing an owner's recorded room message may take to REACH
1956
+ * dispatch before the route guard rescues it with the unanswered-message
1957
+ * fallback. Dispatch itself (sequential cold starts) is never timed.
1958
+ * crewly#1015 §7.
1959
+ */
1960
+ readonly ROUTE_STALL_MS: number;
1961
+ /** Env override for ROUTE_STALL_MS (ms; tests) */
1962
+ readonly ROUTE_STALL_ENV: "CREWLY_ROOM_ROUTE_STALL_MS";
1963
+ /**
1964
+ * Each step before dispatch (room presence, dispatch plan, seen reaction,
1965
+ * placeholders, roster, ticket intake, thread context) may take this long;
1966
+ * then routing goes on without it.
1967
+ */
1968
+ readonly ROUTE_STEP_TIMEOUT_MS: number;
1969
+ /** Env override for ROUTE_STEP_TIMEOUT_MS (ms; tests) */
1970
+ readonly ROUTE_STEP_TIMEOUT_ENV: "CREWLY_ROOM_ROUTE_STEP_TIMEOUT_MS";
1971
+ /** The in-thread line when routing an owner's room message got stuck and no agent here could take it. */
1972
+ readonly ROOM_ROUTE_STALLED_NOTE: "Crewly couldn't get this message to an agent (routing it got stuck). Please @ an agent and send it again.";
1947
1973
  /** How many recent huddle turns to scan for the room's last local speaker. */
1948
1974
  readonly ROOM_LAST_SPEAKER_SCAN: 50;
1949
1975
  /** Fallback icon when a member has no avatar */
@@ -2062,6 +2088,13 @@ export declare const ORC_STATUS_FORWARDING: {
2062
2088
  * swallows it (2026-09-30, #steamfun运维组: Avery's whole answer to the
2063
2089
  * owner went to the orc and never reached Slack).
2064
2090
  */
2091
+ /**
2092
+ * Any status-shaped opening — `[WAITING]`, `[PENDING]`, `[IN-PROGRESS]`,
2093
+ * an all-caps tag in brackets — from the orchestrator posting as an agent
2094
+ * is its own status report, not an answer to a person (crewly#1015
2095
+ * review: report-status takes free-form `--status`).
2096
+ */
2097
+ readonly STATUS_SHAPED: RegExp;
2065
2098
  readonly STATUS_MARKERS: RegExp;
2066
2099
  /**
2067
2100
  * How long after the owner @'d an agent in a Slack room that agent's
@@ -2110,6 +2143,66 @@ export declare const ORC_WAKE_CONSTANTS: {
2110
2143
  * Every owner message delivered to an agent here ends in an answer or in one
2111
2144
  * plain-words note saying who it is waiting on and why.
2112
2145
  */
2146
+ /**
2147
+ * Failed turns of the in-process Crewly Agent runtime (crewly#1015 §2,
2148
+ * specs/2026-10-03-harness-drop-gaps.md §2): one retry, then the owner /
2149
+ * orchestrator is told.
2150
+ */
2151
+ export declare const IN_PROCESS_TURN_FAILURE_CONSTANTS: {
2152
+ /** Wait before the one re-delivery of a message whose turn failed */
2153
+ readonly RETRY_DELAY_MS: number;
2154
+ /** Re-deliveries of one message before it is reported */
2155
+ readonly MAX_RETRIES: 1;
2156
+ /** How long a message's attempt count is remembered */
2157
+ readonly ATTEMPT_TTL_MS: number;
2158
+ /** Characters of the failed message quoted in a report */
2159
+ readonly PREVIEW_CHARS: 160;
2160
+ /** Characters of the error quoted in a report */
2161
+ readonly ERROR_CHARS: 160;
2162
+ };
2163
+ /**
2164
+ * Mirroring the orchestrator's answers in its own (dashboard) chat to an
2165
+ * owner who is not looking at it (crewly#1015 §11).
2166
+ */
2167
+ export declare const ORC_CHAT_OWNER_MIRROR_CONSTANTS: {
2168
+ /** At most one DM per conversation this often; later answers are batched into the next */
2169
+ readonly MIN_INTERVAL_MS: number;
2170
+ /**
2171
+ * A post on a system-event turn that belongs to the chat (a delegated
2172
+ * result, a promise follow-up whose origin is that chat) is mirrored when
2173
+ * the owner wrote in that chat within this window (follow-up H1).
2174
+ */
2175
+ readonly SYSTEM_TURN_OWNER_WINDOW_MS: number;
2176
+ /** At most this many system-turn mirrors per conversation per 24 h */
2177
+ readonly SYSTEM_TURN_DAILY_CAP: 3;
2178
+ /** Ids (WorkItems / requests / tickets) read from one system event */
2179
+ readonly SYSTEM_EVENT_MAX_IDS: 5;
2180
+ /** The same text in the same conversation is mirrored once in this window */
2181
+ readonly DEDUPE_WINDOW_MS: number;
2182
+ /** Conversations that already reach the owner on another messenger (id prefixes, lower-case) */
2183
+ readonly OTHER_MESSENGER_PREFIXES: readonly string[];
2184
+ /** chat-v2 owner-turn sources of other messengers */
2185
+ readonly OTHER_MESSENGER_SOURCES: readonly string[];
2186
+ };
2187
+ /**
2188
+ * Liveness monitor (crewly#1015 §12): a gap in the backend's life — the
2189
+ * computer asleep, the event loop stuck, the process stopped without a
2190
+ * clean shutdown — is told to the owner once it is back.
2191
+ */
2192
+ export declare const LIVENESS_MONITOR_CONSTANTS: {
2193
+ /** Record under CREWLY_HOME */
2194
+ readonly STORE_FILENAME: "liveness.json";
2195
+ /** How often the record is written */
2196
+ readonly TICK_MS: number;
2197
+ /** A gap longer than this is told to the owner */
2198
+ readonly GAP_ALERT_MS: number;
2199
+ /** A pending alert is retried each tick (Slack may come up late) for at most this long */
2200
+ readonly ALERT_RETRY_MAX_MS: number;
2201
+ /** At most one crash DM this often; crashes in between are merged into the next one with a count */
2202
+ readonly CRASH_MERGE_WINDOW_MS: number;
2203
+ /** Crashes kept waiting to be told (oldest dropped) */
2204
+ readonly CRASH_UNSENT_MAX: 50;
2205
+ };
2113
2206
  export declare const OWNER_MESSAGE_WATCHDOG_CONSTANTS: {
2114
2207
  /** T1: no answer and no working placeholder → re-deliver to the responsible agent */
2115
2208
  readonly NUDGE_AFTER_MS: number;
@@ -2127,6 +2220,16 @@ export declare const OWNER_MESSAGE_WATCHDOG_CONSTANTS: {
2127
2220
  readonly STALE_DROP_MS: number;
2128
2221
  /** A message parked on a sign-in (`login_wait`) is kept this long for re-delivery after the login */
2129
2222
  readonly LOGIN_WAIT_DROP_MS: number;
2223
+ /**
2224
+ * A message parked because its agent's turns keep failing (`failed_wait`,
2225
+ * crewly#1015 §2) is re-delivered after these waits (backing off), and
2226
+ * always when the agent's next turn succeeds; after the last one only a
2227
+ * successful turn re-delivers it. A failure for lack of credit / quota is
2228
+ * never retried on a timer: only a successful turn (credit restored, the
2229
+ * agent moved to another runtime, the owner acted) brings it back. Kept
2230
+ * for LOGIN_WAIT_DROP_MS.
2231
+ */
2232
+ readonly FAILED_RETRY_BACKOFF_MS: readonly number[];
2130
2233
  /** Cap on open entries (oldest dropped with a warning) */
2131
2234
  readonly MAX_ENTRIES: 500;
2132
2235
  /**
@@ -2161,6 +2264,8 @@ export declare const OWNER_MESSAGE_WATCHDOG_CONSTANTS: {
2161
2264
  readonly NOTE_SILENT_TEXT: "⏳ {name} got your message but hasn't replied in {waited} min; I've sent a reminder.";
2162
2265
  /** Shown in a note when a failed delivery left no error detail */
2163
2266
  readonly NOTE_UNKNOWN_DETAIL: "reason unknown";
2267
+ /** The agent took the message but its run failed (crewly#1015 §2) */
2268
+ readonly NOTE_TURN_FAILED_TEXT: "⚠️ {name} couldn't answer your message — its run failed ({detail}). Your message is kept and delivered again once {name} is working.";
2164
2269
  /** The agent hit a daily token cap (specs/2026-10-02-spend-cap.md) */
2165
2270
  readonly NOTE_SPEND_CAP_TEXT: "⏳ Still waiting on {name} — {name} hit its daily token cap ({cap}). Your message is kept and delivered when the cap resets at midnight or you boost it (reply `boost {who} by 10M today` or `unlimited today for {who}`).";
2166
2271
  };
@@ -3653,6 +3758,52 @@ export declare const SLACK_FILE_DOWNLOAD_CONSTANTS: {
3653
3758
  /** MIME types eligible for text extraction */
3654
3759
  readonly EXTRACTABLE_MIMES: readonly string[];
3655
3760
  };
3761
+ /**
3762
+ * One responder per owner message in Slack rooms
3763
+ * (specs/2026-10-03-one-responder-per-message.md).
3764
+ */
3765
+ export declare const ROOM_RESPONDER_CONSTANTS: {
3766
+ /** Longest the router waits for the decision path's outcome on a card-thread reply */
3767
+ readonly DECISION_WAIT_MS: 8000;
3768
+ /** Longest the router waits for the Slack thread read before choosing a thread owner */
3769
+ readonly THREAD_CONTEXT_WAIT_MS: 3000;
3770
+ /** Distinct Slack messages whose decision outcome is remembered (memo for the shared run) */
3771
+ readonly DECISION_MEMO_MAX: 200;
3772
+ /** Thread rows the reply gate reads (newest) */
3773
+ readonly GATE_THREAD_SCAN: 200;
3774
+ /** Characters of the existing answer shown when a reply is held */
3775
+ readonly GATE_EXCERPT_CHARS: 300;
3776
+ /** Pause before the one retry of a Slack thread read that failed */
3777
+ readonly THREAD_READ_RETRY_BACKOFF_MS: 400;
3778
+ /** Longest the one retry waits in all, a Slack rate limit's retry-after included */
3779
+ readonly THREAD_READ_RETRY_MAX_WAIT_MS: 2000;
3780
+ /**
3781
+ * A note-only watch (a machine that is not the room's watcher but cannot be
3782
+ * sure the watcher is live, or cannot tell who it is) waits this long, then
3783
+ * only tells the owner — it never hands the message to anyone.
3784
+ */
3785
+ readonly NOTE_ONLY_WATCH_MS: number;
3786
+ /**
3787
+ * With colleagues on other machines in the room, this machine's chat log
3788
+ * is trusted to name a thread's last speaker only when its latest agent
3789
+ * turn there is this recent (Cloud never forwards other machines' bot
3790
+ * posts, so an older log may have missed them).
3791
+ */
3792
+ readonly LOCAL_LOG_FRESH_MS: number;
3793
+ /** Huddle-row metadata: the responders the harness chose for an owner message (the reply gate reads it) */
3794
+ readonly CHOSEN_RESPONDERS_METADATA_KEY: "roomResponders";
3795
+ };
3796
+ /** The context-only queue: room messages an agent hears on its next turn instead of now. */
3797
+ export declare const ROOM_CONTEXT_CONSTANTS: {
3798
+ /** Entries kept per (agent, room); oldest dropped first */
3799
+ readonly MAX_ENTRIES: 6;
3800
+ /** Characters kept of each message */
3801
+ readonly PER_ENTRY_CHARS: 300;
3802
+ /** Entries older than this are dropped unread */
3803
+ readonly TTL_MS: number;
3804
+ /** (agent, room) queues kept at most */
3805
+ readonly MAX_QUEUES: 500;
3806
+ };
3656
3807
  /**
3657
3808
  * Message source identifiers for the queue processor.
3658
3809
  * Determines delivery strategy (timeouts, retry behavior).
@@ -5679,6 +5830,13 @@ export declare const OPEN_ITEMS_CONSTANTS: {
5679
5830
  readonly REPLY_LABEL: "Reply in thread";
5680
5831
  /** `WorkItem.metadata` key of a follow-up WorkItem */
5681
5832
  readonly FOLLOW_UP_METADATA_KEY: "openItemFollowUp";
5833
+ /**
5834
+ * `WorkItem.metadata` key naming the agent session that cancelled an item
5835
+ * through the cancel API (absent: the owner, or a caller with no session).
5836
+ * A promise whose follow-up another agent cancelled is told to the owner
5837
+ * (crewly#1015 §10).
5838
+ */
5839
+ readonly CANCELLED_BY_METADATA_KEY: "cancelledBy";
5682
5840
  /** The one line every agent prompt carries */
5683
5841
  readonly PROMPT_LINE: "If you promise the owner something or ask them a question, say it plainly; Crewly tracks it. Use `ask-owner` for real decisions.";
5684
5842
  /** Max characters of the quoted context a question card carries when its question points back at earlier text */