crewly 1.20.203 → 1.20.205

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 (316) hide show
  1. package/config/skills/_common/lib.sh +4 -3
  2. package/config/skills/agent/core/project-tickets/SKILL.md +13 -1
  3. package/config/skills/agent/core/project-tickets/execute.sh +20 -6
  4. package/config/skills/agent/core/project-tickets/execute.test.sh +8 -2
  5. package/config/skills/agent/core/reply/SKILL.md +1 -0
  6. package/config/skills/agent/core/reply/execute.sh +7 -1
  7. package/config/skills/agent/core/reply-channel/SKILL.md +4 -0
  8. package/config/skills/agent/core/reply-channel/execute.sh +12 -1
  9. package/dist/backend/backend/src/constants.d.ts +124 -0
  10. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  11. package/dist/backend/backend/src/constants.js +130 -0
  12. package/dist/backend/backend/src/constants.js.map +1 -1
  13. package/dist/backend/backend/src/controllers/chat/agent-reply.controller.d.ts.map +1 -1
  14. package/dist/backend/backend/src/controllers/chat/agent-reply.controller.js +1 -0
  15. package/dist/backend/backend/src/controllers/chat/agent-reply.controller.js.map +1 -1
  16. package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts.map +1 -1
  17. package/dist/backend/backend/src/controllers/chat/chat.controller.js +1 -0
  18. package/dist/backend/backend/src/controllers/chat/chat.controller.js.map +1 -1
  19. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.d.ts.map +1 -1
  20. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.js +50 -0
  21. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.js.map +1 -1
  22. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts +6 -0
  23. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts.map +1 -1
  24. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js +2 -1
  25. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js.map +1 -1
  26. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.d.ts +1 -1
  27. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.d.ts.map +1 -1
  28. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.js +9 -1
  29. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.js.map +1 -1
  30. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.routes.d.ts +1 -1
  31. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.routes.js +1 -1
  32. package/dist/backend/backend/src/controllers/settings/role.controller.d.ts.map +1 -1
  33. package/dist/backend/backend/src/controllers/settings/role.controller.js +21 -7
  34. package/dist/backend/backend/src/controllers/settings/role.controller.js.map +1 -1
  35. package/dist/backend/backend/src/controllers/settings/settings.controller.d.ts.map +1 -1
  36. package/dist/backend/backend/src/controllers/settings/settings.controller.js +26 -20
  37. package/dist/backend/backend/src/controllers/settings/settings.controller.js.map +1 -1
  38. package/dist/backend/backend/src/controllers/skill/skill.controller.d.ts +13 -0
  39. package/dist/backend/backend/src/controllers/skill/skill.controller.d.ts.map +1 -1
  40. package/dist/backend/backend/src/controllers/skill/skill.controller.js +21 -0
  41. package/dist/backend/backend/src/controllers/skill/skill.controller.js.map +1 -1
  42. package/dist/backend/backend/src/controllers/system/system-control.controller.d.ts +11 -1
  43. package/dist/backend/backend/src/controllers/system/system-control.controller.d.ts.map +1 -1
  44. package/dist/backend/backend/src/controllers/system/system-control.controller.js +36 -2
  45. package/dist/backend/backend/src/controllers/system/system-control.controller.js.map +1 -1
  46. package/dist/backend/backend/src/index.d.ts +9 -0
  47. package/dist/backend/backend/src/index.d.ts.map +1 -1
  48. package/dist/backend/backend/src/index.js +37 -1
  49. package/dist/backend/backend/src/index.js.map +1 -1
  50. package/dist/backend/backend/src/middleware/agent-origin.middleware.d.ts +3 -2
  51. package/dist/backend/backend/src/middleware/agent-origin.middleware.d.ts.map +1 -1
  52. package/dist/backend/backend/src/middleware/agent-origin.middleware.js +5 -3
  53. package/dist/backend/backend/src/middleware/agent-origin.middleware.js.map +1 -1
  54. package/dist/backend/backend/src/middleware/caller-identity.middleware.d.ts +36 -0
  55. package/dist/backend/backend/src/middleware/caller-identity.middleware.d.ts.map +1 -1
  56. package/dist/backend/backend/src/middleware/caller-identity.middleware.js +97 -1
  57. package/dist/backend/backend/src/middleware/caller-identity.middleware.js.map +1 -1
  58. package/dist/backend/backend/src/routes/modules/terminal.routes.d.ts +4 -0
  59. package/dist/backend/backend/src/routes/modules/terminal.routes.d.ts.map +1 -1
  60. package/dist/backend/backend/src/routes/modules/terminal.routes.js +19 -5
  61. package/dist/backend/backend/src/routes/modules/terminal.routes.js.map +1 -1
  62. package/dist/backend/backend/src/scripts/input-guard-classify.d.ts +44 -0
  63. package/dist/backend/backend/src/scripts/input-guard-classify.d.ts.map +1 -0
  64. package/dist/backend/backend/src/scripts/input-guard-classify.js +116 -0
  65. package/dist/backend/backend/src/scripts/input-guard-classify.js.map +1 -0
  66. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts +8 -0
  67. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts.map +1 -1
  68. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js +10 -0
  69. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js.map +1 -1
  70. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-runtime-registry.d.ts +8 -0
  71. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-runtime-registry.d.ts.map +1 -1
  72. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-runtime-registry.js +21 -0
  73. package/dist/backend/backend/src/services/agent/crewly-agent/in-process-runtime-registry.js.map +1 -1
  74. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  75. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +13 -27
  76. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  77. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +117 -0
  78. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
  79. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +165 -9
  80. package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
  81. package/dist/backend/backend/src/services/chat-v2/room-context-backlog.d.ts +93 -0
  82. package/dist/backend/backend/src/services/chat-v2/room-context-backlog.d.ts.map +1 -0
  83. package/dist/backend/backend/src/services/chat-v2/room-context-backlog.js +138 -0
  84. package/dist/backend/backend/src/services/chat-v2/room-context-backlog.js.map +1 -0
  85. package/dist/backend/backend/src/services/decisions/decision-card.d.ts.map +1 -1
  86. package/dist/backend/backend/src/services/decisions/decision-card.js +5 -1
  87. package/dist/backend/backend/src/services/decisions/decision-card.js.map +1 -1
  88. package/dist/backend/backend/src/services/decisions/decision.service.d.ts +26 -1
  89. package/dist/backend/backend/src/services/decisions/decision.service.d.ts.map +1 -1
  90. package/dist/backend/backend/src/services/decisions/decision.service.js +83 -5
  91. package/dist/backend/backend/src/services/decisions/decision.service.js.map +1 -1
  92. package/dist/backend/backend/src/services/messaging/forced-delivery.d.ts +75 -0
  93. package/dist/backend/backend/src/services/messaging/forced-delivery.d.ts.map +1 -0
  94. package/dist/backend/backend/src/services/messaging/forced-delivery.js +87 -0
  95. package/dist/backend/backend/src/services/messaging/forced-delivery.js.map +1 -0
  96. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.d.ts +21 -0
  97. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.d.ts.map +1 -1
  98. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.js +48 -3
  99. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.js.map +1 -1
  100. package/dist/backend/backend/src/services/monitoring/liveness-monitor.service.d.ts +27 -1
  101. package/dist/backend/backend/src/services/monitoring/liveness-monitor.service.d.ts.map +1 -1
  102. package/dist/backend/backend/src/services/monitoring/liveness-monitor.service.js +51 -2
  103. package/dist/backend/backend/src/services/monitoring/liveness-monitor.service.js.map +1 -1
  104. package/dist/backend/backend/src/services/orc/orc-chat-owner-mirror.d.ts +51 -4
  105. package/dist/backend/backend/src/services/orc/orc-chat-owner-mirror.d.ts.map +1 -1
  106. package/dist/backend/backend/src/services/orc/orc-chat-owner-mirror.js +83 -6
  107. package/dist/backend/backend/src/services/orc/orc-chat-owner-mirror.js.map +1 -1
  108. package/dist/backend/backend/src/services/orc/reply-destination.wiring.d.ts +16 -0
  109. package/dist/backend/backend/src/services/orc/reply-destination.wiring.d.ts.map +1 -1
  110. package/dist/backend/backend/src/services/orc/reply-destination.wiring.js +22 -2
  111. package/dist/backend/backend/src/services/orc/reply-destination.wiring.js.map +1 -1
  112. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-decision.d.ts +130 -4
  113. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-decision.d.ts.map +1 -1
  114. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-decision.js +115 -3
  115. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-decision.js.map +1 -1
  116. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-goal.d.ts +122 -0
  117. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-goal.d.ts.map +1 -0
  118. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-goal.js +274 -0
  119. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-goal.js.map +1 -0
  120. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-messages.d.ts +34 -2
  121. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-messages.d.ts.map +1 -1
  122. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-messages.js +59 -2
  123. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-messages.js.map +1 -1
  124. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-retro.js +1 -1
  125. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-retro.js.map +1 -1
  126. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-stats.d.ts +6 -1
  127. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-stats.d.ts.map +1 -1
  128. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-stats.js +9 -1
  129. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-stats.js.map +1 -1
  130. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-trace.d.ts +13 -3
  131. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-trace.d.ts.map +1 -1
  132. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-trace.js +28 -2
  133. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot-trace.js.map +1 -1
  134. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot.service.d.ts +92 -7
  135. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot.service.d.ts.map +1 -1
  136. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot.service.js +316 -41
  137. package/dist/backend/backend/src/services/project-tickets/ticket-autopilot.service.js.map +1 -1
  138. package/dist/backend/backend/src/services/restart/in-flight-turn-tracker.service.d.ts +9 -0
  139. package/dist/backend/backend/src/services/restart/in-flight-turn-tracker.service.d.ts.map +1 -1
  140. package/dist/backend/backend/src/services/restart/in-flight-turn-tracker.service.js +11 -0
  141. package/dist/backend/backend/src/services/restart/in-flight-turn-tracker.service.js.map +1 -1
  142. package/dist/backend/backend/src/services/settings/api-key-access.service.d.ts +126 -0
  143. package/dist/backend/backend/src/services/settings/api-key-access.service.d.ts.map +1 -0
  144. package/dist/backend/backend/src/services/settings/api-key-access.service.js +223 -0
  145. package/dist/backend/backend/src/services/settings/api-key-access.service.js.map +1 -0
  146. package/dist/backend/backend/src/services/skill/skill-executor.service.d.ts.map +1 -1
  147. package/dist/backend/backend/src/services/skill/skill-executor.service.js +17 -0
  148. package/dist/backend/backend/src/services/skill/skill-executor.service.js.map +1 -1
  149. package/dist/backend/backend/src/services/slack/room-responder.d.ts +144 -0
  150. package/dist/backend/backend/src/services/slack/room-responder.d.ts.map +1 -0
  151. package/dist/backend/backend/src/services/slack/room-responder.js +236 -0
  152. package/dist/backend/backend/src/services/slack/room-responder.js.map +1 -0
  153. package/dist/backend/backend/src/services/slack/slack-initializer.d.ts.map +1 -1
  154. package/dist/backend/backend/src/services/slack/slack-initializer.js +36 -2
  155. package/dist/backend/backend/src/services/slack/slack-initializer.js.map +1 -1
  156. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  157. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +29 -8
  158. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  159. package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts +107 -2
  160. package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
  161. package/dist/backend/backend/src/services/slack/slack-team-channel.service.js +403 -13
  162. package/dist/backend/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
  163. package/dist/backend/backend/src/services/slack/slack-thread-context.service.d.ts +27 -0
  164. package/dist/backend/backend/src/services/slack/slack-thread-context.service.d.ts.map +1 -1
  165. package/dist/backend/backend/src/services/slack/slack-thread-context.service.js +52 -0
  166. package/dist/backend/backend/src/services/slack/slack-thread-context.service.js.map +1 -1
  167. package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.d.ts +9 -0
  168. package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.d.ts.map +1 -1
  169. package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.js +20 -0
  170. package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.js.map +1 -1
  171. package/dist/backend/backend/src/services/system/auto-update.service.d.ts +24 -0
  172. package/dist/backend/backend/src/services/system/auto-update.service.d.ts.map +1 -1
  173. package/dist/backend/backend/src/services/system/auto-update.service.js +78 -8
  174. package/dist/backend/backend/src/services/system/auto-update.service.js.map +1 -1
  175. package/dist/backend/backend/src/services/system/auto-update.utils.d.ts +1 -1
  176. package/dist/backend/backend/src/services/system/auto-update.utils.d.ts.map +1 -1
  177. package/dist/backend/backend/src/services/system/auto-update.utils.js.map +1 -1
  178. package/dist/backend/backend/src/services/system/input-guard-release-check.d.ts +162 -0
  179. package/dist/backend/backend/src/services/system/input-guard-release-check.d.ts.map +1 -0
  180. package/dist/backend/backend/src/services/system/input-guard-release-check.js +264 -0
  181. package/dist/backend/backend/src/services/system/input-guard-release-check.js.map +1 -0
  182. package/dist/backend/backend/src/services/system/system-control.service.d.ts +36 -0
  183. package/dist/backend/backend/src/services/system/system-control.service.d.ts.map +1 -1
  184. package/dist/backend/backend/src/services/system/system-control.service.js +109 -10
  185. package/dist/backend/backend/src/services/system/system-control.service.js.map +1 -1
  186. package/dist/backend/backend/src/services/v3/ticket-channel-hooks.d.ts +13 -1
  187. package/dist/backend/backend/src/services/v3/ticket-channel-hooks.d.ts.map +1 -1
  188. package/dist/backend/backend/src/services/v3/ticket-channel-hooks.js +36 -3
  189. package/dist/backend/backend/src/services/v3/ticket-channel-hooks.js.map +1 -1
  190. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts +54 -3
  191. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts.map +1 -1
  192. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js +117 -9
  193. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js.map +1 -1
  194. package/dist/backend/backend/src/types/decision.types.d.ts +7 -0
  195. package/dist/backend/backend/src/types/decision.types.d.ts.map +1 -1
  196. package/dist/backend/backend/src/types/skill.types.d.ts +16 -0
  197. package/dist/backend/backend/src/types/skill.types.d.ts.map +1 -1
  198. package/dist/backend/backend/src/types/skill.types.js.map +1 -1
  199. package/dist/backend/backend/src/types/ticket-autopilot.types.d.ts +21 -0
  200. package/dist/backend/backend/src/types/ticket-autopilot.types.d.ts.map +1 -1
  201. package/dist/backend/backend/src/types/ticket-autopilot.types.js +48 -0
  202. package/dist/backend/backend/src/types/ticket-autopilot.types.js.map +1 -1
  203. package/dist/backend/backend/src/types/v2/work-item.types.d.ts +1 -1
  204. package/dist/backend/backend/src/types/v2/work-item.types.d.ts.map +1 -1
  205. package/dist/backend/backend/src/types/v2/work-item.types.js +1 -0
  206. package/dist/backend/backend/src/types/v2/work-item.types.js.map +1 -1
  207. package/dist/backend/build-info.json +2 -2
  208. package/dist/cli/backend/src/constants.d.ts +124 -0
  209. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  210. package/dist/cli/backend/src/constants.js +130 -0
  211. package/dist/cli/backend/src/constants.js.map +1 -1
  212. package/dist/cli/backend/src/scripts/input-guard-classify.d.ts +44 -0
  213. package/dist/cli/backend/src/scripts/input-guard-classify.d.ts.map +1 -0
  214. package/dist/cli/backend/src/scripts/input-guard-classify.js +116 -0
  215. package/dist/cli/backend/src/scripts/input-guard-classify.js.map +1 -0
  216. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts +8 -0
  217. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts.map +1 -1
  218. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js +10 -0
  219. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js.map +1 -1
  220. package/dist/cli/backend/src/services/agent/crewly-agent/in-process-runtime-registry.d.ts +8 -0
  221. package/dist/cli/backend/src/services/agent/crewly-agent/in-process-runtime-registry.d.ts.map +1 -1
  222. package/dist/cli/backend/src/services/agent/crewly-agent/in-process-runtime-registry.js +21 -0
  223. package/dist/cli/backend/src/services/agent/crewly-agent/in-process-runtime-registry.js.map +1 -1
  224. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  225. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.js +13 -27
  226. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  227. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +117 -0
  228. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
  229. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +165 -9
  230. package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
  231. package/dist/cli/backend/src/services/chat-v2/room-context-backlog.d.ts +93 -0
  232. package/dist/cli/backend/src/services/chat-v2/room-context-backlog.d.ts.map +1 -0
  233. package/dist/cli/backend/src/services/chat-v2/room-context-backlog.js +138 -0
  234. package/dist/cli/backend/src/services/chat-v2/room-context-backlog.js.map +1 -0
  235. package/dist/cli/backend/src/services/decisions/decision-card.d.ts.map +1 -1
  236. package/dist/cli/backend/src/services/decisions/decision-card.js +5 -1
  237. package/dist/cli/backend/src/services/decisions/decision-card.js.map +1 -1
  238. package/dist/cli/backend/src/services/decisions/decision.service.d.ts +26 -1
  239. package/dist/cli/backend/src/services/decisions/decision.service.d.ts.map +1 -1
  240. package/dist/cli/backend/src/services/decisions/decision.service.js +83 -5
  241. package/dist/cli/backend/src/services/decisions/decision.service.js.map +1 -1
  242. package/dist/cli/backend/src/services/messaging/drain-queued-delivery.d.ts +59 -0
  243. package/dist/cli/backend/src/services/messaging/drain-queued-delivery.d.ts.map +1 -0
  244. package/dist/cli/backend/src/services/messaging/drain-queued-delivery.js +70 -0
  245. package/dist/cli/backend/src/services/messaging/drain-queued-delivery.js.map +1 -0
  246. package/dist/cli/backend/src/services/messaging/forced-delivery.d.ts +75 -0
  247. package/dist/cli/backend/src/services/messaging/forced-delivery.d.ts.map +1 -0
  248. package/dist/cli/backend/src/services/messaging/forced-delivery.js +87 -0
  249. package/dist/cli/backend/src/services/messaging/forced-delivery.js.map +1 -0
  250. package/dist/cli/backend/src/services/messaging/spend-capped-delivery.d.ts +54 -0
  251. package/dist/cli/backend/src/services/messaging/spend-capped-delivery.d.ts.map +1 -0
  252. package/dist/cli/backend/src/services/messaging/spend-capped-delivery.js +65 -0
  253. package/dist/cli/backend/src/services/messaging/spend-capped-delivery.js.map +1 -0
  254. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.d.ts +21 -0
  255. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.d.ts.map +1 -1
  256. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.js +48 -3
  257. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.js.map +1 -1
  258. package/dist/cli/backend/src/services/restart/in-flight-turn-tracker.service.d.ts +9 -0
  259. package/dist/cli/backend/src/services/restart/in-flight-turn-tracker.service.d.ts.map +1 -1
  260. package/dist/cli/backend/src/services/restart/in-flight-turn-tracker.service.js +11 -0
  261. package/dist/cli/backend/src/services/restart/in-flight-turn-tracker.service.js.map +1 -1
  262. package/dist/cli/backend/src/services/skill/skill-executor.service.d.ts.map +1 -1
  263. package/dist/cli/backend/src/services/skill/skill-executor.service.js +17 -0
  264. package/dist/cli/backend/src/services/skill/skill-executor.service.js.map +1 -1
  265. package/dist/cli/backend/src/services/slack/room-responder.d.ts +144 -0
  266. package/dist/cli/backend/src/services/slack/room-responder.d.ts.map +1 -0
  267. package/dist/cli/backend/src/services/slack/room-responder.js +236 -0
  268. package/dist/cli/backend/src/services/slack/room-responder.js.map +1 -0
  269. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  270. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.js +29 -8
  271. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  272. package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts +107 -2
  273. package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
  274. package/dist/cli/backend/src/services/slack/slack-team-channel.service.js +403 -13
  275. package/dist/cli/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
  276. package/dist/cli/backend/src/services/slack/slack-thread-context.service.d.ts +27 -0
  277. package/dist/cli/backend/src/services/slack/slack-thread-context.service.d.ts.map +1 -1
  278. package/dist/cli/backend/src/services/slack/slack-thread-context.service.js +52 -0
  279. package/dist/cli/backend/src/services/slack/slack-thread-context.service.js.map +1 -1
  280. package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.d.ts +9 -0
  281. package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.d.ts.map +1 -1
  282. package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.js +20 -0
  283. package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.js.map +1 -1
  284. package/dist/cli/backend/src/services/system/auto-update.utils.d.ts +1 -1
  285. package/dist/cli/backend/src/services/system/auto-update.utils.d.ts.map +1 -1
  286. package/dist/cli/backend/src/services/system/auto-update.utils.js.map +1 -1
  287. package/dist/cli/backend/src/services/system/input-guard-release-check.d.ts +162 -0
  288. package/dist/cli/backend/src/services/system/input-guard-release-check.d.ts.map +1 -0
  289. package/dist/cli/backend/src/services/system/input-guard-release-check.js +264 -0
  290. package/dist/cli/backend/src/services/system/input-guard-release-check.js.map +1 -0
  291. package/dist/cli/backend/src/services/v3/ticket-channel-hooks.d.ts +13 -1
  292. package/dist/cli/backend/src/services/v3/ticket-channel-hooks.d.ts.map +1 -1
  293. package/dist/cli/backend/src/services/v3/ticket-channel-hooks.js +36 -3
  294. package/dist/cli/backend/src/services/v3/ticket-channel-hooks.js.map +1 -1
  295. package/dist/cli/backend/src/types/decision.types.d.ts +7 -0
  296. package/dist/cli/backend/src/types/decision.types.d.ts.map +1 -1
  297. package/dist/cli/backend/src/types/skill.types.d.ts +16 -0
  298. package/dist/cli/backend/src/types/skill.types.d.ts.map +1 -1
  299. package/dist/cli/backend/src/types/skill.types.js.map +1 -1
  300. package/dist/cli/backend/src/types/ticket-autopilot.types.d.ts +21 -0
  301. package/dist/cli/backend/src/types/ticket-autopilot.types.d.ts.map +1 -1
  302. package/dist/cli/backend/src/types/ticket-autopilot.types.js +48 -0
  303. package/dist/cli/backend/src/types/ticket-autopilot.types.js.map +1 -1
  304. package/dist/cli/backend/src/types/v2/work-item.types.d.ts +1 -1
  305. package/dist/cli/backend/src/types/v2/work-item.types.d.ts.map +1 -1
  306. package/dist/cli/backend/src/types/v2/work-item.types.js +1 -0
  307. package/dist/cli/backend/src/types/v2/work-item.types.js.map +1 -1
  308. package/dist/cli/cli/src/commands/doctor.d.ts +20 -0
  309. package/dist/cli/cli/src/commands/doctor.d.ts.map +1 -1
  310. package/dist/cli/cli/src/commands/doctor.js +49 -0
  311. package/dist/cli/cli/src/commands/doctor.js.map +1 -1
  312. package/dist/cli/cli/src/index.js +9 -2
  313. package/dist/cli/cli/src/index.js.map +1 -1
  314. package/frontend/dist/assets/{index-63a33dbf.js → index-f64b333a.js} +258 -258
  315. package/frontend/dist/index.html +1 -1
  316. package/package.json +2 -1
@@ -59,7 +59,7 @@ async function deliverReplyUntraced(input, deps) {
59
59
  return { ok: false, destination: dest, error: notDelivered(dest.reason, dest.fix) };
60
60
  }
61
61
  let result = await attempt(input, dest, prompt, d);
62
- if (result.ok)
62
+ if (result.ok || ('held' in result && result.held))
63
63
  return result;
64
64
  if (dest.source === 'hint') {
65
65
  logger.warn('The conversation the agent named did not take its message — resolving without its ids', { session: input.session, error: result.error });
@@ -129,6 +129,18 @@ async function attempt(input, dest, prompt, d) {
129
129
  const deliversTicket = ticket ? { [REPLY_ROUTING_CONSTANTS.DELIVERS_TICKET_METADATA_KEY]: ticket } : undefined;
130
130
  const answeredReference = dest.source === 'prompt' || dest.source === 'ticket' || dest.source === 'decision' || dest.source === 'work-item' || dest.source === 'message';
131
131
  if (dest.kind === 'conversation') {
132
+ if (input.interim !== true && input.addsNew !== true && dest.thread && d.priorRoomAnswer) {
133
+ const prior = await d.priorRoomAnswer({ conversationId: dest.conversationId, thread: dest.thread, agentSession: input.session }).catch(() => null);
134
+ if (prior) {
135
+ const { heldReplyMessage } = await import('../slack/room-responder.js');
136
+ logger.info('Agent reply held: a colleague already answered the owner in this room thread', {
137
+ session: input.session,
138
+ conversationId: dest.conversationId,
139
+ answeredBy: prior.by,
140
+ });
141
+ return { ok: false, destination: dest, error: heldReplyMessage(prior), held: true };
142
+ }
143
+ }
132
144
  const messageId = await d.deliverToConversation({
133
145
  conversationId: dest.conversationId,
134
146
  ...(dest.thread ? { thread: dest.thread } : {}),
@@ -373,6 +385,14 @@ export async function defaultReplyDeliveryDeps() {
373
385
  now: () => Date.now(),
374
386
  };
375
387
  const { deliverAgentReplyToConversation } = await import('../../controllers/chat/chat.controller.js');
376
- return { resolver, deliverToConversation: deliverAgentReplyToConversation, workDestination: defaultWorkDestinationDeps };
388
+ return {
389
+ resolver,
390
+ deliverToConversation: deliverAgentReplyToConversation,
391
+ workDestination: defaultWorkDestinationDeps,
392
+ priorRoomAnswer: async (input) => {
393
+ const { getSlackTeamChannelService } = await import('../slack/slack-team-channel.service.js');
394
+ return (await getSlackTeamChannelService()?.heldReplyFor(input)) ?? null;
395
+ },
396
+ };
377
397
  }
378
398
  //# sourceMappingURL=reply-destination.wiring.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reply-destination.wiring.js","sourceRoot":"","sources":["../../../../../../backend/src/services/orc/reply-destination.wiring.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reply-destination.wiring.js","sourceRoot":"","sources":["../../../../../../backend/src/services/orc/reply-destination.wiring.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,8 @@
6
6
  * pool, a filesystem or timers:
7
7
  * - which tickets need the driver's triage ({@link selectTriageCandidates});
8
8
  * - whether to wake the driver now ({@link decideTriage});
9
+ * - whether to wake the driver to plan toward the goal when nothing is left
10
+ * to triage ({@link decideReplan}, specs/2026-10-04-autopilot-goal-replan.md);
9
11
  * - whether to send the owner the evening digest ({@link decideDigest}).
10
12
  *
11
13
  * @module services/project-tickets/ticket-autopilot-decision
@@ -61,6 +63,13 @@ export interface TriageDecisionInput {
61
63
  candidateCount: number;
62
64
  /** A triage WorkItem of this project is still live */
63
65
  liveTriage: boolean;
66
+ /**
67
+ * When the project's live goal replan was created (epoch ms), absent when
68
+ * none is live. It holds triage while the driver is opening tickets, but
69
+ * yields once there are tickets to triage and it is older than
70
+ * {@link TICKET_AUTOPILOT_CONSTANTS.REPLAN_YIELD_AFTER_MS}.
71
+ */
72
+ liveReplanAt?: number;
64
73
  /** When the last triage item was created (epoch ms) */
65
74
  lastTriageAt?: number;
66
75
  /** A member of the project's teams (or the driver) is idle */
@@ -71,7 +80,7 @@ export interface TriageDecisionInput {
71
80
  dailyBudgetTokens: number;
72
81
  }
73
82
  /** Why the driver is not woken. */
74
- export type TriageSkipReason = 'off' | 'no_driver' | 'budget_reached' | 'triage_in_flight' | 'nothing_to_triage' | 'nobody_idle' | 'too_soon';
83
+ export type TriageSkipReason = 'off' | 'no_driver' | 'budget_reached' | 'triage_in_flight' | 'replan_in_flight' | 'nothing_to_triage' | 'nobody_idle' | 'too_soon';
75
84
  /** Outcome of {@link decideTriage}. */
76
85
  export type TriageDecision = {
77
86
  action: 'triage';
@@ -160,15 +169,132 @@ export declare function hasPossibleTaker(ticket: Pick<ProjectTicket, 'team'>, te
160
169
  export declare function selectTriageCandidates(input: SelectTriageInput): TriageSelection;
161
170
  /**
162
171
  * Whether to wake the driver with a triage item now. Checked in order:
163
- * switch off → no driver → budget reached → a triage already live → nothing
164
- * to triage → nobody idle → too soon since the last one (30 min on the
165
- * periodic tick, {@link TICKET_AUTOPILOT_CONSTANTS.IDLE_TRIGGER_MIN_INTERVAL_MS}
172
+ * switch off → no driver → budget reached → a triage already live → a goal
173
+ * replan live (the driver is opening tickets in that turn; it yields after
174
+ * an hour once there are tickets to triage) → nothing to triage → nobody
175
+ * idle → too soon since the last one (30 min on the periodic tick, {@link TICKET_AUTOPILOT_CONSTANTS.IDLE_TRIGGER_MIN_INTERVAL_MS}
166
176
  * when a member just went idle with nothing ready).
167
177
  *
168
178
  * @param input - State of the project
169
179
  * @returns `triage`, or `skip` with the reason
170
180
  */
171
181
  export declare function decideTriage(input: TriageDecisionInput): TriageDecision;
182
+ /** Inputs of {@link decideReplan}. */
183
+ export interface ReplanDecisionInput {
184
+ enabled: boolean;
185
+ /** Resolved driver session, or null when the project has no lead */
186
+ driver: string | null;
187
+ /**
188
+ * The project has an active goal (goals log or an active project OKR).
189
+ * Checked last: the service reads the goal only after every other gate passed.
190
+ */
191
+ hasGoal: boolean;
192
+ /** Backing off after replans that opened no tickets (see {@link replanBackoffDays}) */
193
+ backedOff: boolean;
194
+ /** Replans allowed per local day (the `replansPerDay` setting; 0 = off) */
195
+ maxReplansPerDay: number;
196
+ /** Replans already created today (local day) */
197
+ replansToday: number;
198
+ /** Tokens used today by the project's team agents */
199
+ usedTodayTokens: number;
200
+ /** Daily budget in tokens (boosts included); Infinity = unlimited today */
201
+ dailyBudgetTokens: number;
202
+ /** A triage WorkItem of this project is still live */
203
+ liveTriage: boolean;
204
+ /** A replan WorkItem of this project is still live */
205
+ liveReplan: boolean;
206
+ /** Tickets that need triage (after de-duplication) */
207
+ candidateCount: number;
208
+ /** A member of the project's teams is idle */
209
+ anyoneIdle: boolean;
210
+ /** An idle member holds fewer in-progress tickets than the per-member cap */
211
+ idleWithRoom: boolean;
212
+ }
213
+ /** Why the driver is not woken to replan. */
214
+ export type ReplanSkipReason = 'off' | 'no_driver' | 'no_goal' | 'replan_off' | 'budget_reached' | 'triage_in_flight' | 'replan_in_flight' | 'tickets_to_triage' | 'nobody_idle' | 'at_capacity' | 'replanned_today' | 'backed_off';
215
+ /** Outcome of {@link decideReplan}. */
216
+ export type ReplanDecision = {
217
+ action: 'replan';
218
+ } | {
219
+ action: 'skip';
220
+ reason: ReplanSkipReason;
221
+ };
222
+ /**
223
+ * Whether to wake the driver with a goal replan now: the project has a goal
224
+ * but nothing is left to triage, so nobody would otherwise plan the next
225
+ * step (specs/2026-10-04-autopilot-goal-replan.md). Checked in order,
226
+ * cheapest first: switch off → no driver → replans set to 0 → budget
227
+ * reached → a triage live → a replan live → tickets to triage → nobody idle
228
+ * → every idle member at the in-progress cap → today's replans used up →
229
+ * backing off → no goal (the only gate that reads files).
230
+ *
231
+ * The autopilot only wakes the driver; the driver opens the tickets. It never
232
+ * makes a ticket ready or starts work.
233
+ *
234
+ * @param input - State of the project
235
+ * @returns `replan`, or `skip` with the reason
236
+ */
237
+ export declare function decideReplan(input: ReplanDecisionInput): ReplanDecision;
238
+ /**
239
+ * Days skipped after the n-th replan in a row that opened no tickets:
240
+ * 2, 4, then 7 (doubling, capped at REPLAN_BACKOFF_MAX_DAYS).
241
+ *
242
+ * @param streak - Empty replans in a row (≥ 1)
243
+ * @returns Days to skip after the replan's day
244
+ */
245
+ export declare function replanBackoffDays(streak: number): number;
246
+ /** The replan backoff as the autopilot remembers it. */
247
+ export interface ReplanBackoff {
248
+ /** Empty replans in a row */
249
+ streak: number;
250
+ /** When it started (epoch ms): goal changes and tickets created after this lift it */
251
+ since: number;
252
+ /** First local day a replan may run again (YYYY-MM-DD) */
253
+ resumeDay: string;
254
+ }
255
+ /**
256
+ * The backoff after a finished replan: none when it opened a ticket (any
257
+ * ticket created since the replan was queued), else one step longer.
258
+ *
259
+ * @param input - The replan, the tickets, the previous backoff, the clock
260
+ * @returns The new backoff, or null (no backoff)
261
+ */
262
+ export declare function nextReplanBackoff(input: {
263
+ /** When the replan was queued (epoch ms) */
264
+ replanAt: number;
265
+ /** Its local day */
266
+ replanDay: string;
267
+ tickets: Array<Pick<ProjectTicket, 'createdAt'>>;
268
+ previous?: ReplanBackoff | null;
269
+ now: number;
270
+ }): ReplanBackoff | null;
271
+ /**
272
+ * Where a stored backoff stands today:
273
+ * - `holds` — skip replans today;
274
+ * - `lifted` — a ticket was created, or the goal / an OKR changed, after it
275
+ * started: drop it and its streak;
276
+ * - `elapsed` — its days are over: replans may run again, but the streak is
277
+ * kept so the next empty replan backs off longer;
278
+ * - `none` — no backoff.
279
+ *
280
+ * @param backoff - The stored backoff
281
+ * @param input - Today, the tickets, when the goal last changed
282
+ * @returns State
283
+ */
284
+ export declare function replanBackoffState(backoff: ReplanBackoff | null | undefined, input: {
285
+ today: string;
286
+ tickets: Array<Pick<ProjectTicket, 'createdAt'>>;
287
+ goalChangedAt?: number | null;
288
+ }): 'holds' | 'lifted' | 'elapsed' | 'none';
289
+ /**
290
+ * Tickets closed (done or cancelled) since a moment, newest first.
291
+ *
292
+ * @param tickets - Tickets of a project
293
+ * @param sinceMs - Lower bound (epoch ms) on the ticket's `updatedAt`
294
+ * @param max - Most tickets returned
295
+ * @returns Closed tickets
296
+ */
297
+ export declare function closedTicketsSince(tickets: ProjectTicket[], sinceMs: number, max: number): ProjectTicket[];
172
298
  /** Inputs of {@link decideDigest}. */
173
299
  export interface DigestDecisionInput {
174
300
  now: Date;
@@ -1 +1 @@
1
- {"version":3,"file":"ticket-autopilot-decision.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/project-tickets/ticket-autopilot-decision.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ticket-autopilot-decision.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/project-tickets/ticket-autopilot-decision.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,8 @@
6
6
  * pool, a filesystem or timers:
7
7
  * - which tickets need the driver's triage ({@link selectTriageCandidates});
8
8
  * - whether to wake the driver now ({@link decideTriage});
9
+ * - whether to wake the driver to plan toward the goal when nothing is left
10
+ * to triage ({@link decideReplan}, specs/2026-10-04-autopilot-goal-replan.md);
9
11
  * - whether to send the owner the evening digest ({@link decideDigest}).
10
12
  *
11
13
  * @module services/project-tickets/ticket-autopilot-decision
@@ -174,9 +176,10 @@ export function selectTriageCandidates(input) {
174
176
  }
175
177
  /**
176
178
  * Whether to wake the driver with a triage item now. Checked in order:
177
- * switch off → no driver → budget reached → a triage already live → nothing
178
- * to triage → nobody idle → too soon since the last one (30 min on the
179
- * periodic tick, {@link TICKET_AUTOPILOT_CONSTANTS.IDLE_TRIGGER_MIN_INTERVAL_MS}
179
+ * switch off → no driver → budget reached → a triage already live → a goal
180
+ * replan live (the driver is opening tickets in that turn; it yields after
181
+ * an hour once there are tickets to triage) → nothing to triage → nobody
182
+ * idle → too soon since the last one (30 min on the periodic tick, {@link TICKET_AUTOPILOT_CONSTANTS.IDLE_TRIGGER_MIN_INTERVAL_MS}
180
183
  * when a member just went idle with nothing ready).
181
184
  *
182
185
  * @param input - State of the project
@@ -191,6 +194,10 @@ export function decideTriage(input) {
191
194
  return { action: 'skip', reason: 'budget_reached' };
192
195
  if (input.liveTriage)
193
196
  return { action: 'skip', reason: 'triage_in_flight' };
197
+ if (input.liveReplanAt !== undefined &&
198
+ (input.candidateCount === 0 || input.now - input.liveReplanAt < TICKET_AUTOPILOT_CONSTANTS.REPLAN_YIELD_AFTER_MS)) {
199
+ return { action: 'skip', reason: 'replan_in_flight' };
200
+ }
194
201
  if (input.candidateCount === 0)
195
202
  return { action: 'skip', reason: 'nothing_to_triage' };
196
203
  if (!input.anyoneIdle)
@@ -200,6 +207,111 @@ export function decideTriage(input) {
200
207
  return { action: 'skip', reason: 'too_soon' };
201
208
  return { action: 'triage' };
202
209
  }
210
+ /**
211
+ * Whether to wake the driver with a goal replan now: the project has a goal
212
+ * but nothing is left to triage, so nobody would otherwise plan the next
213
+ * step (specs/2026-10-04-autopilot-goal-replan.md). Checked in order,
214
+ * cheapest first: switch off → no driver → replans set to 0 → budget
215
+ * reached → a triage live → a replan live → tickets to triage → nobody idle
216
+ * → every idle member at the in-progress cap → today's replans used up →
217
+ * backing off → no goal (the only gate that reads files).
218
+ *
219
+ * The autopilot only wakes the driver; the driver opens the tickets. It never
220
+ * makes a ticket ready or starts work.
221
+ *
222
+ * @param input - State of the project
223
+ * @returns `replan`, or `skip` with the reason
224
+ */
225
+ export function decideReplan(input) {
226
+ if (!input.enabled)
227
+ return { action: 'skip', reason: 'off' };
228
+ if (!input.driver)
229
+ return { action: 'skip', reason: 'no_driver' };
230
+ if (!(input.maxReplansPerDay > 0))
231
+ return { action: 'skip', reason: 'replan_off' };
232
+ if (input.usedTodayTokens >= input.dailyBudgetTokens)
233
+ return { action: 'skip', reason: 'budget_reached' };
234
+ if (input.liveTriage)
235
+ return { action: 'skip', reason: 'triage_in_flight' };
236
+ if (input.liveReplan)
237
+ return { action: 'skip', reason: 'replan_in_flight' };
238
+ if (input.candidateCount > 0)
239
+ return { action: 'skip', reason: 'tickets_to_triage' };
240
+ if (!input.anyoneIdle)
241
+ return { action: 'skip', reason: 'nobody_idle' };
242
+ if (!input.idleWithRoom)
243
+ return { action: 'skip', reason: 'at_capacity' };
244
+ if (input.replansToday >= input.maxReplansPerDay)
245
+ return { action: 'skip', reason: 'replanned_today' };
246
+ if (input.backedOff)
247
+ return { action: 'skip', reason: 'backed_off' };
248
+ if (!input.hasGoal)
249
+ return { action: 'skip', reason: 'no_goal' };
250
+ return { action: 'replan' };
251
+ }
252
+ /**
253
+ * Days skipped after the n-th replan in a row that opened no tickets:
254
+ * 2, 4, then 7 (doubling, capped at REPLAN_BACKOFF_MAX_DAYS).
255
+ *
256
+ * @param streak - Empty replans in a row (≥ 1)
257
+ * @returns Days to skip after the replan's day
258
+ */
259
+ export function replanBackoffDays(streak) {
260
+ const C = TICKET_AUTOPILOT_CONSTANTS;
261
+ return Math.min(C.REPLAN_BACKOFF_MAX_DAYS, C.REPLAN_BACKOFF_FIRST_DAYS * 2 ** Math.max(0, streak - 1));
262
+ }
263
+ /**
264
+ * The backoff after a finished replan: none when it opened a ticket (any
265
+ * ticket created since the replan was queued), else one step longer.
266
+ *
267
+ * @param input - The replan, the tickets, the previous backoff, the clock
268
+ * @returns The new backoff, or null (no backoff)
269
+ */
270
+ export function nextReplanBackoff(input) {
271
+ const opened = input.tickets.some((t) => (Date.parse(t.createdAt) || 0) >= input.replanAt);
272
+ if (opened)
273
+ return null;
274
+ const streak = (input.previous?.streak ?? 0) + 1;
275
+ const [y, m, d] = input.replanDay.split('-').map(Number);
276
+ const resume = localDateKey(new Date(y, m - 1, d + replanBackoffDays(streak) + 1, 12));
277
+ return { streak, since: input.now, resumeDay: resume };
278
+ }
279
+ /**
280
+ * Where a stored backoff stands today:
281
+ * - `holds` — skip replans today;
282
+ * - `lifted` — a ticket was created, or the goal / an OKR changed, after it
283
+ * started: drop it and its streak;
284
+ * - `elapsed` — its days are over: replans may run again, but the streak is
285
+ * kept so the next empty replan backs off longer;
286
+ * - `none` — no backoff.
287
+ *
288
+ * @param backoff - The stored backoff
289
+ * @param input - Today, the tickets, when the goal last changed
290
+ * @returns State
291
+ */
292
+ export function replanBackoffState(backoff, input) {
293
+ if (!backoff)
294
+ return 'none';
295
+ if (input.tickets.some((t) => (Date.parse(t.createdAt) || 0) > backoff.since))
296
+ return 'lifted';
297
+ if (typeof input.goalChangedAt === 'number' && input.goalChangedAt > backoff.since)
298
+ return 'lifted';
299
+ return input.today >= backoff.resumeDay ? 'elapsed' : 'holds';
300
+ }
301
+ /**
302
+ * Tickets closed (done or cancelled) since a moment, newest first.
303
+ *
304
+ * @param tickets - Tickets of a project
305
+ * @param sinceMs - Lower bound (epoch ms) on the ticket's `updatedAt`
306
+ * @param max - Most tickets returned
307
+ * @returns Closed tickets
308
+ */
309
+ export function closedTicketsSince(tickets, sinceMs, max) {
310
+ return tickets
311
+ .filter((t) => (t.status === 'done' || t.status === 'cancelled') && (Date.parse(t.updatedAt) || 0) >= sinceMs)
312
+ .sort((a, b) => (Date.parse(b.updatedAt) || 0) - (Date.parse(a.updatedAt) || 0) || a.id.localeCompare(b.id))
313
+ .slice(0, Math.max(0, max));
314
+ }
203
315
  /**
204
316
  * Whether to send the daily digest now: once per local day, at or after
205
317
  * {@link TICKET_AUTOPILOT_CONSTANTS.DIGEST_HOUR_LOCAL}, and only when some
@@ -1 +1 @@
1
- {"version":3,"file":"ticket-autopilot-decision.js","sourceRoot":"","sources":["../../../../../../backend/src/services/project-tickets/ticket-autopilot-decision.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ticket-autopilot-decision.js","sourceRoot":"","sources":["../../../../../../backend/src/services/project-tickets/ticket-autopilot-decision.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,122 @@
1
+ /**
2
+ * Ticket autopilot — the project's goal and open experiments for the goal
3
+ * replan (specs/2026-10-04-autopilot-goal-replan.md).
4
+ *
5
+ * The goal comes from the two places project goals live today:
6
+ * - the goals log `<project>/.crewly/goals/goals.md` (`set_goal` writes it,
7
+ * `get_goals` and the mission card read it): its entries of the last 30
8
+ * days, newest first (the log is append-only, so older ones are history);
9
+ * - active project OKRs: missions with `status: active`, this project's id,
10
+ * and approval absent or approved.
11
+ *
12
+ * The parsing is pure (unit-tested); {@link readProjectGoal} does the reads
13
+ * and never throws (a read failure is "no goal").
14
+ *
15
+ * @module services/project-tickets/ticket-autopilot-goal
16
+ */
17
+ import { type Mission } from '../../types/v2/mission.types.js';
18
+ import type { Experiment } from '../../types/experiment.types.js';
19
+ /** A project's active goal, as the replan brief quotes it. */
20
+ export interface ProjectGoal {
21
+ /** Goal text (markdown, already capped) */
22
+ text: string;
23
+ /** Where it came from */
24
+ sources: Array<'goals_log' | 'okr'>;
25
+ }
26
+ /** An open experiment card, as the replan brief lists it. */
27
+ export interface ReplanExperiment {
28
+ id: string;
29
+ title: string;
30
+ hypothesis: string;
31
+ status: string;
32
+ /** When its result can be measured */
33
+ dueAt?: string;
34
+ }
35
+ /** The part of a project the goal reader needs. */
36
+ export interface GoalProject {
37
+ id: string;
38
+ name: string;
39
+ path: string;
40
+ }
41
+ /**
42
+ * The newest entries of a goals log (`goals.md`), newest first.
43
+ *
44
+ * Entries are `### [<iso>] Set by <who>` blocks. A file with only its
45
+ * `# Project Goals` header (or blank) has no goal. Text without entry
46
+ * headers is taken as one goal.
47
+ *
48
+ * The log is append-only, so with a `window` only entries from the last
49
+ * {@link TICKET_AUTOPILOT_CONSTANTS.REPLAN_GOAL_ACTIVE_DAYS} days count as
50
+ * active; an entry (or a header-less file) without a readable date uses the
51
+ * file's modification time, and is kept when that is unknown too.
52
+ *
53
+ * @param raw - File contents (null = no file)
54
+ * @param maxEntries - Most entries kept
55
+ * @param maxChars - Most characters returned
56
+ * @param window - Clock, the file's mtime, and the active window (days)
57
+ * @returns Goal markdown, or null when there is none
58
+ */
59
+ export declare function goalFromGoalsLog(raw: string | null | undefined, maxEntries?: number, maxChars?: number, window?: {
60
+ now: number;
61
+ fileMtimeMs?: number | null;
62
+ activeDays?: number;
63
+ }): string | null;
64
+ /**
65
+ * The active OKRs of a project: active missions with its id whose approval
66
+ * is absent or approved, highest priority (then newest) first.
67
+ *
68
+ * @param missions - Missions read from the store(s)
69
+ * @param projectId - Project id
70
+ * @returns Active project missions
71
+ */
72
+ export declare function activeProjectMissions(missions: Mission[], projectId: string): Mission[];
73
+ /**
74
+ * Missions as goal text: the objective and its success criteria.
75
+ *
76
+ * @param missions - Active project missions
77
+ * @param maxChars - Most characters
78
+ * @returns Markdown, or null with none
79
+ */
80
+ export declare function goalFromMissions(missions: Mission[], maxChars?: number): string | null;
81
+ /**
82
+ * Combine the goals log and the OKRs into one goal.
83
+ *
84
+ * @param log - Goal text from goals.md
85
+ * @param okr - Goal text from the missions
86
+ * @returns Goal, or null when neither has one
87
+ */
88
+ export declare function combineGoal(log: string | null, okr: string | null): ProjectGoal | null;
89
+ /**
90
+ * When the project's goal last changed, from file times only (no reads):
91
+ * the goals log, and the missions folders (a mission written or replaced
92
+ * renames into its folder). Lifts a replan backoff. A change to another
93
+ * project's mission in the shared store also counts: that only lifts a
94
+ * backoff early, never holds one.
95
+ *
96
+ * @param project - Project path
97
+ * @returns Epoch ms, or null when nothing exists
98
+ */
99
+ export declare function goalChangedAt(project: Pick<GoalProject, 'path'>): Promise<number | null>;
100
+ /**
101
+ * The project's active goal: the goals-log entries of the last
102
+ * REPLAN_GOAL_ACTIVE_DAYS days (newest first) plus its active OKRs (the
103
+ * project's missions folder and the shared store; their own status
104
+ * decides). Never throws.
105
+ *
106
+ * @param project - Project id and path
107
+ * @param now - Clock
108
+ * @returns Goal, or null when the project has none
109
+ */
110
+ export declare function readProjectGoal(project: GoalProject, now?: Date): Promise<ProjectGoal | null>;
111
+ /**
112
+ * Open experiment cards (planned or running) of a project: its autopilot
113
+ * scope is the project, or its ticket link names the project (id, name or
114
+ * path).
115
+ *
116
+ * @param experiments - Every experiment
117
+ * @param project - Project
118
+ * @param max - Most returned
119
+ * @returns Cards for the replan brief, newest first
120
+ */
121
+ export declare function openExperimentsOf(experiments: Experiment[], project: GoalProject, max?: number): ReplanExperiment[];
122
+ //# sourceMappingURL=ticket-autopilot-goal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ticket-autopilot-goal.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/project-tickets/ticket-autopilot-goal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,OAAO,EAA0B,KAAK,OAAO,EAAE,MAAM,iCAAiC,CAAC;AACvF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAIlE,8DAA8D;AAC9D,MAAM,WAAW,WAAW;IAC1B,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,yBAAyB;IACzB,OAAO,EAAE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC;CACrC;AAED,6DAA6D;AAC7D,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,mDAAmD;AACnD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAaD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC9B,UAAU,GAAE,MAA2D,EACvE,QAAQ,GAAE,MAAyD,EACnE,MAAM,CAAC,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACzE,MAAM,GAAG,IAAI,CAmCf;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,EAAE,CASvF;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,QAAQ,GAAE,MAAyD,GAAG,MAAM,GAAG,IAAI,CAQxI;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,WAAW,GAAG,IAAI,CAatF;AAmDD;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAI9F;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,GAAE,IAAiB,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAqB/G;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,UAAU,EAAE,EACzB,OAAO,EAAE,WAAW,EACpB,GAAG,GAAE,MAA0D,GAC9D,gBAAgB,EAAE,CAWpB"}